diff --git a/src/events/RESS/coolerLockin.js b/src/events/RESS/coolerLockin.js
index beb3ad3eebf5868a9878a4b547898462e3d49f88..69c954ada68a61aa202bf22f8289774a410ebf67 100644
--- a/src/events/RESS/coolerLockin.js
+++ b/src/events/RESS/coolerLockin.js
@@ -70,10 +70,10 @@ App.Events.RESSCoolerLockin = class RESSCoolerLockin extends App.Events.BaseEven
 		function yourself() {
 			r = [];
 			r.push(`You're not close to the penthouse kitchen area, so it takes you some time to make your way there. By the time you get there, the poor ${girl} is pounding weakly against the refrigerator door to try to get someone's attention. ${capFirstChar(V.assistant.name)} was right, ${he} must be too cold to think straight; if ${he} weren't ${he} might notice the prominent release button right next to where ${he}'s striking the door. ${His} desperate ${eventSlave.skin} face is visible in the window. You hit the exterior release and the door swings open quickly, dumping ${him} into your arms.`);
-			if (s.devotion < -50) {
+			if (eventSlave.devotion < -50) {
 				r.push(`Despite hating you, <span class="devotion inc">${he} clings to you like a long lost love,</span> ${his}`);
 				eventSlave.devotion += 6;
-			} else if (s.devotion <= 20) {
+			} else if (eventSlave.devotion <= 20) {
 				r.push(`Despite not being devoted to you, <span class="devotion inc">${he} clings to you like a long lost love,</span> ${his}`);
 				eventSlave.devotion += 4;
 			} else {
diff --git a/src/events/RESS/nightVisit.js b/src/events/RESS/nightVisit.js
index 4bd794ee47e194d7357020ab56b154934e28e9fc..9fc1c7a7e36fa1526c5bb09eb7d83fd32e859d09 100644
--- a/src/events/RESS/nightVisit.js
+++ b/src/events/RESS/nightVisit.js
@@ -56,7 +56,7 @@ App.Events.RESSNightVisit = class RESSNightVisit extends App.Events.BaseEvent {
 		} else {
 			if (eventSlave.lips > 70) {
 				r.push(`${he} says meekly through ${his} massive dick-sucking lips,`);
-			} else if ((eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2)) {
+			} else if (eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2) {
 				r.push(`${he} says meekly through ${his} inconvenient oral piercings,`);
 			} else {
 				r.push(`${he} says meekly,`);
diff --git a/src/events/RESS/review/ampDevoted.js b/src/events/RESS/review/ampDevoted.js
index c4ec8a34c1ce446a06b0dbb33a2110e4694e093f..bdec7dde4e98351e3638a43697af62e1ea24bb2f 100644
--- a/src/events/RESS/review/ampDevoted.js
+++ b/src/events/RESS/review/ampDevoted.js
@@ -51,7 +51,7 @@ App.Events.RESSAmpDevoted = class RESSAmpDevoted extends App.Events.BaseEvent {
 		r.push(`that ${he} is. You've been busy and haven't used ${him} for a while, and since ${he}'s accepted ${his} place as a helpless living fucktoy, ${he}'s gotten quite aroused with nothing to do but lie there and watch ${his} ${getWrittenTitle(eventSlave)} work. It's not like ${he} can touch ${himself} any more.`);
 		if (eventSlave.chastityPenis === 1) {
 			r.push(`${His} caged cock reduces ${him} to a set of holes in a limbless torso.`);
-		} else if ((eventSlave.dick > 0) && !canAchieveErection(eventSlave)) {
+		} else if (eventSlave.dick > 0 && !canAchieveErection(eventSlave)) {
 			r.push(`${His} penis hangs limp and useless from ${his} limbless torso.`);
 		} else if (eventSlave.dick >= 5) {
 			r.push(`${His} huge erection pokes out from ${his} limbless torso, ${his} only remaining appendage.`);
diff --git a/src/events/RESS/review/cageRelief.js b/src/events/RESS/review/cageRelief.js
new file mode 100644
index 0000000000000000000000000000000000000000..2a4fcb077c0675dea4b0335e8c8135312dd3fb05
--- /dev/null
+++ b/src/events/RESS/review/cageRelief.js
@@ -0,0 +1,372 @@
+App.Events.RESSCageRelief = class RESSCageRelief extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return []; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				hasAnyLegs,
+				s => s.balls > 0,
+				s => s.scrotum > 0,
+				s => s.chastityPenis === 1,
+				s => s.energy > 50,
+				s => s.energy < 95,
+				s => s.devotion <= 95,
+				s => s.devotion >= -20 || s.trust < -20
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			His, He, he, his, him, himself, hers
+		} = getPronouns(eventSlave);
+		const {title: Master, say} = getEnunciation(eventSlave);
+		const belly = bellyAdjective(eventSlave);
+		const PC = V.PC;
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave);
+
+		let r = [];
+		r.push(
+			`You come face to face with`,
+			contextualIntro(PC, eventSlave, "DOM"),
+			`in a hallway of your penthouse, entirely by happenstance.`
+		);
+		if (canSee(eventSlave)) {
+			r.push(`${His} ${App.Desc.eyesColor(eventSlave)} lock with yours, and ${he} stares at you dumbly for a long moment.`);
+		} else {
+			r.push(`Once ${he} regains ${his} footing after bumping into you, ${he} gazes towards you dumbly for a long moment.`);
+		}
+		r.push(`Then ${he} squares ${his}`);
+		if (eventSlave.shoulders > 0) {
+			r.push(`broad`);
+		} else if (eventSlave.shoulders < 0) {
+			r.push(`pretty`);
+		} else {
+			r.push(`feminine`);
+		}
+		r.push(`shoulders and bites ${his} lower lip, obviously doing ${his} best to think quickly. Right when you're about to reprimand ${him} for not greeting you properly, ${he} surprises you by throwing ${himself} abjectly on the ground in front of you`);
+		if (eventSlave.belly >= 10000) {
+			r.push(r.pop() + `, ${his} rear forced into the air by ${his} ${belly}`);
+			if (eventSlave.bellyPreg >= 3000) {
+				r.push(`pregnant`);
+			} else {
+				r.push(`distended`);
+			}
+			r.push(`belly`);
+		}
+		r.push(r.pop() + `.`);
+		App.Events.addParagraph(node, r);
+
+		r = [];
+		if (!canTalk(eventSlave)) {
+			r.push(`${He} uses gestures to apologize for ${his} rudeness, and then gets to ${his}`);
+			if (hasBothLegs(eventSlave)) {
+				r.push(`knees`);
+			} else {
+				r.push(`knee`);
+			}
+			r.push(`so ${he} can use ${his} hand`);
+			if (hasBothArms(eventSlave)) {
+				r.push(`hands`);
+			} else {
+				r.push(`hand`);
+			}
+			r.push(`to gesture more clearly. ${His}`);
+			if (hasBothArms(eventSlave)) {
+				r.push(`hands are`);
+			} else {
+				r.push(`hand is`);
+			}
+			r.push(`shaky as ${he} begs, making two false starts before unmistakably gesturing to ask you to cut ${his} balls off. Once ${he}`);
+			if (canSee(eventSlave)) {
+				r.push(`sees`);
+			} else {
+				r.push(`figures`);
+			}
+			r.push(`that you understand, ${he} begins to cry openly. ${He} gestures that ${he} can barely get off wearing ${his} chastity cage, that it hurts when ${he} does, and that ${he}'s constantly oppressed by the need for release. ${He} thinks that it would be easier to be soft all the time, so ${he} could climax without discomfort. ${He} begs hard, and promises to be a good little bitch.`);
+		} else {
+			r.push(
+				Spoken(eventSlave, `"Please, ${Master},"`),
+				`the prostrate slave ${say}s shakily, sounding like ${he}'s on the verge of tears.`,
+				Spoken(eventSlave, `"P-please cut my balls off."`)
+			);
+			if (canHear(eventSlave)) {
+				r.push(`Hearing ${himself} ${say} it, ${he}`);
+			} else {
+				r.push(`${He}`);
+			}
+			r.push(
+				`begins to cry openly.`,
+				Spoken(eventSlave, `"I c-can't t-take it anymore. I can b-barely get off wearing this cage on my dick, and when I d-do, it h-hurts,"`),
+				`${he} sobs.`,
+				Spoken(eventSlave, `"I need to g-g-get off s-so bad. Please, please, if I were soft all the time, I wouldn't get hard, so I could come wh-whenever."`),
+				He
+			);
+			if (canSee(eventSlave)) {
+				r.push(`looks up at`);
+			} else {
+				r.push(`angles ${his} head towards you`);
+			}
+			r.push(
+				`you in supplication, tears streaking ${his} face.`,
+				Spoken(eventSlave, `"Please, ${Master}! I'll be s-such a good little bitch, I promise!"`)
+			);
+		}
+
+		App.Events.addParagraph(node, r);
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Help ${him} get off`, help),
+			new App.Events.Result(`Cut ${his} balls off`, cut, eventSlave.anus === 0 && canDoAnal(eventSlave) ? `This option will take ${his} anal virginity` : null),
+			canDoAnal(eventSlave)
+				? new App.Events.Result(`Use ${his} cage to torture ${him}`, torture, (eventSlave.anus === 0) ? `This option will take ${his} anal virginity` : null)
+				: new App.Events.Result(),
+			((((eventSlave.fetish === "pregnancy" && PC.belly >= 5000)
+					|| (eventSlave.fetish === "cumslut" && PC.balls >= 14)
+					|| (eventSlave.fetish === "boobs" && PC.boobs >= 1400))
+				&& eventSlave.fetishKnown === 1)
+			|| (((eventSlave.attrXX > 70 && eventSlave.attrXY < 50 && PC.title === 0 && PC.vagina !== -1 && PC.dick === 0)
+					|| (eventSlave.attrXY > 70 && eventSlave.attrXX < 50 && PC.title === 1 && PC.vagina === 0 && PC.dick !== 0))
+				&& eventSlave.attrKnown === 1)
+			)
+				? new App.Events.Result(`Use your body to make ${his} cage feel even tighter`, tighter, (eventSlave.anus === 0) ? `This option will take ${his} anal virginity` : null)
+				: new App.Events.Result()
+		]);
+
+		function help() {
+			const frag = document.createDocumentFragment();
+			r = [];
+			r.push(`You take ${him} by the hand and pull ${him} to ${his} feet, and then kiss ${him}. ${He} knows that this means no, but melts into you anyway, accepting the comforting gesture for what it is. ${He}'s surprised when you do not break the kiss, but continues to make out with you compliantly. You take ${him} by the hands, intertwining your fingers with ${hers} and holding them down at your sides for a while before wrapping ${his} arms around you at your`);
+			if (PC.belly >= 10000) {
+				r.push(`heavily pregnant`);
+			} else if (PC.belly >= 5000) {
+				r.push(`gravid`);
+			} else if (PC.belly >= 1500) {
+				r.push(`swollen`);
+			} else if (V.arcologies[0].FSPhysicalIdealist !== "unset") {
+				r.push(`muscular`);
+			} else if (PC.title === 0) {
+				r.push(`feminine`);
+			} else {
+				r.push(`masculine`);
+			}
+			r.push(`waist. Your hands, thus freed to grope ${him}, tenderly hold ${his} head and neck instead, cupping ${his}`);
+			if (eventSlave.face > 95) {
+				r.push(`gorgeous`);
+			} else if (eventSlave.face >= -10) {
+				r.push(`pretty`);
+			} else {
+				r.push(`homely`);
+			}
+			r.push(`jawline and making ${him} moan at the intimacy.`);
+			App.Events.addParagraph(frag, r);
+
+			r = [];
+			r.push(`${He}'s completely forgotten ${his} troubles, and you see that it stays that way. You consider yourself something of an expert on human stimulation at this point, and you manage ${hers} expertly. (Admittedly, you're also cheating, using discreet scanning of ${his} vital signs to check on ${his} state of arousal.) Whenever ${he}'s in danger of achieving an erection, which would remind ${him} of ${his} chastity cage with a twinge of discomfort, you cool your makeout session off slightly, massaging ${him} capably instead of kissing ${him} deeply. After some time, ${he} shudders, to ${his} own complete surprise and to your unsurprised satisfaction. ${He}'s just done what in a normal sexual encounter would be considered premature ejaculation, since you wrought ${him} to such a subtle state of arousal that ${he} got off without really getting hard. ${He} can muster no coherent response, but <span class="trust inc">hugs you convulsively,</span> sobbing into your`);
+			if (PC.boobs >= 1400) {
+				r.push(`enormous`);
+				if (PC.boobsImplant !== 0) {
+					r.push(`fake`);
+				}
+				r.push(`breasts`);
+			} else if (PC.boobs >= 1200) {
+				r.push(`huge`);
+				if (PC.boobsImplant !== 0) {
+					r.push(`fake`);
+				}
+				r.push(`breasts`);
+			} else if (PC.boobs >= 1000) {
+				r.push(`big`);
+				if (PC.boobsImplant !== 0) {
+					r.push(`firm`);
+				}
+				r.push(`breasts`);
+			} else if (PC.boobs >= 300) {
+				r.push(`boobs`);
+			} else if (V.arcologies[0].FSPhysicalIdealist !== "unset") {
+				r.push(`strong shoulder`);
+			} else if (PC.title === 0) {
+				r.push(`feminine shoulder`);
+			} else {
+				r.push(`masculine shoulder`);
+			}
+			r.push(`with gratitude and release.`);
+			App.Events.addParagraph(frag, r);
+
+			r = [];
+			r.push(`The scans suggest ${his} discomfort will return in less than half an hour.`);
+			eventSlave.trust += 4;
+			App.Events.addParagraph(frag, r);
+			return frag;
+		}
+
+		function cut() {
+			r = [];
+			r.push(`You agree, on the condition that ${he} be a good little bitch like ${he} promised. ${He} thanks you frantically, following you with mixed relief, gratitude, and deep terror as you lead ${him} to the surgery. It's a medically simple procedure, but ${he}'s <span class="health dec">retained for recovery</span> for some time, a common precaution in your penthouse where the surgery affects an area that might be reinjured by sexual use without a short break for the curatives to take effect. When the medical equipment verifies that ${he} can be fucked without pain or danger to ${his} health, you order ${him} to come back up to your office. ${He} is a <span class="devotion inc">very good little bitch,</span>`);
+			if (canDoAnal(eventSlave)) {
+				r.push(`taking`);
+				if (PC.dick !== 0) {
+					r.push(`a hard buttfuck`);
+				} else {
+					r.push(`a hard anal fingerfuck`);
+				}
+				r.push(`with apparent enthusiasm and a strong orgasm, though of course ${his} continued use of a chastity cage conceals almost all the effects.`);
+				r.push(VCheck.Anal(eventSlave, 1));
+			} else {
+				r.push(`enduring all of your teasing without the slightest hint of an erection. Even though ${his} chastity blocks the use of ${his} ass, you still focus most of your attention on ${his} rear for the day the belt comes off.`);
+			}
+			r.push(`When ${he} goes to the bathroom afterward, however, you see ${him}`);
+			if (canSee(eventSlave)) {
+				r.push(`glance at ${himself} in the mirror, just once, and then <span class="trust dec">glance away again,</span>`);
+			} else {
+				r.push(`run ${his} hand under ${his} cock, just once, and then <span class="trust dec">quickly removing ${his} hand,</span>`);
+			}
+			r.push(`a tear leaking down ${his} cheek.`);
+			eventSlave.balls = 0;
+			eventSlave.scrotum = 0;
+			eventSlave.trust -= 4;
+			eventSlave.devotion += 4;
+			surgeryDamage(eventSlave, 5);
+			App.Events.refreshEventArt(eventSlave);
+			return r;
+		}
+
+		function torture() {
+			const frag = document.createDocumentFragment();
+			r = [];
+			r.push(`You make no reply at all, but walk around to stand behind the slave. ${He} knows ${he}'s fucked, and starts to shake with fear. You put a foot on ${his} ass and shove ${him} down`);
+			if (eventSlave.belly >= 5000) {
+				r.push(`so ${his} rear is pointed into the air again,`);
+			} else {
+				r.push(`to lie flat on the floor,`);
+			}
+			r.push(`and then straddle ${him}, shoving`);
+			if (PC.dick !== 0) {
+				r.push(`your`);
+				if (PC.vagina !== -1) {
+					r.push(`futa`);
+				}
+				r.push(`cock up ${his} butt.`);
+			} else {
+				r.push(`one more finger than ${he} can comfortably take up ${his} butt.`);
+			}
+			r.push(`${He} tries to beg some more, but you give ${him} a warning slap, and ${he} shuts up. Despite your roughness, ${he}'s so horny that ${he} starts to get hard. You can't see or feel this directly, of course, but it's easy to tell from ${his} desperate sobbing and involuntary writhing, and the lovely spasming of ${his} anal sphincter. ${His} tears dry up as ${he} builds towards a climax; orgasm might be an uncomfortable experience for ${him}, but it will buy ${him} a few minutes free of discomfort.`);
+			App.Events.addParagraph(frag, r);
+
+			r = [];
+			r.push(`But ${he}'s to be disappointed. You`);
+			if (PC.dick !== 0) {
+				r.push(`worm a hand down between ${his} ass and your stomach, and shove a finger up inside ${him}, alongside your dick`);
+				if (PC.vagina !== -1) {
+					r.push(r.pop() + `, dexterously using the thumb of that hand to stroke your own pussy`);
+				}
+			} else {
+				r.push(`use the hand that isn't fucking ${him} to pull one of ${his} arms around behind ${him} into a painful joint lock`);
+			}
+			r.push(r.pop() + `. The pain ruins ${his} building orgasm, and ${he} cries with frustration and <span class="trust dec">despair</span> as ${he} realizes that ${he} won't be getting off today. You force ${him} to experience this horrible near-release twice more, bringing ${him} to a terribly uncomfortable state of arousal and then using sudden pain to destroy any chance ${he} has of getting relief. All the wriggling and jerking around is good for you, though.`);
+			eventSlave.trust -= 4;
+			r.push(VCheck.Anal(eventSlave, 1));
+			App.Events.addParagraph(frag, r);
+			return frag;
+		}
+
+		function tighter() {
+			const hands = hasBothArms(eventSlave) ? "hands" : "hand";
+			r = [];
+			r.push(`You order ${him} to pay close attention`);
+			if (canSee(eventSlave)) {
+				r.push(`and not look away`);
+			}
+			r.push(r.pop() + `.`);
+			if (eventSlave.fetish === "pregnancy" && PC.belly >= 5000) {
+				if (canSee(eventSlave)) {
+					r.push(`${He} questions what you mean until you begin sensually swaying your`);
+					if (PC.belly >= 100000) {
+						r.push(`massive pregnancy`);
+					} else if (PC.belly >= 60000) {
+						r.push(`giant pregnancy`);
+					} else if (PC.belly >= 15000) {
+						r.push(`advanced pregnancy`);
+					} else if (PC.belly >= 10000) {
+						r.push(`big, pregnant belly`);
+					} else {
+						r.push(`pregnant belly`);
+					}
+					r.push(`and slowly stripping down. ${He} groans at the sight, ${his} dick rapidly hardening at the view of your motherly body. You make sure to play off ${his} pregnancy fetish in every way possible until the aroused slave is in tears from the pressure on ${his} cock.`);
+				} else {
+					r.push(`${He} questions what you mean until you grab ${his} head and push ${his} face against your`);
+					if (PC.belly >= 100000) {
+						r.push(`massive pregnancy.`);
+					} else if (PC.belly >= 60000) {
+						r.push(`giant pregnancy.`);
+					} else if (PC.belly >= 15000) {
+						r.push(`advanced pregnancy.`);
+					} else if (PC.belly >= 10000) {
+						r.push(`big, pregnant belly.`);
+					} else {
+						r.push(`pregnant belly.`);
+					}
+					r.push(`${He} tries to recoil, bringing a hand to your middle. You catch it and run it along your motherly curve to your popped navel. You trace ${his} hand around it as ${he} groans at the sensation, ${his} dick rapidly hardening at the feel of your motherly body. You make sure to play off ${his} pregnancy fetish in every way possible until the aroused slave is in tears from the pressure on ${his} cock.`);
+				}
+			} else if (eventSlave.fetish === "cumslut" && PC.balls >= 14) {
+				if (canSee(eventSlave)) {
+					r.push(`${He} questions what you mean until you begin sensually caressing your massive balls and slowly stripping down. You quickly bring yourself erect and start to jack off. ${He} groans at the sight, licking ${his} lips a the thought of your coming load as ${his} dick rapidly hardens. You tease yourself and hype up just how big and messy your orgasm will be, making ${him} quiver with painful arousal. You moan as you feel the distinct sensation of your coming ejaculation, the sheer amount of sperm moving through you takes some time to release. You hug your nuts, thrusting repeatedly until the wave of cum forces its way out of your throbbing dick. You sigh with relief, just to rub it in ${his} face.`);
+				} else {
+					r.push(`${He} questions what you mean until you strip down and pull ${his} face directly into your massive balls. ${He} tries to recoil, bringing ${his} ${hands} to the immense spheres. You catch them and use one to massage your nuts and encourage a nice big load for ${him} and the other the help jack you off. You can feel ${him} shaking from the pressure on ${his} dick. Not only do you paint ${him} with seed, but you sigh loudly with relief, just to rub it in.`);
+				}
+			} else if (eventSlave.fetish === "boobs" && PC.boobs >= 1400) {
+				if (canSee(eventSlave)) {
+					r.push(`${He} questions what you mean until you pull your arms back, forcing your enormous`);
+					if (PC.boobsImplant !== 0) {
+						r.push(`fake`);
+					}
+					r.push(`breasts to pop free of your top. ${He} groans at the sight, ${his} dick rapidly hardening at the view of your impressive rack. You make sure to play off ${his} tit fetish in every way possible until the aroused slave is in tears from the pressure on ${his} cock.`);
+				} else {
+					r.push(`${He} questions what you mean until you grab ${his} head and push ${his} face against your enormous`);
+					if (PC.boobsImplant !== 0) {
+						r.push(`fake`);
+					}
+					r.push(`breasts. ${He} tries to recoil, bringing ${his} ${hands} to your breasts. You continue burying ${his} face in your rack as ${he} begins to grope you. ${He} groans at the sensation, ${his} dick rapidly hardening at the feel of your lovely tits. You make sure to play off ${his} boob fetish in every way possible until the aroused slave is in tears from the pressure on ${his} cock.`);
+				}
+			} else if (eventSlave.attrXX > 70 && eventSlave.attrXY < 50 && PC.title === 0 && PC.vagina !== -1 && PC.dick === 0) {
+				if (canSee(eventSlave)) {
+					r.push(`${He} questions what you mean until you begin your strip tease. ${He} groans at the sight, ${his} dick rapidly hardening at the view of your tits and pussy. You know just how arousing ${he} finds the female form, and you play off that until the aroused slave is in tears from the pressure on ${his} cock.`);
+				} else {
+					r.push(`${He} questions what you mean until you grab ${his} head and push ${his} face into your pussy. ${He} tries to recoil, bringing ${his} ${hands} to your rear. You continue rubbing yourself against ${his} face as begins to grope you, enjoying your feminine features. ${He} groans as ${his} dick rapidly hardens at the feel of your curves and the`);
+					if (canSmell(eventSlave)) {
+						r.push(`scent of`);
+					} else {
+						r.push(`warmth from`);
+					}
+					r.push(`your arousal. You know just how arousing ${he} finds the female form, and you play off that until the aroused slave is in tears from the pressure on ${his} cock.`);
+				}
+			} else {
+				if (canSee(eventSlave)) {
+					r.push(`${He} questions what you mean until you begin your strip tease. ${He} groans at the sight, ${his} dick rapidly hardening at the view of your erection. You know just how arousing ${he} finds the male form, and you play off that until the aroused slave is in tears from the pressure on ${his} cock.`);
+				} else {
+					r.push(`${He} questions what you mean until you grab ${his} head and push ${his} face against your dick. ${He} tries to recoil, bringing ${his} ${hands} to your balls. You continue rubbing yourself against ${his} face as begins to fondle you, enjoying your masculine features. ${He} groans as ${his} dick rapidly hardens at the feel of your penis against your face and the`);
+					if (canSmell(eventSlave)) {
+						r.push(`scent of`);
+					} else {
+						r.push(`warmth from`);
+					}
+					r.push(`your arousal and precum. You know just how arousing ${he} finds the male form, and you play off that until the aroused slave is in tears from the pressure on ${his} cock.`);
+				}
+			}
+			r.push(`You leave ${him} in a <span class="trust dec">worse state than ${he} started in,</span> as ${he}'s hornier than ever and still lacks any satisfying release. But that's ${his} problem, not yours.`);
+			if (PC.belly >= 10000) {
+				r.push(`Even when so heavily pregnant, it feels good to know you can still bring a dick to full attention.`);
+			}
+			eventSlave.trust -= 4;
+			return r;
+		}
+	}
+};
diff --git a/src/events/RESS/review/devotedOld.js b/src/events/RESS/review/devotedOld.js
index 61c8ec02fd5dd1481afba1d81374ea0acc7ed8b6..0ba3de2c1addb8d49b0ef903c9b7006101d0c819 100644
--- a/src/events/RESS/review/devotedOld.js
+++ b/src/events/RESS/review/devotedOld.js
@@ -41,7 +41,7 @@ App.Events.RESSDevotedOld = class RESSDevotedOld extends App.Events.BaseEvent {
 		r.push(Spoken(eventSlave, `"${Master}, I'm so sorry you noticed,"`));
 		if (eventSlave.lips > 70) {
 			r.push(`${he} lisps through ${his} dick-sucking lips.`);
-		} else if ((eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2)) {
+		} else if (eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2) {
 			r.push(`${he} lisps through ${his} ridiculous piercings.`);
 		} else {
 			r.push(`${he} ${say}s penitently.`);
diff --git a/src/events/RESS/review/fearfulHumiliation.js b/src/events/RESS/review/fearfulHumiliation.js
new file mode 100644
index 0000000000000000000000000000000000000000..b7b4aacce18838836308e22dbe2ffaf9ada3253f
--- /dev/null
+++ b/src/events/RESS/review/fearfulHumiliation.js
@@ -0,0 +1,129 @@
+App.Events.RESSFearfulHumiliation = class RESSFearfulHumiliation extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return []; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				hasAnyLegs,
+				canTalk,
+				s => s.fetish === "humiliation" || s.energy > 95,
+				s => s.devotion <= 50,
+				s => s.devotion >= -20,
+				s => canDoAnal(s) || canDoVaginal(s),
+				s => s.anus !== 0,
+				s => s.vagina !== 0,
+				s => s.fetishKnown === 1,
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			He, he, his, him
+		} = getPronouns(eventSlave);
+		const {title: Master} = getEnunciation(eventSlave);
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave);
+
+		App.Events.addParagraph(node, [
+			`Even if ${he} isn't yet a truly devoted sex slave,`,
+			contextualIntro(V.PC, eventSlave, "DOM"),
+			`generally obeys orders. ${He} blushes furiously when given any sexual command, but ${his} true feelings about humiliation become clear when ${he} is ordered to serve in front of others, even other slaves. It sometimes seems the number of people watching ${him} get fondled, used, or fucked directly reduces the distance between ${him} and ${his} next blushing or even sobbing orgasm.`
+		]);
+
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Publicly prove the depths of ${his} humiliation to ${him}`, prove),
+			new App.Events.Result(`Use a bait and switch tactic on ${him}, before public use`, tactic),
+		]);
+
+		function prove() {
+			let r = [];
+			r.push(`You drag a fearful, embarrassed,`);
+			if (eventSlave.belly >= 1500) {
+				if (eventSlave.bellyPreg >= 0) {
+					r.push(`pregnant`);
+				} else {
+					r.push(`swollen`);
+				}
+			}
+			r.push(`and totally naked ${eventSlave.slaveName} out into a public hall. A small knot of passersby gather around grinning, enjoying the sight of ${his} nakedness and anticipating a show. To ${his} surprise, you order ${him} to take a few minutes to recount ${his} life story. ${He}'s hesitant at first, but obeys, only realizing as ${he} nears the present day what an abject story of degradation and humiliation ${his} life truly is. ${He} continues shakily, describing in brief ${his} current life, crying a little and trembling with arousal. At a whispered command from you, ${he} concludes`);
+			if (!canTalk(eventSlave)) {
+				r.push(`in embarrassed gestures, "and now my ${getWrittenTitle(eventSlave)} is going to fuck my worthless body in public."`); // not spoken!
+			} else {
+				r.push(Spoken(eventSlave, `"and now my ${Master} is going to fuck my worthless body in public."`));
+			}
+			r.push(`You take ${him} standing there, as ${he} cries with mixed shame and sexual pleasure.`);
+			if (!canDoVaginal(eventSlave)) {
+				r.push(`${He}`);
+				if (eventSlave.dick > 0) {
+					r.push(`cums even though ${he}'s soft`);
+				} else {
+					r.push(`climaxes even though ${he}'s filled`);
+				}
+				r.push(`with the shame,`);
+				if (V.PC.dick === 0) {
+					r.push(`${his} anus clenching around the strap-on you're pumping in and out of it.`);
+				} else {
+					r.push(`adding a sad little dribble to the load dripping out of ${his} asshole.`);
+				}
+			} else {
+				if (V.PC.dick === 0) {
+					r.push(`You make ${him} clean ${his} pussyjuice off your strap-on with ${his} bitch mouth before you take it off.`);
+				} else {
+					r.push(`As you pull out of ${his} clenching pussy, cum runs down ${his} quavering thighs.`);
+				}
+			}
+			r.push(`<span class="devotion inc">${He} has become more submissive to you,</span> and <span class="reputation inc">your reputation has increased.</span>`);
+			eventSlave.devotion += 4;
+			repX(500, "event", eventSlave);
+			if (canDoVaginal(eventSlave)) {
+				r.push(VCheck.Vaginal(eventSlave, 1));
+			} else {
+				r.push(VCheck.Anal(eventSlave, 1));
+			}
+			return r;
+		}
+
+		function tactic() {
+			let r = []; // TODO: redo art with "nicest clothing"
+			r.push(`You instruct ${him} to get cleaned up and get dressed in ${his} nicest clothing. ${He} obeys, mystified, and is further puzzled to find that you're taking ${him} out for a nice evening at a small bar. You share a tasty meal and listen to good music played on the little stage by an older slave. As the set concludes, you lean over and give ${eventSlave.slaveName} ${his} real orders for the evening. ${He} freezes in terror but eventually makes ${his} way up to the stage, strips in front of all the patrons, and says`);
+			if (!canTalk(eventSlave)) {
+				r.push(
+					`in embarrassed gestures,`,
+					Spoken(eventSlave, `"Please use me, I'm cheap."`)
+				);
+			} else {
+				r.push(Spoken(eventSlave, `"One credit per fuck, if you'll do my worthless body on stage."`));
+			}
+			r.push(`By the end of the night, ${he}'s been fucked by almost everyone in the bar, and ${his} itch for humiliation has been well and truly scratched. As you collect ${his} earnings from the thoroughly pleased bartender, ${he} lies quiescent in a puddle of cum and exhaustion. <span class="yellowgreen">You've collected a decent fee,</span> and <span class="green">your reputation has increased.</span>`);
+			repX(500, "event", eventSlave);
+			cashX(100, "event", eventSlave);
+			if (canDoVaginal(eventSlave) && canDoAnal(eventSlave)) {
+				seX(eventSlave, "vaginal", "public", "penetrative", 10);
+				seX(eventSlave, "anal", "public", "penetrative", 10);
+				if (eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+					r.push(knockMeUp(eventSlave, 25, 2, -2));
+				}
+			} else if (canDoVaginal(eventSlave)) {
+				seX(eventSlave, "vaginal", "public", "penetrative", 20);
+				if (eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+					r.push(knockMeUp(eventSlave, 50, 0, -2));
+				}
+			} else {
+				seX(eventSlave, "anal", "public", "penetrative", 20);
+				if (eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+					r.push(knockMeUp(eventSlave, 50, 1, -2));
+				}
+			}
+			return r;
+		}
+	}
+};
diff --git a/src/events/RESS/review/heavyPiercing.js b/src/events/RESS/review/heavyPiercing.js
new file mode 100644
index 0000000000000000000000000000000000000000..551bcfec8481c880e5ab2d25f58742dd7dacf44f
--- /dev/null
+++ b/src/events/RESS/review/heavyPiercing.js
@@ -0,0 +1,137 @@
+App.Events.RESSHeavyPiercing = class RESSHeavyPiercing extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return []; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				s => s.vaginaPiercing > 1,
+				s => s.nipplesPiercing > 1,
+				s => s.clitPiercing > 1,
+				s => s.devotion > 20 || s.trust < -20,
+				s => s.devotion <= 50,
+				s => canDoAnal(s) || canDoVaginal(s)
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			He, he, his, him
+		} = getPronouns(eventSlave);
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave, "no clothing");
+
+		let r = [];
+		r.push(
+			`The intimate areas of`,
+			contextualIntro(V.PC, eventSlave, "DOM"),
+			`are heavily pierced. This is great; it draws attention to ${his} holes and makes ${him} look like the sex slave ${he} is. However, it does necessitate some extra maintenance. It's the end of the day, and ${eventSlave.slaveName} is in a bathroom`
+		);
+		if (canSee(eventSlave)) {
+			r.push(`carefully checking each of ${his} piercings.`);
+		} else {
+			r.push(`meticulously cleaning each of ${his} piercings.`);
+		}
+		r.push(`Many of them come in contact with fluids on a regular basis, so ${he} cleans them conscientiously.`);
+		App.Events.addParagraph(node, r);
+		App.Events.addParagraph(node, [`As you watch ${him}, it occurs to you that since ${eventSlave.slaveName} isn't fully devoted to you yet, there's all manner of inventive ways you could have a little fun and increase ${his} submission to you at the same time.`]);
+
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Weight ${his} piercings and fuck ${him} so they swing`, weigh, ((eventSlave.anus === 0 && canDoAnal(eventSlave)) || (eventSlave.vagina === 0 && canDoVaginal(eventSlave))) ? `This option will take ${his} virginity` : null),
+			new App.Events.Result(`Secure ${him} by ${his} piercings for public use`, secure, ((eventSlave.anus === 0 && canDoAnal(eventSlave)) || (eventSlave.vagina === 0 && canDoVaginal(eventSlave))) ? `This option will take ${his} virginity` : null),
+		]);
+
+		function weigh() {
+			r = [];
+			r.push(`You order ${him} to make sure all of ${his} piercings have rings in them, and then come join you when ${he}'s done. ${He} enters your office with a mixture of fear and curiosity on ${his} face. You put ${him} down on`);
+			if (hasAllLimbs(eventSlave)) {
+				r.push(`all fours`);
+			} else {
+				r.push(`the ground`);
+			}
+			if (hasBothLegs(eventSlave)) {
+				r.push(`with ${his} legs spread,`);
+			}
+			if (eventSlave.belly >= 50000) {
+				r.push(`, belly brushing the floor,`);
+			}
+			if (canSee(eventSlave)) {
+				r.push(`blindfold ${him},`);
+			}
+			r.push(`and then start clipping little metal weights on short chains to each of ${his} piercings. Before long, ${his} nipples are painfully stretched under the tugging,`);
+			if (eventSlave.dick > 0) {
+				r.push(`and the weights up and down ${his} cock are causing ${his} considerable discomfort.`);
+			} else if (eventSlave.vagina === -1) {
+				r.push(`and though ${he} lacks any external genitalia to weight, you make sure ${his} ass feels the burn.`);
+			} else {
+				r.push(`${his} pussylips are being pulled downward, and even ${his} clit is agonizingly tortured.`);
+			}
+			r.push(`You fuck ${him} thoroughly, pounding ${him} so the weights swing. ${He} sobs and begs. <span class="devotion inc">${He} has become more submissive to you.</span>`);
+			eventSlave.devotion += 4;
+			if (canDoVaginal(eventSlave)) {
+				r.push(VCheck.Vaginal(eventSlave, 1));
+			} else {
+				r.push(VCheck.Anal(eventSlave, 1));
+			}
+			return r;
+		}
+
+		function secure() {
+			r = [];
+			r.push(`You order ${him} to make sure all of ${his} piercings have rings in them, and then come to you when ${he}'s done. ${He} enters your office with a mixture of fear and curiosity on ${his} face. You lead ${him} outside and secure ${him} in a side hall so that ${his} ass is presented to anyone who takes interest. ${He}'s forced to maintain this exact posture by a light chain between`);
+			if (eventSlave.belly > 10000) {
+				r.push(`${his} popped navel and a ring on the ground.`);
+			} else if (eventSlave.dick > 0) {
+				r.push(`${his} dickhead and a ring on the ground.`);
+			} else if (eventSlave.vagina === -1) {
+				r.push(`${his} nipples and a ring on the ground.`);
+			} else {
+				r.push(`${his} pussy and a ring on the ground.`);
+			}
+			r.push(`You fuck ${his} ass to check the bondage; it's good. The chain is out of the way, and ${he} jerks and struggles amusingly to keep it from tugging ${him} painfully. You pull out to leave ${his} fucked butt with cum dribbling out of it, and leave ${him} to the tender mercies of the growing crowd. <span class="reputation inc">The sadists among the public are duly grateful.</span>`);
+			if (canDoAnal(eventSlave) && canDoVaginal(eventSlave)) {
+				if (eventSlave.vagina === 0 && eventSlave.anus === 0) {
+					r.push(`They take pleasure in claiming <span class="virginity loss">both ${his} virginity and anal cherry.</span>`);
+				} else if (eventSlave.vagina === 0) {
+					r.push(`They take pleasure in claiming <span class="virginity loss">${his} virginity.</span>`);
+				} else if (eventSlave.anus === 0) {
+					r.push(`They take pleasure in claiming <span class="virginity loss">${his} anal cherry.</span>`);
+				}
+				eventSlave.vagina++;
+				eventSlave.anus++;
+				seX(eventSlave, "anal", "public", "penetrative", 5);
+				seX(eventSlave, "vaginal", "public", "penetrative", 5);
+				if (eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+					r.push(knockMeUp(eventSlave, 10, 2, -2));
+				}
+			} else if (canDoAnal(eventSlave)) {
+				if (eventSlave.anus === 0) {
+					r.push(`They take pleasure in claiming <span class="virginity loss">${his} anal cherry.</span>`);
+				}
+				eventSlave.anus++;
+				seX(eventSlave, "anal", "public", "penetrative", 10);
+				if (eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+					r.push(knockMeUp(eventSlave, 25, 1, -2));
+				}
+			} else {
+				if (eventSlave.vagina === 0) {
+					r.push(`They take pleasure in claiming <span class="virginity loss">${his} virginity.</span>`);
+				}
+				eventSlave.vagina++;
+				seX(eventSlave, "vaginal", "public", "penetrative", 5);
+				if (eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+					r.push(knockMeUp(eventSlave, 25, 0, -2));
+				}
+			}
+			repX(2500, "event", eventSlave);
+			return r;
+		}
+	}
+};
diff --git a/src/events/RESS/review/hugeTits.js b/src/events/RESS/review/hugeTits.js
new file mode 100644
index 0000000000000000000000000000000000000000..79bd764a79f71ef0b9c6dd11d4f70d3fa6ff575c
--- /dev/null
+++ b/src/events/RESS/review/hugeTits.js
@@ -0,0 +1,160 @@
+App.Events.RESSHugeTits = class RESSHugeTits extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return [
+			() => V.boobAccessibility !== 1,
+			() => V.ballsAccessibility !== 1,
+			() => V.pregAccessibility !== 1,
+			() => V.slaves.length > 2,
+		]; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				hasAnyLegs,
+				canTalk,
+				s => s.boobs > 10000,
+				s => s.devotion >= -20,
+				s => (canDoAnal(s) || canDoVaginal(s))
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			His, He, he, his, him
+		} = getPronouns(eventSlave);
+		const {title: Master} = getEnunciation(eventSlave);
+		const belly = bellyAdjective(eventSlave);
+
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave, "no clothing");
+
+		let r = [];
+		r.push(
+			`There is a horrible crash from the shower. You rush in to see`,
+			contextualIntro(V.PC, eventSlave, "DOM"),
+			`face-down and covered in soap. ${He}'s uninjured, but ${his} tits are so huge that, soapy as ${he} is, ${he} can't seem to stand again. ${His} udders have ${him} pinned to the ground with ${his} legs sticking out of the shower. ${He} pleads`
+		);
+		if (eventSlave.lips > 70) {
+			r.push(`through ${his} huge lips,`);
+		} else if ((eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2)) {
+			r.push(`through ${his} piercings,`);
+		} else {
+			r.push(`piteously,`);
+		}
+		r.push(Spoken(eventSlave, `"Help me, ${Master}!"`));
+
+		App.Events.addParagraph(node, r);
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Join ${him} in the shower`, join, virginityWarning()),
+			new App.Events.Result(`Fuck ${his} immobilized body`, immobilized, ((eventSlave.anus === 0) || (eventSlave.vagina === 0)) ? `This option will take ${his} virginity` : null),
+			new App.Events.Result(`Let ${him} figure it out`, figure),
+		]);
+
+		function virginityWarning() {
+			if ((eventSlave.vagina === 0) && canDoVaginal(eventSlave)) {
+				return `This option will take ${his} virginity`;
+			} else if ((eventSlave.vagina === -1) && (eventSlave.anus === 0) && canDoAnal(eventSlave)) {
+				return `This option will take ${his} anal virginity`;
+			}
+		}
+
+		function join() {
+			r = [];
+			r.push(`You step into the running water and help ${him} to ${his} feet with exaggerated gallantry. ${He} seems surprised`);
+			if (canSee(eventSlave)) {
+				r.push(`and stares at`);
+			} else {
+				r.push(`faces`);
+			}
+			r.push(`you through the steam for a moment before looking away with a blush. Before long you have ${his} back against the shower wall, ${his} titanic udders`);
+			if (eventSlave.belly >= 5000) {
+				r.push(`and ${belly}`);
+				if (eventSlave.bellyPreg >= 3000) {
+					r.push(`pregnant`);
+				}
+				r.push(`belly`);
+			}
+			r.push(`offering an amusing challenge as they slide soapily between you as you fuck. ${He} comes in no time at all, and a brief massage of ${his} huge soapy nipples produces a whimpering aftershock orgasm.`);
+			if (canSee(eventSlave)) {
+				r.push(`${His} ${App.Desc.eyesColor(eventSlave)} stare straight into yours`);
+			} else {
+				r.push(`You stare into ${his} ${App.Desc.eyesColor(eventSlave)}`);
+			}
+			r.push(`as ${he} writhes with overstimulation, <span class="devotion inc">${his} trust in your stewardship of ${his} pleasure total.</span>`);
+			if (canDoVaginal(eventSlave)) {
+				r.push(VCheck.Vaginal(eventSlave, 1));
+			} else if (canDoAnal(eventSlave)) {
+				r.push(VCheck.Anal(eventSlave, 1));
+			}
+			eventSlave.devotion += 4;
+			return r;
+		}
+
+		function immobilized() {
+			let didAnal = false;
+			let didVaginal = false;
+			r = [];
+			r.push(`You make no answer, groping ${his} soapy`);
+			if (V.seeRace === 1) {
+				r.push(eventSlave.race);
+			}
+			r.push(`buttocks.`);
+			if ((eventSlave.anus > 2) && canDoAnal(eventSlave)) {
+				r.push(`${His} rectum is so fucked out and loose that your groping hand almost slides up it.`);
+			} else if ((eventSlave.vagina > 2) && canDoVaginal(eventSlave)) {
+				r.push(`${His} pussy is so fucked out and loose that your groping hand almost slides up it.`);
+			} else {
+				r.push(`You fingerfuck ${him} for a while, the sting of the soap on ${his} sensitive insides making ${him} gasp.`);
+			}
+			r.push(`It's not like you can't tie ${him} up and fuck ${him} whenever you like, but sliding back and forth on ${his} soapy body is kind of nice.`);
+			if (V.PC.dick === 0) {
+				r.push(`You ride yourself against ${him} until you orgasm`);
+			} else {
+				r.push(`You leave a load of cum in`);
+				if (canDoAnal(eventSlave) && canDoVaginal(eventSlave)) {
+					r.push(`each of ${his} holes`);
+					didVaginal = true;
+					didAnal = true;
+				} else if (canDoAnal(eventSlave)) {
+					r.push(`${his} loosened butthole`);
+					didAnal = true;
+				} else {
+					r.push(`${his} loosened vagina`);
+					didVaginal = true;
+				}
+				if (V.PC.vagina !== -1) {
+					r.push(`and make ${him} eat your pussy for a quick aftershock,`);
+				}
+			}
+			r.push(`and only then do you help ${him} back to ${his} feet. ${He} drips soap, water, and`);
+			if (V.PC.dick === 0) {
+				r.push(`your juices.`);
+			} else {
+				r.push(`ejaculate.`);
+			}
+			r.push(`<span class="devotion inc">${He} has become more submissive.</span>`);
+			if (didVaginal && didAnal) {
+				r.push(VCheck.Both(eventSlave, 1));
+			} else if (didVaginal) {
+				r.push(VCheck.Vaginal(eventSlave, 1));
+			} else if (didAnal) {
+				r.push(VCheck.Anal(eventSlave, 1));
+			}
+			eventSlave.devotion += 4;
+			return r;
+		}
+
+		function figure() {
+			eventSlave.devotion -= 5;
+			return `${He} flounders around for a while until you get bored and leave ${him} to it. Eventually ${his} whining brings another slave in, who helps ${him}. This interdependence between slaves <span class="devotion dec">reduces ${his} devotion.</span>`;
+		}
+	}
+};
diff --git a/src/events/RESS/review/ignorantHorny.js b/src/events/RESS/review/ignorantHorny.js
new file mode 100644
index 0000000000000000000000000000000000000000..7065723251087f820b95556a612d91b8081d65a5
--- /dev/null
+++ b/src/events/RESS/review/ignorantHorny.js
@@ -0,0 +1,550 @@
+App.Events.RESSIgnorantHorny = class RESSIgnorantHorny extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return []; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				hasAnyLegs,
+				canTalk,
+				s => s.assignment !== Job.QUARTER,
+				s => s.devotion <= 50,
+				s => s.devotion >= -20,
+				s => s.weekAcquired > 0,
+				s => V.week - s.weekAcquired < 10,
+				s => s.energy > 20,
+				s => s.anus !== 0,
+				s => s.vagina !== 0,
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			His, He, he, his, him, himself, girl
+		} = getPronouns(eventSlave);
+		const {title: Master, say} = getEnunciation(eventSlave);
+		const belly = bellyAdjective(eventSlave);
+		const PC = V.PC;
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave, "no clothing");
+
+		let r = [];
+		r.push(
+			`First on the inspection schedule is`,
+			App.UI.DOM.combineNodes(contextualIntro(PC, eventSlave, "DOM"), ","),
+			`and as you watch ${him} enter your office, you note several good signs about ${his} progress towards becoming a good sex slave. ${He} enters obediently, without pretending to be thrilled to be here, but also without hesitation. Best of all,`
+		);
+		if (eventSlave.chastityPenis && canAchieveErection(eventSlave)) {
+			r.push(`${he}'s squirming with discomfort over the lack of room in ${his} chastity.`);
+		} else if (eventSlave.dick > 4 && canAchieveErection(eventSlave)) {
+			r.push(`${he}'s sporting a massive half-erection which slaps lewdly against ${his} thighs as ${he} walks.`);
+		} else if (eventSlave.dick > 2 && canAchieveErection(eventSlave)) {
+			r.push(`${his} dick is half-erect, bobbing lewdly as ${he} walks.`);
+		} else if (eventSlave.dick > 0 && canAchieveErection(eventSlave)) {
+			r.push(`${his} pathetic little bitch dick is half-erect.`);
+		} else if (eventSlave.dick > 6) {
+			r.push(`${his} enormous dick is slightly engorged and dripping precum.`);
+		} else if (eventSlave.dick > 0) {
+			r.push(`${his} soft bitch dick is dripping precum.`);
+		} else if (eventSlave.labia > 1) {
+			r.push(`${his} lovely pussylips are flushed and wet.`);
+		} else if (eventSlave.clit > 1) {
+			r.push(`${his} glorious bitch button is stiffly erect.`);
+		} else if (eventSlave.vagina === -1) {
+			r.push(`${he}'s unconsciously sticking ${his} ass out. Getting fucked there is ${his} main sexual outlet, now that ${he} lacks genitals.`);
+		} else {
+			r.push(`${his} pussy is flushed and moist.`);
+		}
+		App.Events.addParagraph(node, r);
+
+		r = [];
+		if (eventSlave.aphrodisiacs > 0 || eventSlave.inflationType === "aphrodisiac") {
+			r.push(`The aphrodisiacs racing through ${his} system have ${him} desperate to get off, right now.`);
+		} else if (eventSlave.clitPiercing === 3 && eventSlave.clitSetting !== "none") {
+			r.push(His);
+			if (eventSlave.vagina > -1) {
+				r.push(`clit`);
+			} else {
+				r.push(`frenulum`);
+			}
+			r.push(`piercing is keeping ${his} arousal exquisitely balanced for ${his} inspection.`);
+		} else {
+			r.push(`The mild aphrodisiacs in the slave food have clearly built up some arousal that ${he} hasn't been able to address recently.`);
+		}
+		r.push(`${He} hasn't been with you long; it's been a mere ${V.week-eventSlave.weekAcquired > 1 ? `${V.week-eventSlave.weekAcquired} weeks` : `week`} since ${he} became your slave. ${He} may not be fully cognizant of how ${his} libido is being altered. New slaves aren't informed of the true extent of your abilities to force sexual need. It can be useful for a new ${girl} to wonder if some of the horniness ${he} feels is natural, and suspect that ${he}'s nothing but a dirty slut who deserves to be a sex slave.`);
+
+		App.Events.addParagraph(node, r);
+
+		let choices = [new App.Events.Result(`Tell ${him} the truth`, truth)];
+		if (eventSlave.fetish !== "cumslut" || eventSlave.fetishKnown !== 1) {
+			choices.push(new App.Events.Result(`Trade some oral for release`, trade));
+		}
+		if (eventSlave.fetish !== "buttslut" || eventSlave.fetishKnown !== 1) {
+			if (eventSlave.vagina === -1 && eventSlave.attrXY <= 65) {
+				choices.push(new App.Events.Result(`Make ${him} cum like a girl`, cum));
+			} else if (eventSlave.vagina > -1) {
+				choices.push(new App.Events.Result(`Work on broadening ${his} sexual horizons`, broaden));
+			}
+		}
+		App.Events.addResponses(node, choices);
+
+		function truth() {
+			let frag = document.createDocumentFragment();
+			r = [];
+			r.push(`You explain the effects of the`);
+			if (eventSlave.aphrodisiacs > 0 || eventSlave.inflationType === "aphrodisiac") {
+				r.push(`sex drugs`);
+			} else if (eventSlave.clitPiercing === 3 && eventSlave.clitSetting !== "none") {
+				r.push(`advanced`);
+				if (eventSlave.vagina > -1) {
+					r.push(`clit`);
+				} else {
+					r.push(`frenulum`);
+				}
+				r.push(`piercing`);
+			} else {
+				r.push(`slave food`);
+			}
+			r.push(`briefly. Comprehension dawns across ${his}`);
+			if (eventSlave.faceShape !== "normal") {
+				r.push(eventSlave.faceShape);
+			}
+			r.push(
+				`face.`,
+				Spoken(eventSlave, `"Yes ${Master},"`),
+				`${he} ${say}s quietly, more to buy time to formulate a response than anything else.`,
+				Spoken(eventSlave, `"Um. I still really, really want to cum, though. W-would you please fuck me? Please, please, ${Master}, please fuck`)
+			);
+			if (eventSlave.vagina > 0 && eventSlave.preg > eventSlave.pregData.normalBirth/4 && canDoVaginal(eventSlave)) {
+				r.push(Spoken(eventSlave, `my pregnant pussy."`));
+			} else if (eventSlave.vagina > 0 && canDoVaginal(eventSlave)) {
+				r.push(`me."`);
+			} else if (canDoAnal(eventSlave)) {
+				r.push(`my butt."`);
+			} else {
+				if (eventSlave.vagina > 0 && eventSlave.preg > eventSlave.pregData.normalBirth/4) {
+					r.push(Spoken(eventSlave, `my pregnant pussy.`));
+				} else if (eventSlave.vagina > 0) {
+					r.push(`me.`);
+				} else {
+					r.push(`my butt.`);
+				}
+				r.push(Spoken(eventSlave, `I need it so bad right now, please rip off my chastity and fuck me senseless."`));
+			}
+			r.push(`A vague hint of embarrassment at begging for`);
+			if (PC.dick !== 0) {
+				r.push(`a hard`);
+				if (PC.vagina !== -1) {
+					r.push(`futa`);
+				}
+				r.push(`dicking`);
+			} else {
+				r.push(`your strap-on`);
+			}
+			r.push(`flickers across ${his} face, but hope for sexual release extinguishes it quickly.`);
+			App.Events.addParagraph(frag, r);
+
+			r = [];
+			if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) {
+				r.push(`${He} groans with relief as your`);
+				if (PC.dick !== 0) {
+					r.push(`cock`);
+				} else {
+					r.push(`phallus`);
+				}
+				r.push(
+					`enters ${him}. ${He} does not orgasm immediately, but ${he} knows sweet release is coming. You have ${him} atop your desk, on ${his} back, and ${he}'s participating in ${his} own sexual degradation by holding ${his} legs spread wide apart for you. "Ohh," ${he} moans as you fuck ${him},`,
+					Spoken(eventSlave, `"thank you for telling me why I feel this way, ${Master}. I guess this is how I, oh, am now? Oh, oh, it feels so g-good! Yes! AHH!"`)
+				);
+				if (PC.dick !== 0) {
+					r.push(His);
+					if (eventSlave.vagina > 0 && canDoVaginal(eventSlave)) {
+						r.push(`cunt`);
+					} else {
+						r.push(`asshole`);
+					}
+					r.push(`tightens around your shaft delightfully as ${he} climaxes.`);
+				} else {
+					r.push(`${He} shudders with climax.`);
+				}
+				r.push(`${He} smiles <span class="trust inc">trustingly</span> up at you in the afterglow,`);
+				if (eventSlave.balls > 0) {
+					r.push(`${his} ejaculate`);
+					if (eventSlave.chastityPenis === 1) {
+						r.push(`seeping from ${his} chastity cage,`);
+					} else {
+						r.push(`glistening on ${his}`);
+						if (eventSlave.belly > 1500) {
+							r.push(belly);
+							if (eventSlave.bellyPreg >= 1500) {
+								r.push(`gravid`);
+							}
+						}
+						r.push(`belly,`);
+					}
+				}
+				r.push(`touched that you would tell ${him} something like that so honestly.`);
+				if (eventSlave.vagina > 0 && canDoVaginal(eventSlave)) {
+					r.push(VCheck.Both(eventSlave, 1));
+				} else {
+					r.push(VCheck.Anal(eventSlave, 1));
+				}
+			} else {
+				r.push(`${He} groans with lust as pull ${him} onto your lap to make out. "Ohh," ${he} moans as you run your hands across ${his}`);
+				if (eventSlave.boobsImplant >= 1000 && (eventSlave.boobsImplant/eventSlave.boobs) >= .60) {
+					r.push(`bimbo`);
+				} else if (eventSlave.boobs >= 1000 && eventSlave.butt > 5 && eventSlave.hips > 0) {
+					r.push(`fecund`);
+				} else if (eventSlave.boobs >= 1000 && eventSlave.butt > 5) {
+					r.push(`voluptuous`);
+				} else if (eventSlave.weight > 190) {
+					r.push(`voluminous`);
+				} else if (eventSlave.belly >= 5000) {
+					if (eventSlave.bellyPreg >= 3000) {
+						r.push(`gravid`);
+					} else if (eventSlave.bellyImplant >= 3000) {
+						r.push(`rounded`);
+					} else {
+						r.push(`swollen`);
+					}
+				} else if (eventSlave.weight > 30) {
+					r.push(`soft`);
+				} else if (eventSlave.muscles > 30) {
+					r.push(`ripped`);
+				} else if (eventSlave.muscles > 5) {
+					r.push(`toned`);
+				} else if (eventSlave.boobs >= 500) {
+					r.push(`sultry`);
+				} else {
+					r.push(`needy`);
+				}
+				r.push(
+					`body,`,
+					Spoken(eventSlave, `"thank you for telling me why I feel this way, ${Master}. I guess this is how I, oh, am now?"`),
+					`You reward ${him} for the realization by`
+				);
+				switch (eventSlave.nipples) {
+					case "huge":
+						r.push(`stroking ${his} lewdly erect nipples.`);
+						break;
+					case "flat":
+						r.push(`tweaking ${his} revealed nipples.`);
+						break;
+					case "puffy":
+						r.push(`cupping and fondling ${his} puffy nipples.`);
+						break;
+					case "partially inverted":
+						r.push(`teasing ${his} fully exposed nipples.`);
+						break;
+					case "inverted":
+						r.push(`squeezing ${his} puffy areolae until ${his} inverted nipples pop out for you to tease.`);
+						break;
+					case "fuckable":
+						r.push(`sticking your fingers deep into ${his} nipples.`);
+						break;
+					default:
+						r.push(`tweaking ${his} ${eventSlave.nipples} nipples.`);
+				}
+				r.push(`The pent-up ${girl} is so desperate for release, you can feel ${him} trembling with ecstasy from the nipple stimulation alone.`);
+				r.push(Spoken(eventSlave, `"Oh, oh, it feels so g-good! Yes! AHH!"`));
+				r.push(`${He} shudders with climax, smiling <span class="trust inc">trustingly</span> up at you in the afterglow,`);
+				if (eventSlave.balls > 0) {
+					r.push(`${his} ejaculate`);
+					if (eventSlave.chastityPenis === 1) {
+						r.push(`seeping from ${his} chastity cage,`);
+					} else {
+						r.push(`glistening on ${his}`);
+						if (eventSlave.belly > 1500) {
+							r.push(belly);
+							if (eventSlave.bellyPreg >= 1500) {
+								r.push(`gravid`);
+							}
+						}
+						r.push(`belly,`);
+					}
+				}
+				r.push(`touched that you would tell ${him} something like that so honestly.`);
+				seX(eventSlave, "mammary", PC, "penetrative");
+			}
+			eventSlave.trust += 4;
+			App.Events.addParagraph(frag, r);
+			return r;
+		}
+
+		function trade() {
+			const hands = (hasBothArms(eventSlave)) ? `hands` : `hand`;
+			let frag = document.createDocumentFragment();
+			r = [];
+			r.push(`You observe, noncommittally, that ${he} seems ready to get off.`);
+			r.push(
+				Spoken(eventSlave, `"Yes ${Master}!"`),
+				`${he} squeals, too`
+			);
+			if (eventSlave.intelligence+eventSlave.intelligenceImplant >= -50) {
+				r.push(`horny`);
+			} else {
+				r.push(`stupid`);
+			}
+			r.push(`to notice the sarcasm. Sighing inwardly, you slide yourself back from your desk and glance downward significantly, indicating your`);
+			if (PC.dick !== 0) {
+				r.push(`dick`);
+				if (PC.vagina !== -1) {
+					r.push(`and pussy`);
+				}
+			} else {
+				r.push(`girl parts`);
+			}
+			r.push(r.pop() + `. ${He} hurries over, almost throwing ${himself} at your feet in ${his} eagerness. "Touch yourself", you say, making it an imperious command rather than kind permission. ${He} moans into your`); // TODO: review talking PC
+			if (PC.dick !== 0) {
+				r.push(`cock`);
+			} else {
+				r.push(`cunt`);
+			}
+			r.push(`with gratitude as ${he}`);
+			if (canDoVaginal(eventSlave)) {
+				if (eventSlave.dick > 0 && !(eventSlave.chastityPenis)) {
+					r.push(`wraps one hand around ${his} dick and slips the other into ${his} pussy.`);
+				} else {
+					r.push(`dives for ${his} pussy with`);
+					if (hasBothArms(eventSlave)) {
+						r.push(`both hands.`);
+					} else {
+						r.push(`${his} hand.`);
+					}
+				}
+			} else if (eventSlave.dick > 0 && !(eventSlave.chastityPenis)) {
+				if (canAchieveErection(eventSlave)) {
+					if (eventSlave.dick > 4) {
+						r.push(`wraps ${his} ${hands} around ${his} huge erection.`);
+					} else if (canDoAnal(eventSlave) && eventSlave.prostate > 0) {
+						r.push(`wraps a hand around ${his} throbbing erection and reaches around to finger ${his} butt and stimulate ${his} prostate.${his}`);
+					} else {
+						r.push(`wraps a hand around ${his} throbbing erection.`);
+					}
+				} else {
+					if (eventSlave.dick > 4) {
+						r.push(`dives for ${his} huge, soft cock with`);
+						if (hasBothArms(eventSlave)) {
+							r.push(`both hands.`);
+						} else {
+							r.push(`${his} hand.`);
+						}
+					} else {
+						r.push(`reaches down to fondle ${his} limp dick.`);
+					}
+				}
+			} else if (canDoAnal(eventSlave)) {
+				if (eventSlave.dick === 0) {
+					r.push(`reaches down and around to rub ${his}`);
+					if (canDoAnal(eventSlave)) {
+						r.push(`anus and`);
+					}
+					r.push(`perineum.`);
+				} else {
+					if (eventSlave.vagina === -1) {
+						r.push(`reaches around to finger ${his} butt, since that's ${his} only hole.`);
+					} else if (eventSlave.chastityVagina === 1) {
+						r.push(`reaches around to finger ${his} butt, since ${his} pussy's in chastity.`);
+					} else {
+						r.push(`dives for ${his} pussy with`);
+						if (hasBothArms(eventSlave)) {
+							r.push(`both hands.`);
+						} else {
+							r.push(`${his} hand.`);
+						}
+					}
+				}
+			} else if (eventSlave.vagina === -1 && eventSlave.dick === 0) {
+				if (eventSlave.balls > 4) {
+					r.push(`cups ${his} desperate balls, massaging them and encouraging them to release their pent-up cum.`);
+				} else {
+					r.push(`reaches down and around to rub ${his}`);
+					if (canDoAnal(eventSlave)) {
+						r.push(`anus and`);
+					}
+					r.push(`perineum.`);
+				}
+			} else {
+				r.push(`brings ${his} ${hands} to ${his} breasts to`);
+				if (eventSlave.nipples !== "fuckable") {
+					r.push(`tease ${his} erect`);
+				} else {
+					r.push(`finger ${his} swollen`);
+				}
+				r.push(`nipples.`);
+			}
+			App.Events.addParagraph(frag, r);
+
+			r = [];
+			r.push(`${He}'s extremely pent up, and orgasms twice with`);
+			if (PC.dick !== 0) {
+				r.push(`your dick in ${his} mouth`);
+				if (PC.vagina !== -1) {
+					r.push(`first and ${his} tongue quivering along your pussylips second`);
+				}
+			} else {
+				r.push(`${his} mouth on your cunt`);
+			}
+			r.push(r.pop() + `. The mental effects of this formative little experience are impossible to control with precision. Over the next few days, you notice that whenever`);
+			if (canSee(eventSlave)) {
+				r.push(`${he} sees you,`);
+			} else {
+				r.push(`you see ${him},`);
+			}
+			if (random(0, 1) === 1) {
+				r.push(`${he} licks ${his} lips unconsciously. ${He} seems to be developing the beginnings of a lovely <span class="fetish gain">oral fixation.</span>`);
+				eventSlave.fetish = "cumslut";
+				eventSlave.fetishKnown = 1;
+				eventSlave.fetishStrength = 10;
+			} else {
+				r.push(`${he} betrays mixed feelings. The shocking intimacy of reaching sexual release as ${he} used ${his} mouth to pleasure you seems to be <span class="devotion inc">affecting ${him}.</span>`);
+				eventSlave.devotion += 4;
+			}
+			seX(eventSlave, "oral", PC, "penetrative");
+			App.Events.addParagraph(frag, r);
+			return frag;
+		}
+
+		function cum() {
+			let frag = document.createDocumentFragment();
+			r = [];
+			r.push(`You order ${him} to get ${his} ass up on your desk. ${He} obeys, though not without a flicker of trepidation. ${He} points ${his} butt at you like a sex slave should, and doesn't crane around to`);
+			if (canSee(eventSlave)) {
+				r.push(`see`);
+			} else {
+				r.push(`feel`);
+			}
+			r.push(`what you're doing behind ${him}, but ${he}'s stiff with the awareness that`);
+			if (PC.dick !== 0) {
+				r.push(`there's almost certainly a hard`);
+				if (PC.vagina !== -1) {
+					r.push(`futa`);
+				}
+				r.push(`dick about`);
+			} else {
+				r.push(`you're almost certainly donning a strap-on`);
+			}
+			r.push(`to slide inside ${his} girly asspussy. ${He}'s not wrong, and ${he} lets out a little moan as`);
+			if (PC.dick !== 0) {
+				r.push(`your cockhead,`);
+				if (PC.vagina !== -1) {
+					r.push(`which you kindly lubed with a bit of your pussyjuice,`);
+				}
+			} else {
+				r.push(`its broad tip`);
+			}
+			if (eventSlave.anus > 2) {
+				r.push(`slides easily inside ${his} whorish anus.`);
+			} else if (eventSlave.anus === 2) {
+				r.push(`slides up ${his} experienced butthole.`);
+			} else {
+				r.push(`forces its way inside ${his} tight sphincter.`);
+			}
+			App.Events.addParagraph(frag, r);
+			r = [];
+			r.push(`As you fuck ${him}, you pull ${his} torso up so you can play with ${his}`);
+			if (eventSlave.boobs > 2000) {
+				r.push(`udders`);
+			} else if (eventSlave.boobs > 800) {
+				r.push(`tits`);
+			} else {
+				r.push(`nipples`);
+			}
+			r.push(`and whisper manipulation into ${his} ear. You tell ${him} ${he}'s about to cum like a girl. ${He} says nothing, but ${his} body language communicates incomprehension. Girls, you tell ${him}, cum when they get fucked. They cum when`);
+			if (PC.title === 1) {
+				r.push(`guys`);
+			} else {
+				r.push(`their betters`);
+			}
+			r.push(`stick dick inside them. ${He} bursts into tears, sobbing with shame and degradation even as ${he} shakes and`);
+			if (eventSlave.balls > 0) {
+				r.push(`squirts cum.`);
+			} else {
+				r.push(`dribbles ejaculate.`);
+			}
+			r.push(`The next time ${he} sees you,`);
+			if (random(0, 1) === 1) {
+				r.push(`${he} visibly gathers ${his} courage, and flirtatiously <span class="fetish gain">offers you ${his} ass.</span>`);
+				eventSlave.fetish = "buttslut";
+				eventSlave.fetishKnown = 1;
+				eventSlave.fetishStrength = 10;
+			} else {
+				r.push(`${he} manages to stop ${himself} from breaking down, and seems to be <span class="devotion inc">working hard</span> to convince ${himself} that ${he}'s a girl.`);
+				eventSlave.devotion += 4;
+			}
+			r.push(VCheck.Anal(eventSlave, 1));
+			App.Events.addParagraph(frag, r);
+			return frag;
+		}
+
+		function broaden() {
+			let frag = document.createDocumentFragment();
+			r = [];
+			r.push(`${He} seems a little too focused on ${his} hot cunt. You order ${him} to get up on your desk, and ${he} obeys eagerly, ${his}`);
+			if (canSee(eventSlave)) {
+				App.Desc.eyesColor(eventSlave);
+				r.push(`shining`);
+			} else {
+				r.push(`facial expression filled`);
+			}
+			r.push(`with lust.`);
+			if (canSee(eventSlave)) {
+				r.push(`They focus`);
+			} else {
+				r.push(`${He} focuses`);
+			}
+			r.push(`on`);
+			if (PC.dick !== 0) {
+				r.push(`your cock as you bring it to bear,`);
+				if (PC.vagina !== -1) {
+					r.push(`not to mention the pussy at its base,`);
+				}
+			} else {
+				r.push(`your strap-on as you step into it,`);
+			}
+			r.push(`and ${he}'s about to express ${his} gratitude when you push the slave, who is sitting on the edge of your desk with ${his} legs spread to provide you access to ${his} pussy, over onto ${his} back. ${He} barely has time to reorient ${himself} when ${he} feels`);
+			if (eventSlave.anus > 2) {
+				r.push(`a sudden fullness in ${his} loose ass.`);
+			} else if (eventSlave.anus === 2) {
+				r.push(`a presence inside ${his} experienced ass.`);
+			} else {
+				r.push(`something starting to push its way up ${his} poor little bottom.`);
+			}
+			App.Events.addParagraph(frag, r);
+
+			r = [];
+			r.push(`${He} cannot hide ${his} disappointment, but has the presence of mind not to protest as you assfuck ${him} hard enough that ${his}`);
+			if (eventSlave.boobs > 2000) {
+				r.push(`ridiculous tits almost hit ${him} in the face with each stroke`);
+			} else if (eventSlave.boobs > 800) {
+				r.push(`big boobs bounce all over the place`);
+			} else {
+				r.push(`boobs bounce`);
+			}
+			if (eventSlave.belly >= 10000) {
+				r.push(`and taut belly is forced back`);
+			}
+			r.push(r.pop() + `. ${His} orgasm sneaks up on ${him}, and comes by surprise, forcing a squeal out of ${him} as ${his} sphincter tightens down involuntarily. ${He} gets up gingerly, clearly feeling sore,`);
+			if (random(0, 1) === 1) {
+				r.push(`and looks preoccupied. ${He} reaches idly around and massages ${his} well-fucked backdoor meditatively, biting ${his} lower lip as ${he} investigates. Maybe, ${he} seems to be thinking, <span class="fetish gain">anal is fun?</span>`);
+				eventSlave.fetish = "buttslut";
+				eventSlave.fetishKnown = 1;
+				eventSlave.fetishStrength = 10;
+			} else {
+				r.push(`but <span class="devotion inc">does ${his} honest best</span> to look grateful. ${He} knows ${he}'s a sex slave and can't afford to be particular about little things like getting buttfucked.`);
+				eventSlave.devotion += 4;
+			}
+			r.push(VCheck.Anal(eventSlave, 1));
+			App.Events.addParagraph(frag, r);
+			return frag;
+		}
+	}
+};
diff --git a/src/events/RESS/review/looseButtslut.js b/src/events/RESS/review/looseButtslut.js
index 73c2eb28f7c44db6ed9529247349cac0bf77b049..9b013382bb957034b42c5fa964935275d0ca26fa 100644
--- a/src/events/RESS/review/looseButtslut.js
+++ b/src/events/RESS/review/looseButtslut.js
@@ -267,11 +267,11 @@ App.Events.RESSLooseButtslut = class RESSLooseButtslut extends App.Events.BaseEv
 					r.push(`fingering`);
 				}
 				r.push(`the moaning slave's nipples.`);
-			} else if ((S.HeadGirl.dick > 0) && (S.HeadGirl.hormoneBalance >= 100)) {
+			} else if (S.HeadGirl.dick > 0 && S.HeadGirl.hormoneBalance >= 100) {
 				r.push(`Since your poor Head Girl can't get hard due to ${his2} hormone therapy, ${he2} dons a strap-on over ${his2} flaccid penis and shoves it up ${eventSlave.slaveName}'s already-filled butt without further ado.`);
-			} else if ((S.HeadGirl.dick > 0) && (S.HeadGirl.balls > 0) && (S.HeadGirl.ballType === "sterile")) {
+			} else if (S.HeadGirl.dick > 0 && S.HeadGirl.balls > 0 && S.HeadGirl.ballType === "sterile") {
 				r.push(`Since your poor Head Girl can't get hard due to ${his2} chemical castration, ${he2} dons a strap-on over ${his2} flaccid penis and shoves it up ${eventSlave.slaveName}'s already-filled butt without further ado`);
-			} else if ((S.HeadGirl.dick > 0) && (S.HeadGirl.balls === 0)) {
+			} else if (S.HeadGirl.dick > 0 && S.HeadGirl.balls === 0) {
 				r.push(`Since your poor Head Girl can't get hard due to ${his2} orchiectomy, ${he2} dons a strap-on over ${his2} flaccid penis and shoves it up ${eventSlave.slaveName}'s already-filled butt without further ado.`);
 			} else if (!canAchieveErection(S.HeadGirl) && S.HeadGirl.dick > 6) {
 				r.push(`Since your poor Head Girl is far too big to get hard, much to ${eventSlave.slaveName}'s disappointment, ${he2} dons a strap-on over ${his2} flaccid penis and shoves it up ${eventSlave.slaveName}'s already-filled butt without further ado.`);
diff --git a/src/events/RESS/review/modsPlease.js b/src/events/RESS/review/modsPlease.js
new file mode 100644
index 0000000000000000000000000000000000000000..547e83829bb31e52150093ebe97ac568197ad1ab
--- /dev/null
+++ b/src/events/RESS/review/modsPlease.js
@@ -0,0 +1,388 @@
+App.Events.RESSModsPlease = class RESSModsPlease extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return [
+			() => V.modRequestsAllowed > 0,
+		]; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				hasAnyLegs,
+				canTalk,
+				s => s.assignment !== Job.QUARTER,
+				s => s.trust > 50,
+				s => s.devotion > 20,
+				s => s.dick !== 0 || s.vagina !== -1,
+				s => s.nipples !== "fuckable",
+				s => s.rules.speech === "permissive",
+				s => s.corsetPiercing === 0,
+				s => s.tonguePiercing === 0,
+				s => s.anusPiercing === 0,
+				s => s.nipplesPiercing === 0,
+				s => s.dickPiercing === 0,
+				s => s.vaginaPiercing === 0,
+				s => s.lipsTat === 0 || s.lipsTat === "none",
+				s => s.vaginaTat === 0 || s.vaginaTat === "none",
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			He, he, his, him, himself, girl
+		} = getPronouns(eventSlave);
+		const {title: Master} = getEnunciation(eventSlave);
+		const belly = bellyAdjective(eventSlave);
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave, "no clothing");
+
+		let r = [];
+		r.push(
+			App.UI.DOM.slaveDescriptionDialog(eventSlave),
+			`is such a good ${SlaveTitle(eventSlave)} that ${he} enjoys being inspected, even if the inspection doesn't immediately transition into sex. At the moment, ${he}'s luxuriating under your gaze, eagerly offering the sight of every`
+		);
+		if (V.showInches === 2) {
+			r.push(`inch`);
+		} else {
+			r.push(`centimeter`);
+		}
+		r.push(`of ${his} nude body with you. ${He} is confident in ${his} appearance, and more than happy to share it.`);
+		App.Events.addParagraph(node, r);
+
+		r = [];
+		if (canSee(eventSlave)) {
+			r.push(`Seeing`);
+		} else {
+			r.push(`Feeling`);
+		}
+		r.push(`your intent gaze, ${he}`);
+		if (SlaveStatsChecker.checkForLisp(eventSlave)) {
+			r.push(`lisps,`);
+		} else {
+			r.push(`asks,`);
+		}
+		r.push(Spoken(eventSlave, `"${Master}, may I please ask you for something?"`));
+
+		r.push(`At your`);
+		if (canSee(eventSlave)) {
+			r.push(`nod,`);
+		} else {
+			r.push(`acknowledgment,`);
+		}
+		r.push(he);
+		if (eventSlave.fetishKnown === 1) {
+			if (eventSlave.fetish === "submissive") {
+				r.push(
+					`gives a submissive shudder, and turns to show you ${his} bare back.`,
+					Spoken(eventSlave, `"${Master}, may I have a corset piercing? I would love to feel more, um, bound. Tied up. Please?"`)
+				);
+				r.push(`${He} awaits your answer coquettishly,`);
+				if (canSee(eventSlave)) {
+					r.push(`${his} ${App.Desc.eyesColor(eventSlave)} huge.`);
+				} else {
+					r.push(`a look of begging on ${his} face.`);
+				}
+			} else if (eventSlave.fetish === "cumslut") {
+				r.push(
+					`blows you a wet kiss.`,
+					Spoken(eventSlave, `"${Master}, may I have a tongue piercing? It would take my dicksucking to the next level. Please?"`)
+				);
+				r.push(`${He} sticks out ${his} tongue helpfully, leaving ${his} favorite fuckhole wide open so you can see down ${his} hungry throat.`);
+			} else if (eventSlave.fetish === "humiliation") {
+				r.push(`blushes with humiliation.`,
+					Spoken(eventSlave, `"${Master}, may I have a t-tattoo? L-like, on my face. A mean one. Please?"`)
+				);
+				r.push(`${He} hangs ${his} head.`);
+			} else if (eventSlave.fetish === "buttslut") {
+				r.push(`spins around to show off ${his} favorite fuckhole, bending over`);
+				if (eventSlave.belly >= 5000) {
+					r.push(`as far as ${he} can with ${his} ${belly}`);
+					if (eventSlave.bellyPreg >= 3000) {
+						r.push(`pregnant`);
+					}
+					r.push(`belly in the way`);
+				} else {
+					r.push(`farther than usual`);
+				}
+				r.push(`to indicate the area between it and`);
+				if (eventSlave.vagina > -1) {
+					r.push(`${his} cunt.`);
+				} else if (eventSlave.balls > 0 && eventSlave.scrotum > 0) {
+					r.push(`${his} ballsack.`);
+				} else if (eventSlave.dick === 0) {
+					r.push(`${his} featurelessly smooth groin and its little cumhole.`);
+				} else {
+					r.push(`the base of ${his} soft bitchclit.`);
+				}
+				r.push(Spoken(eventSlave, `"${Master}, may I have a piercing right here? Right below my butthole? It would keep me so ready for a buttfuck. I mean, more than I already am. Please?"`));
+				r.push(`The shameless buttslut begins to wink ${his} asshole meaningfully.`);
+			} else if (eventSlave.fetish === "boobs") {
+				r.push(`wiggles ${his} shoulders to give ${his} boobs some motion.`,
+					Spoken(eventSlave, `"${Master}, may I have some nipple piercings? It would be like having someone playing with my nipples, but, like, all the time. Please?"`)
+				);
+				r.push(`${He} starts to bounce flirtily.`);
+			} else if (eventSlave.fetish === "pregnancy") {
+				r.push(`blushes suddenly and hangs ${his} head.`);
+				if (eventSlave.belly >= 10001) {
+					r.push(Spoken(eventSlave, `"${Master}, may I have a piercing? Right here? A big one?" ${He} indicates ${his} popped navel. "I feel it like it would get my belly more attention, plus I'd hate to not take advantage of my new outie. Please?`));
+				} else {
+					r.push(Spoken(eventSlave, `"${Master}, may I have a tattoo? Right here?"`),
+						`${He} indicates ${his}`);
+					if (eventSlave.belly > 1500) {
+						r.push(`rounded belly.`);
+					} else {
+						r.push(`abdomen.`);
+					}
+					r.push(Spoken(eventSlave, `"I would love an advertisement that I want to be, um, filled up.`));
+					if (eventSlave.pregKnown === 1) {
+						r.push(Spoken(eventSlave, `Well, when I'm empty again.`));
+					}
+					r.push(Spoken(eventSlave, `Please?"`));
+				}
+				r.push(`${He}`);
+				if (canSee(eventSlave)) {
+					r.push(`looks`);
+				} else {
+					r.push(`gazes`);
+				}
+				r.push(`at you hopefully.`);
+			} else if (eventSlave.fetish === "dom") {
+				r.push(`tosses ${his} head, a`);
+				if (canSee(eventSlave)) {
+					r.push(`gleam in ${his} eye`);
+				} else {
+					r.push(`devious look on ${his} face`);
+				}
+				r.push(
+					Spoken(eventSlave, `"${Master}, may I have a tattoo? Right here?"`),
+					`${He} indicates ${his} eyebrow, temple, and cheek.`,
+					Spoken(eventSlave, `"It would be cool if other girls saw me and were all, 'I'm about to get fucked.' Please?"`)
+				);
+				r.push(`${He} smiles at you hopefully.`);
+			} else if (eventSlave.fetish === "sadist") {
+				r.push(`tosses ${his} head, a`);
+				if (canSee(eventSlave)) {
+					r.push(`gleam in ${his} eye.`);
+				} else {
+					r.push(`malicious look on ${his} face.`);
+				}
+				if (canAchieveErection(eventSlave)) {
+					r.push(Spoken(eventSlave, `"${Master}, may I have a shaft piercing? If I get to stick it in another girl, I'd love to`));
+					if (canSee(eventSlave)) {
+						r.push(Spoken(eventSlave, `see her face`));
+					} else {
+						r.push(`feel her shudder`);
+					}
+					r.push(Spoken(eventSlave, `when that extra little bit of metal slides inside ${him}. Please?"`));
+				} else if (eventSlave.dick > 0) {
+					r.push(Spoken(eventSlave, `"${Master}, may I have a tongue piercing? If I get to eat another girl out, I'd love to listen to her squeal when that little bit of metal scrapes against her. Please? Please?"`));
+				} else {
+					r.push(Spoken(eventSlave, `"${Master}, may I have a labia piercing? If I get to trib another girl, I'd love to`));
+					if (canSee(eventSlave)) {
+						r.push(Spoken(eventSlave, `see her face`));
+					} else {
+						r.push(Spoken(eventSlave, `feel her shudder`));
+					}
+					r.push(Spoken(eventSlave, `when that little bit of metal grinds against her. Please?"`));
+				}
+				r.push(`${He} shudders at the thought,`);
+				if (canSee(eventSlave)) {
+					r.push(`looking`);
+				} else {
+					r.push(`gazing`);
+				}
+				r.push(`at you hopefully.`);
+			} else if (eventSlave.fetish === "masochist") {
+				r.push(`bites ${his} lower lip, looking aroused.`);
+				if (eventSlave.dick > 0) {
+					r.push(Spoken(eventSlave, `"${Master}, may I have a dick piercing? Right th-through my cock. Oh f-fuck it would hurt. Please?"`));
+				} else {
+					r.push(Spoken(eventSlave, `"${Master}, may I have a pussy piercing? Right th-through me. Oh f-fuck it would hurt. Please?"`));
+				}
+				r.push(`${He} shivers at the thought,`);
+				if (canSee(eventSlave)) {
+					r.push(`looking`);
+				} else {
+					r.push(`gazing`);
+				}
+				r.push(`at you hopefully.`);
+			}
+		} else {
+			r.push(`bats ${his} eyes at you, and turns halfway to display ${his} boobs in profile.`,
+				Spoken(eventSlave, `"${Master}, may I have my nipples pierced? It's silly and girly, but I guess— I guess I'd like something silly and girly. Please?"`));
+			r.push(`${He} blushes prettily and`);
+			if (canSee(eventSlave)) {
+				r.push(`looks`);
+			} else {
+				r.push(`gazes`);
+			}
+			r.push(`at you hopefully.`);
+		}
+
+		App.Events.addParagraph(node, r);
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Perform it yourself`, perform),
+			new App.Events.Result(`${He}'s beautiful just the way ${he} is`, beautiful),
+			new App.Events.Result(`No, and slaves should not make requests of this kind`, no),
+		]);
+
+		function perform() {
+			const frag = document.createDocumentFragment();
+			r = [];
+			r.push(`You stand up from behind your desk and head towards the body modification studio,`);
+			if (canSee(eventSlave)) {
+				r.push(`crooking a finger at`);
+			} else {
+				r.push(`calling`);
+			}
+			r.push(`${him} as you as you go. ${He} follows bouncily, thanking you profusely, and then thanking you again when it becomes apparent to ${him} that you intend to do the body art yourself. ${He} snuggles into the chair, relaxing as the restraints bind ${him} in. They're not really necessary to modify a willing ${girl}, never mind one this enthusiastic, but they could possibly prevent ${him} from flinching, and it's not like ${he} resents being bound at this point.`);
+			App.Events.addParagraph(frag, r);
+			r = [];
+			r.push(`Manipulating the machine, you`);
+			if (eventSlave.fetishKnown === 1) {
+				if (eventSlave.fetish === "submissive") {
+					r.push(`place the first piercing, eliciting a hum of mild pain and abject submission from ${eventSlave.slaveName}. The piercing session goes on and on, with the slave sinking into a boneless, mindless state in which ${his} being is completely in your hands. ${He}'s almost sleepy when you finally release ${him}, but ${he} rises and`);
+					if (canSee(eventSlave)) {
+						r.push(`turns, craning around to see in the mirror.`);
+					} else {
+						r.push(`gingerly feeling around ${his} new piercings.`);
+					}
+					r.push(`${He} <span class="devotion inc">smiles devotedly,</span> and asks you when ${he}'ll be healed enough that ${he} can be laced up.`);
+					eventSlave.corsetPiercing = 1;
+				} else if (eventSlave.fetish === "cumslut") {
+					r.push(`hold ${his} mouth agape and place the first piercing. ${He} can't make much of a facial expression with ${his} mouth that wide, but there is a lewd`);
+					if (canSee(eventSlave)) {
+						r.push(`glint in ${his} eye`);
+					} else {
+						r.push(`look on ${his} face`);
+					}
+					r.push(`when ${he} realizes ${he}'s getting more than one. When you're done, ${he}'s sore enough that ${he} gestures ${his} thanks, <span class="devotion inc">smiling devotedly,</span> and begs you to try ${him} out when ${he}'s healed up.`);
+					eventSlave.tonguePiercing = 2;
+				} else if (eventSlave.fetish === "humiliation") {
+					r.push(`activate the ink gun, its low buzzing drawing a moan of anticipation out of ${eventSlave.slaveName}. Working at a touchscreen, you exercise your artistic talents, inscribing the slave's status as a sex object on ${his} forehead. The pain is intense, but ${he} tolerates it, the tears running fast out of the corners of ${his} eyes and low groans rising out of ${his} throat. When ${he}'s finally allowed to rise`);
+					if (canSee(eventSlave)) {
+						r.push(`and sees ${himself} in a mirror,`);
+					} else if (canHear(eventSlave)) {
+						r.push(`and listens intently on your descriptions of ${his} new face,`);
+					}
+					r.push(`${he} blushes furiously and cries harder, knowing that ${his} status as a humiliation slut is now permanent. This culmination of ${his} deeply perverse sense of self <span class="devotion inc">draws ${him} closer to you.</span>`);
+					eventSlave.lipsTat = "degradation";
+				} else if (eventSlave.fetish === "buttslut") {
+					r.push(`place a spreader to keep ${his} legs and cheeks apart and start piercing. ${He} whines with the pain, and then gasps when ${he} realizes that the piercing is going on much longer than ${he} expected. You give ${him} a couple of huge piercings below ${his} anus, big enough that ${he}'ll never be free of them rubbing against ${his} slutty butthole. Not done yet, you put some small, smooth studs around it, just to make sure nobody can possibly misunderstand where to fuck this bitch. ${He} gets up gingerly, but <span class="devotion inc">smiling sluttily.</span>`);
+					eventSlave.anusPiercing = 2;
+				} else if (eventSlave.fetish === "boobs") {
+					if (eventSlave.nipples.includes("inverted")) {
+						r.push(`use a couple of its actuators to stimulate ${his} nipples until they're almost all the way protruded, and then direct them to pull them out all the way. ${He} screams wholeheartedly at the pain, yelling on and on until ${he}'s out of breath and relaxes against the restraints, gasping and crying.`);
+					} else {
+						r.push(`use its actuators to pull ${his} nipples out as far as they will go, forcing a gasp of pain out of ${him}.`);
+					}
+					r.push(`${He} expects a simple nipple piercing, one for each boob; what ${he} gets is a set of heavy rings in each nipple. ${He}'s no masochist, so the pleasure will come later, but ${he} moans as ${he} feels the gradual addition of weight to ${his} nipples. ${He} rises very carefully, trying to keep ${his} boobs still, and <span class="devotion inc">smiles devotedly</span> at you. Soon enough, ${he}'ll be able to orgasm by walking.`);
+					eventSlave.nipplesPiercing = 2;
+				} else if (eventSlave.fetish === "pregnancy") {
+					if (eventSlave.belly >= 10001) {
+						r.push(`hold ${his} ${belly} stomach steady and pierce ${his} navel with the largest, heaviest ring available. There is a lewd`);
+						if (canSee(eventSlave)) {
+							r.push(`glint in ${his} eye`);
+						} else {
+							r.push(`look on ${his} face`);
+						}
+						r.push(`as ${he} feels the new weight settle against ${his} middle. ${He} rises very carefully, trying to keep ${his} new piercing from moving, and <span class="devotion inc">smiles devotedly</span> at you. Soon enough, all eyes will be on ${his} belly as ${he} waddles by.`);
+						eventSlave.navelPiercing = 2;
+					} else {
+						r.push(`activate the ink gun, its low buzzing drawing a moan of anticipation out of ${eventSlave.slaveName}. Working at a touchscreen, you exercise your artistic talents, beautifying ${his}`);
+						if (eventSlave.belly >= 150) {
+							r.push(`${belly} stomach`);
+						} else {
+							r.push(`abdomen`);
+						}
+						r.push(`with an inducement to fuck ${him}.`);
+						if (canSee(eventSlave)) {
+							if (eventSlave.belly >= 5000) {
+								r.push(`${He} can't see what you are inking into the underside of ${his} belly, but ${he} tries anyway.`);
+							} else {
+								r.push(`${He}'s just able to crane ${his} head enough to see the work, and eagerly watches.`);
+							}
+							r.push(`When you're done, ${he} stares at ${himself} for a long time,`);
+						} else {
+							r.push(`Once you finish ${his} new tattoo, you describe it to ${him} in detail. ${He} pauses for a moment,`);
+						}
+						r.push(`a curiously mixed expression on ${his} face. This is ${his} life now; it's permanently a part of ${him}, and <span class="devotion inc">${he} knows it.</span>`);
+						eventSlave.vaginaTat = "lewd crest";
+					}
+				} else if (eventSlave.fetish === "dom") {
+					r.push(`activate the ink gun, its low buzzing drawing a moan of anticipation out of ${eventSlave.slaveName}. Working at a touchscreen, you exercise your artistic talents, making the side of ${his} face fierce with tribal patterns. Tattooing over such thin and sensitive skin is intensely painful, but ${he} tolerates it, permitting nothing but a low and continuing growl to escape. ${He}'s obviously tired out by the pain when ${he}'s finally allowed to rise, but ${he}`);
+					if (canSee(eventSlave)) {
+						r.push(`looks at ${himself} in the mirror`);
+					} else if (canHear(eventSlave)) {
+						r.push(`listens to your description`);
+					} else {
+						r.push(`traces the design with ${his} fingertips`);
+					}
+					r.push(`with <span class="devotion inc">obvious approval.</span>`);
+					eventSlave.lipsTat = "tribal patterns";
+				} else if (eventSlave.fetish === "sadist") {
+					if (canAchieveErection(eventSlave)) {
+						r.push(`take hold of ${his} most intimate parts and put a set of massive piercings straight through ${his} shaft. ${He} shrieks with agony, the noise going on and on before diminishing into breathless sobbing. Much later, when ${he} gets gingerly up from the chair, ${he} doesn't look eager to stick ${his} cock in anything, but ${he}'s <span class="devotion inc">thankful enough.</span>`);
+						eventSlave.dickPiercing = 2;
+					} else if (eventSlave.dick > 0) {
+						r.push(`hold ${his} mouth agape and place the first piercing. ${He} can't make much of a facial expression with ${his} mouth that wide, but there is a lewd`);
+						if (canSee(eventSlave)) {
+							r.push(`glint in ${his} eye`);
+						} else {
+							r.push(`look on ${his} face`);
+						}
+						r.push(`when ${he} realizes ${he}'s getting more than one. When you're done, ${he}'s sore enough that ${he} gestures ${his} thanks, <span class="devotion inc">smiling devotedly;</span> ${he} looks eager to try out ${his} new piercing on a fresh pussy.`);
+						eventSlave.tonguePiercing = 2;
+					} else {
+						r.push(`take hold of ${his} most intimate parts and put a set of massive piercings straight through ${his} pussylips. ${He} shrieks with agony, the noise going on and on before diminishing into breathless sobbing. Much later, when ${he} gets gingerly up from the chair, ${he} doesn't look eager to trib anything, but ${he}'s <span class="devotion inc">thankful enough.</span>`);
+						eventSlave.vaginaPiercing = 2;
+					}
+				} else if (eventSlave.fetish === "masochist") {
+					r.push(`take hold of ${his} most intimate parts and put a series of massive piercing straight through ${his}`);
+					if (eventSlave.dick > 0) {
+						r.push(`shaft.`);
+						eventSlave.dickPiercing = 2;
+					} else {
+						r.push(`pussylips.`);
+						eventSlave.vaginaPiercing = 2;
+					}
+					r.push(`${He} shrieks with agony and then orgasms as strongly as you've ever seen a slave climax, ${his} every fiber tensing against the restraints. For a long, long time ${he} has to work to breathe, the overstimulation clearing slowly. When you finally let ${him} up, ${he} hasn't remembered how to talk yet, but ${his} gaze says it for ${him}. It looks like ${he}'s just had <span class="devotion inc">the best sex of ${his} life.</span>`);
+				}
+			} else {
+				if (eventSlave.nipples.includes("inverted")) {
+					r.push(`use a couple of its actuators to stimulate ${his} nipples until they're almost all the way protruded, and then direct them to pull them out all the way. ${He} screams wholeheartedly at the pain, yelling on and on until ${he}'s out of breath and relaxes against the restraints, gasping and crying.`);
+				} else {
+					r.push(`use its actuators to pull ${his} nipples out as far as they will go, forcing a gasp of pain out of ${him}.`);
+				}
+				r.push(`This done, you give ${him} a simple pair of barbell nipple piercings. The machine makes this take less time than it takes to describe it, and after a shocked squeal of pain ${he}'s released. ${He} rises carefully, trying to keep ${his} boobs still, and <span class="devotion inc">smiles thankfully</span> at you. ${He}`);
+				if (canSee(eventSlave)) {
+					r.push(`glances at ${himself} in the mirror,`);
+				} else {
+					r.push(`listens to your description of ${him},`);
+				}
+				r.push(`looking pleased.`);
+				eventSlave.nipplesPiercing = 1;
+			}
+			eventSlave.devotion += 5; // TODO: consider surgeryDamage
+			App.Events.addParagraph(frag, r);
+			return frag;
+		}
+
+		function beautiful() {
+			eventSlave.trust += 4;
+			return `You tell ${him} firmly that ${he}'s beautiful just the way ${he} is. ${He} blushes and giggles at the absurdly trite statement. You conclude the inspection, and ${he} continues on to the next item in ${his} life as a sex slave, <span class="trust inc">pleased and reassured</span> that you have a plan for what ${he} should look like.`;
+		}
+
+		function no(){
+			V.modRequestsAllowed = 0;
+			return `You tell ${him} firmly that you don't intend to apply body modifications to ${him}, your tone communicating that further requests on this subject are not permitted. ${He} understands clearly and looks a little crushed, but trusts that ${he} won't be punished for violating a rule you hadn't promulgated. You repair the oversight immediately, directing your personal assistant to spread notice that decisions about body modifications are yours alone.`;
+		}
+	}
+};
diff --git a/src/events/RESS/review/notMyName.js b/src/events/RESS/review/notMyName.js
index b1f120a24fd039d5de2a3d35bd5dce69e4637495..89aa4de530b83db9b9a22a13e4b37d4a1d5d4620 100644
--- a/src/events/RESS/review/notMyName.js
+++ b/src/events/RESS/review/notMyName.js
@@ -42,7 +42,7 @@ App.Events.RESSNotMyName = class RESSNotMyName extends App.Events.BaseEvent {
 		r.push(`is not yet broken to your will. With your experience with slaves, you've been expecting ${him} to take some opportunity of exercising ${his} remaining independence. You don't have long to wait. One day, you give ${him} inconsequential orders, naturally addressing ${him} by ${his} slave name, ${eventSlave.slaveName}. ${He} replies`);
 		if (eventSlave.lips > 70) {
 			r.push(`waspishly through ${his} dick-sucking lips,`);
-		} else if ((eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2)) {
+		} else if (eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2) {
 			r.push(`waspishly through ${his} heavily-pierced lips,`);
 		} else {
 			r.push(`waspishly,`);
@@ -87,7 +87,7 @@ App.Events.RESSNotMyName = class RESSNotMyName extends App.Events.BaseEvent {
 			r.push(`into ${his}`);
 			if (eventSlave.anus === 1) {
 				r.push(`poor little anus,`);
-			} else if ((eventSlave.anus === 2)) {
+			} else if (eventSlave.anus === 2) {
 				r.push(`whore's butt,`);
 			} else {
 				r.push(`gaping rear end,`);
@@ -140,11 +140,11 @@ App.Events.RESSNotMyName = class RESSNotMyName extends App.Events.BaseEvent {
 			r.push(`${eventSlave.slaveName} screams and begs when ${he} realizes what ${his} punishment is, but you are obdurate.`);
 			if (eventSlave.muscles > 30) {
 				r.push(`${His} powerful form has to be sedated for immurement in the arcade.`);
-			} else if ((eventSlave.weight >= 190)) {
+			} else if (eventSlave.weight >= 190) {
 				r.push(`${He} is so massively fat that immuring ${him} in the arcade is a struggle, even when ${he} isn't trying to.`);
 			} else if (eventSlave.belly >= 120000) {
 				r.push(`${He} is so enormously gravid that immuring ${him} in the arcade is a hassle, even though ${his} ${belly} middle limits ${his} ability to struggle.`);
-			} else if ((eventSlave.weight >= -10)) {
+			} else if (eventSlave.weight >= -10) {
 				r.push(`${His} desperate struggles make immuring ${him} in the arcade difficult.`);
 			} else if (eventSlave.belly >= 1500) {
 				r.push(`${His}`);
diff --git a/src/events/RESS/review/resistantAnalVirgin.js b/src/events/RESS/review/resistantAnalVirgin.js
new file mode 100644
index 0000000000000000000000000000000000000000..6f8cde7fe1df5765d37c3fd03476fa8d5bf8ed2a
--- /dev/null
+++ b/src/events/RESS/review/resistantAnalVirgin.js
@@ -0,0 +1,200 @@
+App.Events.RESSResistantAnalVirgin = class RESSResistantAnalVirgin extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return []; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				s => s.devotion < -20,
+				s => s.trust >= -20,
+				s => s.anus === 0,
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			His, He, he, his, him, himself
+		} = getPronouns(eventSlave);
+		const {title: Master} = getEnunciation(eventSlave);
+		const PC = V.PC;
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave);
+
+		let r = [];
+		r.push(
+			App.UI.DOM.slaveDescriptionDialog(eventSlave),
+			`has never had anything significant up ${his} ass. Living in ${V.arcologies[0].name}, ${he} can't have missed that anal sex is a part of most slaves' lives. ${He}`
+		);
+		if (canSee(eventSlave)) {
+			r.push(`witnesses`);
+		} else if (canHear(eventSlave)) {
+			r.push(`hears`);
+		} else {
+			r.push(`thinks about`);
+		}
+		r.push(`sodomy several times a day, at least.`);
+		App.Events.addParagraph(node, r);
+
+		r = [];
+		r.push(`Lately, you've noticed that ${he} reacts to these`);
+		if (canSee(eventSlave)) {
+			r.push(`sights`);
+		} else if (canHear(eventSlave)) {
+			r.push(`sounds`);
+		} else {
+			r.push(`thoughts`);
+		}
+		r.push(`with a well-concealed flash of apprehension. It seems ${he}'s figured out that ${he} will probably be required to take it up ${his} little`);
+		if (V.seeRace === 1) {
+			r.push(eventSlave.race);
+		}
+		r.push(`butt someday, and isn't enthusiastic about the prospect. You could probably exploit this.`);
+
+		App.Events.addParagraph(node, r);
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Let ${him} earn continued anal virginity`, earn),
+			hasAnyLegs(eventSlave)
+				? new App.Events.Result(`Force ${him} to degrade ${himself}`, force, `This option will take ${his} anal virginity`)
+				: new App.Events.Result(),
+			eventSlave.vagina === 0
+				? new App.Events.Result(`Make ${him} choose between ${his} virginities`, choose, `This option will take one of ${his} virginities`)
+				: new App.Events.Result()
+		]);
+
+		function earn() {
+			r = [];
+			r.push(`You tell ${him} ${he}'s a sex slave, and that ${he} needs to learn how to take a dick up the ass.`);
+			if (!canTalk(eventSlave) && hasAnyArms(eventSlave)) {
+				r.push(`${He} frantically begs with gestures, pleading`);
+				if (hasBothLegs(eventSlave)) {
+					r.push(`on ${his} knees.`);
+				} else {
+					r.push(`desperately.`);
+				}
+			} else if (!canTalk(eventSlave)) {
+				r.push(`${He} frantically mouths pleas that you leave ${his} butt alone.`);
+			} else {
+				r.push(
+					`${He} begs,`,
+					Spoken(eventSlave, `"Please no, ${Master}, please don't rape me in my ass, ${Master}!"`)
+				);
+			}
+			r.push(`You make a show of considering, and then tell ${him} that if ${he}'s extra obedient, you might let ${him} keep ${his} butt — for now. You tell ${him} to`);
+			if (PC.dick !== 0) {
+				r.push(`blow you`);
+				if (PC.vagina !== -1) {
+					r.push(`and`);
+				}
+			}
+			if (PC.vagina !== -1) {
+				r.push(`lick your pussy`);
+			}
+			r.push(r.pop() + `, and ${he} does with unusual obedience. When ${he}'s done, you bend down and whisper in ${his} ear that if ${he} shows any sign of rebelliousness, you'll ruin ${his} little asshole. <span class="trust dec">${He}'s terrified.</span>`);
+			eventSlave.trust -= 5;
+			seX(eventSlave, "oral", PC, "penetrative");
+			return r;
+		}
+
+		function force() {
+			r = [];
+			r.push(`Suction cup dildos are terribly useful. You place a moderate-sized one on a low table in your office,`);
+			if (eventSlave.chastityAnus) {
+				r.push(`unlock ${his} chastity belt,`);
+			}
+			r.push(`and order ${him} to squat down on it and fuck ${his} own asshole. ${He} hesitates, incredulous, and finds ${himself} bound to the couch and thoroughly whipped. It isn't a sexual whipping, either, but a methodical and scientific administration of pain right up to the border of damage. When ${he}'s been reduced to a state of abject, sobbing surrender, you free ${him} and repeat your orders as though nothing had happened. Still crying, ${he} hobbles over and up onto the table,`);
+			if (eventSlave.belly >= 300000 || eventSlave.weight > 190) {
+				r.push(`struggles to line ${himself} up, and finds it slammed into ${his} asshole when the table gives out under ${his}`);
+				if (eventSlave.belly >= 300000) {
+					r.push(`gravid`);
+				}
+				r.push(`weight. You leave ${him} there to struggle with the dildo wedged in ${his} rear until ${he} finally manages to pop it free from the table fragment stuck under mass and roll over. You haul ${him} onto`);
+			} else {
+				if (eventSlave.belly > 20) {
+					r.push(`gingerly lowers ${his}`);
+					if (eventSlave.bellyPreg >= 3000) {
+						r.push(`pregnant`);
+					}
+					r.push(`bulk onto it,`);
+				}
+				r.push(`and fucks ${his} little ass open on the dildo. You keep ${him} up there until ${his} legs give out`);
+				if (eventSlave.belly >= 10000 || eventSlave.weight > 190) {
+					r.push(`and ${his}`);
+					if (eventSlave.bellyPreg >= 3000) {
+						r.push(`gravid`);
+					}
+					r.push(`weight pins ${him} on the toy;`);
+				} else {
+					r.push(r.pop() + `, and`);
+				}
+				r.push(`then let ${him} lie down on`);
+			}
+			r.push(`the couch, telling ${him} to keep working the dildo with ${his} ${hasBothArms(eventSlave) ? "hands" : "hand"} or suffer another whipping. After ${he}'s had ${his} ass filled for a good while, ${he} has no trouble taking a`);
+			if (PC.dick === 0) {
+				r.push(`strap-on`);
+			} else {
+				r.push(`real dick`);
+			}
+			r.push(`for the first time, and is by this point too exhausted to do anything but lie there and be a good little anal slave. <span class="gold">${He} fears you,</span> and <span class="lime">${his} butthole has been broken in.</span>`);
+			eventSlave.trust -= 5;
+			eventSlave.anus = 1;
+			r.push(VCheck.Anal(eventSlave, 1));
+			return r;
+		}
+
+		function choose() {
+			r = [];
+			r.push(`You tell ${him} ${he}'s a sex slave, and that ${he} needs to learn how to take a dick up the ass.`);
+			if (!canTalk(eventSlave) && hasAnyArms(eventSlave)) {
+				r.push(`${He} frantically begs with gestures, pleading`);
+				if (hasBothLegs(eventSlave)) {
+					r.push(`on ${his} knees.`);
+				} else {
+					r.push(`desperately.`);
+				}
+			} else if (!canTalk(eventSlave)) {
+				r.push(`${He} frantically mouths pleas that you leave ${his} butt alone.`);
+			} else {
+				r.push(
+					`${He} begs,`,
+					Spoken(eventSlave, `"Please no, ${Master}, please don't rape me in my ass, ${Master}!"`)
+				);
+			}
+			r.push(`You make a show of considering, and then tell ${him} you know a way ${he} can continue being an anal virgin — for now. You want a new hole to play with, and ${he} has two untouched holes. ${He} gasps when ${he} realizes what you want. ${He} hesitates to answer, uncertain of which ${he} values more, and finds ${himself} bound to the couch`);
+			if (eventSlave.chastityAnus) {
+				r.push(r.pop() + `, stripped of ${his} chastity,`);
+			}
+			r.push(`and thoroughly whipped. It isn't a sexual whipping, either, but a methodical and scientific administration of pain right up to the border of damage. When ${he}'s been reduced to a state of abject, sobbing surrender, you free ${him} and repeat your orders as though nothing had happened. Still crying, ${he} prostrates ${himself} and`);
+			if (eventSlave.trust < 20) {
+				r.push(`spreads ${his} butt for you.`);
+			} else {
+				r.push(`${his} pussylips for you.`);
+			}
+			r.push(`You callously ram a dildo into ${his} fresh hole and tell ${him} to keep working ${himself} with it or suffer another whipping. After ${he}'s fucked ${himself} for a good while, ${he} has no trouble taking a`);
+			if (PC.dick === 0) {
+				r.push(`strap-on`);
+			} else {
+				r.push(`real dick`);
+			}
+			r.push(`for the first time, and is by this point too exhausted to do anything but lie there and take it a good little slave. <span class="trust dec">${He} fears you</span> but <span class="devotion inc">loses ${himself} to your rule.</span>`);
+			if (eventSlave.trust < 20) {
+				r.push(`<span class="virginity loss">${His} butthole has been broken in.</span>`);
+				eventSlave.anus = 1;
+				r.push(VCheck.Anal(eventSlave, 1));
+			} else {
+				r.push(`<span class="virginity loss">${His} pussy has been broken in.</span>`);
+				eventSlave.vagina = 1;
+				r.push(VCheck.Vaginal(eventSlave, 1));
+			}
+			eventSlave.trust -= 5;
+			eventSlave.devotion += 3;
+			return r;
+		}
+	}
+};
diff --git a/src/events/RESS/review/resistantShower.js b/src/events/RESS/review/resistantShower.js
index 71e987ebe7f21684cee966b45ad83f7d02591eb2..39d6ce96b798b277f447e194819a964040c3c136 100644
--- a/src/events/RESS/review/resistantShower.js
+++ b/src/events/RESS/review/resistantShower.js
@@ -140,7 +140,7 @@ App.Events.RESSResistantShower = class RESSResistantShower extends App.Events.Ba
 				r.push(Spoken(eventSlave, `"Sorry, ${Master}. I just h-hate cocks. I don't want to see another one, ever again."`));
 			} else if ((eventSlave.sexualFlaw === "idealistic") && (eventSlave.counter.oral + eventSlave.counter.anal + eventSlave.counter.vaginal + eventSlave.counter.mammary > 0)) {
 				r.push(Spoken(eventSlave, `"I feel like I'm going crazy, ${Master}. No one here seems to know that rape is wrong. Th-they just r-rape me."`));
-			} else if ((eventSlave.sexualFlaw === "shamefast")) {
+			} else if (eventSlave.sexualFlaw === "shamefast") {
 				r.push(Spoken(eventSlave, `"I want to cover myself so badly, ${Master}. I'm so embarrassed all the time. I'm so tired of being embarrassed."`));
 			} else if ((eventSlave.sexualFlaw === "repressed") && (eventSlave.counter.oral + eventSlave.counter.anal + eventSlave.counter.vaginal + eventSlave.counter.mammary > 0)) {
 				r.push(Spoken(eventSlave, `"I'm filthy, ${Master}. I've been used, and I can't ever be clean again. I'm a d-dirty, sinful whore."`));
diff --git a/src/events/RESS/review/restrictedProfession.js b/src/events/RESS/review/restrictedProfession.js
new file mode 100644
index 0000000000000000000000000000000000000000..4fe3ab81606827086436afaf968347d44e4a51f8
--- /dev/null
+++ b/src/events/RESS/review/restrictedProfession.js
@@ -0,0 +1,182 @@
+App.Events.RESSRestrictedProfession = class RESSRestrictedProfession extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return []; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				canTalk,
+				s => s.assignment !== Job.QUARTER,
+				s => s.rules.speech === "restrictive",
+				s => s.devotion > 60,
+				s => s.trust >= -20,
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			His, He, he, his, him, himself
+		} = getPronouns(eventSlave);
+		const {title: Master} = getEnunciation(eventSlave);
+		const belly = bellyAdjective(eventSlave);
+		const PC = V.PC;
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave, "no clothing");
+
+		let r = [];
+		r.push(
+			App.UI.DOM.slaveDescriptionDialog(eventSlave),
+			`is`
+		);
+		if (!hasAnyLegs(eventSlave)) {
+			r.push(`sitting`);
+			if (hasAnyArms(eventSlave)) {
+				r.push(`helplessly`);
+			} else {
+				r.push(`limblessly`);
+			}
+		} else if (!canWalk(eventSlave)) {
+			r.push(`kneeling`);
+		} else {
+			r.push(`standing`);
+		}
+		r.push(`before your desk for ${his} regular inspection. ${He} is studiously observing the letter of the rule against speaking, and is doing ${his} best to make your inspection as efficient as possible. ${His} desire to please radiates off ${him} in almost palpable waves. ${He} obviously wants to communicate something to you, but can't do it without breaking the rules.`);
+
+		App.Events.addParagraph(node, r);
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Let ${him} speak briefly if ${he}'s very quiet`, briefly),
+			new App.Events.Result(`Make ${him} say it in public`, make),
+			new App.Events.Result(`Keep ${him} quiet but spend some time with ${him}`, quiet),
+		]);
+
+		function briefly() {
+			r = [];
+			r.push(`You stand up from your desk and approach ${him} very closely without touching ${him}. Looking straight`);
+			if (hasAnyEyes(eventSlave)) {
+				r.push(`into ${his} ${hasBothEyes(eventSlave) ? "eyes" : "eye"},`);
+				r.push(`which are`);
+				if (canSee(eventSlave)) {
+					r.push(`fixed helplessly on you,`);
+				} else {
+					r.push(`gazing in your general direction,`);
+				}
+			} else {
+				r.push(`at ${him},`);
+			}
+			r.push(`you tell ${him} that you'll let ${him} say whatever it is ${he} needs to say to you, but only if ${he}'s very quiet. ${He}`);
+			if (canSee(eventSlave)) {
+				r.push(`looks at you with huge eyes but`);
+			}
+			r.push(`nods vigorously. ${He} waits until you lean into ${him}, making ${him} shiver at your proximity, before putting ${his}`);
+			if (eventSlave.lips > 70) {
+				r.push(`ridiculous`);
+			} else if (eventSlave.lips > 40) {
+				r.push(`enormous`);
+			} else if (eventSlave.lips > 20) {
+				r.push(`pillowlike`);
+			} else {
+				r.push(`girlish`);
+			}
+			r.push(`lips next to your ear and whispering nervously, "I love you, ${Master}." ${He} recoils a little as if burned by the audacity of ${his} words, but only manages to back off a little before you gather ${his}`);
+			if (isAmputee(eventSlave)) {
+				r.push(`limbless`);
+			} else if (eventSlave.bellyPreg >= 1500) {
+				r.push(`gravid`);
+			} else if (eventSlave.belly >= 1500) {
+				r.push(belly);
+			} else {
+				r.push(`rocking`);
+			}
+			r.push(`torso into your arms, holding the back of ${his} head with one hand and rubbing ${his} quivering back with the other. Eventually, ${he} relaxes into`);
+			if (PC.boobs >= 300) {
+				if (PC.boobsImplant !== 0) {
+					r.push(`your fake breasts,`);
+				} else {
+					r.push(`your soft chest,`);
+				}
+			} else {
+				r.push(`you,`);
+			}
+			r.push(`knowing that ${his} ${getWrittenTitle(eventSlave)} can never and will never reciprocate, but <span class="devotion inc">accepting</span> that the loving physical contact is a tremendously kind gesture for a master to make.`);
+			eventSlave.devotion += 4;
+			return r;
+		}
+
+		function make() {
+			r = [];
+			r.push(`Since you suspect you know what it is ${he} wants to say, you`);
+			if (!hasAnyLegs(eventSlave)) {
+				r.push(`carry ${him} out`);
+			} else if (hasAnyArms(eventSlave)) {
+				r.push(`lead ${him} by the hand`);
+			} else {
+				r.push(`have ${him} follow you`);
+			}
+			r.push(`onto the club, busy with citizens. You tell ${him} quietly that ${he}'s to shout whatever it is ${he} wanted to say, if it's something everyone should hear; otherwise ${he}'s to keep it to ${himself}. ${He}`);
+			if (canSee(eventSlave)) {
+				r.push(`looks around`);
+			} else if (canHear(eventSlave)) {
+				r.push(`listens`);
+			} else {
+				r.push(`opens ${his} mouth`);
+			}
+			r.push(`nervously, ${his} ${eventSlave.skin} skin betraying a growing blush, before clearing ${his} throat twice, licking ${his} lips, and howling "I LOVE MY ${Master.toUpperCase()}" at the tops of ${his} lungs. When this is out of ${him} ${he} collapses a little, as though the pressure of holding it inside were propping ${him} up. This attracted a considerable amount of attention, almost all of it <span class="reputation inc">positive,</span> with many passersby laughing at the fun, and your fellow slaveowners giving you discreet winks and quiet congratulations.`);
+			repX(750, "event", eventSlave);
+			return r;
+		}
+
+		function quiet() {
+			r = [];
+			r.push(`You announce that you're finished with business for the day, and feel like some quiet time. ${He} cannot keep`);
+			if (canSee(eventSlave)) {
+				r.push(`a gleam of humor out of ${his} eye`);
+			} else {
+				r.push(`the corners of ${his} lips from rising slightly`);
+			}
+			r.push(`at`);
+			if (canHear(eventSlave)) {
+				r.push(`hearing`);
+			} else {
+				r.push(`the phrase`);
+			}
+			r.push(`'quiet time,' and ${he}`);
+			if (!hasAnyLegs(eventSlave)) {
+				r.push(`presents ${himself} to be carried`);
+			} else {
+				r.push(`follows you`);
+			}
+			r.push(`happily enough. When ${he}`);
+			if (canSee(eventSlave)) {
+				r.push(`sees`);
+			} else {
+				r.push(`realizes`);
+			}
+			r.push(`you're headed to your bedroom ${he} begins to anticipate ${his} ${getWrittenTitle(eventSlave)}'s`);
+			if (PC.dick === 0) {
+				r.push(`strap-on,`);
+			} else {
+				r.push(`cock,`);
+			}
+			r.push(`but is surprised to find that instead of using ${him} you simply`);
+			if (isAmputee(eventSlave)) {
+				r.push(`place ${him} in bed and curl up around ${his} limbless torso.`);
+			} else if (eventSlave.bellyPreg >= 5000) {
+				r.push(`help ${him} into bed and curl up with ${him}, your arms encircling ${his} prominent baby bump.`);
+			} else if (eventSlave.belly >= 5000) {
+				r.push(`help ${him} into bed and curl up with ${him}, your arms encircling ${his} ${belly} dome of a middle.`);
+			} else {
+				r.push(`climb into bed and pull ${him} under the sheets with you.`);
+			}
+			r.push(`${He}'s almost disappointed, but after looking into your resting face for a while, nestles ${his} head onto your broad chest and goes to sleep with a <span class="devotion inc">look of contentment</span> on ${his} face. When the two of you wake from your brief nap, you ask ${him} if ${he} has anything else to communicate to you. ${He} smiles sleepily and shakes ${his} head no.`);
+			eventSlave.devotion += 4;
+			return r;
+		}
+	}
+};
diff --git a/src/events/RESS/review/servantMaid.js b/src/events/RESS/review/servantMaid.js
index 30905cc0f19c77becf9872278e63a7b983905346..482d2cb3cec9e80af8fb382216266142551ec6e0 100644
--- a/src/events/RESS/review/servantMaid.js
+++ b/src/events/RESS/review/servantMaid.js
@@ -63,7 +63,7 @@ App.Events.RESSServantMaid = class RESSServantMaid extends App.Events.BaseEvent
 					r.push(`${His} pussy is visibly soaked, ironically staining the flimsy skirt of ${his} uniform as ${he} cleans your office.`);
 				}
 			}
-		} else if ((eventSlave.clothes === "a nice maid outfit")) {
+		} else if (eventSlave.clothes === "a nice maid outfit") {
 			r.push(`${His} maid uniform is fairly demure for a sex slave and makes some effort to conceal ${his} form from prying eyes, even whilst presenting an image of servitude and obedience that a classic maids' ensemble embodies so well. ${His} dress is fairly conservative, enveloping ${his} breasts in intricate lace and cloth. Likewise, ${his} apron is more than ornamental, ${eventSlave.slaveName} having stuffed it with cleaning materials and tools.`);
 			if (getLimbCount(eventSlave, 102) > 2) {
 				r.push(`Although ${his} movements rarely stray from a slight flick of ${his} wrist as ${he} dusts some surface or a gyration of ${his} body as ${he} scrubs the floor clean, ${his} P-Limbs nonetheless produce a steady stream of minute machine noises. They give ${him} the coordination ${he} needs to purge even the smallest of stains, but the multitude of gyros, servos, and other mechanical pieces constantly working to maintain it ensure that the process is far from silent.`);
diff --git a/src/events/RESS/review/soreAss.js b/src/events/RESS/review/soreAss.js
index 471ef7f471a691384e7193fbddef147acf9d7cfe..3f3932a1be7407ad514bfc96af7a3f4307ca94e5 100644
--- a/src/events/RESS/review/soreAss.js
+++ b/src/events/RESS/review/soreAss.js
@@ -34,9 +34,9 @@ App.Events.RESSSoreAss = class RESSSoreAss extends App.Events.BaseEvent {
 
 		if (!hasAnyLegs(eventSlave)) {
 			r.push(`scooting ${himself} from side to side uncomfortably,`);
-		} else if ((eventSlave.heels === 1 && shoeHeelCategory(eventSlave) === 0)) {
+		} else if (eventSlave.heels === 1 && shoeHeelCategory(eventSlave) === 0) {
 			r.push(`crawling gingerly,`);
-		} else if ((shoeHeelCategory(eventSlave) > 1)) {
+		} else if (shoeHeelCategory(eventSlave) > 1) {
 			r.push(`tottering along painfully,`);
 		} else {
 			r.push(`walking a little funny,`);
diff --git a/src/events/RESS/review/trustingHG.js b/src/events/RESS/review/trustingHG.js
new file mode 100644
index 0000000000000000000000000000000000000000..f21b3148bce8e0dad01ec0775706aa9d7d6b6f4f
--- /dev/null
+++ b/src/events/RESS/review/trustingHG.js
@@ -0,0 +1,356 @@
+App.Events.RESSTrustingHG = class RESSTrustingHG extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return []; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				hasAnyLegs,
+				canTalk,
+				s => s.trust > 50,
+				s => s.assignment === Job.HEADGIRL, // removed condition V.HeadgirlID !== 0 and eventSlave.ID === V.HeadgirlID during conversion
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			His, He, he, his, him, himself, girl, hers
+		} = getPronouns(eventSlave);
+		const {title: Master} = getEnunciation(eventSlave);
+		const belly = bellyAdjective(eventSlave);
+		const PC = V.PC;
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave, "no clothing");
+
+		let r = [];
+		r.push(
+			App.UI.DOM.slaveDescriptionDialog(eventSlave),
+			`is a busy ${girl}. Your Head Girl is heading for bed, but ${he}'s not done with the day's work just yet. ${He} walks into your office with a pensive look on ${his} face, using a tablet to fiddle with slaves' schedules for tomorrow. Since ${he} was about to retire, ${he}'s nude: you can't help but notice, in the dimmed light of nighttime in your penthouse, the way the low glow of the tablet`
+		);
+		if (eventSlave.boobs > 5000) {
+			r.push(`falls across the tops of ${his} absurd boobs, since ${he}'s forced to hold it on top of them to use it.`);
+		} else if (eventSlave.belly >= 10000) {
+			r.push(`falls across the top of ${his} ${belly}, tautly `);
+			if (eventSlave.belly >= 3000) {
+				r.push(`pregnant`);
+			} else {
+				r.push(`swollen`);
+			}
+			r.push(` belly.`);
+		} else if (!(eventSlave.chastityPenis) && canAchieveErection(eventSlave)) {
+			if (eventSlave.dick > 4) {
+				r.push(`makes ${his} perpetual, formidable erection cast a shadow.`);
+			} else if (eventSlave.dick > 2) {
+				r.push(`catches the head of ${his} stiffly erect dick.`);
+			} else {
+				r.push(`highlights ${his} stiff little girldick.`);
+			}
+		} else if (eventSlave.nipples === "huge") {
+			r.push(`throws a shadow off each of ${his} massive nipples and down the lower halves of ${his} boobs.`);
+		} else if (eventSlave.belly >= 1500) {
+			r.push(`makes ${his} rounded middle cast a shadow.`);
+		} else if (eventSlave.muscles > 95) {
+			r.push(`gives extra definition to ${his} glorious muscles.`);
+		} else if (eventSlave.weight > 95) {
+			r.push(`highlights ${his} soft belly.`);
+		} else if (eventSlave.dick > 0) {
+			r.push(`rests on the base of ${his} soft cock.`);
+		} else if (eventSlave.weight > 10) {
+			r.push(`flatters ${his} soft body.`);
+		} else {
+			r.push(`flatters ${him}.`);
+		}
+		App.Events.addParagraph(node, r);
+
+		r = [];
+		r.push(
+			`${He} did not expect to find you here, and is so preoccupied that ${he} doesn't notice you right away. When ${he} does, ${he} smiles.`,
+			Spoken(eventSlave, `"Good evening,`)
+		);
+		if (V.HGFormality === 1) {
+			r.push(Spoken(eventSlave, `${Master},"`));
+			r.push(`${he} murmurs properly, and keeps working. Only a slight blush, barely detectable in the low light, betrays ${his} consternation at not greeting you immediately.`);
+		} else if (eventSlave.trust > 95) {
+			if (PC.customTitle) {
+				if (SlaveStatsChecker.checkForLisp(eventSlave)) {
+					r.push(`${PC.customTitleLisp},"`);
+				} else {
+					r.push(`${PC.customTitle},"`);
+				}
+			} else if (PC.title !== 0) {
+				r.push(Spoken(eventSlave, `Sir,"`));
+			} else {
+				r.push(Spoken(eventSlave, `Ma'am,"`));
+			}
+			r.push(`${he} murmurs. Even in the dim light, you perceive a slight blush of pleasure from ${him} as ${he} savors the status of being allowed to call you that. ${He} goes back to working with a little smile still playing across ${his} lips.`);
+		} else {
+			r.push(`um,`);
+			if (PC.customTitle) {
+				if (SlaveStatsChecker.checkForLisp(eventSlave)) {
+					r.push(`${PC.customTitleLisp},"`);
+				} else {
+					r.push(`${PC.customTitle},"`);
+				}
+			} else if (PC.title !== 0) {
+				r.push(Spoken(eventSlave, `S-sir,"`));
+			} else {
+				r.push(`M-ma'am,"`);
+			}
+			r.push(`${he} stammers hesitantly. ${He} isn't comfortable with your permission to be less formal in private, and blushes furiously at ${his} awkwardness. ${He} takes refuge in ${his} tablet.`);
+		}
+
+		App.Events.addParagraph(node, r);
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Commend ${his} service`, commend),
+			new App.Events.Result(`Share some refreshments with ${him}`, share),
+		]);
+
+		function commend() {
+			let frag = document.createDocumentFragment();
+			r = [];
+			r.push(`You clear your throat and compliment ${him}, commending ${his} work ethic, trustworthiness, and loyalty. ${He} blushes much harder as ${he} understands. "Thank you,`);
+			if (V.HGFormality === 1) {
+				r.push(`${Master}!"`);
+			} else {
+				if (PC.customTitle) {
+					if (SlaveStatsChecker.checkForLisp(eventSlave)) {
+						r.push(`${PC.customTitleLisp}!"`);
+					} else {
+						r.push(`${PC.customTitle}!"`);
+					}
+				} else if (PC.title !== 0) {
+					r.push(Spoken(eventSlave, `Sir!"`));
+				} else {
+					r.push(Spoken(eventSlave, `Ma'am!"`));
+				}
+			}
+			r.push(
+				`${he} says fervently, and gestures at the tablet.`,
+				Spoken(eventSlave, `"I've noticed a couple of the slaves working better together recently, so I'm making some minor adjustments to give them more shifts together."`)
+			);
+			App.Events.addParagraph(frag, r);
+
+			r = [];
+			r.push(`You're sure ${he}'ll do ${his} best, and you tell ${him} so. ${He} thanks you again, and you both go back to your work. Though your Head Girl continues manipulating ${his} tablet diligently, ${he} can't seem to stop ${himself} from <span class="hotpink">stealing the occasional glance at you.</span> ${His} ${App.Desc.eyesColor(eventSlave)}, dark in the dimness of the office, seem to have an unaccountable sheen.`);
+			if (V.assistant.personality !== 0) {
+				const {
+					heA, hisA, girlA, himselfA, loliA
+				} = getPronouns(assistant.pronouns().main).appendSuffix("A");
+				r.push(`${capFirstChar(V.assistant.name)}'s ${V.assistant.appearance} avatar appears on your desktop, glowing brightly, and ruins the moment. "${eventSlave.slaveName} loooves ${his} `);
+				if (PC.customTitle) {
+					r.push(`${PC.customTitle},`);
+				} else if (PC.title !== 0) {
+					r.push(`Maaaster,`);
+				} else {
+					r.push(`Miiistress,`);
+				}
+				r.push(`"${heA} taunts,`);
+				switch (V.assistant.appearance) {
+					case "monstergirl":
+						r.push(`${hisA} hair forming a heart shape.`);
+						break;
+					case "shemale":
+						r.push(`using ${hisA} hands to make a heart shape over ${hisA} balls.`);
+						break;
+					case "amazon":
+						r.push(`grinning far more sweetly than ${hisA} muscular form should be able to manage.`);
+						break;
+					case "businesswoman":
+						r.push(`though ${heA}'s blushing ${himselfA}.`);
+						break;
+					case "cherub":
+					case "fairy":
+					case "pregnant fairy":
+						r.push(`flitting around and giggling excitedly.`);
+						break;
+					case "goddess":
+						r.push(`massaging ${hisA} pregnant belly meaningfully.`);
+						break;
+					case "hypergoddess":
+						r.push(`massaging ${hisA} squirming pregnant belly meaningfully.`);
+						break;
+					case "loli":
+						r.push(`giggling playfully.`);
+						break;
+					case "preggololi":
+						r.push(`giggling playfully, though ${hisA} hands have wandered to ${hisA} crotch.`);
+						break;
+					case "angel":
+						r.push(`using ${hisA} hands to make a heart shape.`);
+						break;
+					case "incubus":
+						r.push(`using ${hisA} hands to make a heart shape around ${hisA} erection as ${heA} thrusts.`);
+						break;
+					case "succubus":
+						if (PC.dick !== 0) {
+							r.push(`forms an "O" with ${hisA} lips and makes exaggerated head bobbing motions.`);
+						} else {
+							r.push(`forms a "V" with ${hisA} fingers and wiggles ${hisA} tongue in it.`);
+						}
+						break;
+					case "imp":
+						r.push(`flapping around and cackling manically.`);
+						break;
+					case "witch":
+						r.push(`while holding out a mostly empty vial of love potion.`);
+						break;
+					case "ERROR_1606_APPEARANCE_FILE_CORRUPT":
+						r.push(`forming half of ${himselfA} into an enormous pussy, the other into a giant dick, and introducing the two to each other.`);
+						break;
+					case "schoolgirl":
+						r.push(`the very picture of a malicious school${girlA}.`);
+						break;
+					default:
+						r.push(`turning ${hisA} avatar a throbbing pink.`);
+				}
+				App.Events.addParagraph(frag, r);
+				r = [];
+				r.push(
+					`Your Head Girl turns a darker shade of red.`,
+					Spoken(eventSlave, `"Oh, shut up, you little`)
+				);
+				switch (V.assistant.appearance) {
+					case "monstergirl":
+						r.push(Spoken(eventSlave, `monster,"`));
+						break;
+					case "shemale":
+						r.push(Spoken(eventSlave, `cockmonster,"`));
+						break;
+					case "amazon":
+						r.push(Spoken(eventSlave, `dyke,"`));
+						break;
+					case "businesswoman":
+						r.push(Spoken(eventSlave, `witch,"`));
+						break;
+					case "fairy":
+					case "pregnant fairy":
+						r.push(Spoken(eventSlave, `mosquito,"`));
+						break;
+					case "goddess":
+					case "hypergoddess":
+						r.push(Spoken(eventSlave, `cow,"`));
+						break;
+					case "loli":
+						r.push(Spoken(eventSlave, `midget,"`));
+						break;
+					case "preggololi":
+						r.push(Spoken(eventSlave, `slut ${loliA},"`));
+						break;
+					case "angel":
+						r.push(Spoken(eventSlave, `turkey,"`));
+						break;
+					case "cherub":
+						r.push(Spoken(eventSlave, `dove,"`));
+						break;
+					case "incubus":
+						r.push(Spoken(eventSlave, `dick,"`));
+						break;
+					case "succubus":
+						r.push(Spoken(eventSlave, `cunt,"`));
+						break;
+					case "imp":
+						r.push(Spoken(eventSlave, `bat,"`));
+						break;
+					case "witch":
+						r.push(Spoken(eventSlave, `blunderer,"`));
+						break;
+					case "ERROR_1606_APPEARANCE_FILE_CORRUPT":
+						r.push(Spoken(eventSlave, `shapeshifter,"`));
+						break;
+					case "schoolgirl":
+						r.push(Spoken(eventSlave, `slut,"`));
+						break;
+					default:
+						r.push(Spoken(eventSlave, `toaster,"`));
+				}
+				r.push(`${he} says cattily, but ${he} smiles as well.`);
+			}
+			eventSlave.devotion += 4;
+			App.Events.addParagraph(frag, r);
+			return frag;
+		}
+
+		function share() {
+			let frag = document.createDocumentFragment();
+			r = [];
+			r.push(`You reach into the back of your desk, where your private reserves are, and wordlessly offer ${him} a`);
+			if (PC.refreshmentType === 0) { // TODO: consider making this a global function since it's used in multiple events
+				r.push(`${PC.refreshment}.`);
+			} else if (PC.refreshmentType === 1) {
+				r.push(`glass of ${PC.refreshment}.`);
+			} else if (PC.refreshmentType === 2) {
+				r.push(`plate of ${PC.refreshment}.`);
+			} else if (PC.refreshmentType === 3) {
+				r.push(`line of ${PC.refreshment}.`);
+			} else if (PC.refreshmentType === 4) {
+				r.push(`syringe of ${PC.refreshment}.`);
+			} else if (PC.refreshmentType === 5) {
+				r.push(`pill of ${PC.refreshment}.`);
+			} else if (PC.refreshmentType === 6) {
+				r.push(`tab of ${PC.refreshment}.`);
+			}
+			r.push(`${He} stares at you disbelievingly for a moment before stammering ${his} thanks and accepting it with both hands. ${He} holds it uncertainly, watching you get one yourself.`);
+			App.Events.addParagraph(frag, r);
+			r = [];
+			r.push(`${He} is first among your slaves, but ${he} is still very much a slave. ${He} neither receives nor expects`);
+			if (PC.refreshmentType === 0) {
+				r.push(`indulgences like tobacco and other smokables. Carcinogens are sometimes the necessary side effects of slave body modification, not an acceptable downside of luxury.`);
+			} else if (PC.refreshmentType === 1) {
+				r.push(`drink other than what the slave feeding systems provide ${him}. ${He} might be your Head Girl, but the liquid food keeps ${his} libido charged, ${his} body healthy, and ${his} asshole invitingly clean, just like any other slave.`);
+			} else if (PC.refreshmentType === 2) {
+				r.push(`food other than what the slave feeding systems provide ${him}. ${He} might be your Head Girl, but the liquid food keeps ${his} libido charged, ${his} body healthy, and ${his} asshole invitingly clean, just like any other slave.`);
+			} else {
+				r.push(`drugs other than what the drug dispensers provide ${him}. Addictive drugs are rarely provided to slaves, replaced instead with slightly healthier, but no less addictive, aphrodisiacs.`);
+			}
+			r.push(`But it'll do no harm, just this once, and you tell ${him} so. ${He} nods, not wanting to spoil the moment by speaking.`);
+			App.Events.addParagraph(frag, r);
+			r = [];
+			if (PC.refreshmentType === 0) {
+				r.push(`After you light ${his} ${PC.refreshment} for ${him}, ${he} holds the `);
+				if (canTaste(eventSlave)) {
+					r.push(`first taste`);
+				} else {
+					r.push(`feeling`);
+				}
+				r.push(` of its smoke in ${his} mouth for a long, sensual moment before letting it trickle back out through ${his} lips.`);
+			} else if (PC.refreshmentType === 1 || PC.refreshmentType === 2) {
+				r.push(`${He} holds the `);
+				if (canTaste(eventSlave)) {
+					r.push(`first taste`);
+				} else {
+					r.push(`feeling`);
+				}
+				r.push(` of it in ${his} mouth for a long, sensual moment before swallowing reverently.`);
+			} else {
+				r.push(`${He} savors the thrill of using ${PC.refreshment} for a moment, before turning to you, an almost desperate need on ${his} face.`);
+			}
+			r.push(`You return to work, and ${he} follows your example, though ${he}'s rather distracted. When ${he} finishes ${hers}, ${he} sets ${his} tablet down for a moment and comes over to you, doing ${his} best to show ${his} naked body to its best advantage as ${he} comes. ${He} gives you a deep kiss,`);
+			if (PC.refreshmentType === 0 || PC.refreshmentType === 1 || PC.refreshmentType === 2) {
+				r.push(`which tastes of fine ${PC.refreshment}, with a hint of ${eventSlave.slaveName},`);
+			} else {
+				r.push(`with plenty of tongue,`);
+			}
+			r.push(`and then goes back to work, <span class="mediumaquamarine">smiling unconsciously</span> as ${he} savors the lingering `);
+			if (PC.refreshmentType === 3 || PC.refreshmentType === 4 || PC.refreshmentType === 5 || PC.refreshmentType === 6) {
+				r.push(`rush.`);
+			} else {
+				if (canTaste(eventSlave)) {
+					r.push(`flavor.`);
+				} else {
+					r.push(`sensation.`);
+				}
+			}
+			eventSlave.trust += 4;
+			App.Events.addParagraph(frag, r);
+			return frag;
+		}
+	}
+};
diff --git a/src/events/RESS/review/usedWhore.js b/src/events/RESS/review/usedWhore.js
new file mode 100644
index 0000000000000000000000000000000000000000..8b1e4879304f5e198c8f2a016ec6204e01fdfafe
--- /dev/null
+++ b/src/events/RESS/review/usedWhore.js
@@ -0,0 +1,520 @@
+App.Events.RESSUsedWhore = class RESSUsedWhore extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return []; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				hasAnyLegs,
+				s => [Job.PUBLIC, Job.WHORE].includes(s.assignment),
+				s => s.vagina !== 0,
+				s => s.anus !== 0,
+				canDoAnal,
+				s => s.devotion <= 50,
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			His, He, he, his, him, himself, girl
+		} = getPronouns(eventSlave);
+		const {title: Master, say} = getEnunciation(eventSlave);
+		const belly = bellyAdjective(eventSlave);
+		const PC = V.PC;
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave, "no clothing");
+
+		let r = [];
+		r.push(
+			`At the end of a long day, you take a moment to watch the comings and goings of your arcology to decompress. While doing so, you notice someone who's clearly had a longer day than you.`,
+			contextualIntro(PC, eventSlave, "DOM"),
+			`is`
+		);
+		if (eventSlave.belly >= 5000) {
+			r.push(`slowly waddling, one hand under ${his} ${belly}`);
+			if (eventSlave.bellyPreg >= 3000) {
+				r.push(`pregnant`);
+			}
+			r.push(`belly and the other on the small of ${his} back,`);
+		} else {
+			r.push(`making`);
+		}
+		r.push(`${his} tired way back to the kitchen for a meal and then bed after a long day of sex work. ${He}'s stripped off ${his} soiled clothes already, and is clearly too tired to care about nudity at all.`);
+		App.Events.addParagraph(node, r);
+
+		r = [];
+		r.push(`${He} comes around the corner and`);
+		if (PC.belly >= 100000) {
+			r.push(`slams into your massively distended belly, nearly knocking you over.`);
+		} else if (PC.belly >= 10000) {
+			r.push(`bumps into your heavily gravid middle.`);
+		} else if (PC.belly >= 5000) {
+			r.push(`bumps into your rounded middle.`);
+		} else if (PC.balls >= 14) {
+			r.push(`nearly knees your prominent testicles.`);
+		} else if (PC.boobs >= 800) {
+			r.push(`runs into your prominent rack.`);
+		} else {
+			r.push(`almost runs into you.`);
+		}
+		r.push(`${He} stops and`);
+		if (canSee(eventSlave)) {
+			r.push(`stares,`);
+		} else {
+			r.push(`faces you,`);
+		}
+		r.push(`struggling to find the appropriate thing to say or do, but too exhausted to manage it. Even though ${he}'s been obediently cleaning ${himself} between fucks, ${he} looks used up. ${His} ${eventSlave.skin} skin is reddened here and there.`);
+		if (eventSlave.belly >= 750000) {
+			r.push(`${His} ${belly} belly is heavily bruised, the super-stretched skin nearly at its limit from the weight put on it and the forces pushing against it.`);
+		} else if (eventSlave.belly >= 600000) {
+			r.push(`${His} ${belly} belly is deep red and heavily bruised; it's clear that at least one client roughly fucked ${him} over it.`);
+		} else if (eventSlave.belly >= 450000) {
+			r.push(`${His} ${belly} belly looks extremely painful, it's obvious ${he} got fucked over it.`);
+		} else if (eventSlave.belly >= 300000) {
+			r.push(`${His} ${belly} belly is black and blue, it's obvious ${he} got fucked over it.`);
+		} else if (eventSlave.belly >= 150000) {
+			r.push(`${His} ${belly} belly is heavily chafed from rubbing the floor as ${he} struggled to keep ${his} weight off it.`);
+		} else if (eventSlave.belly >= 100000) {
+			r.push(`${His} ${belly} belly is heavily chafed from rubbing against the floor.`);
+		} else if (eventSlave.belly >= 10000) {
+			r.push(`The tip of ${his} huge belly is chafed from rubbing against the floor.`);
+		}
+		if (canDoVaginal(eventSlave)) {
+			r.push(`${His}`);
+			if (eventSlave.labia > 1) {
+				r.push(`generous`);
+			} else {
+				r.push(`poor`);
+			}
+			r.push(`pussylips are puffy, and you have no doubt ${his} vagina is quite sore.`);
+		}
+		if (canDoAnal(eventSlave)) {
+			r.push(`The awkward way ${he}'s standing suggests that ${his}`);
+			if (eventSlave.anus > 2) {
+				r.push(`gaping`);
+			} else if (eventSlave.anus > 1) {
+				r.push(`big`);
+			} else {
+				r.push(`tight`);
+			}
+			r.push(`asshole has had more than one dick up it recently.`);
+		}
+		if (eventSlave.nipples !== "fuckable") {
+			r.push(`Even ${his} nipples are pinker than usual, having been cruelly pinched`);
+			if (eventSlave.lactation > 0) {
+				r.push(`and milked`);
+			}
+			r.push(r.pop() + `.`);
+			if (eventSlave.lactation > 0) {
+				eventSlave.lactationDuration = 2;
+				eventSlave.boobs -= eventSlave.boobsMilk;
+				eventSlave.boobsMilk = 0;
+			} else {
+				r.push(induceLactation(eventSlave, 2));
+			}
+		} else {
+			r.push(`Even ${his} nipples show signs of wear, having prolapsed slightly from heavy use.`);
+		}
+
+		App.Events.addParagraph(node, r);
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Use ${him} anyway`, anyway),
+			new App.Events.Result(`Manipulate ${him} into asking to suck you off`, manipulate),
+			new App.Events.Result(`Just talk with ${him}`, talk),
+		]);
+
+		function anyway() {
+			r = [];
+			r.push(`You reach out, grab ${his} shoulder, and shove ${him} against the wall.`);
+			if (!canTalk(eventSlave)) {
+				r.push(`${He} manages to use a gesture to beg you not to,`);
+			} else {
+				r.push(
+					`${He} manages to beg,`,
+					Spoken(eventSlave, `"Please no, ${Master}—"`)
+				);
+			}
+			r.push(`before you give ${him} a hard warning slap on the ass to shut ${him} up. ${He}'s quiet, but starts to sob a little when ${he} feels`);
+			if (PC.dick === 0) {
+				r.push(`the head of a strap-on`);
+			} else {
+				r.push(`your cock`);
+			}
+			r.push(`against ${his}`);
+			if (canDoAnal(eventSlave)) {
+				r.push(`anus.`);
+				if (eventSlave.anus > 2) {
+					r.push(`It's gaped before you even touch it, but it's clearly sore enough that ${he} dreads anal anyway.`);
+				} else if (eventSlave.anus > 1) {
+					r.push(`It's been fucked loose, but it's clearly sore enough that ${he} dreads anal anyway.`);
+				} else {
+					r.push(`It's somehow not gaped yet, and ${he} dreads having it stretched yet again.`);
+				}
+				if (eventSlave.height >= 185) {
+					r.push(`${He}'s tall enough that the angle isn't that uncomfortable for ${him}.`);
+				} else if (eventSlave.anus > 0) {
+					r.push(`${He} hikes ${himself} desperately up on ${his} tiptoes to make the angle less uncomfortable for ${him}.`);
+				} else {
+					r.push(`${He} hikes ${himself} desperately up on ${his} tiptoes, but ${he}'s so short the angle is desperately uncomfortable for ${him}.`);
+				}
+				r.push(`${He} decides to try begging one last time, and`);
+				if (canDoVaginal(eventSlave)) {
+					if (!canTalk(eventSlave)) {
+						r.push(`signs to ask you to use ${his} pussy instead`);
+					} else {
+						r.push(
+							`whines,`,
+							Spoken(eventSlave, `"Just use my pussy, please!"`)
+						);
+					}
+				} else {
+					if (!canTalk(eventSlave)) {
+						r.push(`signs to ask you to let ${him} suck you off instead`);
+					} else {
+						r.push(
+							`whines,`,
+							Spoken(eventSlave, `"Let me suck you off, please!"`)
+						);
+					}
+				}
+				r.push(`as you shove`);
+				if (PC.dick === 0) {
+					r.push(`the strap-on`);
+				} else {
+					r.push(`yourself`);
+				}
+				r.push(`up ${his} butt. ${He} reflexively tries to get away into the wall,`);
+				if (eventSlave.belly > 100000) {
+					r.push(`${his} ${belly} belly squashing out to either side.`);
+				} else if (eventSlave.boobs > 2000) {
+					r.push(`${his} enormous boobs squashing out to either side.`);
+				} else if (eventSlave.boobs > 1000) {
+					r.push(`${his} big boobs squashing out to either side.`);
+				} else if (eventSlave.boobs > 300) {
+					r.push(`${his} boobs crashing into it.`);
+				} else {
+					r.push(`${his} sore nipples giving ${him} a jerk as ${he} does.`);
+				}
+				r.push(`After some continued whining through ${his} tears, ${he} gives up and just <span class="trust dec">lets you</span> rape ${his} sore ass.`);
+				r.push(VCheck.Anal(eventSlave, 1));
+			} else {
+				r.push(`pussy lips.`);
+				if (eventSlave.vagina > 2) {
+					r.push(`It's gaped before you even touch it, but it's clearly sore enough that ${he} dreads penetration anyway.`);
+				} else if (eventSlave.vagina > 1) {
+					r.push(`It's been fucked loose, but it's clearly been used enough that ${he} dreads penetration anyway.`);
+				} else {
+					r.push(`It's somehow not loose yet, and ${he} dreads having it stretched yet again.`);
+				}
+				if (eventSlave.height >= 185) {
+					r.push(`${He}'s tall enough that the angle isn't that uncomfortable for ${him}.`);
+				} else if (eventSlave.anus > 0) {
+					r.push(`${He} hikes ${himself} desperately up on ${his} tiptoes to make the angle less uncomfortable for ${him}.`);
+				} else {
+					r.push(`${He} hikes ${himself} desperately up on ${his} tiptoes, but ${he}'s so short the angle is desperately uncomfortable for ${him}.`);
+				}
+				r.push(`${He} decides to try begging one last time, and`);
+				if (!canTalk(eventSlave)) {
+					r.push(`signs to ask you to let ${him} suck you off instead`);
+				} else {
+					r.push(
+						`whines,`,
+						Spoken(eventSlave, `"Let me suck you off, please!"`)
+					);
+				}
+				r.push(`as you shove`);
+				if (PC.dick === 0) {
+					r.push(`the strap-on`);
+				} else {
+					r.push(`yourself`);
+				}
+				r.push(`up ${his} cunt. ${He} reflexively tries to get away into the wall,`);
+				if (eventSlave.belly > 100000) {
+					r.push(`${his} ${belly} belly squashing out to either side.`);
+				} else if (eventSlave.boobs > 2000) {
+					r.push(`${his} enormous boobs squashing out to either side.`);
+				} else if (eventSlave.boobs > 1000) {
+					r.push(`${his} big boobs squashing out to either side.`);
+				} else if (eventSlave.boobs > 300) {
+					r.push(`${his} boobs crashing into it.`);
+				} else {
+					r.push(`${his} sore nipples giving ${him} a jerk as ${he} does.`);
+				}
+				r.push(`After some continued whining through ${his} tears, ${he} gives up and just <span class="trust dec">lets you</span> rape ${his} sore vagina.`);
+				r.push(VCheck.Vaginal(eventSlave, 1));
+			}
+			r.push(`When you finally`);
+			if (PC.dick !== 0) {
+				r.push(`fill ${his}`);
+				if (canDoAnal(eventSlave)) {
+					r.push(`butt`);
+				} else {
+					r.push(`pussy`);
+				}
+				r.push(`with your ejaculate and pull out,`);
+				if (PC.vagina !== -1) {
+					r.push(`the motion releasing a waft of the combined cum and pussyjuice smell of a satisfied futa,`);
+				}
+			} else {
+				r.push(`shudder with orgasm and withdraw your strap-on,`);
+			}
+			r.push(`${he} slumps and turns to go, looking a bit sad for some reason.`);
+			eventSlave.trust += 4;
+			return r;
+		}
+
+		function manipulate() {
+			r = [];
+			r.push(`You reach out, grab ${his} shoulder, and shove ${him} against the wall.`);
+			if (!canTalk(eventSlave)) {
+				r.push(`${He} manages to use a gesture to beg you not to,`);
+			} else {
+				r.push(
+					`${He} manages to beg,`,
+					Spoken(eventSlave, `"Please no, ${Master}—"`)
+				);
+			}
+			r.push(`before you give ${him} a hard warning slap on the ass to shut ${him} up. ${He}'s quiet, but starts to sob a little when ${he} feels`);
+			if (PC.dick === 0) {
+				r.push(`the head of a strap-on`);
+			} else {
+				r.push(`an invading`);
+				if (PC.vagina !== -1) {
+					r.push(`futa`);
+				}
+				r.push(`cockhead`);
+			}
+			r.push(`against ${his}`);
+			if (canDoAnal(eventSlave)) {
+				r.push(`anus.`);
+				if (eventSlave.anus > 2) {
+					r.push(`It's gaped before you even touch it, but it's clearly sore enough that ${he} dreads anal anyway.`);
+				} else if (eventSlave.anus > 1) {
+					r.push(`It's been fucked loose, but it's clearly sore enough that ${he} dreads anal anyway.`);
+				} else {
+					r.push(`It's somehow not gaped yet, and ${he} dreads having it stretched yet again.`);
+				}
+			} else {
+				r.push(`pussy lips.`);
+				if (eventSlave.vagina > 2) {
+					r.push(`It's gaped before you even touch it, but it's clearly sore enough that ${he} dreads penetration anyway.`);
+				} else if (eventSlave.vagina > 1) {
+					r.push(`It's been fucked loose, but it's clearly been used enough that ${he} dreads penetration anyway.`);
+				} else {
+					r.push(`It's somehow not loose yet, and ${he} dreads having it stretched yet again.`);
+				}
+			}
+			r.push(`${He}`);
+			if (!canTalk(eventSlave)) {
+				r.push(`signs let ${him} suck you off instead.`);
+			} else {
+				r.push(
+					`whines,`,
+					Spoken(eventSlave, `"Let me suck you off, please!"`)
+				);
+			}
+			r.push(`Having gotten ${him} to beg for what you wanted all along, you spin ${him} so ${his}`);
+			if (eventSlave.weight > 160) {
+				r.push(`rippling`);
+			} else if (eventSlave.weight > 95) {
+				r.push(`fat`);
+			} else if (eventSlave.muscles > 95) {
+				r.push(`powerful`);
+			} else if (eventSlave.muscles > 30) {
+				r.push(`strong`);
+			} else if (eventSlave.muscles > 5) {
+				r.push(`toned`);
+			} else {
+				r.push(`feminine`);
+			}
+			r.push(`back hits the wall with a smack and shove ${him} down it until ${his}`);
+			if (eventSlave.lips > 70) {
+				r.push(`massive`);
+			} else if (eventSlave.lips > 40) {
+				r.push(`pillowlike`);
+			} else if (eventSlave.lips > 20) {
+				r.push(`girlish`);
+			} else if (eventSlave.lips > 10) {
+				r.push(`average`);
+			} else {
+				r.push(`minuscule`);
+			}
+			r.push(`lips are level with your`);
+			if (PC.dick === 0) {
+				r.push(`fake dick,`);
+			} else {
+				r.push(`dick,`);
+			}
+			if (eventSlave.belly >= 100000) {
+				r.push(`straddle ${his} ${belly} belly,`);
+			}
+			r.push(`and push it into ${his} mouth without waiting for ${him} to get ready. ${He} gags, but does ${his} best to work ${his} tired mouth. When you're finally satisfied and you let ${him} up, you aim another slap at ${his}`);
+			if (eventSlave.butt > 12) {
+				r.push(`inhuman ass`);
+			} else if (eventSlave.butt > 5) {
+				r.push(`massive ass`);
+			} else if (eventSlave.butt > 2) {
+				r.push(`big butt`);
+			} else if (eventSlave.butt > 0) {
+				r.push(`nice ass`);
+			} else {
+				r.push(`flat ass`);
+			}
+			r.push(`and let ${him} see it coming; ${he} <span class="devotion inc">accepts</span> the spank due to fright at what you might do if ${he} dodged before fleeing.`);
+			eventSlave.devotion += 4;
+			seX(eventSlave, "oral", PC, "penetrative");
+			return r;
+		}
+
+		function talk() {
+			const frag = document.createDocumentFragment();
+			r = [];
+			r.push(`You take ${him} by the hand, lead ${him} to a nearby couch, and sit down with ${him}, letting ${him} seat ${himself} beside you so ${he} can`);
+			if (eventSlave.belly >= 5000) {
+				r.push(`rest ${his}`);
+				if (eventSlave.bellyPreg >= 3000) {
+					r.push(`gravid`);
+				}
+				r.push(`bulk against you`);
+			} else {
+				r.push(`lean against you`);
+			}
+			r.push(`without putting too much weight on ${his} poor overused butthole. You ask ${him} about ${his} day.`);
+			if (!canTalk(eventSlave)) {
+				r.push(`${He} uses gestures to recount it through ${his} tears. Apparently while one guy was using ${his} anus, another thought it was hot and waited for him to be done before using ${him} in turn, without letting ${him} rest or clean ${himself}. It took four cocks total for another slave to notice and rescue ${him}.`);
+			} else {
+				r.push(
+					`${He} ${say}s, a little tearfully,`,
+					Spoken(eventSlave, `"${Master}, this guy wanted to use my butt in public. So of course I let him, and he made me sit in his lap to do it, and held my ${hasBothLegs(eventSlave) ? `legs` : "leg"} back so everyone could see! And then another guy thought it was hot and waited, and then fucked me in my ass too. Another slave finally noticed and rescued me after four cocks, ${Master}. I'm really sore."`)
+				);
+			}
+			r.push(`${He}`);
+			if (canSee(eventSlave)) {
+				r.push(`looks up at you with big ${App.Desc.eyesColor(eventSlave)}`);
+			} else {
+				r.push(`gazes at you`);
+			}
+			r.push(`for a long moment, a final tear leaking down ${his} ${eventSlave.skin} cheek, before ${he} suddenly`);
+			if (!canTalk(eventSlave)) {
+				r.push(`shakes with mute laughter.`);
+			} else {
+				r.push(`giggles.`);
+			}
+			r.push(`${He} explains ${himself} after a while: it's not what ${he} thought ${he}'d be doing with ${his} life,`);
+			switch (eventSlave.career) {
+				case "a bioreactor":
+				case "a breeder":
+				case "a breeding bull":
+				case "a dairy cow":
+				case "a dairy slave":
+				case "a Fuckdoll":
+				case "a Futanari Sister":
+				case "a slave":
+				case "a slave since birth":
+				case 0:
+					r.push(`once upon a time.`);
+					break;
+				default:
+					r.push(`back when ${he} was ${convertCareer(eventSlave)}.`);
+			}
+			if (!canTalk(eventSlave)) {
+				r.push(`${He} points to ${himself} and uses both hands to mimic sodomy, as though to suggest that's all ${he} is, before giving you a rueful smile.`);
+			} else {
+				r.push(
+					Spoken(eventSlave, `"${eventSlave.slaveName} the butthole ho, that's me,"`),
+					`${he} ${say}s sadly, before giving you a rueful smile.`
+				);
+			}
+			r.push(`${He} kisses you on the cheek and <span class="trust inc">thanks you</span> for listening instead of raping ${him}.`);
+			eventSlave.trust += 4;
+
+			App.Events.addParagraph(frag, r);
+			App.Events.addResponses(frag, [
+				new App.Events.Result(`Kiss ${him} back`, kiss),
+				new App.Events.Result(`Rape ${him}`, rape),
+			]);
+			return frag;
+
+			function kiss() {
+				r = [];
+				r.push(`You turn to kiss ${him} back, on the lips this time. ${He}`);
+				if (canSee(eventSlave)) {
+					r.push(`sees`);
+				} else {
+					r.push(`feels`);
+				}
+				r.push(`your intention and <span class="trust inc">complies trustingly,</span> closing ${his} eyes and tilting ${his} head slightly so your lips lock perfectly.`);
+				if (eventSlave.lips > 70) {
+					r.push(`${His} ridiculous, pillowlike lips part softly.`);
+				} else if (eventSlave.teeth === "pointy") {
+					r.push(`${He} opens ${his} jaw wide, careful to keep ${his} shark's teeth well clear of you.`);
+				} else if (eventSlave.teeth === "fangs") {
+					r.push(`${He} keeps ${his} jaw steady so you may work around ${his} fangs easier.`);
+				} else if (eventSlave.teeth === "fang") {
+					r.push(`You try your best to work around ${his} lone fang.`);
+				}
+				r.push(`After a few seconds, ${he} realizes you aren't planning to break the kiss anytime soon, and softens, ${his}`);
+				if (eventSlave.bellyPreg >= 1500) {
+					r.push(`pregnant`);
+				}
+				r.push(`body relaxing against yours. ${He} scoots closer to you, bringing ${his} legs up under ${him} on the couch cushions so ${he} can face you comfortably. ${He} leans one`);
+				if (eventSlave.weight > 160) {
+					r.push(`extremely well padded`);
+				} else if (eventSlave.weight > 95) {
+					r.push(`well padded`);
+				} else if (eventSlave.muscles > 30) {
+					r.push(`muscular`);
+				} else if (eventSlave.weight > 10) {
+					r.push(`plush`);
+				} else if (eventSlave.hips > -1) {
+					r.push(`pretty`);
+				}
+				r.push(`hip against your leg, hiking ${himself} half onto your lap so ${he} can make out with you without having to sit with any weight on ${his} sore butthole.`);
+				eventSlave.trust += 2;
+				return r;
+			}
+
+			function rape() {
+				r = [];
+				r.push(`But ${he}'s wrong to place that kind of faith in you. As ${he} withdraws from the kiss, you snake a betraying hand between ${his} butt and the couch, and shove`);
+				if (eventSlave.anus <= 1) {
+					r.push(`two rude fingers up ${his} sore little anus.`);
+				} else if (eventSlave.anus === 2) {
+					r.push(`three rude fingers up ${his} sore anus.`);
+				} else {
+					r.push(`all four of your fingers and your thumb, formed into a point, as far up ${his} loose butt as they will go.`);
+				}
+				r.push(`${He} lets out a pained "oh," and then goes silent. For such a little sound, it bears a great weight of <span class="trust dec">betrayed trust.</span> You insert your fingers to the knuckle, making ${him} writhe with discomfort, and then turf ${him} off the couch to land`);
+				if (eventSlave.belly >= 300000) {
+					r.push(`across ${his} ${belly} stomach`);
+				} else {
+					r.push(`face first`);
+				}
+				r.push(`on the floor in front of you. ${He} tries to spread ${his} butt and angle ${his} hips like a good ${girl}, but you slap ${his} hands away and push your`);
+				if (PC.dick === 0) {
+					r.push(`strap-on`);
+				} else {
+					r.push(`cock`);
+				}
+				r.push(`inside ${him} without regard for ${his} poor anus. ${He} shudders and begins to cry, and keeps crying as you ravage ${his} asshole. When you climax and pull out, ${he} continues to weep, but stumbles off to wash. When ${he} comes back, ${he}'s still sniffling, but without being prompted,`);
+				if (eventSlave.belly >= 300000) {
+					r.push(`<span class="devotion inc">${he} leans over ${his} belly and offers you ${his} sore butthole again.</span>`);
+				} else {
+					r.push(`<span class="devotion inc">${he} gets down on ${his} knees and offers you ${his} sore butthole again.</span>`);
+				}
+				eventSlave.trust -= 4;
+				eventSlave.devotion += 5;
+				r.push(VCheck.Anal(eventSlave, 1));
+				return r;
+			}
+		}
+	}
+};
diff --git a/src/events/RESS/review/vocalDisobedience.js b/src/events/RESS/review/vocalDisobedience.js
new file mode 100644
index 0000000000000000000000000000000000000000..407b893a24636dff057f0288728ae7b1f9e8050f
--- /dev/null
+++ b/src/events/RESS/review/vocalDisobedience.js
@@ -0,0 +1,223 @@
+App.Events.RESSVocalDisobedience = class RESSVocalDisobedience extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return []; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				hasAnyLegs,
+				canTalk,
+				s => s.assignment !== Job.QUARTER,
+				s => s.devotion < -50,
+				s => s.trust >= -20,
+				s => s.rules.speech === "restrictive"
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			His, He, he, his, him
+		} = getPronouns(eventSlave);
+		const {title: Master} = getEnunciation(eventSlave);
+		const rudeTitle = eventSlave.rudeTitle === 1 ? PoliteRudeTitle(eventSlave) : Master;
+		const belly = bellyAdjective(eventSlave);
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave, "no clothing");
+
+		let r = [];
+		r.push(
+			`One morning, despite the fact that ${he} is not allowed to speak without being spoken to,`,
+			contextualIntro(V.PC, eventSlave, "DOM"),
+		);
+		if (canSee(eventSlave)) {
+			r.push(`looks you directly in the eye`);
+		} else {
+			r.push(`faces you`);
+		}
+		r.push(`and asks`);
+		if (SlaveStatsChecker.checkForLisp(eventSlave)) {
+			r.push(`boldly through ${his}`);
+			if (eventSlave.lips > 70) {
+				r.push(`massive dick-sucking lips,`);
+			} else if (eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2) {
+				r.push(`inconvenient oral piercings,`);
+			} else {
+				r.push(`lisp,`);
+			}
+			r.push(
+				Spoken(eventSlave, `"I'm tired, can I have the day off?"`),
+				`${He} didn't even call you ${getWrittenTitle(eventSlave)}.`
+			);
+		} else {
+			r.push(
+				`boldly,`,
+				Spoken(eventSlave, `"I'm tired, can I have the day off, ${rudeTitle}?"`)
+			);
+		}
+
+		App.Events.addParagraph(node, r);
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Give ${him} a rough spanking`, spanking, virginityWarning()),
+			(canDoAnal(eventSlave) || canDoVaginal(eventSlave))
+				? new App.Events.Result(`Sentence ${him} to public use`, sentence, virginityWarning())
+				: new App.Events.Result(),
+			new App.Events.Result(`Give ${him} the day off`, off),
+		]);
+
+		function virginityWarning() {
+			if ((eventSlave.anus === 0 && canDoAnal(eventSlave)) || (eventSlave.vagina === 0 && canDoVaginal(eventSlave))) {
+				return `This option will take ${his} virginity`;
+			}
+		}
+
+		function spanking() {
+			r = [];
+			if (hasAnyLegs(eventSlave)) {
+				r.push(`You tie the protesting slave to your desk`);
+				if (eventSlave.belly >= 5000) {
+					r.push(`with ${his} chest against the top of the desk with ${his} ${belly}`);
+					if (eventSlave.bellyPreg >= 3000) {
+						r.push(`pregnant`);
+					}
+					r.push(`belly hanging of the side, so that`);
+				} else {
+					r.push(`so that ${his} chest is against the top of the desk and`);
+				}
+				r.push(`${he}'s standing upright with ${his} ass in the air.`);
+			} else {
+				if (eventSlave.belly >= 300000) {
+					r.push(`You carefully balance the protesting, defenseless torso atop ${his} own ${belly}`);
+					if (eventSlave.bellyPreg >= 3000) {
+						r.push(`pregnancy.`);
+					} else {
+						r.push(`stomach.`);
+					}
+				} else if (eventSlave.belly >= 5000) {
+					r.push(`You place the protesting, defenseless torso on your lap, face-down with ${his} ${belly}`);
+					if (eventSlave.bellyPreg >= 3000) {
+						r.push(`pregnant`);
+					}
+					r.push(`belly between your legs.`);
+				} else {
+					r.push(`You place the protesting, defenseless torso on your desk, face-down.`);
+				}
+			}
+			r.push(`You spank ${him} severely, leaving ${his} buttocks bright pink. ${He} must count the strokes or have ${his} punishment start over. Sobbing, ${he} counts`);
+			if (eventSlave.lips > 70) {
+				r.push(`through ${his} massive dick-sucking lips,`);
+			} else if (eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2) {
+				r.push(`through ${his} inconvenient oral piercings`);
+			}
+			r.push(
+				Spoken(eventSlave, `"Six, AAGHHH, seven, AAGHHH, seven"`),
+				`and then realizes ${his} mistake and begs for mercy — in vain, of course. You finish ${him} off with a rough`
+			);
+			if (canDoVaginal(eventSlave)) {
+				r.push(`fuck, with ${him} jerking against ${his} restraints every time you stroke into ${his} sore buttocks.`);
+				r.push(VCheck.Vaginal(eventSlave, 1));
+			} else if (canDoAnal(eventSlave)) {
+				r.push(`assfuck, with ${him} jerking against ${his} restraints every time you stroke into ${his} sore buttocks.`);
+				r.push(VCheck.Anal(eventSlave, 1));
+			} else {
+				r.push(`throatfuck, with ${him} jerking against ${his} restraints every time you hilt yourself and slap ${his} ass.`);
+				seX(eventSlave, "oral", V.PC, "penetrative");
+			}
+			r.push(`<span class="trust dec">${He} learns from the experience.</span>`);
+			eventSlave.trust -= 5;
+			return r;
+		}
+
+		function sentence() {
+			r = [];
+			r.push(`When ${he}`);
+			if (canSee(eventSlave)) {
+				r.push(`sees ${he}'s being taken to a sex booth,`);
+			} else if (canHear(eventSlave)) {
+				r.push(`hears the sounds of a public sex parlor,`);
+			} else {
+				r.push(`finally figures out ${his} destination,`);
+			}
+			r.push(`${he} begins to cry. ${He} begs`);
+			if (eventSlave.lips > 70) {
+				r.push(`through ${his} massive dick-sucking lips,`);
+			} else if (eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2) {
+				r.push(`through ${his} inconvenient oral piercings,`);
+			} else {
+				r.push(`through ${his} tears,`);
+			}
+			r.push(
+				Spoken(eventSlave, `"Please, no, ${Master}, I'll be good —"`),
+				`but is cut off when the machine closes around ${his} head. It will offer ${his}`
+			);
+			if (canDoAnal(eventSlave) && canDoVaginal(eventSlave)) {
+				r.push(`ass and pussy`);
+			} else if (canDoAnal(eventSlave)) {
+				r.push(`ass`);
+			} else {
+				r.push(`pussy`);
+			}
+			r.push(`to anyone who pays for the rest of the week, and keep ${his} fed and cleaned. ${His} world will become nothing but silent, featureless darkness and dick. <span class="cash inc">You earn some money off ${him},</span> and by the end of the night ${his}`);
+			if (canDoAnal(eventSlave) && canDoVaginal(eventSlave)) {
+				r.push(`holes get`);
+			} else {
+				r.push(`hole gets`);
+			}
+			if ((canDoAnal(eventSlave) && eventSlave.anus === 0) || (canDoVaginal(eventSlave) && eventSlave.vagina === 0)) {
+				r.push(`well stretched.`);
+			} else {
+				r.push(`<span class="lime">well stretched.</span>`);
+			}
+			r.push(`<span class="devotion inc">${He} learns from the experience.</span>`);
+			if (canDoAnal(eventSlave) && canDoVaginal(eventSlave)) {
+				if (eventSlave.vagina === 0 && eventSlave.anus === 0) {
+					r.push(`<span class="virginity loss">${He}'s lost both ${his} virginity and anal cherry.</span>`);
+				} else if (eventSlave.vagina === 0) {
+					r.push(`<span class="virginity loss">${He}'s lost ${his} virginity.</span>`);
+				} else if (eventSlave.anus === 0) {
+					r.push(`<span class="virginity loss"> ${He}'s lost ${his} anal cherry.</span>`);
+				}
+				eventSlave.vagina++;
+				eventSlave.anus++;
+				seX(eventSlave, "vaginal", "public", "penetrative", 10);
+				seX(eventSlave, "anal", "public", "penetrative", 10);
+				if (eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+					r.push(knockMeUp(eventSlave, 25, 2, -2));
+				}
+			} else if (canDoAnal(eventSlave)) {
+				if (eventSlave.anus === 0) {
+					r.push(`<span class="virginity loss"> ${He}'s lost ${his} anal cherry.</span>`);
+				}
+				eventSlave.anus++;
+				seX(eventSlave, "anal", "public", "penetrative", 5);
+				if (eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+					r.push(knockMeUp(eventSlave, 50, 1, -2));
+				}
+			} else {
+				if (eventSlave.vagina === 0) {
+					r.push(`<span class="virginity loss">${He}'s lost ${his} virginity.</span>`);
+				}
+				eventSlave.vagina++;
+				seX(eventSlave, "vaginal", "public", "penetrative", 20);
+				if (eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+					r.push(knockMeUp(eventSlave, 50, 0, -2));
+				}
+			}
+			eventSlave.devotion += 4;
+			cashX(50, "event", eventSlave);
+			return r;
+		}
+
+		function off() {
+			eventSlave.devotion -= 5;
+			return `${He} skips away happily and spends the rest of the day lounging around. ${His} obedience to you <span class="devotion dec">has decreased.</span>`;
+		}
+	}
+};
diff --git a/src/events/RESS/serveThePublicDevoted.js b/src/events/RESS/serveThePublicDevoted.js
index 6d45289e117701b8854b77fd45b4ea86fdabfdde..b48f8d500ad678452233c4aafb2ed50bea346c73 100644
--- a/src/events/RESS/serveThePublicDevoted.js
+++ b/src/events/RESS/serveThePublicDevoted.js
@@ -44,11 +44,11 @@ App.Events.RESSServeThePublicDevoted = class RESSServeThePublicDevoted extends A
 		t.push(`As ${he} goes, you notice that`);
 		if (eventSlave.chastityPenis === 1) {
 			t.push(`precum is starting to dribble out of ${his} chastity cage.`);
-		} else if ((eventSlave.dick > 0) && canAchieveErection(eventSlave)) {
+		} else if (eventSlave.dick > 0 && canAchieveErection(eventSlave)) {
 			t.push(`${his} cock is so hard it's standing out, perfectly straight.`);
-		} else if ((eventSlave.dick > 0) && (eventSlave.balls > 0) && !canAchieveErection(eventSlave)) {
+		} else if (eventSlave.dick > 0 && eventSlave.balls > 0 && !canAchieveErection(eventSlave)) {
 			t.push(`${his} semi-hard cock is dribbling precum, a sure sign of a bitch who wants to be buttfucked.`);
-		} else if ((eventSlave.dick > 0) && !canAchieveErection(eventSlave)) {
+		} else if (eventSlave.dick > 0 && !canAchieveErection(eventSlave)) {
 			t.push(`${his} pathetically soft cock is streaming precum, a sure sign of a bitch who wants to be buttfucked.`);
 		} else if (eventSlave.clit > 0) {
 			t.push(`${his} big clit is obviously engorged.`);
@@ -68,7 +68,7 @@ App.Events.RESSServeThePublicDevoted = class RESSServeThePublicDevoted extends A
 			t.push(`play the dom.`);
 		} else if (eventSlave.fetish === "sadist") {
 			t.push(`find a willing masochist.`);
-		} else if ((eventSlave.fetish === "pregnancy") && (eventSlave.preg > eventSlave.pregData.normalBirth / 4)) {
+		} else if (eventSlave.fetish === "pregnancy" && eventSlave.preg > eventSlave.pregData.normalBirth / 4) {
 			t.push(`have ${his} pregnancy fondled.`);
 		} else if (eventSlave.fetish === "pregnancy") {
 			t.push(`pretend to get knocked up.`);
@@ -272,9 +272,9 @@ App.Events.RESSServeThePublicDevoted = class RESSServeThePublicDevoted extends A
 			t.push(`${eventSlave.slaveName} returns many hours later. ${He}'s obviously bone tired. When you meet ${him} at the entrance to your penthouse ${he}'s surprised to`);
 			t.push(canSee(eventSlave) ? "see" : "find");
 			t.push(`you, but ${he} gives you a little smile anyway. You bring ${him} back to your office, and ${he}'s clearly expecting to get fucked, so ${he}'s surprised when you hand ${him} a hot beverage and sit down on the couch with ${him}. ${He} relaxes quickly and chats with you about ${his} day, gossiping about all the private doings of all the prominent citizens who fucked ${his}`);
-			if ((eventSlave.vagina > 0) && canDoVaginal(eventSlave)) {
+			if (eventSlave.vagina > 0 && canDoVaginal(eventSlave)) {
 				t.push(`cunt`);
-			} else if ((eventSlave.anus > 0) && canDoAnal(eventSlave)) {
+			} else if (eventSlave.anus > 0 && canDoAnal(eventSlave)) {
 				t.push(`asshole`);
 			} else {
 				t.push(`mouth`);
diff --git a/src/events/randomEvent.js b/src/events/randomEvent.js
index 9a0b02d5714154b982da94573c9faa69542a1275..2434f6580b94a47e25a615042866d000fe8f49c1 100644
--- a/src/events/randomEvent.js
+++ b/src/events/randomEvent.js
@@ -22,6 +22,7 @@ App.Events.getIndividualEvents = function() {
 		new App.Events.RESSBirthday(),
 		new App.Events.RESSBondageGear(),
 		new App.Events.RESSBreedingBull(),
+		new App.Events.RESSCageRelief(),
 		new App.Events.RESSCockFeederResistance(),
 		new App.Events.RESSComfortableSeat(),
 		new App.Events.RESSCoolerLockin(),
@@ -37,12 +38,16 @@ App.Events.getIndividualEvents = function() {
 		new App.Events.RESSDevotedWaist(),
 		new App.Events.RESSDickgirlPC(),
 		new App.Events.RESSEscapee(),
+		new App.Events.RESSFearfulHumiliation(),
 		new App.Events.RESSForbiddenMasturbation(),
 		new App.Events.RESSFrighteningDick(),
-		new App.Events.RESSHeels(),
 		new App.Events.RESSGaggedSlave(),
+		new App.Events.RESSHeavyPiercing(),
+		new App.Events.RESSHeels(),
 		new App.Events.RESSHormoneDysfunction(),
 		new App.Events.RESSHotPC(),
+		new App.Events.RESSHugeTits(),
+		new App.Events.RESSIgnorantHorny(),
 		new App.Events.RESSImpregnationPlease(),
 		new App.Events.RESSImScared(),
 		new App.Events.RESSInconvenientLabia(),
@@ -57,6 +62,7 @@ App.Events.getIndividualEvents = function() {
 		new App.Events.RESSMilkgasm(),
 		new App.Events.RESSMindbrokenMorning(),
 		new App.Events.RESSModestClothes(),
+		new App.Events.RESSModsPlease(),
 		new App.Events.RESSMoistPussy(),
 		new App.Events.RESSMuscles(),
 		new App.Events.RESSMutinyAttempt(),
@@ -76,8 +82,10 @@ App.Events.getIndividualEvents = function() {
 		new App.Events.RESSPlugDisobedience(),
 		new App.Events.RESSRebelliousArrogant(),
 		new App.Events.RESSRefreshmentDelivery(),
+		new App.Events.RESSResistantAnalVirgin(),
 		new App.Events.RESSResistantGelding(),
 		new App.Events.RESSResistantShower(),
+		new App.Events.RESSRestrictedProfession(),
 		new App.Events.RESSRestrictedSmart(),
 		new App.Events.RESSPenitent(),
 		new App.Events.RESSRetchingCum(),
@@ -93,6 +101,9 @@ App.Events.getIndividualEvents = function() {
 		new App.Events.RESSSuppositoryResistance(),
 		new App.Events.RESSSurgeryAddict(),
 		new App.Events.RESSTooThinForCumDiet(),
+		new App.Events.RESSTrustingHG(),
+		new App.Events.RESSUsedWhore(),
+		new App.Events.RESSVocalDisobedience(),
 		new App.Events.RESSWaistlineWoes(),
 		new App.Events.RESSWhoreRebellious(),
 
diff --git a/src/js/eventSelectionJS.js b/src/js/eventSelectionJS.js
index ff36dd101d77058e1e66f2ee7cf7c60247ae1638..c68141855f35cb215de6ef1403d3f57930f2f2ae 100644
--- a/src/js/eventSelectionJS.js
+++ b/src/js/eventSelectionJS.js
@@ -46,65 +46,7 @@ globalThis.generateRandomEventPool = function(eventSlave) {
 					}
 				}
 
-				if (V.HeadGirlID !== 0) {
-					if (eventSlave.assignment !== Job.QUARTER) {
-						if (eventSlave.ID === V.HeadGirlID) {
-							if (eventSlave.trust > 50) {
-								V.RESSevent.push("trusting HG");
-							}
-						}
-					}
-				}
-
 				if (eventSlave.assignment !== Job.QUARTER) {
-					if (eventSlave.devotion <= 50) {
-						if (eventSlave.devotion >= -20) {
-							if (eventSlave.weekAcquired > 0) {
-								if (V.week - eventSlave.weekAcquired < 10) {
-									if (eventSlave.energy > 20) {
-										if (eventSlave.anus !== 0) {
-											if (eventSlave.vagina !== 0) {
-												V.RESSevent.push("ignorant horny");
-											}
-										}
-									}
-								}
-							}
-						}
-					}
-				}
-
-				if (eventSlave.assignment !== Job.QUARTER) {
-					if (V.modRequestsAllowed > 0) {
-						if (eventSlave.trust > 50) {
-							if (eventSlave.devotion > 20) {
-								if (eventSlave.dick !== 0 || eventSlave.vagina !== -1) {
-									if (eventSlave.nipples !== "fuckable") {
-										if (eventSlave.rules.speech === "permissive") {
-											if (eventSlave.corsetPiercing === 0) {
-												if (eventSlave.tonguePiercing === 0) {
-													if (eventSlave.anusPiercing === 0) {
-														if (eventSlave.nipplesPiercing === 0) {
-															if (eventSlave.dickPiercing === 0) {
-																if (eventSlave.vaginaPiercing === 0) {
-																	if (eventSlave.lipsTat === 0 || eventSlave.lipsTat === "none") {
-																		if (eventSlave.vaginaTat === 0 || eventSlave.vaginaTat === "none") {
-																			V.RESSevent.push("mods please");
-																		}
-																	}
-																}
-															}
-														}
-													}
-												}
-											}
-										}
-									}
-								}
-							}
-						}
-					}
-
 					if (eventSlave.muscles > 5) {
 						if (eventSlave.devotion > 20) {
 							if (eventSlave.diet !== "slimming") {
@@ -162,28 +104,6 @@ if(eventSlave.drugs === "breast injections") {
 */
 				}
 
-				if (eventSlave.assignment !== Job.QUARTER) {
-					if (eventSlave.devotion < -50) {
-						if (eventSlave.trust >= -20) {
-							if (eventSlave.rules.speech === "restrictive") {
-								V.RESSevent.push("vocal disobedience");
-							}
-						}
-					}
-				}
-
-				if (V.boobAccessibility !== 1 && V.ballsAccessibility !== 1 && V.pregAccessibility !== 1) {
-					if (eventSlave.boobs > 10000) {
-						if (eventSlave.devotion >= -20) {
-							if (V.slaves.length > 2) {
-								if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) {
-									V.RESSevent.push("huge tits");
-								}
-							}
-						}
-					}
-				}
-
 				if (eventSlave.assignment !== Job.QUARTER) {
 					if (eventSlave.physicalAge > 30) {
 						if (eventSlave.ageImplant > 0) {
@@ -204,22 +124,6 @@ if(eventSlave.drugs === "breast injections") {
 					}
 				}
 
-				if (eventSlave.fetish === "humiliation" || eventSlave.energy > 95) {
-					if (eventSlave.devotion <= 50) {
-						if (eventSlave.devotion >= -20) {
-							if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) {
-								if (eventSlave.vagina !== 0) {
-									if (eventSlave.anus !== 0) {
-										if (eventSlave.fetishKnown === 1) {
-											V.RESSevent.push("fearful humiliation");
-										}
-									}
-								}
-							}
-						}
-					}
-				}
-
 				if (V.spa > 0) {
 					if (eventSlave.boobs > 2000) {
 						if (eventSlave.devotion > 20) {
@@ -424,22 +328,6 @@ if(eventSlave.drugs === "breast injections") {
 				}
 			}
 
-			if (eventSlave.balls > 0) {
-				if (eventSlave.scrotum > 0) {
-					if (eventSlave.chastityPenis === 1) {
-						if (eventSlave.devotion <= 95) {
-							if (eventSlave.energy > 50) {
-								if (eventSlave.energy < 95) {
-									if (eventSlave.devotion >= -20 || eventSlave.trust < -20) {
-										V.RESSevent.push("cage relief");
-									}
-								}
-							}
-						}
-					}
-				}
-			}
-
 			if (eventSlave.trust <= 20) {
 				if (eventSlave.trust >= -75) {
 					if (eventSlave.devotion <= 30) {
@@ -489,18 +377,6 @@ if(eventSlave.drugs === "breast injections") {
 				}
 			}
 
-			if ([Job.PUBLIC, Job.WHORE].includes(eventSlave.assignment)) {
-				if (eventSlave.vagina !== 0) {
-					if (eventSlave.anus !== 0) {
-						if (canDoAnal(eventSlave)) {
-							if (eventSlave.devotion <= 50) {
-								V.RESSevent.push("used whore");
-							}
-						}
-					}
-				}
-			}
-
 			if (eventSlave.assignment === Job.PUBLIC) {
 				if (eventSlave.devotion >= -20) {
 					if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) {
@@ -538,16 +414,6 @@ if(eventSlave.drugs === "breast injections") {
 					}
 				}
 			}
-
-			if (eventSlave.assignment !== Job.QUARTER) {
-				if (eventSlave.rules.speech === "restrictive") {
-					if (eventSlave.devotion > 60) {
-						if (eventSlave.trust >= -20) {
-							V.RESSevent.push("restricted profession");
-						}
-					}
-				}
-			}
 		} /* closes mute exempt */
 		if (eventSlave.assignment !== Job.QUARTER) {
 			if (eventSlave.boobs > 25000) {
@@ -643,28 +509,6 @@ if(eventSlave.drugs === "breast injections") {
 			}
 		}
 
-		if (eventSlave.vaginaPiercing > 1) {
-			if (eventSlave.nipplesPiercing > 1) {
-				if (eventSlave.clitPiercing > 1) {
-					if (eventSlave.devotion > 20 || eventSlave.trust < -20) {
-						if (eventSlave.devotion <= 50) {
-							if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) {
-								V.RESSevent.push("heavy piercing");
-							}
-						}
-					}
-				}
-			}
-		}
-
-		if (eventSlave.anus === 0) {
-			if (eventSlave.devotion < -20) {
-				if (eventSlave.trust >= -20) {
-					V.RESSevent.push("resistant anal virgin");
-				}
-			}
-		}
-
 		if (V.PC.dick !== 0) {
 			if (eventSlave.bellyPreg >= 300000) {
 				V.RESSevent.push("hyperpreg stuck");
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index ade5731cee2a9c3c171a9cf8e12eb5afb29d0144..aec06b9ef66001a6ddb9907d55fa60b5f50b8dab 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -56,15 +56,10 @@
 "fucktoy tribbing",
 "gaped asshole",
 "happy dance",
-"heavy piercing",
 "huge naturals",
-"huge tits",
 "hugely pregnant",
-"ignorant horny",
 "implant inspection",
-"mods please",
 "orchiectomy please",
-"restricted profession",
 "sexy succubus",
 "shaped areolae",
 "shift masturbation",
@@ -79,10 +74,7 @@
 "tittymonster inspection",
 "torpedo squeeze",
 "transition anxiety",
-"trusting HG",
-"unhappy virgin",
-"used whore",
-"vocal disobedience"].includes($RESSevent)>>
+"unhappy virgin"].includes($RESSevent)>>
 	<<set $activeSlave.clothes = "no clothing">>
 <</if>>
 
@@ -384,33 +376,6 @@ in the middle of the room with the machines all around $him. $He has <<if canDoV
 <br><br>
 The source of the many-voiced personal assistant becomes clear: probably on the incorrigible $activeSlave.slaveName's request, your sultry personal assistant is voicing each and every one of the machines. When the nymphomaniac masturbator tries to smile <<if hasAnyArms($activeSlave)>> and wave<</if>>, there's an absolute chorus of "Back to work, slut", "Smile less, suck more", "Take it, bitch", et cetera. Yet another instance of $assistant.name chuckles in your ear. "Care to join in, <<= properTitle()>>? I'm sure we can find room somewhere."
 
-<<case "vocal disobedience">>
-
-One morning, despite the fact that $he is not allowed to speak without being spoken to, <<= App.UI.slaveDescriptionDialog($activeSlave)>> <<if canSee($activeSlave)>>looks you directly in the eye<<else>>faces you<</if>> and asks
-<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-	boldly through $his
-	<<if ($activeSlave.lips > 70)>>
-		massive dick-sucking lips,
-	<<elseif ($activeSlave.lipsPiercing+$activeSlave.tonguePiercing > 2)>>
-		inconvenient oral piercings,
-	<<else>>
-		lisp,
-	<</if>>
-	"I'm tired, can I have the day off?" $He didn't even call you <<= getWrittenTitle($activeSlave)>>.
-<<else>>
-	boldly, "I'm tired, can I have the day off, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>?"
-<</if>>
-
-<<case "fearful humiliation">>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>> generally obeys orders, even if $he isn't yet a truly devoted sex slave. $He blushes furiously when given any sexual command, but $his true feelings about humiliation become clear when $he is ordered to serve in front of others, even other slaves. It sometimes seems the number of people watching $him get fondled, used, or fucked directly reduces the distance between $him and $his next blushing or even sobbing orgasm.
-
-<<case "heavy piercing">>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>>'s intimate areas are heavily pierced. This is great; it draws attention to $his holes and makes $him look like the sex slave $he is. However, it does necessitate some extra maintenance. It's the end of the day, and $activeSlave.slaveName is in a bathroom <<if canSee($activeSlave)>>carefully checking each of $his piercings<<else>>meticulously cleaning each of $his piercings<</if>>. Many of them come in contact with fluids on a regular basis, so $he cleans them conscientiously.
-<br><br>
-As you watch $him, it occurs to you that since $activeSlave.slaveName isn't fully devoted to you yet, there's all manner of inventive ways you could have a little fun and increase $his submission to you at the same time.
-
 <<case "age implant">>
 
 In the morning the penthouse is a busy bustle of female energy. Slaves get up promptly, eat, shower, dress themselves, and head out to work. They chatter if able and allowed, and draw a good deal of strength from each other. As you pass by the kitchen, you are narrowly avoided by a rush of slaves heading to the showers. They're almost bouncing, feeding off each others' youthful energy. At the back of the pack is <<= App.UI.slaveDescriptionDialog($activeSlave)>>. $He looks as young as any of them, but after they're out, $he leans against the door frame for a moment and exhales slowly.
@@ -588,257 +553,6 @@ there. $His nipples are <<if $activeSlave.nipples != "fuckable">>hard<<else>>swo
 <</if>>
 tits dominate $his figure, but the real attention getter are $his unique, <<= $activeSlave.areolaeShape>>-shaped areolae. The darker flesh around $his nipples would be — should be — circular in any other $woman, and the cute $activeSlave.areolaeShape shapes around $activeSlave.slaveName's nipples are proof of just how much you've modified $him. $He's devoted to you, so much so that $he loves showing off $his special assets.
 
-<<case "huge tits">>
-
-There is a horrible crash from the shower. You rush in to see <<= App.UI.slaveDescriptionDialog($activeSlave)>> face-down and covered in soap. $He's uninjured, but $his tits are so huge that, soapy as $he is, $he can't seem to stand again. $His udders have $him pinned to the ground with $his legs sticking out of the shower. $He pleads
-<<if ($activeSlave.lips > 70)>>
-	through $his huge lips,
-<<elseif ($activeSlave.lipsPiercing+$activeSlave.tonguePiercing > 2)>>
-	through $his piercings,
-<<else>>
-	piteously,
-<</if>>
-"Help me, <<Master>>!"
-
-<<case "trusting HG">>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>> is a busy $girl. Your Head Girl is heading for bed, but $he's not done with the day's work just yet. $He walks into your office with a pensive look on $his face, using a tablet to fiddle with slaves' schedules for tomorrow. Since $he was about to retire, $he's nude: you can't help but notice, in the dimmed light of nighttime in your penthouse, the way the low glow of the tablet
-<<if ($activeSlave.boobs > 5000)>>
-	falls across the tops of $his absurd boobs, since $he's forced to hold it on top of them to use it.
-<<elseif ($activeSlave.belly >= 10000)>>
-	falls across the top of $his <<print _belly>>, tautly <<if $activeSlave.belly >= 3000>>pregnant<<else>>swollen<</if>> belly.
-<<elseif !($activeSlave.chastityPenis) && canAchieveErection($activeSlave)>>
-	<<if ($activeSlave.dick > 4)>>
-		makes $his perpetual, formidable erection cast a shadow.
-	<<elseif ($activeSlave.dick > 2)>>
-		catches the head of $his stiffly erect dick.
-	<<else>>
-		highlights $his stiff little girldick.
-	<</if>>
-<<elseif ($activeSlave.nipples == "huge")>>
-	throws a shadow off each of $his massive nipples and down the lower halves of $his boobs.
-<<elseif ($activeSlave.belly >= 1500)>>
-	makes $his rounded middle cast a shadow.
-<<elseif ($activeSlave.muscles > 95)>>
-	gives extra definition to $his glorious muscles.
-<<elseif ($activeSlave.weight > 95)>>
-	highlights $his soft belly.
-<<elseif ($activeSlave.dick > 0)>>
-	rests on the base of $his soft cock.
-<<elseif ($activeSlave.weight > 10)>>
-	flatters $his soft body.
-<<else>>
-	flatters $him.
-<</if>>
-<br><br>
-$He did not expect to find you here, and is so preoccupied that $he doesn't notice you right away. When $he does, $he smiles. "Good evening,
-<<if $HGFormality == 1>>
-	<<Master>>,"
-	$he murmurs properly, and keeps working. Only a slight blush, barely detectable in the low light, betrays $his consternation at not greeting you immediately.
-<<elseif $activeSlave.trust > 95>>
-	<<if def $PC.customTitle>>
-		<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-			$PC.customTitleLisp,"
-		<<else>>
-			$PC.customTitle,"
-		<</if>>
-	<<elseif $PC.title != 0>>
-		<<S>>ir,"
-	<<else>>
-		Ma'am,"
-	<</if>>
-	$he murmurs. Even in the dim light, you perceive a slight blush of pleasure from $him as $he savors the status of being allowed to call you that. $He goes back to working with a little smile still playing across $his lips.
-<<else>>
-	um,
-	<<if def $PC.customTitle>>
-		<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-			$PC.customTitleLisp,"
-		<<else>>
-			$PC.customTitle,"
-		<</if>>
-	<<elseif $PC.title != 0>>
-		<<S>>-<<s>>ir,"
-	<<else>>
-		M-ma'am,"
-	<</if>>
-	$he stammers hesitantly. $He isn't comfortable with your permission to be less formal in private, and blushes furiously at $his awkwardness. $He takes refuge in $his tablet.
-<</if>>
-
-<<case "ignorant horny">>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>> is first on the inspection schedule, and as you watch $him enter your office, you note several good signs about $his progress towards becoming a good sex slave. $He enters obediently, without pretending to be thrilled to be here, but also without hesitation. Best of all,
-<<if ($activeSlave.chastityPenis) && canAchieveErection($activeSlave)>>
-	$he's squirming with discomfort over the lack of room in $his chastity.
-<<elseif ($activeSlave.dick > 4) && canAchieveErection($activeSlave)>>
-	$he's sporting a massive half-erection which slaps lewdly against $his thighs as $he walks.
-<<elseif ($activeSlave.dick > 2) && canAchieveErection($activeSlave)>>
-	$his dick is half-erect, bobbing lewdly as $he walks.
-<<elseif ($activeSlave.dick > 0) && canAchieveErection($activeSlave)>>
-	$his pathetic little bitch dick is half-erect.
-<<elseif ($activeSlave.dick > 6)>>
-	$his enormous dick is slightly engorged and dripping precum.
-<<elseif ($activeSlave.dick > 0)>>
-	$his soft bitch dick is dripping precum.
-<<elseif ($activeSlave.labia > 1)>>
-	$his lovely pussylips are flushed and wet.
-<<elseif ($activeSlave.clit > 1)>>
-	$his glorious bitch button is stiffly erect.
-<<elseif ($activeSlave.vagina == -1)>>
-	$he's unconsciously sticking $his ass out. Getting fucked there is $his main sexual outlet, now that $he lacks genitals.
-<<else>>
-	$his pussy is flushed and moist.
-<</if>>
-<br><br>
-<<if ($activeSlave.aphrodisiacs > 0) || $activeSlave.inflationType == "aphrodisiac">>
-	The aphrodisiacs racing through $his system have $him desperate to get off, right now.
-<<elseif ($activeSlave.clitPiercing == 3) && ($activeSlave.clitSetting != "none")>>
-	$His <<if $activeSlave.vagina > -1>>clit<<else>>frenulum<</if>> piercing is keeping $his arousal exquisitely balanced for $his inspection.
-<<else>>
-	The mild aphrodisiacs in the slave food have clearly built up some arousal that $he hasn't been able to address recently.
-<</if>>
-$He hasn't been with you long; it's been a mere <<print $week-$activeSlave.weekAcquired>> weeks since $he became your slave. $He may not be fully cognizant of how $his libido is being altered. New slaves aren't informed of the true extent of your abilities to force sexual need. It can be useful for a new $girl to wonder if some of the horniness $he feels is natural, and suspect that $he's nothing but a dirty slut who deserves to be a sex slave.
-
-<<case "cage relief">>
-
-You come face to face with <<= App.UI.slaveDescriptionDialog($activeSlave)>> in a hallway of your penthouse, entirely by happenstance. <<if canSee($activeSlave)>>$His <<= App.Desc.eyesColor($activeSlave)>> lock with yours, and $he stares at you dumbly for a long moment<<else>>Once $he regains $his footing after bumping into you, $he gazes towards you dumbly for a long moment<</if>>. Then $he squares $his <<if $activeSlave.shoulders > 0>>broad<<elseif $activeSlave.shoulders < 0>>pretty<<else>>feminine<</if>> shoulders and bites $his lower lip, obviously doing $his best to think quickly. Right when you're about to reprimand $him for not greeting you properly, $he surprises you by throwing $himself abjectly on the ground in front of you<<if $activeSlave.belly >= 10000>>, $his rear forced into the air by $his _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant<<else>>distended<</if>> belly<</if>>.
-<br><br>
-<<if !canTalk($activeSlave)>>
-	$He uses gestures to apologize for $his rudeness, and then gets to $his knee<<if hasBothLegs($activeSlave)>>s<</if>> so $he can use $his hand<<if hasBothArms($activeSlave)>>s<</if>> to gesture more clearly. $His <<if hasBothArms($activeSlave)>>hands are<<else>>hand is<</if>> shaky as $he begs, making two false starts before unmistakably gesturing to ask you to cut $his balls off. Once $he <<if canSee($activeSlave)>>sees<<else>>figures<</if>> that you understand, $he begins to cry openly. $He gestures that $he can barely get off wearing $his chastity cage, that it hurts when $he does, and that $he's constantly oppressed by the need for release. $He thinks that it would be easier to be soft all the time, so $he could climax without discomfort. $He begs hard, and promises to be a good little bitch.
-<<else>>
-	"Plea<<s>>e, <<Master>>," the prostrate slave <<say>>s shakily, sounding like $he's on the verge of tears. "P-plea<<s>>e cut my ball<<s>> off." <<if canHear($activeSlave)>>Hearing $himself <<say>> it, $he<<else>>$He<</if>> begins to cry openly. "I c-can't t-take it anymore. I can b-barely get off wearing thi<<s>> cage on my dick, and when I d-do, it h-hurt<<s>>," $he sobs. "I need to g-g-get off <<s>>-<<s>>o bad. Plea<<s>>e, plea<<s>>e, if I were <<s>>oft all the time, I wouldn't get hard, <<s>>o I could come wh-whenever." $He <<if canSee($activeSlave)>>looks up at<<else>>angles $his head towards you<</if>> you in supplication, tears streaking $his face. "Plea<<s>>e, <<Master>>! I'll be <<s>>-<<s>>uch a good little bitch, I promi<<s>>e!"
-<</if>>
-
-<<case "used whore">>
-
-<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-	<<set _slavename = lispReplace($activeSlave.slaveName)>>
-<<else>>
-	<<set _slavename = $activeSlave.slaveName>>
-<</if>>
-
-At the end of a long day, you take a moment to watch the comings and goings of your arcology to decompress. While doing so, you notice someone who's clearly had a longer day than you. <<= App.UI.slaveDescriptionDialog($activeSlave)>> is <<if $activeSlave.belly >= 5000>>slowly waddling, one hand under $his _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>>belly and the other on the small of $his back,<<else>>making<</if>> $his tired way back to the kitchen for a meal and then bed after a long day of sex work. $He's stripped off $his soiled clothes already, and is clearly too tired to care about nudity at all.
-<br><br>
-$He comes around the corner and
-<<if ($PC.belly >= 100000)>>
-	slams into your massively distended belly, nearly knocking you over.
-<<elseif ($PC.belly >= 10000)>>
-	bumps into your heavily gravid middle.
-<<elseif ($PC.belly >= 5000)>>
-	bumps into your rounded middle.
-<<elseif ($PC.balls >= 14)>>
-	nearly knees your prominent testicles.
-<<elseif ($PC.boobs >= 800)>>
-	runs into your prominent rack.
-<<else>>
-	almost runs into you.
-<</if>>
-$He stops and <<if canSee($activeSlave)>>stares<<else>>faces you<</if>>, struggling to find the appropriate thing to say or do, but too exhausted to manage it. Even though $he's been obediently cleaning $himself between fucks, $he looks used up. $His $activeSlave.skin skin is reddened here and there.
-<<if $activeSlave.belly >= 750000>>
-	$His _belly belly is heavily bruised, the super-stretched skin nearly at its limit from the weight put on it and the forces pushing against it.
-<<elseif $activeSlave.belly >= 600000>>
-	$His _belly belly is deep red and heavily bruised; it's clear that at least one client roughly fucked $him over it.
-<<elseif $activeSlave.belly >= 450000>>
-	$His _belly belly looks extremely painful, it's obvious $he got fucked over it.
-<<elseif $activeSlave.belly >= 300000>>
-	$His _belly belly is black and blue, it's obvious $he got fucked over it.
-<<elseif $activeSlave.belly >= 150000>>
-	$His _belly belly is heavily chafed from rubbing the floor as $he struggled to keep $his weight off it.
-<<elseif $activeSlave.belly >= 100000>>
-	$His _belly belly is heavily chafed from rubbing against the floor.
-<<elseif $activeSlave.belly >= 10000>>
-	The tip of $his huge belly is chafed from rubbing against the floor.
-<</if>>
-<<if canDoVaginal($activeSlave)>> $His <<if ($activeSlave.labia > 1)>>generous<<else>>poor<</if>> pussylips are puffy, and you have no doubt $his vagina is quite sore.<</if>><<if canDoAnal($activeSlave)>> The awkward way $he's standing suggests that $his <<if ($activeSlave.anus > 2)>>gaping<<elseif ($activeSlave.anus > 1)>>big<<else>>tight<</if>> asshole has had more than one dick up it recently.<</if>>
-<<if $activeSlave.nipples != "fuckable">>
-	Even $his nipples are pinker than usual, having been cruelly pinched<<if $activeSlave.lactation > 0>> and milked<</if>>.
-	<<if $activeSlave.lactation > 0>>
-		<<set $activeSlave.lactationDuration = 2>>
-		<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
-	<<else>>
-		<<= induceLactation($activeSlave, 2)>>
-	<</if>>
-<<else>>
-	Even $his nipples show signs of wear, having prolapsed slightly from heavy use.
-<</if>>
-
-<<case "restricted profession">>
-
-<<set _shoutitoutloud = $enunciate.title.toUpperCase()>>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>> is <<if (!hasAnyLegs($activeSlave))>>sitting <<if (hasAnyArms($activeSlave))>>helplessly<<else>>limblessly<</if>><<elseif !canWalk($activeSlave)>>kneeling<<else>>standing<</if>> before your desk for $his regular inspection. $He is studiously observing the letter of the rule against speaking, and is doing $his best to make your inspection as efficient as possible. $His desire to please radiates off $him in almost palpable waves. $He obviously wants to communicate something to you, but can't do it without breaking the rules.
-
-<<case "mods please">>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>> is such a good
-$desc
-that $he enjoys being inspected, even if the inspection doesn't immediately transition into sex. At the moment, $he's luxuriating under your gaze, eagerly offering the sight of every <<if $showInches == 2>>inch<<else>>centimeter<</if>> of $his nude body with you. $He is confident in $his appearance, and more than happy to share it.
-<br><br>
-<<if canSee($activeSlave)>>Seeing<<else>>Feeling<</if>> your intent gaze, $he
-<<if SlaveStatsChecker.checkForLisp($activeSlave)>>lisps<<else>>asks<</if>>, "<<Master>>, may I plea<<s>>e a<<s>>k you for <<s>>omething?"
-
-At your <<if canSee($activeSlave)>>nod<<else>>acknowledgment<</if>>, $he
-<<if ($activeSlave.fetish == "submissive") && ($activeSlave.fetishKnown == 1)>>
-	gives a submissive shudder, and turns to show you $his bare back.
-	"<<Master>>, may I have a cor<<s>>et pier<<c>>ing? I would love to feel more, um, bound. Tied up. Plea<<s>>e?"
-	$He awaits your answer coquettishly, <<if canSee($activeSlave)>>$his <<= App.Desc.eyesColor($activeSlave)>> huge<<else>>a look of begging on $his face<</if>>.
-<<elseif ($activeSlave.fetish == "cumslut") && ($activeSlave.fetishKnown == 1)>>
-	blows you a wet kiss.
-	"<<Master>>, may I have a tongue pier<<c>>ing? It would take my dick <<s>>ucking to the next level. Plea<<s>>e?"
-	$He sticks out $his tongue helpfully, leaving $his favorite fuckhole wide open so you can see down $his hungry throat.
-<<elseif ($activeSlave.fetish == "humiliation") && ($activeSlave.fetishKnown == 1)>>
-	blushes with humiliation.
-	"<<Master>>, may I have a t-tattoo? L-like, on my fa<<c>>e. A mean one. Plea<<s>>e?"
-	$He hangs $his head.
-<<elseif ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishKnown == 1)>>
-	spins around to show off $his favorite fuckhole, bending over <<if $activeSlave.belly >= 5000>>as far as $he can with $his _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>> belly in the way<<else>>farther than usual<</if>> to indicate the area between it and <<if $activeSlave.vagina > -1>>$his cunt<<elseif ($activeSlave.balls > 0) && ($activeSlave.scrotum > 0)>>$his ballsack<<elseif $activeSlave.dick == 0>>$his featurelessly smooth groin and its little cumhole<<else>>the base of $his soft bitchclit<</if>>.
-	"<<Master>>, may I have a pier<<c>>ing right here? Right below my butthole? It would keep me <<s>>o ready for a buttfuck. I mean, more than I already am. Plea<<s>>e?"
-	The shameless buttslut begins to wink $his asshole meaningfully.
-<<elseif ($activeSlave.fetish == "boobs") && ($activeSlave.fetishKnown == 1)>>
-	wiggles $his shoulders to give $his boobs some motion.
-	"<<Master>>, may I have <<s>>ome nipple pier<<c>>ings? It would be like having <<s>>omeone playing with my nipple<<s>>, but, like, all the time. Plea<<s>>e?"
-	$He starts to bounce flirtily.
-<<elseif ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishKnown == 1)>>
-	blushes suddenly and hangs $his head.
-	<<if $activeSlave.belly >= 10001>>
-		"<<Master>>, may I have a pier<<c>>ing? Right here? A big one?" $He indicates $his popped navel. "I feel it like it would get my belly more attention, plu<<s>> I'd hate to not take advantage of my new outie. Plea<<s>>e?
-	<<else>>
-		"<<Master>>, may I have a tattoo? Right here?" $He indicates $his <<if $activeSlave.belly > 1500>>rounded belly<<else>>abdomen<</if>>. "I would love an adverti<<s>>ement that I want to be, um, filled up.<<if $activeSlave.pregKnown == 1>>Well, when I'm empty again.<</if>> Plea<<s>>e?"
-	<</if>>
-	$He <<if canSee($activeSlave)>>looks<<else>>gazes<</if>> at you hopefully.
-<<elseif ($activeSlave.fetish == "dom") && ($activeSlave.fetishKnown == 1)>>
-	tosses $his head, a <<if canSee($activeSlave)>>gleam in $his eye<<else>>devious look on $his face<</if>>.
-	"<<Master>>, may I have a tattoo? Right here?" $He indicates $his eyebrow, temple, and cheek. "It would be cool if other girl<<s>> <<s>>aw me and were all, 'I'm about to get fucked.' Plea<<s>>e?"
-	$He smiles at you hopefully.
-<<elseif ($activeSlave.fetish == "sadist") && ($activeSlave.fetishKnown == 1)>>
-	tosses $his head, a <<if canSee($activeSlave)>>gleam in $his eye<<else>>malicious look on $his face<</if>>.
-	<<if canAchieveErection($activeSlave)>>
-		"<<Master>>, may I have a <<sh>>aft pier<<c>>ing? If I get to <<s>>tick it in another girl, I'd love to <<if canSee($activeSlave)>><<s>>ee her fa<<c>>e<<else>>feel her <<sh>>udder<</if>> when that extra little bit of metal <<s>>lide<<s>> in<<s>>ide $him. Plea<<s>>e?"
-	<<elseif $activeSlave.dick > 0>>
-		"<<Master>>, may I have a tongue pier<<c>>ing? If I get to eat another girl out, I'd love to li<<s>>ten to her <<s>>queal when that little bit of metal <<s>>crape<<s>> again<<s>>t her. Plea<<s>>e? Plea<<s>>e?"
-	<<else>>
-		"<<Master>>, may I have a labia pier<<c>>ing? If I get to trib another girl, I'd love to <<if canSee($activeSlave)>><<s>>ee her fa<<c>>e<<else>>feel her <<sh>>udder<</if>> when that little bit of metal grind<<s>> again<<s>>t her. Plea<<s>>e?"
-	<</if>>
-	$He shudders at the thought, <<if canSee($activeSlave)>>looking<<else>>gazing<</if>> at you hopefully.
-<<elseif ($activeSlave.fetish == "masochist") && ($activeSlave.fetishKnown == 1)>>
-	bites $his lower lip, looking aroused.
-	<<if $activeSlave.dick > 0>>
-		"<<Master>>, may I have a dick pier<<c>>ing? Right th-through my cock. Oh f-fuck it would hurt. Plea<<s>>e?"
-	<<else>>
-		"<<Master>>, may I have a pu<<ss>>y pier<<c>>ing? Right th-through me. Oh f-fuck it would hurt. Plea<<s>>e?"
-	<</if>>
-	$He shivers at the thought, <<if canSee($activeSlave)>>looking<<else>>gazing<</if>> at you hopefully.
-<<else>>
-	bats $his eyes at you, and turns halfway to display $his boobs in profile.
-	"<<Master>>, may I have my nipple<<s>> pier<<c>>ed? It'<<s>> <<s>>illy and girly, but I gue<<ss>> — I gue<<ss>> I'd like <<s>>omething <<s>>illy and girly. Plea<<s>>e?"
-	$He blushes prettily and <<if canSee($activeSlave)>>looks<<else>>gazes<</if>> at you hopefully.
-<</if>>
-
-<<case "resistant anal virgin">>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>> has never had anything significant up $his ass. Living in $arcologies[0].name, $he can't have missed that anal sex is a part of most slaves' lives. $He <<if canSee($activeSlave)>>witnesses<<elseif canHear($activeSlave)>>hears<<else>>thinks about<</if>> sodomy several times a day, at least.
-<br><br>
-Lately, you've noticed that $he reacts to these <<if canSee($activeSlave)>>sights<<elseif canHear($activeSlave)>>sounds<<else>>thoughts<</if>> with a well-concealed flash of apprehension. It seems $he's figured out that $he will probably be required to take it up $his little <<if $seeRace == 1>>$activeSlave.race <</if>>butt someday, and isn't enthusiastic about the prospect. You could probably exploit this.
-
 <<case "diet">>
 
 <<= App.UI.slaveDescriptionDialog($activeSlave)>> is on a diet, and $he needs it. That doesn't make it any easier for $him. Your slaves are not permitted time to waste over meals. They enter the simple kitchen, drink their allotted portion of slave food out of a cup, and get on with their duties.<<if $activeSlave.preg > $activeSlave.pregData.normalBirth/1.33>> Despite eating for <<if $activeSlave.pregType <= 1>>two<<elseif $activeSlave.pregType >= 10>>far too many<<else>><<= num($activeSlave.pregType + 1)>><</if>>, $his diet is still in full effect.<</if>> <<= capFirstChar($assistant.name)>> catches $activeSlave.slaveName, whose cup is always filled less than halfway, skulking around in the hope that one of the others will take $his eyes off $his cup, or even leave leftovers.
@@ -2824,235 +2538,6 @@ $He cranes $his neck, glancing over $his shoulder to give you a pleading look.
 	<</link>><<if ($activeSlave.anus == 0 && canDoAnal($activeSlave)) || ($activeSlave.vagina == 0 && canDoVaginal($activeSlave))>> //This option will take $his virginity//<</if>>
 <</if>>
 
-<<case "vocal disobedience">>
-
-<<link "Give $him a rough spanking">>
-	<<replace "#result">>
-		<<if (hasAnyLegs($activeSlave))>>
-			You tie the protesting slave to your desk
-			<<if $activeSlave.belly >= 5000>>
-				with $his chest against the top of the desk with $his _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>>belly hanging of the side, so that
-			<<else>>
-				so that $his chest is against the top of the desk and
-			<</if>>
-			$he's standing upright with $his ass in the air.
-		<<else>>
-			<<if $activeSlave.belly >= 300000>>
-				You carefully balance the protesting, defenseless torso atop $his own _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>stomach<</if>>.
-			<<elseif $activeSlave.belly >= 5000>>
-				You place the protesting, defenseless torso on your lap, face-down with $his _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>> belly between your legs.
-			<<else>>
-				You place the protesting, defenseless torso on your desk, face-down.
-			<</if>>
-		<</if>>
-		You spank $him severely, leaving $his buttocks bright pink. $He must count the strokes or have $his punishment start over. Sobbing, $he counts
-		<<if ($activeSlave.lips > 70)>>
-			through $his massive dick-sucking lips,
-		<<elseif ($activeSlave.lipsPiercing+$activeSlave.tonguePiercing > 2)>>
-			through $his inconvenient oral piercings
-		<</if>>
-		"<<S>>i<<x>>, AAGHHH, <<s>>even, AAGHHH, <<s>>even"
-		and then realizes $his mistake and begs for mercy — in vain, of course. You finish $him off with a rough
-		<<if canDoVaginal($activeSlave)>>
-			fuck, with $him jerking against $his restraints every time you stroke into $his sore buttocks.
-			<<= VCheck.Vaginal($activeSlave, 1)>>
-		<<elseif canDoAnal($activeSlave)>>
-			assfuck, with $him jerking against $his restraints every time you stroke into $his sore buttocks.
-			<<= VCheck.Anal($activeSlave, 1)>>
-		<<else>>
-			throatfuck, with $him jerking against $his restraints every time you hilt yourself and slap $his ass.
-			<<run seX($activeSlave, "oral", $PC, "penetrative")>>
-		<</if>>
-		@@.gold;$He learns from the experience.@@
-		<<set $activeSlave.trust -= 5>>
-	<</replace>>
-<</link>><<if canDoVaginal($activeSlave) && ($activeSlave.vagina == 0)>>//This option will take $his virginity//<<elseif !canDoVaginal($activeSlave) && canDoAnal($activeSlave) && ($activeSlave.anus == 0)>> //This option will take $his anal virginity//<</if>>
-<<if canDoAnal($activeSlave) || canDoVaginal($activeSlave)>>
-	<br><<link "Sentence $him to public use">>
-		<<replace "#result">>
-			When $he <<if canSee($activeSlave)>>sees $he's being taken to a sex booth<<elseif canHear($activeSlave)>>hears the sounds of a public sex parlor<<else>>finally figures out $his destination<</if>>, $he begins to cry. $He begs
-			<<if ($activeSlave.lips > 70)>>
-				through $his massive dick-sucking lips,
-			<<elseif ($activeSlave.lipsPiercing+$activeSlave.tonguePiercing > 2)>>
-				through $his inconvenient oral piercings,
-			<<else>>
-				through $his tears,
-			<</if>>
-			"Plea<<s>>e, no, <<Master>>, I'll be good —" but is cut off when the machine closes around $his head. It will offer $his
-			<<if canDoAnal($activeSlave) && canDoVaginal($activeSlave)>>
-				ass and pussy
-			<<elseif canDoAnal($activeSlave)>>
-				ass
-			<<else>>
-				pussy
-			<</if>>
-			to anyone who pays for the rest of the week, and keep $his fed and cleaned. $His world will become nothing but silent, featureless darkness and dick. @@.yellowgreen;You earn some money off $him,@@ and by the end of the night $his
-			<<if canDoAnal($activeSlave) && canDoVaginal($activeSlave)>>
-				holes get
-			<<else>>
-				hole gets
-			<</if>>
-			<<if (canDoAnal($activeSlave) && $activeSlave.anus == 0) || (canDoVaginal($activeSlave) && $activeSlave.vagina == 0)>>
-				well stretched.
-			<<else>>
-				@@.lime;well stretched.@@
-			<</if>>
-			@@.hotpink;$He learns from the experience.@@
-			<<if canDoAnal($activeSlave) && canDoVaginal($activeSlave)>>
-				<<if $activeSlave.vagina == 0 && $activeSlave.anus == 0>>
-					@@.lime;$He's lost both $his virginity and anal cherry.@@
-				<<elseif $activeSlave.vagina == 0>>
-					@@.lime;$He's lost $his virginity.@@
-				<<elseif $activeSlave.anus == 0>>
-					@@.lime; $He's lost $his anal cherry.@@
-				<</if>>
-				<<set $activeSlave.vagina++, $activeSlave.anus++>>
-				<<run seX($activeSlave, "vaginal", "public", "penetrative", 10)>>
-				<<run seX($activeSlave, "anal", "public", "penetrative", 10)>>
-				<<if $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
-					<<= knockMeUp($activeSlave, 25, 2, -2)>>
-				<</if>>
-			<<elseif canDoAnal($activeSlave)>>
-				<<if $activeSlave.anus == 0>>
-					@@.lime; $He's lost $his anal cherry.@@
-				<</if>>
-				<<set $activeSlave.anus++>>
-				<<run seX($activeSlave, "anal", "public", "penetrative", 5)>>
-				<<if $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
-					<<= knockMeUp($activeSlave, 50, 1, -2)>>
-				<</if>>
-			<<else>>
-				<<if $activeSlave.vagina == 0>>
-					@@.lime;$He's lost $his virginity.@@
-				<</if>>
-				<<set $activeSlave.vagina++>>
-				<<run seX($activeSlave, "vaginal", "public", "penetrative", 20)>>
-				<<if $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
-					<<= knockMeUp($activeSlave, 50, 0, -2)>>
-				<</if>>
-			<</if>>
-			<<set $activeSlave.devotion += 4>>
-			<<run cashX(50, "event", $activeSlave)>>
-		<</replace>>
-	<</link>><<if ($activeSlave.anus == 0 && canDoAnal($activeSlave)) || ($activeSlave.vagina == 0 && canDoVaginal($activeSlave))>> //This option will take $his virginity//<</if>>
-<</if>>
-<br><<link "Give $him the day off">>
-	<<replace "#result">>
-		$He skips away happily and spends the rest of the day lounging around. $His obedience to you @@.mediumorchid;has decreased.@@
-		<<set $activeSlave.devotion -= 5>>
-	<</replace>>
-<</link>>
-
-<<case "fearful humiliation">>
-
-<<link "Publicly prove the depths of $his humiliation to $him">>
-	<<replace "#result">>
-		You drag a fearful, embarrassed<<if $activeSlave.belly >= 1500>>, <<if $activeSlave.bellyPreg >= 0>>pregnant<<else>>swollen<</if>><</if>> and totally naked $activeSlave.slaveName out into a public hall. A small knot of passersby gather around grinning, enjoying the sight of $his nakedness and anticipating a show. To $his surprise, you order $him to take a few minutes to recount $his life story. $He's hesitant at first, but obeys, only realizing as $he nears the present day what an abject story of degradation and humiliation $his life truly is. $He continues shakily, describing in brief $his current life, crying a little and trembling with arousal. At a whispered command from you, $he concludes
-		<<if !canTalk($activeSlave)>>
-			in embarrassed gestures, "and now my <<= getWrittenTitle($activeSlave)>> is going to fuck my worthless body in public."
-		<<else>>
-			"and now my <<Master>> i<<s>> going to fuck my worthle<<ss>> body in public."
-		<</if>>
-		You take $him standing there, as $he cries with mixed shame and sexual pleasure.
-		<<if !canDoVaginal($activeSlave)>>
-			$He <<if ($activeSlave.dick > 0)>>cums even though $he's soft<<else>>climaxes even though $he's filled<</if>> with the shame, <<if $PC.dick == 0>>$his anus clenching around the strap-on you're pumping in and out of it<<else>>adding a sad little dribble to the load dripping out of $his asshole<</if>>.
-		<<else>>
-			<<if $PC.dick == 0>>You make $him clean $his pussyjuice off your strap-on with $his bitch mouth before you take it off.<<else>>As you pull out of $his clenching pussy, cum runs down $his quavering thighs.<</if>>
-		<</if>>
-		@@.hotpink;$He has become more submissive to you,@@ and @@.green;your reputation has increased.@@
-		<<set $activeSlave.devotion += 4>>
-		<<run repX(500, "event", $activeSlave)>>
-		<<if canDoVaginal($activeSlave)>>
-			<<= VCheck.Vaginal($activeSlave, 1)>>
-		<<else>>
-			<<= VCheck.Anal($activeSlave, 1)>>
-		<</if>>
-	<</replace>>
-<</link>>
-<br><<link "Use a bait and switch tactic on $him, before public use">>
-	<<replace "#result">>
-		You instruct $him to get cleaned up and get dressed in $his nicest clothing. $He obeys, mystified, and is further puzzled to find that you're taking $him out for a nice evening at a small bar. You share a tasty meal and listen to good music played on the little stage by an older slave. As the set concludes, you lean over and give $activeSlave.slaveName $his real orders for the evening. $He freezes in terror but eventually makes $his way up to the stage, strips in front of all the patrons, and says
-		<<if !canTalk($activeSlave)>>
-			in embarrassed gestures, "Please use me, I'm cheap."
-		<<else>>
-			"One credit per fuck, if you'll do my worthle<<ss>> body on <<s>>tage."
-		<</if>>
-		By the end of the night, $he's been fucked by almost everyone in the bar, and $his itch for humiliation has been well and truly scratched. As you collect $his earnings from the thoroughly pleased bartender, $he lies quiescent in a puddle of cum and exhaustion. @@.yellowgreen;You've collected a decent fee,@@ and @@.green;your reputation has increased.@@
-		<<run repX(500, "event", $activeSlave)>>
-		<<run cashX(100, "event", $activeSlave)>>
-		<<if canDoVaginal($activeSlave) && canDoAnal($activeSlave)>>
-			<<run seX($activeSlave, "vaginal", "public", "penetrative", 10)>>
-			<<run seX($activeSlave, "anal", "public", "penetrative", 10)>>
-			<<if $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
-				<<= knockMeUp($activeSlave, 25, 2, -2)>>
-			<</if>>
-		<<elseif canDoVaginal($activeSlave)>>
-			<<run seX($activeSlave, "vaginal", "public", "penetrative", 20)>>
-			<<if $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
-				<<= knockMeUp($activeSlave, 50, 0, -2)>>
-			<</if>>
-		<<else>>
-			<<run seX($activeSlave, "anal", "public", "penetrative", 20)>>
-			<<if $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
-				<<= knockMeUp($activeSlave, 50, 1, -2)>>
-			<</if>>
-		<</if>>
-	<</replace>>
-<</link>>
-
-<<case "heavy piercing">>
-
-<<link "Weight $his piercings and fuck $him so they swing">>
-	<<replace "#result">>
-		You order $him to make sure all of $his piercings have rings in them, and then come join you when $he's done. $He enters your office with a mixture of fear and curiosity on $his face. You put $him down on <<if hasAllLimbs($activeSlave)>>all fours<<else>>the ground<</if>><<if hasBothLegs($activeSlave)>> with $his legs spread<</if>><<if $activeSlave.belly >= 50000>>, belly brushing the floor<</if>>, <<if canSee($activeSlave)>>blindfold $him, <</if>>and then start clipping little metal weights on short chains to each of $his piercings. Before long, $his nipples are painfully stretched under the tugging, <<if ($activeSlave.dick > 0)>>and the weights up and down $his cock are causing $his considerable discomfort.<<elseif $activeSlave.vagina == -1>>and though $he lacks any external genitalia to weight, you make sure $his ass feels the burn.<<else>>$his pussylips are being pulled downward, and even $his clit is agonizingly tortured.<</if>> You fuck $him thoroughly, pounding $him so the weights swing. $He sobs and begs. @@.hotpink;$He has become more submissive to you.@@
-		<<set $activeSlave.devotion += 4>>
-		<<if canDoVaginal($activeSlave)>>
-			<<= VCheck.Vaginal($activeSlave, 1)>>
-		<<else>>
-			<<= VCheck.Anal($activeSlave, 1)>>
-		<</if>>
-	<</replace>>
-<</link>><<if ($activeSlave.anus == 0 && canDoAnal($activeSlave)) || ($activeSlave.vagina == 0 && canDoVaginal($activeSlave))>> //This option will take $his virginity//<</if>>
-<br><<link "Secure $him by $his piercings for public use">>
-	<<replace "#result">>
-		You order $him to make sure all of $his piercings have rings in them, and then come to you when $he's done. $He enters your office with a mixture of fear and curiosity on $his face. You lead $him outside and secure $him in a side hall so that $his ass is presented to anyone who takes interest. $He's forced to maintain this exact posture by a light chain between <<if $activeSlave.belly > 10000>>$his popped navel and a ring on the ground.<<elseif ($activeSlave.dick > 0)>>$his dickhead and a ring on the ground.<<elseif $activeSlave.vagina == -1>>$his nipples and a ring on the ground.<<else>>$his pussy and a ring on the ground.<</if>> You fuck $his ass to check the bondage; it's good. The chain is out of the way, and $he jerks and struggles amusingly to keep it from tugging $him painfully. You pull out to leave $his fucked butt with cum dribbling out of it, and leave $him to the tender mercies of the growing crowd. @@.green;The sadists among the public are duly grateful.@@
-		<<if canDoAnal($activeSlave) && canDoVaginal($activeSlave)>>
-			<<if $activeSlave.vagina == 0 && $activeSlave.anus == 0>>
-				They take pleasure in claiming @@.lime;both $his virginity and anal cherry.@@
-			<<elseif $activeSlave.vagina == 0>>
-				They take pleasure in claiming @@.lime;$his virginity.@@
-			<<elseif $activeSlave.anus == 0>>
-				They take pleasure in claiming @@.lime;$his anal cherry.@@
-			<</if>>
-			<<set $activeSlave.vagina++, $activeSlave.anus++>>
-			<<run seX($activeSlave, "anal", "public", "penetrative", 5)>>
-			<<run seX($activeSlave, "vaginal", "public", "penetrative", 5)>>
-			<<if $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
-				<<= knockMeUp($activeSlave, 10, 2, -2)>>
-			<</if>>
-		<<elseif canDoAnal($activeSlave)>>
-			<<if $activeSlave.anus == 0>>
-				They take pleasure in claiming @@.lime;$his anal cherry.@@
-			<</if>>
-			<<set $activeSlave.anus++>>
-			<<run seX($activeSlave, "anal", "public", "penetrative", 10)>>
-			<<if $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
-				<<= knockMeUp($activeSlave, 25, 1, -2)>>
-			<</if>>
-		<<else>>
-			<<if $activeSlave.vagina == 0>>
-				They take pleasure in claiming @@.lime;$his virginity.@@
-			<</if>>
-			<<set $activeSlave.vagina++>>
-			<<run seX($activeSlave, "vaginal", "public", "penetrative", 5)>>
-			<<if $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
-				<<= knockMeUp($activeSlave, 25, 0, -2)>>
-			<</if>>
-		<</if>>
-		<<run repX(2500, "event", $activeSlave)>>
-	<</replace>>
-<</link>><<if ($activeSlave.anus == 0 && canDoAnal($activeSlave)) || ($activeSlave.vagina == 0 && canDoVaginal($activeSlave))>> //This option will take $his virginity//<</if>>
-
 <<case "age implant">>
 
 <<link "Go out clubbing to make $him feel young again">>
@@ -3722,1068 +3207,6 @@ $He cranes $his neck, glancing over $his shoulder to give you a pleading look.
 	<</replace>>
 <</link>>
 
-<<case "huge tits">>
-
-<<link "Join $him in the shower">>
-	<<replace "#result">>
-		You step into the running water and help $him to $his feet with exaggerated gallantry. $He seems surprised <<if canSee($activeSlave)>>and stares at<<else>>faces<</if>> you through the steam for a moment before looking away with a blush. Before long you have $his back against the shower wall, $his titanic udders<<if $activeSlave.belly >= 5000>> and _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>> belly<</if>> offering an amusing challenge as they slide soapily between you as you fuck. $He comes in no time at all, and a brief massage of $his huge soapy nipples produces a whimpering aftershock orgasm. <<if canSee($activeSlave)>>$His <<= App.Desc.eyesColor($activeSlave)>> stare straight into yours<<else>>You stare into $his <<= App.Desc.eyesColor($activeSlave)>><</if>> as $he writhes with overstimulation, @@.mediumaquamarine;$his trust in your stewardship of $his pleasure total.@@
-		<<if canDoVaginal($activeSlave)>><<= VCheck.Vaginal($activeSlave, 1)>><<elseif canDoAnal($activeSlave)>><<= VCheck.Anal($activeSlave, 1)>><</if>>
-		<<set $activeSlave.devotion += 4>>
-	<</replace>>
-<</link>> <<if ($activeSlave.vagina == 0) && canDoVaginal($activeSlave)>>//This option will take $his virginity//<<elseif ($activeSlave.vagina == -1) && ($activeSlave.anus == 0) && canDoAnal($activeSlave)>>//This option will take $his anal virginity//<</if>>
-<br><<link "Fuck $his immobilized body">>
-	<<replace "#result">>
-		You make no answer, groping $his soapy <<if $seeRace == 1>>$activeSlave.race <</if>>buttocks.
-		<<if ($activeSlave.anus > 2) && canDoAnal($activeSlave)>>
-			$His rectum is so fucked out and loose that your groping hand almost slides up it.
-		<<elseif ($activeSlave.vagina > 2) && canDoVaginal($activeSlave)>>
-			$His pussy is so fucked out and loose that your groping hand almost slides up it.
-		<<else>>
-			You finger fuck $him for a while, the sting of the soap on $his sensitive insides making $him gasp.
-		<</if>>
-		It's not like you can't tie $him up and fuck $him whenever you like, but sliding back and forth on $his soapy body is kind of nice.
-		<<if $PC.dick == 0>>
-			You ride yourself against $him until you orgasm
-		<<else>>
-			You leave a load of cum in
-			<<if canDoAnal($activeSlave) && canDoVaginal($activeSlave)>>
-				each of $his holes
-				<<set _didVaginal = 1, _didAnal = 1>>
-			<<elseif canDoAnal($activeSlave)>>
-				$his loosened butthole
-				<<set _didAnal = 1>>
-			<<else>>
-				$his loosened vagina
-				<<set _didVaginal = 1>>
-			<</if>>
-			<<if $PC.vagina != -1>> and make $him eat your pussy for a quick aftershock,<</if>>
-		<</if>>
-		and only then do you help $him back to $his feet. $He drips soap, water, and <<if $PC.dick == 0>>your juices<<else>>ejaculate<</if>>. @@.hotpink;$He has become more submissive.@@
-		<<if _didVaginal == 1 && _didAnal == 1>>
-			<<= VCheck.Both($activeSlave, 1)>>
-		<<elseif _didVaginal == 1>>
-			<<= VCheck.Vaginal($activeSlave, 1)>>
-		<<elseif _didAnal == 1>>
-			<<= VCheck.Anal($activeSlave, 1)>>
-		<</if>>
-		<<set $activeSlave.devotion += 4>>
-	<</replace>>
-<</link>><<if ($activeSlave.anus == 0) || ($activeSlave.vagina == 0)>> //This option will take $his virginity//<</if>>
-<br><<link "Let $him figure it out">>
-	<<replace "#result">>
-		$He flounders around for a while until you get bored and leave $him to it. Eventually $his whining brings another slave in, who helps $him. This interdependence between slaves @@.mediumorchid;reduces $his devotion.@@
-		<<set $activeSlave.devotion -= 5>>
-	<</replace>>
-<</link>>
-
-<<case "trusting HG">>
-
-<<link "Commend $his service">>
-	<<replace "#result">>
-		You clear your throat and compliment $him, commending $his work ethic, trustworthiness, and loyalty. $He blushes much harder as $he understands. "Thank you,
-		<<if $HGFormality == 1>>
-			<<Master>>!"
-		<<else>>
-			<<if def $PC.customTitle>><<Master>><<elseif $PC.title != 0>><<S>>ir<<else>>Ma'am<</if>>!"
-		<</if>>
-		$he says fervently, and gestures at the tablet.
-		"I've noti<<c>>ed a couple of the <<s>>lave<<s>> working better together re<<c>>ently, <<s>>o I'm making <<s>>ome minor adju<<s>>tment<<s>> to give them more <<sh>>ift<<s>> together."
-		<br><br>
-		You're sure $he'll do $his best, and you tell $him so. $He thanks you again, and you both go back to your work. Though your Head Girl continues manipulating $his tablet diligently, $he can't seem to stop $himself from @@.hotpink;stealing the occasional glance at you.@@ $His <<= App.Desc.eyesColor($activeSlave)>>, dark in the dimness of the office, seem to have an unaccountable sheen.
-		<<if $assistant.personality != 0>>
-		<<setSpokenAssistantPronouns $activeSlave>>
-		<<= capFirstChar($assistant.name)>>'s $assistant.appearance avatar appears on your desktop, glowing brightly, and ruins the moment. "$activeSlave.slaveName loooves $his <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Maaaster<<else>>Miiistress<</if>>," _heA taunts,
-		<<switch $assistant.appearance>>
-		<<case "monstergirl">>
-			_hisA hair forming a heart shape.
-		<<case "shemale">>
-			using _hisA hands to make a heart shape over _hisA balls.
-		<<case "amazon">>
-			grinning far more sweetly than _hisA muscular form should be able to manage.
-		<<case "businesswoman">>
-			though _heA's blushing _himselfA.
-		<<case "cherub" "fairy" "pregnant fairy">>
-			flitting around and giggling excitedly.
-		<<case "goddess">>
-			massaging _hisA pregnant belly meaningfully.
-		<<case "hypergoddess">>
-			massaging _hisA squirming pregnant belly meaningfully.
-		<<case "loli">>
-			giggling playfully.
-		<<case "preggololi">>
-			giggling playfully, though _hisA hands have wandered to _hisA crotch.
-		<<case "angel">>
-			using _hisA hands to make a heart shape.
-		<<case "incubus">>
-			using _hisA hands to make a heart shape around _hisA erection as _heA thrusts.
-		<<case "succubus">>
-			<<if $PC.dick != 0>>forms an "O" with _hisA lips and makes exaggerated head bobbing motions<<else>>forms a "V" with _hisA fingers and wiggles _hisA tongue in it<</if>>.
-		<<case "imp">>
-			flapping around and cackling manically.
-		<<case "witch">>
-			while holding out a mostly empty vial of love potion.
-		<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
-			forming half of _himselfA into an enormous pussy, the other into a giant dick, and introducing the two to each other.
-		<<case "schoolgirl">>
-			the very picture of a malicious school<<= _girlA>>.
-		<<default>>
-			turning _hisA avatar a throbbing pink.
-		<</switch>>
-		<br><br>
-		Your Head Girl turns a darker shade of red. "Oh, <<sh>>ut up, you little
-		<<switch $assistant.appearance>>
-		<<case "monstergirl">>
-			mon<<s>>ter,"
-		<<case "shemale">>
-			cockmon<<s>>ter,"
-		<<case "amazon">>
-			dyke,"
-		<<case "businesswoman">>
-			witch,"
-		<<case "fairy" "pregnant fairy">>
-			mo<<s>>quito,"
-		<<case "goddess" "hypergoddess">>
-			cow,"
-		<<case "loli">>
-			midget,"
-		<<case "preggololi">>
-			<<s>>lut <<loliA>>,"
-		<<case "angel">>
-			turkey,"
-		<<case "cherub">>
-			dove,"
-		<<case "incubus">>
-			dick,"
-		<<case "succubus">>
-			cunt,"
-		<<case "imp">>
-			bat,"
-		<<case "witch">>
-			blunderer,"
-		<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
-			<<sh>>ape<<sh>>ifter,"
-		<<case "schoolgirl">>
-			<<s>>lut,"
-		<<default>>
-			toa<<s>>ter,"
-		<</switch>>
-		$he says cattily, but $he smiles as well.
-		<</if>>
-		<<set $activeSlave.devotion += 4>>
-	<</replace>>
-<</link>>
-<br><<link "Share some refreshments with $him">>
-	<<replace "#result">>
-		You reach into the back of your desk, where your private reserves are, and wordlessly offer $him a
-		<<if $PC.refreshmentType == 0>>
-			$PC.refreshment.
-		<<elseif $PC.refreshmentType == 1>>
-			glass of $PC.refreshment.
-		<<elseif $PC.refreshmentType == 2>>
-			plate of $PC.refreshment.
-		<<elseif $PC.refreshmentType == 3>>
-			line of $PC.refreshment.
-		<<elseif $PC.refreshmentType == 4>>
-			syringe of $PC.refreshment.
-		<<elseif $PC.refreshmentType == 5>>
-			pill of $PC.refreshment.
-		<<elseif $PC.refreshmentType == 6>>
-			tab of $PC.refreshment.
-		<</if>>
-		$He stares at you disbelievingly for a moment before stammering $his thanks and accepting it with both hands. $He holds it uncertainly, watching you get one yourself.
-		<br><br>
-		$He is first among your slaves, but $he is still very much a slave. $He neither receives nor expects
-		<<if $PC.refreshmentType == 0>>
-			indulgences like tobacco and other smokables. Carcinogens are sometimes the necessary side effects of slave body modification, not an acceptable downside of luxury.
-		<<elseif $PC.refreshmentType == 1>>
-			drink other than what the slave feeding systems provide $him. $He might be your Head Girl, but the liquid food keeps $his libido charged, $his body healthy, and $his asshole invitingly clean, just like any other slave.
-		<<elseif $PC.refreshmentType == 2>>
-			food other than what the slave feeding systems provide $him. $He might be your Head Girl, but the liquid food keeps $his libido charged, $his body healthy, and $his asshole invitingly clean, just like any other slave.
-		<<else>>
-			drugs other than what the drug dispensers provide $him. Addictive drugs are rarely provided to slaves, replaced instead with slightly healthier, but no less addictive, aphrodisiacs.
-		<</if>>
-		But it'll do no harm, just this once, and you tell $him so. $He nods, not wanting to spoil the moment by speaking.
-		<br><br>
-		<<if $PC.refreshmentType == 0>>
-			After you light $his $PC.refreshment for $him, $he holds the <<if canTaste($activeSlave)>>first taste<<else>>feeling<</if>> of its smoke in $his mouth for a long, sensual moment before letting it trickle back out through $his lips.
-		<<elseif $PC.refreshmentType == 1 || $PC.refreshmentType == 2>>
-			$He holds the <<if canTaste($activeSlave)>>first taste<<else>>feeling<</if>> of it in $his mouth for a long, sensual moment before swallowing reverently.
-		<<else>>
-			$He savors the thrill of using $PC.refreshment for a moment, before turning to you, an almost desperate need on $his face.
-		<</if>>
-		You return to work, and $he follows your example, though $he's rather distracted. When $he finishes $hers, $he sets $his tablet down for a moment and comes over to you, doing $his best to show $his naked body to its best advantage as $he comes. $He gives you a deep kiss,
-		<<if $PC.refreshmentType == 0 || $PC.refreshmentType == 1 || $PC.refreshmentType == 2>>
-			which tastes of fine $PC.refreshment, with a hint of $activeSlave.slaveName,
-		<<else>>
-			with plenty of tongue,
-		<</if>>
-		and then goes back to work, @@.mediumaquamarine;smiling unconsciously@@ as $he savors the lingering <<if $PC.refreshmentType == 3 || $PC.refreshmentType == 4 || $PC.refreshmentType == 5 || $PC.refreshmentType == 6>>rush<<else>><<if canTaste($activeSlave)>>flavor<<else>>sensation<</if>><</if>>.
-		<<set $activeSlave.trust += 4>>
-	<</replace>>
-<</link>>
-
-<<case "ignorant horny">>
-
-<<link "Tell $him the truth">>
-	<<replace "#result">>
-		You explain the effects of the
-		<<if ($activeSlave.aphrodisiacs > 0) || $activeSlave.inflationType == "aphrodisiac">>
-			sex drugs
-		<<elseif ($activeSlave.clitPiercing == 3) && ($activeSlave.clitSetting != "none")>>
-			advanced <<if $activeSlave.vagina > -1>>clit<<else>>frenulum<</if>> piercing
-		<<else>>
-			slave food
-		<</if>>
-		briefly. Comprehension dawns across $his<<if $activeSlave.faceShape != "normal">> $activeSlave.faceShape<</if>> face.
-		"Yes <<Master>>," $he <<say>>s quietly, more to buy time to formulate a response than anything else. "Um. I <<s>>till really, really want to cum, though. W-would you plea<<s>>e fuck me? Plea<<s>>e, plea<<s>>e, <<Master>>, plea<<s>>e fuck
-		<<if ($activeSlave.vagina > 0) && ($activeSlave.preg > $activeSlave.pregData.normalBirth/4) && canDoVaginal($activeSlave)>>
-			my pregnant pu<<ss>>y."
-		<<elseif ($activeSlave.vagina > 0) && canDoVaginal($activeSlave)>>
-			me."
-		<<elseif canDoAnal($activeSlave)>>
-			my butt."
-		<<else>>
-			<<if ($activeSlave.vagina > 0) && ($activeSlave.preg > $activeSlave.pregData.normalBirth/4)>>
-				my pregnant pu<<ss>>y.
-			<<elseif ($activeSlave.vagina > 0)>>
-				me.
-			<<else>>
-				my butt.
-			<</if>>
-			I need it <<s>>o bad right now, plea<<s>>e rip off my cha<<s>>tity and fuck me <<s>>en<<s>>ele<<ss>>."
-		<</if>>
-		A vague hint of embarrassment at begging for <<if $PC.dick != 0>>a hard<<if $PC.vagina != -1>>futa<</if>> dicking<<else>>your strap-on<</if>> flickers across $his face, but hope for sexual release extinguishes it quickly.
-		<br><br>
-		<<if canDoAnal($activeSlave) || canDoVaginal($activeSlave)>>
-			$He groans with relief as your <<if $PC.dick != 0>>cock<<else>>phallus<</if>> enters $him. $He does not orgasm immediately, but $he knows sweet release is coming. You have $him atop your desk, on $his back, and $he's participating in $his own sexual degradation by holding $his legs spread wide apart for you. "Ohh," $he moans as you fuck $him, "thank you for telling me why I feel thi<<s>> way, <<Master>>. I gue<<ss>> thi<<s>> i<<s>> how I, oh, am now? Oh, oh, it feel<<s>> <<s>>o g-good! Ye<<s>>! AHH!"
-			<<if $PC.dick != 0>>
-				$His
-				<<if ($activeSlave.vagina > 0) && canDoVaginal($activeSlave)>>
-					cunt
-				<<else>>
-					asshole
-				<</if>>
-				tightens around your shaft delightfully as $he climaxes.
-			<<else>>
-				$He shudders with climax.
-			<</if>>
-			$He smiles @@.mediumaquamarine;trustingly@@ up at you in the afterglow,
-			<<if $activeSlave.balls > 0>>
-				$his ejaculate
-				<<if ($activeSlave.chastityPenis == 1)>>
-					seeping from $his chastity cage,
-				<<else>>
-					glistening on $his<<if $activeSlave.belly > 1500>> _belly<<if $activeSlave.bellyPreg >= 1500>> gravid<</if>><</if>> belly,
-				<</if>>
-			<</if>>
-			touched that you would tell $him something like that so honestly.
-			<<if ($activeSlave.vagina > 0) && canDoVaginal($activeSlave)>>
-				<<= VCheck.Both($activeSlave, 1)>>
-			<<else>>
-				<<= VCheck.Anal($activeSlave, 1)>>
-			<</if>>
-		<<else>>
-			$He groans with lust as pull $him onto your lap to make out. "Ohh," $he moans as you run your hands across $his
-			<<if $activeSlave.boobsImplant >= 1000 && (($activeSlave.boobsImplant/$activeSlave.boobs) >= .60)>>
-				bimbo
-			<<elseif $activeSlave.boobs >= 1000 && $activeSlave.butt > 5 && $activeSlave.hips > 0>>
-				fecund
-			<<elseif $activeSlave.boobs >= 1000 && $activeSlave.butt > 5>>
-				voluptuous
-			<<elseif $activeSlave.weight > 190>>
-				voluminous
-			<<elseif $activeSlave.belly >= 5000>>
-				<<if $activeSlave.bellyPreg >= 3000>>
-					gravid
-				<<elseif $activeSlave.bellyImplant >= 3000>>
-					rounded
-				<<else>>
-					swollen
-				<</if>>
-			<<elseif $activeSlave.weight > 30>>
-				soft
-			<<elseif $activeSlave.muscles > 30>>
-				ripped
-			<<elseif $activeSlave.muscles > 5>>
-				toned
-			<<elseif $activeSlave.boobs >= 500>>
-				sultry
-			<<else>>
-				needy
-			<</if>>
-			body, "thank you for telling me why I feel thi<<s>> way, <<Master>>. I gue<<ss>> thi<<s>> i<<s>> how I, oh, am now?" You reward $him for the realization by
-			<<switch $activeSlave.nipples>>
-			<<case "huge">>
-				stroking $his lewdly erect nipples.
-			<<case "huge">>
-				tweaking $his revealed nipples.
-			<<case "puffy">>
-				cupping and fondling $his puffy nipples.
-			<<case "partially inverted">>
-				teasing $his fully exposed nipples.
-			<<case "inverted">>
-				squeezing $his puffy areolae until $his inverted nipples pop out for you to tease.
-			<<case "fuckable">>
-				sticking your fingers deep into $his nipples.
-			<<default>>
-				tweaking $his $activeSlave.nipples nipples.
-			<</switch>>
-			The pent-up $girl is so desperate for release, you can feel $him trembling with ecstasy from the nipple stimulation alone.
-			"Oh, oh, it feel<<s>> <<s>>o g-good! Ye<<s>>! AHH!"
-			$He shudders with climax, smiling @@.mediumaquamarine;trustingly@@ up at you in the afterglow,
-			<<if $activeSlave.balls > 0>>
-				$his ejaculate
-				<<if ($activeSlave.chastityPenis == 1)>>
-					seeping from $his chastity cage,
-				<<else>>
-					glistening on $his<<if $activeSlave.belly > 1500>> _belly<<if $activeSlave.bellyPreg >= 1500>> gravid<</if>><</if>> belly,
-				<</if>>
-			<</if>>
-			touched that you would tell $him something like that so honestly.
-			<<run seX($activeSlave, "mammary", $PC, "penetrative")>>
-		<</if>>
-		<<set $activeSlave.trust += 4>>
-	<</replace>>
-<</link>>
-<<if ($activeSlave.fetish != "cumslut") || ($activeSlave.fetishKnown != 1)>>
-	<br><<link "Trade some oral for release">>
-		<<replace "#result">>
-			You observe, noncommittally, that $he seems ready to get off.
-			"Ye<<s>> <<Master>>!" $he squeals, too <<if $activeSlave.intelligence+$activeSlave.intelligenceImplant >= -50>>horny<<else>>stupid<</if>> to notice the sarcasm. Sighing inwardly, you slide yourself back from your desk and glance downward significantly, indicating your <<if $PC.dick != 0>>dick<<if $PC.vagina != -1>> and pussy<</if>><<else>>girl parts<</if>>. $He hurries over, almost throwing $himself at your feet in $his eagerness. "Touch yourself", you say, making it an imperious command rather than kind permission. $He moans into your <<if $PC.dick != 0>>cock<<else>>cunt<</if>> with gratitude as $he
-			<<if canDoVaginal($activeSlave)>>
-				<<if $activeSlave.dick > 0 && !($activeSlave.chastityPenis)>>
-					wraps one hand around $his dick and slips the other into $his pussy.
-				<<else>>
-					dives for $his pussy with <<if hasBothArms($activeSlave)>>both hands<<else>>$his hand<</if>>.
-				<</if>>
-			<<elseif $activeSlave.dick > 0 && !($activeSlave.chastityPenis)>>
-				<<if canAchieveErection($activeSlave)>>
-					<<if $activeSlave.dick > 4>>
-						wraps $his hand<<if hasBothArms($activeSlave)>>s<</if>> around $his huge erection.
-					<<elseif canDoAnal($activeSlave) && $activeSlave.prostate > 0>>
-						wraps a hand around $his throbbing erection and reaches around to finger $his butt and stimulate $his prostate.$his
-					<<else>>
-						wraps a hand around $his throbbing erection.
-					<</if>>
-				<<else>>
-					<<if $activeSlave.dick > 4>>
-						dives for $his huge, soft cock with <<if hasBothArms($activeSlave)>>both hands<<else>>$his hand<</if>>.
-					<<else>>
-						reaches down to fondle $his limp dick.
-					<</if>>
-				<</if>>
-			<<elseif canDoAnal($activeSlave)>>
-				<<if $activeSlave.dick == 0>>
-					reaches down and around to rub $his <<if canDoAnal($activeSlave)>>anus and <</if>>perineum.
-				<<else>>
-					<<if $activeSlave.vagina == -1>>
-						reaches around to finger $his butt, since that's $his only hole.
-					<<elseif $activeSlave.chastityVagina == 1>>
-						reaches around to finger $his butt, since $his pussy's in chastity.
-					<<else>>
-						dives for $his pussy with <<if hasBothArms($activeSlave)>>both hands<<else>>$his hand<</if>>.
-					<</if>>
-				<</if>>
-			<<elseif $activeSlave.vagina == -1 && $activeSlave.dick == 0>>
-				<<if $activeSlave.balls > 4>>
-					cups $his desperate balls, massaging them and encouraging them to release their pent-up cum.
-				<<else>>
-					reaches down and around to rub $his <<if canDoAnal($activeSlave)>>anus and <</if>>perineum.
-				<</if>>
-			<<else>>
-				brings $his hand<<if hasBothArms($activeSlave)>>s<</if>> to $his breasts to <<if $activeSlave.nipples != "fuckable">>tease $his erect<<else>>finger $his swollen<</if>> nipples.
-			<</if>>
-			<br><br>
-			$He's extremely pent up, and orgasms twice with <<if $PC.dick != 0>>your dick in $his mouth<<if $PC.vagina != -1>> first and $his tongue quivering along your pussylips second<</if>><<else>>$his mouth on your cunt<</if>>. The mental effects of this formative little experience are impossible to control with precision. Over the next few days, you notice that whenever <<if canSee($activeSlave)>>$he sees you<<else>>you see $him<</if>>,
-			<<if (random(0,1) == 1)>>
-				$he licks $his lips unconsciously. $He seems to be developing the beginnings of a lovely @@.lightcoral;oral fixation.@@
-				<<set $activeSlave.fetish = "cumslut", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 10>>
-			<<else>>
-				$he betrays mixed feelings. The shocking intimacy of reaching sexual release as $he used $his mouth to pleasure you seems to be @@.hotpink;affecting $him.@@
-				<<set $activeSlave.devotion += 4>>
-			<</if>>
-			<<run seX($activeSlave, "oral", $PC, "penetrative")>>
-		<</replace>>
-	<</link>>
-<</if>>
-<<if ($activeSlave.fetish != "buttslut") || ($activeSlave.fetishKnown != 1)>>
-	<<if ($activeSlave.vagina == -1) && ($activeSlave.attrXY <= 65)>>
-		<br><<link "Make $him cum like a girl">>
-			<<replace "#result">>
-				You order $him to get $his ass up on your desk. $He obeys, though not without a flicker of trepidation. $He points $his butt at you like a sex slave should, and doesn't crane around to <<if canSee($activeSlave)>>see<<else>>feel<</if>> what you're doing behind $him, but $he's stiff with the awareness that <<if $PC.dick != 0>>there's almost certainly a hard<<if $PC.vagina != -1>> futa<</if>> dick about<<else>>you're almost certainly donning a strap-on<</if>> to slide inside $his girly asspussy. $He's not wrong, and $he lets out a little moan as <<if $PC.dick != 0>>your cockhead<<if $PC.vagina != -1>>, which you kindly lubed with a bit of your pussyjuice,<</if>><<else>>its broad tip<</if>> <<if $activeSlave.anus > 2>>slides easily inside $his whorish anus<<elseif $activeSlave.anus == 2>>slides up $his experienced butthole<<else>>forces its way inside $his tight sphincter<</if>>.
-				<br><br>
-				As you fuck $him, you pull $his torso up so you can play with $his <<if $activeSlave.boobs > 2000>>udders<<elseif $activeSlave.boobs > 800>>tits<<else>>nipples<</if>> and whisper manipulation into $his ear. You tell $him $he's about to cum like a girl. $He says nothing, but $his body language communicates incomprehension. Girls, you tell $him, cum when they get fucked. They cum when <<if $PC.title == 1>>guys<<else>>their betters<</if>> stick dick inside them. $He bursts into tears, sobbing with shame and degradation even as $he shakes and <<if $activeSlave.balls > 0>>squirts cum<<else>>dribbles ejaculate<</if>>. The next time $he sees you,
-				<<if (random(0,1) == 1)>>
-					$he visibly gathers $his courage, and flirtatiously @@.lightcoral;offers you $his ass.@@
-					<<set $activeSlave.fetish = "buttslut", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 10>>
-				<<else>>
-					$he manages to stop $himself from breaking down, and seems to be @@.hotpink;working hard@@ to convince $himself that $he's a girl.
-					<<set $activeSlave.devotion += 4>>
-				<</if>>
-				<<= VCheck.Anal($activeSlave, 1)>>
-			<</replace>>
-		<</link>>
-	<<elseif ($activeSlave.vagina > -1)>>
-		<br><<link "Work on broadening $his sexual horizons">>
-			<<replace "#result">>
-				$He seems a little too focused on $his hot cunt. You order $him to get up on your desk, and $he obeys eagerly, $his <<if canSee($activeSlave)>><<= App.Desc.eyesColor($activeSlave)>> shining<<else>>facial expression filled<</if>> with lust. <<if canSee($activeSlave)>>They focus<<else>>$He focuses<</if>> on <<if $PC.dick != 0>>your cock as you bring it to bear<<if $PC.vagina != -1>>, not to mention the pussy at its base<</if>><<else>>your strap-on as you step into it<</if>>, and $he's about to express $his gratitude when you push the slave, who is sitting on the edge of your desk with $his legs spread to provide you access to $his pussy, over onto $his back. $He barely has time to reorient $himself when $he feels <<if $activeSlave.anus > 2>>a sudden fullness in $his loose ass<<elseif $activeSlave.anus == 2>>a presence inside $his experienced ass<<else>>something starting to push its way up $his poor little bottom<</if>>.
-				<br><br>
-				$He cannot hide $his disappointment, but has the presence of mind not to protest as you assfuck $him hard enough that $his <<if $activeSlave.boobs > 2000>>ridiculous tits almost hit $him in the face with each stroke<<elseif $activeSlave.boobs > 800>>big boobs bounce all over the place<<else>>boobs bounce<</if>><<if $activeSlave.belly >= 10000>> and taut belly is forced back<</if>>. $His orgasm sneaks up on $him, and comes by surprise, forcing a squeal out of $him as $his sphincter tightens down involuntarily. $He gets up gingerly, clearly feeling sore,
-				<<if (random(0,1) == 1)>>
-					and looks preoccupied. $He reaches idly around and massages $his well-fucked backdoor meditatively, biting $his lower lip as $he investigates. Maybe, $he seems to be thinking, @@.lightcoral;anal is fun?@@
-					<<set $activeSlave.fetish = "buttslut", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 10>>
-				<<else>>
-					but @@.hotpink;does $his honest best@@ to look grateful. $He knows $he's a sex slave and can't afford to be particular about little things like getting buttfucked.
-					<<set $activeSlave.devotion += 4>>
-				<</if>>
-				<<= VCheck.Anal($activeSlave, 1)>>
-			<</replace>>
-		<</link>>
-	<</if>>
-<</if>>
-
-<<case "cage relief">>
-
-<<link "Help $him get off">>
-	<<replace "#result">>
-		You take $him by the hand and pull $him to $his feet, and then kiss $him. $He knows that this means no, but melts into you anyway, accepting the comforting gesture for what it is. $He's surprised when you do not break the kiss, but continues to make out with you compliantly. You take $him by the hands, intertwining your fingers with $hers and holding them down at your sides for a while before wrapping $his arms around you at your
-		<<if $PC.belly >= 10000>>
-			heavily pregnant
-		<<elseif $PC.belly >= 5000>>
-			gravid
-		<<elseif $PC.belly >= 1500>>
-			swollen
-		<<elseif $arcologies[0].FSPhysicalIdealist != "unset">>
-			muscular
-		<<elseif $PC.title == 0>>
-			feminine
-		<<else>>
-			masculine
-		<</if>>
-		waist. Your hands, thus freed to grope $him, tenderly hold $his head and neck instead, cupping $his <<if $activeSlave.face > 95>>gorgeous<<elseif $activeSlave.face >= -10>>pretty<<else>>homely<</if>> jawline and making $him moan at the intimacy.
-		<br><br>
-		$He's completely forgotten $his troubles, and you see that it stays that way. You consider yourself something of an expert on human stimulation at this point, and you manage $hers expertly. (Admittedly, you're also cheating, using discreet scanning of $his vital signs to check on $his state of arousal.) Whenever $he's in danger of achieving an erection, which would remind $him of $his chastity cage with a twinge of discomfort, you cool your makeout session off slightly, massaging $him capably instead of kissing $him deeply. After some time, $he shudders, to $his own complete surprise and to your unsurprised satisfaction. $He's just done what in a normal sexual encounter would be considered premature ejaculation, since you wrought $him to such a subtle state of arousal that $he got off without really getting hard. $He can muster no coherent response, but @@.mediumaquamarine;hugs you convulsively,@@ sobbing into your
-		<<if $PC.boobs >= 1400>>
-			enormous<<if $PC.boobsImplant != 0>> fake<</if>> breasts
-		<<elseif $PC.boobs >= 1200>>
-			huge<<if $PC.boobsImplant != 0>> fake<</if>> breasts
-		<<elseif $PC.boobs >= 1000>>
-			big<<if $PC.boobsImplant != 0>> firm<</if>> breasts
-		<<elseif $PC.boobs >= 300>>
-			boobs
-		<<elseif $arcologies[0].FSPhysicalIdealist != "unset">>
-			strong shoulder
-		<<elseif $PC.title == 0>>
-			feminine shoulder
-		<<else>>
-			masculine shoulder
-		<</if>>
-		with gratitude and release.
-		<br><br>
-		The scans suggest $his discomfort will return in less than half an hour.
-		<<set $activeSlave.trust += 4>>
-	<</replace>>
-<</link>>
-<br><<link "Cut $his balls off">>
-	<<replace "#result">>
-		You agree, on the condition that $he be a good little bitch like $he promised. $He thanks you frantically, following you with mixed relief, gratitude, and deep terror as you lead $him to the surgery. It's a medically simple procedure, but $he's @@.health.dec;retained for recovery@@ for some time, a common precaution in your penthouse where the surgery affects an area that might be reinjured by sexual use without a short break for the curatives to take effect. When the medical equipment verifies that $he can be fucked without pain or danger to $his health, you order $him to come back up to your office. $He is a @@.hotpink;very good little bitch,@@
-		<<if canDoAnal($activeSlave)>>
-			taking <<if $PC.dick != 0>>a hard buttfuck<<else>>a hard anal fingerfuck<</if>> with apparent enthusiasm and a strong orgasm, though of course $his continued use of a chastity cage conceals almost all the effects.
-			<<= VCheck.Anal($activeSlave, 1)>>
-		<<else>>
-			enduring all of your teasing without the slightest hint of an erection. Even though $his chastity blocks the use of $his ass, you still focus most of your attention on $his rear for the day the belt comes off.
-		<</if>>
-		When $he goes to the bathroom afterward, however, you see $him <<if canSee($activeSlave)>>glance at $himself in the mirror, just once, and then @@.gold;glance away again,@@<<else>>run $his hand under $his cock, just once, and then @@.gold;quickly removing $his hand,@@<</if>> a tear leaking down $his cheek.
-		<<set $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.trust -= 4, $activeSlave.devotion += 4>>
-		<<run surgeryDamage($activeSlave, 5)>>
-	<</replace>>
-	<<replace "#art-frame">>
-		/* 000-250-006 */
-		<<if $seeImages == 1>>
-			<<if $imageChoice == 1>>
-				<div class="imageRef lrgVector"><div class="mask">&nbsp;</div><<SlaveArt $activeSlave 3 0>></div>
-			<<else>>
-				<div class="imageRef lrgRender"><div class="mask">&nbsp;</div><<SlaveArt $activeSlave 3 0>></div>
-			<</if>>
-		<</if>>
-		/* 000-250-006 */
-	<</replace>>
-<</link>><<if ($activeSlave.anus == 0) && canDoAnal($activeSlave)>> //This option will take $his anal virginity//<</if>>
-<<if canDoAnal($activeSlave)>>
-	<br><<link "Use $his cage to torture $him">>
-		<<replace "#result">>
-			You make no reply at all, but walk around to stand behind the slave. $He knows $he's fucked, and starts to shake with fear. You put a foot on $his ass and shove $him down<<if $activeSlave.belly >= 5000>> so $his rear is pointed into the air again<<else>> to lie flat on the floor<</if>>, and then straddle $him, shoving <<if $PC.dick != 0>>your<<if $PC.vagina != -1>> futa<</if>> cock up $his butt<<else>>one more finger than $he can comfortably take up $his butt<</if>>. $He tries to beg some more, but you give $him a warning slap, and $he shuts up. Despite your roughness, $he's so horny that $he starts to get hard. You can't see or feel this directly, of course, but it's easy to tell from $his desperate sobbing and involuntary writhing, and the lovely spasming of $his anal sphincter. $His tears dry up as $he builds towards a climax; orgasm might be an uncomfortable experience for $him, but it will buy $him a few minutes free of discomfort.
-			<br><br>
-			But $he's to be disappointed. You <<if $PC.dick != 0>>worm a hand down between $his ass and your stomach, and shove a finger up inside $him, alongside your dick<<if $PC.vagina != -1>>, dexterously using the thumb of that hand to stroke your own pussy<</if>><<else>>use the hand that isn't fucking $him to pull one of $his arms around behind $him into a painful joint lock<</if>>. The pain ruins $his building orgasm, and $he cries with frustration and @@.gold;despair@@ as $he realizes that $he won't be getting off today. You force $him to experience this horrible near-release twice more, bringing $him to a terribly uncomfortable state of arousal and then using sudden pain to destroy any chance $he has of getting relief. All the wriggling and jerking around is good for you, though.
-			<<set $activeSlave.trust -= 4>>
-			<<= VCheck.Anal($activeSlave, 1)>>
-		<</replace>>
-	<</link>><<if ($activeSlave.anus == 0)>> //This option will take $his anal virginity//<</if>>
-<</if>>
-<<if ((($activeSlave.fetish == "pregnancy" && $PC.belly >= 5000) || ($activeSlave.fetish == "cumslut" && $PC.balls >= 14) || ($activeSlave.fetish == "boobs" && $PC.boobs >= 1400)) && $activeSlave.fetishKnown == 1) || ((($activeSlave.attrXX > 70 && $activeSlave.attrXY < 50 && $PC.title == 0 && $PC.vagina != -1 && $PC.dick == 0) || ($activeSlave.attrXY > 70 && $activeSlave.attrXX < 50 && $PC.title == 1 && $PC.vagina == 0 && $PC.dick != 0)) && $activeSlave.attrKnown == 1)>>
-	<br><<link "Use your body to make $his cage feel even tighter">>
-		<<replace "#result">>
-			You order $him to pay close attention<<if canSee($activeSlave)>> and not look away<</if>>.
-			<<if ($activeSlave.fetish == "pregnancy" && $PC.belly >= 5000)>>
-				<<if canSee($activeSlave)>>
-					$He questions what you mean until you begin sensually swaying your
-					<<if $PC.belly >= 100000>>
-						massive pregnancy
-					<<elseif $PC.belly >= 60000>>
-						giant pregnancy
-					<<elseif $PC.belly >= 15000>>
-						advanced pregnancy
-					<<elseif $PC.belly >= 10000>>
-						big, pregnant belly
-					<<else>>
-						pregnant belly
-					<</if>>
-					and slowly stripping down. $He groans at the sight, $his dick rapidly hardening at the view of your motherly body. You make sure to play off $his pregnancy fetish in every way possible until the aroused slave is in tears from the pressure on $his cock.
-				<<else>>
-					$He questions what you mean until you grab $his head and push $his face against your
-					<<if $PC.belly >= 100000>>
-						massive pregnancy.
-					<<elseif $PC.belly >= 60000>>
-						giant pregnancy.
-					<<elseif $PC.belly >= 15000>>
-						advanced pregnancy.
-					<<elseif $PC.belly >= 10000>>
-						big, pregnant belly.
-					<<else>>
-						pregnant belly.
-					<</if>>
-					$He tries to recoil, bringing a hand to your middle. You catch it and run it along your motherly curve to your popped navel. You trace $his hand around it as $he groans at the sensation, $his dick rapidly hardening at the feel of your motherly body. You make sure to play off $his pregnancy fetish in every way possible until the aroused slave is in tears from the pressure on $his cock.
-				<</if>>
-			<<elseif ($activeSlave.fetish == "cumslut" && $PC.balls >= 14)>>
-				<<if canSee($activeSlave)>>
-					$He questions what you mean until you begin sensually caressing your massive balls and slowly stripping down. You quickly bring yourself erect and start to jack off. $He groans at the sight, licking $his lips a the thought of your coming load as $his dick rapidly hardens. You tease yourself and hype up just how big and messy your orgasm will be, making $him quiver with painful arousal. You moan as you feel the distinct sensation of your coming ejaculation, the sheer amount of sperm moving through you takes some time to release. You hug your nuts, thrusting repeatedly until the wave of cum forces its way out of your throbbing dick. You sigh with relief, just to rub it in $his face.
-				<<else>>
-					$He questions what you mean until you strip down and pull $his face directly into your massive balls. $He tries to recoil, bringing $his hand<<if hasBothArms($activeSlave)>>s<</if>> to the immense spheres. You catch them and use one to massage your nuts and encourage a nice big load for $him and the other the help jack you off. You can feel $him shaking from the pressure on $his dick. Not only do you paint $him with seed, but you sigh loudly with relief, just to rub it in.
-				<</if>>
-			<<elseif ($activeSlave.fetish == "boobs" && $PC.boobs >= 1400)>>
-				<<if canSee($activeSlave)>>
-					$He questions what you mean until you pull your arms back, forcing your enormous<<if $PC.boobsImplant != 0>> fake<</if>> breasts to pop free of your top. $He groans at the sight, $his dick rapidly hardening at the view of your impressive rack. You make sure to play off $his tit fetish in every way possible until the aroused slave is in tears from the pressure on $his cock.
-				<<else>>
-					$He questions what you mean until you grab $his head and push $his face against your enormous<<if $PC.boobsImplant != 0>> fake<</if>> breasts. $He tries to recoil, bringing $his hand<<if hasBothArms($activeSlave)>>s<</if>> to your breasts. You continue burying $his face in your rack as $he begins to grope you. $He groans at the sensation, $his dick rapidly hardening at the feel of your lovely tits. You make sure to play off $his boob fetish in every way possible until the aroused slave is in tears from the pressure on $his cock.
-				<</if>>
-			<<elseif ($activeSlave.attrXX > 70 && $activeSlave.attrXY < 50 && $PC.title == 0 && $PC.vagina != -1 && $PC.dick == 0)>>
-				<<if canSee($activeSlave)>>
-					$He questions what you mean until you begin your strip tease. $He groans at the sight, $his dick rapidly hardening at the view of your tits and pussy. You know just how arousing $he finds the female form, and you play off that until the aroused slave is in tears from the pressure on $his cock.
-				<<else>>
-					$He questions what you mean until you grab $his head and push $his face into your pussy. $He tries to recoil, bringing $his hand<<if hasBothArms($activeSlave)>>s<</if>> to your rear. You continue rubbing yourself against $his face as begins to grope you, enjoying your feminine features. $He groans as $his dick rapidly hardens at the feel of your curves and the <<if canSmell($activeSlave)>>scent of<<else>>warmth from<</if>> your arousal. You know just how arousing $he finds the female form, and you play off that until the aroused slave is in tears from the pressure on $his cock.
-				<</if>>
-			<<else>>
-				<<if canSee($activeSlave)>>
-					$He questions what you mean until you begin your strip tease. $He groans at the sight, $his dick rapidly hardening at the view of your erection. You know just how arousing $he finds the male form, and you play off that until the aroused slave is in tears from the pressure on $his cock.
-				<<else>>
-					$He questions what you mean until you grab $his head and push $his face against your dick. $He tries to recoil, bringing $his hand<<if hasBothArms($activeSlave)>>s<</if>> to your balls. You continue rubbing yourself against $his face as begins to fondle you, enjoying your masculine features. $He groans as $his dick rapidly hardens at the feel of your penis against your face and the <<if canSmell($activeSlave)>>scent of<<else>>warmth from<</if>> your arousal and precum. You know just how arousing $he finds the male form, and you play off that until the aroused slave is in tears from the pressure on $his cock.
-				<</if>>
-			<</if>>
-			You leave $him in a @@.gold;worse state than $he started in,@@ as $he's hornier than ever and still lacks any satisfying release. But that's $his problem, not yours.<<if $PC.belly >= 10000>> Even when so heavily pregnant, it feels good to know you can still bring a dick to full attention.<</if>>
-			<<set $activeSlave.trust -= 4>>
-		<</replace>>
-	<</link>>
-<</if>>
-
-
-<<case "used whore">>
-
-<<link "Use $him anyway">>
-	<<replace "#result">>
-		You reach out, grab $his shoulder, and shove $him against the wall.
-		<<if !canTalk($activeSlave)>>
-			$He manages to use a gesture to beg you not to,
-		<<else>>
-			$He manages to beg, "Plea<<s>>e no, <<Master>> —"
-		<</if>>
-		before you give $him a hard warning slap on the ass to shut $him up. $He's quiet, but starts to sob a little when $he feels <<if $PC.dick == 0>>the head of a strap-on<<else>>your cock<</if>> against $his
-		<<if canDoAnal($activeSlave)>>
-			anus.
-			<<if ($activeSlave.anus > 2)>>
-				It's gaped before you even touch it, but it's clearly sore enough that $he dreads anal anyway.
-			<<elseif ($activeSlave.anus > 1)>>
-				It's been fucked loose, but it's clearly sore enough that $he dreads anal anyway.
-			<<else>>
-				It's somehow not gaped yet, and $he dreads having it stretched yet again.
-			<</if>>
-			<<if ($activeSlave.height >= 185)>>
-				$He's tall enough that the angle isn't that uncomfortable for $him.
-			<<elseif ($activeSlave.anus > 0)>>
-				$He hikes $himself desperately up on $his tiptoes to make the angle less uncomfortable for $him.
-			<<else>>
-				$He hikes $himself desperately up on $his tiptoes, but $he's so short the angle is desperately uncomfortable for $him.
-			<</if>>
-			$He decides to try begging one last time, and
-			<<if canDoVaginal($activeSlave)>>
-				<<if !canTalk($activeSlave)>>
-					signs to ask you to use $his pussy instead
-				<<else>>
-					whines, "Just u<<s>>e my pu<<ss>>y, plea<<s>>e!"
-				<</if>>
-			<<else>>
-				<<if !canTalk($activeSlave)>>
-					signs to ask you to let $him suck you off instead
-				<<else>>
-					whines, "Let me <<s>>uck you off, plea<<s>>e!"
-				<</if>>
-			<</if>>
-			as you shove <<if $PC.dick == 0>>the strap-on<<else>>yourself<</if>> up $his butt. $He reflexively tries to get away into the wall,
-			<<if $activeSlave.belly > 100000>>
-				$his _belly belly squashing out to either side.
-			<<elseif ($activeSlave.boobs > 2000)>>
-				$his enormous boobs squashing out to either side.
-			<<elseif ($activeSlave.boobs > 1000)>>
-				$his big boobs squashing out to either side.
-			<<elseif ($activeSlave.boobs > 300)>>
-				$his boobs crashing into it.
-			<<else>>
-				$his sore nipples giving $him a jerk as $he does.
-			<</if>>
-			After some continued whining through $his tears, $he gives up and just @@.gold;lets you@@ rape $his sore ass.
-			<<= VCheck.Anal($activeSlave, 1)>>
-		<<else>>
-			pussy lips.
-			<<if ($activeSlave.vagina > 2)>>
-				It's gaped before you even touch it, but it's clearly sore enough that $he dreads penetration anyway.
-			<<elseif ($activeSlave.vagina > 1)>>
-				It's been fucked loose, but it's clearly been used enough that $he dreads penetration anyway.
-			<<else>>
-				It's somehow not loose yet, and $he dreads having it stretched yet again.
-			<</if>>
-			<<if ($activeSlave.height >= 185)>>
-				$He's tall enough that the angle isn't that uncomfortable for $him.
-			<<elseif ($activeSlave.anus > 0)>>
-				$He hikes $himself desperately up on $his tiptoes to make the angle less uncomfortable for $him.
-			<<else>>
-				$He hikes $himself desperately up on $his tiptoes, but $he's so short the angle is desperately uncomfortable for $him.
-			<</if>>
-			$He decides to try begging one last time, and
-			<<if !canTalk($activeSlave)>>
-				signs to ask you to let $him suck you off instead
-			<<else>>
-				whines, "Let me <<s>>uck you off, plea<<s>>e!"
-			<</if>>
-			as you shove <<if $PC.dick == 0>>the strap-on<<else>>yourself<</if>> up $his cunt. $He reflexively tries to get away into the wall,
-			<<if $activeSlave.belly > 100000>>
-				$his _belly belly squashing out to either side.
-			<<elseif ($activeSlave.boobs > 2000)>>
-				$his enormous boobs squashing out to either side.
-			<<elseif ($activeSlave.boobs > 1000)>>
-				$his big boobs squashing out to either side.
-			<<elseif ($activeSlave.boobs > 300)>>
-				$his boobs crashing into it.
-			<<else>>
-				$his sore nipples giving $him a jerk as $he does.
-			<</if>>
-			After some continued whining through $his tears, $he gives up and just @@.gold;lets you@@ rape $his sore vagina.
-			<<= VCheck.Vaginal($activeSlave, 1)>>
-		<</if>>
-		When you finally <<if ($PC.dick != 0)>>fill $his <<if canDoAnal($activeSlave)>>butt<<else>>pussy<</if>> with your ejaculate and pull out,<<if $PC.vagina != -1>> the motion releasing a waft of the combined cum and pussyjuice smell of a satisfied futa,<</if>><<else>>shudder with orgasm and withdraw your strap-on,<</if>> $he slumps and turns to go, looking a bit sad for some reason.
-		<<set $activeSlave.trust += 4>>
-	<</replace>>
-<</link>>
-<br><<link "Manipulate $him into asking to suck you off">>
-	<<replace "#result">>
-		You reach out, grab $his shoulder, and shove $him against the wall.
-		<<if !canTalk($activeSlave)>>
-			$He manages to use a gesture to beg you not to,
-		<<else>>
-			$He manages to beg, "Plea<<s>>e no, <<Master>> —"
-		<</if>>
-		before you give $him a hard warning slap on the ass to shut $him up. $He's quiet, but starts to sob a little when $he feels <<if $PC.dick == 0>>the head of a strap-on<<else>>an invading<<if $PC.vagina != -1>> futa<</if>> cockhead<</if>> against $his
-		<<if canDoAnal($activeSlave)>>
-			anus.
-			<<if ($activeSlave.anus > 2)>>
-				It's gaped before you even touch it, but it's clearly sore enough that $he dreads anal anyway.
-			<<elseif ($activeSlave.anus > 1)>>
-				It's been fucked loose, but it's clearly sore enough that $he dreads anal anyway.
-			<<else>>
-				It's somehow not gaped yet, and $he dreads having it stretched yet again.
-			<</if>>
-		<<else>>
-			pussy lips.
-			<<if ($activeSlave.vagina > 2)>>
-				It's gaped before you even touch it, but it's clearly sore enough that $he dreads penetration anyway.
-			<<elseif ($activeSlave.vagina > 1)>>
-				It's been fucked loose, but it's clearly been used enough that $he dreads penetration anyway.
-			<<else>>
-				It's somehow not loose yet, and $he dreads having it stretched yet again.
-			<</if>>
-		<</if>>
-		$He
-		<<if !canTalk($activeSlave)>>
-			signs let $him suck you off instead.
-		<<else>>
-			whines, "Let me <<s>>uck you off, plea<<s>>e!"
-		<</if>>
-		Having gotten $him to beg for what you wanted all along, you spin $him so $his
-		<<if $activeSlave.weight > 160>>
-			rippling
-		<<elseif $activeSlave.weight > 95>>
-			fat
-		<<elseif ($activeSlave.muscles > 95)>>
-			powerful
-		<<elseif ($activeSlave.muscles > 30)>>
-			strong
-		<<elseif ($activeSlave.muscles > 5)>>
-			toned
-		<<else>>
-			feminine
-		<</if>>
-		back hits the wall with a smack and shove $him down it until $his
-		<<if ($activeSlave.lips > 70)>>
-			massive
-		<<elseif ($activeSlave.lips > 40)>>
-			pillowlike
-		<<elseif $activeSlave.lips > 20>>
-			girlish
-		<<elseif $activeSlave.lips > 10>>
-			average
-		<<else>>
-			minuscule
-		<</if>>
-		lips are level with your <<if $PC.dick == 0>>fake dick<<else>>dick<</if>><<if $activeSlave.belly >= 100000>>, straddle $his _belly belly<</if>>, and push it into $his mouth without waiting for $him to get ready. $He gags, but does $his best to work $his tired mouth. When you're finally satisfied and you let $him up, you aim another slap at $his
-		<<if ($activeSlave.butt > 12)>>
-			inhuman ass
-		<<elseif ($activeSlave.butt > 5)>>
-			massive ass
-		<<elseif ($activeSlave.butt > 2)>>
-			big butt
-		<<elseif $activeSlave.butt > 0>>
-			nice ass
-		<<else>>
-			flat ass
-		<</if>>
-		and let $him see it coming; $he @@.hotpink;accepts@@ the spank due to fright at what you might do if $he dodged before fleeing.
-		<<set $activeSlave.devotion += 4>>
-		<<run seX($activeSlave, "oral", $PC, "penetrative")>>
-	<</replace>>
-<</link>>
-<br><<link "Just talk with $him">>
-	<<replace "#result">>
-		You take $him by the hand, lead $him to a nearby couch, and sit down with $him, letting $him seat $himself beside you so $he can
-		<<if $activeSlave.belly >= 5000>>
-			rest $his <<if $activeSlave.bellyPreg >= 3000>>gravid <</if>>bulk against you
-		<<else>>
-			lean against you
-		<</if>>
-		without putting too much weight on $his poor overused butthole. You ask $him about $his day.
-		<<if !canTalk($activeSlave)>>
-			$He uses gestures to recount it through $his tears. Apparently while one guy was using $his anus, another thought it was hot and waited for him to be done before using $him in turn, without letting $him rest or clean $himself. It took four cocks total for another slave to notice and rescue $him.
-		<<else>>
-			$He <<say>>s, a little tearfully, "<<Master>>, thi<<s>> guy wanted to u<<s>>e my butt in public. <<S>>o of cour<<s>>e I let him, and he made me <<s>>it in hi<<s>> lap to do it, and held my leg<<if hasBothLegs($activeSlave)>><<s>><</if>> back <<s>>o everyone could <<s>>ee! And then another guy thought it wa<<s>> hot and waited, and then fucked me in my a<<ss>> too. Another <<s>>lave finally noti<<c>>ed and re<<s>>cued me after four cock<<s>>, <<Master>>. I'm really <<s>>ore."
-		<</if>>
-		$He <<if canSee($activeSlave)>>looks up at you with big <<= App.Desc.eyesColor($activeSlave)>><<else>>gazes at you<</if>> for a long moment, a final tear leaking down $his $activeSlave.skin cheek, before $he suddenly
-		<<if !canTalk($activeSlave)>>
-			shakes with mute laughter.
-		<<else>>
-			giggles.
-		<</if>>
-		$He explains $himself after a while: it's not what $he thought $he'd be doing with $his life,
-		<<switch $activeSlave.career>>
-		<<case "a bioreactor" "a breeder" "a breeding bull" "a dairy cow" "a dairy slave" "a Fuckdoll" "a Futanari Sister" "a slave" "a slave since birth" 0>>
-			once upon a time.
-		<<default>>
-			back when $he was <<= convertCareer($activeSlave)>>.
-		<</switch>>
-		<<if !canTalk($activeSlave)>>
-			$He points to $himself and uses both hands to mimic sodomy, as though to suggest that's all $he is, before giving you a rueful smile.
-		<<else>>
-			"_slavename the butthole ho, that'<<s>> me," $he <<say>>s sadly, before giving you a rueful smile.
-		<</if>>
-		$He kisses you on the cheek and @@.mediumaquamarine;thanks you@@ for listening instead of raping $him.
-		<<set $activeSlave.trust += 4>>
-		<br><br><span id="result2">
-			<<link "Kiss $him back">>
-				<<replace "#result2">>
-					You turn to kiss $him back, on the lips this time. $He <<if canSee($activeSlave)>>sees<<else>>feels<</if>> your intention and @@.mediumaquamarine;complies trustingly,@@ closing $his eyes and tilting $his head slightly so your lips lock perfectly.
-					<<if ($activeSlave.lips > 70)>>
-						$His ridiculous, pillowlike lips part softly.
-					<<elseif ($activeSlave.teeth == "pointy")>>
-						$He opens $his jaw wide, careful to keep $his shark's teeth well clear of you.
-					<<elseif ($activeSlave.teeth == "fangs")>>
-						$He keeps $his jaw steady so you may work around $his fangs easier.
-					<<elseif ($activeSlave.teeth == "fang")>>
-						You try your best to work around $his lone fang.
-					<</if>>
-					After a few seconds, $he realizes you aren't planning to break the kiss anytime soon, and softens, $his<<if $activeSlave.bellyPreg >= 1500>> pregnant<</if>> body relaxing against yours. $He scoots closer to you, bringing $his legs up under $him on the couch cushions so $he can face you comfortably. $He leans one
-					<<if $activeSlave.weight > 160>>
-						extremely well padded
-					<<elseif $activeSlave.weight > 95>>
-						well padded
-					<<elseif ($activeSlave.muscles > 30)>>
-						muscular
-					<<elseif ($activeSlave.weight > 10)>>
-						plush
-					<<elseif $activeSlave.hips > -1>>
-						pretty
-					<</if>>
-					hip against your leg, hiking $himself half onto your lap so $he can make out with you without having to sit with any weight on $his sore butthole.
-					<<set $activeSlave.trust += 2>>
-				<</replace>>
-			<</link>>
-			<br><<link "Rape $him">>
-				<<replace "#result2">>
-					But $he's wrong to place that kind of faith in you. As $he withdraws from the kiss, you snake a betraying hand between $his butt and the couch, and shove
-					<<if $activeSlave.anus <= 1>>
-						two rude fingers up $his sore little anus.
-					<<elseif $activeSlave.anus == 2>>
-						three rude fingers up $his sore anus.
-					<<else>>
-						all four of your fingers and your thumb, formed into a point, as far up $his loose butt as they will go.
-					<</if>>
-					$He lets out a pained "oh," and then goes silent. For such a little sound, it bears a great weight of @@.gold;betrayed trust.@@ You insert your fingers to the knuckle, making $him writhe with discomfort, and then turf $him off the couch to land
-					<<if $activeSlave.belly >= 300000>>
-						across $his _belly stomach
-					<<else>>
-						face first
-					<</if>>
-					on the floor in front of you. $He tries to spread $his butt and angle $his hips like a good $girl, but you slap $his hands away and push your <<if $PC.dick == 0>>strap-on<<else>>cock<</if>> inside $him without regard for $his poor anus. $He shudders and begins to cry, and keeps crying as you ravage $his asshole. When you climax and pull out, $he continues to weep, but stumbles off to wash. When $he comes back, $he's still sniffling, but without being prompted,
-					<<if $activeSlave.belly >= 300000>>
-						@@.hotpink;$he leans over $his belly and offers you $his sore butthole again.@@
-					<<else>>
-						@@.hotpink;$he gets down on $his knees and offers you $his sore butthole again.@@
-					<</if>>
-					<<set $activeSlave.trust -= 4, $activeSlave.devotion += 5>>
-					<<= VCheck.Anal($activeSlave, 1)>>
-				<</replace>>
-			<</link>>
-		</span>
-	<</replace>>
-<</link>>
-
-<<case "restricted profession">>
-
-<<link "Let $him speak briefly if $he's very quiet">>
-		<<replace "#result">>
-		You stand up from your desk and approach $him very closely without touching $him. Looking straight
-		<<if hasAnyEyes($activeSlave)>>
-			into $his eye<<if hasBothEyes($activeSlave)>>s<</if>>,
-			which are
-			<<if canSee($activeSlave)>>
-				fixed helplessly on you,
-			<<else>>
-				gazing in your general direction,
-			<</if>>
-		<<else>>
-			at $him,
-		<</if>>
-		you tell $him that you'll let $him say whatever it is $he needs to say to you, but only if $he's very quiet. $He <<if canSee($activeSlave)>>looks at you with huge eyes but<</if>> nods vigorously. $He waits until you lean into $him, making $him shiver at your proximity, before putting $his
-		<<if $activeSlave.lips > 70>>
-			ridiculous
-		<<elseif $activeSlave.lips > 40>>
-			enormous
-		<<elseif $activeSlave.lips > 20>>
-			pillowlike
-		<<else>>
-			girlish
-		<</if>>
-		lips next to your ear and whispering nervously, "I love you, <<Master>>." $He recoils a little as if burned by the audacity of $his words, but only manages to back off a little before you gather $his
-		<<if isAmputee($activeSlave)>>
-			limbless
-		<<elseif $activeSlave.bellyPreg >= 1500>>
-			gravid
-		<<elseif $activeSlave.belly >= 1500>>
-			_belly
-		<<else>>
-			rocking
-		<</if>>
-		torso into your arms, holding the back of $his head with one hand and rubbing $his quivering back with the other. Eventually, $he relaxes into
-		<<if ($PC.boobs >= 300)>>
-			<<if $PC.boobsImplant != 0>>
-				your fake breasts,
-			<<else>>
-				your soft chest,
-			<</if>>
-		<<else>>
-			you,
-		<</if>>
-		knowing that $his <<= getWrittenTitle($activeSlave)>> can never and will never reciprocate, but @@.hotpink;accepting@@ that the loving physical contact is a tremendously kind gesture for a master to make.
-		<<set $activeSlave.devotion += 4>>
-	<</replace>>
-<</link>>
-<br><<link "Make $him say it in public">>
-	<<replace "#result">>
-		Since you suspect you know what it is $he wants to say, you <<if !hasAnyLegs($activeSlave)>>carry $him out<<elseif hasAnyArms($activeSlave)>>lead $him by the hand<<else>>have $him follow you<</if>> onto the club, busy with citizens. You tell $him quietly that $he's to shout whatever it is $he wanted to say, if it's something everyone should hear; otherwise $he's to keep it to $himself. $He <<if canSee($activeSlave)>>looks around<<elseif canHear($activeSlave)>>listens<<else>>opens $his mouth<</if>> nervously, $his $activeSlave.skin skin betraying a growing blush, before clearing $his throat twice, licking $his lips, and howling "I LOVE MY _shoutitoutloud" at the tops of $his lungs. When this is out of $him $he collapses a little, as though the pressure of holding it inside were propping $him up. This attracted a considerable amount of attention, almost all of it @@.green;positive,@@ with many passersby laughing at the fun, and your fellow slaveowners giving you discreet winks and quiet congratulations.
-		<<run repX(750, "event", $activeSlave)>>
-	<</replace>>
-<</link>>
-<br><<link "Keep $him quiet but spend some time with $him">>
-	<<replace "#result">>
-		You announce that you're finished with business for the day, and feel like some quiet time. $He cannot keep <<if canSee($activeSlave)>>a gleam of humor out of $his eye<<else>>the corners of $his lips from rising slightly<</if>> at <<if canHear($activeSlave)>>hearing<<else>>the phrase<</if>> 'quiet time,' and $he <<if !hasAnyLegs($activeSlave)>>presents $himself to be carried<<else>>follows you<</if>> happily enough. When $he <<if canSee($activeSlave)>>sees<<else>>realizes<</if>> you're headed to your bedroom $he begins to anticipate $his <<= getWrittenTitle($activeSlave)>>'s <<if $PC.dick == 0>>strap-on<<else>>cock<</if>>, but is surprised to find that instead of using $him you simply
-		<<if isAmputee($activeSlave)>>
-			place $him in bed and curl up around $his limbless torso.
-		<<elseif $activeSlave.bellyPreg >= 5000>>
-			help $him into bed and curl up with $him, your arms encircling $his prominent baby bump.
-		<<elseif $activeSlave.belly >= 5000>>
-			help $him into bed and curl up with $him, your arms encircling $his _belly dome of a middle.
-		<<else>>
-			climb into bed and pull $him under the sheets with you.
-		<</if>>
-		$He's almost disappointed, but after looking into your resting face for a while, nestles $his head onto your broad chest and goes to sleep with a @@.hotpink;look of contentment@@ on $his face. When the two of you wake from your brief nap, you ask $him if $he has anything else to communicate to you. $He smiles sleepily and shakes $his head no.
-		<<set $activeSlave.devotion += 4>>
-	<</replace>>
-<</link>>
-
-<<case "mods please">>
-
-<<link "Perform it yourself">>
-	<<replace "#result">>
-		You stand up from behind your desk and head towards the body modification studio, <<if canSee($activeSlave)>>crooking a finger at<<else>>calling<</if>> $him as you as you go. $He follows bouncily, thanking you profusely, and then thanking you again when it becomes apparent to $him that you intend to do the body art yourself. $He snuggles into the chair, relaxing as the restraints bind $him in. They're not really necessary to modify a willing $girl, never mind one this enthusiastic, but they could possibly prevent $him from flinching, and it's not like $he resents being bound at this point.
-		<br><br>
-		Manipulating the machine, you
-		<<if ($activeSlave.fetish == "submissive") && ($activeSlave.fetishKnown == 1)>>
-			place the first piercing, eliciting a hum of mild pain and abject submission from $activeSlave.slaveName. The piercing session goes on and on, with the slave sinking into a boneless, mindless state in which $his being is completely in your hands. $He's almost sleepy when you finally release $him, but $he rises and <<if canSee($activeSlave)>>turns, craning around to see in the mirror<<else>>gingerly feeling around $his new piercings<</if>>. $He @@.hotpink;smiles devotedly,@@ and asks you when $he'll be healed enough that $he can be laced up.
-			<<set $activeSlave.corsetPiercing = 1>>
-		<<elseif ($activeSlave.fetish == "cumslut") && ($activeSlave.fetishKnown == 1)>>
-			hold $his mouth agape and place the first piercing. $He can't make much of a facial expression with $his mouth that wide, but there is a lewd <<if canSee($activeSlave)>>glint in $his eye<<else>>look on $his face<</if>> when $he realizes $he's getting more than one. When you're done, $he's sore enough that $he gestures $his thanks, @@.hotpink;smiling devotedly,@@ and begs you to try $him out when $he's healed up.
-			<<set $activeSlave.tonguePiercing = 2>>
-		<<elseif ($activeSlave.fetish == "humiliation") && ($activeSlave.fetishKnown == 1)>>
-			activate the ink gun, its low buzzing drawing a moan of anticipation out of $activeSlave.slaveName. Working at a touchscreen, you exercise your artistic talents, inscribing the slave's status as a sex object on $his forehead. The pain is intense, but $he tolerates it, the tears running fast out of the corners of $his eyes and low groans rising out of $his throat. When $he's finally allowed to rise<<if canSee($activeSlave)>> and sees $himself in a mirror<<elseif canHear($activeSlave)>>and listens intently on your descriptions of $his new face<</if>>, $he blushes furiously and cries harder, knowing that $his status as a humiliation slut is now permanent. This culmination of $his deeply perverse sense of self @@.hotpink;draws $him closer to you.@@
-			<<set $activeSlave.lipsTat = "degradation">>
-		<<elseif ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishKnown == 1)>>
-			place a spreader to keep $his legs and cheeks apart and start piercing. $He whines with the pain, and then gasps when $he realizes that the piercing is going on much longer than $he expected. You give $him a couple of huge piercings below $his anus, big enough that $he'll never be free of them rubbing against $his slutty butthole. Not done yet, you put some small, smooth studs around it, just to make sure nobody can possibly misunderstand where to fuck this bitch. $He gets up gingerly, but @@.hotpink;smiling sluttily.@@
-			<<set $activeSlave.anusPiercing = 2>>
-		<<elseif ($activeSlave.fetish == "boobs") && ($activeSlave.fetishKnown == 1)>>
-			<<if ($activeSlave.nipples.includes("inverted"))>>
-				use a couple of its actuators to stimulate $his nipples until they're almost all the way protruded, and then direct them to pull them out all the way. $He screams wholeheartedly at the pain, yelling on and on until $he's out of breath and relaxes against the restraints, gasping and crying.
-			<<else>>
-				use its actuators to pull $his nipples out as far as they will go, forcing a gasp of pain out of $him.
-			<</if>>
-			$He expects a simple nipple piercing, one for each boob; what $he gets is a set of heavy rings in each nipple. $He's no masochist, so the pleasure will come later, but $he moans as $he feels the gradual addition of weight to $his nipples. $He rises very carefully, trying to keep $his boobs still, and @@.hotpink;smiles devotedly@@ at you. Soon enough, $he'll be able to orgasm by walking.
-			<<set $activeSlave.nipplesPiercing = 2>>
-		<<elseif ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishKnown == 1)>>
-			<<if $activeSlave.belly >= 10001>>
-				hold $his _belly stomach steady and pierce $his navel with the largest, heaviest ring available. There is a lewd <<if canSee($activeSlave)>>glint in $his eye<<else>>look on $his face<</if>> as $he feels the new weight settle against $his middle. $He rises very carefully, trying to keep $his new piercing from moving, and @@.hotpink;smiles devotedly@@ at you. Soon enough, all eyes will be on $his belly as $he waddles by.
-				<<set $activeSlave.navelPiercing = 2>>
-			<<else>>
-				activate the ink gun, its low buzzing drawing a moan of anticipation out of $activeSlave.slaveName. Working at a touchscreen, you exercise your artistic talents, beautifying $his <<if $activeSlave.belly >= 150>> _belly stomach<<else>>abdomen<</if>> with an inducement to fuck $him.
-				<<if canSee($activeSlave)>>
-					<<if $activeSlave.belly >= 5000>>
-						$He can't see what you are inking into the underside of $his belly, but $he tries anyway.
-					<<else>>
-						$He's just able to crane $his head enough to see the work, and eagerly watches.
-					<</if>>
-					When you're done, $he stares at $himself for a long time,
-				<<else>>
-					Once you finish $his new tattoo, you describe it to $him in detail. $He pauses for a moment,
-				<</if>>
-				a curiously mixed expression on $his face. This is $his life now; it's permanently a part of $him, and @@.hotpink;$he knows it.@@
-				<<set $activeSlave.vaginaTat = "lewd crest">>
-			<</if>>
-		<<elseif ($activeSlave.fetish == "dom") && ($activeSlave.fetishKnown == 1)>>
-			activate the ink gun, its low buzzing drawing a moan of anticipation out of $activeSlave.slaveName. Working at a touchscreen, you exercise your artistic talents, making the side of $his face fierce with tribal patterns. Tattooing over such thin and sensitive skin is intensely painful, but $he tolerates it, permitting nothing but a low and continuing growl to escape. $He's obviously tired out by the pain when $he's finally allowed to rise, but $he <<if canSee($activeSlave)>>looks at $himself in the mirror<<elseif canHear($activeSlave)>>listens to your description<<else>>traces the design with $his fingertips<</if>> with @@.hotpink;obvious approval.@@
-			<<set $activeSlave.lipsTat = "tribal patterns">>
-		<<elseif ($activeSlave.fetish == "sadist") && ($activeSlave.fetishKnown == 1)>>
-			<<if canAchieveErection($activeSlave)>>
-				take hold of $his most intimate parts and put a set of massive piercings straight through $his shaft. $He shrieks with agony, the noise going on and on before diminishing into breathless sobbing. Much later, when $he gets gingerly up from the chair, $he doesn't look eager to stick $his cock in anything, but $he's @@.hotpink;thankful enough.@@
-				<<set $activeSlave.dickPiercing = 2>>
-			<<elseif $activeSlave.dick > 0>>
-				hold $his mouth agape and place the first piercing. $He can't make much of a facial expression with $his mouth that wide, but there is a lewd <<if canSee($activeSlave)>>glint in $his eye<<else>>look on $his face<</if>> when $he realizes $he's getting more than one. When you're done, $he's sore enough that $he gestures $his thanks, @@.hotpink;smiling devotedly;@@ $he looks eager to try out $his new piercing on a fresh pussy.
-				<<set $activeSlave.tonguePiercing = 2>>
-			<<else>>
-				take hold of $his most intimate parts and put a set of massive piercings straight through $his pussylips. $He shrieks with agony, the noise going on and on before diminishing into breathless sobbing. Much later, when $he gets gingerly up from the chair, $he doesn't look eager to trib anything, but $he's @@.hotpink;thankful enough.@@
-				<<set $activeSlave.vaginaPiercing = 2>>
-			<</if>>
-		<<elseif ($activeSlave.fetish == "masochist") && ($activeSlave.fetishKnown == 1)>>
-			take hold of $his most intimate parts and put a series of massive piercing straight through $his
-			<<if $activeSlave.dick > 0>>
-				shaft.
-				<<set $activeSlave.dickPiercing = 2>>
-			<<else>>
-				pussylips.
-				<<set $activeSlave.vaginaPiercing = 2>>
-			<</if>>
-			$He shrieks with agony and then orgasms as strongly as you've ever seen a slave climax, $his every fiber tensing against the restraints. For a long, long time $he has to work to breathe, the overstimulation clearing slowly. When you finally let $him up, $he hasn't remembered how to talk yet, but $his gaze says it for $him. It looks like $he's just had @@.hotpink;the best sex of $his life.@@
-		<<else>>
-			<<if ($activeSlave.nipples.includes("inverted"))>>
-				use a couple of its actuators to stimulate $his nipples until they're almost all the way protruded, and then direct them to pull them out all the way. $He screams wholeheartedly at the pain, yelling on and on until $he's out of breath and relaxes against the restraints, gasping and crying.
-			<<else>>
-				use its actuators to pull $his nipples out as far as they will go, forcing a gasp of pain out of $him.
-			<</if>>
-			This done, you give $him a simple pair of barbell nipple piercings. The machine makes this take less time than it takes to describe it, and after a shocked squeal of pain $he's released. $He rises carefully, trying to keep $his boobs still, and @@.hotpink;smiles thankfully@@ at you. $He <<if canSee($activeSlave)>>glances at $himself in the mirror<<else>>listens to your description of $him<</if>>, looking pleased.
-			<<set $activeSlave.nipplesPiercing = 1>>
-		<</if>>
-		<<set $activeSlave.devotion += 5>>
-	<</replace>>
-<</link>>
-<br><<link "$He's beautiful just the way $he is">>
-	<<replace "#result">>
-		You tell $him firmly that $he's beautiful just the way $he is. $He blushes and giggles at the absurdly trite statement. You conclude the inspection, and $he continues on to the next item in $his life as a sex slave, @@.mediumaquamarine;pleased and reassured@@ that you have a plan for what $he should look like.
-		<<set $activeSlave.trust += 4>>
-	<</replace>>
-<</link>>
-<br><<link "No, and slaves should not make requests of this kind">>
-	<<replace "#result">>
-		You tell $him firmly that you don't intend to apply body modifications to $him, your tone communicating that further requests on this subject are not permitted. $He understands clearly and looks a little crushed, but trusts that $he won't be punished for violating a rule you hadn't promulgated. You repair the oversight immediately, directing your personal assistant to spread notice that decisions about body modifications are yours alone.
-		<<set $modRequestsAllowed = 0>>
-	<</replace>>
-<</link>>
-
-<<case "resistant anal virgin">>
-
-<<link "Let $him earn continued anal virginity">>
-	<<replace "#result">>
-		You tell $him $he's a sex slave, and that $he needs to learn how to take a dick up the ass.
-		<<if !canTalk($activeSlave) && hasAnyArms($activeSlave)>>
-			$He frantically begs with gestures, pleading <<if hasBothLegs($activeSlave)>>on $his knees<<else>>desperately<</if>>.
-		<<elseif !canTalk($activeSlave)>>
-			$He frantically mouths pleas that you leave $his butt alone.
-		<<else>>
-			$He begs, "Plea<<s>>e no, <<Master>>, plea<<s>>e don't rape me in my a<<ss>>, <<Master>>!"
-		<</if>>
-		You make a show of considering, and then tell $him that if $he's extra obedient, you might let $him keep $his butt — for now. You tell $him to <<if $PC.dick != 0>>blow you<<if $PC.vagina != -1>> and <</if>><</if>><<if $PC.vagina != -1>>lick your pussy<</if>>, and $he does with unusual obedience. When $he's done, you bend down and whisper in $his ear that if $he shows any sign of rebelliousness, you'll ruin $his little asshole. @@.gold;$He's terrified.@@
-		<<set $activeSlave.trust -= 5>>
-		<<run seX($activeSlave, "oral", $PC, "penetrative")>>
-	<</replace>>
-<</link>>
-<<if hasAnyLegs($activeSlave)>>
-	<br><<link "Force $him to degrade $himself">>
-		<<replace "#result">>
-			Suction cup dildos are terribly useful. You place a moderate-sized one on a low table in your office<<if ($activeSlave.chastityAnus)>>, unlock $his chastity belt<</if>>, and order $him to squat down on it and fuck $his own asshole. $He hesitates, incredulous, and finds $himself bound to the couch and thoroughly whipped. It isn't a sexual whipping, either, but a methodical and scientific administration of pain right up to the border of damage. When $he's been reduced to a state of abject, sobbing surrender, you free $him and repeat your orders as though nothing had happened. Still crying, $he hobbles over and up onto the table,
-			<<if $activeSlave.belly >= 300000 || $activeSlave.weight > 190>>
-				struggles to line $himself up, and finds it slammed into $his asshole when the table gives out under $his<<if $activeSlave.belly >= 300000>> gravid<</if>> weight. You leave $him there to struggle with the dildo wedged in $his rear until $he finally manages to pop it free from the table fragment stuck under mass and roll over. You haul $him onto
-			<<else>>
-				<<if $activeSlave.belly > 20>>gingerly lowers $his <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>>bulk onto it,<</if>> and fucks $his little ass open on the dildo. You keep $him up there until $his legs give out<<if $activeSlave.belly >= 10000 || $activeSlave.weight > 190>>and $his <<if $activeSlave.bellyPreg >= 3000>>gravid <</if>>weight pins $him on the toy;<<else>>, and<</if>> then let $him lie down on
-			<</if>>
-			the couch, telling $him to keep working the dildo with $his hand<<if hasBothArms($activeSlave)>>s<</if>> or suffer another whipping. After $he's had $his ass filled for a good while, $he has no trouble taking a <<if $PC.dick == 0>>strap-on<<else>>real dick<</if>> for the first time, and is by this point too exhausted to do anything but lie there and be a good little anal slave. @@.gold;$He fears you,@@ and @@.lime;$his butthole has been broken in.@@
-			<<set $activeSlave.trust -= 5, $activeSlave.anus = 1>>
-			<<= VCheck.Anal($activeSlave, 1)>>
-		<</replace>>
-	<</link>> //This option will take $his anal virginity//
-	<<if $activeSlave.vagina == 0>>
-		<br><<link "Make $him choose between $his virginities">>
-			<<replace "#result">>
-				You tell $him $he's a sex slave, and that $he needs to learn how to take a dick up the ass.
-				<<if !canTalk($activeSlave) && hasAnyArms($activeSlave)>>
-					$He frantically begs with gestures, pleading <<if hasBothLegs($activeSlave)>>on $his knees<<else>>desperately<</if>>.
-				<<elseif !canTalk($activeSlave)>>
-					$He frantically mouths pleas that you leave $his butt alone.
-				<<else>>
-					$He begs, "Plea<<s>>e no, <<Master>>, plea<<s>>e don't rape me in my a<<ss>>, <<Master>>!"
-				<</if>>
-				You make a show of considering, and then tell $him you know a way $he can continue being an anal virgin — for now. You want a new hole to play with, and $he has two untouched holes. $He gasps when $he realizes what you want. $He hesitates to answer, uncertain of which $he values more, and finds $himself bound to the couch<<if ($activeSlave.chastityAnus)>>, stripped of $his chastity,<</if>> and thoroughly whipped. It isn't a sexual whipping, either, but a methodical and scientific administration of pain right up to the border of damage. When $he's been reduced to a state of abject, sobbing surrender, you free $him and repeat your orders as though nothing had happened. Still crying, $he prostrates $himself and
-				<<if $activeSlave.trust < 20>>
-					spreads $his butt for you.
-				<<else>>
-					$his pussylips for you.
-				<</if>>
-				You callously ram a dildo into $his fresh hole and tell $him to keep working $himself with it or suffer another whipping. After $he's fucked $himself for a good while, $he has no trouble taking a <<if $PC.dick == 0>>strap-on<<else>>real dick<</if>> for the first time, and is by this point too exhausted to do anything but lie there and take it a good little slave. @@.gold;$He fears you@@ but @@.hotpink;loses $himself to your rule.@@
-				<<if $activeSlave.trust < 20>>
-					@@.lime;$His butthole has been broken in.@@
-					<<set $activeSlave.anus = 1>>
-					<<= VCheck.Anal($activeSlave, 1)>>
-				<<else>>
-					@@.lime;$His pussy has been broken in.@@
-					<<set $activeSlave.vagina = 1>>
-					<<= VCheck.Vaginal($activeSlave, 1)>>
-				<</if>>
-				<<set $activeSlave.trust -= 5, $activeSlave.devotion += 3>>
-			<</replace>>
-		<</link>> //This option will take one of $his virginities//
-	<</if>>
-<</if>>
-
 <<case "diet">>
 
 <<link "Catch $him at it and punish $him">>