From 5f706197b0173f75b64c57b87a182f4bcab42517 Mon Sep 17 00:00:00 2001
From: lowercasedonkey <lowercasedonkey@gmail.com>
Date: Fri, 6 Nov 2020 18:58:43 -0500
Subject: [PATCH] inital file creation and machine conversion

---
 src/endWeek/reports/clubReport.js   | 278 ++++++++++++++++++++++++++++
 src/endWeek/reportsTW/clubReport.tw |   3 +
 src/uncategorized/clubReport.tw     | 258 --------------------------
 3 files changed, 281 insertions(+), 258 deletions(-)
 create mode 100644 src/endWeek/reports/clubReport.js
 create mode 100644 src/endWeek/reportsTW/clubReport.tw
 delete mode 100644 src/uncategorized/clubReport.tw

diff --git a/src/endWeek/reports/clubReport.js b/src/endWeek/reports/clubReport.js
new file mode 100644
index 00000000000..4cc10a7b331
--- /dev/null
+++ b/src/endWeek/reports/clubReport.js
@@ -0,0 +1,278 @@
+/**
+ * @returns {DocumentFragment}
+ */
+App.EndWeek.clubReport = function() {
+	const el = new DocumentFragment();
+	let r;
+
+	<span id="club-stats"></span>
+
+	_slaves = App.Utils.sortedEmployees(App.Entity.facilities.club);
+	_DL = _slaves.length, _SL = V.slaves.length, V.legendaryEntertainerID = 0, _FLsFetish = 0;
+	V.legendaryWombID = 0;
+	_minBonus = 50, _maxBonus = 150;
+
+	<!-- Statistics gathering; income is rep boosts in numbers, and profit will be rep per cash unit, or cash unit per rep -->
+	V.facility = V.facility || {}, V.facility.club = initFacilityStatistics(V.facility.club);
+
+	if (S.DJ) {
+		if (S.DJ.health.condition < -80) {
+			improveCondition(S.DJ, 20);
+		} else if (S.DJ.health.condition < -40) {
+			improveCondition(S.DJ, 15);
+		} else if (S.DJ.health.condition < 0) {
+			improveCondition(S.DJ, 10);
+		} else if (S.DJ.health.condition < 90) {
+			improveCondition(S.DJ, 7);
+		}
+		if (S.DJ.devotion <= 60) {
+			S.DJ.devotion += 5;
+		}
+		if (S.DJ.trust < 60) {
+			S.DJ.trust += 3;
+		}
+		if (S.DJ.fetishStrength <= 95) {
+			if (S.DJ.fetish !== "humiliation") {
+				if (fetishChangeChance(S.DJ) > random(0,100)) {
+					_FLsFetish = 1, S.DJ.fetishKnown = 1, S.DJ.fetish = "humiliation";
+				}
+			} else if (S.DJ.fetishKnown === 0) {
+				_FLsFetish = 1, S.DJ.fetishKnown = 1;
+			} else {
+				_FLsFetish = 2, S.DJ.fetishStrength += 4;
+			}
+		}
+		if (S.DJ.rules.living !== "luxurious") {
+			S.DJ.rules.living = "luxurious";
+		}
+		if (S.DJ.rules.rest !== "restrictive") {
+			S.DJ.rules.rest = "restrictive";
+		}
+		/* Make sure we have registered living expenses as for any other slave */
+		getSlaveStatisticData(S.DJ, V.facility.club);
+		<<setLocalPronouns S.DJ>>
+		&nbsp;&nbsp;&nbsp;&nbsp;
+	V.SlaveFullName(S.DJ)
+		r.push(` is performing as the DJ.`);
+		if (S.DJ.relationship === -3 && S.DJ.devotion > 50) {
+			r.push(`${He} tries ${his} best to be your energetic, cheerful ${V.wife}.`);
+		}
+		if (_FLsFetish === 1) {
+			r.push(`${He}'s expected to be the innovative, beautiful DJ spinning beats one minute, and come out of ${his} booth to grind on the floor the next; ${he} enjoys the interplay, and finds greater <span class="lightcoral">pleasure in exhibitionism.</span>`);
+		} else if ((_FLsFetish === 2)) {
+			r.push(`Every day ${he} gets to enjoy hundreds of stares on ${his} skin, and <span class="lightsalmon">becomes more of an exhibitionist.</span>`);
+		}
+		if (getBestVision(S.DJ) === 0) {
+			r.push(`${His} lack of eyesight doesn't slow ${him} down; rather, it strengthens ${his} other senses. ${His} tracks have a distinct sound, since ${he} experiences noise as ${his} sight.`);
+		}
+		if (S.DJ.skill.entertainment <= 10) {
+			r.push(`Though ${S.DJ.slaveName} does ${his} best to lead on the club, with ${his} lack of skill ${he} can do little.`);
+		} else if ((S.DJ.skill.entertainment <= 30)) {
+			S.DJ.slaveName's basic skills marginally <span class="green">improve</span> the atmosphere in V.clubName.
+		} else if ((S.DJ.skill.entertainment <= 60)) {
+			S.DJ.slaveName's skills <span class="green">improve</span> the atmosphere in V.clubName.
+		} else if ((S.DJ.skill.entertainment < 100)) {
+			S.DJ.slaveName's skills greatly <span class="green">improve</span> the atmosphere in V.clubName.
+		} else if ((S.DJ.skill.entertainment >= 100)) {
+			S.DJ.slaveName's mastery immensely <span class="green">improves</span> the atmosphere in V.clubName.
+		}
+		if (S.DJ.muscles > 5) && (S.DJ.muscles <= 95) {
+			r.push(`${His} toned body helps ${him} lead ${his} fellow club sluts by letting ${him} dance all night.`);
+		}
+		if (S.DJ.intelligence+S.DJ.intelligenceImplant > 15) {
+			r.push(`${He}'s smart enough to make an actual contribution to the music, greatly enhancing the entire experience.`);
+		}
+		if (S.DJ.face > 95) {
+			r.push(`${His} great beauty is a further draw, even when ${he}'s in ${his} DJ booth, but especially when ${he} comes out to dance.`);
+		}
+		if (setup.DJCareers.includes(S.DJ.career)) {
+			r.push(`${He} has musical experience from ${his} life before ${he} was a slave, a grounding that gives ${his} tracks actual depth.`);
+		} else if (S.DJ.skill.DJ >= V.masteredXP) {
+			r.push(`${He} has musical experience from working for you, giving ${his} tracks actual depth.`);
+		} else {
+			S.DJ.skill.DJ += random(1,Math.ceil((S.DJ.intelligence+S.DJ.intelligenceImplant)/15) + 8);
+		}
+		if (_DL + V.clubSlavesGettingHelp < 10) && V.DJnoSex !== 1 && !slaveResting(S.DJ) {
+			if (V.legendaryEntertainerID === 0) && (S.DJ.prestige === 0) && (S.DJ.skill.entertainment >= 100) && (S.DJ.devotion > 50) {
+				V.legendaryEntertainerID = S.DJ.ID;
+			}
+			<br>&nbsp;&nbsp;&nbsp;&nbsp;Since ${he} doesn't have enough sluts in V.clubName to make it worthwhile for ${him} to be on stage 24/7, ${he} spends ${his} extra time slutting it up ${himself}. ${He} has sex with S.DJ.sexAmount citizens, <span class="green">pleasing them immensely,</span> since it's more appealing to fuck the DJ than some club slut.
+			if (V.showEWD !== 0) {
+				<br>&nbsp;&nbsp;&nbsp;&nbsp;${He} 
+	V.App.SlaveAssignment.serveThePublic(S.DJ)
+			} else {
+				App.SlaveAssignment.serveThePublic(S.DJ);
+			}
+		}
+		if (_DL > 0) {<br><br>
+	}
+	}
+
+	if (_DL > 0) {
+		_possibleBonuses = 0;
+		&nbsp;&nbsp;&nbsp;&nbsp;
+	if (_DL !== 1) {''The _DL slaves pleasing citizens in V.clubName''
+	} else {''The one slave pleasing citizens in V.clubName''
+	}
+		r.push(` worked hard to <span class="green">increase your reputation</span> this week.`);
+	}
+
+	if (S.DJ) {
+		V.i = V.slaveIndices[V.djID];
+		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.DJ}}, 0, 0)`);
+			</div>
+			}
+			/* 000-250-006 */
+			<<includeDOM App.EndWeek.favoriteIcon(S.DJ)>>
+			<span class='slave-name'>
+	V.SlaveFullName(S.DJ)</span> is performing as the DJ in V.clubName.
+			<br>&nbsp;&nbsp;&nbsp;
+			r.push(`${V.App.SlaveAssignment.choosesOwnClothes(${S.DJ)}}`);
+			tired(S.DJ);
+			<<includeDOM App.SlaveAssignment.rules(S.DJ)>>
+			r.push(`${V.App.SlaveAssignment.diet(${S.DJ)}}`);
+			<<includeDOM App.SlaveAssignment.longTermEffects(S.DJ)>>
+			r.push(`${V.App.SlaveAssignment.drugs(${S.DJ)}}`);
+			r.push(`${V.App.SlaveAssignment.relationships(${S.DJ)}}`);
+			r.push(`${V.App.SlaveAssignment.rivalries(${S.DJ)}}`);
+			<br>&nbsp;&nbsp;&nbsp;&nbsp;
+	V.App.SlaveAssignment.devotion(S.DJ)
+		} else {
+			App.SlaveAssignment.choosesOwnClothes(S.DJ);
+			tired(S.DJ);
+			App.SlaveAssignment.rules(S.DJ);
+			App.SlaveAssignment.diet(S.DJ);
+			App.SlaveAssignment.longTermEffects(S.DJ);
+			App.SlaveAssignment.drugs(S.DJ);
+			App.SlaveAssignment.relationships(S.DJ);
+			App.SlaveAssignment.rivalries(S.DJ);
+			App.SlaveAssignment.devotion(S.DJ);
+		}
+	}
+
+	if (_DL > 0) {
+		<<for _slave range _slaves>>
+			V.i = V.slaveIndices[_slave.ID];
+			<<setLocalPronouns _slave>>
+			if (V.legendaryEntertainerID === 0) && (_slave.prestige === 0) && (_slave.skill.entertainment >= 100) && (_slave.devotion > 50) {
+				V.legendaryEntertainerID = _slave.ID;
+			}
+			if (V.legendaryWombID === 0) && (!isAmputee(_slave)) && (_slave.preg > _slave.pregData.normalBirth/1.33) && (_slave.broodmother === 0) && (_slave.eggType === "human") && (_slave.counter.births > 10) && (_slave.devotion > 50) && (_slave.prestige === 0) {
+				V.legendaryWombID = _slave.ID;
+			}
+			if (_slave.devotion <= 20) && (_slave.trust >= -20) {
+				_slave.devotion -= 5, _slave.trust -= 5;
+			} else if ((_slave.devotion < 45)) {
+				_slave.devotion += 4;
+			} else if ((_slave.devotion > 50)) {
+				_slave.devotion -= 4;
+			}
+
+			if (_slave.trust < 30) {
+				_slave.trust += 5;
+			}
+
+			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 < 90)) {
+				improveCondition(_slave, 7);
+			}
+
+			if (_slave.rules.living !== "normal") {
+				_slave.rules.living = "normal";
+			}
+
+			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 serving in ${V.clubName}.`);
+				}
+				<br>&nbsp;&nbsp;&nbsp;&nbsp;${He} 
+	V.App.SlaveAssignment.serveThePublic(_slave)
+				<br>&nbsp;&nbsp;&nbsp;
+				r.push(`${V.App.SlaveAssignment.choosesOwnClothes(_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.choosesOwnJob(_slave);
+				App.SlaveAssignment.serveThePublic(_slave);
+				App.SlaveAssignment.choosesOwnClothes(_slave);
+				<<includeDOM 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>>
+		<p>
+			r.push(`${V.App.Ads.report("club")}`);
+		</p>
+
+		<!-- Record statistics gathering -->
+		<<script>>
+			r.push(`var b = State.variables.facility.club;`);
+			r.push(`b.whoreIncome = 0;`);
+			r.push(`b.customers = 0;`);
+			r.push(`b.whoreCosts = 0;`);
+			r.push(`b.rep = 0;`);
+			r.push(`for (var si of b.income.values()) {`);
+				r.push(`b.whoreIncome += si.income;`);
+				r.push(`b.customers += si.customers;`);
+				r.push(`b.whoreCosts += si.cost;`);
+				r.push(`b.rep += si.rep;`);
+			}
+			r.push(`b.adsCosts = State.variables.clubAdsSpending;`);
+			r.push(`b.maintenance = State.variables.club * State.variables.facilityCost * (1.0 + 0.2 * State.variables.clubUpgradePDAs);`);
+			r.push(`b.totalIncome = b.whoreIncome + b.adsIncome;`);
+			r.push(`b.totalExpenses = b.whoreCosts + b.adsCosts + b.maintenance;`);
+			r.push(`b.profit = b.totalIncome / b.totalExpenses;`);
+		<</script>>
+		if (V.clubDecoration !== "standard") {
+			<p>
+				r.push(`${V.capFirstChar(V.clubName)}'s customers enjoy <span class="green">having sex in V.clubDecoration surroundings.</span>`);
+			</p>
+		}
+
+		<!-- Statistics output -->
+		<<includeDOM App.Facilities.Club.Stats(false)>>
+		<<timed 50ms>>
+			<<replace #club-stats>>
+				<<includeDOM App.Facilities.Club.Stats(true)>>
+			<</replace>>
+		<</timed>>
+	}
+
+	if (_DL > 0 || S.DJ) {
+		<br><br>
+	}
+	};
diff --git a/src/endWeek/reportsTW/clubReport.tw b/src/endWeek/reportsTW/clubReport.tw
new file mode 100644
index 00000000000..c345a8117e0
--- /dev/null
+++ b/src/endWeek/reportsTW/clubReport.tw
@@ -0,0 +1,3 @@
+:: Club Report [nobr]
+
+<<includeDOM App.EndWeek.clubReport()>>
diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw
deleted file mode 100644
index c7a90861626..00000000000
--- a/src/uncategorized/clubReport.tw
+++ /dev/null
@@ -1,258 +0,0 @@
-:: Club Report [nobr]
-
-<span id="club-stats"></span>
-
-<<set _slaves = App.Utils.sortedEmployees(App.Entity.facilities.club)>>
-<<set _DL = _slaves.length, _SL = $slaves.length, $legendaryEntertainerID = 0, _FLsFetish = 0>>
-<<set $legendaryWombID = 0>>
-<<set _minBonus = 50, _maxBonus = 150>>
-
-<!-- Statistics gathering; income is rep boosts in numbers, and profit will be rep per cash unit, or cash unit per rep -->
-<<set $facility = $facility || {}, $facility.club = initFacilityStatistics($facility.club)>>
-
-<<if _S.DJ>>
-	<<if (_S.DJ.health.condition < -80)>>
-		<<run improveCondition(_S.DJ, 20)>>
-	<<elseif _S.DJ.health.condition < -40>>
-		<<run improveCondition(_S.DJ, 15)>>
-	<<elseif _S.DJ.health.condition < 0>>
-		<<run improveCondition(_S.DJ, 10)>>
-	<<elseif _S.DJ.health.condition < 90>>
-		<<run improveCondition(_S.DJ, 7)>>
-	<</if>>
-	<<if _S.DJ.devotion <= 60>>
-		<<set _S.DJ.devotion += 5>>
-	<</if>>
-	<<if _S.DJ.trust < 60>>
-		<<set _S.DJ.trust += 3>>
-	<</if>>
-	<<if _S.DJ.fetishStrength <= 95>>
-		<<if _S.DJ.fetish != "humiliation">>
-			<<if fetishChangeChance(_S.DJ) > random(0,100)>>
-				<<set _FLsFetish = 1, _S.DJ.fetishKnown = 1, _S.DJ.fetish = "humiliation">>
-			<</if>>
-		<<elseif _S.DJ.fetishKnown == 0>>
-			<<set _FLsFetish = 1, _S.DJ.fetishKnown = 1>>
-		<<else>>
-			<<set _FLsFetish = 2, _S.DJ.fetishStrength += 4>>
-		<</if>>
-	<</if>>
-	<<if _S.DJ.rules.living != "luxurious">>
-		<<set _S.DJ.rules.living = "luxurious">>
-	<</if>>
-	<<if _S.DJ.rules.rest != "restrictive">>
-		<<set _S.DJ.rules.rest = "restrictive">>
-	<</if>>
-	/% Make sure we have registered living expenses as for any other slave %/
-	<<run getSlaveStatisticData(_S.DJ, $facility.club)>>
-	<<setLocalPronouns _S.DJ>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<= SlaveFullName(_S.DJ)>> is performing as the DJ.
-	<<if _S.DJ.relationship == -3 && _S.DJ.devotion > 50>>
-		$He tries $his best to be your energetic, cheerful $wife.
-	<</if>>
-	<<if (_FLsFetish == 1)>>
-		$He's expected to be the innovative, beautiful DJ spinning beats one minute, and come out of $his booth to grind on the floor the next; $he enjoys the interplay, and finds greater @@.lightcoral;pleasure in exhibitionism.@@
-	<<elseif (_FLsFetish == 2)>>
-		Every day $he gets to enjoy hundreds of stares on $his skin, and @@.lightsalmon;becomes more of an exhibitionist.@@
-	<</if>>
-	<<if getBestVision(_S.DJ) === 0>>
-		$His lack of eyesight doesn't slow $him down; rather, it strengthens $his other senses. $His tracks have a distinct sound, since $he experiences noise as $his sight.
-	<</if>>
-	<<if (_S.DJ.skill.entertainment <= 10)>>
-		Though _S.DJ.slaveName does $his best to lead on the club, with $his lack of skill $he can do little.
-	<<elseif (_S.DJ.skill.entertainment <= 30)>>
-		_S.DJ.slaveName's basic skills marginally @@.green;improve@@ the atmosphere in $clubName.
-	<<elseif (_S.DJ.skill.entertainment <= 60)>>
-		_S.DJ.slaveName's skills @@.green;improve@@ the atmosphere in $clubName.
-	<<elseif (_S.DJ.skill.entertainment < 100)>>
-		_S.DJ.slaveName's skills greatly @@.green;improve@@ the atmosphere in $clubName.
-	<<elseif (_S.DJ.skill.entertainment >= 100)>>
-		_S.DJ.slaveName's mastery immensely @@.green;improves@@ the atmosphere in $clubName.
-	<</if>>
-	<<if (_S.DJ.muscles > 5) && (_S.DJ.muscles <= 95)>>
-		$His toned body helps $him lead $his fellow club sluts by letting $him dance all night.
-	<</if>>
-	<<if (_S.DJ.intelligence+_S.DJ.intelligenceImplant > 15)>>
-		$He's smart enough to make an actual contribution to the music, greatly enhancing the entire experience.
-	<</if>>
-	<<if (_S.DJ.face > 95)>>
-		$His great beauty is a further draw, even when $he's in $his DJ booth, but especially when $he comes out to dance.
-	<</if>>
-	<<if setup.DJCareers.includes(_S.DJ.career)>>
-		$He has musical experience from $his life before $he was a slave, a grounding that gives $his tracks actual depth.
-	<<elseif _S.DJ.skill.DJ >= $masteredXP>>
-		$He has musical experience from working for you, giving $his tracks actual depth.
-	<<else>>
-		<<set _S.DJ.skill.DJ += random(1,Math.ceil((_S.DJ.intelligence+_S.DJ.intelligenceImplant)/15) + 8)>>
-	<</if>>
-	<<if (_DL + $clubSlavesGettingHelp < 10) && $DJnoSex != 1 && !slaveResting(_S.DJ)>>
-		<<if ($legendaryEntertainerID == 0) && (_S.DJ.prestige == 0) && (_S.DJ.skill.entertainment >= 100) && (_S.DJ.devotion > 50)>>
-			<<set $legendaryEntertainerID = _S.DJ.ID>>
-		<</if>>
-		<br>&nbsp;&nbsp;&nbsp;&nbsp;Since $he doesn't have enough sluts in $clubName to make it worthwhile for $him to be on stage 24/7, $he spends $his extra time slutting it up $himself. $He has sex with _S.DJ.sexAmount citizens, @@.green;pleasing them immensely,@@ since it's more appealing to fuck the DJ than some club slut.
-		<<if $showEWD != 0>>
-			<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<= App.SlaveAssignment.serveThePublic(_S.DJ)>>
-		<<else>>
-			<<run App.SlaveAssignment.serveThePublic(_S.DJ)>>
-		<</if>>
-	<</if>>
-	<<if (_DL > 0)>><br><br><</if>>
-<</if>>
-
-<<if (_DL > 0)>>
-	<<set _possibleBonuses = 0>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<if (_DL != 1)>>''The _DL slaves pleasing citizens in $clubName''<<else>>''The one slave pleasing citizens in $clubName''<</if>> worked hard to @@.green;increase your reputation@@ this week.
-<</if>>
-
-<<if _S.DJ>>
-	<<set $i = $slaveIndices[$djID]>> /* apply following SA passages to facility leader */
-	<<if $showEWD != 0>>
-		<br><br>
-		/* 000-250-006 */
-		<<if $seeImages && $seeReportImages>>
-		<div class="imageRef tinyImg">
-			<<= SlaveArt(_S.DJ, 0, 0)>>
-		</div>
-		<</if>>
-		/* 000-250-006 */
-		<<includeDOM App.EndWeek.favoriteIcon(_S.DJ)>>
-		<span class='slave-name'><<= SlaveFullName(_S.DJ)>></span> is performing as the DJ in $clubName.
-		<br>&nbsp;&nbsp;&nbsp;
-		<<= App.SlaveAssignment.choosesOwnClothes(_S.DJ)>>
-		<<run tired(_S.DJ)>>
-		<<includeDOM App.SlaveAssignment.rules(_S.DJ)>>
-		<<= App.SlaveAssignment.diet(_S.DJ)>>
-		<<includeDOM App.SlaveAssignment.longTermEffects(_S.DJ)>>
-		<<= App.SlaveAssignment.drugs(_S.DJ)>>
-		<<= App.SlaveAssignment.relationships(_S.DJ)>>
-		<<= App.SlaveAssignment.rivalries(_S.DJ)>>
-		<br>&nbsp;&nbsp;&nbsp;&nbsp;<<= App.SlaveAssignment.devotion(_S.DJ)>>
-	<<else>>
-		<<run App.SlaveAssignment.choosesOwnClothes(_S.DJ)>>
-		<<run tired(_S.DJ)>>
-		<<run App.SlaveAssignment.rules(_S.DJ)>>
-		<<run App.SlaveAssignment.diet(_S.DJ)>>
-		<<run App.SlaveAssignment.longTermEffects(_S.DJ)>>
-		<<run App.SlaveAssignment.drugs(_S.DJ)>>
-		<<run App.SlaveAssignment.relationships(_S.DJ)>>
-		<<run App.SlaveAssignment.rivalries(_S.DJ)>>
-		<<run App.SlaveAssignment.devotion(_S.DJ)>>
-	<</if>>
-<</if>>
-
-<<if (_DL > 0)>>
-	<<for _slave range _slaves>>
-		<<set $i = $slaveIndices[_slave.ID]>>
-		<<setLocalPronouns _slave>>
-		<<if ($legendaryEntertainerID == 0) && (_slave.prestige == 0) && (_slave.skill.entertainment >= 100) && (_slave.devotion > 50)>>
-			<<set $legendaryEntertainerID = _slave.ID>>
-		<</if>>
-		<<if ($legendaryWombID == 0) && (!isAmputee(_slave)) && (_slave.preg > _slave.pregData.normalBirth/1.33) && (_slave.broodmother == 0) && (_slave.eggType == "human") && (_slave.counter.births > 10) && (_slave.devotion > 50) && (_slave.prestige == 0)>>
-			<<set $legendaryWombID = _slave.ID>>
-		<</if>>
-		<<if (_slave.devotion <= 20) && (_slave.trust >= -20)>>
-			<<set _slave.devotion -= 5, _slave.trust -= 5>>
-		<<elseif (_slave.devotion < 45)>>
-			<<set _slave.devotion += 4>>
-		<<elseif (_slave.devotion > 50)>>
-			<<set _slave.devotion -= 4>>
-		<</if>>
-
-		<<if (_slave.trust < 30)>>
-			<<set _slave.trust += 5>>
-		<</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 < 90)>>
-			<<run improveCondition(_slave, 7)>>
-		<</if>>
-
-		<<if _slave.rules.living != "normal">>
-			<<set _slave.rules.living = "normal">>
-		<</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 serving in $clubName.
-			<</if>>
-			<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<= App.SlaveAssignment.serveThePublic(_slave)>>
-			<br>&nbsp;&nbsp;&nbsp;
-			<<= App.SlaveAssignment.choosesOwnClothes(_slave)>>
-			<<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>>
-			<<run App.SlaveAssignment.choosesOwnJob(_slave)>>
-			<<run App.SlaveAssignment.serveThePublic(_slave)>>
-			<<run App.SlaveAssignment.choosesOwnClothes(_slave)>>
-			<<includeDOM 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)>>
-		<</if>>
-	<</for>>
-	<p>
-		<<= App.Ads.report("club")>>
-	</p>
-
-	<!-- Record statistics gathering -->
-	<<script>>
-		var b = State.variables.facility.club;
-		b.whoreIncome = 0;
-		b.customers = 0;
-		b.whoreCosts = 0;
-		b.rep = 0;
-		for (var si of b.income.values()) {
-			b.whoreIncome += si.income;
-			b.customers += si.customers;
-			b.whoreCosts += si.cost;
-			b.rep += si.rep;
-		}
-		b.adsCosts = State.variables.clubAdsSpending;
-		b.maintenance = State.variables.club * State.variables.facilityCost * (1.0 + 0.2 * State.variables.clubUpgradePDAs);
-		b.totalIncome = b.whoreIncome + b.adsIncome;
-		b.totalExpenses = b.whoreCosts + b.adsCosts + b.maintenance;
-		b.profit = b.totalIncome / b.totalExpenses;
-	<</script>>
-	<<if $clubDecoration != "standard">>
-		<p>
-			<<= capFirstChar($clubName)>>'s customers enjoy @@.green;having sex in $clubDecoration surroundings.@@
-		</p>
-	<</if>>
-
-	<!-- Statistics output -->
-	<<includeDOM App.Facilities.Club.Stats(false)>>
-	<<timed 50ms>>
-		<<replace #club-stats>>
-			<<includeDOM App.Facilities.Club.Stats(true)>>
-		<</replace>>
-	<</timed>>
-<</if>>
-
-<<if _DL > 0 || _S.DJ>>
-	<br><br>
-<</if>>
-- 
GitLab