code:
/* eslint-disable no-unused-vars */
/* eslint-disable no-undef */
/* temporary container until the entire thing is complete. No point in not deploying the working functions, you know? */

window.primeSlave = function(activeSlave, seed) {

	/* will be moved up once this becomes a single, contained function. */
	const V = State.variables;
	const pronouns = getPronouns(activeSlave);
	const he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun;
	const He = capFirstChar(he), His = capFirstChar(his);
	let _target = "";
	let t = "";
	let race = (V.seeRace ? activeSlave.race : "");

	if (V.partner !== "relationship" || activeSlave.relationship === 1 || activeSlave.relationship === 2 || activeSlave.releaseRules === "restrictive") {
		t += `${activeSlave.slaveName} `;
		t += walkPasts(activeSlave, seed);
		/* WALKPASTS END */
	}
	/* TIME TOGETHER EXCEPTION ENDS */

	return t;
};

window.rivalSlave = function(activeSlave, seed) {
	const V = State.variables;
	const pronouns = getPronouns(activeSlave);
	const he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun;
	const He = capFirstChar(he), His = capFirstChar(his);
	let _partnerSlave = getSlave(activeSlave.rivalryTarget);
	let t = "";
	let _target = "";

	if (_partnerSlave !== undefined) { /* potential problem point */
		// let race2 = (V.seeRace ? _partnerSlave.race : "");

		t += " Meanwhile, ";
		if (activeSlave.rivalry >= 3) {
			t += `${_partnerSlave.slaveName}, whom ${he} hates, `;
		} else if (activeSlave.rivalry >= 2) {
			t += `${his} rival ${_partnerSlave.slaveName} `;
		} else {
			t += `${_partnerSlave.slaveName}, whom ${he} dislikes, `;
		}
		t += walkPasts(_partnerSlave, 100-seed);

		_partnerSlave = null;
		V.target = "FRival"; /*potentially removed later*/
	}

	return t;
};

window.loverSlave = function(activeSlave) {

		/* will be moved up once this becomes a single, contained function. */
		var _target = "";
		var t = "";
		var V = State.variables;
		var race;
		if (V.seeRace === 1) { race = activeSlave.race; } else { race = ""; }
		var name = activeSlave.slaveName;
		const pronouns = getPronouns(activeSlave);
		const he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun;
		const He = capFirstChar(he), His = capFirstChar(his);

		var _partnerSlave = getSlave(activeSlave.relationshipTarget);
		var _fuckSeed = jsRandom(1,100);
		var _seed = jsRandom(1,100);
		var _fuckSpot;

		if (_partnerSlave !== undefined) {

			var pronouns2 = getPronouns(_partnerSlave);
			var he2 = pronouns2.pronoun, him2 = pronouns2.object, his2 = pronouns2.possessive, hers2 = pronouns2.possessivePronoun, himself2 = pronouns2.objectReflexive, boy2 = pronouns2.noun;
			var He2 = capFirstChar(he2), His2 = capFirstChar(his2);
			var race2;
			if (V.seeRace === 1) { race2 = _partnerSlave.race; } else { race2 = ""; }
			var partnerName = _partnerSlave.slaveName;
			var activeSlaveRel;
			if (activeSlave.relationship <= 3) {
				activeSlaveRel = "friend with benefits";
			} else if (activeSlave.relationship <= 4) {
				activeSlaveRel = "lover";
			} else {
				activeSlaveRel = "slave wife";
			}

			t += `${name} and ${partnerName} are `;
			if (!isSlaveAvailable(_partnerSlave)) {
				if (_partnerSlave.assignment === "work in the dairy" && V.DairyRestraintsSetting >= 2) {
					t += `trying their best to maintain their relationship with ${partnerName} being part of ${V.dairyName}.`;
				} else if (_partnerSlave.assignment === "be your agent") {
					t += `catching up with each other over a video call. Running an arcology in your stead comes with its perks.`;
				} else if (_partnerSlave.assignment === "be confined in the arcade") {
					t += `trying their best to maintain their relationship with ${partnerName} being nothing more than a hole in ${V.arcadeName}.`;
				}
			} else if (_seed >= 66) { /* SEXY TIMES */

				if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
					_fuckSpot = `in ${partnerName}'s suite`;
				} else if (activeSlave.livingRules === "luxurious") {
					_fuckSpot = `in the nice little room they share`;
				} else {
					_fuckSpot = `out in the open in the slave dormitory`;
				}

				if ((activeSlave.fetish === "dom" || activeSlave.fetish === "sadist") && canPenetrate(activeSlave) && (_partnerSlave.fetish === "dom" || _partnerSlave.fetish === "sadist") && canPenetrate(_partnerSlave)) {
					t += `double penetrating another slave. They're face to face over their sub's shoulders, `;
					if (canSee(activeSlave) && canSee(_partnerSlave)) {
						t += `looking into each other's eyes `;
					} else {
						t += `locking lips `;
					}
					t += `with every appearance of enjoyment and love, since for them rubbing dicks inside another slave's pussy is what constitutes healthy sexual activity. ${partnerName} is on the bottom, and holds their victim atop ${him2} with ${partnerName}'s cock already hilted in her cunt so ${name} can force ${himself} inside as well. They enjoy the overstimulated girl's struggles.`;
				} else if (activeSlave.energy > 95) {
					t += `having loud sex ${_fuckSpot}. ${name} is such a sexual addict that ${he} wants it all the time, and ${partnerName} does ${his2} best to help ${his} ${activeSlaveRel} get off. `;
					if (canPenetrate(activeSlave) && _fuckSeed > 50) {
						if (canDoVaginal(_partnerSlave)) {
							if (_partnerSlave.vagina === 0 && _partnerSlave.amp !== 1) {
								t += `${name} has ${his} cock between ${partnerName}'s legs and is enjoying an enthusiastic thigh job.`;
							} else if (_partnerSlave.vagina === 0) {
								t += `${name} has ${his} cock between ${partnerName}'s labia and is enthusiastically teasing ${his} virgin lover.`;
							} else if (_fuckSeed > 90 && _partnerSlave.amp !== 1) {
								t += `${name} has ${partnerName} on ${his2} knees and is enthusiastically fucking ${his2} pussy doggy style.`;
							} else if (_fuckSeed > 80 && activeSlave.amp !== 1) {
								t += `${name} has ${partnerName} pushed against the wall is is fucking ${his2} pussy from behind.`;
							} else if (_fuckSeed > 70) {
								t += `${partnerName} has ${name} on ${his2} back and is enthusiastically bouncing on ${his2} dick.`;
							} else if (_fuckSeed > 60) {
								t += `${name} has ${partnerName} on ${his2} back and is enthusiastically fucking ${his2} pussy in the missionary position.`;
							} else {
								t += `${name} is enthusiastically fucking ${partnerName}'s pussy.`;
							}
						} else if (canDoAnal(_partnerSlave)) {
							if (_partnerSlave.anus === 0) {
								t += `${name} has ${his} cock sandwiched between ${partnerName}'s buttcheeks and is enthusiastically hotdogging ${his2} rear.`;
							} else if (_fuckSeed > 90 && _partnerSlave.amp !== 1) {
								t += `${name} has ${partnerName} on ${his2} knees and is enthusiastically fucking ${his2} ass doggy style.`;
							} else if (_fuckSeed > 80 && activeSlave.amp !== 1) {
								t += `${name} has ${partnerName} pushed against the wall is is fucking ${his2} ass from behind.`;
							} else if (_fuckSeed > 70) {
								t += `${partnerName} has ${name} on ${his} back and is enthusiastically bouncing on ${his} dick.`;
							} else if (_fuckSeed > 60) {
								t += `${name} has ${partnerName} on ${his2} stomach and is enthusiastically fucking ${his2} ass.`;
							} else {
								t += `${name} is enthusiastically fucking ${partnerName}'s ass.`;
							}
						} else if (_partnerSlave.boobs > 800) {
							t += `${name} has ${partnerName} on ${his2} back and is enthusiastically fucking ${his2} tits.`;
						} else {
							t += `${name} has ${partnerName}'s face to ${his} crotch and is enthusiastically pounding ${his2} throat.`;
						}
					} else if (activeSlave.dick > 0 && _fuckSeed > 50) {
						t += `${partnerName} has ${his2} lips wrapped around ${name}'s dick and is enthusiastically giving ${him} a blowjob.`;
					} else if (canDoVaginal(activeSlave) && _fuckSeed > 30) {
						if (canPenetrate(_partnerSlave) && activeSlave.vagina > 0) {
							t += `${partnerName} is enthusiastically fucking ${name}'s pussy.`;
						} else if (canDoVaginal(_partnerSlave)) {
							t += `They're scissoring enthusiastically and playing with each other's breasts.`;
						} else {
							t += `${partnerName} is enthusiastically eating out ${name}'s pussy.`;
						}
					} else if (canDoAnal(activeSlave) && activeSlave.anus > 0 && _fuckSeed > 10) {
						if (canPenetrate(_partnerSlave)) {
							t += `${partnerName} is enthusiastically fucking ${name}'s ass.`;
						} else if (_partnerSlave.amp !== 1) {
							t += `${partnerName} is enthusiastically fisting ${name}'s ass.`;
						} else {
							t += `${partnerName} is enthusiastically pounding ${name}'s ass with a dildo.`;
						}
					} else {
						t += `${partnerName} is enthusiastically using ${his2} tongue to bring ${name} to orgasm.`;
					}
				} else if (activeSlave.fetishStrength > 60 && activeSlave.fetishKnown === 1 && activeSlave.fetish !== "none") {
					switch (activeSlave.fetish) {
					case "boobs":
						if (_fuckSeed > 60 && (activeSlave.lactation > 0 || _partnerSlave.lactation > 0)) {
							t += `snuggling rather sexually ${_fuckSpot}. `;
							if (_fuckSeed > 80 && _partnerSlave.lactation > 0) {
								t += `${name} loves how milky ${partnerName}'s tits are and has ${his} lips wrapped around a nipple. `;
								if (_partnerSlave.amp !== 1) {
									t += `${partnerName} is left to moan lustfully and tweak ${his2} free nipple until ${his2} ${activeSlaveRel} has drank ${his} fill.`;
								} else {
									t += `${partnerName} is left to moan lustfully and squirm with desire until ${his2} ${activeSlaveRel} has drank ${his} fill and moves to ${his2} other nipple.`;
								}
							} else {
								t += `${name} loves having ${his} breasts suckled and has ${partnerName}'s lips wrapped around a nipple. `;
								if (activeSlave.amp !== 1) {
									t += `${partnerName} is held close until ${his2} ${activeSlaveRel} has been completely emptied.`;
								} else {
									t += `${partnerName} knows that ${his2} ${activeSlaveRel} can't milk ${himself} and appreciates the act.`;
								}
							}
						} else if (_fuckSeed > 30 && ((canPenetrate(activeSlave) && _partnerSlave.nipples === "fuckable") || (canPenetrate(_partnerSlave) && activeSlave.nipples === "fuckable"))) {
							t += `having loud sex ${_fuckSpot}. ${name} loves `;
							if (_fuckSeed > 45 && (canPenetrate(activeSlave) && _partnerSlave.nipples === "fuckable")) {
								t += `taking advantage of ${partnerName}'s fuckable tits. The motion running through ${partnerName}'s breasts as ${he} humps is hypnotic.`;
							} else {
								t += `how well ${partnerName}'s cock feels in ${his} fuckable tits. The motion running through ${name}'s breasts as ${his} ${activeSlaveRel} fucks ${him} is hypnotic.`;
							}
						} else {
							t += `snuggling rather sexually ${_fuckSpot}. ${name} loves having `;
							if (activeSlave.boobs >= _partnerSlave.boobs) {
								t += `${his} breasts touched and massaged, so ${partnerName} looks after ${his2} ${activeSlaveRel}'s tits. `;
								if (_partnerSlave.amp === 1) {
									t += `Since ${partnerName} is an amputee, ${name} has ${him2} propped on ${his} belly so ${he} can easily suckle and nuzzle.`;
								} else {
									t += `They're spooning in bed with ${partnerName} forming the large spoon so ${he2} can reach around and play with ${name}'s boobs.`;
								}
							} else {
								t += `a nice pair of breasts to enjoy, so ${he} focuses ${his} attention on ${partnerName}'s larger bosom. `;
								if (activeSlave.amp === 1) {
									t += `Since ${name} is an amputee, ${partnerName} has ${him} propped on ${his2} belly so ${he} can make ${himself} comfortable in ${his2} bust.`;
								} else if (_partnerSlave.amp !== 1) {
									t += `They're spooning in bed with ${partnerName} forming the large spoon so ${he2} can reach around and play with ${name}'s boobs.`;
								} else {
									t += `Since they are both limbless, they've helped each other into a position where each can easily suckle and nuzzle the other's boobs.`;
								}
							}
						}
						break;
					case "buttslut":
						t += `having loud buttsex ${_fuckSpot}. ${name} is such an anal addict that ${he} wants it all the time, and ${partnerName} does ${his2} best to keep ${his2} ${activeSlaveRel} satisfied. `;
						if (activeSlave.anus > 0 && canDoAnal(activeSlave)) {
							t += `${name} is `;
							if (activeSlave.amp !== 1) {
								t += `down on ${his} knees in front of ${partnerName}, taking `;
							} else {
								t += `ass up in front of ${partnerName}, taking `;
							}
							if (canPenetrate(_partnerSlave)) {
								t += `${his2} cock up the butt. `;
								if (activeSlave.anus > 1) {
									if (_partnerSlave.dick > 4) {
										t += `${name} is clearly enjoying getting buttfucked by a cock big enough to make ${him} feel tight again.`;
									} else if (_partnerSlave.dick > 2) {
										t += `${name}'s loose ass takes ${partnerName}'s cock easily.`;
									} else {
										t += `${name} can barely tell ${partnerName}'s little dick is even there, but it's the thought that counts.`;
									}
								} else {
									if (_partnerSlave.dick > 4) {
										t += `${name} is panting and writhing with the pain of taking ${his} ${activeSlaveRel}'s massive dick. ${partnerName} is doing ${his2} best to be gentle.`;
									} else if (_partnerSlave.dick > 2) {
										t += `${name} is writhing with the mixed pain and pleasure of having ${his} tight ass stretched by ${his} ${activeSlaveRel}'s nice cock.`;
									} else {
										t += `${name}'s tight anus and ${partnerName}'s little dick work well together; ${name} can take it easily, and ${partnerName} gets to fuck a hole that's tight, even for ${him2}.`;
									}
								}
							} else if (_partnerSlave.dick > 1) {
								if (_partnerSlave.amp === 1) {
									t += `a rimjob, since ${his} ${activeSlaveRel} is armless and `;
								} else {
									t += `a finger fuck, since ${his} ${activeSlaveRel} is `;
								}
								if (_partnerSlave.dick > 6) {
									t += `too big to fit.`;
								} else {
									t += `impotent.`;
								}
								if (_partnerSlave.amp !== 1) {
									if (activeSlave.anus > 2) {
										t += ` Or rather, a fist fuck, since that's what it takes to satisfy ${his2} ${activeSlaveRel}'s gaping hole.`;
									} else if (activeSlave.anus > 1) {
										t += ` ${partnerName} is using three fingers to stretch ${his2} ${activeSlaveRel}'s asshole.`;
									} else {
										t += ` ${partnerName} is using two fingers to gently fuck ${his2} ${activeSlaveRel}'s tight anus.`;
									}
								}
							} else if (_partnerSlave.clit > 3) {
								t += `${his2} clit up the butt. `;
								if (activeSlave.anus > 1) {
									t += `${name} can barely tell ${partnerName}'s unorthodox phallus is in there, but it's the thought that counts.`;
								} else {
									t += `${name}'s tight anus and ${partnerName}'s clitdick work well together; ${name} can take it easily, and ${partnerName} gets to fuck a hole that hugs ${his2} sensitive rod tight.`;
								}
							} else {
								t += `a strap-on up the butt, doggy style. ${partnerName} is using a `;
								if (activeSlave.anus > 2) {
									t += `massive fake phallus to satisfy ${his} ${activeSlaveRel}'s gaping hole.`;
								} else if (activeSlave.anus > 1) {
									t += `decent-sized fake phallus to stretch ${his} ${activeSlaveRel}'s asshole.`;
								} else {
									t += `small fake phallus to gently fuck ${his} ${activeSlaveRel}'s tight anus.`;
								}
							}
						} else if (canDoAnal(activeSlave)) {
							t += `Since ${name} is an anal virgin, ${partnerName} is rimming ${his2} ${activeSlaveRel}, who is clearly enjoying ${himself}.`;
						} else {
							t += `Since ${name}'s butthole is off-limits, ${partnerName} is simply toying with the overstimulated ${boy}'s rear.`;
						}
						break;
					case "cumslut":
						t += `sharing oral pleasure ${_fuckSpot}. ${name} is such an oral addict that ${he} wants it all the time, and ${partnerName} certainly doesn't mind all the loving oral attention. `;
						if (((activeSlave.chastityPenis !== 1 && activeSlave.dick > 0) || canDoVaginal(activeSlave)) && ((_partnerSlave.chastityPenis !== 1 && _partnerSlave.dick > 0) || canDoVaginal(_partnerSlave))) {
							t += `They're lying down to 69 comfortably, `;
							if (_partnerSlave.chastityPenis !== 1 && _partnerSlave.dick > 0) {
								if (canPenetrate(_partnerSlave)) {
									t += `with ${name} hungrily sucking ${his} ${activeSlaveRel}'s turgid cock.`;
								} else if (_partnerSlave.dick > 7 && activeSlave.amp !== 1) {
									t += `with ${name} hungrily sucking ${his} ${activeSlaveRel}'s fat cock. ${He} is milking the oversized beast as best ${he} can in an effort to draw out a nice, big load of ${his2} cum.`;
								} else if (_partnerSlave.anus > 0 && canDoAnal(_partnerSlave) && _partnerSlave.prostate > 0 && activeSlave.amp !== 1) {
									t += `with ${name} hungrily sucking ${his} ${activeSlaveRel}'s limp cock. ${He} has a finger up poor impotent ${partnerName}'s butt to stimulate ${his2} prostate so ${he2} can cum for ${him}.`;
								} else if (_partnerSlave.scrotum > 0 && activeSlave.amp !== 1) {
									t += `with ${name} hungrily sucking ${his} ${activeSlaveRel}'s limp cock. ${He} is massaging ${his2} balls so ${he2} can cum for ${him}.`;
								} else if (activeSlave.amp !== 1) {
									t += `with ${name} hungrily sucking ${his} ${activeSlaveRel}'s limp cock. ${He} has a finger massaging poor impotent ${partnerName}'s perineum in the hope of stimulating ${him2} so ${he2} can cum for ${him}.`;
								} else {
									t += `with ${name} hungrily sucking ${his} ${activeSlaveRel}'s limp cock in the hopes ${he} can coax something out.`;
								}
							} else if (_partnerSlave.balls > 0) {
								t += `with ${name} hungrily sucking the little hole on ${his} ${activeSlaveRel}'s crotch that ${he2} squirts cum from.`;
							} else {
								t += `and ${name} is sating ${his} oral fixation for the moment by eagerly polishing ${his} ${activeSlaveRel}'s pearl.`;
							}
						} else if ((_partnerSlave.chastityPenis !== 1 && _partnerSlave.dick > 0) || canDoVaginal(_partnerSlave)) {
							t += `${name} has ${his} face to ${partnerName}'s crotch and is `;
							if (_partnerSlave.chastityPenis !== 1 && _partnerSlave.dick > 0) {
								if (canPenetrate(_partnerSlave)) {
									t += `hungrily sucking ${his} ${activeSlaveRel}'s turgid cock.`;
								} else if (_partnerSlave.dick > 7 && activeSlave.amp !== 1) {
									t += `hungrily sucking ${his} ${activeSlaveRel}'s fat cock. ${He} is milking the oversized beast as best ${he} can in an effort to draw out a nice, big load of ${his2} cum.`;
								} else if (_partnerSlave.anus > 0 && canDoAnal(_partnerSlave) && _partnerSlave.prostate > 0 && activeSlave.amp !== 1) {
									t += `hungrily sucking ${his} ${activeSlaveRel}'s limp cock. ${He} has a finger up poor impotent ${partnerName}'s butt to stimulate ${his2} prostate so ${he2} can cum for ${him}.`;
								} else if (_partnerSlave.scrotum > 0 && activeSlave.amp !== 1) {
									t += `hungrily sucking ${his} ${activeSlaveRel}'s limp cock. ${He} is massaging ${his2} balls so ${he2} can cum for ${him}.`;
								} else if (activeSlave.amp !== 1) {
									t += `hungrily sucking ${his} ${activeSlaveRel}'s limp cock. ${He} has a finger massaging poor impotent ${partnerName}'s perineum in the hope of stimulating ${him2} so ${he2} can cum for ${him}.`;
								} else {
									t += `hungrily sucking ${his} ${activeSlaveRel}'s limp cock in the hopes ${he} can coax something out.`;
								}
							} else if (_partnerSlave.balls > 0) {
								t += `hungrily sucking the little hole on ${his} ${activeSlaveRel}'s crotch that ${he2} squirts cum from.`;
							} else {
								t += `is sating ${his} oral fixation for the moment by eagerly polishing ${his} ${activeSlaveRel}'s pearl.`;
							}
						} else if ( _partnerSlave.balls > 0) {
							t += `${name} is eagerly lapping up ${his} ${activeSlaveRel}'s most recent load of cum.`;
						} else if ( activeSlave.balls > 0) {
							t += `${name} is locking lips with ${his} ${activeSlaveRel} after ${he2} just finished licking up all ${his} cum to share it with ${him}.`;
						} else {
							t += `They have locked lips and are enthusiastically making out.`;
						}
						break;
					case "submissive":
						t += `wrestling ${_fuckSpot}. ${name} is such a submissive that ${he} wants to be forced to sexual gratify ${partnerName} all the time, so ${he2} does ${his2} best to give ${his2} ${activeSlaveRel} the constant domination ${he} loves. `;
						if (canPenetrate(_partnerSlave) && _fuckSeed > 50) {
							if (canDoVaginal(activeSlave)) {
								if (activeSlave.vagina === 0) {
									t += `${partnerName} is rubbing the length of ${his2} erection along ${name}'s virgin pussy and forcing ${him} to reveal just how bad ${he} wants it.`;
								} else if (_fuckSeed > 90 && activeSlave.amp !== 1) {
									t += `${partnerName} has ${name} on ${his} knees and is forcibly fucking ${his} pussy doggy style while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								} else if (_fuckSeed > 80 && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
									t += `${partnerName} has ${name} pushed against the wall and is fucking ${his} pussy from behind while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								} else if (_fuckSeed > 70) {
									t += `${partnerName} is on ${his2} back and forcing ${name} to ride ${his2} dick while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								} else if (_fuckSeed > 60 && activeSlave.belly < 500) {
									t += `${partnerName} has ${name} on ${his} back and trapped in a mating press, right where a bitch of a ${activeSlaveRel} belongs.`;
								} else {
									t += `${partnerName} is forcing ${himself2} into ${name}'s pussy while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								}
							} else if (canDoAnal(activeSlave)) {
								if (activeSlave.anus === 0) {
									t += `${partnerName} is circling the tip of ${his2} erection around ${name}'s virgin butthole and forcing ${him} to reveal just how bad ${he} wants it.`;
								} else if (_fuckSeed > 90 && activeSlave.amp !== 1) {
									t += `${partnerName} has ${name} on ${his} knees and is forcibly fucking ${his} ass doggy style while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								} else if (_fuckSeed > 80 && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
									t += `${partnerName} has ${name} pushed against the wall and is fucking ${his} ass from behind while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								} else if (_fuckSeed > 70) {
									t += `${partnerName} is on ${his2} back and forcing ${name} to ride ${his2} dick anally while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								} else if (_fuckSeed > 60) {
									t += `${partnerName} has ${name} pushed face first into the ground has ${him} trapped beneath ${his2} weight while ${he2} fucks ${his2} ass.`;
								} else {
									t += `${partnerName} is forcing ${himself2} into ${name}'s ass while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								}
							} else if (activeSlave.boobs > 800) {
								t += `${partnerName} has ${name} on ${his} back and is forcibly fucking ${his} tits.`;
							} else {
								t += `${partnerName} has ${name}'s face to ${his2} crotch and is forcibly pounding ${his} throat.`;
							}
						} else if (_partnerSlave.dick > 0 && _fuckSeed > 50) {
							t += `${name} has ${his} lips wrapped around ${partnerName}'s dick and is taking a deepthroating from ${him2}.`;
						} else if (canDoVaginal(_partnerSlave) && _fuckSeed > 30) {
							if (canPenetrate(activeSlave)) {
								if (_partnerSlave.vagina === 0 && _partnerSlave.amp !== 1) {
									t += `${partnerName} has a foot on ${name}'s turgid cock and is slowly and methodically keeping ${him} just short of release while ${he} begs for ${him2} to continue.`;
								} else if (_partnerSlave.vagina === 0) {
									t += `${partnerName} is rubbing ${his2} virgin pussy along the length of ${name}'s erection and is forcing ${him} to reveal just how badly ${he} wants to stick it in ${him2}. Of course, that's not going to happen and ${name} knows it.`;
								} else if (_fuckSeed > 45 && activeSlave.amp !== 1) {
									t += `${partnerName} is forcing ${name} to hold ${him2} aloft as ${he2} gets fucked by ${his2} bitch of a ${activeSlaveRel}.`;
								} else if (_fuckSeed > 40 && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
									t += `${partnerName} has ${name} pinned against the wall and is taking ${his} dick in ${his2} pussy by force.`;
								} else if (_fuckSeed > 35) {
									t += `${partnerName} has ${name} on ${his} back and is riding ${his} dick while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								} else {
									t += `${partnerName} has ${name} on ${his} back and is forcibly taking ${his} dick in reverse missionary while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								}
							} else if (canDoVaginal(activeSlave)) {
								t += `${partnerName} is scissoring ${name} while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
							} else {
								t += `${partnerName} is eating out ${name}'s pussy while ${he2} rains loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
							}
						} else if (canDoAnal(_partnerSlave) && _fuckSeed > 10) {
							if (canPenetrate(activeSlave)) {
								if (_partnerSlave.anus === 0 && _partnerSlave.amp !== 1) {
									t += `${partnerName} has a foot on ${name}'s turgid cock and is slowly and methodically keeping ${him} just short of release while ${he} begs for ${him2} to continue.`;
								} else if (_partnerSlave.vagina === 0) {
									t += `${partnerName} is rubbing ${his2} virgin butthole around the tip of ${name}'s erection and is forcing ${him} to reveal just how badly ${he} wants to stick it in ${him2}. Of course, that's not going to happen and ${name} knows it.`;
								} else if (_fuckSeed > 20 && activeSlave.amp !== 1) {
									t += `${partnerName} is forcing ${name} to hold ${him2} aloft as ${he2} gets anally fucked by ${his2} bitch of a ${activeSlaveRel}.`;
								} else if (_fuckSeed > 10 && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
									t += `${partnerName} has ${name} pinned against the wall behind ${him2} and is anally taking ${his} dick by force.`;
								} else {
									t += `${partnerName} has ${name} on ${his} back and is anally riding ${his} dick while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
								}
							} else if (_partnerSlave.amp !== 1) {
								t += `${partnerName} is fisting ${name}'s ass while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
							} else {
								t += `${partnerName} is pounding ${name}'s ass with a dildo while raining loving insults down on ${his2} bitch of a ${activeSlaveRel}.`;
							}
						} else {
							t += `${partnerName} is forcing ${name} to use ${his} tongue to bring ${him2} to orgasm.`;
						}
						break;
					case "dom":
						t += `wrestling ${_fuckSpot}. ${name} is so dominant with other slaves that ${he} prefers to take what ${he} wants, and ${partnerName} does ${his2} best to give ${his2} ${activeSlaveRel} the fight ${he} loves. `;
						if (canPenetrate(activeSlave) && _fuckSeed > 50) {
							if (canDoVaginal(_partnerSlave)) {
								if (_partnerSlave.vagina === 0) {
									t += `${name} has ${partnerName} pinned to the ground with ${his} dick lined up with {his2} virgin pussy. ${partnerName} is struggling and pleading with ${him} not to take it like this.`;
								} else if (_fuckSeed > 90 && activeSlave.amp !== 1) {
									t += `${name} has ${partnerName} on ${his} knees and is forcibly fucking ${his2} pussy doggy style while {he2} struggles to get away.`;
								} else if (_fuckSeed > 80 && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
									t += `${name} has ${partnerName} pushed against the wall is is fucking ${his} pussy from behind while {he2} struggles to get away.`;
								} else if (_fuckSeed > 70 && activeSlave.amp !== 1) {
									t += `${name} is on ${his} back and forcing ${partnerName} to ride ${his} dick while keeping a firm hold on ${his2} hips.`;
								} else if (_fuckSeed > 60 && _partnerSlave.belly < 500) {
									t += `${name} has ${partnerName} on ${his2} back and trapped in a mating press. ${partnerName} is struggling and begging ${him} not to get ${him2} pregnant.`;
								} else {
									t += `${name} is forcing ${himself} into ${partnerName}'s pussy while {he2} struggles to get away.`;
								}
							} else if (canDoAnal(_partnerSlave)) {
								if (_partnerSlave.anus === 0) {
									t += `${name} is circling the tip of ${his} erection around ${partnerName}'s virgin butthole. ${partnerName} is struggling and pleading with ${him} not to take it like this.`;
								} else if (_fuckSeed > 90 && activeSlave.amp !== 1) {
									t += `${name} has ${partnerName} on ${his2} knees and is forcibly fucking ${his2} ass doggy style while {he2} struggles to get away.`;
								} else if (_fuckSeed > 80 && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
									t += `${name} has ${partnerName} pushed against the wall and is fucking ${his2} ass from behind while {he2} struggles to get away.`;
								} else if (_fuckSeed > 70 && activeSlave.amp !== 1) {
									t += `${name} is on ${his} back and forcing ${partnerName} to ride ${his} dick anally while keeping a firm hold on ${his2} hips.`;
								} else if (_fuckSeed > 60) {
									t += `${name} has ${partnerName} pushed face first into the ground has ${him2} trapped beneath ${his} weight while ${he} fucks ${his2} ass.`;
								} else {
									t += `${name} is forcing ${himself} into ${partnerName}'s ass while {he2} struggles to get away.`;
								}
							} else if (_partnerSlave.boobs > 800) {
								t += `${name} has ${partnerName} on ${his2} back and is forcibly fucking ${his2} tits.`;
							} else {
								t += `${name} has ${partnerName}'s face to ${his} crotch and is forcibly pounding ${his2} throat.`;
							}
						} else if (activeSlave.dick > 0 && _fuckSeed > 50) {
							t += `${name} is deepthroating ${partnerName} as ${he2} struggles to breath.`;
						} else if (canDoVaginal(activeSlave) && _fuckSeed > 30) {
							if (canPenetrate(_partnerSlave) && activeSlave.vagina !== 0) {
								if (_fuckSeed > 45 && _partnerSlave.amp !== 1) {
									t += `${name} is forcing ${partnerName} to hold ${him} aloft as ${he} enjoys a good vaginal pounding from an unwilling partner.`;
								} else if (_fuckSeed > 40 && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
									t += `${name} has ${partnerName} pinned against the wall and is taking ${his2} dick in ${his} pussy by force.`;
								} else if (_fuckSeed > 35) {
									t += `${name} has ${partnerName} on ${his2} back and is riding ${his2} dick while ${he2} tries to buck ${him} off.`;
								} else {
									t += `${name} has ${partnerName} on ${his2} back and is forcibly taking ${his} dick in reverse missionary while ${he2} struggles to not cum in ${his2} rapist.`;
								}
							} else if (canDoVaginal(activeSlave) && activeSlave.vagina !== 0) {
								t += `${name} is scissoring the struggling ${partnerName}.`;
							} else {
								t += `${name} is straddling ${partnerName}'s face and forcing ${him2} to eat ${him} out.`;
							}
						} else if (canDoAnal(activeSlave) && canPenetrate(_partnerSlave) && _fuckSeed > 10 && activeSlave.anus !== 0) {
							if (_fuckSeed > 20 && activeSlave.amp !== 1) {
								t += `${name} is forcing ${partnerName} to hold ${him} aloft as ${he} enjoys a good anal pounding from an unwilling partner.`;
							} else if (_fuckSeed > 10 && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
								t += `${name} has ${partnerName} pinned against the wall and is taking ${his2} dick in ${his} ass by force.`;
							} else {
								t += `${name} has ${partnerName} on ${his2} back and is anally riding ${his2} dick while ${he2} tries to buck ${him} off.`;
							}
						} else {
							t += `${name} is on top of ${partnerName} getting oral, though it's more of a rough facefuck as ${name} forces `;
							if (canPenetrate(activeSlave)) {
								t += `${his} cock `;
							} else if (activeSlave.clit > 3) {
								t += `${his} clit `;
							} else {
								t += `a strap-on `;
							}
							t += `down ${partnerName}'s throat.`;
						}
						break;
					case "sadist":
						t += `playing pain games ${_fuckSpot}. ${name} loves hurting other slaves, even ${his} friends, and ${partnerName} submits to ${his} agonizing ministrations as often as ${name} can cajole or force ${him2} into it. `;
						if (activeSlave.amp !== 1) {
							t += `${name} has ${partnerName} over ${his} knee and is methodically tanning ${his2}'s ${race2} ass.`;
						} else {
							t += `${name} has ${partnerName} on the ground and is methodically striking ${his2}'s ${race2} ass with a switch held by mouth. Even without limbs, ${name} finds a way.`;
						}
						break;
					case "masochist":
						t += `playing pain games ${_fuckSpot}. ${name} loves being hurt, so ${partnerName} frequently indulges ${him} with spanking, slapping, pinching, and more exotic forms of abuse. `;
						if (activeSlave.amp !== 1) {
							t += `${partnerName} has ${name} over ${his2} knee and is methodically tanning ${his} ${race} ass.`;
						} else {
							t += `${partnerName} has ${name} on the ground and is methodically striking ${his} ${race} ass with a switch held by mouth. Having a limbless ${activeSlaveRel} won't deter ${name} from getting worked over the way ${he} craves.`;
						}
						break;
					case "humiliation":
						t += `having open and visible sex `;
						if (activeSlave.livingRules === "luxurious") {
							t += `in the doorway of the nice little room they share.`;
						} else if (activeSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
							t += `in ${name}'s suite.`;
						} else {
							t += `out in the hallway near the slave dormitory.`;
						}
						t += ` ${name} pretends to hate fucking where other slaves can see ${him}, but ${partnerName} knows ${his2} ${activeSlaveRel} gets off on the mild humiliation. ${partnerName} `;
						if (((canDoVaginal(activeSlave) && activeSlave.vagina > 0) || (canDoAnal(activeSlave) && activeSlave.anus > 0)) && _fuckSeed > 50) {
							t += `has ${his2} back propped up against a door frame and ${name} in ${his2} lap, so ${he} can blush at any passing slave as ${he} shyly rides ${partnerName}'s `;
							if (_partnerSlave.dick > 0 && canPenetrate(_partnerSlave)) {
								t += `cock `;
							} else {
								t += `strap-on `;
							}
							if (activeSlave.vagina > 0 && canDoVaginal(activeSlave) && (_fuckSeed > 60 || !canDoAnal(activeSlave) || activeSlave.anus === 0)) {
								t += `in ${his} pussy.`;
							} else {
								t += `up ${his} ass.`;
							}
						} else if (activeSlave.dick === 1 && _partnerSlave.amp !== 1 && _fuckSeed > 40) {
							t += `jacking off ${name}'s pathetically tiny cock out in the open so ${he} can blush and shiver as passing slaves see how embarrassingly small ${he} is.`;
						} else if (activeSlave.dick === 1 && _partnerSlave.amp !== 1 && _fuckSeed > 20) {
							t += `having ${name} give ${him2} oral out in the open so ${he} can blush and shiver as passing slaves see what a slut ${he} is.`;
						} else {
							t += `is giving ${name} oral out in the open so ${he} can blush and shiver as passing slaves see ${his} climax.`;
						}
						break;
					case "pregnancy":
						t += `having intimate sex ${_fuckSpot}. ${name}'s `;
						if (activeSlave.belly >= 5000) {
							t += `middle is heavily rounded, `;
						} else if (activeSlave.belly >= 1500) {
							t += `middle is quite swollen, `;
						} else {
							t += `urge to breed is raging, `;
						}
						t += ` and ${partnerName} does ${his2} best to keep ${his2} ${activeSlaveRel} satisfied. `;
						if (canPenetrate(activeSlave) && _fuckSeed > 70) {
							if (canDoVaginal(_partnerSlave) && _partnerSlave.vagina > 0 && _fuckSeed > 90) {
								if (_partnerSlave.belly >= 5000) {
									t += `${partnerName} is `;
									if (_partnerSlave.bellyPreg >= 1500) {
										t += `heavily pregnant `;
									} else {
										t += `hugely gravid `;
									}
									t += `${himself2} `;
									if (activeSlave.belly >= 5000) {
										if (activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
											t += `so ${name} has ${him2} on all fours as ${he} fucks ${him2} from behind while resting ${his} belly on ${his} love's back.`;
										} else {
											t += `so ${he2} is intertwined as best ${he2} can with ${name} as their combined bellies push into each other.`;
										}
									} else {
										t += `so ${he2} has ${name} on ${his} back so that ${he2} can ride ${him} while `;
										if (activeSlave.amp !== 1) {
											t += `letting ${him} fondle ${his2} bouncing belly.`;
										} else {
											t += `giving ${him} a face full of belly.`;
										}
									}
								} else if (_partnerSlave.belly === 0) {
									t += `${partnerName} is pinned on ${his2} back by ${name}`;
									if (activeSlave.belly >= 5000) {
										t += `'s belly as ${he} tries ${his} hardest to plant a child in ${him2}.`;
									} else {
										t += ` in a mating press as ${he} tries ${his} hardest to plant a child in ${him2}.`;
									}
								} else {
									if (activeSlave.belly >= 5000) {
										t += `${partnerName} has ${name} on ${his} back so that ${he2} can ride ${him} while lavishing attention on ${his} beloved stomach.`;
									} else {
										t += `${name} has ${partnerName} on ${his2} back so that ${he} can fuck ${him2} while lavishing attention on ${his2} bulging stomach.`;
									}
								}
							} else if (canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && _fuckSeed > 80) {
								if (_partnerSlave.belly >= 5000) {
									t += `${partnerName} is `;
									if (_partnerSlave.bellyPreg >= 1500) {
										t += `heavily pregnant `;
									} else {
										t += `hugely gravid `;
									}
									t += `${himself2} `;
									if (activeSlave.belly >= 5000) {
										if (activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
											t += `so ${name} has ${him2} on all fours as ${he} fucks ${his2} ass while resting ${his} belly on ${his2} back.`;
										} else {
											t += `so ${he2} is intertwined as best as ${he2} can for anal sex with ${name} as ${his} belly pushes into ${his2} back.`;
										}
									} else {
										t += `so ${he2} has ${name} on ${his} back so that ${he2} can anally ride ${him} while `;
										if (activeSlave.amp !== 1) {
											t += `letting ${him} fondle ${his2} bouncing belly.`;
										} else {
											t += `giving ${him} a face full of belly.`;
										}
									}
								} else if (_partnerSlave.belly === 0) {
									if (activeSlave.belly >= 5000) {
										t += `${partnerName} has ${name} on ${his} back so that ${he2} can anally ride ${him} while teasing ${his} belly with ${his2} rear.`;
									} else {
										t += `${partnerName} is pinned on ${his2} stomach by ${name} as ${he} tries ${his} hardest to impregnate an anus.`;
									}
								} else {
									if (activeSlave.belly >= 5000) {
										t += `${partnerName} has ${name} on ${his} back so that ${he2} can ride ${him} anally while teasing ${his} prized stomach.`;
									} else {
										t += `${name} has ${partnerName} on ${his2} back so that ${he} can fuck ${him2} anally while teasing ${his2} bulging stomach.`;
									}
								}
							} else if (_partnerSlave.boobs >= 2000 && _partnerSlave.belly >= 10000 && _fuckSeed > 75) {
								t += `${name} is savoring the sensation of ${his} cock between ${partnerName}'s breasts and belly.`;
							} else {
								if (activeSlave.belly >= 5000) {
									t += `${name} is squirming under the sensations of ${partnerName}'s lips around ${his} dick and {his2} head against ${his} underbelly.`;
								} else {
									t += `${partnerName} is vigorously trying to calm ${name}'s libido by sucking load after load out of ${him}.`;
								}
							}
						} else if (canDoVaginal(activeSlave) && _fuckSeed > 30) {
							if (canPenetrate(_partnerSlave) && activeSlave.vagina > 0 && activeSlave.preg === 0 && activeSlave.ovaries === 1) { //impreg
								if (_partnerSlave.belly >= 5000) {
									t += `${partnerName} is `;
									if (_partnerSlave.bellyPreg >= 1500) {
										t += `heavily pregnant `;
									} else {
										t += `hugely gravid `;
									}
									t += `${himself2}, but ${name} can't complain about the swollen dome pushing against ${him} as ${he2} fervently tries to sate ${his} lust by putting a baby in ${him}.`;
								} else {
									t += `${partnerName} has ${name} pinned on ${his} back in a mating press as ${he2} fervently tries to sate ${his} lust by putting a baby in ${him}.`;
								}
							} else {
								if (_fuckSeed > 50) { //vanilla
									if (canPenetrate(_partnerSlave) && activeSlave.vagina !== 0) {
										if (_partnerSlave.belly >= 5000) {
											t += `${partnerName} is `;
											if (_partnerSlave.bellyPreg >= 1500) {
												t += `heavily pregnant `;
											} else {
												t += `hugely gravid `;
											}
											t += `${himself2} `;
											if (activeSlave.belly >= 5000) {
												t += `so ${he2} has ${name} on ${his} side so that ${he2} can fuck ${his} pussy as best ${he2} can with their mutual bellies in the way.`;
											} else {
												t += `so ${he2} has ${name} on ${his} back so that ${he2} can fuck ${his} pussy as best ${he2} can with ${his2} belly in the way.`;
											}
										} else if (activeSlave.belly >= 5000) {
											t += `${name} is bouncing heavily on ${partnerName}'s erect dick as ${he2} struggles to support ${his} gravid figure.`;
										} else {
											t += `${partnerName} has ${name} pinned on ${his} back in a mating press as ${he2} dutifully blows another load deep in ${his} aching pussy.`;
										}
									} else if (_partnerSlave.dick > 0 && activeSlave.belly < 500) {
										t += `${partnerName} is bringing ${his2} limp dick to orgasm and making sure each and every drop is ending up in ${name}'s pussy.`;
									} else {
										if (_partnerSlave.belly >= 5000) {
											t += `${partnerName} is `;
											if (_partnerSlave.bellyPreg >= 1500) {
												t += `heavily pregnant `;
											} else {
												t += `hugely gravid `;
											}
											t += `${himself2} `;
											if (activeSlave.belly >= 5000) {
												t += `so ${he2} is stomach to stomach with ${name} and making out.`;
											} else {
												t += `so ${he2} is face to face with ${name} and making out.`;
											}
										} else if (activeSlave.belly >= 5000) {
											t += `${partnerName} is teasing ${his2} lover's huge belly.`;
										} else {
											t += `${name} and ${partnerName} are both pretending to be hugely pregnant and cuddling each other.`;
										}
									}
								} else if (canDoVaginal(_partnerSlave) && _fuckSeed > 40) { //scissor
									if (_partnerSlave.belly >= 5000) {
										t += `${partnerName} is `;
										if (_partnerSlave.bellyPreg >= 1500) {
											t += `heavily pregnant `;
										} else {
											t += `hugely gravid `;
										}
										t += `${himself2} `;
										if (activeSlave.belly >= 5000) {
											t += `so ${he2} and ${name} are trying their hardest to trib with their ever expanding bodies in the way.`;
										} else {
											t += `so ${name} is savoring the feeling of ${his2} navel tracing ${his} slit.`;
										}
									} else {
										t += `${name} and ${partnerName} `;
										if (activeSlave.vagina > 0 && _partnerSlave.vagina > 0) {
											t += `are locked together and sharing a double-ended dildo.`;
										} else {
											t += `are enthusiastically tribbing.`;
										}
									}
								} else { //oral
									if (_partnerSlave.belly >= 5000) {
										t += `${partnerName} is `;
										if (_partnerSlave.bellyPreg >= 1500) {
											t += `heavily pregnant `;
										} else {
											t += `hugely gravid `;
										}
										t += `${himself2} `;
										if (activeSlave.belly >= 5000) {
											if (activeSlave.dick > 0 && _fuckSeed > 25) {
												t += `so ${he2} has to try ${his2} hardest to suck ${name}'s dick with ${his2} belly hindering ${his2} movements; something ${name} enjoys tremendously, second only to the feeling of ${his2} head brushing against ${his} underbelly.`;
											} else {
												t += `so ${he2} has to try ${his2} hardest to orally service ${name} with ${his2} belly in the way; something ${name} enjoys tremendously, second only to the feeling of ${his2} head brushing against ${his} underbelly.`;
											}
										} else {
											if (activeSlave.dick > 0 && _fuckSeed > 25) {
												t += `so ${he2} has to try ${his2} hardest to suck ${name}'s dick with ${his2} belly hindering ${his2} movements; something ${name} enjoys tremendously.`;
											} else {
												t += `so ${he2} has to try ${his2} hardest to orally service ${name} with ${his2} belly in the way; something ${name} enjoys tremendously.`;
											}
										}
									} else if (activeSlave.belly >= 5000) {
										if (activeSlave.dick > 0 && _fuckSeed > 25) {
											t += `${partnerName} has ${name} pinned under ${his} own gravidity so ${he2} may leisurely suck ${his} dick while teasing ${him} by brushing against ${his} sensitive underbelly.`;
										} else {
											t += `${partnerName} has ${name} pinned under ${his} own gravidity so ${he2} may leisurely eat ${him} out while teasing ${him} by brushing against ${his} sensitive underbelly.`;
										}
									} else {
										if (activeSlave.dick > 0 && _fuckSeed > 25) {
											t += `${partnerName} is vigorously trying to calm ${name}'s libido by sucking load after load out of ${him}.`;
										} else {
											t += `${name} is squirming under the sensations of ${partnerName}'s tongue as ${he2} vigorously tries to calm ${his} libido.`;
										}
									}
								}
							}
						} else if (canDoAnal(activeSlave) && canPenetrate(_partnerSlave) && _fuckSeed > 10) {
							if (activeSlave.anus > 0 && activeSlave.preg === 0 && activeSlave.mpreg === 1) { //impreg
								if (_partnerSlave.belly >= 5000) {
									t += `${partnerName} is `;
									if (_partnerSlave.bellyPreg >= 1500) {
										t += `heavily pregnant `;
									} else {
										t += `hugely gravid `;
									}
									t += `${himself2}, but ${name} can't complain about the swollen dome pushing against ${his} back as ${he2} fervently tries to sate ${his} lust by putting a baby in ${him}.`;
								} else {
									t += `${partnerName} has ${name} pinned on ${his} stomach as ${he2} fervently tries to sate ${his} lust by putting a baby in ${him}.`;
								}
							} else if (activeSlave.anus === 0) {
								if (_partnerSlave.belly >= 5000) {
									t += `${partnerName} is `;
									if (_partnerSlave.bellyPreg >= 1500) {
										t += `heavily pregnant `;
									} else {
										t += `hugely gravid `;
									}
									t += `${himself2} `;
									if (activeSlave.belly >= 5000) {
										t += `so ${he2} is stomach to stomach with ${name} and making out.`;
									} else {
										t += `so ${he2} is face to face with ${name} and making out.`;
									}
								} else if (activeSlave.belly >= 5000) {
									t += `${partnerName} is teasing ${his2} lover's huge belly.`;
								} else {
									t += `${name} and ${partnerName} are both pretending to be hugely pregnant and cuddling each other.`;
								}
							} else {
								if (_partnerSlave.belly >= 5000) {
									t += `${partnerName} is `;
									if (_partnerSlave.bellyPreg >= 1500) {
										t += `heavily pregnant `;
									} else {
										t += `hugely gravid `;
									}
									t += `${himself2} `;
									if (activeSlave.belly >= 5000) {
										t += `so ${he2} has ${name} on ${his} side so that ${he2} can fuck ${his} ass as best ${he2} can with their mutual bellies in the way.`;
									} else {
										t += `so ${he2} has ${name} on ${his} front so that ${he2} can fuck ${his} ass as best ${he2} can with ${his2} belly in the way.`;
									}
								} else if (activeSlave.belly >= 5000) {
									t += `${name} is bouncing heavily on ${partnerName}'s erect dick as ${he2} struggles to anally satisfy ${his2} gravid partner.`;
								} else {
									t += `${partnerName} has ${name} pinned on ${his} front as ${he2} dutifully plows ${his} needy anus in an attempt to sate ${his} bottomless lust.`;
								}
							}
						} else { //oral
							if (_partnerSlave.belly >= 5000) {
								t += `${partnerName} is `;
								if (_partnerSlave.bellyPreg >= 1500) {
									t += `heavily pregnant `;
								} else {
									t += `hugely gravid `;
								}
								t += `${himself2} `;
								if (activeSlave.belly >= 5000) {
									if (activeSlave.dick > 0 && _fuckSeed > 5) {
										t += `so ${he2} has to try ${his2} hardest to suck ${name}'s dick with ${his2} belly hindering ${his2} movements; something ${name} enjoys tremendously, second only to the feeling of ${his2} head brushing against ${his} underbelly.`;
									} else {
										t += `so ${he2} has to try ${his2} hardest to orally service ${name} with ${his2} belly in the way; something ${name} enjoys tremendously, second only to the feeling of ${his2} head brushing against ${his} underbelly.`;
									}
								} else {
									if (activeSlave.dick > 0 && _fuckSeed > 5) {
										t += `so ${he2} has to try ${his2} hardest to suck ${name}'s dick with ${his2} belly hindering ${his2} movements; something ${name} enjoys tremendously.`;
									} else {
										t += `so ${he2} has to try ${his2} hardest to orally service ${name} with ${his2} belly in the way; something ${name} enjoys tremendously.`;
									}
								}
							} else if (activeSlave.belly >= 5000) {
								if (activeSlave.dick > 0 && _fuckSeed > 5) {
									t += `${partnerName} has ${name} pinned under ${his} own gravidity so ${he2} may leisurely suck ${his} dick while teasing ${him} by brushing against ${his} sensitive underbelly.`;
								} else {
									t += `${partnerName} has ${name} pinned under ${his} own gravidity so ${he2} may leisurely eat ${him} out while teasing ${him} by brushing against ${his} sensitive underbelly.`;
								}
							} else {
								if (activeSlave.dick > 0 && _fuckSeed > 5) {
									t += `${partnerName} is vigorously trying to calm ${name}'s libido by sucking load after load out of ${him}.`;
								} else {
									t += `${name} is squirming under the sensations of ${partnerName}'s tongue as ${he2} vigorously tries to calm ${his} libido.`;
								}
							}
						}
						break;
					default:
						t += `having intimate sex ${_fuckSpot}.`;
						break;
					}
				} else if (!activeSlave.need || activeSlave.energy < 20) {
					t += `just spooning in bed. Since ${name} `;
					if (activeSlave.energy < 20) {
						t += `in sexually frigid, `;
					} else {
						t += `gets fucked at work, `;
					}
					t += `${partnerName} understands that what ${he} really wants from ${him2} is emotional intimacy. They're cuddling quietly, offering each other silent comfort and companionship.`;
				} else if (canPenetrate(activeSlave) && (_partnerSlave.vagina > 0) && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) {
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `;
					if (canSee(_partnerSlave)) {
						t += `looking deep into ${his} eyes `;
					} else {
						t += `gazing longingly into ${his} face `;
					}
					t += `as ${he2} enjoys the wonderful feeling of ${his2} ${activeSlaveRel}'s cock in ${his2} womanhood.`;
				} else if (activeSlave.clit > 2 && canDoVaginal(activeSlave) && _partnerSlave.vagina > 0 && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) {
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `;
					if (canSee(_partnerSlave)) {
						t += `looking deep into ${his} eyes `;
					} else {
						t += `gazing longingly into ${his} face `;
					}
					t += `as ${he2} enjoys the wonderful feeling of ${his2} ${activeSlaveRel}'s huge clit in ${his2} womanhood.`;
				} else if (activeSlave.dick > 1 && canPenetrate(activeSlave) && canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && activeSlave.amp !== 1 && activeSlave.belly < 10000) {
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}, having gentle anal sex while spooning. ${name} is enjoying ${partnerName}'s ass, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys being buttfucked. ${He}'s nibbling ${his} ${activeSlaveRel}'s `;
					if (_partnerSlave.earShape !== "none") {
						t +=`ears and `;
					}
					t += `neck, cupping a breast with one hand, and lightly stimulating ${him2} with the other.`;
				} else if (activeSlave.clit > 2 && canDoAnal(_partnerSlave) && _partnerSlave.anus > 0 && _partnerSlave.amp !== 1 && activeSlave.amp !== 1) {
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}, managing to have clitoral-anal sex. ${partnerName} is face-down with ${his2} ass up, spreading ${his2} buttocks as wide as possible, giving ${his2} ${activeSlaveRel} the opportunity to squat over ${him2} and penetrate it with ${his} huge, erect clit. ${name} can't thrust much, but the shocking lewdness of the act is enough for both of them.`;
				} else if (canPenetrate(activeSlave) && _partnerSlave.amp !== 1 && activeSlave.amp !== 1 && activeSlave.belly < 10000) {
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}, spooning while ${name} gently rubs ${his} cock between ${partnerName}'s thighs, pressed tightly together. Since ${partnerName} is a virgin, this is the closest they can come to penetrative intercourse, but ${name} is enjoying ${partnerName}'s body anyway, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys ${himself2}. ${He}'s nibbling ${his} ${activeSlaveRel}'s `;
					if (_partnerSlave.earShape !== "none") {
						t +=`ears and `;
					}
					t += `neck, cupping a breast with one hand, and lightly stimulating ${him2} with the other.`;
				} else if (activeSlave.clit > 2 && canDoVaginal(activeSlave) && _partnerSlave.amp !== 1 && activeSlave.amp !== 1) {
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}, with ${partnerName} down on ${his2} knees in front of ${name}. From behind ${partnerName} it looks like ${he2}'s giving ${his2} ${activeSlaveRel} a conventional, if enthusiastic, blowjob. Only on closer inspection does it become clear how unusual the oral is: ${name} has such a huge clit that ${his} ${activeSlaveRel} can suck ${him} off just like it were a penis.`;
				} else if (_partnerSlave.vagina > 0 && canDoVaginal(_partnerSlave) && _partnerSlave.amp !== 1 && (activeSlave.belly + _partnerSlave.belly < 10000)) {
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}, making love in the missionary position. ${partnerName} has ${his2} legs wrapped around ${name}'s waist and ${his2} arms hugging ${him} around the chest, and is `;
					if (canSee(_partnerSlave)) {
						t += `looking deep into ${his} eyes `;
					} else {
						t += `gazing longingly into ${his} face `;
					}
					t += `as ${he2} enjoys the feeling of ${his2} ${activeSlaveRel} fucking ${him2} with a strap-on.`;
				} else if (_partnerSlave.anus > 0 && canDoAnal(_partnerSlave) && activeSlave.amp !== 1 && activeSlave.belly < 10000) {
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}, having gentle anal sex while spooning. ${name} is enjoying penetrating ${partnerName}'s ass with a strap-on, and is doing ${his} best to ensure ${his} ${activeSlaveRel} enjoys being buttfucked. ${He}'s nibbling ${his} ${activeSlaveRel}'s `;
					if (_partnerSlave.earShape !== "none") {
						t +=`ears and `;
					}
					t += `neck, cupping a breast with one hand, and lightly stimulating ${him} with the other.`;
				} else if (_partnerSlave.amp !== 1 && activeSlave.amp !== 1) {
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}, enjoying some mutual masturbation.`;
				} else if (_partnerSlave.amp === 1) {
					t += `just cuddling `;
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}. ${name} is using ${partnerName}'s limbless torso as a pillow, which ${partnerName} seems to be enjoying, by ${his2} contented expression.`;
				} else {
					t += `just cuddling `;
					if (_partnerSlave.ID === V.HeadGirl.ID && V.HGSuite === 1) {
						t += `in bed `;
					} else if (activeSlave.livingRules === "luxurious") {
						t += `in bed `;
					} else {
						t += `on ${name}'s bedroll `;
					}
					t += `${_fuckSpot}. They're lying quietly, offering each other silent comfort and companionship.`;
				}
			} else if (_seed >= 33) { /* CUDDLE TIME */
				if (activeSlave.energy > 95 && _fuckSeed > 70) {
					t += `lying in bed together. ${partnerName} has somehow managed to exhaust ${his2} ${activeSlaveRel}, and the sexually sated nympho is curled up with ${his} head on ${partnerName}'s chest, snoring lightly. ${partnerName} is smiling fondly at ${him}.`;
				} else if (activeSlave.fetish !== "none" && _fuckSeed > 50) {
					switch (activeSlave.fetish) {
					case "boobs":
						t += `sleeping in bed together. ${name} is using ${partnerName}'s `;
						if (_partnerSlave.boobs > 10000) {
							t += `enormous breasts`;
						} else if (_partnerSlave.boobs > 2000) {
							t += `huge boobs`;
						} else if (_partnerSlave.boobs > 300) {
							t += `healthy tits`;
						} else {
							t += `flat chest`;
						}
						if (activeSlave.fetishKnown) {
							t += `, which ${he} loves,`;
						}
						t += ` as a pillow.`;
						break;
					case "buttslut":
						t += `sleeping in bed together. ${partnerName} is sleeping face-down so ${name} can use ${his2} `;
						if (_partnerSlave.butt > 8) {
							t += `massive rear`;
						} else if (_partnerSlave.butt > 5) {
							t += `huge posterior`;
						} else if (_partnerSlave.butt > 2) {
							t += `big butt`;
						} else if (_partnerSlave.butt > 1) {
							t += `trim behind`;
						} else {
							t += `skinny ass`;
						}
						if (activeSlave.fetishKnown) {
							t += `, which ${he} loves,`;
						}
						t += ` as a pillow.`;
						break;
					case "cumslut":
						t += `sleeping in bed together. ${name} is spooning ${his} ${activeSlaveRel}, ${his} head nestled alongside ${partnerName}'s, ${his} `;
						if (activeSlave.lips > 95) {
							t += `massive `;
						} else if (activeSlave.lips > 70) {
							t += `pillowlike `;
						} else if (activeSlave.lips > 40) {
							t += `plush `;
						} else if (activeSlave.lips > 10) {
							t += `pretty `;
						} else {
							t += `thin `;
						}
						t += `lips wet from kissing ${him2} to sleep.`;
						break;
					case "submissive":
					case "masochist":
					case "humiliation":
						t += `sleeping in bed together. ${name} is being spooned by ${his} ${activeSlaveRel}, smiling peacefully at being held.`;
						break;
					case "dom":
					case "sadist":
						t += `sleeping in bed together. ${name} is spooning ${his} ${activeSlaveRel} possessively`;
						if (activeSlave.amp !== 1) {
							t += `, and even in ${his} sleep, has a proprietary hand on ${partnerName}'s `;
							if (_partnerSlave.balls > 0) {
								t += `balls`;
							} else if (_partnerSlave.balls > 0) {
								t += `soft cock`;
							} else if (_partnerSlave.vagina > -1) {
								t += `pussy`;
							} else {
								t += `body`;
							}
						}
						t += `.`;
						break;
					case "pregnancy":
						t += `sleeping in bed together. `;
						if (activeSlave.belly >= 5000 && _partnerSlave.belly >= 5000) {
							t += `They are pressed as close as they can be with their rounded middles in the way.`;
						} else if (activeSlave.belly >= 5000) {
							t += `${name} is spooning ${his} ${activeSlaveRel} possessively, ${his} rounded belly pushing into ${his2} back.`;
						} else if (_partnerSlave.belly >= 5000) {
							t += `${name} is spooning ${his} ${activeSlaveRel} possessively`;
							if (activeSlave.amp !== 1) {
								t += `, and even in ${his} sleep, has a proprietary hand on ${partnerName}'s belly`;
							}
							t += `.`;
						} else {
							t += `${name} is being spooned by ${his} ${activeSlaveRel}, smiling peacefully at being held.`;
						}
						break;
					}
				} else if (_partnerSlave.dick > 6 && activeSlave.amp !== 1 && _fuckSeed > 30) {
					t += `sleeping in bed together. ${name} is cuddled up close to ${partnerName}, and is cradling ${his} ${activeSlaveRel}'s enormous, soft cock with one hand.`;
				} else if (activeSlave.height > _partnerSlave.height + 10) {
					t += `sleeping in bed together, with the taller ${name} curled around ${his} little ${activeSlaveRel}.`;
				} else if (_partnerSlave.height > activeSlave.height + 10) {
					t += `sleeping in bed together, with the shorter ${name} curled under ${his} ${activeSlaveRel}.`;
				} else if (activeSlave.amp === 1) {
					t += `sleeping in bed together; ${partnerName} is using ${his2} limbless ${activeSlaveRel} as a pillow.`;
				} else if (_partnerSlave.amp !== 1) {
					t += `resting in bed together, holding hands in their sleep.`;
				} else {
					t += `sleeping quietly in bed together.`;
				}
			} else { /* TOGETHER TIME */
				if (_fuckSeed > 75 && activeSlave.behavioralQuirk !== "none") {
					switch (activeSlave.behavioralQuirk) {
					case "confident":
						t += `finishing up a meal together. ${name} `;
						if (canTalk(activeSlave) && canHear(_partnerSlave)) {
							t += `is concluding a story for ${his} ${activeSlaveRel}, ${his} clear confident voice ringing as ${he} relates a slight.`;
						} else {
							t += `is boasting to ${his} ${activeSlaveRel}, with ${partnerName} nodding in agreement.`;
						}
						break;
					case "cutting":
						t += `seeing to their chores together. ${name} `;
						if (canTalk(activeSlave) && canHear(_partnerSlave)) {
							t += `is making biting remarks about another one of your other slaves, with which ${his} ${activeSlaveRel} agrees tolerantly.`;
						} else {
							t += `is making ${his} thoughts about another one of your other slaves clear to ${his} ${activeSlaveRel}.`;
						}
						break;
					case "funny":
						if (canTalk(_partnerSlave) && canSee(_partnerSlave)) {
							t += `seeing to their chores together. ${name} has just produced some unintentional slapstick humor, and ${his} ${activeSlaveRel} is giggling helplessly at ${his} antics.`;
						} else {
							t += `getting ready for bed. ${name} is making ${his} ${activeSlaveRel} giggle `;
							if (canTalk(_partnerSlave)) {
								t += `silently `;
							} else {
								t += `helplessly `;
							}
							t += `with ${his} antics.`;
						}
						break;
					case "fitness":
						t += `have just woken up. `;
						if (activeSlave.amp !== 1) {
							t += `${name} is doing ${his} morning crunches, and ${his} ${activeSlaveRel} is sleepily sitting on ${his} feet to help.`;
						} else {
							t += `${name} is doing ${his} morning exercises, and ${his} ${activeSlaveRel} is sleepily sitting nearby, providing moral support.`;
						}
						break;
					case "insecure":
						t += `have just woken up. ${name} is getting dressed when ${his} ${activeSlaveRel} `;
						if ((canTalk(_partnerSlave) && canHear(activeSlave)) || (_partnerSlave.amp !== 1 && canSee(activeSlave))) {
							t += `pays ${him} a compliment; ${name} blushes and gives ${partnerName} a kiss.`;
						} else {
							t += `demonstrates how much ${he2} adores ${his} body; ${name} blushes and gives ${partnerName} a kiss.`;
						}
						break;
					case "sinful":
						t += `have just woken up. ${name} appears to be praying, but to go by ${his} ${activeSlaveRel}'s `;
						if (canTalk(activeSlave) && canHear(_partnerSlave)) {
							t += `quiet mirth, ${he} seems to be substituting in some lewd words.`;
						} else if (canSee(_partnerSlave)) {
							t += `quiet mirth, ${he} seems to be adding in some lewd motions.`;
						} else {
							t += `blushing, ${he} seems to be substituting in the occasional lewd act.`;
						}
						break;
					case "advocate":
						if (canTalk(activeSlave)) {
							t += `starting a meal together. A third, less well trained slave has asked ${name} an innocent question, and is getting enthusiastic slave dogma in return. ${His} ${activeSlaveRel} smiles tolerantly.`;
						} else {
							t += `have just woken up. ${name} is planning out how to better convince new slaves that they made the right choice. ${His} ${activeSlaveRel} just tolerantly goes about tidying up while giving the occasional idea.`;
						}
						break;
					case "adores men":
						if (canSee(activeSlave) && (canSee(_partnerSlave) || canHear(_partnerSlave))) {
							t += `sharing a meal together. ${name} is making catcalls at passing boys, and ${his} ${activeSlaveRel} is nudging ${him} in the ribs every time {he2} catches it.`;
						} else {
							t += `getting ready for bed. ${name} is demonstrating just how much ${he} adores men to ${his} ${activeSlaveRel} while ${he2} nods `;
							if (_partnerSlave.genes === "XX") {
								t += `tolerantly.`;
							} else {
								t += `appreciatively.`;
							}
						}
						break;
					case "adores women":
						if (canSee(activeSlave) && (canSee(_partnerSlave) || canHear(_partnerSlave))) {
							t += `sharing a meal together. ${name} is making catcalls at passing girls, and ${his} ${activeSlaveRel} is nudging ${him} in the ribs every time {he2} catches it.`;
						} else {
							t += `getting ready for bed. ${name} is demonstrating just how much ${he} adores ladies to ${his} ${activeSlaveRel} while ${he2} nods `;
							if (_partnerSlave.genes === "XY") {
								t += `tolerantly.`;
							} else {
								t += `appreciatively.`;
							}
						}
						break;
					}
				} else if (_fuckSeed > 50) {
					if ((activeSlave.actualAge >= _partnerSlave.actualAge + 10) && canTalk(_partnerSlave) && canHear(activeSlave)) {
						t += `tidying up their room together. ${partnerName} is chattering about ${his2} day, while ${name} listens quietly, smiling fondly at ${his} ${activeSlaveRel}'s prattle.`;
					} else if ((_partnerSlave.actualAge >= activeSlave.actualAge + 10) && canTalk(activeSlave) && canHear(_partnerSlave)) {
						t += `tidying up their room together. ${name} is chattering about ${his} day, while ${partnerName} listens quietly, smiling fondly at ${his2} ${activeSlaveRel}'s prattle.`;
					} else if (activeSlave.amp !== 1 && !canTalk(activeSlave) && canSee(_partnerSlave)) {
						t += `getting ready for bed. ${name} is using gestures to tell ${his} ${activeSlaveRel} about ${his} day; ${partnerName} is very patient and does ${his2} best to follow.`;
					} else if (canTalk(activeSlave) && canTalk(_partnerSlave) && canHear(activeSlave) && canHear(_partnerSlave)) {
						t += `tidying up their room together. ${name} and ${partnerName} are chattering away over inconsequential things.`;
					} else if (canSee(activeSlave) && canSee(_partnerSlave) && activeSlave.amp !== 1 && _partnerSlave.amp !== 1) {
						t += `getting ready for bed. ${name} and ${partnerName} are rapidly gesturing to each other about their days.`;
					} else {
						t += `getting ready for bed. ${name} and ${his} ${activeSlaveRel}, ${partnerName}, are leaning against one another, just enjoying each other's warmth.`;
					}
				} else if (_fuckSeed > 25) {
					t += `using some of their free time to `;
					if (!canWalk(activeSlave) && canWalk(_partnerSlave)) {
						if (canSee(activeSlave) && canSee(_partnerSlave)) {
							t += `watch the weather; ${partnerName} helped ${his2} ${activeSlaveRel} to a window so ${he} could look out with ${him2}.`;
						} else {
							t += `get some fresh air; ${partnerName} helped ${his2} ${activeSlaveRel} to a balcony so ${he} could enjoy the breeze with ${him2}.`;
						}
					} else if (!canWalk(_partnerSlave) && canWalk(activeSlave)) {
						if (canSee(activeSlave) && canSee(_partnerSlave)) {
							t += `watch the weather; ${name} helped ${his} ${activeSlaveRel} to a window so ${he2} could look out with ${him}.`;
						} else {
							t += `get some fresh air; ${name} helped ${his} ${activeSlaveRel} to a balcony so ${he2} could enjoy the breeze with ${him}.`;
						}
					} else {
						t += `rest on one of the penthouse balconies and enjoy the weather.`;
					}
				} else {
					if (V.cockFeeder === 1) {
						t += `taking in a meal together; they've chosen dispensers next to each other and are slurping away.`;
					} else if (V.suppository === 1) {
						t += `taking their drugs together; they've chosen fuckmachines next to each other and are `;
						if (canTalk(activeSlave) && canTalk(_partnerSlave) && canHear(activeSlave) && canHear(_partnerSlave)) {
							t += `chatting quietly as they're sodomized.`;
						} else {
							t += `enjoying their mutual sodomy.`;
						}
					} else {
						t += `eating a quiet meal together.`;
					}
				}
			}
			/* CLOSE SEXY/CUDDLE/TOGETHER TIME */

			V.target = "FRelation";
		} else {
			t += ` Lover not found!`;
		}
		return t;
};

window.relatedSlave = function(activeSlave) {
	const V = State.variables;
	const pronouns = getPronouns(activeSlave);
	const he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun;
	const He = capFirstChar(he), His = capFirstChar(his);
	let t = "";
	let partnerSlave;

	let fuckseed = jsRandom(1,100);

	if (V.partner === "relation") {
		if (V.familyTesting === 1) {
			partnerSlave = V.relation;
		} else {
			partnerSlave = getSlave(activeSlave.relationTarget);
		}
	} else {
		var activeSlaveRel = relationshipTerm(activeSlave);
		partnerSlave = getSlave(activeSlave.relationshipTarget);
	}

	if (partnerSlave !== undefined) { /* potential problem point */

		t += ` ${His} `;
		if (V.partner === "relation") {
			if (V.familyTesting === 1) {
				t += `${V.relationType} `;
			} else {
				t += `${partnerSlave.relation} `;
			}
		} else {
			t += `${activeSlaveRel} `;
		}
		t += `${partnerSlave.slaveName} `;
		t += walkPasts(partnerSlave, fuckseed);

		V.target = "FRelation"; /*potentially removed later*/
	} else {
		t += ` Expected partner not found!`;
	}

	return t;
};

window.walkPasts = function(slave, _seed) {

	/* will be moved up once this becomes a single, contained function. */
	const V = State.variables;
	const pronouns = getPronouns(slave);
	const he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun;
	const He = capFirstChar(he), His = capFirstChar(his);
	let _target = "";
	let t = "";
	let race = (V.seeRace ? slave.race : "");

	switch (slave.assignment) {
	case "be your agent":
		t += `is shaping society in ${his} assigned arcology.`;
		break;
	case "live with your agent":
		t += `is helping ${his} lover shape society in ${his} assigned arcology.`;
		break;
	case "work in the dairy":
		if (V.dairyRestraintsSetting > 1) {
			t += `is strapped to a milking machine in ${V.dairyName}, `;
			if (slave.ovaries === 1 && V.dairyPregSetting > 0 && jsRandom(1,2) === 2) {
				if (isFertile(slave)) {
					t += `and is wincing in pain as the machine forces another load of cum into ${his} womb. As you watch, ${his} ${race} stomach steadily swells with baby batter.`;
				} else {
					t += `giving you a good view of ${his} ${race} body and heavy belly on the feeds.`;
				}
			} else if (slave.lactation > 0) {
				if (slave.balls > 0 && jsRandom(1,2) === 1) {
					if (slave.dick > 0) {
						if (_seed > 50) {
							t += `and is having ${his} cock sucked dry. As you watch, `;
							if (slave.scrotum) {
								t += `${his} balls tighten `;
							} else {
								t += `${he} begins to thrust harder `;
							}
							if (V.dairyStimulatorsSetting > 0) {
								t += `as the phallus up ${his} butt `;
							} else {
								t += `as the suction to ${his} dick `;
							}
							t += `forces ${him} closer to yet another ejaculation.`;
						} else {
							t += `and is wincing in pain as the machine sucks ${his} sore cock, but you have a good view of ${his} ${race} body on the feeds.`;
						}
					} else {
						if (_seed > 50) {
							t += `and is having ${his} balls sucked dry. As you watch, `;
							if (slave.scrotum) {
								t += `${his} scrotum tightens `;
							} else {
								t += `${he} begins to thrust harder `;
							}
							if (V.dairyStimulatorsSetting) {
								t += `as the phallus up ${his} butt `;
							} else {
								t += `as the suction against ${his} crotch `;
							}
							t += `forces ${him} closer to yet another leaking ejaculation.`;
						} else {
							t += `and is wincing in pain as the machine sucks ${his} empty balls, but you have a good view of ${his} ${race} body on the feeds.`;
						}
					}
				} else {
					if (_seed > 50) {
						t += `and is having ${his} tits drained, but you have a good view of ${his} ${race} body on the feeds.`;
					} else {
						t += `and is recovering after having ${his} tits sucked dry, but you have a good view of ${his} ${race} body on the feeds.`;
					}
				}
			} else if (slave.balls > 0) {
				if (slave.dick > 0) {
					if (_seed > 50) {
						t += `and is having ${his} cock sucked dry. As you watch, `;
						if (slave.scrotum) {
							t += `${his} balls tighten `;
						} else {
							t += `${he} begins to thrust harder `;
						}
						if (V.dairyStimulatorsSetting > 0) {
							t += `as the phallus up ${his} butt `;
						} else {
							t += `as the suction to ${his} dick `;
						}
						t += `forces ${him} closer to yet another ejaculation.`;
					} else {
						t += `and is wincing in pain as the machine sucks ${his} sore cock, but you have a good view of ${his} ${race} body on the feeds.`;
					}
				} else {
					if (_seed > 50) {
						t += `and is having ${his} balls sucked dry. As you watch, `;
						if (slave.scrotum) {
							t += `${his} scrotum tightens `;
						} else {
							t += `${he} begins to thrust harder `;
						}
						if (V.dairyStimulatorsSetting) {
							t += `as the phallus up ${his} butt `;
						} else {
							t += `as the suction against ${his} crotch `;
						}
						t += `forces ${him} closer to yet another leaking ejaculation.`;
					} else {
						t += `and is wincing in pain as the machine sucks ${his} empty balls, but you have a good view of ${his} ${race} body on the feeds.`;
					}
				}
			} else {
				t += `and is massaging ${his} sore, milkless tits, but you have a good view of ${his} ${race} body on the feeds.`;
			}
		} else {
			t += `is working in ${V.dairyName}, `;
			if (slave.lactation > 0) {
				if (slave.balls > 0 && jsRandom(1,2) === 1) {
					if (slave.dick > 0) {
						if (_seed > 50) {
							t += `and is having ${his} cock milked. As you watch, `;
							if (slave.scrotum) {
								t += `${his} balls tighten `;
							} else {
								t += `${he} begins to thrust harder `;
							}
							if (V.dairyStimulatorsSetting > 0) {
								t += `as the phallus up ${his} butt `;
							} else {
								t += `as the suction to ${his} dick `;
							}
							t += `brings ${him} closer to a copious ejaculation.`;
						} else {
							t += `and is massaging ${his} sore swollen cock, but you have a good view of ${his} ${race} body on the feeds.`;
						}
					} else {
						if (_seed > 50) {
							t += `and is having ${his} balls drained. As you watch, `;
							if (slave.scrotum) {
								t += `${his} scrotum tightens `;
							} else {
								t += `${he} begins to thrust harder `;
							}
							if (V.dairyStimulatorsSetting) {
								t += `as the phallus up ${his} butt `;
							} else {
								t += `as the suction against ${his} crotch `;
							}
							t += `brings ${him} closer to a copious squirting.`;
						} else {
							t += `and is massaging ${his} aching balls, but you have a good view of ${his} ${race} body on the feeds.`;
						}
					}
				} else {
					if (_seed > 50) {
						t += `and is having ${his} tits milked, but you have a good view of ${his} ${race} body on the feeds.`;
					} else {
						t += `and is massaging ${his} sore tits, but you have a good view of ${his} ${race} body on the feeds.`;
					}
				}
			} else if (slave.balls > 0) {
				if (slave.dick > 0) {
					if (_seed > 50) {
						t += `and is having ${his} cock milked. As you watch, `;
						if (slave.scrotum) {
							t += `${his} balls tighten `;
						} else {
							t += `${he} begins to thrust harder `;
						}
						if (V.dairyStimulatorsSetting) {
							t += `as the phallus up ${his} butt `;
						} else {
							t += `as the suction to ${his} dick `;
						}
						t += `brings ${him} closer to a copious ejaculation.`;
					} else {
						t += `and is massaging ${his} sore swollen cock, but you have a good view of ${his} ${race} body on the feeds.`;
					}
				} else {
					if (_seed > 50) {
						t += `and is having ${his} balls drained. As you watch, `;
						if (slave.scrotum) {
							t += `${his} scrotum tightens `;
						} else {
							t += `${he} begins to thrust harder `;
						}
						if (V.dairyStimulatorsSetting) {
							t += `as the phallus up ${his} butt `;
						} else {
							t += `as the suction against ${his} crotch `;
						}
						t += `brings ${him} closer to a copious squirting.`;
					} else {
						t += `and is massaging ${his} aching balls, but you have a good view of ${his} ${race} body on the feeds.`;
					}
				}
			} else {
				t += `and is massaging ${his} sore, milkless tits, but you have a good view of ${his} ${race} body on the feeds.`;
			}
		}
		break;
	case "work in the brothel":
		t += `is working in ${V.brothelName}, and is `;
		if (Beauty(slave) > 100 && jsRandom(1,2) === 1) {
			if (_seed > 80) {
				if (canDoAnal(slave) || canDoVaginal(slave)) {
					t += `riding one customer's dick while ${he} gives another a blowjob.`;
				} else {
					t += `deep throating a pair of customer's dicks.`;
				}
			} else if (_seed > 60 && slave.amp !== 1) {
				t += `sucking one customer's cock while giving another a handjob.`;
			} else if (_seed > 40) {
				t += `eating out one customer's cunt while another `;
				if (canDoAnal(slave) || canDoVaginal(slave)) {
					t += `uses a strap-on on ${him}.`;
				} else {
					t += `teases ${his} butt.`;
				}
			} else if (_seed > 20) {
				if (canDoAnal(slave) || canDoVaginal(slave)) {
					t += `getting pounded by `;
				} else {
					t += `amusing `;
				}
				t += `two women wearing strap-ons.`;
			} else {
				if (canDoAnal(slave) || canDoVaginal(slave)) {
					t += `being double penetrated by `;
				} else {
					t += `using ${his} body to please `;
				}
				t += `a pair of customers.`;
			}
		} else if (_seed > 80) {
			if (canDoAnal(slave) || canDoVaginal(slave)) {
				t += `pleasing `;
			} else {
				t += `riding `;
			}
			t += `a customer's dick.`;
		} else if (_seed > 60) {
			t += `sucking a customer's cock.`;
		} else if (_seed > 40) {
			t += `pleasuring a customer's cunt.`;
		} else if (_seed > 20) {
			t += `getting pounded by a woman wearing a strap-on.`;
		} else {
			t += `being held down and `;
			if (canDoAnal(slave)) {
				t += `buttfucked `;
			} else {
				t += `raped `;
			}
			t += `by a customer.`;
		}
		t += ` You have a voyeuristic view of ${his} ${race} body on the feeds.`;
		break;
	case "serve in the club":
		t += `is working in ${V.clubName}, `;
		if (_seed > 50) {
			t += `displaying ${his} ${race} body, keeping citizens company, and flirting with anyone who shows interest.`;
		} else {
			t += `or rather just off it, having taken a prominent citizen back to a discreet room so he can use ${his} ${race} body.`;
		}
		break;
	case "work as a servant":
		if (_seed > 50) {
			t += `was scrubbing the penthouse floor, until another slave requested oral service.`;
		} else {
			t += `is scrubbing the penthouse floor.`;
		}
		break;
	case "serve in the master suite":
		if (slave.fuckdoll > 0) {
			t += `waiting for use in ${V.masterSuiteName}, next to a display case full of other sex toys.`;
		} else if (V.masterSuiteUpgradeLuxury === 1) {
			if (_seed > 50) {
				t += `is sitting on the big bed in ${V.masterSuiteName}, awaiting your return.`;
			} else {
				t += `is beautifying ${himself} in ${V.masterSuiteName} so ${he}'ll be pretty when you return.`;
			}
		} else if (V.masterSuiteUpgradeLuxury === 2) {
			t += `is in ${V.masterSuiteName}'s fuckpit, `;
			if (_seed > 80) {
				t += `with a pair of ${his} fellow fucktoys industriously sucking on ${his} nipples.`;
			} else if (_seed > 60) {
				if ((slave.anus > 0 && canDoAnal(slave)) || (slave.vagina > 0 && canDoVaginal(slave))) {
					t += `taking double penetration from `;
				} else {
					t += `being spitroasted by `;
				}
				t += `a pair of ${his} fellow fucktoys.`;
			} else if (_seed > 40) {
				if (canPenetrate(slave)) {
					t += `with ${his} dick inside `;
				} else if (slave.dick > 0 && slave.chastityPenis !== 1) {
					t += `getting ${his} soft dick sucked by `;
				} else if (canDoVaginal(slave) || canDoAnal(slave)) {
					t += `getting eaten out by `;
				} else {
					t += `making out with `;
				}
				t += `a fellow fucktoy.`;
			} else if (_seed > 20) {
				if (slave.vagina > 0 && canDoVaginal(slave)) {
					t += `getting pounded `;
				} else if (slave.anus > 0 && canDoAnal(slave)) {
					t += `getting ${his} ass pounded `;
				} else if (canDoVaginal(slave) || canDoAnal(slave)) {
					t += `getting eaten out `;
				} else {
					t += `getting deepthroated `;
				}
				t += `by a fellow fucktoy.`;
			} else {
				t += `performing oral sex on a fellow fucktoy.`;
			}
		} else {
			if (slave.energy > 95) {
				t += `is having enthusiastic sex with your other pets while waiting for you to ravish ${him}.`;
			} else {
				t += `is having idle sex with several of your other toys while they await your pleasure.`;
				if (slave.fetishKnown === 1) {
					switch (slave.fetish) {
					case "buttslut":
						if (canDoAnal(slave) && slave.anus > 0) {
							t += `${He}'s happily taking a strap-on up ${his} asspussy.`;
						} else {
							t += `${He}'s happily got another slave between ${his} buttcheeks.`;
						}
						break;
					case "cumslut":
						t += `${He}'s happily performing oral on another slave.`;
						break;
					case "dom":
						t += `${He}'s pinning another slave down while ${he} fucks her.`;
						break;
					case "submissive":
						t += `${He}'s letting another slave have her way with ${him}.`;
						break;
					case "sadist":
						if (slave.amp !== 1) {
							t += `${He}'s spanking another slave with one hand and fingering her with the other.`;
						} else {
							t += `${He}'s painfully teasing another slave's nipple with ${his} teeth.`;
						}
						break;
					case "masochist":
						t += `Another slave is spanking ${him} while molesting everything she can.`;
						break;
					case "boobs":
						t += `${He} has a slave sucking on each of ${his} nipples`;
						if (slave.amp !== 1) {
							t += ` while ${he} gives each a handjob.`;
						} else {
							t += `.`;
						}
						break;
					case "pregnancy":
						if (slave.belly >= 5000) {
							t += `${He}'s sighing contentedly as ${his} rounded belly is sensually rubbed.`;
						} else if (canPenetrate(slave)) {
							t += `${He}'s happily roleplaying impregnating the slave ${he}'s fucking.`;
						} else if ((slave.anus > 0 && canDoAnal(slave)) || (slave.vagina > 0 && canDoVaginal(slave))) {
							t += `${He}'s happily roleplaying conceiving a child as ${he} gets fucked.`;
						} else {
							t += `${He}'s happily roleplaying being hugely pregnant.`;
						}
					}
				}
			}
		}
		break;
	/*
	case "guard you":
		t += `is standing discreetly behind your left shoulder, watching for threats.`;
		break
	*/
	case "stay confined":
		t += `is confined, but you have a fine view of ${his} ${race} body on the feed from ${his} cell.`;
		break;
	case "be confined in the cellblock":
		t += `is confined in ${V.cellblockName}, but you have a fine view of ${his} ${race} body on the feed from ${his} cell.`;
		break;
	case "be confined in the arcade":
	case "work a glory hole":
		t += `is confined in `;
		if (slave.assignment === "be confined in the arcade") {
			t += `${V.arcadeName}; `;
		} else {
			t += `a glory hole; `;
		}
		if (_seed > 80 && (canDoAnal(slave) || canDoVaginal(slave))) {
			t += `${his} ass is held out at cock height, and a customer is using ${his} fuckhole.`;
		} else if (_seed > 60) {
			t += `${his} mouth is held open at cock height, and a customer is fucking ${his} throat.`;
		} else if (_seed > 40) {
			t += `a woman is abusing ${him} with a couple of dildos.`;
		} else if (_seed > 20 && canDoAnal(slave)) {
			t += `a customer is harshly using ${his} defenseless anus.`;
		} else {
			t += `a customer is cruelly spanking ${his} helpless butt.`;
		}
		break;
	case "be the Madam":
		t += `is managing ${V.brothelName}: ${he} is making sure all the customers are satisfied and all the whores are working hard.`;
		break;
	case "be your Concubine":
		if (jsRandom(1,2) === 1) {
			t += `is looking after ${himself}; ${he} spends many hours every day on ${his} beauty regimen.`;
		} else {
			t += `is checking over the appearance of your harem, making sure everyone looks perfect.`;
		}
		break;
	case "be the Wardeness":
		t += `is looking after the cells: ${he} is `;
		if (_seed > 50) {
			t += `forcing a resistant slave to orally service ${him}.`;
		} else {
			t += `beating a rebellious slave across the buttocks.`;
		}
		break;
	case "live with your Head Girl":
		if (V.HeadGirl !== 0) {
			t += `is getting the Head Girl's suite cleaned up while ${V.HeadGirl.slaveName} is out working.`;
		} else {
			t += `is making sure the Head Girl's suite is in order for your next Head Girl.`;
		}
		break;
	case "be the Stewardess":
		t += `is managing the house servants in ${V.servantsQuartersName}: ${he} overseeing the laboring house slaves and punishing any that step out of line.`;
		break;
	case "be the Schoolteacher":
		t += `is teaching classes in ${V.schoolroomName}: ${he} is leading the slave students in rote recitation.`;
		break;
	case "be the Attendant":
		t += `is seeing to girls in ${V.spaName}: ${he} is gently soaping an exhausted slave.`;
		break;
	case "be the DJ":
		if (_seed > 50) {
			t += `is right where ${he} belongs, in the DJ booth in ${V.clubName} ${he} leads. ${He}'s bouncing in time with the beat to show off ${his} `;
			if (slave.boobs > 300) {
				t += `tits.`;
			} else {
				t += `goods.`;
			}
		} else {
			t += `is taking the lead on ${V.clubName}'s floor: ${he} greets new arrivals, flirts with them prettily, and subtly guides them towards choice sluts.`;
		}
		break;
	case "be the Milkmaid":
		t += `is working in ${V.dairyName}, looking after your stock.`;
		break;
	default: /* WALKPASTS START HERE */
		if (slave.heels === 1 && !["flats", "none"].includes(slave.shoes)) {
			t += `walks past your desk with the tiny swaying steps ${he} must take in order to walk on ${his} surgically altered legs. ${He} is on ${his} way to `;
		} else if (["heels", "pumps"].includes(slave.shoes)) {
			t += `walks past your desk with the swaying steps ${he} must take in ${his} high heels. ${He} is on ${his} way to `;
		} else if (slave.shoes === "boots") {
			t += `walks past your desk with the confident gait encouraged by ${his} high heeled boots. ${He} is on ${his} way to `;
		} else if (slave.shoes === "extreme heels") {
			t += `walks past your desk with the tiny swaying steps ${he} must take in ${his} ridiculous heels. ${He} is on ${his} way to `;
		} else if (slave.heels === 1) {
			t += `crawls past your desk on all fours, since ${he} has not been allowed the heels ${he} needs to walk upright. ${He} is on ${his} way to `;
		} else if (slave.amp === 1) {
			t += `is carried past your desk by one of your other slaves. ${He} is on ${his} way to `;
		} else if (!canWalk(slave)) {
			t += `is helped past your desk by one of your other slaves. ${He} is on ${his} way to `;
		} else {
			t += `walks past your desk on ${his} way to `;
		}
		if (slave.inflation > 0 && jsRandom(1,100) > 70) {
			if (slave.inflationMethod === 1) {
				t += `gorge ${himself} with ${slave.inflationType}; `;
			} else if (slave.inflationMethod === 2) {
				t += `fill ${his} rear with `;
				switch (slave.inflationType) {
				case "water":
				case "milk":
				case "cum":
				case "food":
					t += `${slave.inflationType}; `;
					break;
				default:
					t += `${slave.inflationType}s; `;
					break;
				}
			} else if (slave.inflationMethod === 3) {
				if (slave.inflationType === "milk") {
					t += `suckle from ${his} assigned nipple until ${he} is sufficiently filled with milk; `;
				} else {
					t += `suck ${his} assigned dick until ${he} is sufficiently filled with cum; `;
				}
			}
		} else {
			switch (slave.assignment) {
			case "rest":
				if (_seed > 50) {
					t += `bed; `;
				} else {
					t += `eat; `;
				}
				break;
			case "get milked":
				if (_seed > 50) {
					if (slave.lactation) {
						t += `milk ${his} overfull ${race} tits; `;
					} else {
						t += `empty ${his} aching balls; `;
					}
				} else {
					if (slave.lactation) {
						t += `drain ${his} milky ${race} udders; `;
					} else {
						t += `relieve ${his} heavy balls; `;
					}
				}
				break;
			case "whore":
				if (_seed > 50) {
					t += `sell ${his} ${race} body; `;
				} else {
					t += `ply ${his} trade as a whore; `;
				}
				break;
			case "serve the public":
				if (_seed > 50) {
					t += `serve the public; `;
				} else {
					t += `be a public slut; `;
				}
				break;
			case "rest in the spa":
				t += `relax in ${V.spaName}; `;
				break;
			case "please you":
				t += `wait next to you and wait for you to fuck ${him}; `;
				break;
			case "be a subordinate slave":
				t += `service your other slaves; `;
				break;
			case "be a servant":
				t += `clean up after your other slaves; `;
				break;
			case "learn in the schoolroom":
				t += `attend classes `;
				if (V.Schoolteacher === 0) {
					t += `in ${V.schoolroomName}; `;
				} else {
					t += `under ${V.Schoolteacher.slaveName}, perhaps literally; `;
				}
				break;
			case "be the Attendant":
				t += `look after the slaves in ${V.spaName}; `;
				break;
			case "take classes":
				t += `attend classes with ${V.assistantName}; `;
				break;
			case "be your Head Girl":
				t += `oversee your other slaves; `;
				break;
			case "recruit girls":
				t += `use ${his} connections to recruit slaves; `;
				break;
			default:
				t += `${slave.assignment}; `;
				break;
			}
		} /* end inflation blurb */
		if (slave.fetish === "mindbroken") {
			t += `${he} does not even glance at you as ${he} goes mindlessly to ${his} next task.`;
		} else if (slave.devotion < -50) {
			t += `${he} directs a look of pure hatred at where you sit as ${he} passes.`;
		} else if (slave.devotion < -20) {
			t += `${he} cannot keep the loathing from ${his} face as ${he} passes.`;
		} else if (slave.devotion <= 20) {
			t += `${he} passes quickly, obviously hoping to avoid you.`;
		} else if (slave.devotion <= 50) {
			t += `${he} rushes by, hurrying to ${his} next task.`;
		} else {
			t += `as ${he} passes ${he} gives you a look of adoration.`;
		}
		break;
	}
	return t;
};

window.boobWatch = function(slave) {

	/* will be moved up once this becomes a single, contained function. */
	let t = "";
	let V = State.variables;

	let pronouns = getPronouns(slave);
	let he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun;
	let He = capFirstChar(he), His = capFirstChar(his);

	let breasts = (slave.boobs < 300) ? `flat chest` : `breasts`;

	t += `<<BoobsDescription>> `;
	switch (slave.clothes) {
		case "uncomfortable straps":
			if (slave.boobs < 300) {
				t += `The rings constantly rub against ${his} chest and force ${his} nipples to stick out.`;
			} else {
				t += `The strap over ${his} tits presses the soft flesh, and the ring around each nipple `;
				if (slave.nipples === "fuckable") {
					t += `forces them open.`;
				} else {
					t += `forces them to stick out.`;
				}
			}
			break;
		case "shibari ropes":
			t += `The ropes binding ${his} chest `;
			if (slave.boobs < 300) {
				t += `shift slightly with every step, since ${he} lacks any breasts to hold them in place.`;
			} else {
				t += `dig into the soft flesh as ${he} moves.`;
			}
			break;
		case "attractive lingerie for a pregnant women":
			if (slave.boobs < 300) {
				t += `The bulge of ${his} ${slave.nipples} nipples can be seen under the taut silk.`;
			} else {
				t += `${His} silken bra causes ${his} breasts to bulge around them.`;
			}
			break;
		case "a maternity dress":
			t += `${His} low cut dress `;
			if (slave.boobs < 300) {
				t += `was made with breasts in mind; every stop ${he} takes risks it sliding down and revealing ${his} ${slave.nipples} nipples.`;
			} else {
				t += `shows ample cleavage and is made to be easy to pull down.`;
			}
			break;
		case "stretch pants and a crop-top":
			if (slave.boobs < 300) {
				t += `${His} flat chest makes the perfect canvas to read ${his} crop-top.`;
			} else {
				t += `${His} crop-top tightly clings to ${his} breasts and moves along with them. ${His} jiggling cleavage distracts from the writing on ${his} tits.`;
			}
			break;
		case "restrictive latex":
			if (slave.boobs < 300) {
				t += `${His} lack of breasts draws your eyes straight to ${his} exposed nipples.`;
			} else {
				t += `${His} tits stick out through ${his} latex outfit.`;
			}
			break;
		case "attractive lingerie":
			t += `${His} pretty white lace bra has thoughtful cuts that tastefully let ${his} nipples stick through.`;
			break;
		case "kitty lingerie":
			t += `${His} lingerie's cleavage window proudly displays ${his} `;
			if (slave.boobs < 300) {
				t += `flat chest.`;
			} else {
				t += `ample valley.`;
			}
			break;
		case "a succubus outfit":
			t += `${His} succubus outfit presents this sex demon's ${breasts}, inviting a damning fondle.`;
			break;
		case "a slutty maid outfit":
			t += `${His} maid outfit covers ${his} ${breasts} with a thin white blouse designed to be easy to pull down.`;
			break;
		case "a nice maid outfit":
			t += `${His} maid outfit covers ${his} ${breasts} demurely, offering the diverting task of pulling it off ${him}.`;
			break;
		case "a monokini":
			t += `The straps of ${his} monokini cross in the center of ${his} chest, leaving the rest of ${his} ${breasts} naked.`;
			break;
		case "a cybersuit":
			t += `${His} bodysuit is tight enough to show off `;
			if (slave.boobs < 300) {
				t += `just how flat ${he} is.`;
			} else {
				t += `every contour of ${his} chest.`;
			}
			break;
		case "a string bikini":
			t += `${His} string bikini covers only ${his} nipples, leaving the remainder of ${his} ${breasts} naked.`;
			break;
		case "a scalemail bikini":
			t += `${His} scalemail bikini covers `;
			if (slave.boobs < 300) {
				t += `all of ${his} flat chest.`;
			} else if (slave.boobs < 700) {
				t += `${his} breasts entirely.`;
			} else if (slave.boobs < 1500) {
				t += `much of ${his} breasts, while still emphasizing them.`;
			} else {
				t += `the front of ${his} breasts.`;
			}
			break;
		case "striped panties":
			t += `${His} cute panties covers only ${his} crotch, leaving ${his} ${breasts} bare.`;
			break;
		case "clubslut netting":
			t += `As ${he} moves, the weave of the netting over ${his} chest slips back and forth across ${his} nipples.`;
			break;
		case "a cheerleader outfit":
			t += `As ${he} moves, `;
			if (slave.boobs < 300) {
				t += `the tight fabric rubs across ${his} obvious nipples.`;
			} else {
				t += `${his} chest threatens to fall out of ${his} cheerleader top.`;
			}
			break;
		case "an apron":
			t += `As ${he} moves, ${his} apron `;
			if (slave.boobs < 300) {
				t += `threatens to bounce off ${his} flat chest and expose ${his} nipples.`;
			} else {
				t += `provides excellent views of the sides of ${his} breasts.`;
			}
			break;
		case "overalls":
			t += `As ${he} moves, ${his} overalls `;
			if (slave.boobs < 300) {
				t += `threaten to slide off ${his} flat chest and expose ${his} nipples.`;
			} else {
				t += `provide excellent views of the sides of ${his} breasts.`;
			}
			break;
		case "cutoffs and a t-shirt":
			if (slave.boobs < 300) {
				t += `${His} non-existent breasts are bare under ${his} t-shirt; not that you can really tell since they lack motion completely.`;
			} else {
				t += `${His} tits are bare under ${his} t-shirt, so movement gives delicious hints of their motion.`;
			}
			break;
		case "spats and a tank top":
			if (slave.boobs < 300) {
				t += `${His} flat chest makes ${his} form-fitting tank top look as if it's clinging to a tube.`;
			} else {
				t += `${His} breasts bounce slightly under ${his} tank top as ${he} moves.`;
			}
			break;
		case "a slutty outfit":
			t += `For today's slutty outfit ${he}'s chosen a `;
			if (jsRandom(1,100) > 50) {
				t += `handkerchief top that occasionally comes untied and `;
				if (slave.boobs < 300) {
					t += `reveals ${his} flat chest.`;
				} else {
					t += `spills ${his} breasts out naked.`;
				}
			} else {
				t += `halter top cut so low that `;
				if (slave.boobs < 300) {
					t += `it occasionally slips down ${his} flat chest to reveal a nipple.`;
				} else {
					t += `${his} breasts occasionally pop out.`;
				}
			}
			break;
		case "a slave gown":
			t += `${His} gorgeous dress has thoughtful cuts that tastefully bares ${his} ${(slave.boobs < 300) ? 'non-existent ' : ''}breasts.`;
			break;
		case "slutty business attire":
			t += `${His} suit jacket and blouse are low enough to show off a lot of `;
			if (slave.boobs < 300) {
				t += `boob, or they would, had ${he} had any.`;
			} else {
				t += `boob.`;
			}
			break;
		case "nice business attire":
			t += `${His} suit jacket and blouse are businesslike, but they could be removed easily enough.`;
			break;
		case "a halter top dress":
			t += `${His} beautiful halter top dress almost seems to be sculpted around ${his} body.`;
			break;
		case "a ball gown":
			t += `${His} fabulous silken ball gown is tailored to accentuate the shape of ${his} ${breasts}.`;
			break;
		case "a slutty nurse outfit":
			t += `${His} jacket presents ${his} ${(slave.boobs < 300) ? 'nipples' : 'breasts'} to be ogled.`;
			break;
		case "a schoolgirl outfit":
			t += `${His} blouse lewdly displays ${his} `;
			if (slave.boobs < 300) {
				t += `${slave.nipples} nipples.`;
			} else {
				t += `breasts.`;
			}
			break;
		case "a kimono":
			t += `${His} kimono is clearly designed to accentuate ${his} ${breasts}.`;
			break;
		case "a hijab and abaya":
		case "a niqab and abaya":
			t += `${His} abaya covers ${his} ${breasts} totally.`;
			break;
		case "a thong":
		case "a skimpy loincloth":
		case "boyshorts":
		case "cutoffs":
		case "panties":
		case "leather pants":
		case "jeans":
		case "sport shorts":
			t += `Since ${he}'s wearing nothing but ${slave.clothing}, ${his} ${(slave.boobs < 300) ? 'non-existent ' : ''}breasts are delightfully naked.`;
			break;
		case "a hijab and blouse":
			t += `${His} blouse and overshirt keep ${his} ${breasts} concealed.`;
			break;
		case "a huipil":
			t += `${His} huipil `;
			if (slave.boobs < 300) {
				t += `daintily covers ${his} ${slave.nipples} nipples and flat chest.`;
			} else {
				t += `hugs the curves of ${his} breasts.`;
			}
			break;
		case "battledress":
			if (slave.boobs < 300) {
				t += `As ${he} moves, you can occasionally spot ${his} lack of undergarments.`;
			} else {
				t += `${His} tank top and sports bra support rather than flatter ${his} breasts.`;
			}
			break;
		case "a fallen nuns habit":
			t += `${His} slutty nun outfit leaves ${his} ${(slave.boobs < 300) ? 'flat ' : ''}tits sinfully bare.`;
			break;
		case "a chattel habit":
			t += `${His} chattel habit leaves ${his} ${(slave.boobs < 300) ? 'flat ' : ''}tits virtuously bare.`;
			break;
		case "a penitent nuns habit":
			t += `${His} habit chafes ${his} nipples so harshly that it would probably be a relief to ${him} to have it stripped off ${him}.`;
			break;
		case "a comfortable bodysuit":
			t += `${His} bodysuit is tight enough to show off `;
			if (slave.boobs < 300) {
				t += `just how flat ${he} is.`;
			} else {
				t += `every contour of ${his} chest.`;
			}
			break;
		case "a latex catsuit":
			t += `${His} latex catsuit is tight enough to show off `;
			if (slave.boobs < 300) {
				t += `just how flat ${he} is.`;
			} else {
				t += `every contour of ${his} chest.`;
			}
			break;
		case "a military uniform":
		case "a police uniform":
		case "a schutzstaffel uniform":
		case "a mounty outfit":
		case "a red army uniform":
			t += `${His} uniform tunic and shirt are formal, but they could be removed easily enough.`;
			break;
		case "battlearmor":
			t += `${His} battlearmor will take some considerable effort to get out of.`;
			break;
		case "a nice nurse outfit":
			t += `${His} nurse's outfit is functional, but they could be removed easily enough.`;
			break;
		case "a mini dress":
			t += `${His} mini dress is tight enough to show off `;
			if (slave.boobs < 300) {
				t += `just how flat ${he} is.`;
			} else {
				t += `every contour of ${his} chest.`;
			}
			break;
		case "a leotard":
			if (slave.boobs < 300) {
				t += `${His} leotard draws the eye straight to ${his} obvious nipples, since it lacks anything else to show off.`;
			} else {
				t += `${His} leotard is tight enough that it not only hugs ${his} breasts, but shows off ${his} nipples as well.`;
			}
			break;
		case "a bunny outfit":
			if (slave.boobs < 300) {
				t += `With no breasts to speak of, ${his} strapless corset teddy manages to look rather slutty.`;
			} else {
				t += `${His} strapless corset teddy presents ${his} boobs while still managing to look a bit classy.`;
			}
			break;
		case "harem gauze":
			t += `${His} ${(slave.boobs < 300) ? 'non-existent ' : ''}breasts are clearly visible through the thin gauze that covers them.`;
			break;
		case "slutty jewelry":
			if (slave.boobs < 300) {
				t += `The light chain across ${his} non-existent breasts is the only thing on ${his} chest capable of moving separately from ${him}.`;
			} else {
				t += `The light chain under ${his} breasts accentuates their natural movement.`;
			}
			break;

		//needs improvement
		case "a klan robe":
			t += `${His} robe covers ${his} ${breasts} totally.`;
			break;
		case "a burqa":
			t += `${His} burqa covers ${his} ${breasts} totally.`;
			break;
		case "a tube top and thong":
		case "a tube top":
		case "leather pants and a tube top":
			t += `${His} tube top covers ${his} ${breasts} totally.`;
			break;
		case "a button-up shirt and panties":
		case "a button-up shirt":
		case "a t-shirt":
		case "a t-shirt and thong":
		case "an oversized t-shirt and boyshorts":
		case "an oversized t-shirt":
		case "a t-shirt and jeans":
		case "sport shorts and a t-shirt":
		case "a t-shirt and panties":
			t += `${His} shirt covers ${his} ${breasts} totally.`;
			break;
		case "a bra":
		case "a striped bra":
		case "striped underwear":
		case "a sports bra":
		case "sport shorts and a sports bra":
			t += `${His} bra covers ${his} ${breasts} totally.`;
			break;
		case "a tank-top":
		case "a tank-top and panties":
			t += `${His} tank-top covers ${his} ${breasts} totally.`;
			break;
		case "a sweater":
		case "a sweater and panties":
		case "a sweater and cutoffs":
			t += `${His} sweater covers ${his} ${breasts} totally.`;
			break;
		case "a slutty klan robe":
			t += `${His} robe partially covers ${his} ${breasts}.`;
			break;
		case "a nice pony outfit":
		case "a slutty pony outfit":
			t += `${His} pony outfit partially covers ${his} ${breasts}.`;
			break;
		case "leather pants and pasties":
		case "panties and pasties":
			t += `${His} pasties cover nothing more than ${his} nipples.`;
			break;
		case "a one-piece swimsuit":
			t += `${His} swimsuit is tight enough to show off `;
			if (slave.boobs < 300) {
				t += `just how flat ${he} is.`;
			} else {
				t += `every contour of ${his} chest.`;
			}
			break;
		case "a hanbok":
			t += `${His} hanbok covers ${his} ${breasts} totally.`;
			break;
		case "a gothic lolita dress":
			t += `${His} dress covers ${his} ${breasts} totally.`;
			break;
		case "a burkini":
			t += `${His} burkini clings to the shape of ${his} ${breasts}.`;
			break;
		case "a slutty schutzstaffel uniform":
			t += `${His} uniform tunic and shirt are formal, but they could be removed easily enough.`;
			break;
		case "a long qipao":
			t += `${His} elegant qipao can be removed with minimal effort.`;
			break;
		case "a dirndl":
			t += `${His} dirndl can be removed with minimal effort.`;
			break;
		case "lederhosen":
			t += `${His} lederhosen might come off faster than it takes to put them on.`;
			break;
		case "a biyelgee costume":
			t += `${His} costume could be removed with barely any effort.`;
			break;
		// ends needs work block

		case "no clothing":
			if (slave.chastityAnus === 1 || slave.chastityVagina === 1 || slave.chastityPenis === 1) {
				t += `Since ${he}'s wearing nothing but a chastity belt, ${his} ${(slave.boobs < 300) ? 'non-existent ' : ''}breasts are delightfully naked.`;
			} else {
				t += `${His} naked `;
				if (slave.boobs < 300) {
					t += `flat chest and exposed nipples`;
				} else {
					t += `breasts`;
				}
				t += ` catch your eye.`;
			}
			break;
		default: // for outfits with exposed breasts that aren't worth having a unique description for
			t += `${His} naked `;
			if (slave.boobs < 300) {
				t += `flat chest and exposed nipples`;
			} else {
				t += `breasts`;
			}
			t += ` catch your eye.`;
	}
	V.target = "FBoobs";
	return t;
};

window.buttWatch = function(slave) {

	/* will be moved up once this becomes a single, contained function. */
	let t = "";
	let V = State.variables;

	let pronouns = getPronouns(slave);
	let he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun;
	let He = capFirstChar(he), His = capFirstChar(his);

	V.target = "FButt";

	t += `<<ButtDescription>> `;
	switch (slave.clothes) {
		case "a Fuckdoll suit":
			t += `${His} suit is expressly designed to encourage use of ${his} rear hole.`;
			break;
		case "uncomfortable straps":
			t += `A strap passes between ${his} `;
			if (slave.amp !== 1 ) {
				t += `legs, giving ${his} gait an awkward sway.`;
			} else {
				t += `leg stumps, pressing against ${his} genitals.`;
			}
			break;
		case "shibari ropes":
			if (slave.amp !== 1 ) {
				t += `Ropes bind ${his} legs, giving ${his} gait an awkward sway.`;
			} else {
				t += `A rope passes between ${his} leg stumps, pressing against ${his} genitals.`;
			}
			break;
		case "attractive lingerie for a pregnant woman":
			t += `As ${he} moves, ${his} silken panties are very inviting.`;
			break;
		case "a maternity dress":
			t += `${His} dress covers ${his} rear, but it will lift easily enough.`;
			break;
		case "stretch pants and a crop-top":
			t += `${His} stretch pants tightly cling to ${his} rear as ${he} `;
			if (slave.butt > 10) {
				t += `moves. While the writing adorning it may catch your eye, the huge expanse of wobbling ass cleavage is far more distracting.`;
			} else {
				t += `moves; the writing on ${his} bottom gives you plenty of excuses to ogle it.`;
			}
			break;
		case "restrictive latex":
			t += `As some of the only islands in the sea of black latex, ${his} holes are eye-catching.`;
			break;
		case "a fallen nuns habit":
			t += `${His} slutty nun outfit invites sin.`;
			break;
		case "a chattel habit":
			t += `${His} chattel habit is designed for sex without being removed.`;
			break;
		case "a penitent nuns habit":
			t += `${His} habit chafes ${him} so cruelly that it would probably be a relief to ${him} to have it pulled off, even if ${he}'s roughly fucked afterward.`;
			break;
		case "kitty lingerie":
			t += `As ${he} moves, the strings of ${his} pretty kitty panties sway enticingly.`;
			break;
		case "attractive lingerie":
			t += `As ${he} moves, ${his} lingerie delightfully hugs ${his} rear.`;
			break;
		case "a succubus outfit":
			t += `${His} succubus outfit's tail holds ${his} skirt up high in back, inviting a damning fuck.`;
			break;
		case "a slutty maid outfit":
			t += `${His} maid's skirt is cut extremely short, so that the slightest movement reveals a glimpse of ${his} ass.`;
			break;
		case "a nice maid outfit":
			t += `${His} maid's skirt is cut conservatively, but will lift easily enough.`;
			break;
		case "a monokini":
			t += `${His} monokini contours to the size and shape of ${his} bottom.`;
			break;
		case "an apron":
			t += `${His} apron leaves ${his} buttocks totally exposed.`;
			break;
		case "overalls":
			t += `${His} overalls fit snugly on ${his} bottom.`;
			break;
		case "a cybersuit":
			t += `${His} bodysuit prominently displays the curves of ${his} butt.`;
			break;
		case "a string bikini":
			t += `As ${he} moves, ${his} string lingerie leaves the entire line of ${his} hips naked and enticing.`;
			break;
		case "a scalemail bikini":
			t += `As ${he} moves, ${his} scaly lingerie leaves almost the entire line of ${his} hips naked and enticing.`;
			break;
		case "striped panties":
		case "a button-up shirt and panties":
		case "a sweater and panties":
		case "a tank-top and panties":
		case "panties":
		case "a t-shirt and panties":
		case "panties and pasties":
		case "striped underwear":
			t += `${His} cute panties prominently display the curves of ${his} butt.`;
			break;
		case "boyshorts":
		case "an oversized t-shirt and boyshorts":
			t += `${His} boyshorts tightly cling to ${his} rear as ${he} `;
			if (slave.butt > 5) {
				t += `moves. It's filled out by so much ass you can't help but oggle.`;
			} else {
				t += `moves.`;
			}
			break;
		case "clubslut netting":
			t += `As ${he} moves, ${his} clubslut netting moves with ${him}, leaving nothing to the imagination.`;
			break;
		case "a cheerleader outfit":
			t += `As ${he} moves, ${his} pleated cheerleader bounces up and down flirtatiously.`;
			break;
		case "cutoffs and a t-shirt":
			t += `As ${he} moves, ${his} cutoffs hug ${his} butt.`;
			break;
		case "spats and a tank top":
			t += `${His} spats show off every curve of ${his} ass.`;
			break;
		case "a slutty outfit":
			t += `For today's slutty outfit ${he}'s chosen `;
			if (jsRandom(1,100) > 50 && slave.amp !== 1) {
				t += `yoga pants so sheer that everything ${he}'s got is clearly visible.`;
			} else {
				t += `a miniskirt so brief that ${his} ass is hanging out the back, and a glimpse of ${his} goods is occasionally visible from the front.`;
			}
			break;
		case "a slave gown":
			if (slave.amp === 1) {
				t += `${His} gorgeous dress is specially designed for ${his} limbless form, but without legs to support it, it can hardly conceal the outline of everything ${he} has.`;
			} else {
				t += `${His} gorgeous dress has a thoughtful cut that runs all the way from ${his} ankle to over ${his} hip, baring a leg all the way up.`;
			}
			break;

		case "a halter top dress":
			t += `${His} beautiful halter top dress seems to be sculpted around ${his} bottom.`;
			break;
		case "a ball gown":
			t += `${His} fabulous silken ball gown is tailored to fit ${him} and accentuates the shape of ${his} butt.`;
			break;
		case "a slutty nurse outfit":
			t += `${His} tight skirt flatters ${his} ass.`;
			break;
		case "a schoolgirl outfit":
			if (slave.anus === 0) {
				t += `This schoolgirl clearly needs to lose ${his} anal virginity.`;
			} else if (slave.vagina === 0) {
				t += `This schoolgirl clearly takes it up the ass; that way, ${he} can remain a virgin, and be, like, totally pure and innocent.`;
			} else {
				t += `This schoolgirl clearly takes it up the ass.`;
			}
			break;
		case "a kimono":
			t += `${His} kimono demurely covers ${his} `;
			if (slave.butt > 5) {
				t += `behind, though it cannot conceal its massive shape.`;
			} else {
				t += `behind.`;
			}
			break;

		case "a hijab and abaya":
		case "a niqab and abaya":
			t += `${His} abaya totally conceals ${his} `;
			if (slave.butt > 5) {
				t += `behind, though it cannot conceal its large size.`;
			} else {
				t += `behind.`;
			}
			break;
		case "a klan robe":
			t += `${His} robe totally conceals ${his} `;
			if (slave.butt > 5) {
				t += `behind, though it cannot conceal its large size.`;
			} else {
				t += `behind.`;
			}
			break;
		case "a burqa":
			t += `${His} burqa totally conceals ${his} `;
			if (slave.butt > 7) {
				t += `behind, though it cannot conceal its absurd size.`;
			} else {
				t += `behind.`;
			}
			break;
		case "a burkini":
			if (slave.butt > 6) {
				t += `${His} burkini finds itself accentuating the absurd size of ${his} behind.`;
			} else {
				t += `${His} burkini modestly covers ${his} behind.`;
			}
			break;
		case "a hijab and blouse":
			t += `${His} skirt modestly covers ${his} `;
			if (slave.butt > 5) {
				t += `behind, though it cannot conceal its large size.`;
			} else {
				t += `behind.`;
			}
			break;
		case "cutoffs":
		case "sport shorts and a t-shirt":
		case "sport shorts":
		case "a sweater and cutoffs":
		case "sport shorts and a sports bra":
			t += `${His} shorts hug the curves of ${his} hips and ass nicely.`;
			break;

		case "a police uniform":
		case "a t-shirt and jeans":
		case "leather pants":
		case "jeans":
		case "leather pants and a tube top":
		case "leather pants and pasties":
			if (slave.butt > 1) {
				t += `${His} pants are filled out with the curve of ${his} butt.`;
			} else {
				t += `${His} pants modestly cover ${his} butt.`;
			}
			break;
		case "a nice pony outfit":
		case "a slutty pony outfit":
			t += `${His} leather outfit tightly hugs the curves of ${his} hips and ass.`;
			break;
		case "a skimpy loincloth":
			t += `${His} loincloth only partially covers ${his} butt, giving frequent glimpses of the bare flesh beneath it.`;
			break;
		case "a gothic lolita dress":
			t += `${His} dress can be lifted easily enough to get as ${his} rear.`;
			break;
		case "a hanbok":
			t += `${His} hanbok can be lifted easily enough to get as ${his} `;
			if (slave.butt > 7) {
				t += `rear and its motion beneath the fabric certainly invites it.`;
			} else {
				t += `rear.`;
			}
			break;
		case "a one-piece swimsuit":
			t += `${His} swimsuit displays the delicious curves of ${his} butt and just begs you to run a hand across it.`;
			break;
		case "battledress":
			t += `${His} fatigue trousers do not particularly flatter ${his} butt.`;
			break;
		case "nice business attire":
			t += `${His} attractive skirt is nevertheless tight enough to show off ${his} derrière.`;
			break;
		case "slutty business attire":
			t += `${His} skirt is so short it'll barely be necessary to lift it.`;
			break;
		case "a comfortable bodysuit":
			t += `${His} bodysuit displays the curves of ${his} butt.`;
			break;
		case "a latex catsuit":
			t += `${His} latex catsuit displays the curves of ${his} butt.`;
			break;
		case "a military uniform":
		case "a red army uniform":
			t += `${His} uniform skirt is nevertheless tight enough to show off ${his} derrière.`;
			break;
		case "a schutzstaffel uniform":
			t += `${His} uniform trousers are nevertheless tight enough to show off ${his} derrière.`;
			break;
		case "a slutty schutzstaffel uniform":
			t += `${His} uniform miniskirt is nevertheless tight enough to show off the enticing curves of ${his} butt.`;
			break;
		case "a long qipao":
			t += `${His} elegant dress shows off all ${his} curves.`;
			break;
		case "battlearmor":
			t += `${His} snug battlearmor is nevertheless tight enough to show off ${his} derrière.`;
			break;
		case "a mounty outfit":
			t += `${His} uniform slacks are tight enough to show off ${his} derrière.`;
			break;
		case "a dirndl":
			t += `${His} skirt shows off the soft curves ${his} derrière.`;
			break;
		case "lederhosen":
			t += `${His} shorts tightly hug the crack of ${his} derrière.`;
			break;
		case "a biyelgee costume":
			t += `${His} costume skirt's thin material shows off ${his} derrière.`;
			break;
		case "a nice nurse outfit":
			t += `${His} nurse's trousers demurely cover ${his} behind.`;
			break;
		case "a mini dress":
			t += `${His} mini dress displays the curves of ${his} butt.`;
			break;
		case "a leotard":
			t += `${His} leotard leaves ${his} buttocks gloriously bare.`;
			break;
		case "a bunny outfit":
			t += `${His} teddy covers ${his} rear, but in tight satin that flatters its curves.`;
			break;
		case "harem gauze":
			t += `${His} hips are clearly visible through the thin gauze that covers it.`;
			break;
		case "a toga":
			t += `${His} stellar behind is accented by the light material of ${his} toga.`;
			break;
		case "a huipil":
			t += `${His} huipil is so short that ${his} butt is on display.`;
			break;
		case "slutty jewelry":
			t += `${His} belt of light chain accentuates ${his} hips.`;
			break;
		case "a thong":
		case "a tube top and thong":
		case "a t-shirt and thong":
		case "a slutty klan robe":
			t += `${He}'s made an effort to keep ${his} thong out of ${his} crack, but it quickly slips back in with ${his} movements.`;
			break;
		case "an oversized t-shirt":
			t += `${His} oversized t-shirt is covering ${his} rear, but it can be lifted easily enough.`;
			break;
		default:
			//"a bra" "a button-up shirt" "a sweater" "a tank-top" "a tube top" "a striped bra" "a sports bra" "a t-shirt"
			if (slave.chastityAnus && slave.chastityVagina) {
				t += `${His} chastity protects ${his} holes from penetration.`;
				V.target = "FondleButt";
			} else if (slave.chastityAnus) {
				t += `${His} chastity belt protects ${his} rear from penetration.`;
				V.target = "FondleButt";
			} else {
				t += `You run your eye over ${his} naked hips.`;
			}
	}
	return t;
};

window.anusWatch = function(slave) {

	/* will be moved up once this becomes a single, contained function. */
	let t = "";
	let V = State.variables;

	let pronouns = getPronouns(slave);
	let he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun;
	let He = capFirstChar(he), His = capFirstChar(his);

	V.target = "FAnus";

	t += `<<AnusDescription>>`;
	if (slave.chastityAnus == 0) {
		t += ` `;
		switch (slave.clothes) {
			case "a Fuckdoll suit":
				t += `${His} suit is expressly designed to encourage use of ${his} rear hole.`;
				break;
			case "uncomfortable straps":
				t += `The ring over ${his} asshole beckons.`;
				break;
			case "shibari ropes":
				t += `The rope between ${his} buttocks presses lewdly against ${his} anus as ${he} moves.`;
				break;
			case "restrictive latex":
				t += `As one of the only islands in the sea of black latex, ${his} asshole is eye catching.`;
				break;
			case "a fallen nuns habit":
				t += `${His} slutty nun outfit leaves ${his} butthole bare and available for anal sin.`;
				break;
			case "a chattel habit":
				t += `${His} chattel habit covers ${his} anus with a strip of cloth, but it's designed to be lifted readily.`;
				break;
			case "a penitent nuns habit":
				t += `${His} habit chafes ${his} rear end so cruelly that it would probably be a relief to ${him} to have it pulled up for a rough buttfuck.`;
				break;
			case "attractive lingerie":
				if (slave.anus > 1 && slave.amp === 1) {
					t += `${His} pretty g-string frequently fails to cover ${his} big butthole.`;
					break;
				} else if (slave.anus > 1) {
					t += `As ${he} moves, ${his} pretty g-string frequently fails to cover ${his} big butthole.`;
					break;
				} else {
					t += `As ${he} moves, ${his} pretty g-string draws your attention to ${his} ass.`;
				}
				break;
			case "a succubus outfit":
				t += `${His} succubus outfit's tail holds ${his} skirt up high in back, inviting a damning buttfuck.`;
				break;
			case "a nice maid outfit":
				t += `${His} long maid's skirt will have to be gotten out of the way to permit access to ${his} ass.`;
				break;
			case "a slutty maid outfit":
				t += `${His} short maid's skirt can be lifted to reveal ${his} bare buttocks.`;
				break;
			case "a slutty nurse outfit":
				t += `${His} tight skirt flatters ${his} ass as ${he} moves.`;
				break;
			case "a schoolgirl outfit":
				if (slave.anus === 0) {
					t += `This schoolgirl clearly needs to lose ${his} anal virginity.`;
				} else if (slave.vagina === 0) {
					t += `This schoolgirl clearly takes it up the ass; that way, ${he} can remain a virgin, and be, like, totally pure and innocent.`;
				} else {
					t += `This schoolgirl clearly takes it up the ass.`;
				}
				break;
			case "a kimono":
				t += ` While ${his} kimono may demurely cover ${his} behind, you know ${his} asshole is bare under it.`;
				break;
			case "attractive lingerie for a pregnant woman":
				t += `${His} silken panties are just begging to be torn off.`;
				break;
			case "a maternity dress":
				t += `${His} dress could easily be slide up over ${his} butt to expose ${his} backdoor.`;
				break;
			case "stretch pants and a crop-top":
				t += `${He} can easily be pantsed to reveal ${his} bare buttocks.`;
				break;
			case "a hijab and abaya":
			case "a niqab and abaya":
				t += `While ${his} abaya totally covers ${his} behind, it can be easily lifted to reveal ${his} asshole.`;
				break;
			case "a klan robe":
				t += `While ${his} robe totally covers ${his} behind, it can be lifted to reveal ${his} asshole.`;
				break;
			case "a burqa":
				t += `While ${his} burqa totally covers ${his} behind, it can be lifted to reveal ${his} asshole.`;
				break;
			case "an oversized t-shirt":
				t += `${His} t-shirt may be oversized, but it does little to hide ${his} asshole.`;
				break;
			case "a tube top and thong":
			case "a thong":
			case "a t-shirt and thong":
				if (slave.anus > 1 && slave.amp === 1) {
					t += `${His} thong frequently fails to cover ${his} big butthole.`;
					break;
				} else if (slave.anus > 1) {
					t += `As ${he} moves, ${his} thong frequently fails to cover ${his} big butthole.`;
					break;
				} else {
					t += `As ${he} moves, ${his} thong draws your attention to ${his} ass.`;
				}
				break;
			case "a bra":
			case "a button-up shirt":
			case "a sweater":
			case "a tank-top":
			case "a tube top":
			case "a striped bra":
			case "a slutty klan robe":
			case "a sports bra":
			case "a t-shirt":
				t += `${His} outfit exposes ${his} bare butt and vulnerable asshole.`;
				break;
			case "an oversized t-shirt and boyshorts":
			case "boyshorts":
				t += `${His} boyshorts are tight enough to give hints of ${his} asshole.`;
				break;
			case "a button-up shirt and panties":
			case "a sweater and panties":
			case "a tank-top and panties":
			case "panties":
			case "a t-shirt and panties":
			case "panties and pasties":
			case "striped underwear":
				t += `${His} tightly clinging panties can be pulled aside to reveal ${his} asshole.`;
				break;
			case "cutoffs":
			case "sport shorts and a t-shirt":
			case "sport shorts":
			case "a sweater and cutoffs":
			case "sport shorts and a sports bra":
				t += `${His} shorts are practically begging to be pulled down to reveal ${his} naked butthole.`;
				break;
			case "a police uniform":
			case "a t-shirt and jeans":
			case "leather pants":
			case "jeans":
			case "leather pants and a tube top":
			case "leather pants and pasties":
				t += `${His} pants are practically begging to be pulled down to reveal ${his} naked butthole.`;
				break;
			case "a nice pony outfit":
			case "a slutty pony outfit":
				t += `${His} leather outfit is practically sculpted to fit ${his} ass, though would need to be undone to reach ${his} butthole.`;
				break;
			case "a skimpy loincloth":
				t += `${His} loincloth gives hints of ${his} bare ass and asshole beneath it.`;
				break;
			case "a gothic lolita dress":
				t += `${His} dress can be lifted easily to reveal ${his} asshole.`;
				break;
			case "a hanbok":
				t += `${His} hanbok can be lifted easily to reveal ${his} asshole.`;
				break;
			case "a one-piece swimsuit":
				t += `${His} swimsuit tightly clings to ${his} rear, but `;
				if (slave.butt > 3) {
					t += `${his} butt is too large to easily pull it aside and reach ${his} asshole.`;
				} else {
					t += `can be easily pulled aside to reveal ${his} asshole.`;
				}
				break;
			case "a burkini":
				t += `${His} burkini modestly covers ${his} rear.`;
				break;
			case "a hijab and blouse":
				t += `${His} modest skirt can be easily lifted to reveal ${his} asshole.`;
				break;
			case "battledress":
				t += `${His} fatigue trousers are not particularly flattering to ${his} butt but could be pulled down easily enough.`;
				break;
			case "a monokini":
				t += `The bottom of ${his} monokini is practically sculpted to fit ${his} ass.`;
				break;
			case "a cybersuit":
				t += `As ${his} buttocks work naturally with ${his} movement, ${his} tight bodysuit gives hints of ${his} asshole.`;
				break;
			case "a string bikini":
				if (slave.anus > 1) {
					t += `As ${he} moves, ${his} big butthole is clearly visible behind ${his} tiny g-string.`;
				} else {
					t += `As ${he} moves, ${his} tiny g-string draws your attention to ${his} ass.`;
				}
				break;
			case "a scalemail bikini":
				t += `${His} scalemail bottom draws attention to ${his} ass cheeks, while concealing ${his} rear hole.`;
				break;
			case "striped panties":
				t += `${His} cute panties draw attention to ${his} ass cheeks, while concealing ${his} rear hole.`;
				break;
			case "clubslut netting":
				t += `As ${he} moves, the hole in ${his} netting right over ${his} butthole looks inviting.`;
				break;
			case "a cheerleader outfit":
				t += `As ${he} moves, ${his} short pleated cheerleader skirt shows off ${his} butt.`;
				break;
			case "cutoffs and a t-shirt":
				t += `As ${he} moves, ${his} tight cutoffs flatter ${his} butt.`;
				break;
			case "spats and a tank top":
				t += `${His} spats show off every curve of ${his} ass.`;
				break;
			case "a slutty outfit":
				t += `For today's slutty outfit ${he}'s chosen `;
				if (slave.butt > 5) {
					t += `a leather skirt with zippers that permit ready access to ${his} butt.`;
				} else {
					t += `fishnets with a hole cut over ${his} asshole so ${he} can be sodomized without removing or damaging ${his} clothing.`;
				}
				break;
			case "a slave gown":
				t += `${His} gorgeous dress leaves little to the imagination; there's little doubt ${his} butt is bare beneath it.`;
				break;
			case "a halter top dress":
				t += `${His} dress should slide up over ${his} butt to reveal ${his} backdoor.`;
				break;
			case "a ball gown":
				t += `${His} ballgown and its petticoats could easily be flipped up to bare ${his} butt.`;
				break;
			case "slutty business attire":
				t += `${His} short skirt will easily slide up to bare ${his} asshole.`;
				break;
			case "nice business attire":
				t += `${His} conservative skirt can be slid up over ${his} hips to bare ${his} butthole.`;
				break;
			case "a comfortable bodysuit":
				t += `${His} bodysuit demands attention for ${his} tightly clad backdoor.`;
				break;
			case "a latex catsuit":
				t += `${His} latex catsuit's crotch zipper offers ready access to ${his} backdoor.`;
				break;
			case "a military uniform":
				t += `${His} uniform skirt can be slid up over ${his} hips to bare ${his} butthole.`;
				break;
			case "a schutzstaffel uniform":
				t += `${His} uniform's trousers can be easily slid down to expose ${his} butthole.`;
				break;
			case "a slutty schutzstaffel uniform":
				t += `${His} uniform miniskirt can be easily slid up over ${his} hips to bare ${his} butthole.`;
				break;
			case "a red army uniform":
				t += `${His} uniform skirt can be slid up over ${his} hips to bare ${his} butthole.`;
				break;
			case "a long qipao":
				t += `${His} dress can be slid up over ${his} hips to bare ${his} butthole.`;
				break;
			case "battlearmor":
				t += `${His} armor demands attention for ${his} tightly clad backdoor.`;
				break;
			case "a mounty outfit":
				t += `${His} uniform slacks can be slipped off ${his} hips to bare ${his} butthole.`;
				break;
			case "a dirndl":
				t += `${His} dress can be easily lifted to access ${his} bare ass.`;
				break;
			case "lederhosen":
				t += `${His} tight shorts can be slipped off ${his} hips to bare ${his} butthole.`;
				break;
			case "a biyelgee costume":
				t += `${His} costume can be easily lifted to access ${his} naked butt.`;
				break;
			case "a nice nurse outfit":
				t += `${His} nurse's trousers can be easily slid down to expose ${his} butthole.`;
				break;
			case "a mini dress":
				t += `${His} mini dress can be easily slid up to expose ${his} butthole.`;
				break;
			case "an apron":
				t += `${His} apron leaves ${his} asshole completely exposed.`;
				break;
			case "overalls":
				t += `${His} overalls totally cover ${his} asshole.`;
				break;
			case "a leotard":
				t += `As ${his} buttocks work naturally with ${his} movement, ${his} tight leotard gives hints of ${his} asshole.`;
				break;
			case "a bunny outfit":
				t += `${His} fluffy white cottontail draws attention to ${his} butt, inevitably bringing anal to mind.`;
				break;
			case "harem gauze":
				t += `${His} ass is clearly visible through the thin gauze that covers it.`;
				break;
			case "a toga":
				t += `${His} toga is so transparent it can't hide ${his} asscrack, which looks very seductive.`;
				break;
			case "a huipil":
				t += `${His} huipil can be easily lifted to access ${his} naked butt.`;
				break;
			case "slutty jewelry":
				t += `${His} belt of light chain threatens to dip into ${his} asscrack with each step.`;
				break;
			default:
				if (slave.chastityVagina) {
					t += `${His} chastity belt leaves ${his} ass available.`;
				} else {
					t += `You run your eye over ${his} naked ass.`;
				}
		}
	}

	return t;
};

window.lipWatch = function(slave) {

	/* will be moved up once this becomes a single, contained function. */
	let t = "";
	let V = State.variables;

	let pronouns = getPronouns(slave);
	let he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun;
	let He = capFirstChar(he), His = capFirstChar(his);

	t += `<<faceDescription>>`;
	t += `<<mouthDescription>>`;
	switch (slave.collar) {
		case "a Fuckdoll suit":
			t += `${His} suit is expressly designed to encourage use of ${his} face hole.`;
			break;
		case "uncomfortable leather":
			t += `${His} uncomfortable leather collar makes ${him} swallow and lick ${his} lips periodically, making it look like ${he}'s offering oral even though ${he}'s just trying to relieve the discomfort.`;
			break;
		case "tight steel":
		case "cruel retirement counter":
			t += `${His} tight steel collar makes ${him} swallow and lick ${his} lips periodically, making it look like ${he}'s offering oral even though ${he}'s just trying to relieve the discomfort.`;
			break;
		case "preg biometrics":
			t += `${His} collar reveals everything about ${his} womb, bringing eyes straight to ${his} belly before drawing them back to ${his} neck.`;
			break;
		case "dildo gag":
			t += `${His} ring gag would make ${him} ready for oral service, as soon as the formidable dildo it secures down ${his} throat is removed.`;
			break;
		case "massive dildo gag":
			t += `Your eyes are drawn to the distinct bulge in ${his} throat caused by the enormous dildo in it, though ${his} mouth would only be suitable for the largest of cocks right now.`;
			break;
		case "shock punishment":
			t += `${His} shock collar rests threateningly at ${his} throat, ready to compel ${him} to do anything you wish.`;
			break;
		case "neck corset":
			t += `${His} fitted neck corset keeps ${his} breaths shallow, and ${his} head posture rigidly upright.`;
			break;
		case "stylish leather":
			t += `${His} stylish leather collar is at once a fashion statement, and a subtle indication of ${his} enslavement.`;
			break;
		case "satin choker":
			t += `${His} elegant satin choker is at once a fashion statement, and a subtle indication of ${his} enslavement.`;
			break;
		case "silk ribbon":
			t += `${His} delicate, fitted silken ribbon is at once a fashion statement, and a subtle indication of ${his} enslavement.`;
			break;
		case "heavy gold":
			t += `${His} heavy gold collar draws attention to the sexual decadence of ${his} mouth.`;
			break;
		case "pretty jewelry":
		case "nice retirement counter":
			t += `${His} pretty necklace can hardly be called a collar, but it's just slavish enough to hint that the throat it rests on is available.`;
			break;
		case "bell collar":
			t += `${His} little bell tinkles merrily whenever ${he} moves, dispelling any grace or gravity.`;
			break;
		case "leather with cowbell":
			t += `${His} cowbell tinkles merrily whenever ${he} moves, instantly dispelling any grace or gravity.`;
			break;
		case "bowtie":
			t += `${His} black bowtie contrasts with ${his} white collar, drawing the eye towards ${his} neck and face.`;
			break;
		case "ancient Egyptian":
			t += `${His} wesekh glints richly as ${he} moves, sparkling with opulence and sensuality.`;
			break;
		case "ball gag":
			t += `${His} ball gag uncomfortably holds ${his} jaw apart as it fills ${his} mouth.`;
			break;
		case "bit gag":
			t += `${His} bit gag uncomfortably keeps ${him} from closing ${his} jaw; drool visibly pools along the corners of ${his} mouth, where the rod forces back ${his} cheeks.`;
			break;
		case "porcelain mask":
			t += `${His} beautiful porcelain mask hides ${his} face and any unsightly facial features.`;
			break;
		default:
			t += `${His} unadorned `;
			if (V.PC.dick == 1) {
				t += `throat is just waiting to be wrapped around a thick shaft.`;
			} else {
				t += `lips are just begging for a cunt to lavish attention on.`;
			}
	}
	if (jsRandom(1,3) === 1) {
		V.target = "FKiss";
	} else {
		V.target = "FLips";
	}

	return t;
};

repo_name: valleytwo/fc