diff --git a/src/endWeek/reports/cellblockReport.js b/src/endWeek/reports/cellblockReport.js
new file mode 100644
index 0000000000000000000000000000000000000000..610c1e38100edc55f9ba88b9baba282bf5486022
--- /dev/null
+++ b/src/endWeek/reports/cellblockReport.js
@@ -0,0 +1,335 @@
+/**
+ * @returns {DocumentFragment}
+ */
+App.EndWeek.cellblockReport = function() {
+	const el = new DocumentFragment();
+	let r;
+
+	_slaves = App.Utils.sortedEmployees(App.Entity.facilities.cellblock);
+	_DL = _slaves.length, _SL = V.slaves.length, _brokenSlaves = 0, _idleBonus = 0, _softenedQuirks = 0, _trustMalus = 0, _FLsFetish = 0;
+
+	if (V.cellblockDecoration !== "standard") {
+		_devBonus = 1;
+	} else {
+		_devBonus = 0;
+	}
+	_cellblockNameCaps = capFirstChar(V.cellblockName);
+	V.flSex = App.EndWeek.getFLSex(App.Entity.facilities.cellblock);
+		r.push(` /* FIXME: should be local, passed as a parameter to saRules */`);
+
+	if (S.Wardeness) {
+		<<setLocalPronouns S.Wardeness>>
+
+		if (S.Wardeness.health.condition < -80) {
+			improveCondition(S.Wardeness, 20);
+		} else if ((S.Wardeness.health.condition < -40)) {
+			improveCondition(S.Wardeness, 15);
+		} else if ((S.Wardeness.health.condition < 0)) {
+			improveCondition(S.Wardeness, 10);
+		} else if ((S.Wardeness.health.condition < 90)) {
+			improveCondition(S.Wardeness, 7);
+		}
+		if (S.Wardeness.devotion <= 60) {
+			S.Wardeness.devotion += 2;
+		}
+		S.Wardeness.devotion += _devBonus;
+		if (S.Wardeness.trust < 60) {
+			S.Wardeness.trust += 3;
+		}
+		if (S.Wardeness.rules.living !== "luxurious") {
+			S.Wardeness.rules.living = "luxurious";
+		}
+		if (S.Wardeness.rules.rest !== "restrictive") {
+			S.Wardeness.rules.rest = "restrictive";
+		}
+		if (S.Wardeness.fetishStrength <= 95) {
+			if (S.Wardeness.fetish !== "sadist") {
+				if (fetishChangeChance(S.Wardeness) > random(0,100)) {
+					_FLsFetish = 1, S.Wardeness.fetishKnown = 1, S.Wardeness.fetish = "sadist";
+				}
+			} else if (S.Wardeness.fetishKnown === 0) {
+				_FLsFetish = 1, S.Wardeness.fetishKnown = 1;
+			} else {
+				_FLsFetish = 2, S.Wardeness.fetishStrength += 4;
+			}
+		}
+		if (S.Wardeness.energy > 95) || (S.Wardeness.fetish === "sadist") {
+			_devBonus++, _trustMalus++, _idleBonus++;
+		}
+		&nbsp;&nbsp;&nbsp;&nbsp;
+	V.SlaveFullName(S.Wardeness)
+		r.push(` is serving as the Wardeness.`);
+		if (S.Wardeness.relationship === -3 && S.Wardeness.devotion > 50) {
+			_devBonus++, _trustMalus++, _idleBonus++;
+			r.push(`As your ${V.wife}, ${he} tries ${his} best to break the disobedient slaves to your will.`);
+		}
+		if (_FLsFetish === 1) {
+			r.push(`One day ${he} demands obedience. The next day ${he} strikes a slave when it isn't given. The next, ${he} seems more excited than embarrassed when beating a prisoner. Soon, ${he}'s looking for an excuse to punish. ${He}'s <span class="pink">become more of a sadist.</span>`);
+		} else if ((_FLsFetish === 2)) {
+			r.push(`Being not only allowed but encouraged to get off while punishing prisoners <span class="lightsalmon">deepens ${his} sadism.</span>`);
+		}
+		if (setup.wardenessCareers.includes(S.Wardeness.career)) {
+			_devBonus++, _trustMalus++, _idleBonus++;
+			r.push(`${He} has experience with detecting security issues and grinding down potential miscreants from ${his} life before ${he} was a slave, making ${him} more effective.`);
+		} else if (S.Wardeness.skill.wardeness >= V.masteredXP) {
+			_devBonus++, _trustMalus++, _idleBonus++;
+			r.push(`${He} has experience with detecting security issues and grinding down potential miscreants from working for you, making ${him} more effective.`);
+		} else {
+			S.Wardeness.skill.wardeness += random(1,Math.ceil((S.Wardeness.intelligence+S.Wardeness.intelligenceImplant)/15) + 8);
+		}
+		if (S.Wardeness.fetish === "sadist") {
+			r.push(`${He} uses the prisoners to gratify ${his} sadism, terrifying them and quickly breaking their resistance.`);
+		} else if (S.Wardeness.energy > 95) {
+			r.push(`${He} is so sexually depraved that ${he} constantly molests the prisoners, breaking them to a life of servitude.`);
+		}
+		if (S.Wardeness.sexualFlaw === "malicious" || S.Wardeness.sexualFlaw === "abusive") {
+			_devBonus++, _trustMalus += 2, _idleBonus += 2;
+			r.push(`Sexual abuse of prisoners has become an end for ${him}, not a means. ${He} inspires ${his} prisoners to do everything possible to qualify to get away from ${him}, even as ${he} slowly grinds away their interest in sex to do it.`);
+		} else if (S.Wardeness.sexualQuirk === "caring") {
+			_devBonus--, _trustMalus--, _idleBonus--;
+			r.push(`${His} kindness sometimes shows through ${his} tough facade, letting prisoners get off easier than they should.`);
+		}
+		if (S.Wardeness.dick > 2) && (canPenetrate(S.Wardeness)) {
+			_devBonus++, _trustMalus++, _idleBonus++;
+			r.push(`${His} molestation of the prisoners is more varied and effective because ${he} has a dick to fuck them with.`);
+		}
+		if (S.Wardeness.muscles > 35) {
+			_devBonus++, _trustMalus++, _idleBonus++;
+			r.push(`${He} is strong enough to restrain anyone that tries anything with ${his} own hands.`);
+		}
+		if (S.Wardeness.devotion > 95) {
+			_devBonus++, _trustMalus++, _idleBonus++;
+			r.push(`${His} devotion to you is so absolute that ${he} sees breaking bitches for your service as a noble calling.`);
+		}
+		<<for _slave range _slaves>>
+			if (S.Wardeness.rivalryTarget === _slave.ID) {
+				r.push(`${He} greatly enjoys breaking ${his} `);
+	V.rivalryTerm(S.Wardeness)
+		r.push(`,${  _${slave.slaveName}}'s will.`);
+				_slave.devotion++, _slave.trust -= 3;
+				if (random(1,100) > 30) {
+					S.Wardeness.rivalry++, _slave.rivalry++;
+				}
+			} else if (S.Wardeness.relationshipTarget === _slave.ID) {
+				r.push(`${He} hates having to break ${his} `);
+	V.relationshipTerm(S.Wardeness)
+		r.push(`,${  _${slave.slaveName}}, but ${his} devotion to you wins out in the end.`);
+				_slave.devotion++, _slave.trust -= 3;
+				if (random(1,100) >= 50) {
+					r.push(`${His} and${  _${slave.slaveName}}'s relationship has been shattered by these events.`);
+					S.Wardeness.relationship = 0, S.Wardeness.relationshipTarget = 0 _slave.relationship = 0, _slave.relationshipTarget = 0;
+				}
+			} else if (areRelated(S.Wardeness, _slave)) {
+				<<setLocalPronouns _slave 2>>
+				r.push(`${He} shows ${his} `);
+	V.relativeTerm(S.Wardeness,_slave)
+		r.push(`${  _${slave.slaveName}} no mercy, making sure ${_he2} understands ${_his2} place.`);
+				_slave.devotion++, _slave.trust--;
+			}
+		<</for>>
+		if (_DL < V.cellblock && !slaveResting(S.Wardeness)) {
+			_seed = random(1,10)+((V.cellblock-_DL)*(random(150,170)+(_idleBonus*10)));
+			cashX(_seed, "cellblock", S.Wardeness);
+			<br>&nbsp;&nbsp;&nbsp;&nbsp;Since ${he} doesn't have enough prisoners to manage to keep ${him} busy, ${he} works on citizens' slaves, earning <span class="yellowgreen">
+	V.cashFormat(_seed)
+		r.push(`.</span>`);
+		}
+		if (_DL > 0) {<br><br>
+	}
+	}
+
+	if (_DL > 0) {
+		&nbsp;&nbsp;&nbsp;&nbsp;
+	if (_DL === 1) {''One slave is being confined in V.cellblockName until they are willing to obey.''
+	} else {''_DL slaves are being confined in V.cellblockName until they are willing to obey.''
+	}
+	}
+
+	if (S.Wardeness) {
+		V.i = V.slaveIndices[V.WardenessID];
+		r.push(` /* apply following SA passages to facility leader */`);
+		if (V.showEWD !== 0) {
+			<br><br>
+			/* 000-250-006 */
+			if (V.seeImages && V.seeReportImages) {
+			<div class="imageRef tinyImg">
+				r.push(`${V.SlaveArt(${S.Wardeness}}, 0, 0)`);
+			</div>
+			}
+			/* 000-250-006 */
+			<<includeDOM App.EndWeek.favoriteIcon(slave)>>
+			<span class='slave-name'>
+	V.SlaveFullName(slave)</span> is serving as the Wardeness in V.cellblockName.
+			<br>&nbsp;&nbsp;&nbsp;&nbsp;
+			r.push(`${V.App.SlaveAssignment.choosesOwnClothes(slave)}`);
+			tired(slave);
+			<<includeDOM App.SlaveAssignment.rules(slave)>>
+			r.push(`${V.App.SlaveAssignment.diet(slave)}`);
+			<<includeDOM App.SlaveAssignment.longTermEffects(slave)>>
+			r.push(`${V.App.SlaveAssignment.drugs(slave)}`);
+			r.push(`${V.App.SlaveAssignment.relationships(slave)}`);
+			r.push(`${V.App.SlaveAssignment.rivalries(slave)}`);
+			<br>&nbsp;&nbsp;&nbsp;&nbsp;
+	V.App.SlaveAssignment.devotion(slave)
+		} else {
+			App.SlaveAssignment.choosesOwnClothes(slave);
+			tired(slave);
+			App.SlaveAssignment.rules(slave);
+			App.SlaveAssignment.diet(slave);
+			App.SlaveAssignment.longTermEffects(slave);
+			App.SlaveAssignment.drugs(slave);
+			App.SlaveAssignment.relationships(slave);
+			App.SlaveAssignment.rivalries(slave);
+			App.SlaveAssignment.devotion(slave);
+		}
+	}
+
+	<<for _slave range _slaves>>
+		V.i = V.slaveIndices[_slave.ID];
+		<<setLocalPronouns _slave>>
+		if (_slave.devotion <= 20) {
+			if (_slave.trust >= -20) {
+				if ((_slave.hears === -1 && _slave.earwear !== "hearing aids") || (_slave.hears === 0 && _slave.earwear === "muffling ear plugs") ||(_slave.hears === -2)) {
+					_slave.devotion -= 2, _slave.trust -= 2;
+				} else {
+					_slave.devotion -= 4, _slave.trust -= 4;
+				}
+			} else {
+				_slave.devotion++;
+			}
+		}
+		switch (V.cellblockDecoration) {
+		case "Paternalist":
+			_slave.rules.living = "normal";
+			if (_slave.inflation > 0) {
+				deflate(_slave);
+			}
+		case "Pastoralist":
+			_slave.rules.living = "spare";
+			if (_slave.inflation === 0) {
+				if (_slave.pregKnown === 0 && _slave.bellyImplant < 1500) {
+					_slave.inflation = 2, _slave.inflationType = "milk", _slave.inflationMethod = 1;
+				} else {
+					_slave.inflation = 1, _slave.inflationType = "milk", _slave.inflationMethod = 1;
+				}
+				SetBellySize(_slave);
+			}
+		case "Hedonistic":
+			_slave.rules.living = "spare";
+			if (_slave.weight < 200) {
+				if (_slave.weightDirection === 1) {
+					_slave.weight += 5;
+				} else if (_slave.weightDirection === -1) {
+					_slave.weight += 1;
+				} else {
+					_slave.weight += 3;
+				}
+			}
+			if (_slave.muscles > -100) {
+				_slave.muscles -= 2;
+			}
+			if (_slave.inflation === 0) {
+				if (_slave.pregKnown === 0 && _slave.bellyImplant < 1500) {
+					_slave.inflation = 3, _slave.inflationType = "food", _slave.inflationMethod = 1;
+				} else {
+					_slave.inflation = 1, _slave.inflationType = "food", _slave.inflationMethod = 1;
+				}
+				SetBellySize(_slave);
+			}
+		default:
+			_slave.rules.living = "spare";
+			if (_slave.inflation > 0) {
+				deflate(_slave);
+			}
+		}
+		if (V.cellblockUpgrade === 1) {
+			if (_slave.behavioralFlaw !== "none") && (_slave.behavioralQuirk === "none") {
+				SoftenBehavioralFlaw(_slave);
+				_slave.devotion -= 10, _softenedQuirks++;
+			} else if ((_slave.sexualFlaw !== "none") && (_slave.sexualQuirk === "none")) {
+				SoftenSexualFlaw(_slave);
+				_slave.devotion -= 10, _softenedQuirks++;
+			}
+		}
+		_slave.devotion += _devBonus, _slave.trust -= _trustMalus;
+		if (S.Wardeness) && (S.Wardeness.sexualFlaw === "malicious") && (_slave.energy >= 2) {
+			_slave.energy -= 2;
+		}
+		if (_slave.health.condition < -80) {
+			improveCondition(_slave, 20);
+		} else if ((_slave.health.condition < -40)) {
+			improveCondition(_slave, 15);
+		} else if ((_slave.health.condition < 0)) {
+			improveCondition(_slave, 10);
+		} else if ((_slave.health.condition < 40)) {
+			improveCondition(_slave, 7);
+		} else if ((_slave.health.condition < 100)) {
+			improveCondition(_slave, 3);
+		}
+		if (V.showEWD !== 0) {
+			<br><br>
+			/* 000-250-006 */
+			if (V.seeImages && V.seeReportImages) {
+			<div class="imageRef tinyImg">
+				r.push(`${V.SlaveArt(_slave}, 0, 0)`);
+			</div>
+			}
+			/* 000-250-006 */
+			<<includeDOM App.EndWeek.favoriteIcon(_slave)>>
+			<span class='slave-name'>
+	V.SlaveFullName(_slave)</span>
+			if (_slave.choosesOwnAssignment === 2) {
+				r.push(`${V.App.SlaveAssignment.choosesOwnJob(_slave)}`);
+			} else {
+				r.push(`is confined in ${V.cellblockName}.`);
+			}
+			<br>&nbsp;&nbsp;&nbsp;&nbsp;${He} 
+	V.App.SlaveAssignment.stayConfined(_slave)
+			<br>&nbsp;&nbsp;&nbsp;
+			<<includeDOM App.SlaveAssignment.rules(_slave)>>
+			r.push(`${V.App.SlaveAssignment.diet(_slave)}`);
+			<<includeDOM App.SlaveAssignment.longTermEffects(_slave)>>
+			r.push(`${V.App.SlaveAssignment.drugs(_slave)}`);
+			r.push(`${V.App.SlaveAssignment.relationships(_slave)}`);
+			r.push(`${V.App.SlaveAssignment.rivalries(_slave)}`);
+			<br>&nbsp;&nbsp;&nbsp;&nbsp;
+	V.App.SlaveAssignment.devotion(_slave)
+		} else {
+			<<silently>>
+			App.SlaveAssignment.choosesOwnJob(_slave);
+			App.SlaveAssignment.stayConfined(_slave);
+			App.SlaveAssignment.rules(_slave);
+			App.SlaveAssignment.diet(_slave);
+			App.SlaveAssignment.longTermEffects(_slave);
+			App.SlaveAssignment.drugs(_slave);
+			App.SlaveAssignment.relationships(_slave);
+			App.SlaveAssignment.rivalries(_slave);
+			App.SlaveAssignment.devotion(_slave);
+			<</silently>>
+		}
+	<</for>>
+	if (_softenedQuirks) || (_brokenSlaves) {
+		<br><br>&nbsp;&nbsp;&nbsp;&nbsp;
+		if (_softenedQuirks > 0) {
+			_cellblockNameCaps's advanced compliance systems successfully softened
+			if (_softenedQuirks === 1) {
+				r.push(`one slave's mental flaw into an <span class="green">appealing quirk,</span> though the constant correction caused them <span class="mediumorchid">considerable anguish.</span>`);
+			} else {
+				_softenedQuirks slaves' mental flaws into <span class="green">appealing quirks,</span> though the constant correction caused them <span class="mediumorchid">considerable anguish.</span>
+			}
+		}
+		if (_brokenSlaves > 0) {
+			if (_brokenSlaves === 1) {
+				r.push(`One slave is now willing to <span class="hotpink">do as they're told</span> and has been released.`);
+			} else {
+				_brokenSlaves slaves are now willing to <span class="hotpink">do as they're told</span> and have been released.
+			}
+			if (V.cellblockDecoration !== "standard") {
+				<br><br>&nbsp;&nbsp;&nbsp;&nbsp;_cellblockNameCaps's V.cellblockDecoration atmosphere <span class="hotpink">had an impact on them while they were</span> imprisoned.
+			}
+		}
+	}
+	if (_DL > 0 || S.Wardeness) {
+		<br><br>
+	}
+};
\ No newline at end of file
diff --git a/src/endWeek/reportsTW/cellblockReport.tw b/src/endWeek/reportsTW/cellblockReport.tw
new file mode 100644
index 0000000000000000000000000000000000000000..bce62060aab12817cd65981eb38d46657d915d0e
--- /dev/null
+++ b/src/endWeek/reportsTW/cellblockReport.tw
@@ -0,0 +1,5 @@
+:: Cellblock Report [nobr]
+
+/* This passage probably isn't really necessary but it helps organize the profiler output.
+ * TODO: Once all the facility reports look like this, we should probably get rid of these intermediate passages. */
+<<includeDOM App.EndWeek.cellBlockReport()>>
diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw
deleted file mode 100644
index 8a2d3b4426fdf6360f035987da697c5d79beae08..0000000000000000000000000000000000000000
--- a/src/uncategorized/cellblockReport.tw
+++ /dev/null
@@ -1,308 +0,0 @@
-:: Cellblock Report [nobr]
-
-<<set _slaves = App.Utils.sortedEmployees(App.Entity.facilities.cellblock)>>
-<<set _DL = _slaves.length, _SL = $slaves.length, _brokenSlaves = 0, _idleBonus = 0, _softenedQuirks = 0, _trustMalus = 0, _FLsFetish = 0>>
-
-<<if $cellblockDecoration != "standard">>
-	<<set _devBonus = 1>>
-<<else>>
-	<<set _devBonus = 0>>
-<</if>>
-<<set _cellblockNameCaps = capFirstChar($cellblockName)>>
-<<set $flSex = App.EndWeek.getFLSex(App.Entity.facilities.cellblock)>> /* FIXME: should be local, passed as a parameter to saRules */
-
-<<if (_S.Wardeness)>>
-	<<setLocalPronouns _S.Wardeness>>
-
-	<<if (_S.Wardeness.health.condition < -80)>>
-		<<run improveCondition(_S.Wardeness, 20)>>
-	<<elseif (_S.Wardeness.health.condition < -40)>>
-		<<run improveCondition(_S.Wardeness, 15)>>
-	<<elseif (_S.Wardeness.health.condition < 0)>>
-		<<run improveCondition(_S.Wardeness, 10)>>
-	<<elseif (_S.Wardeness.health.condition < 90)>>
-		<<run improveCondition(_S.Wardeness, 7)>>
-	<</if>>
-	<<if (_S.Wardeness.devotion <= 60)>>
-		<<set _S.Wardeness.devotion += 2>>
-	<</if>>
-	<<set _S.Wardeness.devotion += _devBonus>>
-	<<if _S.Wardeness.trust < 60>>
-		<<set _S.Wardeness.trust += 3>>
-	<</if>>
-	<<if (_S.Wardeness.rules.living != "luxurious")>>
-		<<set _S.Wardeness.rules.living = "luxurious">>
-	<</if>>
-	<<if _S.Wardeness.rules.rest != "restrictive">>
-		<<set _S.Wardeness.rules.rest = "restrictive">>
-	<</if>>
-	<<if _S.Wardeness.fetishStrength <= 95>>
-		<<if _S.Wardeness.fetish != "sadist">>
-			<<if fetishChangeChance(_S.Wardeness) > random(0,100)>>
-				<<set _FLsFetish = 1, _S.Wardeness.fetishKnown = 1, _S.Wardeness.fetish = "sadist">>
-			<</if>>
-		<<elseif _S.Wardeness.fetishKnown == 0>>
-			<<set _FLsFetish = 1, _S.Wardeness.fetishKnown = 1>>
-		<<else>>
-			<<set _FLsFetish = 2, _S.Wardeness.fetishStrength += 4>>
-		<</if>>
-	<</if>>
-	<<if (_S.Wardeness.energy > 95) || (_S.Wardeness.fetish == "sadist")>>
-		<<set _devBonus++, _trustMalus++, _idleBonus++>>
-	<</if>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<= SlaveFullName(_S.Wardeness)>> is serving as the Wardeness.
-	<<if _S.Wardeness.relationship == -3 && _S.Wardeness.devotion > 50>>
-		<<set _devBonus++, _trustMalus++, _idleBonus++>>
-		As your $wife, $he tries $his best to break the disobedient slaves to your will.
-	<</if>>
-	<<if (_FLsFetish == 1)>>
-		One day $he demands obedience. The next day $he strikes a slave when it isn't given. The next, $he seems more excited than embarrassed when beating a prisoner. Soon, $he's looking for an excuse to punish. $He's @@.pink;become more of a sadist.@@
-	<<elseif (_FLsFetish == 2)>>
-		Being not only allowed but encouraged to get off while punishing prisoners @@.lightsalmon;deepens $his sadism.@@
-	<</if>>
-	<<if setup.wardenessCareers.includes(_S.Wardeness.career)>>
-		<<set _devBonus++, _trustMalus++, _idleBonus++>>
-		$He has experience with detecting security issues and grinding down potential miscreants from $his life before $he was a slave, making $him more effective.
-	<<elseif _S.Wardeness.skill.wardeness >= $masteredXP>>
-		<<set _devBonus++, _trustMalus++, _idleBonus++>>
-		$He has experience with detecting security issues and grinding down potential miscreants from working for you, making $him more effective.
-	<<else>>
-		<<set _S.Wardeness.skill.wardeness += random(1,Math.ceil((_S.Wardeness.intelligence+_S.Wardeness.intelligenceImplant)/15) + 8)>>
-	<</if>>
-	<<if _S.Wardeness.fetish == "sadist">>
-		$He uses the prisoners to gratify $his sadism, terrifying them and quickly breaking their resistance.
-	<<elseif _S.Wardeness.energy > 95>>
-		$He is so sexually depraved that $he constantly molests the prisoners, breaking them to a life of servitude.
-	<</if>>
-	<<if _S.Wardeness.sexualFlaw == "malicious" || _S.Wardeness.sexualFlaw == "abusive">>
-		<<set _devBonus++, _trustMalus += 2, _idleBonus += 2>>
-		Sexual abuse of prisoners has become an end for $him, not a means. $He inspires $his prisoners to do everything possible to qualify to get away from $him, even as $he slowly grinds away their interest in sex to do it.
-	<<elseif _S.Wardeness.sexualQuirk == "caring">>
-		<<set _devBonus--, _trustMalus--, _idleBonus-->>
-		$His kindness sometimes shows through $his tough facade, letting prisoners get off easier than they should.
-	<</if>>
-	<<if (_S.Wardeness.dick > 2) && (canPenetrate(_S.Wardeness))>>
-		<<set _devBonus++, _trustMalus++, _idleBonus++>>
-		$His molestation of the prisoners is more varied and effective because $he has a dick to fuck them with.
-	<</if>>
-	<<if (_S.Wardeness.muscles > 35)>>
-		<<set _devBonus++, _trustMalus++, _idleBonus++>>
-		$He is strong enough to restrain anyone that tries anything with $his own hands.
-	<</if>>
-	<<if (_S.Wardeness.devotion > 95)>>
-		<<set _devBonus++, _trustMalus++, _idleBonus++>>
-		$His devotion to you is so absolute that $he sees breaking bitches for your service as a noble calling.
-	<</if>>
-	<<for _slave range _slaves>>
-		<<if _S.Wardeness.rivalryTarget == _slave.ID>>
-			$He greatly enjoys breaking $his <<print rivalryTerm(_S.Wardeness)>>, _slave.slaveName's will.
-			<<set _slave.devotion++, _slave.trust -= 3>>
-			<<if random(1,100) > 30>>
-				<<set _S.Wardeness.rivalry++, _slave.rivalry++>>
-			<</if>>
-		<<elseif _S.Wardeness.relationshipTarget == _slave.ID>>
-			$He hates having to break $his <<print relationshipTerm(_S.Wardeness)>>, _slave.slaveName, but $his devotion to you wins out in the end.
-			<<set _slave.devotion++, _slave.trust -= 3>>
-			<<if random(1,100) >= 50>>
-				$His and _slave.slaveName's relationship has been shattered by these events.
-				<<set _S.Wardeness.relationship = 0, _S.Wardeness.relationshipTarget = 0 _slave.relationship = 0, _slave.relationshipTarget = 0>>
-			<</if>>
-		<<elseif areRelated(_S.Wardeness, _slave)>>
-			<<setLocalPronouns _slave 2>>
-			$He shows $his <<print relativeTerm(_S.Wardeness,_slave)>> _slave.slaveName no mercy, making sure _he2 understands _his2 place.
-			<<set _slave.devotion++, _slave.trust-->>
-		<</if>>
-	<</for>>
-	<<if (_DL < $cellblock && !slaveResting(_S.Wardeness))>>
-		<<set _seed = random(1,10)+(($cellblock-_DL)*(random(150,170)+(_idleBonus*10)))>>
-		<<run cashX(_seed, "cellblock", _S.Wardeness)>>
-		<br>&nbsp;&nbsp;&nbsp;&nbsp;Since $he doesn't have enough prisoners to manage to keep $him busy, $he works on citizens' slaves, earning @@.yellowgreen;<<print cashFormat(_seed)>>.@@
-	<</if>>
-	<<if (_DL > 0)>><br><br><</if>>
-<</if>>
-
-<<if (_DL > 0)>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<if (_DL == 1)>>''One slave is being confined in $cellblockName until they are willing to obey.''<<else>>''_DL slaves are being confined in $cellblockName until they are willing to obey.''<</if>>
-<</if>>
-
-<<if (_S.Wardeness)>>
-	<<set $i = $slaveIndices[$WardenessID]>> /* apply following SA passages to facility leader */
-	<<if $showEWD != 0>>
-		<br><br>
-		/* 000-250-006 */
-		<<if $seeImages && $seeReportImages>>
-		<div class="imageRef tinyImg">
-			<<= SlaveArt(_S.Wardeness, 0, 0)>>
-		</div>
-		<</if>>
-		/* 000-250-006 */
-		<<includeDOM App.EndWeek.favoriteIcon($slaves[$i])>>
-		<span class='slave-name'><<= SlaveFullName($slaves[$i])>></span> is serving as the Wardeness in $cellblockName.
-		<br>&nbsp;&nbsp;&nbsp;&nbsp;
-		<<= App.SlaveAssignment.choosesOwnClothes($slaves[$i])>>
-		<<run tired($slaves[$i])>>
-		<<includeDOM App.SlaveAssignment.rules($slaves[$i])>>
-		<<= App.SlaveAssignment.diet($slaves[$i])>>
-		<<includeDOM App.SlaveAssignment.longTermEffects($slaves[$i])>>
-		<<= App.SlaveAssignment.drugs($slaves[$i])>>
-		<<= App.SlaveAssignment.relationships($slaves[$i])>>
-		<<= App.SlaveAssignment.rivalries($slaves[$i])>>
-		<br>&nbsp;&nbsp;&nbsp;&nbsp;<<= App.SlaveAssignment.devotion($slaves[$i])>>
-	<<else>>
-		<<run App.SlaveAssignment.choosesOwnClothes($slaves[$i])>>
-		<<run tired($slaves[$i])>>
-		<<run App.SlaveAssignment.rules($slaves[$i])>>
-		<<run App.SlaveAssignment.diet($slaves[$i])>>
-		<<run App.SlaveAssignment.longTermEffects($slaves[$i])>>
-		<<run App.SlaveAssignment.drugs($slaves[$i])>>
-		<<run App.SlaveAssignment.relationships($slaves[$i])>>
-		<<run App.SlaveAssignment.rivalries($slaves[$i])>>
-		<<run App.SlaveAssignment.devotion($slaves[$i])>>
-	<</if>>
-<</if>>
-
-<<for _slave range _slaves>>
-	<<set $i = $slaveIndices[_slave.ID]>>
-	<<setLocalPronouns _slave>>
-	<<if (_slave.devotion <= 20)>>
-		<<if (_slave.trust >= -20)>>
-			<<if ((_slave.hears == -1 && _slave.earwear != "hearing aids") || (_slave.hears == 0 && _slave.earwear == "muffling ear plugs") ||(_slave.hears == -2))>>
-				<<set _slave.devotion -= 2, _slave.trust -= 2>>
-			<<else>>
-				<<set _slave.devotion -= 4, _slave.trust -= 4>>
-			<</if>>
-		<<else>>
-			<<set _slave.devotion++>>
-		<</if>>
-	<</if>>
-	<<switch $cellblockDecoration>>
-	<<case "Paternalist">>
-		<<set _slave.rules.living = "normal">>
-		<<if (_slave.inflation > 0)>>
-			<<run deflate(_slave)>>
-		<</if>>
-	<<case "Pastoralist">>
-		<<set _slave.rules.living = "spare">>
-		<<if _slave.inflation == 0>>
-			<<if _slave.pregKnown == 0 && _slave.bellyImplant < 1500>>
-				<<set _slave.inflation = 2, _slave.inflationType = "milk", _slave.inflationMethod = 1>>
-			<<else>>
-				<<set _slave.inflation = 1, _slave.inflationType = "milk", _slave.inflationMethod = 1>>
-			<</if>>
-			<<run SetBellySize(_slave)>>
-		<</if>>
-	<<case "Hedonistic">>
-		<<set _slave.rules.living = "spare">>
-		<<if _slave.weight < 200>>
-			<<if _slave.weightDirection == 1>>
-				<<set _slave.weight += 5>>
-			<<elseif _slave.weightDirection == -1>>
-				<<set _slave.weight += 1>>
-			<<else>>
-				<<set _slave.weight += 3>>
-			<</if>>
-		<</if>>
-		<<if _slave.muscles > -100>>
-			<<set _slave.muscles -= 2>>
-		<</if>>
-		<<if _slave.inflation == 0>>
-			<<if _slave.pregKnown == 0 && _slave.bellyImplant < 1500>>
-				<<set _slave.inflation = 3, _slave.inflationType = "food", _slave.inflationMethod = 1>>
-			<<else>>
-				<<set _slave.inflation = 1, _slave.inflationType = "food", _slave.inflationMethod = 1>>
-			<</if>>
-			<<run SetBellySize(_slave)>>
-		<</if>>
-	<<default>>
-		<<set _slave.rules.living = "spare">>
-		<<if (_slave.inflation > 0)>>
-			<<run deflate(_slave)>>
-		<</if>>
-	<</switch>>
-	<<if $cellblockUpgrade == 1>>
-		<<if (_slave.behavioralFlaw != "none") && (_slave.behavioralQuirk == "none")>>
-			<<run SoftenBehavioralFlaw(_slave)>>
-			<<set _slave.devotion -= 10, _softenedQuirks++>>
-		<<elseif (_slave.sexualFlaw != "none") && (_slave.sexualQuirk == "none")>>
-			<<run SoftenSexualFlaw(_slave)>>
-			<<set _slave.devotion -= 10, _softenedQuirks++>>
-		<</if>>
-	<</if>>
-	<<set _slave.devotion += _devBonus, _slave.trust -= _trustMalus>>
-	<<if (_S.Wardeness) && (_S.Wardeness.sexualFlaw == "malicious") && (_slave.energy >= 2)>>
-		<<set _slave.energy -= 2>>
-	<</if>>
-	<<if (_slave.health.condition < -80)>>
-		<<run improveCondition(_slave, 20)>>
-	<<elseif (_slave.health.condition < -40)>>
-		<<run improveCondition(_slave, 15)>>
-	<<elseif (_slave.health.condition < 0)>>
-		<<run improveCondition(_slave, 10)>>
-	<<elseif (_slave.health.condition < 40)>>
-		<<run improveCondition(_slave, 7)>>
-	<<elseif (_slave.health.condition < 100)>>
-		<<run improveCondition(_slave, 3)>>
-	<</if>>
-	<<if $showEWD != 0>>
-		<br><br>
-		/* 000-250-006 */
-		<<if $seeImages && $seeReportImages>>
-		<div class="imageRef tinyImg">
-			<<= SlaveArt(_slave, 0, 0)>>
-		</div>
-		<</if>>
-		/* 000-250-006 */
-		<<includeDOM App.EndWeek.favoriteIcon(_slave)>>
-		<span class='slave-name'><<= SlaveFullName(_slave)>></span>
-		<<if _slave.choosesOwnAssignment == 2>>
-			<<= App.SlaveAssignment.choosesOwnJob(_slave)>>
-		<<else>>
-			is confined in $cellblockName.
-		<</if>>
-		<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<= App.SlaveAssignment.stayConfined(_slave)>>
-		<br>&nbsp;&nbsp;&nbsp;
-		<<includeDOM App.SlaveAssignment.rules(_slave)>>
-		<<= App.SlaveAssignment.diet(_slave)>>
-		<<includeDOM App.SlaveAssignment.longTermEffects(_slave)>>
-		<<= App.SlaveAssignment.drugs(_slave)>>
-		<<= App.SlaveAssignment.relationships(_slave)>>
-		<<= App.SlaveAssignment.rivalries(_slave)>>
-		<br>&nbsp;&nbsp;&nbsp;&nbsp;<<= App.SlaveAssignment.devotion(_slave)>>
-	<<else>>
-		<<silently>>
-		<<run App.SlaveAssignment.choosesOwnJob(_slave)>>
-		<<run App.SlaveAssignment.stayConfined(_slave)>>
-		<<run App.SlaveAssignment.rules(_slave)>>
-		<<run App.SlaveAssignment.diet(_slave)>>
-		<<run App.SlaveAssignment.longTermEffects(_slave)>>
-		<<run App.SlaveAssignment.drugs(_slave)>>
-		<<run App.SlaveAssignment.relationships(_slave)>>
-		<<run App.SlaveAssignment.rivalries(_slave)>>
-		<<run App.SlaveAssignment.devotion(_slave)>>
-		<</silently>>
-	<</if>>
-<</for>>
-<<if (_softenedQuirks) || (_brokenSlaves)>>
-	<br><br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<if (_softenedQuirks > 0)>>
-		_cellblockNameCaps's advanced compliance systems successfully softened
-		<<if (_softenedQuirks == 1)>>
-			one slave's mental flaw into an @@.green;appealing quirk,@@ though the constant correction caused them @@.mediumorchid;considerable anguish.@@
-		<<else>>
-			_softenedQuirks slaves' mental flaws into @@.green;appealing quirks,@@ though the constant correction caused them @@.mediumorchid;considerable anguish.@@
-		<</if>>
-	<</if>>
-	<<if (_brokenSlaves > 0)>>
-		<<if (_brokenSlaves == 1)>>
-			One slave is now willing to @@.hotpink;do as they're told@@ and has been released.
-		<<else>>
-			_brokenSlaves slaves are now willing to @@.hotpink;do as they're told@@ and have been released.
-		<</if>>
-		<<if $cellblockDecoration != "standard">>
-			<br><br>&nbsp;&nbsp;&nbsp;&nbsp;_cellblockNameCaps's $cellblockDecoration atmosphere @@.hotpink;had an impact on them while they were@@ imprisoned.
-		<</if>>
-	<</if>>
-<</if>>
-<<if _DL > 0 || _S.Wardeness>>
-	<br><br>
-<</if>>