diff --git a/devNotes/colorCSS.txt b/devNotes/colorCSS.txt
index c330bbbb66a152a2454cf35ffd69481318c4a359..b0f4d786f71727202a8bdcb26d1ec7eed6c0bbd8 100644
--- a/devNotes/colorCSS.txt
+++ b/devNotes/colorCSS.txt
@@ -1,5 +1,9 @@
 CSS classes to color code important parts of texts:
 class names that are not final are marked, this list is NOT exhaustive and subject to change.
+Note for mass replacing: The following cases have to be checked:
+	@@.trust.inc;
+	<span class="trust inc">
+	App.UI.DOM.makeSpan('string', ['trust', 'inc']);
 
 CLASS         -   COLOR
 
@@ -31,28 +35,30 @@ TRUST (defiant versions for devotion < -20)
 MINDBROKEN
 .mindbroken - red
 
-SKILL (not final)
+SKILL
 - Player
-.skill.advantage - springgreen
+skill.player - springgreen
 - Slave
 .skill - aquamarine
+.skill.inc - green
 
 FETISH
 .fetish.gain - lightcoral
 .fetish.loss - coral
 .fetish.inc - lightsalmon
 
-INTELLIGENCE
+INTELLIGENCE (WIP)
 .intelligent - deepskyblue
 .stupid - orange
+.education.neg - orangered
 
 REPUTATION
-.reputation.inc - green (not final)
+.reputation.inc - green
+.reputation.dec - red
 
 GENERAL CHANGES
-- Player
 .improvement - green
-- Slaves
+- body parts (usually)
 .change.positive - lime
 .change.negative - orange
 
@@ -74,6 +80,7 @@ MONEY
 
 FLAWS
 .flaw.gain - red
+.flaw.break - green
 
 GENERAL
 .error - red
diff --git a/src/003-assets/CSS/tooltip.css b/src/003-assets/CSS/tooltip.css
index d5b0fca09bea871ccd1ef8af8e1134b2eedf6c71..8246aae0c3bc3309c15ea13f4ecfe92aac2b447f 100644
--- a/src/003-assets/CSS/tooltip.css
+++ b/src/003-assets/CSS/tooltip.css
@@ -3,69 +3,69 @@
  * based on https://codeconvey.com/pure-html5-css-tooltips-using-title-data-attribute/
  */
 .exampleTooltip, .devotion, .trust, .defiant {
-    position: relative;
-    display: inline;
+	position: relative;
+	display: inline;
 }
 
 .exampleTooltip:after, .devotion:after, .trust:after, .defiant:after {
-    display: block;
-    visibility: hidden;
-    position: absolute;
-    font-size: smaller;
-    width: 20em;
-    height: auto;
-    background-color: slategray;
-    color: black;
-    text-decoration: none;
-    font-style: normal;
-    text-align: center;
-    border-radius: 3px;
-    padding: 5px;
-    z-index: 999;
-    bottom: 0;
-    left: 10px;
+	display: block;
+	visibility: hidden;
+	position: absolute;
+	font-size: smaller;
+	width: 20em;
+	height: auto;
+	background-color: slategray;
+	color: black;
+	text-decoration: none;
+	font-style: normal;
+	text-align: center;
+	border-radius: 3px;
+	padding: 5px;
+	z-index: 999;
+	bottom: 0;
+	left: 10px;
 }
 
 .exampleTooltip:after {
-    content: "I am a helpful tooltip. We are very rare because we are still in development.";
+	content: "I am a helpful tooltip. We are very rare because we are still in development.";
 }
 
 .devotion:after {
-    content: "Devotion is a measure of a slave's love for you.";
+	content: "Devotion is a measure of a slave's love for you.";
 }
 
 .trust:after {
-    content: "Trust is a measure of a slave's expectations of you and confidence to perform well.";
+	content: "Trust is a measure of a slave's expectations of you and confidence to perform well.";
 }
 
 .defiant:after {
-    content: "Defiant slaves will actively work against you.";
+	content: "Defiant slaves will actively work against you.";
 }
 
 /* makes the arrow */
 .exampleTooltip:before, .devotion:before, .trust:before, .defiant:before {
-    position: absolute;
-    visibility: hidden;
-    width: 0;
-    height: 0;
-    left: 20px;
-    bottom: 0;
-    opacity: 0;
-    content: "";
-    border-style: solid;
-    border-width: 6px 6px 0 6px;
-    border-color: slategray transparent transparent transparent;
-    z-index: 999;
+	position: absolute;
+	visibility: hidden;
+	width: 0;
+	height: 0;
+	left: 20px;
+	bottom: 0;
+	opacity: 0;
+	content: "";
+	border-style: solid;
+	border-width: 6px 6px 0 6px;
+	border-color: slategray transparent transparent transparent;
+	z-index: 999;
 }
 
 body.tooltipsEnabled .exampleTooltip:hover:after, body.tooltipsEnabled .devotion:hover:after, body.tooltipsEnabled .trust:hover:after, body.tooltipsEnabled .defiant:hover:after {
-    visibility: visible;
-    opacity: 1;
-    bottom: 20px;
+	visibility: visible;
+	opacity: 1;
+	bottom: 20px;
 }
 
 body.tooltipsEnabled .exampleTooltip:hover:before, body.tooltipsEnabled .devotion:hover:before, body.tooltipsEnabled .trust:hover:before, body.tooltipsEnabled .defiant:hover:before {
-    visibility: visible;
-    opacity: 1;
-    bottom: 15px;
+	visibility: visible;
+	opacity: 1;
+	bottom: 15px;
 }
diff --git a/src/endWeek/healthFunctions.js b/src/endWeek/healthFunctions.js
index a5267015401d114f123c2fc815d21e291da45bc2..f42dbdd96385fd7f18dfbeac22cae3f8d8d69cfd 100644
--- a/src/endWeek/healthFunctions.js
+++ b/src/endWeek/healthFunctions.js
@@ -75,7 +75,9 @@ window.illness = function illness(slave) {
 		}
 		return r;
 	} // Let's make sure agents don't get sick and accidentally die, they should take care of themselves
-	if (slave.assignment === "get treatment in the clinic") {
+	if (slave.fuckdoll !== 0) {
+		assignBonus += 50;
+	} else if (slave.assignment === "get treatment in the clinic") {
 		assignBonus += 40;
 	} else if (slave.assignment === "rest in the spa" || slave.assignment === "rest") {
 		assignBonus += 20;
@@ -114,9 +116,10 @@ window.illness = function illness(slave) {
 		let health_adjusted = H.condition - H.longDamage - H.shortDamage * 1.25;
 		let age_modifier = Math.min(Math.trunc((slave.physicalAge - 18) / 3), 0);
 		let bonus_modifiers = random + assignBonus + nurse_effectiveness;
+		let curativesBonus = (slave.curatives > 1 || slave.inflationType === "curative") ? 2 : 1;
 
 		// When ill, a slave has a 60% chance of getting better the next week at complete default, 70% with a favourable assignment, 80% with curatives, 90% with both measures active and additional benefits depending on the nurse on duty
-		if (H.illness > 0 && ((health_adjusted + age_modifier) / 3) + bonus_modifiers > 40 / Math.clamp(slave.curatives, 1, 2)) {
+		if (H.illness > 0 && ((health_adjusted + age_modifier) / 3) + bonus_modifiers > 40 / curativesBonus) {
 			if (nurse_effectiveness > 30 && (jsRandom(1, 2) === 2 || slave.assignment === "get treatment in the clinic") && H.illness > 1) { // A particularly effective nurse can improve illness faster
 				H.illness -= 2;
 				r += ` ${V.Nurse.slaveName} <span class="green">successfully treats</span> ${his} illness.`;
@@ -129,13 +132,13 @@ window.illness = function illness(slave) {
 			}
 		} else if (H.illness === 0) {
 			if (["guard you", "be the DJ", "be the Madam", "be confined in the arcade", "work a glory hole", "serve in the club", "serve the public", "whore", "work in the brothel"].includes(slave.assignment)) { // Limit to outside jobs only
-				if (((Math.min(health_adjusted, 50) + age_modifier) / 3) + bonus_modifiers < 30 / Math.min(slave.curatives + 1, 2)) { // Chance of getting ill 30% at complete default, 20% with a favourable assignment, 15% with curatives or preventatives, 10% with both measures active and a small benefit from effective Nurse screening
+				if (((Math.min(health_adjusted, 50) + age_modifier) / 3) + bonus_modifiers < 30 / Math.min(curativesBonus + 1, 2)) { // Chance of getting ill 30% at complete default, 20% with a favourable assignment, 15% with curatives or preventatives, 10% with both measures active and a small benefit from effective Nurse screening
 					getIll(slave);
 					r += ` ${He} has come down with <span class="red">${addA(sicknessDegree[H.illness])}.</span>`;
 				}
 			}
 		} else {
-			healthDamage(slave, (H.illness));
+			healthDamage(slave, Math.pow(H.illness, 2));
 			r += ` ${He} <span class="red">suffers under ${his} ${sicknessDegree[H.illness]}.</span>`;
 		}
 		/* eslint-enable camelcase */
@@ -152,7 +155,7 @@ window.getIll = function getIll(slave) {
 	const H = slave.health;
 	const illness = jsRandom(1, 6) + jsRandom(1, 6) + jsRandom(1, 6) - Math.trunc(slave.chem / 150) + Math.trunc(H.condition / 20);
 	if (V.seeIllness !== 0) {
-		if (slave.curatives !== 1) {
+		if (slave.curatives !== 1 && slave.inflationType !== "curative") {
 			if (slave.assignment !== "get treatment in the clinic") {
 				if (illness < 4) {
 					H.illness = 5; // 1.8% chance
@@ -170,6 +173,23 @@ window.getIll = function getIll(slave) {
 	}
 };
 
+/**
+ * Attempts to pass illness from slave1 to slave2.
+ * @param {App.Entity.SlaveState} slave1
+ * @param {App.Entity.SlaveState} slave2
+ * @returns {string}
+ */
+window.passIllness = function passIllness(slave1, slave2) {
+	if (V.seeIllness !== 0) {
+		if (slave1.curatives !== 1) {
+			if (slave1.assignment !== "get treatment in the clinic") {
+				slave1.health.illness = ill;
+			}
+		}
+	}
+	return ` ${slave1.slaveName} has caught ${slave2.slaveName}'s sickness.`;
+};
+
 /**
  * Once a new illness is rolled this determines how bad it is initially, chem levels seriously increase the chances of a higher initial value
  * @param {App.Entity.SlaveState} slave
diff --git a/src/endWeek/saGetMilked.js b/src/endWeek/saGetMilked.js
index 1aeac0abe361ffe1186956759899ef6e44a36268..66ea78b69c292f82fc5ea1829c5e042c4d9a1602 100644
--- a/src/endWeek/saGetMilked.js
+++ b/src/endWeek/saGetMilked.js
@@ -156,7 +156,7 @@ window.saGetMilked = (function saGetMilked() {
 				slave.lactationAdaptation += 1;
 			}
 			if (slave.curatives === 0 && slave.inflationType !== "curative") {
-				r += ` The stress of extreme milk production <span class="red">damages ${his} health.</span>`;
+				r += ` The stress of extreme milk production <span class="health dec">damages ${his} health.</span>`;
 				healthDamage(slave, 3);
 			}
 		}
@@ -272,13 +272,13 @@ window.saGetMilked = (function saGetMilked() {
 
 		// make sure milkSale is set here
 		if (arcology.FSPastoralistLaw === 1) {
-			r += ` Since breast milk is ${arcology.name}'s only legal dairy product, ${he} can scarcely be milked fast enough, and ${he} makes <span class="yellowgreen">${cashFormat(milkSale)}.</span>`;
+			r += ` Since breast milk is ${arcology.name}'s only legal dairy product, ${he} can scarcely be milked fast enough, and ${he} makes <span class="cash inc">${cashFormat(milkSale)}.</span>`;
 		} else if (arcology.FSPastoralist !== "unset") {
-			r += ` Since milk is fast becoming a major part of the ${arcology.name}'s dietary culture, ${his} milk is in demand, and ${he} makes <span class="yellowgreen">${cashFormat(milkSale)}.</span>`;
+			r += ` Since milk is fast becoming a major part of the ${arcology.name}'s dietary culture, ${his} milk is in demand, and ${he} makes <span class="cash inc">${cashFormat(milkSale)}.</span>`;
 		} else if (arcology.FSRepopulationFocusLaw === 1) {
-			r += ` Since the number of hungry babies outweighs the supply of available breasts in ${arcology.name}, ${his} milk is in demand, and ${he} makes <span class="yellowgreen">${cashFormat(milkSale)}.</span>`;
+			r += ` Since the number of hungry babies outweighs the supply of available breasts in ${arcology.name}, ${his} milk is in demand, and ${he} makes <span class="cash inc">${cashFormat(milkSale)}.</span>`;
 		} else {
-			r += ` ${His} milk is sold for <span class="yellowgreen">${cashFormat(milkSale)}.</span>`;
+			r += ` ${His} milk is sold for <span class="cash inc">${cashFormat(milkSale)}.</span>`;
 		}
 
 		/*
@@ -390,7 +390,7 @@ window.saGetMilked = (function saGetMilked() {
 					slave.devotion -= 3;
 				}
 				if (jsRandom(1, 100) > 50) {
-					r += ` The constant suction <span class="lime">permanently protrudes them,</span> and `;
+					r += ` The constant suction <span class="change positive">permanently protrudes them,</span> and `;
 					if (jsRandom(1, 2) === 1) {
 						r += `it turns out they're absolutely massive.`;
 						slave.nipples = "huge";
@@ -408,7 +408,7 @@ window.saGetMilked = (function saGetMilked() {
 					slave.devotion -= 1;
 				}
 				if (jsRandom(1, 100) > 30) {
-					r += ` The constant suction <span class="lime">permanently protrudes them,</span> and `;
+					r += ` The constant suction <span class="change positive">permanently protrudes them,</span> and `;
 					if (jsRandom(1, 2) === 1) {
 						r += `it turns out they're pretty cute.`;
 						slave.nipples = "cute";
@@ -418,13 +418,13 @@ window.saGetMilked = (function saGetMilked() {
 					}
 				}
 			} else if (slave.nipples === "puffy" && jsRandom(1, 100) > 90) {
-				r += ` Producing this river of milk <span class="lime">enlarges ${his} nipples:</span> they're now enormous.`;
+				r += ` Producing this river of milk <span class="change positive">enlarges ${his} nipples:</span> they're now enormous.`;
 				slave.nipples = "huge";
 			} else if (slave.nipples === "cute" && jsRandom(1, 100) > 80) {
-				r += ` Producing this river of milk <span class="lime">makes ${his} nipples nice and puffy.</span>`;
+				r += ` Producing this river of milk <span class="change positve">makes ${his} nipples nice and puffy.</span>`;
 				slave.nipples = "puffy";
 			} else if (slave.nipples === "tiny") {
-				r += ` Producing this river of milk <span class="lime">makes ${his} nipples grow to a nice size.</span>`;
+				r += ` Producing this river of milk <span class="change positive">makes ${his} nipples grow to a nice size.</span>`;
 				slave.nipples = "cute";
 			} else if (slave.areolae < 4 && jsRandom(1, 100) > (30 + (slave.areolae * 20))) {
 				if (slave.nipples === "fuckable") {
@@ -432,7 +432,7 @@ window.saGetMilked = (function saGetMilked() {
 				} else {
 					r += ` Producing this river of milk`;
 				}
-				r += ` <span class="lime">broadens ${his} areolae.</span>`;
+				r += ` <span class="change positive">broadens ${his} areolae.</span>`;
 				slave.areolae += 1;
 			}
 		}
@@ -537,7 +537,7 @@ window.saGetMilked = (function saGetMilked() {
 
 		if (slave.prostate > 0) {
 			if (slave.prostate > 2) {
-				r += ` ${His} heavily altered prostate greatly increases the volume of ${his} ejaculations and promotes excessive, watery semen production. This dilute ejaculate<span class="red">sells poorly</span> compared to normal cum.`;
+				r += ` ${His} heavily altered prostate greatly increases the volume of ${his} ejaculations and promotes excessive, watery semen production. This dilute ejaculate<span class="cash dec">sells poorly</span> compared to normal cum.`;
 			} else if (slave.prostate > 1) {
 				r += ` ${His} hyperactive prostate increases the volume of ${his} ejaculations and promotes good semen production.`;
 			}
@@ -558,7 +558,7 @@ window.saGetMilked = (function saGetMilked() {
 		}
 
 		if (slave.health.illness > 0 || slave.health.tired > 60) {
-			r += ` ${He} performed worse this week due to<span class="red">`;
+			r += ` ${He} performed worse this week due to<span class="cash dec">`;
 			if (slave.health.illness === 1) {
 				r += ` feeling under the weather`;
 			} else if (slave.health.illness === 2) {
@@ -582,9 +582,9 @@ window.saGetMilked = (function saGetMilked() {
 		}
 
 		if (slave.vasectomy === 1) {
-			r += ` ${His} cum lacks the primary ingredient, sperm, thanks to ${his} vasectomy, <span class="red">considerably lowering the value</span> of ${his} ejaculate.`;
+			r += ` ${His} cum lacks the primary ingredient, sperm, thanks to ${his} vasectomy, <span class="cash dec">considerably lowering the value</span> of ${his} ejaculate.`;
 		} else if (slave.ballType === "sterile") {
-			r += ` ${His} cum lacks vigor entirely, thanks to ${his} chemical castration, <span class="red">considerably lowering the value</span> of ${his} ejaculate.`;
+			r += ` ${His} cum lacks vigor entirely, thanks to ${his} chemical castration, <span class="cash dec">considerably lowering the value</span> of ${his} ejaculate.`;
 		}
 
 		/* Dairy rework cum half here */
@@ -605,11 +605,11 @@ window.saGetMilked = (function saGetMilked() {
 		*/
 
 		if (arcology.FSPastoralist === "unset") {
-			r += ` ${He} produces ${cum} deciliters of cum over the week; the fresh ejaculate is sold for <span class="yellowgreen">${cashFormat(cumSale)}.</span>`;
+			r += ` ${He} produces ${cum} deciliters of cum over the week; the fresh ejaculate is sold for <span class="cash inc">${cashFormat(cumSale)}.</span>`;
 		} else if (arcology.FSPastoralistLaw === 1) {
-			r += ` ${He} produces ${cum} deciliters of cum over the week; the fresh ejaculate, which is in extremely high demand as one of ${arcology.name}'s few legal sources of animal protein, is sold for <span class="yellowgreen">${cashFormat(cumSale)}.</span>`;
+			r += ` ${He} produces ${cum} deciliters of cum over the week; the fresh ejaculate, which is in extremely high demand as one of ${arcology.name}'s few legal sources of animal protein, is sold for <span class="cash inc">${cashFormat(cumSale)}.</span>`;
 		} else {
-			r += ` ${He} produces ${cum} deciliters of cum over the week; the fresh ejaculate, which is in high demand given the new cultural preference for slave products, is sold for <span class="yellowgreen">${cashFormat(cumSale)}.</span>`;
+			r += ` ${He} produces ${cum} deciliters of cum over the week; the fresh ejaculate, which is in high demand given the new cultural preference for slave products, is sold for <span class="cash inc">${cashFormat(cumSale)}.</span>`;
 		}
 
 		/*
@@ -703,7 +703,7 @@ window.saGetMilked = (function saGetMilked() {
 			slave.devotion -= 2;
 			slave.trust -= 2;
 			if (slave.anus === 0) {
-				r += ` The electrostimulator <span class="lime">breaks in ${his} virgin asshole.</span>`;
+				r += ` The electrostimulator <span class="virginity loss">breaks in ${his} virgin asshole.</span>`;
 				slave.anus = 1;
 			}
 		} else if (slave.devotion <= 20) {
@@ -711,7 +711,7 @@ window.saGetMilked = (function saGetMilked() {
 			slave.devotion -= 2;
 			slave.trust -= 2;
 			if (slave.anus === 0) {
-				r += ` The electrostimulator <span class="lime">breaks in ${his} virgin asshole.</span>`;
+				r += ` The electrostimulator <span class="virginity loss">breaks in ${his} virgin asshole.</span>`;
 				slave.anus = 1;
 			}
 		}
@@ -719,11 +719,11 @@ window.saGetMilked = (function saGetMilked() {
 		if (slave.balls < 3 && slave.ballType !== "sterile") {
 			if (slave.balls < 2) {
 				if (jsRandom(1, 100) > (70 + (slave.geneMods.NCS * 15))) {
-					r += ` Constant semen production and continual emptying and refilling <span class="lime">increases the size of ${his} tiny testicles.</span>`;
+					r += ` Constant semen production and continual emptying and refilling <span class="change positive">increases the size of ${his} tiny testicles.</span>`;
 					slave.balls += 1;
 				}
 			} else if (jsRandom(1, 100) > (90 + (slave.geneMods.NCS * 5))) {
-				r += ` Constant semen production and continual emptying and refilling <span class="lime">increases the size of ${his} small testicles.</span>`;
+				r += ` Constant semen production and continual emptying and refilling <span class="change positive">increases the size of ${his} small testicles.</span>`;
 				slave.balls += 1;
 			}
 		}
@@ -765,7 +765,7 @@ window.saGetMilked = (function saGetMilked() {
 		if (arcology.FSPastoralist !== "unset" && arcology.FSPastoralist > 30) {
 			r += ` Because of your arcology's cultural preferences, it comes with extra value.`;
 		}
-		r += ` It is sold for <span class="yellowgreen">${cashFormat(fluidSale)}.</span>`;
+		r += ` It is sold for <span class="cash inc">${cashFormat(fluidSale)}.</span>`;
 
 		/*
 		if (slave.assignment === "work in the dairy") {
@@ -844,9 +844,9 @@ window.saGetMilked = (function saGetMilked() {
 		if (vignette.type === "cash") {
 			const cashVign = Math.trunc(FuckResult * vignette.effect);
 			if (vignette.effect > 0) {
-				r += `<span class="yellowgreen">making you an extra ${cashFormat(cashVign)}.</span>`;
+				r += `<span class="cash inc">making you an extra ${cashFormat(cashVign)}.</span>`;
 			} else if (vignette.effect < 0) {
-				r += `<span class="red">losing you ${cashFormat(Math.abs(cashVign))}.</span>`;
+				r += `<span class="cash loss">losing you ${cashFormat(Math.abs(cashVign))}.</span>`;
 			} else {
 				r += `an incident without lasting effect.`;
 			}
@@ -906,18 +906,18 @@ window.saGetMilked = (function saGetMilked() {
 			slave.trust += (1 * vignette.effect);
 		} else if (vignette.type === "health") {
 			if (vignette.effect > 0) {
-				r += `<span class="green">improving ${his} health.</span>`;
+				r += `<span class="health inc">improving ${his} health.</span>`;
 			} else if (vignette.effect < 0) {
-				r += `<span class="red">affecting ${his} health.</span>`;
+				r += `<span class="health dec">affecting ${his} health.</span>`;
 			} else {
 				r += `an incident without lasting effect.`;
 			}
 			improveCondition(slave, 2 * vignette.effect);
 		} else {
 			if (vignette.effect > 0) {
-				r += `<span class="green">gaining you a bit of reputation.</span>`;
+				r += `<span class="reputation inc">gaining you a bit of reputation.</span>`;
 			} else if (vignette.effect < 0) {
-				r += `<span class="red">losing you a bit of reputation.</span>`;
+				r += `<span class="reputation dec">losing you a bit of reputation.</span>`;
 			} else {
 				r += `an incident without lasting effect.`;
 			}
diff --git a/src/endWeek/saNanny.js b/src/endWeek/saNanny.js
index 547ee8a3f4dff8daa48d7e65f0971864e9ba84f2..c900cf17ea1cd0b10697bf1e73c28d0790100aaf 100644
--- a/src/endWeek/saNanny.js
+++ b/src/endWeek/saNanny.js
@@ -30,15 +30,15 @@ window.saNanny = function saNanny(slave) {
 
 		t += ` ${He} is `;
 		if (slave.trust < -20) {
-			t += `frightened of punishment and works very hard, <span class="yellowgreen">reducing the upkeep</span> of ${V.nurseryName}${V.nurseryBabies ? ` and the children within` : ``}.`;
+			t += `frightened of punishment and works very hard, <span class="cash inc">reducing the upkeep</span> of ${V.nurseryName}${V.nurseryBabies ? ` and the children within` : ``}.`;
 		} else if (slave.devotion <= 20) {
-			t += `hesitant, requiring your other slaves to demand ${his} services, and only slightly <span class="yellowgreen">reduces upkeep</span> of your slaves.`;
+			t += `hesitant, requiring your other slaves to demand ${his} services, and only slightly <span class="cash inc">reduces upkeep</span> of your slaves.`;
 		} else if (slave.devotion <= 50) {
-			t += `obedient, offering your other slaves ${his} services, and moderately <span class="yellowgreen">reduces the upkeep</span> of your slaves.`;
+			t += `obedient, offering your other slaves ${his} services, and moderately <span class="cash inc">reduces the upkeep</span> of your slaves.`;
 		} else if (slave.devotion <= 95) {
-			t += `devoted, happily giving your other slaves ${his} services, and <span class="yellowgreen">reduces the upkeep</span> of your slaves.`;
+			t += `devoted, happily giving your other slaves ${his} services, and <span class="cash inc">reduces the upkeep</span> of your slaves.`;
 		} else {
-			t += `so happy to serve your other slaves that ${he} often sees to their needs before they know they have them, and greatly <span class="yellowgreen">reduces the upkeep</span> of your slaves.`;
+			t += `so happy to serve your other slaves that ${he} often sees to their needs before they know they have them, and greatly <span class="cash inc">reduces the upkeep</span> of your slaves.`;
 		}
 
 		return t;
@@ -135,9 +135,9 @@ window.saNanny = function saNanny(slave) {
 		if (vignette.type === "cash") {
 			let modifier = FResult(slave);
 			if (vignette.effect > 0) {
-				t += `<span class="yellowgreen">making you an extra ${cashFormat(Math.trunc(modifier * vignette.effect))}.</span>`;
+				t += `<span class="cash inc">making you an extra ${cashFormat(Math.trunc(modifier * vignette.effect))}.</span>`;
 			} else if (vignette.effect < 0) {
-				t += `<span class="red">losing you ${cashFormat(Math.abs(Math.trunc(modifier * vignette.effect)))}.</span>`;
+				t += `<span class="cash dec">losing you ${cashFormat(Math.abs(Math.trunc(modifier * vignette.effect)))}.</span>`;
 			} else {
 				t += `an incident without lasting effect.`;
 			}
@@ -217,9 +217,9 @@ window.saNanny = function saNanny(slave) {
 
 		if (vignette.type === "health") {
 			if (vignette.effect > 0) {
-				t += `<span class="green">improving ${his} health.</span>`;
+				t += `<span class="health inc">improving ${his} health.</span>`;
 			} else if (vignette.effect < 0) {
-				t += `<span class="red">affecting ${his} health.</span>`;
+				t += `<span class="health dec">affecting ${his} health.</span>`;
 			} else {
 				t += `an incident without lasting effect.`;
 			}
@@ -236,9 +236,9 @@ window.saNanny = function saNanny(slave) {
 		if (vignette.type === "rep") {
 			let modifier = FResult(slave);
 			if (vignette.effect > 0) {
-				t += `<span class="green">gaining you a bit of reputation.</span>`;
+				t += `<span class="reputation inc">gaining you a bit of reputation.</span>`;
 			} else if (vignette.effect < 0) {
-				t += `<span class="red">losing you a bit of reputation.</span>`;
+				t += `<span class="reputation dec">losing you a bit of reputation.</span>`;
 			} else {
 				t += `an incident without lasting effect.`;
 			}
diff --git a/src/endWeek/saRest.js b/src/endWeek/saRest.js
index 41e0c8d28c6a01c0fd0debcf0834eb177d176886..6f108aded877abcbb1d79a0d47a9141bbb3dc77e 100644
--- a/src/endWeek/saRest.js
+++ b/src/endWeek/saRest.js
@@ -25,13 +25,13 @@ window.saRest = function saRest(slave) {
 	if (slave.health.condition > 90) {
 		t += ` ${His} health is so outstanding that rest does not improve it.`;
 	} else if (slave.health.condition > -100) {
-		t += ` ${His} <span class="green">health recovers</span> with rest.`;
+		t += ` ${His} <span class="health inc">health recovers</span> with rest.`;
 		improveCondition(slave, 10);
 		if (!(canHear(slave))) {
-			t += ` Since ${he} is deaf, the hustle and bustle of daily life in the penthouse <span class="green">didn't bother ${him} at all.</span>`;
+			t += ` Since ${he} is deaf, the hustle and bustle of daily life in the penthouse <span class="health inc">didn't bother ${him} at all.</span>`;
 			improveCondition(slave, 3);
 		} else if ((slave.hears === -1 && slave.earwear !== "hearing aids") || (slave.hears === 0 && slave.earwear === "muffling ear plugs")) {
-			t += ` Since ${he} is hard of hearing, the hustle and bustle of daily life in the penthouse <span class="green">didn't disturb ${his} rest as much.</span>`;
+			t += ` Since ${he} is hard of hearing, the hustle and bustle of daily life in the penthouse <span class="health inc">didn't disturb ${his} rest as much.</span>`;
 			improveCondition(slave, 1);
 		}
 	}
@@ -81,15 +81,15 @@ window.saRest = function saRest(slave) {
 	}
 
 	if (V.showVignettes === 1 && slave.assignment === Job.REST) {
-		const _vignette = GetVignette(slave), 
+		const _vignette = GetVignette(slave),
 		FResultNumber = FResult(slave);
 
 		t += ` <span class="story-label">This week</span> ${_vignette.text} `;
 		if (_vignette.type === "cash") {
 			if (_vignette.effect > 0) {
-				t += `<span class="yellowgreen">making you an extra ${cashFormat(Math.trunc(FResultNumber * _vignette.effect))}.</span>`;
+				t += `<span class="cash inc">making you an extra ${cashFormat(Math.trunc(FResultNumber * _vignette.effect))}.</span>`;
 			} else if (_vignette.effect < 0) {
-				t += `<span class="red">losing you ${cashFormat(Math.abs(Math.trunc(FResultNumber * _vignette.effect)))}.</span>`;
+				t += `<span class="cash dec">losing you ${cashFormat(Math.abs(Math.trunc(FResultNumber * _vignette.effect)))}.</span>`;
 			} else {
 				t += `an incident without lasting effect.`;
 			}
@@ -142,19 +142,19 @@ window.saRest = function saRest(slave) {
 			slave.trust += (1 * _vignette.effect);
 		} else if (_vignette.type === "health") {
 			if (_vignette.effect > 0) {
-				t += `<span class="green">improving ${his} health.</span>`;
+				t += `<span class="health inc">improving ${his} health.</span>`;
 				improveCondition(slave, 2 * _vignette.effect);
 			} else if (_vignette.effect < 0) {
-				t += `<span class="red">affecting ${his} health.</span>`;
+				t += `<span class="health dec">affecting ${his} health.</span>`;
 				healthDamage(slave, 2 * _vignette.effect);
 			} else {
 				t += `an incident without lasting effect.`;
 			}
 		} else {
 			if (_vignette.effect > 0) {
-				t += `<span class="green">gaining you a bit of reputation.</span>`;
+				t += `<span class="reputation inc">gaining you a bit of reputation.</span>`;
 			} else if (_vignette.effect < 0) {
-				t += `<span class="red">losing you a bit of reputation.</span>`;
+				t += `<span class="reputation dec">losing you a bit of reputation.</span>`;
 			} else {
 				t += `an incident without lasting effect.`;
 			}
diff --git a/src/endWeek/saServant.js b/src/endWeek/saServant.js
index 2c2ec8d7069a5df035a1bd99c2ac075e398a6176..f889e83a07e5f4bdb1461fc57d0c92793a1a1acb 100644
--- a/src/endWeek/saServant.js
+++ b/src/endWeek/saServant.js
@@ -25,10 +25,10 @@ window.saServant = function saServant(slave) {
 					slave.devotion += 2;
 					slave.trust -= 2;
 				} else if (slave.devotion <= 20) {
-					t += `molests ${him}, encouraging the poor slave to <span class="devotion inc">keep ${his} head down</span> and <span class="yellowgreen">work harder.</span>`;
+					t += `molests ${him}, encouraging the poor slave to <span class="devotion inc">keep ${his} head down</span> and <span class="cash inc">work harder.</span>`;
 					slave.devotion += 2;
 				} else {
-					t += `uses <span class="devotion inc">sex as a reward,</span> getting ${him} off when ${he} <span class="yellowgreen">works harder.</span>`;
+					t += `uses <span class="devotion inc">sex as a reward,</span> getting ${him} off when ${he} <span class="cash inc">works harder.</span>`;
 					slave.devotion++;
 				}
 				if (!(canHear(slave))) {
@@ -46,21 +46,21 @@ window.saServant = function saServant(slave) {
 
 	t += ` ${He} is `;
 	if (slave.trust < -20) {
-		t += `frightened of punishment and works very hard, <span class="yellowgreen">reducing the upkeep</span> of your slaves.`;
+		t += `frightened of punishment and works very hard, <span class="cash inc">reducing the upkeep</span> of your slaves.`;
 	} else if (slave.devotion < -20) {
 		if (slave.trust >= 20) {
-			t += `uninterested in doing such work and barely lifts a finger to <span class="yellowgreen">reduce the upkeep</span> of your slaves.`;
+			t += `uninterested in doing such work and barely lifts a finger to <span class="cash inc">reduce the upkeep</span> of your slaves.`;
 		} else {
-			t += `reluctant, requiring your other slaves to force ${his} services, and does not <span class="yellowgreen">reduce upkeep</span> of your slaves much.`;
+			t += `reluctant, requiring your other slaves to force ${his} services, and does not <span class="cash inc">reduce upkeep</span> of your slaves much.`;
 		}
 	} else if (slave.devotion <= 20) {
-		t += `hesitant, requiring your other slaves to demand ${his} services, and only slightly <span class="yellowgreen">reduces upkeep</span> of your slaves.`;
+		t += `hesitant, requiring your other slaves to demand ${his} services, and only slightly <span class="cash inc">reduces upkeep</span> of your slaves.`;
 	} else if (slave.devotion <= 50) {
-		t += `obedient, offering your other slaves ${his} services, and moderately <span class="yellowgreen">reduces the upkeep</span> of your slaves.`;
+		t += `obedient, offering your other slaves ${his} services, and moderately <span class="cash inc">reduces the upkeep</span> of your slaves.`;
 	} else if (slave.devotion <= 95) {
-		t += `devoted, happily giving your other slaves ${his} services, and <span class="yellowgreen">reduces the upkeep</span> of your slaves.`;
+		t += `devoted, happily giving your other slaves ${his} services, and <span class="cash inc">reduces the upkeep</span> of your slaves.`;
 	} else {
-		t += `so happy to serve your other slaves that ${he} often sees to their needs before they know they have them, and greatly <span class="yellowgreen">reduces the upkeep</span> of your slaves.`;
+		t += `so happy to serve your other slaves that ${he} often sees to their needs before they know they have them, and greatly <span class="cash inc">reduces the upkeep</span> of your slaves.`;
 	}
 
 	if (slave.health.illness > 0 || slave.health.tired > 60) {
@@ -146,9 +146,9 @@ window.saServant = function saServant(slave) {
 		if (vignette.type === "cash") {
 			let modifier = FResult(slave);
 			if (vignette.effect > 0) {
-				t += `<span class="yellowgreen">making you an extra ${cashFormat(Math.trunc(modifier * vignette.effect))}.</span>`;
+				t += `<span class="cash inc">making you an extra ${cashFormat(Math.trunc(modifier * vignette.effect))}.</span>`;
 			} else if (vignette.effect < 0) {
-				t += `<span class="red">losing you ${cashFormat(Math.abs(Math.trunc(modifier * vignette.effect)))}.</span>`;
+				t += `<span class="cash dec">losing you ${cashFormat(Math.abs(Math.trunc(modifier * vignette.effect)))}.</span>`;
 			} else {
 				t += `an incident without lasting effect.`;
 			}
@@ -201,9 +201,9 @@ window.saServant = function saServant(slave) {
 			slave.trust += (1 * vignette.effect);
 		} else if (vignette.type === "health") {
 			if (vignette.effect > 0) {
-				t += `<span class="green">improving ${his} health.</span>`;
+				t += `<span class="health inc">improving ${his} health.</span>`;
 			} else if (vignette.effect < 0) {
-				t += `<span class="red">affecting ${his} health.</span>`;
+				t += `<span class="health dec">affecting ${his} health.</span>`;
 			} else {
 				t += `an incident without lasting effect.`;
 			}
@@ -211,9 +211,9 @@ window.saServant = function saServant(slave) {
 		} else {
 			let modifier = FResult(slave);
 			if (vignette.effect > 0) {
-				t += `<span class="green">gaining you a bit of reputation.</span>`;
+				t += `<span class="reputation inc">gaining you a bit of reputation.</span>`;
 			} else if (vignette.effect < 0) {
-				t += `<span class="red">losing you a bit of reputation.</span>`;
+				t += `<span class="reputation dec">losing you a bit of reputation.</span>`;
 			} else {
 				t += `an incident without lasting effect.`;
 			}
diff --git a/src/endWeek/saServeThePublic.js b/src/endWeek/saServeThePublic.js
index ea5bb6298b446969cbfcf342bb1654f51ad1c31f..6661da312c6033bff52ffa45cc1ec436099116d8 100644
--- a/src/endWeek/saServeThePublic.js
+++ b/src/endWeek/saServeThePublic.js
@@ -196,10 +196,10 @@ window.saServeThePublic = (function saServeThePublic() {
 						}
 						if (V.DJignoresFlaws !== 1) {
 							if (!["abusive", "anal addict", "attention whore", "breast growth", "breeder", "cum addict", "malicious", "neglectful", "none", "self hating"].includes(slave.sexualFlaw) && jsRandom(1, 100) > 90) {
-								r += ` ${SlaveFullName(V.DJ)} manages to <span class="green">break</span> ${slave.slaveName} of ${his} sexual flaws.`;
+								r += ` ${SlaveFullName(V.DJ)} manages to <span class="flaw break">break</span> ${slave.slaveName} of ${his} sexual flaws.`;
 								slave.sexualFlaw = "none";
 							} else if (slave.behavioralFlaw !== "none" && jsRandom(1, 100) > 90) {
-								r += ` ${SlaveFullName(V.DJ)} manages to <span class="green">break</span> ${slave.slaveName} of ${his} flaws.`;
+								r += ` ${SlaveFullName(V.DJ)} manages to <span class="flaw break">break</span> ${slave.slaveName} of ${his} flaws.`;
 								slave.behavioralFlaw = "none";
 							}
 						}
@@ -391,22 +391,22 @@ window.saServeThePublic = (function saServeThePublic() {
 		if (canDoVaginal(slave)) {
 			if (slave.vagina === 0) {
 				if (slave.aphrodisiacs > 1 || slave.inflationType === "aphrodisiac") {
-					r += ` ${His} virginity goes to the <span class="green">citizen who most deserves the gift of a slave's cherry.</span> ${He}'s so full of aphrodisiacs that ${he} <span class="devotion inc">enjoys the experience.</span> <span class="lime">${His} pussy is now broken in.</span>`;
+					r += ` ${His} virginity goes to the <span class="green">citizen who most deserves the gift of a slave's cherry.</span> ${He}'s so full of aphrodisiacs that ${he} <span class="devotion inc">enjoys the experience.</span> <span class="virginity loss">${His} pussy is now broken in.</span>`;
 					slave.devotion += 4;
 					slave.vagina = 1;
 				} else if (slave.devotion > 20) {
-					r += ` ${His} virginity goes to the <span class="green">citizen who most deserves the gift of a slave's cherry.</span> Losing ${his} virginity in this way <span class="devotion inc">confirms ${his} submission to you.</span> <span class="lime">${His} pussy is now broken in.</span>`;
+					r += ` ${His} virginity goes to the <span class="green">citizen who most deserves the gift of a slave's cherry.</span> Losing ${his} virginity in this way <span class="devotion inc">confirms ${his} submission to you.</span> <span class="virginity loss">${His} pussy is now broken in.</span>`;
 					slave.devotion += 4;
 					slave.vagina = 1;
 				} else {
-					r += ` ${His} virginity goes to the <span class="green">citizen who most deserves the gift of a slave's cherry.</span> ${He} tries to resist, and losing ${his} virginity to a rape makes ${him} <span class="devotion dec">hate</span> and <span class="trust dec">fear</span> you a great deal. <span class="lime">${His} pussy is now broken in.</span>`;
+					r += ` ${His} virginity goes to the <span class="green">citizen who most deserves the gift of a slave's cherry.</span> ${He} tries to resist, and losing ${his} virginity to a rape makes ${him} <span class="devotion dec">hate</span> and <span class="trust dec">fear</span> you a great deal. <span class="virginity loss">${His} pussy is now broken in.</span>`;
 					slave.devotion -= 10;
 					slave.trust -= 10;
 					slave.vagina = 1;
 				}
 			} else if (slave.vagina < 3) {
 				if (jsRandom(1, 100) > ((170 - slave.sexAmount) + (slave.vagina * 10) + (slave.skill.vaginal / 3))) {
-					r += ` <span class="lime">${His} pussy gets loosened by the intense use.</span>`;
+					r += ` <span class="change positive">${His} pussy gets loosened by the intense use.</span>`;
 					slave.vagina += 1;
 				}
 			}
@@ -415,15 +415,15 @@ window.saServeThePublic = (function saServeThePublic() {
 		if (canDoAnal(slave)) {
 			if (slave.anus === 0) {
 				if (slave.aphrodisiacs > 1 || slave.inflationType === "aphrodisiac") {
-					r += ` ${His} tight little anus goes to the <span class="green">most prominent citizen</span> to show an interest in an anal virgin. ${He}'s so full of aphrodisiacs that ${he} <span class="devotion inc">enjoys the experience.</span> ${His} fresh asshole is fucked all week, and by the end of it <span class="lime">${he} won't sit down.</span>`;
+					r += ` ${His} tight little anus goes to the <span class="green">most prominent citizen</span> to show an interest in an anal virgin. ${He}'s so full of aphrodisiacs that ${he} <span class="devotion inc">enjoys the experience.</span> ${His} fresh asshole is fucked all week, and by the end of it <span class="virginity loss">${he} won't sit down.</span>`;
 					slave.devotion += 4;
 					slave.anus = 2;
 				} else if (slave.devotion > 20) {
-					r += ` ${His} tight little anus goes to the <span class="green">most prominent citizen</span> to show an interest in an anal virgin. The pain and humiliation <span class="devotion inc">confirm ${his} submission to you.</span> ${His} fresh asshole is fucked all week, and by the end of it <span class="lime">${he} won't sit down.</span>`;
+					r += ` ${His} tight little anus goes to the <span class="green">most prominent citizen</span> to show an interest in an anal virgin. The pain and humiliation <span class="devotion inc">confirm ${his} submission to you.</span> ${His} fresh asshole is fucked all week, and by the end of it <span class="virginity loss">${he} won't sit down.</span>`;
 					slave.devotion += 4;
 					slave.anus = 2;
 				} else {
-					r += ` ${His} tight little anus goes to the <span class="green">most prominent citizen</span> to show an interest in an anal virgin. The pain and humiliation increases ${his} <span class="devotion dec">hatred</span> and <span class="trust dec">fear</span> for you. ${His} fresh asshole is fucked all week, and by the end of it <span class="lime">${he} won't sit down.</span>`;
+					r += ` ${His} tight little anus goes to the <span class="green">most prominent citizen</span> to show an interest in an anal virgin. The pain and humiliation increases ${his} <span class="devotion dec">hatred</span> and <span class="trust dec">fear</span> for you. ${His} fresh asshole is fucked all week, and by the end of it <span class="virginity loss">${he} won't sit down.</span>`;
 					slave.devotion -= 5;
 					slave.trust -= 5;
 					slave.anus = 2;
@@ -431,17 +431,17 @@ window.saServeThePublic = (function saServeThePublic() {
 			} else if (slave.anus < 3) {
 				if (slave.vagina < 0) {
 					if (jsRandom(1, 100) > ((150 - slave.sexAmount) + (slave.anus * 10) + (slave.skill.anal / 6))) {
-						r += ` <span class="lime">${His} asshole sees constant use in place of a pussy and loosens.</span>`;
+						r += ` <span class="change positive">${His} asshole sees constant use in place of a pussy and loosens.</span>`;
 						slave.anus += 1;
 					}
 				} else if (!canDoVaginal(slave)) {
 					if (jsRandom(1, 100) > ((150 - slave.sexAmount) + (slave.anus * 10) + (slave.skill.anal / 6))) {
-						r += ` <span class="lime">${His} asshole sees constant use in place of ${his} protected pussy and loosens.</span>`;
+						r += ` <span class="change positive">${His} asshole sees constant use in place of ${his} protected pussy and loosens.</span>`;
 						slave.anus += 1;
 					}
 				} else {
 					if (jsRandom(1, 100) > ((160 - slave.sexAmount) + (slave.anus * 10) + (slave.skill.anal / 6))) {
-						r += ` <span class="lime">${His} asshole loosens with constant use.</span>`;
+						r += ` <span class="change positive">${His} asshole loosens with constant use.</span>`;
 						slave.anus += 1;
 					}
 				}
@@ -492,7 +492,7 @@ window.saServeThePublic = (function saServeThePublic() {
 			}
 		} else {
 			if ((slave.skill.oral + slave.skill.anal >= 200) && ((slave.skill.vaginal >= 100) || !canDoVaginal(slave))) {
-				r += ` ${He}'s a <span class="aquamarine">sexual master</span> `;
+				r += ` ${He}'s a <span class="slave skill">sexual master</span> `;
 				if (canDoVaginal(slave)) {
 					r += `whose`;
 				} else {
@@ -534,7 +534,7 @@ window.saServeThePublic = (function saServeThePublic() {
 				}
 				r += ` ${he} offers personal training and sexual therapy.`;
 			} else {
-				r += ` ${He} shows diligence, and ${his} <span class="green">sexual skills improve,</span> according to what the citizens demand`;
+				r += ` ${He} shows diligence, and ${his} <span class="skill inc">sexual skills improve,</span> according to what the citizens demand`;
 				if (!canDoVaginal(slave)) {
 					r += ` and what's possible for ${him}`;
 				}
@@ -557,7 +557,7 @@ window.saServeThePublic = (function saServeThePublic() {
 					r += ` ${SkillIncrease.Entertain(slave, skillIncrease)}`;
 				}
 				if (slave.skill.entertainment > jsRandom(50, 99) && slave.skill.whore < 50) {
-					r += ` ${His} ability to entertain gave ${him} a better understanding of ${his} <span class="green">body's worth as a sexual object.</span>`;
+					r += ` ${His} ability to entertain gave ${him} a better understanding of ${his} <span class="skill inc">body's worth as a sexual object.</span>`;
 					slave.skill.whore += (2.5 + Math.floor((slave.intelligence + slave.intelligenceImplant) / 64));
 				}
 			}
@@ -1232,13 +1232,13 @@ window.saServeThePublic = (function saServeThePublic() {
 		if (slave.devotion < 10) {
 			if (jsRandom(1, 100) > 70) {
 				if (slave.skill.vaginal <= 30 && canDoVaginal(slave)) {
-					r += ` After being fucked too hard too often, ${he} now <span class="red">dislikes being penetrated.</span>`;
+					r += ` After being fucked too hard too often, ${he} now <span class="flaw gain">dislikes being penetrated.</span>`;
 					slave.sexualFlaw = "hates penetration";
 				} else if (slave.skill.anal <= 30 && canDoAnal(slave)) {
-					r += ` After so much anal pain, ${he} now <span class="red">dislikes being buttfucked.</span>`;
+					r += ` After so much anal pain, ${he} now <span class="flaw gain">dislikes being buttfucked.</span>`;
 					slave.sexualFlaw = "hates anal";
 				} else if (slave.skill.oral <= 30) {
-					r += ` After one too many facials, ${he} now <span class="red">dislikes sucking cock.</span>`;
+					r += ` After one too many facials, ${he} now <span class="flaw gain">dislikes sucking cock.</span>`;
 					slave.sexualFlaw = "hates oral";
 				}
 			}
@@ -1501,12 +1501,12 @@ window.saServeThePublic = (function saServeThePublic() {
 		}
 
 		if (slave.energy > 40 && slave.energy < 95) {
-			r += ` Being used sexually all week <span class="lime">increases ${his} sex drive.</span>`;
+			r += ` Being used sexually all week <span class="change positive">increases ${his} sex drive.</span>`;
 			slave.energy += 1;
 		}
 
 		if (cervixPump > 0) {
-			r += ` ${He} notices ${his} <span class="lime">belly has swollen</span> from all the `;
+			r += ` ${He} notices ${his} <span class="change positive">belly has swollen</span> from all the `;
 			if (slave.cervixImplant === 1) {
 				r += `vaginal`;
 			} else if (slave.cervixImplant === 2) {
@@ -1528,9 +1528,9 @@ window.saServeThePublic = (function saServeThePublic() {
 			r += ` <span class="story-label">This week</span> ${vignette.text} `;
 			if (vignette.type === "cash") {
 				if (vignette.effect > 0) {
-					r += `<span class="yellowgreen">making you an extra ${cashFormat(Math.trunc(slave.sexQuality * vignette.effect))}.</span>`;
+					r += `<span class="cash inc">making you an extra ${cashFormat(Math.trunc(slave.sexQuality * vignette.effect))}.</span>`;
 				} else if (vignette.effect < 0) {
-					r += `<span class="red">losing you ${cashFormat(Math.abs(Math.trunc(slave.sexQuality * vignette.effect)))}.</span>`;
+					r += `<span class="cash dec">losing you ${cashFormat(Math.abs(Math.trunc(slave.sexQuality * vignette.effect)))}.</span>`;
 				} else {
 					r += `an incident without lasting effect.`;
 				}
@@ -1584,19 +1584,19 @@ window.saServeThePublic = (function saServeThePublic() {
 				slave.trust += (1 * vignette.effect);
 			} else if (vignette.type === "health") {
 				if (vignette.effect > 0) {
-					r += `<span class="green">improving ${his} health.</span>`;
+					r += `<span class="health inc">improving ${his} health.</span>`;
 					improveCondition(slave, 2 * vignette.effect);
 				} else if (vignette.effect < 0) {
-					r += `<span class="red">affecting ${his} health.</span>`;
+					r += `<span class="health dec">affecting ${his} health.</span>`;
 					healthDamage(slave, 2 * vignette.effect);
 				} else {
 					r += `an incident without lasting effect.`;
 				}
 			} else {
 				if (vignette.effect > 0) {
-					r += `<span class="green">gaining you a bit of reputation.</span>`;
+					r += `<span class="reputation inc">gaining you a bit of reputation.</span>`;
 				} else if (vignette.effect < 0) {
-					r += `<span class="red">losing you a bit of reputation.</span>`;
+					r += `<span class="reputation dec">losing you a bit of reputation.</span>`;
 				} else {
 					r += `an incident without lasting effect.`;
 				}
diff --git a/src/endWeek/saStayConfined.js b/src/endWeek/saStayConfined.js
index 0ea858cdf70d543ac13be99883b3e31968721f91..7b60f4536c80a36f1132a3557171399e87405e69 100644
--- a/src/endWeek/saStayConfined.js
+++ b/src/endWeek/saStayConfined.js
@@ -99,7 +99,7 @@ window.saStayConfined = function saStayConfined(slave) {
 		} else {
 			t += ` ${He} is now willing to <span class="devotion accept">do as ${he}'s told,</span>`;
 		}
-		t += ` so <span class="yellow">${his} assignment has defaulted to rest.</span>`;
+		t += ` so <span class="noteworthy">${his} assignment has defaulted to rest.</span>`;
 		if (slave.assignment === "be confined in the cellblock") {
 			State.temporary.brokenSlaves++;
 			State.temporary.DL--;
diff --git a/src/endWeek/saTakeClasses.js b/src/endWeek/saTakeClasses.js
index 32f89234de8b9493e2bc6044d4f5fc6bbbc4e5a7..0e419349a7d38c4c94349777cc2b0df24bca6678 100644
--- a/src/endWeek/saTakeClasses.js
+++ b/src/endWeek/saTakeClasses.js
@@ -45,7 +45,7 @@ window.saTakeClasses = (function saServeThePublic() {
 	 */
 	function jobPreface(slave) {
 		if (slave.fetish === "mindbroken") {
-			r += `is no longer mentally capable and <span class="yellow">has been dropped from class.</span>`;
+			r += `is no longer mentally capable and <span class="noteworthy">has been dropped from class.</span>`;
 			if (slave.assignment === "take classes") {
 				removeJob(slave, "take classes");
 			}
@@ -346,7 +346,7 @@ window.saTakeClasses = (function saServeThePublic() {
 				slave.intelligenceImplant -= Math.max(1, learning);
 				if (slave.intelligenceImplant <= -15) {
 					slave.intelligenceImplant = -15;
-					r += ` ${He} has completed ${his} special education, and for most purposes ${he} has become <span class="orangered">less intelligent.</span>`;
+					r += ` ${He} has completed ${his} special education, and for most purposes ${he} has become <span class="education neg">less intelligent.</span>`;
 				}
 			}
 		} else if (slave.intelligenceImplant < 30 && slave.assignment === "learn in the schoolroom") {
@@ -359,14 +359,14 @@ window.saTakeClasses = (function saServeThePublic() {
 			slave.intelligenceImplant += Math.max(1, learning);
 			if (slave.intelligenceImplant >= 30) {
 				slave.intelligenceImplant = 30;
-				r += ` ${He} has completed ${his} advanced education, and for most purposes ${he} has become <span class="deepskyblue">more intelligent.</span>`;
+				r += ` ${He} has completed ${his} advanced education, and for most purposes ${he} has become <span class="intelligent">more intelligent.</span>`;
 			}
 		} else if (slave.intelligenceImplant < 15 && slave.assignment === "take classes") {
 			r += ` ${He} makes some progress towards a basic education.`;
 			slave.intelligenceImplant += Math.max(1, learning);
 			if (slave.intelligenceImplant >= 15) {
 				slave.intelligenceImplant = 15;
-				r += ` ${He} has completed a course of slave education, and for most purposes ${he} has become <span class="deepskyblue">more intelligent.</span>`;
+				r += ` ${He} has completed a course of slave education, and for most purposes ${he} has become <span class="intelligent">more intelligent.</span>`;
 			}
 		}
 	}
@@ -381,17 +381,17 @@ window.saTakeClasses = (function saServeThePublic() {
 				if (slave.accent > 3) {
 					const langWeekThreshold = (V.schoolroomUpgradeLanguage === 0) ? 24 : 16;
 					if (V.week - slave.weekAcquired > langWeekThreshold) {
-						r += ` ${He} has <span class="green">learned some ${V.language},</span> and can make ${his} point with some gesturing, though ${he} speaks ${V.language} horribly.`;
+						r += ` ${He} has <span class="improvement">learned some ${V.language},</span> and can make ${his} point with some gesturing, though ${he} speaks ${V.language} horribly.`;
 						slave.accent--;
 						if (slave.rules.speech === "language lessons") {
 							slave.rules.speech = "accent elimination";
 						}
 					}
 				} else if (slave.accent === 3) {
-					r += ` ${He} has <span class="green">learned functional ${V.language},</span> and can make ${himself} understood, though ${his} ${aNational(slave.nationality)} accent is still quite heavy.`;
+					r += ` ${He} has <span class="improvement">learned functional ${V.language},</span> and can make ${himself} understood, though ${his} ${aNational(slave.nationality)} accent is still quite heavy.`;
 					slave.accent--;
 				} else if (slave.accent === 2 && V.schoolroomUpgradeLanguage === 1) {
-					r += ` ${He} has <span class="green">learned decent ${V.language},</span> though ${he} retains enough of ${his} ${aNational(slave.nationality)} accent to make ${his} voice distinctly sexy.`;
+					r += ` ${He} has <span class="improvement">learned decent ${V.language},</span> though ${he} retains enough of ${his} ${aNational(slave.nationality)} accent to make ${his} voice distinctly sexy.`;
 					slave.accent--;
 				}
 			}
@@ -410,7 +410,7 @@ window.saTakeClasses = (function saServeThePublic() {
 						if ((slave.skill.entertainment > 30) || (V.schoolroomUpgradeSkills === 0 && slave.skill.entertainment > 10)) {
 							if ((slave.skill.anal > 30) || (V.schoolroomUpgradeSkills === 0 && slave.skill.anal > 10)) {
 								if ((slave.skill.vaginal > 30) || (V.schoolroomUpgradeSkills === 0 && slave.skill.vaginal > 10) || (slave.vagina < 0)) {
-									r += ` ${He} can learn little from further classes, so <span class="yellow">${his} assignment has defaulted to rest.</span>`;
+									r += ` ${He} can learn little from further classes, so <span class="noteworthy">${his} assignment has defaulted to rest.</span>`;
 									removeJob(slave, "take classes");
 								}
 							}
diff --git a/src/endWeek/saWhore.js b/src/endWeek/saWhore.js
index bbcdf82799c596914266c0b43567974dd6a5de7f..b918d766a2bbee801506c7ff0f073a45983946b8 100644
--- a/src/endWeek/saWhore.js
+++ b/src/endWeek/saWhore.js
@@ -228,10 +228,10 @@ window.saWhore = (function saWhore() {
 						}
 						if (V.MadamIgnoresFlaws !== 1) {
 							if (!["abusive", "anal addict", "attention whore", "breast growth", "breeder", "cum addict", "malicious", "neglectful", "none", "self hating"].includes(slave.sexualFlaw) && jsRandom(1, 100) > 90) {
-								r += ` ${SlaveFullName(V.Madam)} manages to <span class="green">break</span> ${slave.slaveName} of ${his} sexual flaws.`;
+								r += ` ${SlaveFullName(V.Madam)} manages to <span class="flaw break">break</span> ${slave.slaveName} of ${his} sexual flaws.`;
 								slave.sexualFlaw = "none";
 							} else if (slave.behavioralFlaw !== "none" && jsRandom(1, 100) > 90) {
-								r += ` ${SlaveFullName(V.Madam)} manages to <span class="green">break</span> ${slave.slaveName} of ${his} flaws.`;
+								r += ` ${SlaveFullName(V.Madam)} manages to <span class="flaw break">break</span> ${slave.slaveName} of ${his} flaws.`;
 								slave.behavioralFlaw = "none";
 							}
 						}
@@ -453,22 +453,22 @@ window.saWhore = (function saWhore() {
 		if (canDoVaginal(slave)) {
 			if (slave.vagina === 0) {
 				if (slave.aphrodisiacs > 1 || slave.inflationType === "aphrodisiac") {
-					r += ` ${His} virginity goes to the highest bidder, earning ${cashFormat(beauty * 10)}. ${He}'s so full of aphrodisiacs that ${he} <span class="devotion inc">enjoys the experience.</span> <span class="lime">${His} pussy is now broken in.</span>`;
+					r += ` ${His} virginity goes to the highest bidder, earning ${cashFormat(beauty * 10)}. ${He}'s so full of aphrodisiacs that ${he} <span class="devotion inc">enjoys the experience.</span> <span class="virginity loss">${His} pussy is now broken in.</span>`;
 					slave.devotion += 4;
 					slave.vagina = 1;
 				} else if (slave.devotion > 20) {
-					r += ` ${His} virginity goes to the highest bidder, earning ${cashFormat(beauty * 10)}. Losing ${his} virginity in this way <span class="devotion inc">confirms ${his} submission to you.</span> <span class="lime">${His} pussy is now broken in.</span>`;
+					r += ` ${His} virginity goes to the highest bidder, earning ${cashFormat(beauty * 10)}. Losing ${his} virginity in this way <span class="devotion inc">confirms ${his} submission to you.</span> <span class="virginity loss">${His} pussy is now broken in.</span>`;
 					slave.devotion += 4;
 					slave.vagina = 1;
 				} else {
-					r += ` ${His} virginity goes to the highest bidder, earning ${cashFormat(beauty * 10)}. ${He} tries to resist, and losing ${his} virginity to a rape makes ${him} <span class="devotion dec">hate</span> and <span class="trust dec">fear</span> you a great deal. <span class="lime">${His} pussy is now broken in.</span>`;
+					r += ` ${His} virginity goes to the highest bidder, earning ${cashFormat(beauty * 10)}. ${He} tries to resist, and losing ${his} virginity to a rape makes ${him} <span class="devotion dec">hate</span> and <span class="trust dec">fear</span> you a great deal. <span class="virginity loss">${His} pussy is now broken in.</span>`;
 					slave.devotion -= 10;
 					slave.trust -= 10;
 					slave.vagina = 1;
 				}
 			} else if (slave.vagina < 3) {
 				if (jsRandom(1, 100) > ((170 - beauty) + (slave.vagina * 10) + (slave.skill.vaginal / 3))) {
-					r += ` <span class="lime">${His} pussy gets loosened by the intense use.</span>`;
+					r += ` <span class="change positive">${His} pussy gets loosened by the intense use.</span>`;
 					slave.vagina += 1;
 				}
 			}
@@ -477,15 +477,15 @@ window.saWhore = (function saWhore() {
 		if (canDoAnal(slave)) {
 			if (slave.anus === 0) {
 				if (slave.aphrodisiacs > 1 || slave.inflationType === "aphrodisiac") {
-					r += ` ${His} tight little anus goes to the highest bidder, earning ${cashFormat(beauty * 5)}. ${He}'s so full of aphrodisiacs that ${he} <span class="devotion inc">enjoys the experience.</span> ${His} fresh asshole is fucked all week, and by the end of it <span class="lime">${he} won't sit down.</span>`;
+					r += ` ${His} tight little anus goes to the highest bidder, earning ${cashFormat(beauty * 5)}. ${He}'s so full of aphrodisiacs that ${he} <span class="devotion inc">enjoys the experience.</span> ${His} fresh asshole is fucked all week, and by the end of it <span class="virginity loss">${he} won't sit down.</span>`;
 					slave.devotion += 4;
 					slave.anus = 2;
 				} else if (slave.devotion > 20) {
-					r += ` ${His} tight little anus goes to the highest bidder, earning ${cashFormat(beauty * 5)}. The pain and humiliation <span class="devotion inc">confirm ${his} submission to you.</span> ${His} fresh asshole is fucked all week, and by the end of it <span class="lime">${he} won't sit down.</span>`;
+					r += ` ${His} tight little anus goes to the highest bidder, earning ${cashFormat(beauty * 5)}. The pain and humiliation <span class="devotion inc">confirm ${his} submission to you.</span> ${His} fresh asshole is fucked all week, and by the end of it <span class="virginity loss">${he} won't sit down.</span>`;
 					slave.devotion += 4;
 					slave.anus = 2;
 				} else {
-					r += ` ${His} tight little anus goes to the highest bidder, earning ${cashFormat(beauty * 5)}. The pain and humiliation increases ${his} <span class="devotion dec">hatred</span> and <span class="trust dec">fear</span> for you. ${His} fresh asshole is fucked all week, and by the end of it <span class="lime">${he} won't sit down.</span>`;
+					r += ` ${His} tight little anus goes to the highest bidder, earning ${cashFormat(beauty * 5)}. The pain and humiliation increases ${his} <span class="devotion dec">hatred</span> and <span class="trust dec">fear</span> for you. ${His} fresh asshole is fucked all week, and by the end of it <span class="virginity loss">${he} won't sit down.</span>`;
 					slave.devotion -= 5;
 					slave.trust -= 5;
 					slave.anus = 2;
@@ -493,17 +493,17 @@ window.saWhore = (function saWhore() {
 			} else if (slave.anus < 3) {
 				if (slave.vagina < 0) {
 					if (jsRandom(1, 100) > ((150 - beauty) + (slave.anus * 10) + (slave.skill.anal / 6))) {
-						r += ` <span class="lime">${His} asshole sees constant use in place of a pussy and loosens.</span>`;
+						r += ` <span class="change positive">${His} asshole sees constant use in place of a pussy and loosens.</span>`;
 						slave.anus += 1;
 					}
 				} else if (!canDoVaginal(slave)) {
 					if (jsRandom(1, 100) > ((150 - beauty) + (slave.anus * 10) + (slave.skill.anal / 6))) {
-						r += ` <span class="lime">${His} asshole sees constant use in place of ${his} protected pussy and loosens.</span>`;
+						r += ` <span class="change positive">${His} asshole sees constant use in place of ${his} protected pussy and loosens.</span>`;
 						slave.anus += 1;
 					}
 				} else {
 					if (jsRandom(1, 100) > ((160 - beauty) + (slave.anus * 10) + (slave.skill.anal / 6))) {
-						r += ` <span class="lime">${His} asshole loosens with constant use.</span>`;
+						r += ` <span class="change positive">${His} asshole loosens with constant use.</span>`;
 						slave.anus += 1;
 					}
 				}
@@ -543,7 +543,7 @@ window.saWhore = (function saWhore() {
 		if (!isAmputee(slave)) {
 			if (slave.skill.whoring < 100) {
 				slave.skill.whoring += 10 + Math.floor((slave.intelligence + slave.intelligenceImplant) / 32);
-				r += ` ${He} <span class="green">gains experience as a prostitute,</span> and gets better at `;
+				r += ` ${He} <span class="skill inc">gains experience as a prostitute,</span> and gets better at `;
 				if (slave.skill.whoring <= 30) {
 					r += `basic street smarts.`;
 				} else if (slave.skill.whoring <= 60) {
@@ -554,7 +554,7 @@ window.saWhore = (function saWhore() {
 			}
 			if (slave.skill.entertainment < 50 && slave.effectiveWhoreClass > 2) {
 				slave.skill.entertainment += Math.floor(2.5 + (slave.intelligence + slave.intelligenceImplant) / 64);
-				r += ` ${He} learns a little about how to better <span class="green">entertain</span> ${his} classy clients.`;
+				r += ` ${He} learns a little about how to better <span class="skill inc">entertain</span> ${his} classy clients.`;
 			}
 		}
 
@@ -572,7 +572,7 @@ window.saWhore = (function saWhore() {
 			}
 		} else {
 			if ((slave.skill.oral >= 100) && ((slave.skill.anal >= 100) || !canDoAnal(slave)) && ((slave.skill.vaginal >= 100) || !canDoVaginal(slave))) {
-				r += ` ${He}'s a <span class="aquamarine">sexual master</span> `;
+				r += ` ${He}'s a <span class="skill">sexual master</span> `;
 				if (canDoVaginal(slave)) {
 					r += `whose`;
 				} else {
@@ -584,7 +584,7 @@ window.saWhore = (function saWhore() {
 					}
 					r += ` front hole, ${his}`;
 				}
-				r += ` body commands <span class="yellowgreen">a high price.</span> When ${he}'s not `;
+				r += ` body commands <span class="cash inc">a high price.</span> When ${he}'s not `;
 				if (canDoVaginal(slave) && jsRandom(1, 4) === 1) {
 					r += `pleasing the rich with ${his} `;
 					if (slave.prestige > 1 || slave.porn.prestige > 2) {
@@ -616,7 +616,7 @@ window.saWhore = (function saWhore() {
 				}
 				r += ` ${he} works social gatherings and high society.`;
 			} else {
-				r += ` ${He} shows diligence, and ${his} <span class="green">sexual skills improve,</span> according to what the customers demand`;
+				r += ` ${He} shows diligence, and ${his} <span class="skill inc">sexual skills improve,</span> according to what the customers demand`;
 				if (!canDoVaginal(slave)) {
 					r += ` and what's possible for ${him}`;
 				}
@@ -1302,13 +1302,13 @@ window.saWhore = (function saWhore() {
 		if (slave.devotion < 10) {
 			if (jsRandom(1, 100) > 70) {
 				if (slave.skill.vaginal <= 30 && canDoVaginal(slave)) {
-					r += ` After being fucked too hard too often, ${he} now <span class="red">dislikes being penetrated.</span>`;
+					r += ` After being fucked too hard too often, ${he} now <span class="flaw gain">dislikes being penetrated.</span>`;
 					slave.sexualFlaw = "hates penetration";
 				} else if (slave.skill.anal <= 30 && canDoAnal(slave)) {
-					r += ` After so much anal pain, ${he} now <span class="red">dislikes being buttfucked.</span>`;
+					r += ` After so much anal pain, ${he} now <span class="flaw gain">dislikes being buttfucked.</span>`;
 					slave.sexualFlaw = "hates anal";
 				} else if (slave.skill.oral <= 30) {
-					r += ` After one too many facials, ${he} now <span class="red">dislikes sucking cock.</span>`;
+					r += ` After one too many facials, ${he} now <span class="flaw gain">dislikes sucking cock.</span>`;
 					slave.sexualFlaw = "hates oral";
 				}
 			}
@@ -1349,7 +1349,7 @@ window.saWhore = (function saWhore() {
 	 * @param {App.Entity.SlaveState} slave
 	 */
 	function addCashText(slave) {
-		r += ` In total, you were paid <span class="yellowgreen">${cashFormat(cash)}</span> for the use of ${slave.slaveName}'s body this week.`;
+		r += ` In total, you were paid <span class="cash inc">${cashFormat(cash)}</span> for the use of ${slave.slaveName}'s body this week.`;
 	}
 
 	/**
@@ -1582,12 +1582,12 @@ window.saWhore = (function saWhore() {
 		}
 
 		if (slave.energy > 40 && slave.energy < 95) {
-			r += ` Being used sexually all week <span class="lime">increases ${his} sex drive.</span>`;
+			r += ` Being used sexually all week <span class="change positive">increases ${his} sex drive.</span>`;
 			slave.energy += 1;
 		}
 
 		if (cervixPump > 0) {
-			r += ` ${He} notices ${his} <span class="lime">belly has swollen</span> from all the `;
+			r += ` ${He} notices ${his} <span class="change positive">belly has swollen</span> from all the `;
 			if (slave.cervixImplant === 1) {
 				r += `vaginal`;
 			} else if (slave.cervixImplant === 2) {
@@ -1607,9 +1607,9 @@ window.saWhore = (function saWhore() {
 		if (vignette.type === "cash") {
 			const cashVign = Math.trunc(FuckResult * vignette.effect);
 			if (vignette.effect > 0) {
-				r += `<span class="yellowgreen">making you an extra ${cashFormat(cashVign)}.</span>`;
+				r += `<span class="cash inc">making you an extra ${cashFormat(cashVign)}.</span>`;
 			} else if (vignette.effect < 0) {
-				r += `<span class="red">losing you ${cashFormat(Math.abs(cashVign))}.</span>`;
+				r += `<span class="cash dec">losing you ${cashFormat(Math.abs(cashVign))}.</span>`;
 			} else {
 				r += `an incident without lasting effect.`;
 			}
@@ -1669,19 +1669,19 @@ window.saWhore = (function saWhore() {
 			slave.trust += (1 * vignette.effect);
 		} else if (vignette.type === "health") {
 			if (vignette.effect > 0) {
-				r += `<span class="green">improving ${his} health.</span>`;
+				r += `<span class="health inc">improving ${his} health.</span>`;
 				improveCondition(slave, 2 * vignette.effect);
 			} else if (vignette.effect < 0) {
-				r += `<span class="red">affecting ${his} health.</span>`;
+				r += `<span class="health dec">affecting ${his} health.</span>`;
 				healthDamage(slave, 2 * vignette.effect);
 			} else {
 				r += `an incident without lasting effect.`;
 			}
 		} else {
 			if (vignette.effect > 0) {
-				r += `<span class="green">gaining you a bit of reputation.</span>`;
+				r += `<span class="reputation inc">gaining you a bit of reputation.</span>`;
 			} else if (vignette.effect < 0) {
-				r += `<span class="red">losing you a bit of reputation.</span>`;
+				r += `<span class="reputation dec">losing you a bit of reputation.</span>`;
 			} else {
 				r += `an incident without lasting effect.`;
 			}
diff --git a/src/endWeek/saWorkAGloryHole.js b/src/endWeek/saWorkAGloryHole.js
index ec081f3da82542ecceebf933a27ca6203ea6f340..54188fce92558b4964c3dd81052466f2753edd0a 100644
--- a/src/endWeek/saWorkAGloryHole.js
+++ b/src/endWeek/saWorkAGloryHole.js
@@ -266,9 +266,9 @@ window.saWorkAGloryHole = (function saWorkAGloryHole() {
 	function jobBody(slave) {
 		r += ` ${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 `;
 		if (V.publicFuckdolls === 0) {
-			r += `were paid <span class="yellowgreen">${cashFormat((Math.trunc(beauty * FResult)))}</span>`;
+			r += `were paid <span class="cash inc">${cashFormat((Math.trunc(beauty * FResult)))}</span>`;
 		} else {
-			r += `<span class="green">gained reputation</span>`;
+			r += `<span class="reputation inc">gained reputation</span>`;
 		}
 		r += ` for the use of ${slave.slaveName}'s holes this week.`;
 	}
@@ -463,7 +463,7 @@ window.saWorkAGloryHole = (function saWorkAGloryHole() {
 		}
 
 		if (cervixPump > 0) {
-			r += ` ${He} notices ${his} <span class="lime">belly has swollen</span> from all the `;
+			r += ` ${He} notices ${his} <span class="change positive">belly has swollen</span> from all the `;
 			if (slave.cervixImplant === 1) {
 				r += `vaginal `;
 			} else if (slave.cervixImplant === 2) {
diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw
index e7ef433c6c8b121aa3e481d004b4d7e023fa978e..d3b45414bc2ebce927c388911cb4a76ce7a1a7d0 100644
--- a/src/events/intro/introSummary.tw
+++ b/src/events/intro/introSummary.tw
@@ -35,7 +35,7 @@ __''UI Settings''__
 
 /* Accordion 000-250-006 */
 <<options $useAccordion>>
-	Accordion effects on weekly reports are 
+	Accordion effects on weekly reports are
 	<<option 1 "Enable">>
 		@@.cyan;ENABLED.@@
 	<<option 0 "Disable">>
@@ -45,7 +45,7 @@ __''UI Settings''__
 
 <br>
 <<options $useTabs>>
-	Economic Tabs on weekly reports are 
+	Economic Tabs on weekly reports are
 	<<option 1 "Enable">>
 		@@.cyan;ENABLED.@@
 	<<option 0 "Disable">>
diff --git a/src/facilities/farmyard/farmyardReport.tw b/src/facilities/farmyard/farmyardReport.tw
index 8c3aaeaf776724c4b384cce62f5e3f79748b64d5..b320da3e58dcfabf93681bd4cb302ff619f4f671 100644
--- a/src/facilities/farmyard/farmyardReport.tw
+++ b/src/facilities/farmyard/farmyardReport.tw
@@ -174,7 +174,6 @@
 		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is serving as the Farmer.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -185,7 +184,6 @@
 	<<else>>
 		<<silently>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -253,7 +251,6 @@
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<= saWorkTheFarm($slaves[$i])>>
 			<br>&nbsp;&nbsp;&nbsp;
 			<<= saChoosesOwnClothes($slaves[$i])>>
-			<<= illness($slaves[$i])>>
 			<<include "SA rules">>
 			<<include "SA diet">>
 			<<include "SA long term effects">>
@@ -266,7 +263,6 @@
 			<<include "SA chooses own job">>
 			<<run saWorkTheFarm($slaves[$i])>>
 			<<run saChoosesOwnClothes($slaves[$i])>>
-			<<run illness($slaves[$i])>>
 			<<include "SA rules">>
 			<<include "SA diet">>
 			<<include "SA long term effects">>
diff --git a/src/facilities/nursery/nurseryWidgets.js b/src/facilities/nursery/nurseryWidgets.js
index be2203b2895d64f33c041605431bca2e798a2fe5..46eed76b34e4c21d2b33223fa922708d1890eb29 100644
--- a/src/facilities/nursery/nurseryWidgets.js
+++ b/src/facilities/nursery/nurseryWidgets.js
@@ -19122,7 +19122,6 @@ App.Facilities.Nursery.nurseryReport = function nurseryReport() {
 			/* 000-250-006 */
 			r += `<strong><u><span class="pink">${SlaveFullName(Matron)}</span></u></strong> is serving as the Matron in ${V.nurseryName}.`;
 			r += `${saChoosesOwnClothes(Matron)}`;
-			r += `${illness(Matron)}`;
 			r += `<<include "SA rules">>`;
 			r += `<<include "SA diet">>`;
 			r += `<<include "SA long term effects">>`;
@@ -19133,7 +19132,6 @@ App.Facilities.Nursery.nurseryReport = function nurseryReport() {
 		} else {
 			r += `<<silently>>
 			${saChoosesOwnClothes(Matron)}
-			${illness(Matron)}
 			<<include "SA rules">>
 			<<include "SA diet">>
 			<<include "SA long term effects">>
diff --git a/src/gui/css/mainStyleSheet.css b/src/gui/css/mainStyleSheet.css
index 5db722676d7d00d1e46bfc224fdc05fcafb0bff0..2c20405dee171c3676da7590fceb662832d89f77 100644
--- a/src/gui/css/mainStyleSheet.css
+++ b/src/gui/css/mainStyleSheet.css
@@ -195,7 +195,7 @@ span.zeroButton > a:hover { text-decoration: none; }
 .gold, .gold a, .trust.dec, .trust.dec a, .trust.frightened, .trust.frightened a { color: gold }
 .goldenrod, .goldenrod a, .trust.terrified, .trust.terrified a { color: goldenrod }
 .gray, .gray a { color: gray }
-.green, .green a, .reputation.inc, .reputation.inc a, .improvement, .improvement a { color: green }
+.green, .green a, .reputation.inc, .reputation.inc a, .improvement, .improvement a, .flaw.break, .flaw.break a, .skill.inc, .skill.inc a { color: green }
 .hotpink, .hotpink a, .devotion.inc, .devotion.inc a, .devotion.accept, .devotion.accept a { color: hotpink }
 .lawngreen, .lawngreen a { color: lawngreen }
 .lightblue, .lightblue a { color: lightblue }
@@ -210,12 +210,12 @@ span.zeroButton > a:hover { text-decoration: none; }
 .mediumorchid, .mediumorchid a, .devotion.dec, .devotion.dec a, .devotion.resistant, .devotion.resistant a { color: mediumorchid }
 .mediumseagreen, .mediumseagreen a, .trust.trusting, .trust.trusting a { color: mediumseagreen }
 .orange, .orange a, .stupid, .stupid a, .change.negative, .change.negative a, .defiant.careful, .defiant.careful a { color: orange } /* generally between red and green, and a lot of other places */
-.orangered, .orangered a, .defiant.inc, .defiant.inc a, .defiant.bold, .defiant.bold a { color: orangered }
+.orangered, .orangered a, .defiant.inc, .defiant.inc a, .defiant.bold, .defiant.bold, education.neg a { color: orangered }
 .orchid, .orchid a { color: orchid } /* used once (wrong? */
 .pink, .pink a { color: pink } /* also fetish start ??? , and a lot of other stuff */
-.red, .red a, .health.dec, .health.dec a, .cash.dec, .cash.dec a, .flaw.gain, .flaw.gain a, .error, .error a, .elites.loss, .elites.loss a { color: red } /* also generally bad stuff */
+.red, .red a, .health.dec, .health.dec a, .cash.dec, .cash.dec a, .flaw.gain, .flaw.gain a, .error, .error a, .elites.loss, .elites.loss a, .reputation.dec, .reputation.dec a { color: red } /* also generally bad stuff */
 .seagreen, .seagreen a, .trust.prof-trusting, .trust.prof-trusting a { color: seagreen }
-.springgreen, .springgreen a, .skill.advantage, .skill.advantage a { color: springgreen }
+.springgreen, .springgreen a, .skill.player, .skill.player a { color: springgreen }
 .tan, .tan a { color: tan } /* some ethnicity */
 .chocolate, .chocolate a { color: chocolate }
 .saddlebrown, .saddlebrown a { color: saddlebrown }
diff --git a/src/interaction/prostheticLab.tw b/src/interaction/prostheticLab.tw
index 8b15837a70cf9c6b76f07458b09a7b5a27c9ee49..3a50028de2018ba759713e0e559f1ce91df29514 100644
--- a/src/interaction/prostheticLab.tw
+++ b/src/interaction/prostheticLab.tw
@@ -71,7 +71,7 @@
 		//Facility is fully expanded.//
 	<</if>>
 	</div>
-	
+
 	<div style="padding-top:1em">
 	<<if ($researchLab.hired + $researchLab.menials) < $researchLab.maxSpace>>
 		<div>
diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js
index 1f7a13f67cac6c82a1d6a2b23a8427a7e110054c..aa83b7541b6a4914bdc1e0bffa8c7f99939f4f2e 100644
--- a/src/js/DefaultRules.js
+++ b/src/js/DefaultRules.js
@@ -1505,7 +1505,7 @@ window.DefaultRules = (function() {
 						r += `<br>${slave.slaveName} is not eligible to fight.`;
 					} else {
 						if (!V.fighterIDs.includes(slave.ID)) {
-						    V.fighterIDs.push(slave.ID);
+							V.fighterIDs.push(slave.ID);
 						}
 						r += `<br>${slave.slaveName} has been automatically assigned to fight in the pit.`;
 					}
@@ -1541,7 +1541,7 @@ window.DefaultRules = (function() {
 					r += `<br>${slave.slaveName} is on drugs designed to expand major body parts, so ${he}'s been put on a fattening diet to provide ${his} body as much fuel for growth as possible.`;
 				}
 			} else {
-				// priority to growing/loosing muscles, then general body mass, then rest of the diets
+				// priority to growing/losing muscles, then general body mass, then rest of the diets
 				if (!isAmputee(slave) && (App.RA.shallShrink(slave.muscles, rule.muscles, 8) || App.RA.shallGrow(slave.muscles, rule.muscles, 2))) {
 					if (App.RA.shallShrink(slave.muscles, rule.muscles, 8)) {
 						if ((slave.diet !== "slimming")) {
diff --git a/src/js/datatypeCleanupJS.js b/src/js/datatypeCleanupJS.js
index d5a218fd570c3b6f868b34c0f03f1ef29af8fdad..0d7d0e0ee5ebfe3d028a6e22489b32ceb3c96402 100644
--- a/src/js/datatypeCleanupJS.js
+++ b/src/js/datatypeCleanupJS.js
@@ -2420,6 +2420,9 @@ App.Entity.Utils.RARuleDatatypeCleanup = function() {
 			if (k === 'assignment' || k === 'clothes' || k === 'label' || k === 'removeLabel' ) {
 				continue;
 			}
+			if (v[0] === undefined) {
+				continue;
+			}
 			if (v[0].toLowerCase() !== v[0]) {
 				set[k] = v.charAt(0).toLowerCase() + v.substr(1);
 			}
diff --git a/src/js/descriptionWidgets.js b/src/js/descriptionWidgets.js
index c53c83ca3ac57e82ad34620100282323796f3b8d..4fdfdbf082a2121e033e7e46a37b0a77c5b5599b 100644
--- a/src/js/descriptionWidgets.js
+++ b/src/js/descriptionWidgets.js
@@ -389,25 +389,13 @@ App.Desc.ageAndHealth = function(slave) {
 			}
 		}
 
-		if (H.illness > 0 || H.tired > 50) {
-			r += ` Additionally, ${he} is currently `;
-			if (slave.health.illness === 1) {
-				r += ` <span class="yellow">feeling under the weather.</span>`;
-			} else if (H.illness === 2) {
-				r += ` <span class="yellow">somewhat ill.</span>`;
-			} else if (H.illness === 3) {
-				r += ` <span class="red">sick.</span>`;
-			} else if (H.illness === 4) {
-				r += ` <span class="red">very sick.</span>`;
-			} else if (H.illness === 5) {
-				r += ` <span class="red">terribly ill.</span>`;
-			}
-			if (H.illness > 0 && H.tired > 50) {
-				r += ` and`;
-			}
-			if (H.tired > 80) {
+		if (H.tired > 30) {
+			r += ` Additionally, ${he} is also `;
+			if (H.tired > 90) {
 				r += ` <span class="red">exhausted.</span>`;
-			} else if (H.tired > 50) {
+			} else if (H.tired > 60) {
+				r += ` <span class="orange">fatigued.</span>`;
+			} else {
 				r += ` <span class="yellow">tired.</span>`;
 			}
 		}
diff --git a/src/js/slaveSummaryWidgets.js b/src/js/slaveSummaryWidgets.js
index 3f1d3a541b1098f76223a2e1840f8543e0a86b0b..8d7236d2f770f35847ae504d430b1191546ebd73 100644
--- a/src/js/slaveSummaryWidgets.js
+++ b/src/js/slaveSummaryWidgets.js
@@ -751,7 +751,7 @@ window.SlaveSummaryUncached = (function() {
 			makeSpan(c, `Ill${slave.health.illness}`, ["red", "strong"], true, slave.health.illness);
 		} else if (slave.health.illness > 2) {
 			makeSpan(c, `Ill${slave.health.illness}`, ["red", "strong"], true, slave.health.illness);
-		} else if (slave.health.illness > 1) {
+		} else if (slave.health.illness > 0) {
 			makeSpan(c, `Ill${slave.health.illness}`, ["yellow", "strong"], true, slave.health.illness);
 		}
 	}
@@ -763,8 +763,8 @@ window.SlaveSummaryUncached = (function() {
 			makeSpan(c, "Very ill", ["red", "strong"], true, slave.health.illness);
 		} else if (slave.health.illness > 2) {
 			makeSpan(c, "Ill", ["red", "strong"], true, slave.health.illness);
-		} else if (slave.health.illness > 1) {
-			makeSpan(c, "Somewhat ill", "yellow", true, slave.health.illness);
+		} else if (slave.health.illness > 0) {
+			makeSpan(c, "Sick", "yellow", true, slave.health.illness);
 		}
 	}
 
@@ -772,7 +772,7 @@ window.SlaveSummaryUncached = (function() {
 		if (slave.health.tired > 90) {
 			makeSpan(c, "Exh", ["red", "strong"], true, slave.health.tired);
 		} else if (slave.health.tired > 60) {
-			makeSpan(c, "Tir+", "yellow", true, slave.health.tired);
+			makeSpan(c, "Tir+", "orange", true, slave.health.tired);
 		} else if (slave.health.tired > 30) {
 			makeSpan(c, "Tir", "yellow", true, slave.health.tired);
 		} else if (slave.health.tired < 0) {
@@ -784,7 +784,7 @@ window.SlaveSummaryUncached = (function() {
 		if (slave.health.tired > 90) {
 			makeSpan(c, "Exhausted", ["red", "strong"], true, slave.health.tired);
 		} else if (slave.health.tired > 60) {
-			makeSpan(c, "Fatigued", "yellow", true, slave.health.tired);
+			makeSpan(c, "Fatigued", "orange", true, slave.health.tired);
 		} else if (slave.health.tired > 30) {
 			makeSpan(c, "Tired", "yellow", true, slave.health.tired);
 		} else if (slave.health.tired < 0) {
diff --git a/src/js/utils.js b/src/js/utils.js
index 2885e290d0761c5f6b1eb9c9931eab8e8409c562..4e51059a099180258057884edb03c5bbf979e8bf 100644
--- a/src/js/utils.js
+++ b/src/js/utils.js
@@ -308,10 +308,10 @@ window.getBestSlaves = function({part, count=3, smallest=false, filter=null}={})
 		filter = ()=>true;
 	}
 	return V.slaves.map((slave, index)=>({slave, index}))
-                   .filter(slaveInfo=>filter(slaveInfo.slave))
-	               .map(slaveInfo=>{ slaveInfo.value = part(slaveInfo.slave); return slaveInfo; })
-	               .sort(sortMethod)
-	               .slice(0, count);
+					.filter(slaveInfo=>filter(slaveInfo.slave))
+					.map(slaveInfo=>{ slaveInfo.value = part(slaveInfo.slave); return slaveInfo; })
+					.sort(sortMethod)
+					.slice(0, count);
 };
 window.getBestSlavesIndices= function(info) {
 	return getBestSlaves(info).map(slaveInfo => slaveInfo.index);
diff --git a/src/npc/surgery/organFarm.js b/src/npc/surgery/organFarm.js
index 083b4d6b80b4c55d849ff306be889b1e122d1bda..7c4f2ae79df5a2866b559d8d6cd774e5f4a40831 100644
--- a/src/npc/surgery/organFarm.js
+++ b/src/npc/surgery/organFarm.js
@@ -75,6 +75,14 @@ App.Medicine.OrganFarm.growOrgan = function(slave, organType) {
 	cashX(-organ.cost, "slaveSurgery", slave);
 };
 
+App.Medicine.OrganFarm.growIncubatorOrgan = function(slave, organType) {
+	const organ = App.Medicine.OrganFarm.Organs[organType];
+
+	V.incubatorOrgans.push({type: organType, weeksToCompletion: organ.time, ID: slave.ID});
+
+	cashX(-organ.cost, "slaveSurgery", slave);
+};
+
 /**
  * @param {App.Entity.SlaveState} slave
  * @returns {string}
@@ -119,7 +127,7 @@ App.Medicine.OrganFarm.implantActions = function(slave) {
 		r += `${App.UI.link("Discard", App.Medicine.OrganFarm.removeOrgan, [slave, organ.type], "Remote Surgery")}</div></div>`;
 	}
 
-	return `The fabricator has completed ${slaveOrgans.length} organ(s):<div class="organContainer">${r}</div>`;
+	return `The fabricator has completed ${slaveOrgans.length} organ(s):<div class="grid-2columns-auto">${r}</div>`;
 };
 
 /**
@@ -133,7 +141,7 @@ App.Medicine.OrganFarm.implant = function(slave, type, actionIndex) {
 	A.implant(slave);
 	surgeryDamage(slave, A.healthImpact);
 	if (V.organFarmUpgrade >= 2) {
-		slave.chem -= 20;
+		slave.chem += 20;
 	}
 
 	App.Medicine.OrganFarm.removeOrgan(slave, type);
diff --git a/src/pregmod/analyzePlayerPregnancy.tw b/src/pregmod/analyzePlayerPregnancy.tw
index 1df3b738b7e6387b00249fed1ae45271f463aab3..fb8a2b2a0b46d8cb79ecbf2195c0888e295c39a7 100644
--- a/src/pregmod/analyzePlayerPregnancy.tw
+++ b/src/pregmod/analyzePlayerPregnancy.tw
@@ -15,7 +15,7 @@
 	<p class="scene-intro">
 		You make yourself comfortable and prep your stomach for examination. <<PlayerBelly>>
 	</p>
-	
+
 	<p>
 		<h2>Furthest developed pregnancy</h2>
 		<div class="indent">
diff --git a/src/pregmod/analyzePregnancy.tw b/src/pregmod/analyzePregnancy.tw
index 84f66bfe11da41320f238ffc04e9fe7113c86877..03a2a23659fdc8dd0237c2bb1213100f7c273b23 100644
--- a/src/pregmod/analyzePregnancy.tw
+++ b/src/pregmod/analyzePregnancy.tw
@@ -100,7 +100,7 @@
 		<<for _ap = 0; _ap < _WL; _ap++>>
 			<hr style="margin:0">
 			<p>
-				<<capture _ap>>				
+				<<capture _ap>>
 					<<if $activeSlave.womb[_ap].age >=2 >>
 						<div class="indent">
 							Ova: $activeSlave.womb[_ap].genetics.name
diff --git a/src/pregmod/incubator.tw b/src/pregmod/incubator.tw
index 1246f3eadb1c592d45ea3efb89134ea77186a43f..774b41d0e016520706e88e2ca35c9799eece446e 100644
--- a/src/pregmod/incubator.tw
+++ b/src/pregmod/incubator.tw
@@ -523,49 +523,34 @@ Target age for release: <<textbox "$targetAge" $targetAge "Incubator">> [[Minimu
 			<br>
 			<<if $tanks[$i].ovaries == 0 && $tankOrgans.ovaries != 1>>
 				<<link "Prepare ovaries">>
-					<<run cashX(-10000, "incubator", $tanks[$i])>>
-					<<set _newOrgan = {type: "ovaries", weeksToCompletion: "10", ID: 0}>>
-					<<set _newOrgan.ID = $tanks[$i].ID>>
-					<<set $incubatorOrgans.push(_newOrgan)>>
+					<<run App.Medicine.OrganFarm.growIncubatorOrgan($tanks[$i], "ovaries")>>
 					<<goto "Incubator">>
 				<</link>>
 			<</if>>
 			<<if $tanks[$i].dick == 0 && $tankOrgans.penis != 1>>
 				<<link "Prepare penis">>
-					<<run cashX(-5000, "incubator", $tanks[$i])>>
-					<<set _newOrgan = {type: "penis", weeksToCompletion: "5", ID: 0}>>
-					<<set _newOrgan.ID = $tanks[$i].ID>>
-					<<set $incubatorOrgans.push(_newOrgan)>>
+					<<run App.Medicine.OrganFarm.growIncubatorOrgan($tanks[$i], "penis")>>
 					<<goto "Incubator">>
 				<</link>>
 			<</if>>
 			<<if $tanks[$i].balls == 0 && $tankOrgans.testicles != 1>>
 				|
 				<<link "Prepare testicles">>
-					<<run cashX(-5000, "incubator", $tanks[$i])>>
-					<<set _newOrgan = {type: "testicles", weeksToCompletion: "10", ID: 0}>>
-					<<set _newOrgan.ID = $tanks[$i].ID>>
-					<<set $incubatorOrgans.push(_newOrgan)>>
+					<<run App.Medicine.OrganFarm.growIncubatorOrgan($tanks[$i], "testicles")>>
 					<<goto "Incubator">>
 				<</link>>
 			<</if>>
 			<<if getBestVision($tanks[$i]) === 0 && $tankOrgans.eyes != 1>>
 				<br>$He appears to be blind:
 				<<link "Prepare eyes">>
-					<<run cashX(-10000, "incubator", $tanks[$i])>>
-					<<set _newOrgan = {type: "eyes", weeksToCompletion: "10", ID: 0}>>
-					<<set _newOrgan.ID = $tanks[$i].ID>>
-					<<set $incubatorOrgans.push(_newOrgan)>>
+					<<run App.Medicine.OrganFarm.growIncubatorOrgan($tanks[$i], "rightEye"), App.Medicine.OrganFarm.growIncubatorOrgan($tanks[$i], "leftEye")>>
 					<<goto "Incubator">>
 				<</link>>
 			<</if>>
 			<<if $tanks[$i].voice == 0 && $tankOrgans.voicebox != 1>>
 				<br>$He appears to be mute:
 				<<link "Prepare vocal cords">>
-					<<run cashX(-5000, "incubator", $tanks[$i])>>
-					<<set _newOrgan = {type: "voicebox", weeksToCompletion: "5", ID: 0}>>
-					<<set _newOrgan.ID = $tanks[$i].ID>>
-					<<set $incubatorOrgans.push(_newOrgan)>>
+					<<run App.Medicine.OrganFarm.growIncubatorOrgan($tanks[$i], "voicebox")>>
 					<<goto "Incubator">>
 				<</link>>
 			<</if>>
diff --git a/src/pregmod/organFarm.tw b/src/pregmod/organFarm.tw
index 2e5cc1e60f216d6785d1a684e8a825aaec246b6a..52e1290ba537b159bffe9e2535e5424d05596f16 100644
--- a/src/pregmod/organFarm.tw
+++ b/src/pregmod/organFarm.tw
@@ -44,6 +44,56 @@ The Organ Farm
 	<br>
 <</if>>
 
+<<if ($youngerOvaries != 1) && ($rep <= 10000*_PCSkillCheck)>>
+	//You lack the reputation to access designs for cloning fertile ovaries for menopausal slaves.//
+	<br>
+<<elseif ($youngerOvaries != 1) && ($rep > 10000*_PCSkillCheck)>>
+	[[Purchase designs for cloning fertile ovaries for menopausal slaves|Organ Farm][cashX(forceNeg(30000*_PCSkillCheck), "capEx"), $youngerOvaries = 1]]
+	//Costs <<print cashFormat(30000*_PCSkillCheck)>>//
+	<br>&nbsp;&nbsp;&nbsp;&nbsp;//Will allow the growth of younger, fertile ovaries for menopausal slaves. Restored fertility will only last for a couple years at most.//
+	<br>
+<<elseif ($youngerOvaries > 0)>>
+	The organ farm is capable of growing fertile ovaries for postmenopausal slaves.
+	<br>
+<</if>>
+
+<<if $asexualReproduction == 1>>
+	The organ farm is capable of growing modified ovary pairs capable of self-fertilization.
+	<br>
+<</if>>
+
+<<if $seePreg != 0 && $seeBestiality == 1 && $cheatMode == 1>>
+	<<if $farmyardLabUpgrades.animalOvaries > 0>>
+		<<if $animalOvaries < 1>>
+			//You lack the required designs for cloning animal ovaries for slaves.//
+			<br>
+		<<else>>
+			The organ farm is capable of growing animal ovaries for slaves.
+			<br>
+		<</if>>
+	<</if>>
+
+	<<if $farmyardLabUpgrades.animalTesticles > 0>>
+		<<if $animalTesticles < 1>>
+			//You lack the required designs for cloning animal testicles for slaves.//
+			<br>
+		<<else>>
+			The organ farm is capable of growing animal testicles for slaves.
+			<br>
+		<</if>>
+	<</if>>
+
+	<<if $farmyardLabUpgrades.animalMpreg > 0 && $arcologies[0].FSGenderRadicalistResearch == 1>>
+		<<if $animalMpreg < 1>>
+			//You lack the required designs for cloning animal anal wombs and ovaries for slaves.//
+			<br>
+		<<else>>
+			The organ farm is capable of growing animal anal wombs and ovaries for slaves.
+			<br>
+		<</if>>
+	<</if>>
+<</if>>
+
 <br>
 Organ Production
 <hr>
@@ -105,56 +155,6 @@ Organ Production
 	<br>
 <</if>>
 
-<<if ($youngerOvaries != 1) && ($rep <= 10000*_PCSkillCheck)>>
-	//You lack the reputation to access designs for cloning fertile ovaries for menopausal slaves.//
-	<br>
-<<elseif ($youngerOvaries != 1) && ($rep > 10000*_PCSkillCheck)>>
-	[[Purchase designs for cloning fertile ovaries for menopausal slaves|Organ Farm][cashX(forceNeg(30000*_PCSkillCheck), "capEx"), $youngerOvaries = 1]]
-	//Costs <<print cashFormat(30000*_PCSkillCheck)>>//
-	<br>&nbsp;&nbsp;&nbsp;&nbsp;//Will allow the growth of younger, fertile ovaries for menopausal slaves. Restored fertility will only last for a couple years at most.//
-	<br>
-<<elseif ($youngerOvaries > 0)>>
-	The organ farm is capable of growing fertile ovaries for postmenopausal slaves.
-	<br>
-<</if>>
-
-<<if $asexualReproduction == 1>>
-	The organ farm is capable of growing modified ovary pairs capable of self-fertilization.
-	<br>
-<</if>>
-
-<<if $seePreg != 0 && $seeBestiality == 1 && $cheatMode == 1>>
-	<<if $farmyardLabUpgrades.animalOvaries > 0>>
-		<<if $animalOvaries < 1>>
-			//You lack the required designs for cloning animal ovaries for slaves.//
-			<br>
-		<<else>>
-			The organ farm is capable of growing animal ovaries for slaves.
-			<br>
-		<</if>>
-	<</if>>
-
-	<<if $farmyardLabUpgrades.animalTesticles > 0>>
-		<<if $animalTesticles < 1>>
-			//You lack the required designs for cloning animal testicles for slaves.//
-			<br>
-		<<else>>
-			The organ farm is capable of growing animal testicles for slaves.
-			<br>
-		<</if>>
-	<</if>>
-
-	<<if $farmyardLabUpgrades.animalMpreg > 0 && $arcologies[0].FSGenderRadicalistResearch == 1>>
-		<<if $animalMpreg < 1>>
-			//You lack the required designs for cloning animal anal wombs and ovaries for slaves.//
-			<br>
-		<<else>>
-			The organ farm is capable of growing animal anal wombs and ovaries for slaves.
-			<br>
-		<</if>>
-	<</if>>
-<</if>>
-
 <br>
 Future Societies Research
 <hr>
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 564c08cc6c5b4c755ae955a72d99fb08c4560db0..c0163e71c7a266d1643ecdebcea72d0406f715c6 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -3699,6 +3699,29 @@ Done<br>
 	<<set $tooltipsEnabled = 0>>
 <</if>>
 
+<<set _newOrgans = []>>
+<<run $organs.forEach(o => {
+	if (o.type === "eyes") {
+		_newOrgans.push({type: "leftEye", weeksToCompletion: o.weeksToCompletion, ID: o.ID});
+		_newOrgans.push({type: "rightEye", weeksToCompletion: o.weeksToCompletion, ID: o.ID});
+	} else {
+		_newOrgans.push(o);
+	}
+})>>
+<<set $organs = _newOrgans>>
+
+<<set _newOrgans = []>>
+<<run $completedOrgans.forEach(o => {
+	if (o.type === "eyes") {
+		_newOrgans.push({type: "leftEye", ID: o.ID});
+		_newOrgans.push({type: "rightEye", ID: o.ID});
+	} else {
+		_newOrgans.push(o);
+	}
+})>>
+<<set $completedOrgans = _newOrgans>>
+
+
 /* leave this at the bottom of BC */
 <<if $releaseID < App.Version.release>>
 	<<set $releaseID = App.Version.release>>
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index b07d7e83521daae45cbbd36837bde6e86b3db88d..1c5fa8578f3ccb2d1bb6d7e9a4f0d78a5c989072 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -7932,7 +7932,6 @@ brought in to you. This time <<EventNameLink>> has been sent to deliver it. $He
 				<<set $activeSlave.devotion -= 50, $activeSlave.trust -= 50>>
 				<<run eyeSurgery($activeSlave, "both", "blind"), surgeryDamage($activeSlave, 20)>>
 				<<set $slaves.forEach(function(s) { if (s.devotion <= 20) { s.trust -= 10; } })>>
-				
 			<</replace>>
 		<</link>>
 	<</if>>
diff --git a/src/uncategorized/arcadeReport.tw b/src/uncategorized/arcadeReport.tw
index d83fd0e4a80fd0ab1b68f3c23ce899c5160337af..9109e9ce480a2bc7e511250a8e9cd10a620eeb32 100644
--- a/src/uncategorized/arcadeReport.tw
+++ b/src/uncategorized/arcadeReport.tw
@@ -141,7 +141,6 @@
 	<</if>>
 	<<if $showEWD != 0>>
 		<br>&nbsp;&nbsp;&nbsp;
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -151,7 +150,6 @@
 		<br><<include "SA devotion">>
 	<<else>>
 		<<silently>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
diff --git a/src/uncategorized/brothelReport.tw b/src/uncategorized/brothelReport.tw
index a09713bd6c6548c5ab6181a97e49d6589ed47ab0..8c2ff8ef817d2ee8c79f504bfdbe27c0740c0008 100644
--- a/src/uncategorized/brothelReport.tw
+++ b/src/uncategorized/brothelReport.tw
@@ -191,7 +191,6 @@
 		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is serving as the Madam.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -202,7 +201,6 @@
 	<<else>>
 		<<silently>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -314,7 +312,6 @@
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<= saWhore($slaves[$i])>>
 			<br>&nbsp;&nbsp;&nbsp;
 			<<= saChoosesOwnClothes($slaves[$i])>>
-			<<= illness($slaves[$i])>>
 			<<include "SA rules">>
 			<<include "SA diet">>
 			<<include "SA long term effects">>
@@ -327,7 +324,6 @@
 			<<include "SA chooses own job">>
 			<<run saWhore($slaves[$i])>>
 			<<run saChoosesOwnClothes($slaves[$i])>>
-			<<run illness($slaves[$i])>>
 			<<include "SA rules">>
 			<<include "SA diet">>
 			<<include "SA long term effects">>
diff --git a/src/uncategorized/buySlaves.tw b/src/uncategorized/buySlaves.tw
index a23f82e69d3bb9eac98bbc4837b135db66ea2adc..6d0ef97c3ca5b78d17f618c24da06c7c3a3a8784 100644
--- a/src/uncategorized/buySlaves.tw
+++ b/src/uncategorized/buySlaves.tw
@@ -363,7 +363,7 @@
 	<</if>>
 </div>
 
- 
+
  <h2>Selling slaves</h2>
  <div>
 	While you are at the market, you may want to [[look at your own underperforming slaves|Underperforming Slaves]].
diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw
index 48edbce1108221b20f5710d07f6e6001b43865d3..66dc0ed1eb7f963a999ee1948c8f94c1a42c6d70 100644
--- a/src/uncategorized/cellblockReport.tw
+++ b/src/uncategorized/cellblockReport.tw
@@ -138,7 +138,6 @@
 		''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__'' is serving as the Wardeness in $cellblockName.
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -149,7 +148,6 @@
 	<<else>>
 		<<silently>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -263,7 +261,6 @@
 		<</if>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<= saStayConfined($slaves[$i])>>
 		<br>&nbsp;&nbsp;&nbsp;
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -275,7 +272,6 @@
 		<<silently>>
 		<<include "SA chooses own job">>
 		<<run saStayConfined($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
diff --git a/src/uncategorized/clinicReport.tw b/src/uncategorized/clinicReport.tw
index 807319e7cac54b106d44056ce393ba7b1edcda9c..ff4909a27cc9c813e9f90d76a0c687ab285a5f1b 100644
--- a/src/uncategorized/clinicReport.tw
+++ b/src/uncategorized/clinicReport.tw
@@ -213,7 +213,6 @@
 		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is serving as the clinical nurse.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -224,7 +223,6 @@
 	<<else>>
 		<<silently>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -248,7 +246,7 @@
 	<<if $slaves[$i].trust < 45>>
 		<<set $slaves[$i].trust += 4>>
 	<</if>>
-	
+
 	<<if ($slaves[$i].health.condition < -80)>>
 		<<run improveCondition($slaves[$i], (20 + ($curativeUpgrade * 10) + _healthBonus))>>
 	<<elseif ($slaves[$i].health.condition < -40)>>
@@ -336,7 +334,6 @@
 		<</if>>
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -349,7 +346,6 @@
 		<<include "SA chooses own job">>
 		<<run saRest($slaves[$i])>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw
index eaab937350d97b1f3c038f2f020716a687413c87..4fb40bec5a73e53b4e5ecee2e19febacc728dbfe 100644
--- a/src/uncategorized/clubReport.tw
+++ b/src/uncategorized/clubReport.tw
@@ -120,7 +120,6 @@
 		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is performing as the DJ in $clubName.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -131,7 +130,6 @@
 	<<else>>
 		<<silently>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -229,7 +227,6 @@
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<= saServeThePublic($slaves[$i])>>
 			<br>&nbsp;&nbsp;&nbsp;
 			<<= saChoosesOwnClothes($slaves[$i])>>
-			<<= illness($slaves[$i])>>
 			<<include "SA rules">>
 			<<include "SA diet">>
 			<<include "SA long term effects">>
@@ -242,7 +239,6 @@
 			<<include "SA chooses own job">>
 			<<run saServeThePublic($slaves[$i])>>
 			<<run saChoosesOwnClothes($slaves[$i])>>
-			<<run illness($slaves[$i])>>
 			<<include "SA rules">>
 			<<include "SA diet">>
 			<<include "SA long term effects">>
diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw
index 066a5693e47ce85c21bfbdefdae2523bb796accb..10f7a9ba214f1306a22a0f570e1d02b7dd9d1385 100644
--- a/src/uncategorized/dairyReport.tw
+++ b/src/uncategorized/dairyReport.tw
@@ -292,7 +292,6 @@
 		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is serving as your Milkmaid.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -303,7 +302,6 @@
 	<<else>>
 		<<silently>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -400,7 +398,6 @@
 		<</if>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<= saGetMilked($slaves[$i])>>
 		<br>&nbsp;&nbsp;&nbsp;
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -412,7 +409,6 @@
 		<<silently>>
 		<<include "SA chooses own job">>
 		<<run saGetMilked($slaves[$i])>>
-		<<run illness($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 1f2ce0a6b263c78b3104187de1b462fc71903af5..e714555be74943edfb81d12df9f9cfc5e8939d0a 100644
--- a/src/uncategorized/fullReport.tw
+++ b/src/uncategorized/fullReport.tw
@@ -64,7 +64,6 @@
 
 <<if $showEWD == 0>>
 	<<silently>>
-	<<run illness($slaves[$i])>>
 	<<include "SA rules">>
 	<<run saChoosesOwnClothes($slaves[$i])>>
 	<<include "SA diet">>
@@ -74,7 +73,6 @@
 	<<include "SA rivalries">>
 	<</silently>>
 <<else>>
-	<<= illness($slaves[$i])>>
 	<<include "SA rules">>
 	<<= saChoosesOwnClothes($slaves[$i])>>
 	<<include "SA diet">>
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index 1e2a6ad5051cdca94482b7a5f327f3f3fded8001..68b72f0703ade421d20a4cb66403baa7c4de935f 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -2129,6 +2129,28 @@ $He is
 		<</if>>
 	<</if>>
 <</if>>
+<<if $activeSlave.health.illness > 0>>
+	<<if $activeSlave.fuckdoll == 0>>
+		$He
+	<<else>>
+		$His suit reports that $he
+	<</if>>
+	<<if ($activeSlave.health.illness === 1)>>
+		<<if $activeSlave.fuckdoll == 0>>
+			is @@.red;feeling under the weather.@@
+		<<else>>
+			has @@.red;fallen ill.@@
+		<</if>>
+	<<elseif ($activeSlave.health.illness === 2)>>
+		is @@.red;somewhat ill.@@
+	<<elseif ($activeSlave.health.illness === 3)>>
+		is @@.red;sick.@@
+	<<elseif ($activeSlave.health.illness === 4)>>
+		is @@.red;very sick.@@
+	<<elseif ($activeSlave.health.illness === 5)>>
+		is @@.red;terribly ill.@@
+	<</if>>
+<</if>>
 
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
 
@@ -2352,7 +2374,7 @@ $He is
 						<</if>>
 					<</if>>
 				<<else>>
-					aphrodisiacs and is not allowed to masturbate so as $he <<if hasAnyLegs($activeSlave)>>stands<<else>>sits<</if>> before you $he desperately presents $his open mouth, $his 
+					aphrodisiacs and is not allowed to masturbate so as $he <<if hasAnyLegs($activeSlave)>>stands<<else>>sits<</if>> before you $he desperately presents $his open mouth, $his
 					<<if $activeSlave.boobs >= 300>>
 						breasts,
 					<<else>>
@@ -2428,7 +2450,7 @@ $He is
 						<</if>>
 					<</if>>
 				<<else>>
-					aphrodisiacs and is not allowed to masturbate so as $he <<if hasAnyLegs($activeSlave)>>stands<<else>>sits<</if>> before you $he desperately presents $his open mouth, $his 
+					aphrodisiacs and is not allowed to masturbate so as $he <<if hasAnyLegs($activeSlave)>>stands<<else>>sits<</if>> before you $he desperately presents $his open mouth, $his
 					<<if $activeSlave.boobs >= 300>>
 						breasts,
 					<<else>>
@@ -2502,7 +2524,7 @@ $He is
 						<</if>>
 					<</if>>
 				<<else>>
-					aphrodisiacs and is not allowed to masturbate so as $he <<if hasAnyLegs($activeSlave)>>stands<<else>>sits<</if>> before you $he desperately presents $his open mouth, $his 
+					aphrodisiacs and is not allowed to masturbate so as $he <<if hasAnyLegs($activeSlave)>>stands<<else>>sits<</if>> before you $he desperately presents $his open mouth, $his
 					<<if $activeSlave.boobs >= 300>>
 						breasts,
 					<<else>>
diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw
index 522b3a5720fc7cf3a3fe01a5f6e91c84ad0b8347..9b726a8ca2eeae964a01950837d174c52d89f78c 100644
--- a/src/uncategorized/masterSuiteReport.tw
+++ b/src/uncategorized/masterSuiteReport.tw
@@ -375,7 +375,6 @@
 			<</if>>
 			<br>&nbsp;&nbsp;&nbsp;
 			<<= saChoosesOwnClothes($slaves[$i])>>
-			<<= illness($slaves[$i])>>
 			<<include "SA rules">>
 			<<include "SA diet">>
 			<<include "SA long term effects">>
@@ -393,7 +392,6 @@
 				<<set $servantMilkersMultiplier = 1>>
 			<</if>>
 			<<run saChoosesOwnClothes($slaves[$i])>>
-			<<run illness($slaves[$i])>>
 			<<include "SA rules">>
 			<<include "SA diet">>
 			<<include "SA long term effects">>
diff --git a/src/uncategorized/options.tw b/src/uncategorized/options.tw
index 0f80c54de35a048d79ea509967b3329cf86e6cc9..a47ee015bc66bf7ec8acb98938b0a384d6642ec6 100644
--- a/src/uncategorized/options.tw
+++ b/src/uncategorized/options.tw
@@ -678,7 +678,7 @@ This save was created using FC version $ver build $releaseID.
 				<<option 0 "Disabled">>
 			<</options>>
 			*/
-			To assist fixing, battles are hard disabled untill further notice.
+			To assist fixing, battles are hard disabled until further notice.
 
 			<<options $SecExp.settings.rebellion.enabled>>
 				Rebellions are
diff --git a/src/uncategorized/reShelterInspection.tw b/src/uncategorized/reShelterInspection.tw
index c36320182e49d5ef3a6f787fe490b976b7d07188..ae35368f27a4a82856bb6043b4a399731fb24b07 100644
--- a/src/uncategorized/reShelterInspection.tw
+++ b/src/uncategorized/reShelterInspection.tw
@@ -300,7 +300,7 @@ Not waiting to be greeted, the inspector looks up at the nearest camera and dema
 					<<if canAchieveErection(_Inspectee)>>
 						"It even work<<s>>, that'<<s>> lovely." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet.
 					<<else>>
-						"It <<s>>eem<<s>> to be non-functional, but it'<<s>> a ni<<c>>e gesture at lea<<s>>t." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet.
+						"It <<s>>eem<<s>> to be non-functional, but it'<<s>> a ni<<c>>e ge<<s>>ture at lea<<s>>t." The inspector looks deflated, and reluctantly makes a positive note on _his2 tablet.
 					<</if>>
 					<<set _inspectionResult-->>
 				<</if>>
diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw
index 914773d494608fe50e4b012333f58b5851d01857..0e666287ad575e4318e95909917ff57fe6844db6 100644
--- a/src/uncategorized/remoteSurgery.tw
+++ b/src/uncategorized/remoteSurgery.tw
@@ -1767,7 +1767,7 @@
 				[[Induced albinism treatment|Surgery Degradation][$activeSlave.geneticQuirks.albinism = 2,cashX(forceNeg($surgeryCost*10), "slaveSurgery", $activeSlave), surgeryDamage($activeSlave,40), $activeSlave.chem += 40,$surgeryType = "gene treatment"]] //This will induce @@.orange;albinism@@ in $his genetic code//
 			<</if>>
 		</div>
-		
+
 		<div class="indent">
 			<<if $activeSlave.geneticQuirks.androgyny == 2>>
 				[[Androgyny correction treatment|Surgery Degradation][$activeSlave.geneticQuirks.androgyny = 0,cashX(forceNeg($surgeryCost*4), "slaveSurgery", $activeSlave), surgeryDamage($activeSlave,40), $activeSlave.chem += 100,$surgeryType = "gene treatment"]]
diff --git a/src/uncategorized/saChoosesOwnJob.tw b/src/uncategorized/saChoosesOwnJob.tw
index 13d112bfe32b1bb5f80268b7bb0703465bdeeaed..f69d8ea9cf35d4aa69a19df2ea11f3c24fac4784 100644
--- a/src/uncategorized/saChoosesOwnJob.tw
+++ b/src/uncategorized/saChoosesOwnJob.tw
@@ -29,7 +29,7 @@
 			<<set $slaves[$i].choosesOwnAssignmentText += " is ill, so $he decides to rest.">>
 			<<= removeJob($slaves[$i], $slaves[$i].assignment)>>
 		<</if>>
-	
+
 	<<elseif ($slaves[$i].health.condition < 20)>>
 		<<if ($universalRulesAssignsSelfFacility == 1) && ($spa > _spaL)>>
 			<<set $slaves[$i].choosesOwnAssignmentText += " is unhealthy, so $he decides to get recover at $spaName.">>
diff --git a/src/uncategorized/saDrugs.tw b/src/uncategorized/saDrugs.tw
index 2cf9ea229230422cd886314f40150465d11a1142..fa8a1bac291e6ff32f2ed9fc9ad16ddf182bffbc 100644
--- a/src/uncategorized/saDrugs.tw
+++ b/src/uncategorized/saDrugs.tw
@@ -1321,13 +1321,43 @@
 	<<run healthDamage($slaves[$i], jsRandom(3, 5))>>
 <</if>>
 
-<<if $slaves[$i].curatives < 2 && $slaves[$i].inflationType != "curative">>
-	<<if $slaves[$i].health.condition < -50 && ($slaves[$i].assignment != "rest in the spa" && $slaves[$i].assignment != "rest" && $slaves[$i].assignment != "get treatment in the clinic")>>
-		It's difficult being so in such poor condition, and $he @@.mediumorchid;resents you@@ for ignoring $his plight.
-		<<set $slaves[$i].devotion -= 2>>
-	<<elseif ($slaves[$i].health.condition > 50)>>
+<<if $slaves[$i].curatives < 2 && $slaves[$i].inflationType != "curative" && $slaves[$i].assignment != "rest in the spa" && $slaves[$i].assignment != "rest" && $slaves[$i].assignment != "get treatment in the clinic">>
+	<<if $slaves[$i].health.illness > 0>>
+		$He is
+		<<if $slaves[$i].health.illness > 4>>
+			deathly
+		<<elseif $slaves[$i].health.illness > 3>>
+			seriously
+		<<elseif $slaves[$i].health.illness < 2>>
+			slightly
+		<</if>>
 		<<if $slaves[$i].fuckdoll == 0>>
-			<<if $slaves[$i].fetish != "mindbroken">>
+			<<if $slaves[$i].fetish == "mindbroken">>
+				ill, yet still continues to mindlessly carry out $his duties.
+			<<elseif $slaves[$i].health.illness < 2>>
+				ill, though not enough to complain about.
+			<<elseif $slaves[$i].devotion < 20>>
+				ill and @@.mediumorchid;hates@@ having $his health issues @@.gold;ignored.@@
+				<<set $slaves[$i].devotion -= $slaves[$i].health.illness * 2, $slaves[$i].trust -= $slaves[$i].health.illness>>
+			<<elseif $slaves[$i].devotion < 50>>
+				ill and @@.mediumorchid;resents@@ being @@.gold;denied@@ proper treatment.
+				<<set $slaves[$i].devotion -= $slaves[$i].health.illness * 3, $slaves[$i].trust -= $slaves[$i].health.illness * 2>>
+			<<elseif $slaves[$i].health.illness > 3>>
+				ill and @@.gold;struggles with@@ being withheld treatment.
+				<<set $slaves[$i].trust -= $slaves[$i].health.illness * 3>>
+			<<else>>
+				ill and does $his best to continue with $his duties out of dedication to you.
+			<</if>>
+		<<else>>
+			ill, triggering $his suit's preventative measures.
+		<</if>>
+	<</if>>
+	<<if $slaves[$i].fuckdoll == 0>>
+		<<if $slaves[$i].fetish != "mindbroken">>
+			<<if $slaves[$i].health.condition < -50>>
+				It's difficult being so in such poor condition, and $he @@.mediumorchid;resents you@@ for ignoring $his plight.
+				<<set $slaves[$i].devotion -= 2>>
+			<<elseif ($slaves[$i].health.condition > 50)>>
 				$He understands that $he owes $his near-perfect health to you and @@.hotpink;believes@@ that life with you is better than freedom in some ways.
 				<<set $slaves[$i].trust += 1>>
 			<</if>>
@@ -1335,6 +1365,8 @@
 	<</if>>
 <</if>>
 
+<<= illness($slaves[$i])>>
+
 <<if $slaves[$i].drugs != "stimulants" && $slaves[$i].inflationType != "stimulant">>
 	<<if ($slaves[$i].assignment != "rest in the spa" && $slaves[$i].assignment != "rest" && $slaves[$i].assignment != "get treatment in the clinic")>>
 		<<if $slaves[$i].health.tired > 90>>
diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw
index cdfd16aafd5749b2f3351baf13aff8d79677f0a1..2d27fbaf14d988426b806cedc48e93ba1d1a01cb 100644
--- a/src/uncategorized/saLiveWithHG.tw
+++ b/src/uncategorized/saLiveWithHG.tw
@@ -948,7 +948,7 @@
 			<<if ($slaves[$i].health.condition > 40)>>
 				<<if ($slaves[$i].heels == 0) && hasAnyNaturalLegs($slaves[$i])>>
 					$HeadGirl.slaveName is not satisfied with $slaves[$i].slaveName's submissiveness, and directs the autosurgery to @@.red;clip $his Achilles tendons.@@ Once the slave is recovered from surgery, $HeadGirl.slaveName removes all shoes from the suite, too, so $slaves[$i].slaveName is forced to crawl like a good little bitch. $slaves[$i].slaveName is @@.gold;angry@@ and @@.gold;frightened.@@
-					<<set $slaves[$i].devotion -= 5 $slaves[$i].heels = 1, $slaves[$i].shoes = "none">>
+					<<set $slaves[$i].devotion -= 5, $slaves[$i].heels = 1, $slaves[$i].shoes = "none">>
 					<<run surgeryDamage($slaves[$i], 20)>>
 				<</if>>
 				<<if ($slaves[$i].balls > 0)>>
@@ -1012,7 +1012,6 @@
 <<if $showEWD == 0>>
 	<<silently>>
 	/*<<run saChoosesOwnClothes($slaves[$i])>>*/
-	<<run illness($slaves[$i])>>
 	<<include "SA rules">>
 	<<include "SA diet">>
 	<<include "SA long term effects">>
@@ -1023,7 +1022,6 @@
 	<</silently>>
 <<else>>
 	/*<<= saChoosesOwnClothes($slaves[$i])>>*/
-	<<= illness($slaves[$i])>>
 	<<include "SA rules">>
 	<<include "SA diet">>
 	<<include "SA long term effects">>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 12e0a8beb598ae72586dbf658a8be2cac01d6538..8c9d577f0b89203eb1cc1511634a5363d6c2fa53 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -6621,24 +6621,6 @@
 	<</if>>
 <</if>>
 
-<<if $slaves[$i].health.illness > 1 && ($slaves[$i].assignment != "rest in the spa" && $slaves[$i].assignment != "rest" && $slaves[$i].assignment != "get treatment in the clinic")>>
-	$He is<<if $slaves[$i].health.illness > 4>> deathly<<elseif $slaves[$i].health.illness > 3>> seriously<</if>> ill
-	<<if $slaves[$i].devotion < 20>>
-		and @@.mediumorchid;hates@@ having $his health issues @@.gold;ignored.@@
-		<<set $slaves[$i].devotion -= $slaves[$i].health.illness * 2, $slaves[$i].trust -= $slaves[$i].health.illness>>
-	<<elseif $slaves[$i].devotion < 50 && $slaves[$i].health.illness > 3>>
-		and @@.mediumorchid;resents@@ not given proper treatment.
-		<<set $slaves[$i].devotion -= $slaves[$i].health.illness>>
-	<<else>>
-		and does $his best to continue with $his duties out of dedication to you, despite being sick.
-	<</if>>
-<<elseif $slaves[$i].health.illness > 1 && $slaves[$i].assignment == "get treatment in the clinic">>
-	$He is<<if $slaves[$i].health.illness > 4>> deathly<<elseif $slaves[$i].health.illness > 3>> seriously<</if>> ill and receiving appropriate treatment. $He is @@.hotpink;grateful@@ you help $him get well.
-	<<set $slaves[$i].devotion += 2>>
-<<elseif $slaves[$i].health.illness == 1>>
-	$He is a bit under the weather this week and $his productivity suffers; $he will hopefully recover soon.
-<</if>>
-
 <<if $seeAge == 1>>
 	<<if $slaves[$i].visualAge > 15 && $slaves[$i].physicalAge > 15>>
 		<<if $slaves[$i].trust < -20 && $slaves[$i].devotion < -20>>
diff --git a/src/uncategorized/saRules.tw b/src/uncategorized/saRules.tw
index 8848fd0b618b79ffb3ef599c087d94bebd69c94e..9c2e955729b656a9198236e405e0aeee83579945 100644
--- a/src/uncategorized/saRules.tw
+++ b/src/uncategorized/saRules.tw
@@ -1286,7 +1286,7 @@
 				is well taken care of during $his stay in $clinicName; $his <<if $slaves[$i].relationship == 3>>friend with benefits<<elseif $slaves[$i].relationship == 4>>sweetheart<<else>>_wife2<</if>> frequently stops by when $he gets the chance to make sure $his sexual needs are properly handled.
 				<<set $slaves[_lover].counter.oral += 14, $oralTotal += 14>>
 			<<elseif (def _famVisitor)>>
-				is well-loved by $his family; this week, his <<= relativeTerm($slaves[$i], _famVisitor)>> @@.lightgreen;_famVisitor.slaveName@@ pays special attention to $him, making sure $his sexual needs are met.
+				is well-loved by $his family; this week, $his <<= relativeTerm($slaves[$i], _famVisitor)>> @@.lightgreen;_famVisitor.slaveName@@ pays special attention to $him, making sure $his sexual needs are met.
 				<<set $slaves[$i].need = 0>>
 				<<set _famVisitor.counter.oral += 7, $oralTotal += 7>>
 			<<elseif $Nurse != 0>>
diff --git a/src/uncategorized/schoolroomReport.tw b/src/uncategorized/schoolroomReport.tw
index 458d84800d10b33aae37c371cec13bbb0edfbde1..1def58e78d2535ee0158ff72f42a88da55039797 100644
--- a/src/uncategorized/schoolroomReport.tw
+++ b/src/uncategorized/schoolroomReport.tw
@@ -121,7 +121,6 @@
 		''__@@.pink;$slaves[_FLs].slaveName@@__'' is serving as your Schoolteacher.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -132,7 +131,6 @@
 	<<else>>
 		<<silently>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -206,7 +204,6 @@
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<= saTakeClasses($slaves[$i])>>
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -219,7 +216,6 @@
 		<<include "SA chooses own job">>
 		<<run saTakeClasses($slaves[$i])>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
diff --git a/src/uncategorized/seExpiration.tw b/src/uncategorized/seExpiration.tw
index 72c109b9b6d71ff671dfe50578c7547a210638ed..34d27f5fbbf75942fd7cf1c878f95eab6ca504ac 100644
--- a/src/uncategorized/seExpiration.tw
+++ b/src/uncategorized/seExpiration.tw
@@ -186,7 +186,21 @@ at the moment of $his scheduled emancipation, $he seems willing to consider a sh
 </span>
 
 <<else>>
-
-$He makes no effort at all to conceal $his joy at being a free $woman again. It seems very unlikely that $he'll stay in the arcology; $he'll probably take what remains of $his indenture payment, held in escrow for this day, and be off to wherever it is that $he came from in the first place.
-
+	$He makes no effort at all to conceal $his joy at being a free $woman again.
+	<<if $activeSlave.origin == "$He put $himself up as collateral at a poker game, and lost.">>
+		A bet is a bet, but that was a lonnng year.  There's still room for $him in your $mercenariesTitle, but many of them have come to see $him in a new, more... intimate way.  As a free $woman, $he'll have to decide if it's worth the risk and the sex to stay here and fight for you who $he loathes... or else take up arms elsewhere in an ever more uncertain world.
+		<<if $activeSlave.addict > 5>>
+			They'll need to make money fast as they remain addicted to your aphrodisiacs.
+		<</if>>
+	<<else>>
+		It seems very unlikely that $he'll stay in the arcology; $he'll probably take what remains of $his indenture payment, held in escrow for this day, and be off to wherever it is that $he came from in the first place.
+	<</if>>
 <</if>>
+
+<h3>Final notes?</h3>
+<div class="scene-intro">
+	<div class="indent">
+		$His most recent task was to <<print $activeSlave.assignment>>.
+	</div>
+	<<SlaveExpensesExtra $activeSlave>>
+</div>
\ No newline at end of file
diff --git a/src/uncategorized/servantsQuartersReport.tw b/src/uncategorized/servantsQuartersReport.tw
index 54db0cb209068e95682686a7d76209b163757d0e..3d67aa66625684ac7b345e53eb432cf3817f4b70 100644
--- a/src/uncategorized/servantsQuartersReport.tw
+++ b/src/uncategorized/servantsQuartersReport.tw
@@ -194,7 +194,6 @@
 		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is serving as your Stewardess.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -205,7 +204,6 @@
 	<<else>>
 		<<silently>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -292,7 +290,6 @@
 		<</if>>
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -309,7 +306,6 @@
 			<<set _SQMilk += $milk, _SQMilkSale += $milkSale>>
 		<</if>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 068d5642350c8cbae9f787799b02621fce0ba898..912fffb0399344a98f984ade8919101243d99129 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1539,7 +1539,7 @@ Hormones: <strong><span id="hormones">
 	<<link "Drugs">><<set $activeSlave.rules.reward = "drugs">><<replace "#standardReward">>$activeSlave.rules.reward<</replace>><</link>> |
 	<<link "Orgasm">><<set $activeSlave.rules.reward = "orgasm">><<replace "#standardReward">>$activeSlave.rules.reward<</replace>><</link>> |
 	<<link "Situational">><<set $activeSlave.rules.reward = "situational">><<replace "#standardReward">>$activeSlave.rules.reward<</replace>><</link>>
-	
+
 	<<if setup.facilityHeads.includes($activeSlave.assignment)>>
 		<<if $activeSlave.lactation != 2>>
 			<br>Lactation maintenance for facility heads: ''<span id="lactationRules">$activeSlave.rules.lactation</span>.''
diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw
index 13287bacaf98036f7a6fcda243ee21006e04595f..28d77963b349707c5dd73595fbd817e9e96133cf 100644
--- a/src/uncategorized/spaReport.tw
+++ b/src/uncategorized/spaReport.tw
@@ -235,7 +235,6 @@
 		''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__'' is serving as the Attendant in $spaName.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -246,7 +245,6 @@
 	<<else>>
 		<<silently>>
 		<<run saChoosesOwnClothes($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -322,7 +320,6 @@
 		<</if>>
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
-		<<= illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
@@ -335,7 +332,6 @@
 		<<include "SA chooses own job">>
 		<<run saChoosesOwnClothes($slaves[$i])>>
 		<<run saRest($slaves[$i])>>
-		<<run illness($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
diff --git a/src/uncategorized/surgeryDegradation.tw b/src/uncategorized/surgeryDegradation.tw
index 2ee8ae586da071382063efc137ae13927f06f8f1..3c4e29e0a7e85c93f365e016dde206891e653284 100644
--- a/src/uncategorized/surgeryDegradation.tw
+++ b/src/uncategorized/surgeryDegradation.tw
@@ -454,7 +454,7 @@ As the remote surgery's long recovery cycle completes,
 	<</if>>
 
 <<case "newEars">>
-	The implant surgery is @@.red;invasive@@ and $he spends some time in the autosurgery recovering. As soon as the bandages around $his ears are removed, $he 
+	The implant surgery is @@.red;invasive@@ and $he spends some time in the autosurgery recovering. As soon as the bandages around $his ears are removed, $he
 	<<if $activeSlave.fetish == "mindbroken">>
 		returns to his normal activities, none the wiser.
 	<<else>>
diff --git a/src/utility/saRulesWidgets.tw b/src/utility/saRulesWidgets.tw
index 7516e157a112ff313e3da615aed7e17a2f283338..9b46f5a999e9acdee547906337d8c7681ef8263d 100644
--- a/src/utility/saRulesWidgets.tw
+++ b/src/utility/saRulesWidgets.tw
@@ -43,7 +43,7 @@ and
 <<if ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
 	<<switch $slaves[$i].fetish>>
 	<<case "submissive">>
-		hold $him down and 
+		hold $him down and
 		<<if $slaves[$i].vagina <= 0 && $slaves[$i].anus <= 0>>
 			use $his body
 		<<else>>
@@ -959,7 +959,7 @@ and
 		is forbidden to masturbate or seek sexual release, which @@.mediumorchid;highly frustrates@@ $him.
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
-	
+
 <</widget>>
 
 <<widget "saRulesNoReleaseDrugEffects">>