App.SlaveAssignment.pleaseYou = (function() {
	"use strict";

	let r;

	// eslint-disable-next-line no-unused-vars
	let he, him, his, hers, himself, girl, loli, He, His, daughter, wife;
	let playerPronouns;

	let fetishChange;
	let arcology;
	let trainingEfficiency;

	let oralUse;
	let analUse;
	let vaginalUse;
	let mammaryUse;
	let penetrativeUse;
	let cervixPump;
	let acts;
	let demand;

	return saPleaseYou;

	/**
	 * @param {App.Entity.SlaveState} slave
	 * @returns {string}
	 */
	function saPleaseYou(slave) {
		r = [];
		fetishChange = fetishChangeChance(slave);
		arcology = V.arcologies[0];

		oralUse = 0;
		analUse = 0;
		vaginalUse = 0;
		mammaryUse = 0;
		penetrativeUse = 0;
		cervixPump = 0;
		acts = 0;

		trainingEfficiency = 5 + Math.trunc(slave.devotion / 30) + ((slave.intelligence+slave.intelligenceImplant) / 32);

		({
			// eslint-disable-next-line no-unused-vars
			he, him, his, hers, himself, girl, He, His, loli, daughter, wife
		} = getPronouns(slave));
		playerPronouns = getPronouns(V.PC);

		jobPreface(slave);
		checkHoleAvailability(slave);
		switch (slave.toyHole) {
			case "pussy":
				useVagina(slave);
				break;
			case "ass":
				useAnus(slave);
				break;
			case "mouth":
				useMouth(slave);
				break;
			case "boobs":
				useBoobs(slave);
				break;
			case "dick":
				useDick(slave);
				break;
			default:
				useAllHoles(slave);
		}
		physicalEffects(slave);
		familyBonus(slave);
		addRep(slave);
		if (slave.fuckdoll === 0 && slave.fetish !== "mindbroken") {
			mentalEffects(slave);
		}

		return r.join(" ");
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function jobPreface(slave) {
		r.push(`serves you this week.`);
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function checkHoleAvailability(slave) {
		if (slave.toyHole === "pussy") {
			if (!canDoVaginal(slave)) {
				slave.toyHole = "all her holes";
			}
		} else if (slave.toyHole === "ass") {
			if (!canDoAnal(slave)) {
				slave.toyHole = "all her holes";
			}
		} else if (slave.toyHole === "dick") {
			if (!canPenetrate(slave)) {
				slave.toyHole = "all her holes";
			}
		}
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function useVagina(slave) {
		if (V.fuckSlaves <= V.PC.sexualEnergy / 2) {
			vaginalUse = jsRandom(21, 40);
		} else if (V.fuckSlaves <= V.PC.sexualEnergy) {
			vaginalUse = jsRandom(7, 14);
		} else {
			vaginalUse = jsRandom(3, 7);
		}
		if (slave.assignment === Job.FUCKTOY) {
			vaginalUse = Math.ceil(vaginalUse * restEffects(slave, 11));
		} else {
			vaginalUse = Math.ceil(vaginalUse * healthPenalty(slave));
		}
		if (slave.fuckdoll === 0) {
			r.push(`${He} spends the week`);
			if (slave.fetish === "mindbroken") {
				r.push(`unaware of your intent to use ${his} pussy.`);
			} else if (slave.trust < -20) {
				r.push(`in terrified compliance with your use of ${his} pussy.`);
			} else if (slave.devotion < -20) {
				r.push(`alternately struggling and lying corpselike as you use ${his} pussy.`);
			} else if (slave.devotion <= 20) {
				r.push(`reluctantly accepting your use of ${his} pussy.`);
			} else if (slave.fetishKnown === 1 && slave.fetish === "submissive") {
				r.push(`as your adoring submissive, seeing to your pleasure with ${his} womanhood.`);
			} else if (slave.devotion <= 50) {
				r.push(`obediently serving you in the classical way, taking you into ${his} womanhood.`);
			} else {
				r.push(`serving you in the classical way, warming your bed and lovingly taking you into ${his} womanhood.`);
			}
			r.push(`You have the sexual energy to fuck ${him}`);
			if (slave.fetish === "mindbroken") {
				if (vaginalUse >= 14) {
					r.push(`several times a day.`);
					slave.devotion -= 5;
					slave.trust -= 15;
				} else if (vaginalUse >= 7) {
					r.push(`at least once a day.`);
					slave.devotion -= 3;
					slave.trust -= 9;
				} else {
					r.push(`on occasion.`);
					slave.devotion -= 3;
					slave.trust -= 3;
				}
				r.push(`${He} doesn't react, even if ${his} body does.`);
			} else if (slave.trust >= -20 && slave.devotion <= 20) {
				if (vaginalUse >= 14) {
					r.push(`several times a day; the constant`);
					slave.devotion -= 5;
					slave.trust -= 15;
				} else if (vaginalUse >= 7) {
					r.push(`at least once a day; the regular`);
					slave.devotion -= 3;
					slave.trust -= 9;
				} else {
					r.push(`on occasion; the threat of`);
					slave.devotion -= 3;
					slave.trust -= 3;
				}
				r.push(`rape fills ${him} with <span class="mediumorchid">revulsion</span> and <span class="gold">fear.</span>`);
			} else if (slave.devotion <= 20) {
				if (vaginalUse >= 14) {
					r.push(`several times a day; submitting to your constant`);
					slave.devotion += 3;
				} else if (vaginalUse >= 7) {
					r.push(`at least once a day; submitting to your regular`);
					slave.devotion += 2;
				} else {
					r.push(`on occasion; submitting to your`);
					slave.devotion += 1;
				}
				r.push(`use <span class="hotpink">habituates ${him}</span> to being your sex slave.`);
			} else {
				if (vaginalUse >= 14) {
					r.push(`several times a day; constant,`);
					slave.devotion += 3;
					slave.trust += 3;
				} else if (vaginalUse >= 7) {
					r.push(`several times a day; regular,`);
					slave.devotion += 2;
					slave.trust += 2;
				} else {
					r.push(`on occasion;`);
					slave.devotion += 1;
					slave.trust += 1;
				}
				r.push(`enjoyable sex with you draws ${him} <span class="hotpink">closer to you</span> and encourages ${him} to <span class="mediumaquamarine">trust you.</span>`);
			}
			if (slave.fetish !== "mindbroken") {
				if (slave.sexualFlaw === "hates penetration" && slave.devotion > 50) {
					r.push(`The emotional closeness <span class="green">resolves ${his} hatred of penetration.</span>`);
					slave.sexualFlaw = "none";
				}
				if (slave.skill.vaginal < 100) {
					r.push(`After a lot of time spent having vanilla sex, ${his} <span class="green">vaginal skill improves.</span>`);
					r.push(`${SkillIncrease.Vaginal(slave, trainingEfficiency)}`);
				}
			}
			if (V.PC.dick !== 0) {
				if (slave.fetish !== "mindbroken") {
					if (slave.fetish === "submissive") {
						r.push(`${He} frequently climaxes with your`);
						if (V.PC.title === 1) {
							r.push(`strong`);
						} else {
							r.push(`soft`);
						}
						r.push(`hands holding ${him} and your cock spreading heat through ${his} core,`);
						if (slave.fetishKnown === 1) {
							r.push(`<span class="hotpink">fulfilling ${his} life's role completely.</span>`);
						} else {
							r.push(`${he} <span class="hotpink">seems to enjoy</span> being your fucktoy.`);
						}
						slave.devotion += 2;
					} else if (fetishChange > jsRandom(0, 100)) {
						slave.fetish = "submissive";
						slave.fetishKnown = 1;
						slave.fetishStrength = 10;
						r.push(`${He} frequently climaxes with your`);
						if (V.PC.title === 1) {
							r.push(`strong`);
						} else {
							r.push(`soft`);
						}
						r.push(`hands holding ${him} and your cock spreading heat through ${his} core, teaching ${him} that <span class="lightcoral">a ${girl}'s role is to please a ${playerPronouns.woman}.</span>`);
					}
				}
			}
		} else {
			r.push(`You keep ${him} with you all week, using ${him} as your personal sex toy`);
			if (vaginalUse >= 14) {
				r.push(`several times a day.`);
			} else if (vaginalUse >= 7) {
				r.push(`at least once a day.`);
			} else {
				r.push(`on occasion.`);
			}
			r.push(`When you're not using ${him}, ${he}`);
			if (!hasAnyLegs(slave)) {
				r.push(`rests`);
			} else {
				r.push(`stands`);
			}
			r.push(`nearby, waiting silently for your order to present ${his} pussy.`);
		}
		if (V.PC.dick !== 0) {
			if (canImpreg(slave, V.PC)) {
				r.push(`${knockMeUp(slave, vaginalUse, 0, -1, 1)}`);
			}
		}
		slave.counter.vaginal += vaginalUse;
		V.vaginalTotal += vaginalUse;
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function useAnus(slave) {
		if (V.fuckSlaves <= V.PC.sexualEnergy / 2) {
			analUse = jsRandom(21, 40);
		} else if (V.fuckSlaves <= V.PC.sexualEnergy) {
			analUse = jsRandom(7, 14);
		} else {
			analUse = jsRandom(3, 7);
		}
		if (slave.assignment === Job.FUCKTOY) {
			analUse = Math.ceil(analUse * restEffects(slave, 11));
		} else {
			analUse = Math.ceil(analUse * healthPenalty(slave));
		}
		if (slave.fuckdoll === 0) {
			r.push(`${He} spends the week`);
			if (slave.fetish === "mindbroken") {
				r.push(`unaware of your intent to use ${his} anus.`);
			} else if (slave.trust < -20) {
				r.push(`in terrified compliance with your use of ${his} anus.`);
			} else if (slave.devotion < -20) {
				r.push(`struggling and screaming as you sodomize ${him}.`);
			} else if (slave.devotion <= 20) {
				r.push(`writhing in pain as you sodomize ${him}.`);
			} else if (slave.devotion <= 50) {
				r.push(`obediently submitting to your use of ${his} butthole.`);
			} else if (slave.fetishKnown === 1 && slave.fetish === "buttslut") {
				r.push(`as your adoring anal slave, orgasming to the feel of`);
				if (V.PC.dick !== 0) {
					r.push(`you shooting your seed`);
				} else {
					r.push(`your favorite strap-on`);
				}
				r.push(`up ${his} ass.`);
			} else {
				r.push(`warming your bed and devotedly serving your sexual needs with ${his} anus.`);
			}
			r.push(`You have the sexual energy to fuck ${his} butt`);
			if (slave.fetish === "mindbroken") {
				if (analUse >= 14) {
					r.push(`several times a day.`);
					slave.devotion -= 5;
					slave.trust -= 15;
				} else if (analUse >= 7) {
					r.push(`at least once a day.`);
					slave.devotion -= 3;
					slave.trust -= 9;
				} else {
					r.push(`on occasion.`);
					slave.devotion -= 3;
					slave.trust -= 3;
				}
				r.push(`${He} doesn't react, even if ${his} body does.`);
			} else if (slave.trust >= -20 && slave.devotion <= 20) {
				if (analUse >= 14) {
					r.push(`several times a day; the constant`);
					slave.devotion -= 5;
					slave.trust -= 15;
				} else if (analUse >= 7) {
					r.push(`at least once a day; the regular`);
					slave.devotion -= 3;
					slave.trust -= 9;
				} else {
					r.push(`on occasion; the threat of`);
					slave.devotion -= 3;
					slave.trust -= 3;
				}
				r.push(`anal rape fills ${him} with <span class="mediumorchid">revulsion</span> and <span class="gold">fear.</span>`);
			} else if (slave.devotion <= 20) {
				if (analUse >= 14) {
					r.push(`several times a day; constantly`);
					slave.devotion += 3;
				} else if (analUse >= 7) {
					r.push(`at least once a day; regularly`);
					slave.devotion += 2;
				} else {
					r.push(`on occasion;`);
					slave.devotion += 1;
				}
				r.push(`allowing you to penetrate ${his} rear <span class="hotpink">habituates ${him}</span> to being your sex slave.`);
			} else {
				if (analUse >= 14) {
					r.push(`several times a day; constantly`);
					slave.devotion += 3;
					slave.trust += 3;
				} else if (analUse >= 7) {
					r.push(`at least once a day; regularly`);
					slave.devotion += 2;
					slave.trust += 2;
				} else {
					r.push(`on occasion;`);
					slave.devotion += 1;
					slave.trust += 1;
				}
				r.push(`climaxing to your penetration of ${his} rear brings ${him} <span class="hotpink">closer to you</span> and encourages ${him} to <span class="mediumaquamarine">trust you.</span>`);
			}
			if (slave.fetish !== "mindbroken") {
				if (slave.sexualFlaw === "hates anal" && slave.devotion > 50) {
					r.push(`${He}'s devoted enough to derive emotional closeness from buttsex, which <span class="green">resolves ${his} hatred of the act.</span>`);
					slave.sexualFlaw = "none";
				}
				if (slave.skill.anal < 100) {
					r.push(`After a lot of time spent getting buttfucked, ${his} <span class="green">anal skill improves.</span>`);
					r.push(`${SkillIncrease.Anal(slave, trainingEfficiency)}`);
				}
				if (slave.fetish === "buttslut") {
					if (slave.fetishKnown === 1) {
						r.push(`${He} <span class="hotpink">takes great pleasure</span> in ${his} rear being used as your personal`);
						if (V.PC.dick !== 0) {
							r.push(`cock holster.`);
						} else {
							r.push(`plaything.`);
						}
					} else {
						r.push(`${He} <span class="hotpink">seems to enjoy</span> anal sex more than the usual slave.`);
					}
					slave.devotion += 2;
				} else if (fetishChange > jsRandom(0, 100)) {
					slave.fetishKnown = 1;
					slave.fetishStrength = 10;
					slave.fetish = "buttslut";
					r.push(`After repeated anal orgasms, <span class="lightcoral">${he} begins to crave ${his} next buttfuck.</span>`);
				}
			}
		} else {
			r.push(`You keep ${him} with you all week, using ${him} as your personal sex toy`);
			if (analUse >= 14) {
				r.push(`several times a day.`);
			} else if (analUse >= 7) {
				r.push(`at least once a day.`);
			} else {
				r.push(`on occasion.`);
			}
			r.push(`When you're not using ${him}, ${he}`);
			if (!hasAnyLegs(slave)) {
				r.push(`rests`);
			} else {
				r.push(`stands`);
			}
			r.push(`nearby, waiting silently for your order to present ${his} asshole.`);
		}
		if (V.PC.dick !== 0) {
			if (canImpreg(slave, V.PC)) {
				r.push(`${knockMeUp(slave, analUse, 1, -1, 1)}`);
			}
		}
		slave.counter.anal += analUse;
		V.analTotal += analUse;
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function useMouth(slave) {
		if (V.fuckSlaves <= V.PC.sexualEnergy / 2) {
			oralUse = jsRandom(21, 40);
		} else if (V.fuckSlaves <= V.PC.sexualEnergy) {
			oralUse = jsRandom(7, 14);
		} else {
			oralUse = jsRandom(3, 7);
		}
		if (slave.assignment === Job.FUCKTOY) {
			oralUse = Math.ceil(oralUse * restEffects(slave, 11));
		} else {
			oralUse = Math.ceil(oralUse * healthPenalty(slave));
		}
		if (slave.fuckdoll === 0) {
			r.push(`${He} spends the week`);
			if (slave.fetish === "mindbroken") {
				r.push(`unaware of your intent to use ${his} mouth.`);
			} else if (slave.trust < -20) {
				r.push(`in terrified compliance with your use of ${his}`);
				if (V.PC.dick !== 0) {
					r.push(`throat.`);
				} else {
					r.push(`mouth.`);
				}
			} else if (slave.devotion < -20) {
				r.push(`struggling and gagging as you`);
				if (V.PC.dick !== 0) {
					r.push(`throatfuck ${him}.`);
				} else {
					r.push(`ride ${his} face.`);
				}
			} else if (slave.devotion <= 20) {
				r.push(`reluctantly`);
				if (V.PC.dick !== 0) {
					r.push(`servicing your cock with ${his} mouth.`);
				} else {
					r.push(`licking your pussy.`);
				}
			} else if (slave.devotion <= 50) {
				r.push(`obediently`);
				if (V.PC.dick !== 0) {
					r.push(`sucking your cock.`);
				} else {
					r.push(`eating you out.`);
				}
			} else if (slave.fetishKnown === 1 && slave.fetish === "cumslut") {
				r.push(`as your adoring oral slave, orgasming when you leave ${him} with a`);
				if (V.PC.dick !== 0) {
					r.push(`mouth full of`);
					if (V.PC.vagina !== -1) {
						r.push(`cum or a`);
					} else {
						r.push(`cum.`);
					}
				}
				if (V.PC.vagina !== -1) {
					r.push(`face covered in your pussyjuice.`);
				}
				if (V.PC.dick !== 0 && (V.fuckSlaves <= (V.PC.sexualEnergy / 2 + (V.PC.balls - 3)))) {
					r.push(`Your balls produce so much cum for ${him} that ${he} has replaced half ${his} diet with your cum, and you often leave ${him} dizzy with a face and chest covered in your sticky pearly semen.`);
				} else if (V.PC.dick !== 0 && (V.fuckSlaves <= (V.PC.sexualEnergy + (V.PC.balls - 3)))) {
					r.push(`Your balls produce enough cum that ${he} usually gets facials after a mouthful of semen, and ${he} loves you for it.`);
				} else {
					r.push(`${He} usually has to fight for ${his} share of cum, making sure to milk cum from your`);
					if (V.fuckSlaves > 1) {
						r.push(`urethra or suck it out of a pussy.`);
					} else {
						r.push(`urethra.`);
					}
				}
			} else {
				r.push(`warming your bed and lavishing devoted attention on your`);
				if (V.PC.dick !== 0) {
					r.push(`cock`);
					if (V.PC.vagina !== -1) {
						r.push(`and`);
					}
				}
				if (V.PC.vagina !== -1) {
					r.push(`pussy`);
				}
				r.push(`with ${his} loving mouth.`);
			}
			r.push(`You have the sexual energy to`);
			if (slave.fetish === "mindbroken") {
				if (V.PC.dick !== 0) {
					r.push(`use ${his} mouth`);
				} else {
					r.push(`make ${him} eat you out`);
				}
				if (oralUse >= 14) {
					r.push(`several times a day.`);
					slave.devotion -= 5;
					slave.trust -= 15;
				} else if (oralUse >= 7) {
					r.push(`at least once a day.`);
					slave.devotion -= 3;
					slave.trust -= 9;
				} else {
					r.push(`on occasion.`);
					slave.devotion -= 3;
					slave.trust -= 3;
				}
				r.push(`${He} absentmindedly follows your lead.`);
			} else if (slave.trust >= -20 && slave.devotion <= 20) {
				if (V.PC.dick !== 0) {
					r.push(`rape ${his} face`);
				} else {
					r.push(`force ${him} to eat you out`);
				}
				r.push(`${him}`);
				if (oralUse >= 14) {
					r.push(`several times a day; the constant`);
					slave.devotion -= 5;
					slave.trust -= 15;
				} else if (oralUse >= 7) {
					r.push(`at least once a day; the regular`);
					slave.devotion -= 3;
					slave.trust -= 9;
				} else {
					r.push(`on occasion; the threat of`);
					slave.devotion -= 3;
					slave.trust -= 3;
				}
				r.push(`sexual abuse fills ${him} with <span class="mediumorchid">revulsion</span> and <span class="gold">fear.</span>`);
			} else if (slave.devotion <= 20) {
				if (V.PC.dick !== 0) {
					r.push(`use ${his} mouth`);
				} else {
					r.push(`make ${him} eat you out`);
				}
				if (oralUse >= 14) {
					r.push(`several times a day; constantly`);
					slave.devotion += 3;
				} else if (oralUse >= 7) {
					r.push(`at least once a day; regularly`);
					slave.devotion += 2;
				} else {
					r.push(`on occasion;`);
					slave.devotion += 1;
				}
				r.push(`performing oral on you <span class="hotpink">habituates ${him}</span> to being your sex slave.`);
			} else {
				if (V.PC.dick !== 0) {
					r.push(`get a blowjob`);
					if (V.PC.vagina !== -1) {
						r.push(`and some pussy licking`);
					}
					r.push(`from ${him}`);
				} else {
					r.push(`${him} eat you out`);
				}
				if (oralUse >= 14) {
					r.push(`several times a day; constantly`);
					slave.devotion += 3;
					slave.trust += 3;
				} else if (oralUse >= 7) {
					r.push(`several times a day; regularly`);
					slave.devotion += 2;
					slave.trust += 2;
				} else {
					r.push(`on occasion;`);
					slave.devotion += 1;
					slave.trust += 1;
				}
				r.push(`giving you pleasure brings ${him} <span class="hotpink">closer to you</span> and encourages ${him} to <span class="mediumaquamarine">trust you.</span>`);
			}
			if (slave.fetish !== "mindbroken") {
				if (slave.sexualFlaw === "hates oral" && slave.devotion > 50) {
					r.push(`${He}'s devoted enough to derive emotional closeness from giving you oral, which <span class="green">resolves ${his} hatred of the act.</span>`);
					slave.sexualFlaw = "none";
				}
				if (slave.behavioralFlaw === "hates men" && V.PC.dick !== 0 && slave.devotion > 20) {
					r.push(`Spending so much time in close proximity to your dick <span class="green">reconciles ${him} to serving cocks.</span>`);
					slave.behavioralFlaw = "none";
				} else if (slave.behavioralFlaw === "hates women" && V.PC.vagina !== -1 && slave.devotion > 20) {
					r.push(`Spending so much time in close proximity to your womanhood <span class="green">reconciles ${him} to serving a pussy.</span>`);
					slave.behavioralFlaw = "none";
				}
				if (slave.skill.oral < 100) {
					r.push(`After a lot of time spent`);
					if (V.PC.dick !== 0) {
						r.push(`sucking you`);
						if (V.PC.vagina !== -1) {
							r.push(`off and eating you out,`);
						} else {
							r.push(`off,`);
						}
					} else {
						r.push(`eating you out,`);
					}
					r.push(`${his} <span class="green">oral skill improves.</span>`);
					r.push(`${SkillIncrease.Oral(slave, trainingEfficiency)}`);
				}
				if (slave.fetish === "cumslut") {
					if (slave.fetishKnown === 1) {
						r.push(`${He} <span class="hotpink">quivers with ecstasy</span> just from the`);
						if (canTaste(slave)) {
							r.push(`taste`);
						} else {
							r.push(`feeling`);
						}
						r.push(`of your`);
						if (V.PC.dick === 0) {
							r.push(`girl`);
						}
						r.push(`cum on ${his} tongue.`);
					} else {
						r.push(`${He} <span class="hotpink">seems to enjoy</span> ${his} role as a cum receptacle more than you'd expect.`);
					}
					slave.devotion += 2;
				} else if (fetishChange > jsRandom(0, 100)) {
					slave.fetishKnown = 1;
					slave.fetishStrength = 10;
					slave.fetish = "cumslut";
					r.push(`${He} frequently climaxes with`);
					if (V.PC.dick !== 0) {
						r.push(`your dick in ${his} mouth,`);
					} else {
						r.push(`${his} mouth on your cunt,`);
					}
					r.push(`learning that giving <span class="lightcoral">blowjobs is a lot of fun.</span>`);
				}
			}
			slave.counter.oral += oralUse;
			V.oralTotal += oralUse;
		} else {
			r.push(`You keep ${him} with you all week, using ${him} as your personal sex toy`);
			if (oralUse >= 14) {
				r.push(`several times a day.`);
			} else if (oralUse >= 7) {
				r.push(`at least once a day.`);
			} else {
				r.push(`on occasion.`);
			}
			r.push(`When you're not using ${him}, ${he}`);
			if (!hasAnyLegs(slave)) {
				r.push(`rests`);
			} else {
				r.push(`stands`);
			}
			r.push(`nearby, waiting silently for your order to open ${his} mouth.`);
			slave.counter.oral += oralUse;
			V.oralTotal += oralUse;
		}
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function useBoobs(slave) {
		if (V.fuckSlaves <= V.PC.sexualEnergy / 2) {
			mammaryUse = jsRandom(21, 40);
		} else if (V.fuckSlaves <= V.PC.sexualEnergy) {
			mammaryUse = jsRandom(7, 14);
		} else {
			mammaryUse = jsRandom(3, 7);
		}
		if (slave.assignment === Job.FUCKTOY) {
			mammaryUse = Math.ceil(mammaryUse * restEffects(slave, 11));
		} else {
			mammaryUse = Math.ceil(mammaryUse * healthPenalty(slave));
		}
		if (slave.fuckdoll === 0) {
			r.push(`${He} spends the week`);
			if (slave.fetish === "mindbroken") {
				r.push(`unaware of your intent to use ${his} breasts.`);
			} else if (slave.trust < -20) {
				r.push(`in terrified compliance with your use of ${his} breasts.`);
			} else if (slave.devotion < -20) {
				r.push(`trying to keep ${his} tits away from your grasping hands.`);
			} else if (slave.devotion <= 20) {
				r.push(`reluctantly presenting ${his} tits for your use.`);
			} else if (slave.devotion <= 50) {
				r.push(`obediently offering ${his} tits for your use.`);
			} else if (slave.fetishKnown === 1 && slave.fetish === "boobs") {
				r.push(`moaning and shivering as you give it to ${him} where ${he} likes it best: ${his} tits.`);
			} else {
				r.push(`keeping ${his} tits in constant contact with you, giving you titjobs,`);
				if (slave.nipples === "fuckable") {
					r.push(`savoring your enjoyment of ${his} nipplecunts,`);
				}
				r.push(`resting them against you as you work, and serving as a comfortable pillow at bedtime.`);
			}
			r.push(`You have the sexual energy to`);
			if (slave.fetish === "mindbroken") {
				if (V.PC.dick !== 0) {
					if (slave.nipples === "fuckable") {
						r.push(`fuck ${his} boobs`);
					} else {
						r.push(`cum on ${his} boobs`);
					}
				} else {
					r.push(`thoroughly grope ${his} boobs`);
				}
				if (mammaryUse >= 14) {
					r.push(`several times a day.`);
					slave.devotion -= 5;
					slave.trust -= 15;
				} else if (mammaryUse >= 7) {
					r.push(`at least once a day.`);
					slave.devotion -= 3;
					slave.trust -= 9;
				} else {
					r.push(`on occasion.`);
					slave.devotion -= 3;
					slave.trust -= 3;
				}
				r.push(`${He} absentmindedly follows your lead.`);
			} else if (slave.trust >= -20 && slave.devotion <= 20) {
				if (mammaryUse >= 14) {
					if (V.PC.dick !== 0) {
						if (slave.nipples === "fuckable") {
							r.push(`fuck ${his} boobs`);
						} else {
							r.push(`cum on ${his} boobs`);
						}
					} else {
						r.push(`thoroughly grope ${his} boobs`);
					}
					r.push(`several times a day; the constant`);
					slave.devotion -= 5;
					slave.trust -= 15;
				} else if (mammaryUse >= 7) {
					if (V.PC.dick !== 0) {
						if (slave.nipples === "fuckable") {
							r.push(`fuck ${his} boobs`);
						} else {
							r.push(`cum on ${his} boobs`);
						}
					} else {
						r.push(`thoroughly grope ${his} boobs`);
					}
					r.push(`at least once a day; the regular`);
					slave.devotion -= 3;
					slave.trust -= 9;
				} else {
					if (V.PC.dick !== 0) {
						if (slave.nipples === "fuckable") {
							r.push(`fuck ${his} boobs`);
						} else {
							r.push(`cum on ${his} boobs`);
						}
					} else {
						r.push(`thoroughly grope ${his} boobs`);
					}
					r.push(`on occasion; the threat of`);
					slave.devotion -= 3;
					slave.trust -= 3;
				}
				r.push(`sexual abuse fills ${him} with <span class="mediumorchid">revulsion</span> and <span class="gold">fear.</span>`);
			} else if (slave.devotion <= 20) {
				r.push(`play with ${his} tits`);
				if (mammaryUse >= 14) {
					r.push(`several times a day; constantly`);
					slave.devotion += 3;
				} else if (mammaryUse >= 7) {
					r.push(`at least once a day; regularly`);
					slave.devotion += 2;
				} else {
					r.push(`on occasion;`);
					slave.devotion += 1;
				}
				r.push(`submitting to your games <span class="hotpink">habituates ${him}</span> to being your sex slave.`);
			} else {
				if (V.PC.boobs >= 300) {
					r.push(`have mutual mammary intercourse until you both orgasm to nipple stimulation`);
				} else {
					r.push(`have mammary intercourse with ${him}`);
				}
				if (mammaryUse >= 14) {
					r.push(`several times a day; constantly`);
					slave.devotion += 3;
					slave.trust += 3;
				} else if (mammaryUse >= 7) {
					r.push(`at least once a day; regularly`);
					slave.devotion += 2;
					slave.trust += 2;
				} else {
					r.push(`on occasion;`);
					slave.devotion += 1;
					slave.trust += 1;
				}
				r.push(`giving you pleasure brings ${him} <span class="hotpink">closer to you</span> and encourages ${him} to <span class="mediumaquamarine">trust you.</span>`);
			}
			if (slave.fetish !== "mindbroken") {
				if (slave.sexualFlaw === "hates oral" && slave.devotion > 50) {
					r.push(`${He}'s devoted enough to derive emotional closeness from giving you oral, which <span class="green">resolves ${his} hatred of the act.</span>`);
					slave.sexualFlaw = "none";
				}
				if (slave.behavioralFlaw === "hates men" && slave.devotion > 20 && V.PC.title === 1) {
					r.push(`Spending so much time in close proximity to your masculinity <span class="green">reconciles ${him} to serving the male gender.</span>`);
					slave.behavioralFlaw = "none";
				} else if (slave.behavioralFlaw === "hates women" && V.PC.title === 0 && slave.devotion > 20) {
					r.push(`Spending so much time in close proximity to your femininity <span class="green">reconciles ${him} to serving the female gender.</span>`);
					slave.behavioralFlaw = "none";
				}
				if (slave.fetish === "boobs") {
					if (slave.fetishKnown === 1) {
						r.push(`${He} <span class="hotpink">quivers with ecstasy</span> just from the touch of your`);
						if (V.PC.title === 1) {
							r.push(`strong`);
						} else {
							r.push(`soft`);
						}
						r.push(`hands against ${his}`);
						if (slave.boobs >= 300) {
							r.push(`breasts.`);
						} else {
							r.push(`flat chest.`);
						}
					} else {
						r.push(`${He} <span class="hotpink">seems to enjoy</span> having ${his}`);
						if (slave.boobs >= 300) {
							r.push(`breasts`);
						} else {
							r.push(`chest`);
						}
						r.push(`fondled more than the average ${girl}.`);
					}
					slave.devotion += 2;
				} else if (fetishChange > jsRandom(0, 100)) {
					slave.fetishKnown = 1;
					slave.fetishStrength = 10;
					slave.fetish = "boobs";
					r.push(`${He} climaxes to nipple stimulation alone, and starts acting as though`);
					if (slave.clit > 0 && slave.nipples !== "fuckable") {
						r.push(`${he} has <span class="lightcoral">three pleasure buttons</span> rather than just one.`);
					} else if (slave.vagina > -1 && slave.nipples === "fuckable") {
						r.push(`${he} has <span class="lightcoral">a trio of pussies</span> rather than just one.`);
					} else {
						r.push(`${his} tits are ${his} <span class="lightcoral">primary erogenous zone.</span>`);
					}
				}
			}
		} else {
			r.push(`You keep ${him} with you all week, using ${him} as your personal sex toy`);
			if (mammaryUse >= 14) {
				r.push(`several times a day.`);
			} else if (mammaryUse >= 7) {
				r.push(`at least once a day.`);
			} else {
				r.push(`on occasion.`);
			}
			r.push(`When you're not using ${him}, ${he}`);
			if (!hasAnyLegs(slave)) {
				r.push(`rests`);
			} else {
				r.push(`stands`);
			}
			r.push(`nearby, waiting silently for your order to present ${his} chest.`);
		}
		if (slave.lactation > 0) {
			slave.lactationDuration = 2;
			if (slave.boobsMilk > 0) {
				slave.boobs -= slave.boobsMilk;
				slave.boobsMilk = 0;
			}
		} else {
			slave.induceLactation += 2;
			r.push(`${induceLactation(slave)}`);
		}
		slave.counter.mammary += mammaryUse;
		V.mammaryTotal += mammaryUse;
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function useDick(slave) {
		if (V.fuckSlaves <= V.PC.sexualEnergy / 2) {
			penetrativeUse = jsRandom(21, 40);
		} else if (V.fuckSlaves <= V.PC.sexualEnergy) {
			penetrativeUse = jsRandom(7, 14);
		} else {
			penetrativeUse = jsRandom(3, 7);
		}
		if (slave.assignment === Job.FUCKTOY) {
			penetrativeUse = Math.ceil(penetrativeUse * restEffects(slave, 11));
		} else {
			penetrativeUse = Math.ceil(penetrativeUse * healthPenalty(slave));
		}
		if (slave.fuckdoll > 0) {
			r.push(`All it takes is a simple command to force ${his} dick to attention. You have the sexual energy to ride ${him}`);
			if (penetrativeUse >= 14) {
				r.push(`several times a day.`);
			} else if (penetrativeUse >= 7) {
				r.push(`at least once a day.`);
			} else {
				r.push(`on occasion.`);
			}
			r.push(`You have to do all the work, unfortunately.`);
		} else if (slave.fetish === "mindbroken") {
			if (slave.career === "a breeding bull") {
				if (canGetPregnant(V.PC)) {
					r.push(`${He} spends the week eagerly trying to breed you. You have the sexual energy to take ${him}`);
					if (penetrativeUse >= 14) {
						r.push(`several times a day.`);
					} else if (penetrativeUse >= 7) {
						r.push(`at least once a day.`);
					} else {
						r.push(`on occasion.`);
					}
					r.push(`${He} happily mounts you and humps away, but ${he} has no sense of what's pleasurable to you and just excitedly thrusts until ${he} cums inside you.`);
				} else {
					r.push(`You spend the week getting humped by ${him} after you've managed to encourage ${him} to mount you. You have the sexual energy to use ${his} dick`);
					if (penetrativeUse >= 14) {
						r.push(`several times a day.`);
					} else if (penetrativeUse >= 7) {
						r.push(`at least once a day.`);
					} else {
						r.push(`on occasion.`);
					}
					r.push(`${His} conditioning tells ${him} to impregnate others, and since ${he} sees you as already pregnant, just cums inside you for ${his} own pleasure.`);
				}
			} else {
				r.push(`You spend the week using ${his} dick after you've stimulated ${him} enough to get ${him} hard. You have the sexual energy to ride ${him}`);
				if (penetrativeUse >= 14) {
					r.push(`several times a day.`);
				} else if (penetrativeUse >= 7) {
					r.push(`at least once a day.`);
				} else {
					r.push(`on occasion.`);
				}
				r.push(`${He} sometimes thrusts out of instinct, but most of the work in the endeavor falls to you.`);
			}
		} else if (V.PC.preg >= 24 && V.PC.pregMood === 1) {
			r.push(`${He} spends the week`);
			if (slave.trust < -20) {
				r.push(`cautiously fucking you in the missionary position. It takes a gentle touch to ${him} know it safe to get hard, but after that ${he} knows what to do.`);
			} else if (slave.devotion < -20) {
				r.push(`aggressively fucking your pussy with little regard for you or your child${V.PC.pregType > 1 ? 'ren' : ''}.`);
			} else if (slave.devotion <= 20) {
				r.push(`obediently fucking you in the missionary position while putting up with your attempts to breast feed ${him}.`);
			} else if (slave.fetishKnown === 1 && slave.fetish === "dom") {
				r.push(`as your adoring dom, giving you exactly what you need and treating you like a woman.`);
			} else if (slave.career === "a breeding bull" || (slave.fetishKnown === 1 && slave.fetish === "pregnancy")) {
				r.push(`eagerly driving ${his} cock into your pussy, and shooting cum as deep as ${him} can.`);
			} else if (slave.devotion <= 50) {
				r.push(`obediently driving ${his} shaft into your womanhood as you knead your aching breasts.`);
			} else {
				r.push(`eagerly driving ${his} shaft into your womanhood as you knead your aching breasts.`);
			}
			r.push(`You have the sexual energy to desire ${his} dick in you`);
			if (slave.trust >= -20 && slave.devotion <= 20) {
				if (penetrativeUse >= 14) {
					r.push(`several times a day;`);
					slave.devotion -= 15;
					slave.trust += 7;
				} else if (penetrativeUse >= 7) {
					r.push(`at least once a day;`);
					slave.devotion -= 10;
					slave.trust += 7;
				} else {
					r.push(`on occasion;`);
					slave.devotion -= 5;
					slave.trust += 7;
				}
				r.push(`getting to dominantly fuck ${his} '${WrittenMaster(slave)}' <span class="mediumorchid">builds ${his} self-confidence</span> and <span class="mediumaquamarine">lessens ${his} fear</span> of you.`);
			} else if (slave.devotion <= 20) {
				if (penetrativeUse >= 14) {
					r.push(`several times a day;`);
					slave.devotion -= 5;
					slave.trust += 5;
				} else if (penetrativeUse >= 7) {
					r.push(`at least once a day;`);
					slave.devotion -= 4;
					slave.trust += 4;
				} else {
					r.push(`on occasion;`);
					slave.devotion -= 3;
					slave.trust += 3;
				}
				r.push(`getting to dominantly fuck ${his} '${WrittenMaster(slave)}' <span class="mediumorchid">builds ${his} self-confidence,</span> yet <span class="mediumaquamarine">makes ${him} more trusting</span> of you.`);
			} else {
				if (penetrativeUse >= 14) {
					r.push(`several times a day; constant, enjoyable`);
					slave.devotion += 3;
					slave.trust += 3;
				} else if (penetrativeUse >= 7) {
					r.push(`at least once a day; regular, enjoyable`);
					slave.devotion += 2;
					slave.trust += 2;
				} else {
					r.push(`on occasion; enjoyable`);
					slave.devotion++;
					slave.trust++;
				}
				r.push(`sex with you draws ${him} <span class="hotpink">closer to you</span> and encourages ${him} to <span class="mediumaquamarine">trust you.</span>`);
			}
		} else if (V.PC.preg >= 24 && V.PC.pregMood === 2) {
			r.push(`${He} spends the week`);
			if (slave.trust < -20) {
				r.push(`in fear under your gravid bulk as you forcibly ride ${his} dick in a futile attempt to cool your raging hormones.`);
			} else if (slave.devotion < -20) {
				r.push(`alternately struggling or lying corpselike under your gravid bulk as you forcibly ride ${his} dick in a futile attempt to cool your raging hormones.`);
			} else if (slave.devotion <= 20) {
				r.push(`reluctantly trying to avoid having to take all of your pregnancy weight while not pissing you off whenever you ride ${his} dick in a futile attempt to cool your raging hormones.`);
			} else if (slave.fetishKnown === 1 && slave.fetish === "submissive") {
				r.push(`doing ${his} best to be a good belly support as ${he} submissively gives you what you want.`);
			} else if (slave.devotion <= 50) {
				r.push(`obediently bearing your weight as you aggressively ride ${his} dick in a futile attempt to cool your raging hormones.`);
			} else {
				r.push(`happily pampering and supporting your gravid bulk as you ride ${his} dick in a futile attempt to cool your raging hormones.`);
			}
			r.push(`You have the sexual energy to aggressively mount ${him}`);
			if (slave.trust >= -20 && slave.devotion <= 20) {
				if (penetrativeUse >= 14) {
					r.push(`several times a day; the constant,`);
					slave.devotion -= 10;
					slave.trust -= 25;
				} else if (penetrativeUse >= 7) {
					r.push(`at least once a day; the regular,`);
					slave.devotion -= 5;
					slave.trust -= 15;
				} else {
					r.push(`on occasion; the threat of`);
					slave.devotion -= 3;
					slave.trust -= 5;
				}
				r.push(`violent rape fills ${him} with <span class="mediumorchid">revulsion</span> and <span class="gold">fear.</span>`);
			} else if (slave.devotion <= 20) {
				if (penetrativeUse >= 14) {
					r.push(`several times a day; submitting to your constant,`);
					slave.devotion += 3;
					slave.trust -= 5;
				} else if (penetrativeUse >= 7) {
					r.push(`at least once a day; submitting to your regular,`);
					slave.devotion += 2;
					slave.trust -= 4;
				} else {
					r.push(`on occasion; submitting to your rather`);
					slave.devotion++;
					slave.trust -= 3;
				}
				r.push(`forceful use <span class="hotpink">habituates ${him}</span> to being a sex slave, though ${he} learns to <span class="gold">fear</span> your bottomless lust.`);
			} else {
				if (penetrativeUse >= 14) {
					r.push(`several times a day; constant,`);
					slave.devotion += 3;
				} else if (penetrativeUse >= 7) {
					r.push(`at least once a day; regular,`);
					slave.devotion += 2;
				} else {
					r.push(`on occasion;`);
					slave.devotion++;
				}
				r.push(`rough sex with you teaches ${him} that <span class="hotpink">${his} place is under your stomach.</span>`);
			}
		} else {
			r.push(`${He} spends the week`);
			if (slave.trust < -20) {
				r.push(`in terrified compliance with your use of ${his} dick.`);
			} else if (slave.devotion < -20) {
				r.push(`alternately struggling or lying corpselike as you ride ${his} dick.`);
			} else if (slave.devotion <= 20) {
				r.push(`reluctantly accepting your use of ${his} dick.`);
			} else if (slave.fetishKnown === 1 && slave.fetish === "submissive") {
				r.push(`as your adoring submissive, seeing to your pleasure with ${his} shaft.`);
			} else if (slave.devotion <= 50 && V.PC.vagina !== -1) {
				r.push(`obediently serving you in the classical way, driving into your womanhood.`);
			} else if (slave.devotion <= 50) {
				r.push(`week obediently serving you by driving into your backdoor.`);
			} else if (V.PC.vagina !== -1 && (slave.career === "a breeding bull" || (slave.fetishKnown === 1) && (slave.fetish === "pregnancy"))) {
				r.push(`eagerly driving ${his} cock into your pussy, thoroughly enjoying fucking pussy bareback and cumming deep inside.`);
			} else if (V.PC.vagina !== -1) {
				r.push(`serving you in the classical way, warming your bed and lovingly driving ${his} shaft into your womanhood.`);
			} else {
				r.push(`serving you in the classical way, warming your bed and lovingly driving ${his} shaft into your backdoor.`);
			}
			if (slave.trust >= -20 && slave.devotion <= 20) {
				r.push(`You have the sexual energy to ride ${him}`);
				if (penetrativeUse >= 14) {
					r.push(`several times a day; the constant`);
					slave.devotion -= 5;
					slave.trust -= 15;
				} else if (penetrativeUse >= 7) {
					r.push(`at least once a day; the regular`);
					slave.devotion -= 3;
					slave.trust -= 9;
				} else {
					r.push(`on occasion; the threat of`);
					slave.devotion -= 3;
					slave.trust -= 3;
				}
				r.push(`rape fills ${him} with <span class="mediumorchid">revulsion</span> and <span class="gold">fear.</span>`);
			} else if (slave.devotion <= 20) {
				r.push(`You have the sexual energy to ride ${him}`);
				if (penetrativeUse >= 14) {
					r.push(`several times a day; submitting to your constant`);
					slave.devotion += 3;
				} else if (penetrativeUse >= 7) {
					r.push(`at least once a day; submitting to your regular`);
					slave.devotion += 2;
				} else {
					r.push(`on occasion; submitting to your`);
					slave.devotion++;
				}
				r.push(`use <span class="hotpink">habituates ${him}</span> to being your sex slave.`);
			} else {
				r.push(`You have the sexual energy to get fucked by ${him}`);
				if (penetrativeUse >= 14) {
					r.push(`several times a day; constant,`);
					slave.devotion += 3;
					slave.trust += 3;
				} else if (penetrativeUse >= 7) {
					r.push(`at least once a day; regular,`);
					slave.devotion += 2;
					slave.trust += 2;
				} else {
					r.push(`on occasion;`);
					slave.devotion++;
					slave.trust++;
				}
				r.push(`enjoyable sex with you draws ${him} <span class="hotpink">closer to you</span> and encourages ${him} to <span class="mediumaquamarine">trust you.</span>`);
			}
		}
		if (slave.fetish !== "mindbroken") {
			if (slave.behavioralFlaw === "hates women" && V.PC.title === 0 && V.PC.vagina !== -1 && V.PC.dick === 0 && slave.devotion > 20) {
				r.push(`Spending so much intimate time with an attractive woman <span class="green">reconciles ${him} to serving the fairer sex.</span>`);
				slave.behavioralFlaw = "none";
			}
		}
		slave.counter.penetrative += penetrativeUse;
		V.penetrativeTotal += penetrativeUse;
		if (canImpreg(V.PC, slave)) {
			r.push(`${knockMeUp(V.PC, penetrativeUse, 0, slave.ID)}`);
		}
		if (V.policies.sexualOpeness === 0) {
			r.push(`Rumors spread that you <span class="red">enjoy taking it from slaves.</span>`);
			V.PC.degeneracy += 2;
		}
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function useAllHoles(slave) {
		if (slave.fuckdoll > 0) {
			r.push(`You keep ${him} with you all week, using ${him} as your personal sex toy. When you're not using ${him}, ${he}`);
			if (!hasAnyLegs(slave)) {
				r.push(`rests`);
			} else {
				r.push(`stands`);
			}
			r.push(`nearby, waiting silently.`);
			slave.trust += 4;
		} else if (slave.anus === 0 && slave.vagina === 0) {
			r.push(`Since you haven't yet decided to sell or take ${his} virginity or ${his} tight little anus, you let ${him} please you with ${his}`);
			if (slave.nipples === "fuckable" && V.PC.dick !== 0) {
				r.push(`mouth and tits.`);
			} else {
				r.push(`mouth.`);
			}
			r.push(`${He} is <span class="mediumaquamarine">duly grateful</span> you let ${him} keep ${his} innocence for another week, though ${his}`);
			if (slave.nipples === "fuckable" && V.PC.dick !== 0) {
				r.push(`throat and breasts get a little sore picking up the slack.`);
			} else {
				r.push(`throat gets a little sore doing the work of three holes.`);
			}
			slave.trust += 1;
		} else if (slave.vagina === 0) {
			r.push(`Since you haven't yet decided to sell or take ${his} virginity, you let ${him} confine ${his} efforts to ${his}`);
			if (canDoAnal(slave) && slave.nipples === "fuckable" && V.PC.dick !== 0) {
				r.push(`anus, nipples and mouth. ${He} is <span class="mediumaquamarine">duly grateful</span> you let ${him} keep ${his} innocence for another week, though ${his} butt, boobs and throat get a little sore.`);
			} else if (canDoAnal(slave)) {
				r.push(`anus and mouth. ${He} is <span class="mediumaquamarine">duly grateful</span> you let ${him} keep ${his} innocence for another week, though ${his} butt and throat get a little sore.`);
			} else if (slave.nipples === "fuckable" && V.PC.dick !== 0) {
				r.push(`nipples and mouth. ${He} is <span class="mediumaquamarine">duly grateful</span> you let ${him} keep ${his} innocence for another week, though ${his} boobs and throat get a little sore.`);
			} else {
				r.push(`mouth. ${He} is <span class="mediumaquamarine">duly grateful</span> you ${his} keep let ${him} innocence for another week, though ${his} throat gets a little sore.`);
			}
			slave.trust += 1;
		} else if (slave.anus === 0) {
			r.push(`Since you haven't yet decided to sell or take ${his} tight little anus, you let ${him} confine ${his} efforts to ${his}`);
			if (canDoVaginal(slave) && slave.nipples === "fuckable" && V.PC.dick !== 0) {
				r.push(`pussy, nipples and mouth. ${He} is <span class="mediumaquamarine">duly grateful</span> you let ${him} put off taking it up the butt another week, though ${his} boobs and throat get a little sore.`);
			} else if (canDoVaginal(slave)) {
				r.push(`pussy and mouth. ${He} is <span class="mediumaquamarine">duly grateful</span> you let ${him} put off taking it up the butt another week, though ${his} throat gets a little sore.`);
			} else if (slave.nipples === "fuckable" && V.PC.dick !== 0) {
				r.push(`nipples and mouth. ${He} is <span class="mediumaquamarine">duly grateful</span> you let ${him} put off taking it up the butt another week, though ${his} boobs and throat get a little sore.`);
			} else {
				r.push(`mouth. ${He} is <span class="mediumaquamarine">duly grateful</span> you let ${him} put off taking it up the butt another week, though ${his} throat gets a little sore.`);
			}
			slave.trust += 1;
		} else if (!canWalk(slave)) {
			r.push(`You carry ${him} around with you all week, using ${him} as your personal sex toy and bedwarmer.`);
			if (isAmputee(slave)) {
				r.push(`Without arms and legs,`);
			} else if (!hasAnyLegs(slave)) {
				r.push(`Without legs,`);
			} else if (!hasBothLegs(slave)) {
				r.push(`With just one leg,`);
			} else if (tooFatSlave(slave)) {
				r.push(`Immobilized by ${his} own weight,`);
			} else if (tooBigBreasts(slave)) {
				r.push(`Immobilized by ${his} own tits,`);
			} else if (tooBigBelly(slave)) {
				r.push(`Immobilized by ${his} own swollen orb of a midsection,`);
			} else if (tooBigBalls(slave)) {
				r.push(`Immobilized by ${his} own oversized testicles,`);
			} else if (tooBigDick(slave)) {
				r.push(`Immobilized by ${his} own oversized cock,`);
			} else if (tooBigButt(slave)) {
				r.push(`Immobilized by ${his} own massive ass,`);
			} else {
				r.push(`With ${his} clipped heels,`);
			}
			r.push(`${he} is your <span class="hotpink">helpless sexual appliance</span> and is <span class="mediumaquamarine">forced to trust you.</span>`);
			slave.trust += 4;
		} else if (slave.devotion > 50) {
			r.push(`${He} devotedly accompanies you all week, keeping ${his}`);
			if (canDoAnal(slave) && canDoVaginal(slave)) {
				r.push(`mouth,`);
				if (V.PC.dick !== 0 && slave.nipples === "fuckable") {
					r.push(`vagina, nipples`);
				} else {
					r.push(`vagina`);
				}
				r.push(`and asshole`);
			} else if (slave.vagina === -1 && canDoAnal(slave)) {
				if (V.PC.dick !== 0 && slave.nipples === "fuckable") {
					r.push(`mouth, nipples`);
				} else {
					r.push(`mouth`);
				}
				r.push(`and asshole`);
			} else if (slave.vagina > -1 && !canDoVaginal(slave) && canDoAnal(slave)) {
				if (V.PC.dick !== 0 && slave.nipples === "fuckable") {
					r.push(`mouth, nipples`);
				} else {
					r.push(`mouth`);
				}
				r.push(`and, since ${his} pussy is covered by ${his} chastity belt, asshole`);
			} else {
				r.push(`mouth `);
				if (V.PC.dick !== 0 && slave.nipples === "fuckable") {
					r.push(`and nipples`);
				}
			}
			r.push(`available for you at all times.`);
			if (canAchieveErection(slave) && !slave.chastityPenis) {
				r.push(`Every time ${his} beloved ${WrittenMaster(slave)} fucks ${him}, ${he} gets a hard-on.`);
			} else if (slave.dick !== 0 && slave.prostate > 0 && canDoVaginal(slave)) {
				r.push(`${He} doesn't get a hard-on as you use ${him}, but ${he} comes from the prostate stimulation when ${his} beloved ${WrittenMaster(slave)} uses ${his} pussy.`);
			} else if (slave.dick !== 0 && slave.prostate > 0 && canDoAnal(slave)) {
				r.push(`${He} doesn't get a hard-on as you use ${him}, but ${he} comes from the prostate stimulation when ${his} beloved ${WrittenMaster(slave)} uses ${his} butt.`);
			} else {
				r.push(`${He} comes indecently hard whenever ${his} beloved ${WrittenMaster(slave)} uses ${his} body.`);
			}
			r.push(`You have the sexual energy to fuck ${him}`);
			if (V.fuckSlaves <= V.PC.sexualEnergy / 2) {
				r.push(`several times a day; constant,`);
				slave.devotion += 3;
				slave.trust += 3;
			} else if (V.fuckSlaves <= V.PC.sexualEnergy) {
				r.push(`at least once a day; regular,`);
				slave.devotion += 2;
				slave.trust += 2;
			} else {
				r.push(`on occasion;`);
				slave.devotion += 1;
				slave.trust += 1;
			}
			r.push(`loving sex with you draws ${him} <span class="hotpink">closer to you</span> and encourages ${him} to <span class="mediumaquamarine">trust you.</span>`);
		} else if (slave.devotion > 20) {
			r.push(`Whenever you feel the need, you use whichever of ${his} available holes that appears most appealing at the moment, since ${he}'s up for anything.`);
			if (slave.dick !== 0 && canAchieveErection(slave) && !slave.chastityPenis) {
				r.push(`By the end of the week ${he} gets a hard-on when you use ${him}.`);
			}
			r.push(`You have the sexual energy to fuck ${him}`);
			if (V.fuckSlaves <= V.PC.sexualEnergy / 2) {
				r.push(`several times a day; constant,`);
				slave.devotion += 3;
				slave.trust += 3;
			} else if (V.fuckSlaves <= V.PC.sexualEnergy) {
				r.push(`at least once a day; regular,`);
				slave.devotion += 2;
				slave.trust += 2;
			} else {
				r.push(`on occasion;`);
				slave.devotion += 1;
				slave.trust += 1;
			}
			r.push(`enjoyable sex with you draws ${him} <span class="hotpink">closer to you</span> and encourages ${him} to <span class="mediumaquamarine">trust you.</span>`);
		} else if (slave.trust < -20) {
			r.push(`${He} is afraid of you and does ${his} best to offer you ${his}`);
			if (canDoAnal(slave) && canDoVaginal(slave)) {
				r.push(`mouth,`);
				if (V.PC.dick !== 0 && slave.nipples === "fuckable") {
					r.push(`vagina, nipples`);
				} else {
					r.push(`vagina`);
				}
				r.push(`and asshole`);
			} else if (slave.vagina === -1 && canDoAnal(slave)) {
				if (V.PC.dick !== 0 && slave.nipples === "fuckable") {
					r.push(`mouth, nipples`);
				} else {
					r.push(`mouth`);
				}
				r.push(`and asshole`);
			} else if (slave.vagina > -1 && !canDoVaginal(slave) && canDoAnal(slave)) {
				if (V.PC.dick !== 0 && slave.nipples === "fuckable") {
					r.push(`mouth, nipples`);
				} else {
					r.push(`mouth`);
				}
				r.push(`and, since ${his} pussy is covered by ${his} chastity belt, asshole`);
			} else {
				r.push(`mouth `);
				if (V.PC.dick !== 0 && slave.nipples === "fuckable") {
					r.push(`and nipples`);
				}
			}
			r.push(`to save ${himself} from worse treatment than mere rape.`);
			if (slave.dick !== 0 && canAchieveErection(slave) && !slave.chastityPenis) {
				r.push(`By the end of the week ${he} gets a hard-on when you use ${him}.`);
			}
			r.push(`You have the sexual energy to fuck ${him}`);
			if (V.fuckSlaves <= V.PC.sexualEnergy / 2) {
				r.push(`several times a day; submitting to your constant`);
				slave.devotion += 3;
			} else if (V.fuckSlaves <= V.PC.sexualEnergy) {
				r.push(`at least once a day; submitting to your regular`);
				slave.devotion += 2;
			} else {
				r.push(`on occasion; submitting to your`);
				slave.devotion += 1;
			}
			r.push(`use <span class="hotpink">habituates ${him}</span> to being your sex slave.`);
		} else {
			r.push(`Whenever you feel the need, you grab ${him} and use whichever of ${his} available holes that appears most appealing at the moment.`);
			if (slave.dick !== 0 && canAchieveErection(slave)) {
				r.push(`${His} dick stays limp as you rape ${him}.`);
			}
			r.push(`You have the sexual energy to fuck ${him}`);
			if (V.fuckSlaves <= V.PC.sexualEnergy / 2) {
				r.push(`several times a day; the constant`);
				slave.devotion -= 5;
				slave.trust -= 15;
			} else if (V.fuckSlaves <= V.PC.sexualEnergy) {
				r.push(`at least once a day; the regular`);
				slave.devotion -= 3;
				slave.trust -= 9;
			} else {
				r.push(`on occasion; the threat of`);
				slave.devotion -= 3;
				slave.trust -= 3;
			}
			r.push(`rape fills ${him} with <span class="mediumorchid">revulsion</span> and <span class="gold">fear.</span>`);
		}

		if (V.fuckSlaves <= V.PC.sexualEnergy / 2) {
			acts = jsRandom(21, 40);
		} else if (V.fuckSlaves <= V.PC.sexualEnergy) {
			acts = jsRandom(7, 14);
		} else {
			acts = jsRandom(3, 7);
		}
		if (slave.assignment === Job.FUCKTOY) {
			acts = Math.ceil(acts * restEffects(slave, 11));
		} else {
			acts = Math.ceil(acts * healthPenalty(slave));
		}
		oralUse = 1;
		if (canDoAnal(slave) && slave.anus > 0) {
			analUse = 1;
		}
		if (canDoVaginal(slave) && slave.vagina > 0) {
			vaginalUse = 1;
		}
		mammaryUse = jsRandom(0, 1);
		if (slave.nipples === "fuckable") {
			mammaryUse = 1;
		}
		demand = oralUse + analUse + vaginalUse + mammaryUse;
		oralUse = Math.trunc((oralUse / demand) * acts);
		analUse = Math.trunc((analUse / demand) * acts);
		vaginalUse = Math.trunc((vaginalUse / demand) * acts);
		mammaryUse = Math.trunc((mammaryUse / demand) * acts);
		slave.counter.oral += oralUse;
		V.oralTotal += oralUse;
		slave.counter.anal += analUse;
		V.analTotal += analUse;
		slave.counter.vaginal += vaginalUse;
		V.vaginalTotal += vaginalUse;
		slave.counter.mammary += mammaryUse;
		V.mammaryTotal += mammaryUse;

		if (slave.fuckdoll === 0) {
			if (slave.fetish !== "mindbroken") {
				if (slave.skill.oral < 100) {
					r.push(`After a lot of time spent with`);
					if (V.PC.dick !== 0) {
						r.push(`your dick in ${his} mouth,`);
					} else {
						r.push(`${his} mouth on your cunt,`);
					}
					r.push(`${his} <span class="green">oral skill improves.</span>`);
					r.push(`${SkillIncrease.Oral(slave, trainingEfficiency)}`);
				} else if (slave.skill.vaginal < 100 && slave.vagina > 0 && canDoVaginal(slave)) {
					r.push(`After a lot of time spent getting fucked, ${his} <span class="green">vaginal skill improves.</span>`);
					r.push(`${SkillIncrease.Vaginal(slave, trainingEfficiency)}`);
				} else if (slave.skill.anal < 100 && slave.anus !== 0 && canDoAnal(slave)) {
					r.push(`After a lot of time spent taking it up the ass, ${his} <span class="green">anal skill improves.</span>`);
					r.push(`${SkillIncrease.Anal(slave, trainingEfficiency)}`);
				}
			}
		}

		if (slave.lactation > 0 && mammaryUse > 0) {
			slave.lactationDuration = 2;
			if (slave.boobsMilk > 0) {
				slave.boobs -= slave.boobsMilk;
				slave.boobsMilk = 0;
			}
		}
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function physicalEffects(slave) {
		if (slave.health.illness > 0 || slave.health.tired > 60) {
			r.push(`${He} is<span class="red">`);
			if (slave.health.tired > 60) {
				if (slave.health.illness === 1) {
					r.push(`feeling under the weather`);
				} else if (slave.health.illness === 2) {
					r.push(`somewhat ill`);
				} else if (slave.health.illness === 3) {
					r.push(`sick`);
				} else if (slave.health.illness === 4) {
					r.push(`very sick`);
				} else if (slave.health.illness === 5) {
					r.push(`terribly ill`);
				}
				r.push(`and`);
			} else {
				if (slave.health.illness === 1) {
					r.push(`feeling under the weather,`);
				} else if (slave.health.illness === 2) {
					r.push(`somewhat ill,`);
				} else if (slave.health.illness === 3) {
					r.push(`sick,`);
				} else if (slave.health.illness === 4) {
					r.push(`very sick,`);
				} else if (slave.health.illness === 5) {
					r.push(`terribly ill,`);
				}
			}
			if (slave.health.tired > 90) {
				r.push(`exhausted,`);
			} else if (slave.health.tired > 60) {
				r.push(`fatigued,`);
			}
			if (slave.health.illness !== 0) {
				r.push(`</span> making ${him} rather unappealing to use.`);
			} else {
				r.push(`</span> making ${him} less enjoyable to fuck.`);
			}
		}
		if (slave.health.condition < 0 && jsRandom(1, 100) > 50) {
			r.push(`Under your personal supervision, <span class="green">${his} health improves.</span>`);
			improveCondition(slave, 10);
		}
		if (slave.assignment === Job.MASTERSUITE) {
			r.push(`${He} has plenty of time to rest during the day to recover from your physically demanding visits, even though ${he} sometimes has to work long nights.`);
			tired(slave);
		} else if (slave.assignment === Job.FUCKTOY) {
			if (slaveResting(slave)) {
				r.push(`${He} spends reduced hours serving you in order to <span class="green">offset ${his} lack of rest.</span>`);
			} else if (slave.health.tired + 11 >= 90 && !willWorkToDeath(slave)) {
				r.push(`${He} attempts to rebuke your advances due to ${his} exhaustion, but can do little to avoid them or the resulting <span class="trust dec">severe punishment.</span> It still feels like <span class="devotion dec">fucking a dead fish,</span> since it's obvious that ${he} has chosen ${his} overall well-being over angering you.`);
				slave.devotion -= 10;
				slave.trust -= 5;
			} else {
				r.push(`${He} spends a considerable portion of ${his} shift`);
				if (hasAnyLegs(slave)) {
					r.push(`off ${his} feet,`);
				} else {
					r.push(`lying down,`);
				}
				if (slave.devotion > 20) {
					r.push(`so despite ending ${his} days out of breath and soaked with sweat, ${he} doesn't find ${himself} that tired in the morning.`);
				} else {
					r.push(`but just doesn't understand that <span class="red">${he}'d be less tired</span> if ${he} simply gave you what you want.`);
				}
			}
			tired(slave);
		}

		if (V.PC.dick !== 0) {
			if (slave.cervixImplant === 1 || slave.cervixImplant === 3) {
				cervixPump += 10 * (V.PC.balls - 2) * vaginalUse;
			}
			if (slave.cervixImplant === 2 || slave.cervixImplant === 3) {
				cervixPump += 10 * (V.PC.balls - 2) * analUse;
			}
		}
		if (cervixPump > 0) {
			if (slave.fuckdoll === 0) {
				if (slave.fetish === "mindbroken") {
					r.push(`${He} is completely oblivious to ${his} <span class="lime">increasingly swollen belly</span> and stands no chance of linking it to`);
				} else {
					r.push(`${He} notices ${his} <span class="lime">belly has swollen</span> after`);
				}
				r.push(`all the`);
				if (slave.cervixImplant === 1) {
					r.push(`vaginal`);
				} else if (slave.cervixImplant === 2) {
					r.push(`anal`);
				}
				r.push(`sex ${he}'s had with you.`);
				slave.bellyImplant += cervixPump;
			} else {
				r.push(`With each deposit of your seed into ${him}, ${his} <span class="lime">stomach swells a little larger.</span>`);
				slave.bellyImplant += cervixPump;
			}
		}

		if (slave.need) {
			if (slave.energy > 95 && V.masterSuiteUpgradeLuxury === 2 && V.fuckSlaves > 1) {
				r.push(`${he}'s a nymphomaniac and very difficult to sate, but the fuckpit allows ${him} all the sex even ${he} could ever want.`);
				slave.need = 0;
			} else if (slave.devotion > 95) {
				r.push(`${He}'s so devoted to you that any intimacy with you at all gives ${him} sexual satisfaction.`);
				slave.need = 0;
			} else if (slave.fetishKnown) {
				switch (slave.fetish) {
					case "masochist":
					case "submissive":
						if (analUse + vaginalUse > 0) {
							r.push(`${He} got tremendous sexual satisfaction from the ${analUse + vaginalUse} times you really fucked ${him} this week.`);
							slave.need = 0;
						}
						break;
					case "dom":
						if (penetrativeUse > 0) {
							r.push(`${He} got tremendous sexual satisfaction from the ${penetrativeUse} times ${he} got to fuck you this week.`);
							slave.need = 0;
						}
						break;
					case "boobs":
						if (mammaryUse > 0) {
							r.push(`${He} got tremendous sexual satisfaction from the ${mammaryUse} times you groped ${his} breasts to orgasm this week.`);
							slave.need = 0;
						}
						break;
					case "sadist":
					case "cumslut":
						if (oralUse > 0) {
							r.push(`${He} got tremendous sexual satisfaction from the ${oralUse} times you fucked ${his} face this week.`);
							slave.need = 0;
						}
						break;
					case "buttslut":
						if (analUse > 0) {
							r.push(`${He} got tremendous sexual satisfaction from the ${analUse} times you fucked ${his} ass this week.`);
							slave.need = 0;
						}
						break;
					case "pregnancy":
						if (vaginalUse > 0 && slave.mpreg === 0) {
							r.push(`${He} got tremendous sexual satisfaction from the ${vaginalUse} times you fucked ${his} pussy this week.`);
							slave.need = 0;
						} else if (analUse > 0 && slave.mpreg === 1) {
							r.push(`${He} got tremendous sexual satisfaction from the ${analUse} times you fucked ${his} butt this week.`);
							slave.need = 0;
						}
						break;
					case "humiliation":
					// nothing here
						break;
				}
			}
		}
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function familyBonus(slave) {
		let spy;
		let children;

		if (slave.father === -1 && slave.mother !== -1) {
			r.push(`Keeping your own ${daughter} as a personal fucktoy leaves quite a public impression.`);
		} else if (slave.father > 0 && slave.mother !== slave.father) {
			spy = V.slaveIndices[slave.father];
			if ((spy !== undefined) && (V.slaves[spy].assignment === Job.FUCKTOY || V.slaves[spy].assignment === Job.MASTERSUITE || V.slaves[spy].assignment === Job.CONCUBINE)) {
				r.push(`Since you are also keeping ${his} father as a sexual servant, you often use them together, which leaves quite a public impression.`);
			}
		}

		if (slave.mother === -1) {
			r.push(`Keeping your own ${daughter} as a personal fucktoy leaves quite a public impression.`);
		} else if (slave.mother > 0) {
			spy = V.slaveIndices[slave.mother];
			if ((spy !== undefined) && (V.slaves[spy].assignment === Job.FUCKTOY || V.slaves[spy].assignment === Job.MASTERSUITE || V.slaves[spy].assignment === Job.CONCUBINE)) {
				r.push(`Since you are also keeping ${his} mother as a sexual servant, you often use them together, which leaves quite a public impression.`);
			}
		}

		children = V.slaves.filter(function(s) { return (s.father === slave.ID || s.mother === slave.ID) && (s.assignment === Job.FUCKTOY || s.assignment === Job.MASTERSUITE || s.assignment === Job.CONCUBINE); });
		if (children.length > 2) {
			r.push(`Since you are also keeping ${his} daughters,`);
			for (spy = 0; spy < children.length; spy++) {
				if (spy < children.length - 1) {
					r.push(`${children[spy].slaveName},`);
				} else {
					r.push(`and ${children[spy].slaveName},`);
				}
			}
			r.push(`as sexual servants, you often enjoy them all at once, which leaves quite a public impression.`);
		} else if (children.length > 1) {
			r.push(`Since you are also keeping ${his} daughters, ${children[0].slaveName} and ${children[1].slaveName}, as sexual servants, you often use them together, leaving quite a public impression.`);
		} else if (children.length > 0) {
			const childPronouns = getPronouns(children[0]);
			r.push(`Since you are also keeping ${his} ${childPronouns.daughter} as a sexual servant, you often use them together, which leaves quite a public impression.`);
		}

		children = V.slaves.filter(function(s) { return (areSisters(slave, s) > 0) && (s.assignment === Job.FUCKTOY || s.assignment === Job.MASTERSUITE || s.assignment === Job.CONCUBINE); });
		if (children.length > 2) {
			r.push(`Since you are also keeping ${his} sisters,`);
			for (spy = 0; spy < children.length; spy++) {
				if (spy < children.length - 1) {
					r.push(`${children[spy].slaveName},`);
				} else {
					r.push(`and ${children[spy].slaveName},`);
				}
			}
			r.push(`as sexual servants, you often enjoy them all at once, which leaves quite a public impression.`);
		} else if (children.length > 1) {
			r.push(`Since you are also keeping ${his} sisters, ${children[0].slaveName} and ${children[1].slaveName}, as sexual servants, you often use them together, leaving quite a public impression.`);
		} else if (children.length > 0) {
			const childPronouns = getPronouns(children[0]);
			r.push(`Since you are also keeping ${his} ${childPronouns.sister} as a sexual servant, you often use them together, which leaves quite a public impression.`);
		}
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function addRep(slave) {
		let multiplier = 0.1;
		if (slave.fuckdoll === 0) {
			if (slave.fetish !== "mindbroken") {
				if (slave.relationship === -2) {
					multiplier += 0.04;
				} else if (slave.relationship === -3 && slave.devotion > 50) {
					multiplier += 0.06;
				}
			}
			if (V.arcologies[0].FSSlaveProfessionalism > 50 && slave.intelligence + slave.intelligenceImplant >= 100 && slave.skill.entertainment >= 100 && slave.skill.whoring >= 100 && slave.skill.anal >= 100 && slave.skill.oral >= 100) {
				multiplier += 0.04;
				if (slave.vagina >= 0 && slave.skill.vaginal >= 100) {
					multiplier += 0.01;
				}
			}
			if (V.arcologies[0].FSRestart > 50 && slave.breedingMark === 1 && V.propOutcome === 1) {
				multiplier += 0.04;
			}
			if (V.arcologies[0].FSRepopulationFocus > 50 && slave.bellyPreg >= 5000) {
				multiplier += 0.02;
			}
			if (slave.prestige > 0) {
				multiplier += 0.03*slave.prestige;
			}
			if (slave.porn.prestige > 2) {
				multiplier += 0.1;
			} else if (slave.porn.prestige > 1) {
				multiplier += 0.03;
			}
		} else {
			if (slave.porn.fameType === "fuckdoll") {
				multiplier += 0.1 * slave.porn.prestige;
			} else {
				multiplier += 0.04;
			}
		}
		if (slave.ID === V.Concubine.ID) {
			multiplier += 0.05;
		} else if ((slave.ID === V.HeadGirl.ID) && (V.arcologies[0].FSEgyptianRevivalistLaw === 1)) {
			multiplier += 0.05;
		}

		repX(Math.trunc(( Beauty(slave) * FResult(slave) ) * multiplier / 4), "fucktoy", slave);

		r.push(`Keeping ${him} as nothing but your personal`);
		if (slave.toyHole === "pussy") {
			r.push(`pussy toy`);
		} else if (slave.toyHole === "ass") {
			r.push(`anal toy`);
		} else if (slave.toyHole === "mouth") {
			r.push(`oral toy`);
		} else if (slave.devotion <= 20) {
			r.push(`rapebait`);
		} else {
			r.push(`fucktoy`);
		}
		if (slave.prestige > 0 && slave.fuckdoll === 0) {
			r.push(`<span class="green">adds considerably to your reputation,</span> since ${he}'s prestigious.`);
		} else {
			r.push(`<span class="green">adds slightly to your reputation</span> as a prosperous citizen.`);
		}

		if (slave.fuckdoll === 0) {
			if (slave.porn.prestige > 2) {
				r.push(`Having your every urge attended to by a famous porn star <span class="green">is not lost on the citizenry.</span>`);
			} else if (slave.porn.prestige > 1) {
				r.push(`Having a rising porn star to sate your urges with <span class="green">demonstrates how well off you are.</span>`);
			}
			if (slave.fetish !== "mindbroken") {
				if (slave.relationship === -2) {
					r.push(`${His} satisfaction with ${his} place near you is obvious, <span class="green">bringing attention</span> to how completely you've broken ${him}.`);
				} else if (slave.relationship === -3 && slave.devotion > 50) {
					r.push(`${His} satisfaction with ${his} ${wife}ly duties is obvious, <span class="green">bringing attention</span> to the slave future you're building.`);
				}
			}
			if (V.arcologies[0].FSSlaveProfessionalism > 50 && slave.intelligence + slave.intelligenceImplant >= 100 && slave.skill.entertainment >= 100 && slave.skill.whoring >= 100 && slave.skill.anal >= 100 && slave.skill.oral >= 100) {
				r.push(`Keeping an ideal courtesan to attend to your needs <span class="green">is the definition of high class.</span>`);
			}
			if (V.arcologies[0].FSRestart > 50 && slave.breedingMark === 1 && V.propOutcome === 1) {
				r.push(`${His} breeding mark and ${his} place near you as a breeding toy is obvious, <span class="green">bringing attention</span> to how beautiful a pairing you make.`);
			}
			if (V.arcologies[0].FSRepopulationFocus > 50 && slave.bellyPreg >= 5000) {
				r.push(`${His} advanced pregnancy and role as your gravid breeder is obvious, <span class="green">bringing attention</span> to a woman's ideal role in ${arcology.name}.`);
			}
		} else {
			if (slave.porn.fameType === "fuckdoll") {
				if (slave.porn.prestige > 2) {
					r.push(`Keeping a legendary fuckdoll as your personal plaything <span class="green">is not lost on the citizenry.</span>`);
				} else if (slave.porn.prestige > 1) {
					r.push(`Keeping a well-known fuckdoll to sate your urges with <span class="green">demonstrates how well off you are.</span>`);
				}
			}
		}
	}

	/**
	 * @param {App.Entity.SlaveState} slave
	 *
	 */
	function mentalEffects(slave) {
		if (slave.behavioralQuirk === "confident") {
			r.push(`${slave.slaveName} <span class="mediumaquamarine">confidently enjoys</span> the prestige within the slave hierarchy that comes with being your fucktoy.`);
			slave.trust += 1;
		} else if (slave.behavioralQuirk === "insecure") {
			r.push(`${slave.slaveName} <span class="mediumaquamarine">constantly reassures ${himself}</span> that ${he} must be pretty, since you keep ${him} as a fucktoy.`);
			slave.trust += 1;
		}
		if (slave.behavioralQuirk === "adores men") {
			if (V.PC.dick !== 0) {
				r.push(`${slave.slaveName} <span class="hotpink">adores your company,</span> and is happy to spend time with you, even when you don't have your cock in ${him}.`);
				slave.devotion += 1;
			}
		} else if (slave.behavioralQuirk === "adores women") {
			if (V.PC.vagina !== -1) {
				r.push(`${slave.slaveName} <span class="hotpink">adores your company,</span> and is happy to spend time with you, even when you aren't fucking.`);
				slave.devotion += 1;
			}
		} else if (slave.sexualQuirk === "romantic") {
			r.push(`${slave.slaveName} knows being part of your harem is the best romance ${he} can realistically expect, and does ${his} best to <span class="mediumaquamarine">be content</span> with it.`);
			slave.trust += 1;
		}
		if (slave.fetish === "pregnancy" && (V.PC.preg >= 20 || (V.PC.preg >= 16 && V.PC.career === "escort"))) {
			r.push(`${slave.slaveName} <span class="hotpink">enjoys being so close to ${his} gravid ${WrittenMaster(slave)}.</span>`);
			slave.devotion += 1;
			if (slave.fetishKnown === 0) {
				r.push(`${He} enjoys being tasked with servicing a pregnant ${playerPronouns.woman} far more than a normal slave would; <span class="lightcoral">${he}'s harboring a pregnancy fetish!</span>`);
				slave.fetishKnown = 1;
			} else if (slave.fetishStrength < 95) {
				r.push(`Being tasked with servicing a lusty pregnant ${playerPronouns.woman} <span class="lightcoral">strengthens ${his} pregnancy fetish.</span>`);
				slave.fetishStrength += 4;
			}
		} else if (fetishChange > jsRandom(0, 100) && (V.PC.preg >= 20 || (V.PC.preg >= 16 && V.PC.career === "escort"))) {
			r.push(`At first ${he} found the prospect of being used by ${his} increasingly pregnant ${WrittenMaster(slave)} a turn off, but being so close to your gravid form serves to be more erotic than ${he} anticipated. Soon ${he} finds ${himself} aroused less from the prospect of sex and more <span class="lightcoral">the chance to be near your child laden belly.</span>`);
			slave.fetish = "pregnancy";
			slave.fetishKnown = 1;
			slave.fetishStrength = 10;
		}
	}
})();

src/endWeek/saPleaseYou.js