diff --git a/src/events/RESS/cockfeederResistance.js b/src/events/RESS/cockfeederResistance.js
index f09461c11002ce1d4518e05250188592c4b09a55..59a113480161df8bbedef7ff3ed652b7ccb66aeb 100644
--- a/src/events/RESS/cockfeederResistance.js
+++ b/src/events/RESS/cockfeederResistance.js
@@ -22,10 +22,10 @@ App.Events.RESSCockFeederResistance = class RESSCockFeederResistance extends App
 		/** @type {Array<App.Entity.SlaveState>} */
 		let [eventSlave] = this.actors.map(a => getSlave(a));
 		const {
-			He, he, His, his, him
+			He, he, His, his, him, himself
 		} = getPronouns(eventSlave);
 		const {hisA} = getPronouns(assistant.pronouns().main).appendSuffix('A');
-		const {s, ss, title: Master} = getEnunciation(eventSlave);
+		const {title: Master} = getEnunciation(eventSlave);
 		const desc = SlaveTitle(eventSlave);
 
 		/** @type {App.Entity.PlayerState} */
@@ -46,7 +46,7 @@ App.Events.RESSCockFeederResistance = class RESSCockFeederResistance extends App
 
 		t.push(`${He} turns to you as you enter, and ${canSee(eventSlave) ? "seeing" : "realizing"} that it's you, ${he}`);
 		if (canTalk(eventSlave)) {
-			t.push(`mumbles unhappily, "Plea${s}e, ${Master}, plea${s}e, can I ju${s}t eat normally for one day? Thi${s} i${s}, um, kind of gro${ss}."`);
+			t.push(`mumbles unhappily, "${Spoken(eventSlave, `Please, ${Master}, please, can I just eat normally for one day? This is, um, kind of gross.`)}"`);
 		} else {
 			t.push(`uses hesitant gestures to beg you to let ${him} eat normally today. ${His} hand${hasBothArms(eventSlave) ? "s become" : " becomes"} vehement when it comes to the phallus in ${his} face, which ${he} apparently finds disgusting.`);
 		}
@@ -106,7 +106,7 @@ App.Events.RESSCockFeederResistance = class RESSCockFeederResistance extends App
 		function penetrate() {
 			t = [];
 
-			t.push(`You step forward and caress the slave's throat, telling ${him} to suck like a good little ${desc}. You make no threat, but give ${him} the order in a ${canHear(eventSlave) ? "voice of brass" : "commanding manner"}. ${He} knows what you can do to ${him}, and scrabbles forward to obey, <span class="gold">terribly frightened.</span> ${His} fear is justified. You announce that ${he}'s avoided serious punishment, but ${he} still needs correction for ${his} hesitation and insolence. ${He} can't beg or even moan, since ${he}'s being facefucked by the feeder dildo by now, but ${his} ${App.Desc.eyesColor(eventSlave)} widen in terror. ${He} ${canSee(eventSlave) ? `can't watch you, since ${he} can't turn ${his} head,` : "can't see what you are doing,"} so ${he} has almost no time to prepare when you haul ${his} head most of the way off the feeder and shove ${PC.dick !== 0 ? "your own phallus" : "a strap-on"} into ${his} mouth, too. ${He} gags instantly, almost vomiting, but forces ${him}self to relax as you begin to thrust into ${his} throat, alternately with the feeder. The liquid food provides plenty of lubrication, and a lot of liquid for ${him} to gag on, and before long ${he}'s a degraded, humiliating mess. ${He} often clamps ${his} eyes shut as ${he} desperately concentrates on breathing, squeezing the tears out to run down ${his} ${eventSlave.skin} cheeks.`);
+			t.push(`You step forward and caress the slave's throat, telling ${him} to suck like a good little ${desc}. You make no threat, but give ${him} the order in a ${canHear(eventSlave) ? "voice of brass" : "commanding manner"}. ${He} knows what you can do to ${him}, and scrabbles forward to obey, <span class="gold">terribly frightened.</span> ${His} fear is justified. You announce that ${he}'s avoided serious punishment, but ${he} still needs correction for ${his} hesitation and insolence. ${He} can't beg or even moan, since ${he}'s being facefucked by the feeder dildo by now, but ${his} ${App.Desc.eyesColor(eventSlave)} widen in terror. ${He} ${canSee(eventSlave) ? `can't watch you, since ${he} can't turn ${his} head,` : "can't see what you are doing,"} so ${he} has almost no time to prepare when you haul ${his} head most of the way off the feeder and shove ${PC.dick !== 0 ? "your own phallus" : "a strap-on"} into ${his} mouth, too. ${He} gags instantly, almost vomiting, but forces ${himself} to relax as you begin to thrust into ${his} throat, alternately with the feeder. The liquid food provides plenty of lubrication, and a lot of liquid for ${him} to gag on, and before long ${he}'s a degraded, humiliating mess. ${He} often clamps ${his} eyes shut as ${he} desperately concentrates on breathing, squeezing the tears out to run down ${his} ${eventSlave.skin} cheeks.`);
 			if (V.suppository !== 0 && eventSlave.drugs !== "none") {
 				t.push(`You leave the poor slave to take ${his} drugs up the ass, since the kitchen administers those by phallus, too. Fortunately for ${him}, ${he} doesn't object to that.`);
 			}
@@ -127,7 +127,7 @@ App.Events.RESSCockFeederResistance = class RESSCockFeederResistance extends App
 			} else {
 				t.push("homely");
 			}
-			t.push(`face. After a few minutes of gagging oral, you start to approach your climax. Your thorough facefucking leaves ${him} unable to beg or even moan, but ${his} eyes widen in terror when ${he} realizes you're about to cum. You don't give ${him} any time to prepare, instead hilting yourself immediately, and letting ${his} throat's desperate attempts to swallow bring you over the edge. You begin your long release of pent-up jizz, spraying deciliter after deciliter of cum down ${his} throat and into ${his} stomach. By the time you've finished, you can tell ${he}'s struggling for air and in pain from the massive quantity of thick fluid in ${his} stomach. You give ${him} a helpful hint before releasing ${him}: "If you take it all the way in your throat, you don't even have to ${canTaste(eventSlave) ? "taste" : "feel"} what it's feeding you." You pull out of ${his} mouth and let ${him} go. ${He} gasps for air and almost immediately vomits some of your cum all over ${him}self, turning ${him} into a degraded, humiliated mess. ${He} lays on the floor and desperately concentrates on breathing, squeezing the tears out of ${his} eyes to run down ${his} ${eventSlave.skin} cheeks.`);
+			t.push(`face. After a few minutes of gagging oral, you start to approach your climax. Your thorough facefucking leaves ${him} unable to beg or even moan, but ${his} eyes widen in terror when ${he} realizes you're about to cum. You don't give ${him} any time to prepare, instead hilting yourself immediately, and letting ${his} throat's desperate attempts to swallow bring you over the edge. You begin your long release of pent-up jizz, spraying deciliter after deciliter of cum down ${his} throat and into ${his} stomach. By the time you've finished, you can tell ${he}'s struggling for air and in pain from the massive quantity of thick fluid in ${his} stomach. You give ${him} a helpful hint before releasing ${him}: "If you take it all the way in your throat, you don't even have to ${canTaste(eventSlave) ? "taste" : "feel"} what it's feeding you." You pull out of ${his} mouth and let ${him} go. ${He} gasps for air and almost immediately vomits some of your cum all over ${himself}, turning ${him} into a degraded, humiliated mess. ${He} lays on the floor and desperately concentrates on breathing, squeezing the tears out of ${his} eyes to run down ${his} ${eventSlave.skin} cheeks.`);
 			if (V.suppository !== 0 && eventSlave.drugs !== "none") {
 				t.push(`You leave the poor slave to take ${his} drugs up the ass, since the kitchen administers those by phallus, too. Fortunately for ${him}, ${he} doesn't object to that.`);
 			}
diff --git a/src/events/RESS/devotedAnalVirgin.js b/src/events/RESS/devotedAnalVirgin.js
new file mode 100644
index 0000000000000000000000000000000000000000..64c9569e149d0696cb8a9391d96c2d00a4df746b
--- /dev/null
+++ b/src/events/RESS/devotedAnalVirgin.js
@@ -0,0 +1,160 @@
+App.Events.RESSDevotedAnalVirgin = class RESSDevotedAnalVirgin extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return [];
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				canWalk,
+				s => s.anus === 0,
+				s => s.trust > 20,
+				s => s.devotion > 50,
+				s => s.rules.speech !== "restrictive"
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			He, he, his, him, himself
+		} = getPronouns(eventSlave);
+		const {say, title: Master} = getEnunciation(eventSlave);
+		const belly = bellyAdjective(eventSlave);
+
+		/** @type {App.Entity.PlayerState} */
+		let PC = V.PC;
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave);
+
+		let t = [];
+
+
+
+		t.push(App.UI.DOM.slaveDescriptionDialog(eventSlave));
+		t.push(`comes into your office and politely waits until you indicate ${he} can have your attention.`);
+		if (canTalk(eventSlave)) {
+			t.push(`${He} ${say}s, "${capFirstChar(Master)}, I`);
+			if (canSee(eventSlave)) {
+				t.push(Spoken(eventSlave, "see so many of the other slaves getting buttfucked. I think it's hot seeing"));
+			} else if (canHear(eventSlave)) {
+				t.push(Spoken(eventSlave, "hear so many of the other slaves getting buttfucked. I think it's hot hearing"));
+			} else {
+				t.push(Spoken(eventSlave, "am surrounded by so many of the other slaves getting buttfucked. I think it's hot that you have"));
+			}
+			t.push(Spoken(eventSlave, `them take it up the ass, and I feel almost incomplete since I don't take cock in every hole. Please take my butt virginity, ${Master}."`));
+		} else {
+			t.push(`${He} points to ${his} butt and comically pantomimes having anal sex, and then uses gestures to ask if ${he} can serve you anally.`);
+		}
+		if (eventSlave.belly >= 10000) {
+			t.push(`${He} carefully turns and spreads ${his} legs, allowing ${his} ${belly} ${eventSlave.bellyPreg >= 3000 ? "pregnant" : ""} belly space as ${he} bends over, to wiggle ${his} posterior indicatively.`);
+		} else {
+			t.push(`${He} turns around and wiggles ${his} posterior indicatively.`);
+		}
+		App.Events.addParagraph(node, t);
+		t = [];
+
+		App.Events.addResponses(node, [
+			new App.Events.Result(`No, reassure ${him} that ${he} doesn't need to be an anal slut`, reassure),
+			new App.Events.Result(`Make sure ${his} first anal sex is enjoyable`, enjoy),
+			new App.Events.Result(`Make sure ${his} first buttfuck puts ${him} in ${his} place`, rape)
+		]);
+
+		function reassure() {
+			t = [];
+
+			t.push(`You kindly explain that you've decided to save ${his} ass — for now. ${He} starts to express understanding and apologize for bothering you, but finds ${himself} swept off ${his}`);
+			if (!hasAnyLegs(eventSlave)) {
+				t.push("stumps");
+			} else if (!hasBothLegs(eventSlave)) {
+				t.push("foot");
+			} else {
+				t.push("feet");
+			}
+			t.push(`and ${eventSlave.bellyPreg >= 5000 ? "gently" : ""} deposited on the couch. ${He} gasps with surprise when ${he} finds ${himself} being teased, fondled, and massaged rather than outright used. In no time at all ${he}'s pressing ${his} whole`);
+			if (eventSlave.belly >= 5000) {
+				t.push(`${eventSlave.bellyPreg >= 3000 ? "gravid" : "rounded"}`);
+			}
+			t.push(`body against you and shivering with delight.`);
+			if (eventSlave.vagina > 0 && canDoVaginal(eventSlave)) {
+				t.push(`$His shivers reach a crescendo when you ${PC.dick === 0 ? "scissor yourself against" : "enter"} ${his} warm, wet pussy, which convulsively flexes against your ${PC.dick === 0 ? "clit" : "rock hard dick"}.`);
+			} else {
+				if (PC.dick === 0) {
+					t.push(`You ride ${his} face,`);
+				} else {
+					t.push(`You push your dick ${PC.vagina !== -1 ? "and as much of the upper part of your pussy as you can manage" : ""} between ${his} thighs for some frottage,`);
+				}
+				t.push(`lavishing attention on ${his} nipples to ensure that ${he} has fun, too.`);
+			}
+			t.push(`${He} leaves your office feeling <span class="hotpink">very close to ${his} ${WrittenMaster()} indeed,</span> and seems to have forgotten ${his} unfucked butthole, for now.`);
+
+			eventSlave.devotion += 4;
+			if (eventSlave.vagina > 0 && canDoVaginal(eventSlave)) {
+				VCheck.Vaginal(1, eventSlave);
+			}
+			return t;
+		}
+
+
+
+		function enjoy() {
+			t = [];
+
+			t.push(`You bring ${him} over to the couch, ${!canDoAnal(eventSlave) ? `unfasten ${his} chastity,` : ""} set ${him} on your lap, and teasingly play with ${his}`);
+			if (eventSlave.belly >= 5000) {
+				t.push(`${eventSlave.bellyPreg >= 3000 ? "gravid" : "rounded"}`);
+			}
+			t.push(`body for a long time. Every so often you move your hands over ${his} unfucked butthole, making ${him} shiver and press ${himself} against you, but you only make it the center of attention once the poor over-aroused slave`);
+			if (canTalk(eventSlave)) {
+				t.push(`begs, "I can't take it any more, ${Master}! Plea${s}e fuck my a${ss}!"`);
+			} else {
+				t.push("begins to use piteous gestures to beg you abjectly for anal.");
+			}
+
+			t.push(`In reward, you sink a lightly lubricated finger up to the first knuckle in ${his} delightfully tight asshole. ${He}'s already on the edge of orgasm, and it takes a long, long time for you to work first a finger, then two, and then your ${PC.dick === 0 ? "strap-on" : "cock"} up ${his} ass without sending ${him} over. When you finally let ${him} orgasm, ${PC.dick === 0 ? `${his} unabashed enjoyment` : `the strength of ${his} spasming sphincter`} send you over as well. ${He}'s left in a haze of <span class="hotpink">sexual satisfaction</span> that radiates outward from ${his} <span class="lime">newly stretched asshole,</span> and ${he} <span class="mediumaquamarine">trusts you</span> a lot more, now.`);
+			if ((eventSlave.fetishKnown !== 1 || eventSlave.fetish !== "buttslut") && fetishChangeChance(eventSlave) > jsRandom(1,100)) {
+				t.push(`Before the end of the week ${he}'s back, begging for <span class="lightcoral">another dick up the ass.</span>`);
+
+				eventSlave.fetishKnown = 1;
+				eventSlave.fetishStrength = 65;
+				eventSlave.fetish = "buttslut";
+			}
+
+			eventSlave.devotion += 3;
+			eventSlave.trust += 3;
+			eventSlave.anus = 1;
+			seX(eventSlave, "anal", PC, "penetrative");
+			if (PC.dick !== 0 && eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+				knockMeUp(eventSlave, 15, 1, -1);
+			}
+			return t;
+		}
+
+		function rape() {
+			t = [];
+
+			t.push(`You throw ${him} onto the couch face-down, ${eventSlave.belly >= 5000 ? `${his} rear pushed into the air by ${his} rounded belly` : ""} catching a glimpse of ${his} doubtful face as ${he} goes; ${he}'s already started to wonder whether this was a mistake. In a few moments ${he} knows it for sure as ${he} feels ${!canDoAnal(eventSlave) ? `${his} anal chastity ripped off and` : ""} the burning sensation of a lubricated ${PC.dick === 0 ? "strap-on" : "dickhead"} forcing ${his} virgin sphincter wide. Whatever noises ${he} might be making are pretty inaudible, since you have ${his} sobbing face shoved deep between the leather cushions. ${He} tries not to struggle and relax for ${his} beloved master, but ${his} body rebels against the pain and ${he} starts to wriggle spastically, trying to burrow into the couch to get away from the pounding. When you finish, the poor slave is left lying on the couch with a ${PC.dick !== 0 ? `thin dribble of ejaculate escaping from ${his}` : ""} <span class="lime">newly fucked butthole,</span> a stream of drying tears running down each side of ${his} face, ${eventSlave.dick > 0 ? `a single drop of precum at the tip of ${his} totally flaccid dick,` : ""} and a new understanding of <span class="gold">${his} place in life.</span>`);
+			if ((eventSlave.fetishKnown !== 1 || eventSlave.fetish !== "submissive") && fetishChangeChance(eventSlave) > jsRandom(1,100)) {
+				t.push(`Before the end of the week it's clear that ${he}'s taken the anal rape to heart, and now sees ${his} body as something <span class="lightcoral">for others to use and abuse.</span>`);
+
+				eventSlave.fetishKnown = 1;
+				eventSlave.fetishStrength = 65;
+				eventSlave.fetish = "submissive";
+			}
+
+			eventSlave.trust -= 5;
+			eventSlave.anus = 1;
+			seX(eventSlave, "anal", PC, "penetrative");
+			if (PC.dick !== 0 && eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+				knockMeUp(eventSlave, 15, 1, -1);
+			}
+			return t;
+		}
+	}
+};
diff --git a/src/events/RESS/devotedVirgin.js b/src/events/RESS/devotedVirgin.js
new file mode 100644
index 0000000000000000000000000000000000000000..0cbbaa40943c64bc9fb91f6603d61b1c90bc944f
--- /dev/null
+++ b/src/events/RESS/devotedVirgin.js
@@ -0,0 +1,136 @@
+App.Events.RESSDevotedVirgin = class RESSDevotedVirgin extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return [];
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				canWalk,
+				s => s.vagina === 0,
+				s => s.trust > 20,
+				s => s.devotion > 50,
+				s => s.rules.speech !== "restrictive"
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			He, he, his, him, himself
+		} = getPronouns(eventSlave);
+		const {S, s, ss, say, title: Master} = getEnunciation(eventSlave);
+
+		/** @type {App.Entity.PlayerState} */
+		let PC = V.PC;
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave);
+
+		let t = [];
+
+		t.push(App.UI.DOM.slaveDescriptionDialog(eventSlave));
+		t.push(`comes into your office and politely waits until you indicate ${he} can have your attention.`);
+		if (canTalk(eventSlave)) {
+			t.push(`${He} ${say}s, "${capFirstChar(Master)}, ${Spoken(eventSlave, "I want to know what it's like to have a cock in my virgin pussy.")}`);
+			if (canSee(eventSlave)) {
+				t.push(Spoken(eventSlave, "Seeing so many of the other slaves getting fucked makes it look like so much fun."));
+			} else if (canHear(eventSlave)) {
+				t.push(Spoken(eventSlave, "Hearing so many of the other slaves getting fucked makes it sound like so much fun."));
+			} else {
+				t.push(Spoken(eventSlave, "Learning about so many of the other slaves getting fucked makes it seem like so much fun."));
+			}
+			t.push(Spoken(eventSlave, `"I'm so turned on by it. I can't be a proper sex slave without using my pussy. Please take my virginity, ${Master}."`));
+		} else {
+			t.push(`${He} points to ${his} pussy and comically pantomimes having sex, and then uses gestures to ask if ${he} can serve you with ${his} pussy.`);
+		}
+		t.push(`${He} spreads ${his} legs ${eventSlave.belly >= 10000 ? `carefully and cocks ${his} hips` : `and cocks ${his} hips suggestively`} at you.`);
+		App.Events.addParagraph(node, t);
+		t = [];
+
+		App.Events.addResponses(node, [
+			new App.Events.Result(`No, reassure ${him} that ${he} doesn't need to be a slut`, reassure),
+			new App.Events.Result(`Make sure ${his} first time is enjoyable`, enjoy),
+			new App.Events.Result(`Make sure ${his} first fuck puts ${him} in ${his} place`, rape)
+		]);
+
+		function reassure() {
+			t = [];
+
+			t.push(`You kindly explain that you've decided to save ${his} virginity — for now. ${He} looks slightly down-hearted and tries to smile nonetheless, but finds ${himself} swept off ${his}`);
+			if (!hasAnyLegs(eventSlave)) {
+				t.push("stumps");
+			} else if (!hasBothLegs(eventSlave)) {
+				t.push("foot");
+			} else {
+				t.push("feet");
+			}
+			t.push(`and ${eventSlave.bellyPreg >= 5000 ? "gently" : ""} deposited on the couch. ${He} gasps with surprise when ${he} finds ${himself} being teased, fondled, and massaged rather than outright used. In no time at all ${he}'s pressing ${his} whole`);
+			if (eventSlave.belly >= 5000) {
+				t.push(`${eventSlave.bellyPreg >= 3000 ? "gravid" : "rounded"}`);
+			}
+			t.push(`body against you and shivering with delight. ${He} shudders, almost uncontrollably, when you grind your ${PC.dick === 0 ? "clitoris" : "dick"} against ${his} moistened, wet pussy between ${his} thighs, taking extra care not to penetrate the willing slave. ${He} leaves your office feeling <span class="hotpink">very close to ${his} ${WrittenMaster()} indeed,</span> and seems to have forgotten ${his} unfucked vagina, for now.`);
+
+			eventSlave.devotion += 4;
+			return t;
+		}
+
+		function enjoy() {
+			t = [];
+
+			t.push(`You bring ${him} over to the couch, ${!canDoVaginal(eventSlave) ? `unfasten ${his} chastity,` : ""} set ${him} on your lap, and teasingly play with ${his}`);
+			if (eventSlave.belly >= 5000) {
+				t.push(`${eventSlave.bellyPreg >= 3000 ? "gravid" : "rounded"}`);
+			}
+			t.push(`body for a long time. Every so often you move your hands over ${his} pussylips, making ${him} shiver and press ${himself} against you, but you only make it the center of attention once the poor over-aroused slave`);
+			if (canTalk(eventSlave)) {
+				t.push(`begs, "I can't take it any more, ${Master}! Fuck me, plea${s}e. Plea${s}e!"`);
+			} else {
+				t.push(`begins to reach for your ${PC.dick === 0 ? "strap-on" : "cock"} to pull it towards ${himself}.`);
+			}
+			t.push(`Finally, you lubricate your hand. Then you slowly and gently push a finger into ${his} invitingly tight virgin pussy. ${He}'s already on the edge of orgasm, and you patiently inch your ${PC.dick === 0 ? "strap-on" : "cock"} into ${his} pussy without making ${him} climax. You then start pumping and ${he} starts to moan and breathing more and more heavily. You continue pumping until ${he} finally starts to orgasm, ${PC.dick === 0 ? `${his} climactic shudders` : `the walls of ${his} tightening vagina`} send you over as well. ${He}'s left in a haze of <span class="hotpink">sexual satisfaction</span> that radiates outward from ${his} <span class="lime">newly initiated pussy,</span> and ${he} <span class="mediumaquamarine">trusts you</span> a lot more, now.`);
+			if ((eventSlave.fetishKnown !== 1 || eventSlave.fetish !== "pregnancy") && fetishChangeChance(eventSlave) > jsRandom(1,100)) {
+				t.push(`${He}'s back again before the week is over, eager for <span class="lightcoral">another dick in ${his} fuckhole.</span>`);
+
+				eventSlave.fetishKnown = 1;
+				eventSlave.fetishStrength = 65;
+				eventSlave.fetish = "pregnancy";
+			}
+
+			eventSlave.devotion += 3;
+			eventSlave.trust += 3;
+			eventSlave.vagina = 1;
+			seX(eventSlave, "vaginal", PC, "penetrative");
+			if (PC.dick !== 0 && eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+				knockMeUp(eventSlave, 15, 0, -1);
+			}
+			return t;
+		}
+
+		function rape() {
+			t = [];
+
+			t.push(`You throw ${him} onto the couch beside your desk; ${he} fails to stop ${himself} from losing balance with ${his} flailing ${isAmputee(eventSlave) ? "stumps" : "limbs"}. ${He} looks around doubtfully; ${he}'s already started to wonder whether this was a mistake. In a few moments ${he} knows it for sure as ${he} feels ${!canDoVaginal(eventSlave) ? `${his} vaginal chastity ripped off and` : ""} the burning sensation of a lubricated ${PC.dick === 0 ? "strap-on" : "dickhead"} forcing ${his} virgin pussy wide. You have ${his} face shoved deep between the leather cushions and you ignore the muffled sounds coming from ${him}. ${He} limply tries to relax for ${his} beloved master, but the painful sensation coming from ${his} crotch causes ${him} to start to writhe uncontrollably. ${He} pushes against the couch, trying to endure the pounding. When you finish, the poor slave is left lying on the couch with a ${PC.dick !== 0 ? `thin dribble of ejaculate escaping from ${his}` : ""} <span class="lime">newly fucked vagina,</span> a stream of drying tears running down each side of ${his} face, ${eventSlave.dick > 0 ? `a single drop of precum at the tip of ${his} totally flaccid dick,` : ""} and a new understanding of <span class="gold">${his} place in life.</span>`);
+			if ((eventSlave.fetishKnown !== 1 || eventSlave.fetish !== "submissive") && fetishChangeChance(eventSlave) > jsRandom(1,100)) {
+				t.push(`Before the end of the week it's clear that ${he}'s taken the rape to heart, and now sees ${his} body as something <span class="lightcoral">for others to use and abuse.</span>`);
+
+				eventSlave.fetishKnown = 1;
+				eventSlave.fetishStrength = 65;
+				eventSlave.fetish = "submissive";
+			}
+
+			eventSlave.trust -= 5;
+			eventSlave.vagina = 1;
+			seX(eventSlave, "vaginal", PC, "penetrative");
+			if (PC.dick !== 0 && eventSlave.eggType === "human" && canGetPregnant(eventSlave)) {
+				knockMeUp(eventSlave, 15, 0, -1);
+			}
+			return t;
+		}
+	}
+};
diff --git a/src/events/RESS/obedientAddict.js b/src/events/RESS/obedientAddict.js
new file mode 100644
index 0000000000000000000000000000000000000000..0a5eb25c99975aa4031dcbded5fd48f746ac2ec0
--- /dev/null
+++ b/src/events/RESS/obedientAddict.js
@@ -0,0 +1,121 @@
+App.Events.RESSObedientAddict = class RESSObedientAddict extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return [
+			() => V.suppository === 0
+		];
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				hasAnyLegs,
+				s => s.aphrodisiacs > 0 || s.inflationType === "aphrodisiac",
+				s => s.addict > 20,
+				s => s.devotion > 20 || s.trust < -20
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			He, he, His, his, him, girl
+		} = getPronouns(eventSlave);
+		const {S, title: Master} = getEnunciation(eventSlave);
+
+		/** @type {App.Entity.PlayerState} */
+		let PC = V.PC;
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave);
+
+		let t = [];
+
+		t.push(App.UI.DOM.slaveDescriptionDialog(eventSlave));
+		t.push(`takes ${his} aphrodisiacs in pill form, with ${his} food. They're dispensed alongside ${his} nutrition in the kitchen. You happen to be passing by when ${he}'s being issued ${his} drugs, and you see ${him} ${canSee(eventSlave) ? "staring" : "gazing"} thoughtfully at the insignificant-looking little pill, just holding it in ${his} hand and considering it for a long time. When ${he} realizes you're watching, ${he} turns to you and you realize ${his} eyes are moist.`);
+		if (canTalk(eventSlave)) {
+			t.push(`${He} ${SlaveStatsChecker.checkForLisp(eventSlave) ? "lisps through huge, quivering lips" : "mutters"}, "${Master}, ${Spoken(eventSlave, "I hate this shit. I come and come and come but it's just physical. I haven't felt close to anyone ever since I've been on these fucking aphrodisiacs.")}" ${He} shrugs bitterly. "${S}till crave them though."`);
+		} else {
+			t.push(`${He} uses trembling gestures to pour out dissatisfaction with life as an aphrodisiac addict. ${He} is emotionally unsatisfied with the mechanical orgasms ${he} gets on the drugs, but craves them intensely.`);
+		}
+		App.Events.addParagraph(node, t);
+		t = [];
+
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Make an example by forcing ${him} to take a massive dose`, forceful),
+			canDoVaginal(eventSlave) || canDoAnal(eventSlave)
+				? new App.Events.Result(`Have caring sex with ${him} before ${he} takes the aphrodisiacs`, caring, virginityCheck())
+				: new App.Events.Result()
+		]);
+
+		function forceful() {
+			t = [];
+
+			if (hasAnyEyes(eventSlave)) {
+				t.push(`You take ${him} by the shoulders, look into ${his} ${hasBothEyes(eventSlave) ? "eyes" : "eye"},`);
+			} else {
+				t.push(`You take ${him} by the shoulders`);
+			}
+			t.push(`and tell ${him} you'll fix things so ${he} doesn't mind so much. ${He} looks hopeful, even when you tell ${him} to take ${his} pill. ${He} does, and you hand ${him} another. And another. ${He}'s crying with dread by the fourth pill, knowing that this is ${his} punishment for complaining. ${His} pupils dilate, ${he} begins to breathe hard, and ${his} ${eventSlave.skin} skin flushes badly. ${He} tries to beg you to fuck ${him} but can't seem to find the words. ${He} begins to masturbate compulsively, so hard that ${he} collapses to the kitchen floor with ${his} first spastic orgasm.`);
+			if (eventSlave.chastityPenis === 1) {
+				t.push(`${His} cock is painfully compressed by ${his} chastity cage, but it does nothing to stop ${his} frantic efforts to come.`);
+			} else if (canAchieveErection(eventSlave)) {
+				if (eventSlave.dick > 9) {
+					t.push(`${His} inhuman cock is as engorged as physically possible given its size, threatens to knock ${him} unconscious from the sheer amount of blood diverted into it, and doesn't shrink at all when cum weakly splurts from its tip.`);
+				} else if (eventSlave.dick > 6) {
+					t.push(`${His} monstrous cock is agonizingly erect, threatens to knock ${him} unconscious from the sheer amount of blood is takes ${him} to get hard, and doesn't soften at all when ${he} spatters ${his} own chest with cum.`);
+				} else if (eventSlave.dick > 4) {
+					t.push(`${His} huge cock is agonizingly erect and doesn't soften at all when ${he} spatters ${his} own chest with cum.`);
+				} else if (eventSlave.dick > 3) {
+					t.push(`${His} big cock is agonizingly erect and doesn't soften at all when ${he} spatters ${his} own chest with cum.`);
+				} else if (eventSlave.dick > 1) {
+					t.push(`${His} cock is agonizingly erect and doesn't soften at all when ${he} spatters ${his} own chest with cum.`);
+				} else if (eventSlave.dick > 0) {
+					t.push(`${His} pathetic dick is agonizingly erect and doesn't soften at all when ${he} weakly dribbles cum.`);
+				}
+			} else if (canDoVaginal(eventSlave)) {
+				t.push(`${His} pussy is dripping with moisture and ${his} ragingly stiff clit doesn't soften at all when ${he} comes.`);
+			} else if (canDoAnal(eventSlave)) {
+				t.push(`${His} hungry asshole spasms with orgasm, but ${he} doesn't even pause ${his} anal masturbation.`);
+			} else {
+				t.push(`${His} whole body spasms with orgasm, but ${he} doesn't even pause ${his} efforts to draw out an orgasm by any means possible.`);
+			}
+			t.push(`For the hour or so it takes ${him} to pass out, slaves using the kitchen have to step over ${his} prostrate, orgasming body, lying in a pool of ${his} own drool, tears, sweat, and fluids. The next time you see ${him} in the kitchen, ${he} takes ${his} medicine like a <span class="gold">good ${girl}.</span> All your aphrodisiac addicts recognize the symptoms and the punishment, and <span class="gold">avoid even thinking</span> about resisting the system.`);
+
+			V.slaves.forEach(function(s) { if (s.aphrodisiacs > 0 || s.inflationType === "aphrodisiac") { s.trust -= 5; } });
+			return t;
+		}
+
+		function caring() {
+			t = [];
+
+			t.push(`You back ${him} up against the wall of the kitchen, kissing ${him}, touching ${his} body with care, and quietly shushing ${his} attempts to ask questions. You deftly extract the pill form ${his} hand and put it on the counter for later. With time and skill you bring ${him} to a fine state of arousal, not to mention <span class="hotpink">emotional need;</span> ${he} begins to kiss you back with almost frantic enthusiasm. When ${he}'s clearly ready, you lay ${him} across the kitchen table and ${PC.dick === 0 ? `work your groin up between ${his} legs` : `enter ${him}`}, drawing out a lusty moan. As the sex continues, however, ${he} begins to look doubtful, then distracted, and then to twitch occasionally. Finally ${he} bursts into tears.`);
+			if (canTalk(eventSlave)) {
+				t.push(`"I — I — fucking need my fix to come, ${Master}," ${he} sobs.`);
+			} else {
+				t.push(`${He} indicates through ${his} weeping that ${he} can't climax without the drugs.`);
+			}
+			t.push(`You pass ${him} the pill, and ${he} continues to weep inconsolably, apologizing all the while, until the drug takes away ${his} ability to care about anything but getting fucked. When you finish and extract ${PC.dick === 0 ? `yourself from between ${his} legs` : `your cock from ${his} well-used hole`}, though, you think you can detect a deep sadness in ${his} eyes that it cannot reach.`);
+
+			eventSlave.devotion += 4;
+			if (canDoVaginal(eventSlave)) {
+				VCheck.Vaginal(1, eventSlave);
+			} else {
+				VCheck.Anal(1, eventSlave);
+			}
+			return t;
+		}
+
+		function virginityCheck() {
+			if (canDoVaginal(eventSlave) && eventSlave.vagina === 0) {
+				return `This option will take ${his} virginity`;
+			} else if (!canDoVaginal(eventSlave) && eventSlave.anus === 0) {
+				return `This option will take ${his} anal virginity`;
+			}
+		}
+	}
+};
diff --git a/src/events/RESS/obedientBitchy.js b/src/events/RESS/obedientBitchy.js
index 5b683338edf75e22a5a7114937762a69bcb4f09d..0160fea00722763a3cf6946f1456587863eb6e55 100644
--- a/src/events/RESS/obedientBitchy.js
+++ b/src/events/RESS/obedientBitchy.js
@@ -34,11 +34,11 @@ App.Events.RESSObedientBitchy = class RESSObedientBitchy extends App.Events.Base
 		let t = [];
 
 		t.push(App.UI.DOM.slaveDescriptionDialog(eventSlave));
-		t.push(`is a decent slave, pretty well broken to your will and generally obedient. However, ${he} retains a cutting tongue. Though ${he}'s learned to ${his} considerable cost not to direct ${his} cheek at you, ${he} still insults your other slaves, and worse, will be sarcastic to members of the public ${he} encounters. You've worked on it, but it remains unsolved. Today, however, ${he} crossed the line. You were doing business in your office with a respected female slave drug wholesaler. The woman is in her late forties, and though she's something of a plastic surgery addict she has permitted her hair to go a becoming steel grey. Passing your office, ${eventSlave.slaveName} audibly commented on how old she looked to `);
+		t.push(`is a decent slave, pretty well broken to your will and generally obedient. However, ${he} retains a cutting tongue. Though ${he}'s learned to ${his} considerable cost not to direct ${his} cheek at you, ${he} still insults your other slaves, and worse, will be sarcastic to members of the public ${he} encounters. You've worked on it, but it remains unsolved. Today, however, ${he} crossed the line. You were doing business in your office with a respected female slave drug wholesaler. The woman is in her late forties, and though she's something of a plastic surgery addict she has permitted her hair to go a becoming steel grey. Passing your office, ${eventSlave.slaveName} audibly commented on how old she looked to`);
 		if (canStand(eventSlave)) {
 			t.push(`another slave.`);
 		} else {
-			t.push(`${his} aide.`);
+			t.push(`${her} aide.`);
 		}
 		t.push(`Anger flashes in the businesswoman's eyes.`);
 
diff --git a/src/events/RESS/obedientShemale.js b/src/events/RESS/obedientShemale.js
new file mode 100644
index 0000000000000000000000000000000000000000..1b9c0c3855495cab2672f0d7bee10d866dbdd1ce
--- /dev/null
+++ b/src/events/RESS/obedientShemale.js
@@ -0,0 +1,113 @@
+App.Events.RESSObedientShemale = class RESSObedientShemale extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return [];
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				hasAnyArms,
+				hasAnyLegs,
+				canTalk,
+				canDoAnal,
+				s => s.devotion <= 50,
+				s => s.devotion > 20 || s.trust < -20,
+				s => s.vagina < 0,
+				s => s.dick > 0,
+				s => s.anus > 0,
+				s => s.skill.anal <= 30
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {
+			He, he, His, his, him, himself, girl
+		} = getPronouns(eventSlave);
+		const {title: Master} = getEnunciation(eventSlave);
+		const anusDesc = ["tight", "loose", "gaping"][Math.ceil(Math.clamp(eventSlave.anus, 1, 3)) - 1];
+
+		/** @type {App.Entity.PlayerState} */
+		let PC = V.PC;
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave);
+
+		let t = [];
+
+		t.push(App.UI.DOM.slaveDescriptionDialog(eventSlave));
+		t.push(`has been doing ${his} best to be a good slave ${girl} recently. Since ${he} doesn't have a pussy, that means ${he}'s been doing ${his} best to take it up the ass like a good slave. ${He} isn't all that used to it yet, but ${he} tries. ${He}'s trying right now, bent over the arm of the couch in your office with your ${PC.dick === 0 ? "vibrating strap-on" : "cock"} pumping in and out of ${him}. ${He} looks like ${he} wants to ask something, so you tell ${him} to spit it out.`);
+		if (canTalk(eventSlave)) {
+			if (eventSlave.lips > 70) {
+				t.push(`${He} begs meekly through ${his} massive dick-sucking lips,`);
+			} else if (eventSlave.lipsPiercing + eventSlave.tonguePiercing > 2) {
+				t.push(`${He} begs meekly through ${his} mouthful of piercings,`);
+			} else {
+				t.push(`${He} begs meekly,`);
+			}
+			t.push(`"${Spoken(eventSlave, `${Master}, may I please, please touch myself?`)}"`);
+		} else {
+			t.push(`${He} uses gestures to ask if ${he} can masturbate while you sodomize ${him}.`);
+		}
+		App.Events.addParagraph(node, t);
+		t = [];
+
+		App.Events.addResponses(node, [
+			new App.Events.Result(`Let ${him}`, permit),
+			new App.Events.Result(`Train ${him} to be a skilled anal bottom`, bottom),
+			(eventSlave.fetish !== "buttslut" || eventSlave.fetishKnown !== 1) && eventSlave.prostate > 0
+				? new App.Events.Result(`Train ${him} to orgasm anally`, orgasm)
+				: new App.Events.Result()
+		]);
+
+		function permit() {
+			t = [];
+
+			t.push(`${He} moans with gratitude and relief. ${He} masturbates furiously as you continue to use ${his} butt. ${He} was clearly near the edge anyway, and`);
+			if (eventSlave.balls > 0) {
+				t.push("spatters the couch with cum");
+			} else if (eventSlave.prostate > 0) {
+				t.push("spatters the couch with ejaculate");
+			} else {
+				t.push("shakes with release");
+			}
+			t.push(`after just a few strokes of your ${PC.dick === 0 ? "strap-on" : "cock"} up ${his} butt. ${His} ${anusDesc} ass spasms and tightens with ${his} climax${PC.dick !== 0 ? ", a wonderful sensation" : ""}. You aren't finished with ${him}, but ${he} rubs ${himself} languidly and enjoys the hard anal reaming more than ${he} ever has previously. ${His} devotion to you <span class="hotpink">has increased.</span>`);
+
+			eventSlave.devotion += 4;
+			VCheck.Anal(1, eventSlave);
+			return t;
+		}
+
+		function bottom() {
+			t = [];
+
+			t.push(`${He} obeys your orders to keep ${his} ${hasBothArms(eventSlave) ? "hands" : "hand"} off ${his} dick, but can't hide ${his} disappointment and frustration. You keep a close watch on ${him}, and buttfuck ${him} every chance you get, teaching ${him} the finer points of taking a ${PC.dick === 0 ? "strap-on" : "dick"} up the butt. You focus entirely on your pleasure, teaching ${him} how to use ${his} ${anusDesc} anal ring to extract orgasms from cocks. This experience was hard for ${him} but has increased ${his} anal skill.`);
+
+			SkillIncrease.Anal(eventSlave, 10);
+			VCheck.Anal(9, eventSlave);
+			return t;
+		}
+
+		function orgasm() {
+			t = [];
+
+			t.push(`${He} obeys your orders to keep ${his} ${hasBothArms(eventSlave) ? "hands" : "hand"} off ${his} dick, but can't hide ${his} disappointment and frustration. You keep a close watch on ${him}, and fuck ${his} ${anusDesc} anus every chance you get, keeping ${him} desperately aroused and desperately sodomized. After some days of this, ${he} finally reaches a point of desperate arousal that permits ${him} to orgasm to prostate stimulation alone.`);
+			if (fetishChangeChance(eventSlave) > jsRandom(1,100)) {
+				t.push(`Before ${he} realizes what's happening, <span class="lightcoral">${he}'s getting aroused at the thought of anal sex.</span>`);
+
+				eventSlave.fetishStrength = 10;
+				eventSlave.fetish = "buttslut";
+				eventSlave.fetishKnown = 1;
+			} else {
+				t.push(`Despite being used as an anal slut for a whole week, ${he} was not significantly affected.`);
+			}
+
+			VCheck.Anal(9, eventSlave);
+			return t;
+		}
+	}
+};
diff --git a/src/events/RESS/suppositoryResistance.js b/src/events/RESS/suppositoryResistance.js
index e30e952568ecdb264be35982ccb4c852c3ac1f68..f5c1f684775182ddec3526ec84669e1afa385a84 100644
--- a/src/events/RESS/suppositoryResistance.js
+++ b/src/events/RESS/suppositoryResistance.js
@@ -23,7 +23,7 @@ App.Events.RESSSuppositoryResistance = class RESSSuppositoryResistance extends A
 		/** @type {Array<App.Entity.SlaveState>} */
 		let [eventSlave] = this.actors.map(a => getSlave(a));
 		const {
-			He, he, His, his, him
+			He, he, His, his, him, himself
 		} = getPronouns(eventSlave);
 		const {hisA} = getPronouns(assistant.pronouns().main).appendSuffix('A');
 		const {s, sh, ss, title: Master} = getEnunciation(eventSlave);
@@ -74,7 +74,7 @@ App.Events.RESSSuppositoryResistance = class RESSSuppositoryResistance extends A
 
 			t.push(`You put as much quiet authority into your ${canHear(eventSlave) ? "voice" : "words"} as you can, and explain to ${him} that ${he} is required to take ${his} drugs up ${his} ass. You do not explain any of the actual reasons why you require slaves to submit to daily machine anal, but couch your quiet explanation in terms of ${his} life as a slave. You tell ${him} that taking a solid buttfuck from a machine first thing in the morning is something you've ordered ${him} to do. ${He} needs to do it. If ${he} does, ${he}'ll be treated well; if ${he} does not, that will oblige you to punish ${him}. You tell ${him} that you would like ${him} to be a good slave, and that it would be disappointing if you had to punish ${him}. You put just a hint of steel into the last sentence, and ${he} stiffens a little at it. Hesitantly, ${he}`);
 			if (eventSlave.belly >= 300000) {
-				t.push(`shifts onto ${his} ${belly} belly, uses ${his} ${hasBothArms(eventSlave) ? "hands" : "hand"} to brace ${him}self against the impending pounding, and scoots towards the phallus.`);
+				t.push(`shifts onto ${his} ${belly} belly, uses ${his} ${hasBothArms(eventSlave) ? "hands" : "hand"} to brace ${himself} against the impending pounding, and scoots towards the phallus.`);
 			} else {
 				t.push(`gets to ${his} ${hasBothLegs(eventSlave) ? "knees" : "knee"}, using ${his} ${hasBothArms(eventSlave) ? "hands" : "hand"} to spread ${his} cheeks for the phallus.`);
 			}
@@ -101,7 +101,7 @@ App.Events.RESSSuppositoryResistance = class RESSSuppositoryResistance extends A
 
 			t.push(`You give the kitchen an order by voice command. ${canHear(eventSlave) ? "It's technical" : `${He} can't hear it`}, so ${he} doesn't understand it, but the meaning becomes clear soon enough. The phallus aiming meaningfully at the place where ${he}'s supposed to kneel and offer up ${his} butthole is withdrawn, and ${he}'s halfway through a shocked thank you when it's replaced by another, noticeably larger. You tell ${him} in deceptively mild tones that you'll keep increasing the size of ${his} phallus until ${he} decides to get down and take it like a good little ${desc}, or you run out of size options and are forced to strap ${him} down and apply two at once. At that point, ${his} ass might be able to take it; then again, it might not. ${He} begins to cry, but is so <span class="gold">frightened</span> by the threat that ${he} doesn't let ${his} tears distract ${him} from a delectable scramble to`);
 			if (eventSlave.belly >= 300000) {
-				t.push(`throw ${him}self onto ${his} ${belly} belly and`);
+				t.push(`throw ${himself} onto ${his} ${belly} belly and`);
 			} else {
 				t.push(`get down on ${his} ${hasBothLegs(eventSlave) ? "knees" : "knee"} and`);
 			}
diff --git a/src/events/randomEvent.js b/src/events/randomEvent.js
index 806ebe78d68cbfd95056f9a53a616f7d11e73674..b1d276309168b312abd7c404fae2dc921e737a71 100644
--- a/src/events/randomEvent.js
+++ b/src/events/randomEvent.js
@@ -12,13 +12,17 @@ App.Events.getIndividualEvents = function() {
 		// example: new App.Events.TestEvent(),
 		new App.Events.RESSAssFitting(),
 		new App.Events.RESSCockFeederResistance(),
+		new App.Events.RESSDevotedAnalVirgin(),
+		new App.Events.RESSDevotedVirgin(),
 		new App.Events.RESSEscapee(),
 		new App.Events.RESSHotPC(),
 		new App.Events.RESSLazyEvening(),
 		new App.Events.RESSMoistPussy(),
 		new App.Events.RESSMuscles(),
+		new App.Events.RESSObedientAddict(),
 		new App.Events.RESSObedientBitchy(),
 		new App.Events.RESSObedientIdiot(),
+		new App.Events.RESSObedientShemale(),
 		new App.Events.RESSRetchingCum(),
 		new App.Events.RESSSuppositoryResistance(),
 		new App.Events.RESSWaistlineWoes(),
diff --git a/src/js/eventSelectionJS.js b/src/js/eventSelectionJS.js
index 9a8328b169839cc7ae2aede11980cf7af60786bc..9c92ac163066d304aa23660ca36e038da72aa431 100644
--- a/src/js/eventSelectionJS.js
+++ b/src/js/eventSelectionJS.js
@@ -477,20 +477,6 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 
-				if (eventSlave.devotion > 20 || eventSlave.trust < -20) {
-					if (eventSlave.devotion <= 50) {
-						if (eventSlave.vagina < 0) {
-							if (canDoAnal(eventSlave)) {
-								if (eventSlave.anus > 0) {
-									if (eventSlave.skill.anal <= 30) {
-										V.RESSevent.push("obedient shemale");
-									}
-								}
-							}
-						}
-					}
-				}
-
 				if (eventSlave.devotion > 50) {
 					if (eventSlave.trust > 20) {
 						if (eventSlave.physicalAge > 37) {
@@ -1003,14 +989,6 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 				}
 			}
 
-			if (eventSlave.devotion > 20 || eventSlave.trust < -20) {
-				if (eventSlave.addict > 20) {
-					if (eventSlave.aphrodisiacs > 0 || eventSlave.inflationType === "aphrodisiac") {
-						V.RESSevent.push("obedient addict");
-					}
-				}
-			}
-
 			if (eventSlave.devotion <= 50) {
 				if (eventSlave.trust >= -50) {
 					if (eventSlave.behavioralFlaw === "gluttonous") {
@@ -1334,28 +1312,6 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 			}
 		}
 
-		if (canWalk(eventSlave) && hasAnyArms(eventSlave)) {
-			if (eventSlave.vagina === 0) {
-				if (eventSlave.devotion > 50) {
-					if (eventSlave.trust > 20) {
-						if (eventSlave.rules.speech !== "restrictive") {
-							V.RESSevent.push("devoted virgin");
-						}
-					}
-				}
-			}
-
-			if (eventSlave.anus === 0) {
-				if (eventSlave.devotion > 50) {
-					if (eventSlave.trust > 20) {
-						if (eventSlave.rules.speech !== "restrictive") {
-							V.RESSevent.push("devoted anal virgin");
-						}
-					}
-				}
-			}
-		}
-
 		if (V.seeExtreme === 1) {
 			if (eventSlave.balls > 1) {
 				if (eventSlave.scrotum > 0) {
@@ -1912,20 +1868,6 @@ globalThis.generateRandomEventPoolServant = function(eventSlave) {
 					}
 				}
 
-				if (eventSlave.devotion > 20 || eventSlave.trust < -20) {
-					if (eventSlave.devotion <= 50) {
-						if (eventSlave.vagina < 0) {
-							if (canDoAnal(eventSlave)) {
-								if (eventSlave.anus > 0) {
-									if (eventSlave.skill.anal <= 30) {
-										V.RESSevent.push("obedient shemale");
-									}
-								}
-							}
-						}
-					}
-				}
-
 				if (eventSlave.devotion > 50) {
 					if (eventSlave.trust > 20) {
 						if (eventSlave.physicalAge > 37) {
@@ -2276,14 +2218,6 @@ globalThis.generateRandomEventPoolServant = function(eventSlave) {
 				}
 			}
 
-			if (eventSlave.devotion > 20 || eventSlave.trust < -20) {
-				if (eventSlave.addict > 20) {
-					if (eventSlave.aphrodisiacs > 0 || eventSlave.inflationType === "aphrodisiac") {
-						V.RESSevent.push("obedient addict");
-					}
-				}
-			}
-
 			if (eventSlave.devotion <= 50) {
 				if (eventSlave.trust >= -50) {
 					if (eventSlave.behavioralFlaw === "gluttonous") {
@@ -2483,28 +2417,6 @@ globalThis.generateRandomEventPoolServant = function(eventSlave) {
 			}
 		}
 
-		if (canWalk(eventSlave) && hasAnyArms(eventSlave)) {
-			if (eventSlave.vagina === 0) {
-				if (eventSlave.devotion > 50) {
-					if (eventSlave.trust > 20) {
-						if (eventSlave.rules.speech !== "restrictive") {
-							V.RESSevent.push("devoted virgin");
-						}
-					}
-				}
-			}
-
-			if (eventSlave.anus === 0) {
-				if (eventSlave.devotion > 50) {
-					if (eventSlave.trust > 20) {
-						if (eventSlave.rules.speech !== "restrictive") {
-							V.RESSevent.push("devoted anal virgin");
-						}
-					}
-				}
-			}
-		}
-
 		if (eventSlave.devotion <= 50) {
 			V.RESSevent.push("scrubbing");
 		}
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 6c3f7cd67fca055ec7cebb59e0868d0c21004957..b15495baf37df82f3242314bb5376d83f6fcb84f 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -1388,31 +1388,6 @@ During a routine inspection, <<= App.UI.slaveDescriptionDialog($activeSlave)>> r
 	Can I get fucked in the pu<<ss>>y, to <<s>>pread it out a little?"
 <</if>>
 
-<<case "obedient shemale">>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>> has been doing $his best to be a good slave $girl recently. Since $he doesn't have a pussy, that means $he's been doing $his best to take it up the ass like a good slave. $He isn't all that used to it yet, but $he tries. $He's trying right now, bent over the arm of the couch in your office with your <<if $PC.dick == 0>>vibrating strap-on<<else>>cock<</if>> pumping in and out of $him. $He looks like $he wants to ask something, so you tell $him to spit it out.
-<<if !canTalk($activeSlave)>>
-	$He uses gestures to ask if $he can masturbate while you sodomize $him.
-<<else>>
-	<<if ($activeSlave.lips > 70)>>
-		$He begs meekly through $his massive dick-sucking lips,
-	<<elseif ($activeSlave.lipsPiercing+$activeSlave.tonguePiercing > 2)>>
-		$He begs meekly through $his mouthful of piercings,
-	<<else>>
-		$He begs meekly,
-	<</if>>
-	"<<Master>>, may I plea<<s>>e, plea<<s>>e touch my<<s>>elf?"
-<</if>>
-
-<<case "obedient addict">>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>> takes $his aphrodisiacs in pill form, with $his food. They're dispensed alongside $his nutrition in the kitchen. You happen to be passing by when $he's being issued $his drugs, and you see $him <<if canSee($activeSlave)>>staring<<else>>gazing<</if>> thoughtfully at the insignificant-looking little pill, just holding it in $his hand and considering it for a long time. When $he realizes you're watching, $he turns to you and you realize $his eyes are moist.
-<<if !canTalk($activeSlave)>>
-	$He uses trembling gestures to pour out dissatisfaction with life as an aphrodisiac addict. $He is emotionally unsatisfied with the mechanical orgasms $he gets on the drugs, but craves them intensely.
-<<else>>
-	$He <<if SlaveStatsChecker.checkForLisp($activeSlave)>>lisps through huge, quivering lips,<<else>>mutters,<</if>> "<<Master>>, I hate thi<<s>> <<sh>>it. I come and come and come but it'<<s>> ju<<s>>t phy<<s>>ical. I haven't felt clo<<s>>e to anyone ever <<s>>in<<c>>e I've been on the<<s>>e fucking aphrodi<<s>>iac<<s>>." $He shrugs bitterly. "<<S>>till crave them though."
-<</if>>
-
 <<case "impregnation please">>
 
 <<set _faceUp = 1>>
@@ -1516,26 +1491,6 @@ There is a horrible crash from the shower. You rush in to see <<= App.UI.slaveDe
 <</if>>
 "Help me, <<Master>>!"
 
-<<case "devoted virgin">>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>> comes into your office and politely waits until you indicate $he can have your attention.
-<<if !canTalk($activeSlave)>>
-	$He points to $his pussy and comically pantomimes having sex, and then uses gestures to ask if $he can serve you with $his pussy.
-<<else>>
-	$He <<say>>s, "<<= capFirstChar($enunciate.title)>>, I want to know what it'<<s>> like to have a cock in my virgin pu<<ss>>y. <<if canSee($activeSlave)>><<S>>eeing<<elseif canHear($activeSlave)>>Hearing<<else>>Learning about<</if>> <<s>>o many of the other <<s>>lave<<s>> getting fucked make<<s>> it <<if canSee($activeSlave)>>look<<elseif canHear($activeSlave)>><<s>>ound<<else>><<s>>eem<</if>> like <<s>>o much fun. I'm <<s>>o turned on by it. I can't be a proper <<s>>e<<x>> <<s>>lave without u<<s>>ing my pu<<ss>>y. Plea<<s>>e take my virginity, <<Master>>."
-<</if>>
-$He spreads $his legs <<if $activeSlave.belly >= 10000>>carefully and cocks $his hips<<else>>and cocks $his hips suggestively<</if>> at you.
-
-<<case "devoted anal virgin">>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>> comes into your office and politely waits until you indicate $he can have your attention.
-<<if !canTalk($activeSlave)>>
-	$He comically pantomimes anal sex, and then uses gestures to ask if $he can serve you anally.
-<<else>>
-	$He <<say>>s, "<<= capFirstChar($enunciate.title)>>, I <<if canSee($activeSlave)>><<s>>ee<<elseif canHear($activeSlave)>>hear<<else>>am <<s>>urrounded by<</if>> <<s>>o many of the other <<s>>lave<<s>> getting buttfucked. I think it'<<s>> hot <<if canSee($activeSlave)>><<s>>eeing<<elseif canHear($activeSlave)>>hearing<<else>>that you have<</if>> them take it up the a<<ss>>, and I feel almo<<s>>t incomplete <<s>>in<<c>>e I don't take cock in every hole. Plea<<s>>e take my butt virginity, <<Master>>."
-<</if>>
-$He<<if $activeSlave.belly >= 10000>> carefully turns and spreads $his legs, allowing $his _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>> belly space as $he bends over, to wiggle<<else>> turns around and wiggles<</if>> $his posterior indicatively.
-
 <<case "surgery addict">>
 
 Going about your day, you see <<= App.UI.slaveDescriptionDialog($activeSlave)>> sitting <<if (hasAnyLegs($activeSlave))>><<if (hasBothLegs($activeSlave))>>cross-legged <</if>>in<<else>>propped against the doorway of<</if>> the remote surgery room, <<if canSee($activeSlave)>>staring intently at<<else>>gazing longingly towards<</if>> the equipment. $He's not breaking any rules, but this behavior is so strange you investigate. $He asks
@@ -8913,100 +8868,6 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h
 	<</replace>>
 <</link>><<if ($activeSlave.chastityVagina)>> //This option will remove $his chastity belt//<</if>>
 
-<<case "obedient shemale">>
-
-<<link "Let $him">>
-	<<replace "#result">>
-		$He moans with gratitude and relief. $He masturbates furiously as you continue to use $his butt. $He was clearly near the edge anyway, and
-		<<if ($activeSlave.balls > 0)>>
-			spatters the couch with cum
-		<<elseif $activeSlave.prostate > 0>>
-			spatters the couch with ejaculate
-		<<else>>
-			shakes with release
-		<</if>>
-		after just a few strokes of your <<if $PC.dick == 0>>strap-on<<else>>dick<</if>> up $his butt. $His <<if ($activeSlave.anus > 2)>>gaping<<elseif ($activeSlave.anus > 1)>>loose<<else>>tight<</if>> ass spasms and tightens with $his climax<<if $PC.dick != 0>>, a wonderful sensation<</if>>. You aren't finished with $him, but $he rubs $himself languidly and enjoys the hard anal reaming more than $he ever has previously. $His devotion to you @@.hotpink;has increased.@@
-		<<set $activeSlave.devotion += 4>>
-		<<= VCheck.Anal()>>
-	<</replace>>
-<</link>>
-<br><<link "Train $him to be a skilled anal bottom">>
-	<<replace "#result">>
-		$He obeys your orders to keep $his hand<<if hasBothArms($activeSlave)>>s<</if>> off $his dick, but can't hide $his disappointment and frustration. You keep a close watch on $him, and buttfuck $him every chance you get, teaching $him the finer points of taking a <<if $PC.dick == 0>>strap-on<<else>>dick<</if>> up the butt. You focus entirely on your pleasure, teaching $him how to use $his <<if ($activeSlave.anus > 2)>>gaping<<elseif ($activeSlave.anus > 1)>>loose<<else>>tight<</if>> anal ring to extract orgasms from cocks. This experience was hard for $him but has increased $his anal skill.
-		<<= SkillIncrease.Anal($activeSlave, 10)>>
-		<<= VCheck.Anal(9)>>
-	<</replace>>
-<</link>>
-<<if (($activeSlave.fetish != "buttslut") || ($activeSlave.fetishKnown != 1)) && $activeSlave.prostate > 0>>
-	<br><<link "Train $him to orgasm anally">>
-		<<replace "#result">>
-			$He obeys your orders to keep $his hand<<if hasBothArms($activeSlave)>>s<</if>> off $his dick, but can't hide $his disappointment and frustration. You keep a close watch on $him, and fuck $his <<if ($activeSlave.anus > 2)>>gaping<<elseif ($activeSlave.anus > 1)>>loose<<else>>tight<</if>> anus every chance you get, keeping $him desperately aroused and desperately sodomized. After some days of this, $he finally reaches a point of desperate arousal that permits $him to orgasm to prostate stimulation alone.
-			<<= VCheck.Anal(9)>>
-			<<if random(1,100) > 50>>
-				<<set $activeSlave.fetishStrength = 10, $activeSlave.fetish = "buttslut", $activeSlave.fetishKnown = 1>>
-				Before $he realizes what's happening, @@.lightcoral;$he's getting aroused at the thought of anal sex.@@
-			<<else>>
-				Despite being used as an anal slut for a whole week, $he was not significantly affected.
-			<</if>>
-		<</replace>>
-	<</link>>
-<</if>>
-
-<<case "obedient addict">>
-
-<<link "Make an example by forcing $him to take a massive dose">>
-	<<replace "#result">>
-		You take $him by the shoulders<<if hasAnyEyes($activeSlave)>>,
-			look into $his eye<<if hasBothEyes($activeSlave)>>s<</if>>,
-		<</if>>
-		and tell $him you'll fix things so $he doesn't mind so much. $He looks hopeful, even when you tell $him to take $his pill. $He does, and you hand $him another. And another. $He's crying with dread by the fourth pill, knowing that this is $his punishment for complaining. $His pupils dilate, $he begins to breathe hard, and $his $activeSlave.skin skin flushes badly. $He tries to beg you to fuck $him but can't seem to find the words. $He begins to masturbate compulsively, so hard that $he collapses to the kitchen floor with $his first spastic orgasm.
-		<<if ($activeSlave.chastityPenis == 1)>>
-			$His cock is painfully compressed by $his chastity cage, but it does nothing to stop $his frantic efforts to come.
-		<<elseif canAchieveErection($activeSlave)>>
-			<<if $activeSlave.dick > 9>>
-				$His inhuman cock is as engorged as physically possible given its size, threatens to knock $him unconscious from the sheer amount of blood diverted into it, and doesn't shrink at all when cum weakly splurts from its tip.
-			<<elseif $activeSlave.dick > 6>>
-				$His monstrous cock is agonizingly erect, threatens to knock $him unconscious from the sheer amount of blood is takes $him to get hard, and doesn't soften at all when $he spatters $his own chest with cum.
-			<<elseif $activeSlave.dick > 4>>
-				$His huge cock is agonizingly erect and doesn't soften at all when $he spatters $his own chest with cum.
-			<<elseif $activeSlave.dick > 3>>
-				$His big cock is agonizingly erect and doesn't soften at all when $he spatters $his own chest with cum.
-			<<elseif $activeSlave.dick > 1>>
-				$His cock is agonizingly erect and doesn't soften at all when $he spatters $his own chest with cum.
-			<<elseif $activeSlave.dick > 0>>
-				$His pathetic dick is agonizingly erect and doesn't soften at all when $he weakly dribbles cum.
-			<</if>>
-		<<elseif canDoVaginal($activeSlave)>>
-			$His pussy is dripping with moisture and $his ragingly stiff clit doesn't soften at all when $he comes.
-		<<elseif canDoAnal($activeSlave)>>
-			$His hungry asshole spasms with orgasm, but $he doesn't even pause $his anal masturbation.
-		<<else>>
-			$His whole body spasms with orgasm, but $he doesn't even pause $his efforts to draw out an orgasm by any means possible.
-		<</if>>
-		For the hour or so it takes $him to pass out, slaves using the kitchen have to step over $his prostrate, orgasming body, lying in a pool of $his own drool, tears, sweat, and fluids. The next time you see $him in the kitchen, $he takes $his medicine like a @@.gold;good $girl.@@ All your aphrodisiac addicts recognize the symptoms and the punishment, and @@.gold;avoid even thinking@@ about resisting the system.
-		<<set $slaves.forEach(function(s) { if (s.aphrodisiacs > 0 || s.inflationType == "aphrodisiac") { s.trust -= 5; } })>>
-	<</replace>>
-<</link>>
-<<if canDoVaginal($activeSlave) || canDoAnal($activeSlave)>>
-	<br><<link "Have caring sex with $him before $he takes the aphrodisiacs">>
-		<<replace "#result">>
-			You back $him up against the wall of the kitchen, kissing $him, touching $his body with care, and quietly shushing $his attempts to ask questions. You deftly extract the pill form $his hand and put it on the counter for later. With time and skill you bring $him to a fine state of arousal, not to mention @@.hotpink;emotional need;@@ $he begins to kiss you back with almost frantic enthusiasm. When $he's clearly ready, you lay $him across the kitchen table and <<if $PC.dick == 0>>work your groin up between $his legs<<else>>enter $him<</if>>, drawing out a lusty moan. As the sex continues, however, $he begins to look doubtful, then distracted, and then to twitch occasionally. Finally $he bursts into tears.
-			<<if !canTalk($activeSlave)>>
-				$He indicates through $his weeping that $he can't climax without the drugs.
-			<<else>>
-				"I — I — fucking need my fix to come, <<Master>>," $he sobs.
-			<</if>>
-			You pass $him the pill, and $he continues to weep inconsolably, apologizing all the while, until the drug takes away $his ability to care about anything but getting fucked. When you finish and extract <<if $PC.dick == 0>>yourself from between $his legs<<else>>your cock from $his well-used hole<</if>>, though, you think you can detect a deep sadness in $his eyes that it cannot reach.
-			<<set $activeSlave.devotion += 4>>
-			<<if canDoVaginal($activeSlave)>>
-				<<= VCheck.Vaginal()>>
-			<<else>>
-				<<= VCheck.Anal()>>
-			<</if>>
-		<</replace>>
-	<</link>><<if canDoVaginal($activeSlave) && ($activeSlave.vagina == 0)>> //This option will take $his virginity//<<elseif !canDoVaginal($activeSlave) && ($activeSlave.anus == 0)>> //This option will take $his anal virginity//<</if>>
-<</if>>
-
 <<case "impregnation please">>
 
 <<link "Put a slave in $him">>
@@ -9368,101 +9229,6 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h
 	<</replace>>
 <</link>>
 
-<<case "devoted virgin">>
-
-<<link "No, reassure $him that $he doesn't need to be a slut">>
-	<<replace "#result">>
-		You kindly explain that you've decided to save $his virginity — for now. $He looks slightly down-hearted and tries to smile nonetheless, but finds $himself swept off $his <<if !hasAnyLegs($activeSlave)>>stumps<<elseif !hasBothLegs($activeSlave)>>foot<<else>>feet<</if>> and<<if $activeSlave.bellyPreg >= 5000>> gently<</if>> deposited on the couch. $He gasps with surprise when $he finds $himself being teased, fondled, and massaged rather than outright used. In no time at all $he's pressing $his whole<<if $activeSlave.belly >= 5000>> <<if $activeSlave.bellyPreg >= 3000>>gravid<<else>>rounded<</if>><</if>> body against you and shivering with delight. $He shudders, almost uncontrollably, when you grind your <<if $PC.dick == 0>>clitoris<<else>>dick<</if>> against $his moistened, wet pussy between $his thighs, taking extra care not to penetrate the willing slave. $He leaves your office feeling @@.hotpink;very close to $his <<= WrittenMaster()>> indeed,@@ and seems to have forgotten $his unfucked vagina, for now.
-		<<set $activeSlave.devotion += 4>>
-	<</replace>>
-<</link>>
-<br><<link "Make sure $his first time is enjoyable">>
-	<<replace "#result">>
-		You bring $him over to the couch<<if !canDoVaginal($activeSlave)>>, unfasten $his chastity<</if>>, set $him on your lap, and teasingly play with $his<<if $activeSlave.belly >= 5000>> <<if $activeSlave.bellyPreg >= 3000>>gravid<<else>>rounded<</if>><</if>> body for a long time. Every so often you move your hands over $his pussylips, making $him shiver and press $himself against you, but you only make it the center of attention once the poor over-aroused slave
-		<<if !canTalk($activeSlave)>>
-			begins to reach for your <<if $PC.dick == 0>>strap-on<<else>>cock<</if>> to pull it towards $himself.
-		<<else>>
-			begs, "I can't take it any more, <<Master>>! Fuck me, plea<<s>>e. Plea<<s>>e!"
-		<</if>>
-		Finally, you lubricate your hand. Then you slowly and gently push a finger into $his invitingly tight virgin pussy. $He's already on the edge of orgasm, and you patiently inch your <<if $PC.dick == 0>>strap-on<<else>>cock<</if>> into $his pussy without making $him climax. You then start pumping and $he starts to moan and breathing more and more heavily. You continue pumping until $he finally starts to orgasm, <<if $PC.dick == 0>>$his climactic shudders<<else>>the walls of $his tightening vagina<</if>> send you over as well. $He's left in a haze of @@.hotpink;sexual satisfaction@@ that radiates outward from $his @@.lime;newly initiated pussy,@@ and $he @@.mediumaquamarine;trusts you@@ a lot more, now.
-		<<if ($activeSlave.fetishKnown != 1) || ($activeSlave.fetish != "pregnancy")>>
-			$He's back again before the week is over, eager for @@.lightcoral;another dick in $his fuckhole.@@
-			<<set $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65, $activeSlave.fetish = "pregnancy">>
-		<</if>>
-		<<set $activeSlave.devotion += 3, $activeSlave.trust += 3, $activeSlave.vagina = 1>>
-		<<run seX($activeSlave, "vaginal", $PC, "penetrative")>>
-		<<if $PC.dick != 0 && $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
-			<<= knockMeUp($activeSlave, 15, 0, -1)>>
-		<</if>>
-	<</replace>>
-<</link>>
-<br><<link "Make sure $his first fuck puts $him in $his place">>
-	<<replace "#result">>
-		You throw $him onto the couch beside your desk; $he fails to stop $himself from losing balance with $his flailing <<if isAmputee($activeSlave)>>stumps<<else>>limbs<</if>>. $He looks around doubtfully; $he's already started to wonder whether this was a mistake. In a few moments $he knows it for sure as $he feels<<if !canDoVaginal($activeSlave)>> $his vaginal chastity ripped off and<</if>> the burning sensation of a lubricated <<if $PC.dick == 0>>strap-on<<else>>dickhead<</if>> forcing $his virgin pussy wide. You have $his face shoved deep between the leather cushions and you ignore the muffled sounds coming from $him. $He limply tries to relax for $his beloved master, but the painful sensation coming from $his crotch causes $him to start to writhe uncontrollably. $He pushes against the couch, trying to endure the pounding. When you finish, the poor slave is left lying on the couch with <<if $PC.dick == 0>>a<<else>>a thin dribble of ejaculate escaping from $his<</if>> @@.lime;newly fucked vagina,@@ a stream of drying tears running down each side of $his face,<<if $activeSlave.dick > 0>> a single drop of precum at the tip of $his totally flaccid dick,<</if>> and a new understanding of @@.gold;$his place in life.@@
-		<<if ($activeSlave.fetishKnown != 1) || ($activeSlave.fetish != "submissive")>>
-			Before the end of the week it's clear that $he's taken the rape to heart, and now sees $his body as something @@.lightcoral;for others to use and abuse.@@
-			<<set $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65, $activeSlave.fetish = "submissive">>
-		<</if>>
-		<<set $activeSlave.trust -= 5, $activeSlave.vagina = 1>>
-		<<run seX($activeSlave, "vaginal", $PC, "penetrative")>>
-		<<if $PC.dick != 0 && $activeSlave.eggType == "human" && isFertile($activeSlave) && $activeSlave.preg == 0>>
-			<<= knockMeUp($activeSlave, 25, 0, -1)>>
-		<</if>>
-	<</replace>>
-<</link>>
-
-<<case "devoted anal virgin">>
-
-<<link "No, reassure $him that $he doesn't need to be an anal slut">>
-	<<replace "#result">>
-		You kindly explain that you've decided to save $his ass — for now. $He starts to express understanding and apologize for bothering you, but finds $himself swept off $his <<if !hasBothLegs($activeSlave)>>stumps<<elseif !hasAnyLegs($activeSlave)>>foot<<else>>feet<</if>> and<<if $activeSlave.bellyPreg >= 5000>> gently<</if>> deposited on the couch. $He gasps with surprise when $he finds $himself being teased, fondled, and massaged rather than outright used. In no time at all $he's pressing $his whole<<if $activeSlave.belly >= 5000>> <<if $activeSlave.bellyPreg >= 3000>>gravid<<else>>rounded<</if>><</if>> body against you and shivering with delight.
-		<<if $activeSlave.vagina > 0 && canDoVaginal($activeSlave)>>
-			$His shivers reach a crescendo when you <<if $PC.dick == 0>>scissor yourself against<<else>>enter<</if>> $his warm, wet pussy, which convulsively flexes against your <<if $PC.dick == 0>>clit<<else>>rock hard dick<</if>>.
-		<<else>>
-			<<if $PC.dick == 0>>You ride $his face,<<else>>You push your dick<<if $PC.vagina != -1>> and as much of the upper part of your pussy as you can manage<</if>> between $his thighs for some frottage,<</if>> lavishing attention on $his nipples to ensure that $he has fun, too.
-		<</if>>
-		$He leaves your office feeling @@.hotpink;very close to $his <<= WrittenMaster()>> indeed,@@ and seems to have forgotten $his unfucked butthole for now.
-		<<set $activeSlave.devotion += 4>>
-		<<if $activeSlave.vagina > 0 && canDoVaginal($activeSlave)>>
-			<<= VCheck.Vaginal()>>
-		<</if>>
-	<</replace>>
-<</link>>
-<br><<link "Make sure $his first anal sex is enjoyable">>
-	<<replace "#result">>
-		You bring $him over to the couch<<if !canDoAnal($activeSlave)>>, unfasten $his anal chastity<</if>>, set $him on your lap, and teasingly play with $his<<if $activeSlave.belly >= 5000>> <<if $activeSlave.bellyPreg >= 3000>>gravid<<else>>rounded<</if>><</if>> body for a long time. Every so often you graze a finger over $his unfucked butthole, making $him shiver and press $himself against you, but you only make it the center of attention once the poor over-aroused slave
-		<<if !canTalk($activeSlave)>>
-			begins to use piteous gestures to beg you abjectly for anal.
-		<<else>>
-			begs, "I can't take it any more, <<Master>>! Plea<<s>>e fuck my a<<ss>>!"
-		<</if>>
-		In reward, you sink a lightly lubricated finger up to the first knuckle in $his delightfully tight asshole. $He's already on the edge of orgasm, and it takes a long, long time for you to work first a finger, then two, and then your <<if $PC.dick == 0>>strap-on<<else>>cock<</if>> up $his ass without sending $him over. When you finally let $him orgasm <<if $PC.dick == 0>>$his unabashed enjoyment<<else>>the strength of $his spasming sphincter<</if>> sends you over as well. $He's left in a haze of @@.hotpink;sexual satisfaction@@ that radiates outward from $his @@.lime;newly stretched asshole,@@ and $he @@.mediumaquamarine;trusts you@@ a lot more, now.
-		<<if ($activeSlave.fetishKnown != 1) || ($activeSlave.fetish != "buttslut")>>
-			Before the end of the week $he's back, begging for @@.lightcoral;another dick up the ass.@@
-			<<set $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65, $activeSlave.fetish = "buttslut">>
-		<</if>>
-		<<set $activeSlave.devotion += 3, $activeSlave.trust += 3, $activeSlave.anus = 1>>
-		<<run seX($activeSlave, "anal", $PC, "penetrative")>>
-		<<if $PC.dick != 0 && $activeSlave.eggType == "human" && isFertile($activeSlave) && $activeSlave.preg == 0>>
-			<<= knockMeUp($activeSlave, 15, 1, -1)>>
-		<</if>>
-	<</replace>>
-<</link>>
-<br><<link "Make sure $his first buttfuck puts $him in $his place">>
-	<<replace "#result">>
-		You throw $him onto the couch face-down<<if $activeSlave.belly >= 5000>>, $his rear pushed into the air by $his rounded belly<</if>>, catching a glimpse of $his doubtful face as $he goes; $he's already started to wonder whether this was a mistake. In a few moments $he knows it for sure as $he feels<<if !canDoAnal($activeSlave)>> $his anal chastity ripped off and<</if>> the burning sensation of a lubricated <<if $PC.dick == 0>>strap-on<<else>>dickhead<</if>> forcing $his virgin sphincter wide. Whatever noises $he might be making are pretty inaudible, since you have $his sobbing face shoved deep between the leather cushions. $He tries not to struggle and relax for $his beloved master, but $his body rebels against the pain and $he starts to wriggle spastically, trying to burrow into the couch to get away from the pounding. When you finish, the poor slave is left lying on the couch with <<if $PC.dick == 0>>a<<else>>a thin dribble of ejaculate escaping from $his<</if>> @@.lime;newly fucked butthole,@@ a stream of drying tears running down each side of $his face,<<if $activeSlave.dick > 0>> a single drop of precum at the tip of $his totally flaccid dick,<</if>> and a new understanding of @@.gold;$his place in life.@@
-		<<if ($activeSlave.fetishKnown != 1) || ($activeSlave.fetish != "submissive")>>
-			Before the end of the week it's clear that $he's taken the anal rape to heart, and now sees $his body as something @@.lightcoral;for others to use and abuse.@@
-			<<set $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65, $activeSlave.fetish = "submissive">>
-		<</if>>
-		<<set $activeSlave.trust -= 5, $activeSlave.anus = 1>>
-		<<run seX($activeSlave, "anal", $PC, "penetrative")>>
-		<<if $PC.dick != 0 && $activeSlave.eggType == "human" && isFertile($activeSlave) && $activeSlave.preg == 0>>
-			<<= knockMeUp($activeSlave, 25, 1, -1)>>
-		<</if>>
-	<</replace>>
-<</link>>
-
 <<case "surgery addict">>
 
 <<link "$He asked for it; give $him the works">>