code:
/**
 * @param {App.Entity.SlaveState} slave
 * @returns {string}
 */
App.Desc.upperFace = function(slave) {
	const r = [];
	const {
		he, him, his, He, His
	} = getPronouns(slave);
	if (slave.fuckdoll === 0) {
		switch (slave.clothes) {
			case "restrictive latex":
				r.push(`The upper half of ${his} face is covered by the hood of ${his} latex suit: though`);
				if (canSee(slave)) {
					r.push(`${he} can see through eye-holes, these can easily be closed to blind ${him}.`);
				} else {
					r.push(`there are eye-holes, they are currently closed due to their lack of use.`);
				}
				break;
			case "harem gauze":
				r.push(`${His} harem outfit includes the traditional veil for ${his} face.`);
				break;
			case "a burkini":
				r.push(`Above ${his} shoulders, ${his} burkini leaves only ${his} face bare.`);
				break;
			case "a hijab and blouse":
				r.push(`Above the shoulders of ${his} blouse, ${his} hijab leaves only ${his} face bare.`);
				break;
			case "a hijab and abaya":
				r.push(`Above the shoulders of ${his} abaya, ${his} hijab leaves only ${his} face bare.`);
				break;
			case "a niqab and abaya":
				r.push(`Above the shoulders of ${his} abaya, ${his} niqab leaves only the area around ${his} eyes bare.`);
				break;
			case "a klan robe":
			case "a slutty klan robe":
				r.push(`Above the shoulders of ${his} robe, ${his} hood leaves only the area around ${his} eyes bare.`);
				break;
			case "a burqa":
				r.push(`${His} burqa near totally covers ${his} face, aside from what can be seen behind the fabric mesh that covers ${his} eyes.`);
				break;
			case "a chattel habit":
				r.push(`A golden circlet crowns ${his} white cowl, securing ${his} habit to ${his} head.`);
				break;
			case "a succubus outfit":
				r.push(`${He} has a pair of false horns sprouting from just behind ${his} hairline and sweeping backward, which are anchored to a wire headband hidden by ${his} hair.`);
				break;
			case "a bunny outfit":
				r.push(`A pair of bunny ears sprout from a headband atop ${his} head.`);
				break;
		}
		if (hasAnyCyberneticEyes(slave)) {
			r.push(`${He} has artificial`);
			if (hasBothCyberneticEyes(slave)) {
				r.push(`eyes.`);
			} else {
				r.push(`an eye.`);
			}
		}
		if (slave.eyewear === "corrective glasses" || slave.eyewear === "blurring glasses" || slave.eyewear === "glasses") {
			r.push(`${He}'s wearing a pair of`);
			switch (slave.clothes) {
				case "chains":
				case "shibari ropes":
				case "uncomfortable straps":
				case "a chattel habit":
				case "overalls":
				case "Western clothing":
					r.push(`sturdy glasses,`);
					break;
				case "restrictive latex":
					r.push(`glasses over the hood,`);
					break;
				case "a ball gown":
				case "a slave gown":
				case "conservative clothing":
				case "cutoffs and a t-shirt":
				case "a halter top dress":
				case "a maternity dress":
				case "a courtesan dress":
					r.push(`nice frameless glasses,`);
					break;
				case "body oil":
					r.push(`big retro glasses,`);
					break;
				case "slutty business attire":
					r.push(`horn-rimmed glasses to accent ${his} business attire,`);
					break;
				case "a schoolgirl outfit":
					r.push(`horn-rimmed glasses to improve ${his} schoolgirl look,`);
					break;
				case "nice business attire":
					r.push(`wire-frame glasses to accent ${his} business attire,`);
					break;
				case "attractive lingerie":
				case "attractive lingerie for a pregnant woman":
				case "an apron":
				case "a hijab and blouse":
					r.push(`feminine glasses,`);
					break;
				case "kitty lingerie":
					r.push(`cat-eye glasses,`);
					break;
				case "a succubus outfit":
					r.push(`severe steel-frame glasses,`);
					break;
				case "harem gauze":
				case "slutty jewelry":
					r.push(`glasses with golden wire frames,`);
					break;
				case "a burqa":
				case "a niqab and abaya":
				case "a penitent nuns habit":
				case "a klan robe":
				case "a slutty klan robe":
					r.push(`cheap glasses,`);
					break;
				case "a gothic lolita dress":
					r.push(`Victorian-styled glasses,`);
					break;
				case "a hanbok":
					r.push(`folding spectacle glasses,`);
					break;
				case "a police uniform":
					r.push(`aviator sunglasses,`);
					break;
				case "a Santa dress":
					r.push(`antique reading glasses,`);
					break;
				case "a bunny outfit":
				case "a monokini":
					r.push(`girly retro glasses,`);
					break;
				case "a hijab and abaya":
				case "a huipil":
				case "a kimono":
				case "a long qipao":
				case "a nice maid outfit":
				case "a slutty qipao":
				case "a slutty maid outfit":
					r.push(`an old fashioned pair of horn rimmed glasses,`);
					break;
				case "a fallen nuns habit":
				case "a cheerleader outfit":
				case "a slutty nurse outfit":
					r.push(`a daring pair of horn rimmed glasses,`);
					break;
				case "clubslut netting":
				case "a string bikini":
				case "striped panties":
				case "a bimbo outfit":
					r.push(`a pair of girly pastel glasses,`);
					break;
				case "a scalemail bikini":
					r.push(`a pair of ancient-looking glasses,`);
					break;
				case "a burkini":
				case "a one-piece swimsuit":
					r.push(`swim goggles,`);
					break;
				default:
					r.push(`simple wire-frame glasses,`);
			}
			if (getBestVision(slave) === 0) {
				r.push(`which, since ${he} is <span class="red">blind,</span> are just for show. ${He} moves carefully as to not bump into things.`);
			} else {
				if (slave.eyewear === "blurring glasses") {
					if (anyVisionEquals(slave, 2)) {
						r.push(`which are designed to blur ${his} vision, making ${him} clumsy.`);
					} else {
						r.push(`which do nothing to help ${his} <span class="yellow">nearsightedness</span> and consequent clumsiness.`);
					}
				} else if (slave.eyewear === "corrective glasses") {
					if (anyVisionEquals(slave, 1)) {
						r.push(`which correct ${his} vision.`);
					} else {
						r.push(`which are just for show.`);
					}
				} else {
					r.push(`which are just for show.`);
				}
			}
		} else {
			if (!canSee(slave)) {
				r.push(`${He} is <span class="red">blind,</span> and moves very carefully as a result.`);
			} else if (!canSeePerfectly(slave)) {
				if (slave.eyewear === "blurring contacts") {
					r.push(`${He}'s wearing contacts designed to blur ${his} vision, making ${him} clumsy.`);
				} else {
					r.push(`${He}'s <span class="yellow">nearsighted,</span> and a bit clumsy as a result.`);
				}
			} else {
				if (slave.eyewear === "corrective contacts") {
					r.push(`${He}'s wearing contact lenses to correct ${his} <span class="yellow">nearsightedness.</span>`);
				}
			}
		}
		// CLOSES EYEWEAR
		if (slave.earwear === "hearing aids" || slave.earwear === "muffling ear plugs" || slave.earwear === "deafening ear plugs") {
			r.push(`In ${his} ears, ${he} wears`);
			if (slave.earwear === "hearing aids") {
				r.push(`a pair of hearing aids,`);
				if (slave.hears > -1) {
					r.push(`which do little to correct ${his} already adequate hearing.`);
				} else if (slave.hears === -1) {
					r.push(`which are used to correct ${his} <span class="yellow">hearing impairment.</span>`);
				} else if (slave.hears < -1) {
					r.push(`which, due to ${his} <span class="red">deafness,</span> are useless.`);
				}
			} else if (slave.earwear === "muffling ear plugs") {
				r.push(`a pair of small foam ear plugs,`);
				if (slave.hears > -1) {
					r.push(`which noticeably <span class="yellow">muffle ${his} hearing.</span>`);
				} else if (slave.hears === -1) {
					r.push(`which are pointless, as ${he} is already <span class="yellow">hard of hearing.</span>`);
				} else if (slave.hears < -1) {
					r.push(`which are pointless, as ${he} is totally <span class="red">deaf.</span>`);
				}
			} else if (slave.earwear === "deafening ear plugs") {
				r.push(`a pair of large silicone ear plugs,`);
				if (slave.hears > -1) {
					r.push(`which <span class="red">nullify ${his} sense of hearing.</span>`);
				} else if (slave.hears === -1) {
					r.push(`which impair ${his} hearing to the point of <span class="red">deafness.</span>`);
				} else if (slave.hears < -1) {
					r.push(`which are pointless, as ${he} is already <span class="red">deaf.</span>`);
				}
			}
		} else {
			if (slave.hears === -1) {
				r.push(`${He}'s <span class="yellow">hard of hearing,</span> and a bit nervous as a result.`);
			} else if (slave.hears < -1) {
				r.push(`${He} is <span class="red">deaf,</span> and overly paranoid as a result.`);
			}
		}
	} else {
		r.push(`${His} face is featurelessly obscured by the Fuckdoll suit from the top of ${his} head down to ${his} face hole.`);
	}

	return r.join(" ");
};

repo_name: KnightBoulegard/fc

license: mit


code:
/**
 * @param {App.Entity.SlaveState} slave
 * @returns {string}
 */
App.Desc.waist = function(slave) {
	const r = [];
	let frag;
	let belly;
	if (slave.belly >= 1500) {
		belly = bellyAdjective(slave);
	}
	const {
		he, him, his, hers, himself, girl, He, His, woman
	} = getPronouns(slave);
	r.push(`${He} has`);

	if (slave.waist > 95) {
		r.push(`a badly <span class="red">masculine waist</span> that ruins ${his}`);
		if (slave.weight > 30) {
			r.push(`figure and greatly exaggerates how fat ${he} is.`);
		} else if (slave.weight < -30) {
			r.push(`figure despite how thin ${he} is.`);
		} else {
			r.push(`figure.`);
		}
		if (slave.belly >= 1500) {
			if (slave.belly >= 750000) {
				r.push(`${His} ${belly} belly grotesquely bulges around ${his} thick waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is horribly distended by ${his} bursting womb in a last ditch effort to find more room for ${his} children, leaving ${his} original waistline barely visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 300000) {
				r.push(`${His} ${belly} belly is hidden by ${his} thick waist.`);
			} else if (slave.belly < 450000) {
				r.push(`${His} ${belly} belly can be seen around ${his} thick waist.`);
			} else if (slave.belly < 600000) {
				r.push(`${His} ${belly} belly can clearly be seen around ${his} thick waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is swollen wider than usual by ${his} crowded womb in its search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 750000) {
				r.push(`${His} ${belly} belly lewdly bulges around ${his} thick waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is greatly distended by ${his} overfilled womb in its desperate search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			}
		}
	} else if (slave.waist > 40) {
		r.push(`a broad, <span class="red">ugly waist</span> that makes ${him} look`);
		if (slave.weight > 30) {
			r.push(`mannish and exaggerates how fat ${he} is.`);
		} else if (slave.weight < -30) {
			r.push(`mannish despite how thin ${he} is.`);
		} else {
			r.push(`mannish.`);
		}
		if (slave.belly >= 1500) {
			if (slave.belly >= 750000) {
				r.push(`${His} ${belly} belly grotesquely bulges around ${his} chunky waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is horribly distended by ${his} bursting womb in a last ditch effort to find more room for ${his} children, leaving ${his} original waistline barely visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 150000) {
				r.push(`${His} ${belly} belly is hidden by ${his} chunky waist.`);
			} else if (slave.belly < 450000) {
				r.push(`${His} ${belly} belly can be seen around ${his} chunky waist.`);
			} else if (slave.belly < 600000) {
				r.push(`${His} ${belly} belly can clearly be seen around ${his} chunky waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is swollen wider than usual by ${his} crowded womb in its search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 750000) {
				r.push(`${His} ${belly} belly lewdly bulges around ${his} chunky waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is greatly distended by ${his} overfilled womb in its desperate search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			}
		}
	} else if (slave.waist > 10) {
		r.push(`an <span class="red">unattractive waist</span> that conceals ${his}`);
		if (slave.physicalAge <= 25) {
			r.push(`girlish`);
		} else {
			r.push(`womanly`);
		}
		if (slave.weight > 30) {
			r.push(`figure and accentuates how fat ${he} is.`);
		} else if (slave.weight < -30) {
			r.push(`figure despite how thin ${he} is.`);
		} else {
			r.push(`figure.`);
		}
		if (slave.belly >= 1500) {
			if (slave.belly >= 750000) {
				r.push(`${His} ${belly} belly grotesquely bulges around ${his} waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is horribly distended by ${his} bursting womb in a last ditch effort to find more room for ${his} children, leaving ${his} original waistline barely visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 10000) {
				r.push(`From behind, ${his} figure hides ${his} ${belly} belly.`);
			} else if (slave.belly < 200000) {
				r.push(`From behind, ${his} figure barely hides ${his} ${belly} belly.`);
			} else if (slave.belly < 300000) {
				r.push(`${His} ${belly} belly can be seen around ${his} waist.`);
			} else if (slave.belly < 450000) {
				r.push(`${His} ${belly} belly can clearly be seen around ${his} waist.`);
			} else if (slave.belly < 600000) {
				r.push(`${His} ${belly} belly can clearly be seen around ${his} waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is swollen wider than usual by ${his} crowded womb in its search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 750000) {
				r.push(`${His} ${belly} belly lewdly bulges around ${his} waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is greatly distended by ${his} overfilled womb in its desperate search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			}
		}
	} else if (slave.waist >= -10) {
		frag = `an average waist for a `;
		if (slave.physicalAge <= 25) {
			frag += `${girl}`;
		} else {
			frag += `${woman}`;
		}
		if (slave.weight > 30) {
			frag += `, though it looks broader since ${he}'s fat`;
		} else if (slave.weight < -30) {
			frag += `, though it looks narrower since ${he}'s thin`;
		}
		frag += `.`;
		r.push(frag);
		if (slave.belly >= 1500) {
			if (slave.belly >= 750000) {
				r.push(`${His} ${belly} belly grotesquely bulges around ${his} waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is horribly distended by ${his} bursting womb in a last ditch effort to find more room for ${his} children, leaving ${his} original waistline barely visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 10000) {
				r.push(`From behind, ${his} figure hides ${his} ${belly} belly.`);
			} else if (slave.belly < 200000) {
				r.push(`From behind, ${his} figure barely hides ${his} ${belly} belly.`);
			} else if (slave.belly < 300000) {
				r.push(`${His} ${belly} belly can be seen around ${his} waist.`);
			} else if (slave.belly < 450000) {
				r.push(`${His} ${belly} belly can clearly be seen around ${his} waist.`);
			} else if (slave.belly < 600000) {
				r.push(`${His} ${belly} belly can clearly be seen around ${his} waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is swollen wider than usual by ${his} crowded womb in its search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 750000) {
				r.push(`${His} ${belly} belly lewdly bulges around ${his} waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is greatly distended by ${his} overfilled womb in its desperate search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			}
		}
	} else if (slave.waist >= -40) {
		r.push(`a nice <span class="pink">feminine waist</span> that gives ${him} a`);
		if (slave.physicalAge <= 25) {
			r.push(`girlish`);
		} else {
			r.push(`womanly`);
		}
		if (slave.weight > 30) {
			r.push(`figure despite ${his} extra weight.`);
		} else if (slave.weight < -30) {
			r.push(`figure and accentuates how thin ${he} is.`);
		} else {
			r.push(`figure.`);
		}
		if (slave.belly >= 1500) {
			if (slave.belly >= 750000) {
				r.push(`${His} ${belly} belly grotesquely bulges around ${his} waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is horribly distended by ${his} bursting womb in a last ditch effort to find more room for ${his} children, leaving ${his} original waistline barely visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 10000) {
				r.push(`From behind, ${his} figure hides ${his} ${belly} belly.`);
			} else if (slave.belly < 100000) {
				r.push(`From behind, ${his} figure barely hides ${his} ${belly} belly.`);
			} else if (slave.belly < 300000) {
				r.push(`${His} ${belly} belly can be seen around ${his} waist.`);
			} else if (slave.belly < 450000) {
				r.push(`${His} ${belly} belly can clearly be seen around ${his} waist.`);
			} else if (slave.belly < 600000) {
				r.push(`${His} ${belly} belly can clearly be seen around ${his} waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is swollen wider than usual by ${his} crowded womb in its search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 750000) {
				r.push(`${His} ${belly} belly lewdly bulges around ${his} waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is greatly distended by ${his} overfilled womb in its desperate search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			}
		}
	} else if (slave.waist >= -95) {
		r.push(`a hot <span class="pink">wasp waist</span> that gives ${him} an hourglass`);
		if (slave.weight > 30) {
			r.push(`figure despite ${his} extra weight.`);
		} else if (slave.weight < -30) {
			r.push(`figure further accentuated by how thin ${he} is.`);
		} else {
			r.push(`figure.`);
		}
		if (slave.belly >= 1500) {
			if (slave.belly >= 750000) {
				r.push(`${His} ${belly} belly grotesquely bulges around ${his} narrow waist and continues`);
				if (slave.belly >= 1000000) {
					r.push(`quite the distance`);
				} else {
					r.push(`over half a`);
					if (V.showInches === 2) {
						r.push(`yard`);
					} else {
						r.push(`meter`);
					}
				}
				r.push(`farther to either side.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is horribly distended by ${his} bursting womb in a last ditch effort to find more room for ${his} children, leaving ${his} original waistline barely visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 5000) {
				r.push(`From behind, ${his} narrow figure hides ${his} ${belly} belly.`);
			} else if (slave.belly < 80000) {
				r.push(`From behind, ${his} narrow figure barely hides ${his} ${belly} belly.`);
			} else if (slave.belly < 100000) {
				r.push(`${His} ${belly} belly can be seen around ${his} narrow waist.`);
			} else if (slave.belly < 450000) {
				r.push(`${His} ${belly} belly lewdly extends past ${his} narrow waist.`);
			} else if (slave.belly < 600000) {
				r.push(`${His} ${belly} belly lewdly distends far to either side of ${his} narrow waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is swollen wider than usual by ${his} crowded womb in its search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 750000) {
				r.push(`${His} ${belly} belly lewdly bulges to either side of ${his} narrow waist and continues for nearly half a`);
				if (V.showInches === 2) {
					r.push(`yard`);
				} else {
					r.push(`meter`);
				}
				r.push(`in both directions.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is greatly distended by ${his} overfilled womb in its desperate search for more room, leaving ${his} original waistline barely visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			}
		}
	} else {
		r.push(`an <span class="pink">absurdly narrow waist</span> that gives ${him} a cartoonishly hourglass`);
		if (slave.weight > 30) {
			r.push(`figure made even more ludicrous by ${his} extra weight.`);
		} else if (slave.weight < -30) {
			r.push(`figure made even more ludicrous by how thin ${he} is.`);
		} else {
			r.push(`figure.`);
		}
		if (slave.belly >= 1500) {
			if (slave.belly >= 750000) {
				r.push(`${His} ${belly} belly grotesquely bulges around ${his} narrow waist and continues`);
				if (slave.belly >= 1000000) {
					r.push(`quite the distance`);
				} else {
					r.push(`over half a`);
					if (V.showInches === 2) {
						r.push(`yard`);
					} else {
						r.push(`meter`);
					}
				}
				r.push(`farther to either side.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is horribly distended by ${his} bursting womb in a last ditch effort to find more room for ${his} children, leaving ${his} original waistline barely visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 2000) {
				r.push(`From behind, ${his} narrow figure hides ${his} ${belly} belly.`);
			} else if (slave.belly < 5000) {
				r.push(`From behind, ${his} narrow figure barely hides ${his} ${belly} belly.`);
			} else if (slave.belly < 8000) {
				r.push(`${His} ${belly} belly can be seen around ${his} narrow waist.`);
			} else if (slave.belly < 15000) {
				r.push(`${His} ${belly} belly lewdly extends past ${his} narrow waist.`);
			} else if (slave.belly < 45000) {
				r.push(`${His} ${belly} belly lewdly distends far to either side of ${his} narrow waist.`);
			} else if (slave.belly < 600000) {
				r.push(`${His} ${belly} belly lewdly distends far to either side of ${his} narrow waist.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is swollen wider than usual by ${his} crowded womb in its search for more room, leaving ${his} original waistline only visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			} else if (slave.belly < 750000) {
				r.push(`${His} ${belly} belly lewdly bulges to either side of ${his} narrow waist and continues for nearly half a`);
				if (V.showInches === 2) {
					r.push(`yard`);
				} else {
					r.push(`meter`);
				}
				r.push(`in both directions.`);
				if (slave.preg > 3) {
					if (slave.belly > (slave.pregAdaptation * 1000)) {
						r.push(`${His} waist is greatly distended by ${his} overfilled womb in its desperate search for more room, leaving ${his} original waistline barely visible from behind.`);
					} else {
						r.push(`However, ${his} body is so adapted to pregnancy that ${his} womb rests forward enough to preserve the shape of ${his} waistline.`);
					}
				}
			}
		}
	}
	return r.join(" ");
};


code:
/**
 * @param {App.Entity.SlaveState} slave
 * @returns {string}
 */
App.Desc.pregnancy = function(slave) {
	const r = [];
	const {
		he, him, his, hers, himself, boy, He, His
	} = getPronouns(slave);
	let daddy;
	if (slave.pregSource > 0) {
		const lsd = findFather(slave.pregSource);
		if (lsd) {
			daddy = SlaveFullName(lsd);
		} else {
			daddy = "partner";
		}
	} else if (slave.pregSource in V.missingTable && V.showMissingSlaves) {
		daddy = V.missingTable[slave.pregSource].fullName;
	}

	if (slave.preg === -2 && slave.vagina < 0 && slave.mpreg === 0) {
	} else if ((slave.preg <= -2) && (slave.ovaries === 1 || slave.mpreg === 1)) {
		r.push(`${He} is sterile.`);
	} else if ((slave.pregWeek < 0) && (slave.ovaries === 1 || slave.mpreg === 1)) {
		r.push(`${He} is recovering from ${his} recent pregnancy.`);
	} else if (slave.preg === 0 && slave.vagina > -1) {
		if (slave.readyOva > 30) {
			r.push(`${His} lower belly is noticeably bloated, ${his} breasts bigger and more sensitive, and ${his} pussy swollen and leaking fluids. ${He} desperately needs a dick in ${him} and reminds you of a bitch in heat.`);
		} else if (slave.readyOva > 20) {
			r.push(`${His} lower belly is noticeably bloated and ${his} pussy swollen and leaking fluids. ${He} is very ready to be seeded.`);
		} else if (slave.readyOva > 2) {
			r.push(`${His} lower belly is slightly bloated and ${his} pussy swollen and leaking fluids. ${He} is ready to be seeded.`);
		}
	} else if (slave.bellyPreg >= 1000000) {
		r.push(`${He} is <span class="pink">impossibly pregnant</span> with`);
		if (slave.preg >= slave.pregData.normalBirth * 1.375) {
			if (slave.pregType === 1) {
				r.push(`a single full grown child.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
			if (slave.pregType === 1) {
				r.push(`a single full grown child.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
			if (slave.pregType === 1) {
				r.push(`a single full grown child.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else {
			r.push(`a staggering ${slave.pregType} babies.`);
		}
		r.push(App.Desc.superfetation(slave));
	} else if (slave.bellyPreg >= 750000) {
		r.push(`${He} is`);
		if (slave.belly > (slave.pregAdaptation * 1000)) {
			r.push(`<span class="red">on the brink of bursting!</span> ${His} belly is painfully stretched and ${his} womb packed to capacity; the slightest provocation could cause ${him} to rupture.`);
		} else {
			r.push(`<span class="pink">unbelievably pregnant</span> with ${slave.pregType} babies.`);
		}
		if (slave.preg >= slave.pregData.normalBirth * 1.375) {
			r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
			r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
			r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		}
		r.push(App.Desc.superfetation(slave));
	} else if (slave.bellyImplant >= 750000) {
		r.push(`${He} looks <span class="red">ready to pop!</span> ${His} stomach is`);
		if (slave.belly > (slave.pregAdaptation * 1000)) {
			r.push(`painfully`);
		} else {
			r.push(`frighteningly`);
		}
		r.push(`stretched by ${his} straining ${slave.bellyImplant}cc belly implant. It is well past it's recommended capacity and at risk of rupturing.`);
	} else if (slave.bellyPreg >= 600000) {
		r.push(`${He} is <span class="pink">dangerously pregnant,</span> ${his} overburdened womb is filled with`);
		if (slave.preg >= slave.pregData.normalBirth * 1.375) {
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else {
			r.push(`${slave.pregType} babies.`);
		}
		r.push(App.Desc.superfetation(slave));
	} else if (slave.bellyImplant >= 600000) {
		r.push(`${He} looks <span class="pink">dangerously pregnant.</span> ${He} stomach is massively stretched by ${his} absurdly overfilled ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyPreg >= 450000) {
		r.push(`${He} is <span class="pink">grotesquely pregnant,</span> ${his} womb is packed with`);
		if (slave.preg >= slave.pregData.normalBirth * 1.375) {
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else {
			r.push(`${slave.pregType} babies.`);
		}
		r.push(App.Desc.superfetation(slave));
	} else if (slave.bellyImplant >= 450000) {
		r.push(`${He} looks <span class="pink">absurdly pregnant.</span> ${He} stomach is massively stretched by ${his} overfilled ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyPreg >= 300000) {
		r.push(`${He} is <span class="pink">absurdly pregnant</span> with`);
		if (slave.preg >= slave.pregData.normalBirth * 1.375) {
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else {
			r.push(`${slave.pregType} children.`);
		}
		r.push(App.Desc.superfetation(slave));
	} else if (slave.bellyImplant >= 300000) {
		r.push(`${He} looks <span class="pink">absurdly pregnant.</span> ${His} overburdened middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyPreg >= 120000) {
		r.push(`${He} is`);
		if (slave.preg >= slave.pregData.normalBirth * 1.375) {
			r.push(`<span class="pink">obscenely pregnant</span> with`);
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
			r.push(`<span class="pink">obscenely pregnant</span> with`);
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
			r.push(`<span class="pink">obscenely pregnant</span> with`);
			if (slave.pregType === 1) {
				r.push(`a single overgrown baby.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} overgrown babies.`);
			} else {
				r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
			}
			r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
		} else if (slave.pregType > 9) {
			r.push(`<span class="pink">obscenely pregnant</span> with`);
			if (slave.pregType >= 50) {
				r.push(`an absurd number of children.`);
			} else if (slave.pregType >= 30) {
				r.push(`far too many children.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} children.`);
			} else {
				r.push(`${pregNumberName(slave.pregType, 2)}.`);
			}
		} else {
			r.push(`<span class="pink">obscenely pregnant:</span> ${he}'s`);
			if (slave.pregType === 9) {
				r.push(`almost ready to give birth to nonuplets.`);
			} else {
				r.push(`ready to give birth to octuplets.`);
			}
		}
		r.push(App.Desc.superfetation(slave));
	} else if (slave.bellyImplant >= 120000) {
		r.push(`${He} looks <span class="pink">obscenely pregnant with octuplets.</span> ${His} overburdened middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyPreg >= 15000) {
		r.push(`${He} is`);
		if (slave.bellyPreg >= 105000) {
			if (slave.preg >= slave.pregData.normalBirth * 1.375) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.pregType > 8) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType >= 50) {
					r.push(`an absurd number of children.`);
				} else if (slave.pregType >= 30) {
					r.push(`far too many children.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} children.`);
				} else {
					r.push(`${pregNumberName(slave.pregType, 2)}.`);
				}
			} else {
				r.push(`<span class="pink">massively pregnant:</span> ${he}'s`);
				if (slave.pregType === 8) {
					r.push(`almost ready to give birth to octuplets.`);
				} else {
					r.push(`ready to give birth to septuplets.`);
				}
			}
		} else if (slave.bellyPreg >= 90000) {
			if (slave.preg >= slave.pregData.normalBirth * 1.375) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.pregType > 7) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType >= 50) {
					r.push(`an absurd number of children.`);
				} else if (slave.pregType >= 30) {
					r.push(`far too many children.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} children.`);
				} else {
					r.push(`${pregNumberName(slave.pregType, 2)}.`);
				}
			} else {
				r.push(`<span class="pink">massively pregnant:</span> ${he}'s`);
				if (slave.pregType === 7) {
					r.push(`almost ready to give birth to septuplets.`);
				} else {
					r.push(`ready to give birth to sextuplets.`);
				}
			}
		} else if (slave.bellyPreg >= 75000) {
			if (slave.preg >= slave.pregData.normalBirth * 1.375) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.pregType > 6) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType >= 50) {
					r.push(`an absurd number of children.`);
				} else if (slave.pregType >= 30) {
					r.push(`far too many children.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} children.`);
				} else {
					r.push(`${pregNumberName(slave.pregType, 2)}.`);
				}
			} else {
				r.push(`<span class="pink">massively pregnant:</span> ${he}'s`);
				if (slave.pregType === 6) {
					r.push(`almost ready to give birth to sextuplets.`);
				} else {
					r.push(`ready to give birth to quintuplets.`);
				}
			}
		} else if (slave.bellyPreg >= 60000) {
			if (slave.preg >= slave.pregData.normalBirth * 1.375) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.pregType > 5) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType >= 50) {
					r.push(`an absurd number of children.`);
				} else if (slave.pregType >= 30) {
					r.push(`far too many children.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} children.`);
				} else {
					r.push(`${pregNumberName(slave.pregType, 2)}.`);
				}
			} else {
				r.push(`<span class="pink">massively pregnant:</span> ${he}'s`);
				if (slave.pregType === 5) {
					r.push(`almost ready to give birth to quintuplets.`);
				} else {
					r.push(`ready to give birth to quadruplets.`);
				}
			}
		} else if (slave.bellyPreg >= 45000) {
			if (slave.preg >= slave.pregData.normalBirth * 1.375) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.pregType > 4) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType >= 50) {
					r.push(`an absurd number of children.`);
				} else if (slave.pregType >= 30) {
					r.push(`far too many children.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} children.`);
				} else {
					r.push(`${pregNumberName(slave.pregType, 2)}.`);
				}
			} else {
				r.push(`<span class="pink">massively pregnant:</span> ${he}'s`);
				if (slave.pregType === 4) {
					r.push(`almost ready to give birth to quadruplets.`);
				} else {
					r.push(`ready to give birth to triplets.`);
				}
			}
		} else if (slave.bellyPreg >= 30000) {
			if (slave.preg >= slave.pregData.normalBirth * 1.375) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.pregType > 3) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType >= 50) {
					r.push(`an absurd number of children.`);
				} else if (slave.pregType >= 30) {
					r.push(`far too many children.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} children.`);
				} else {
					r.push(`${pregNumberName(slave.pregType, 2)}.`);
				}
			} else {
				r.push(`<span class="pink">massively pregnant:</span> ${he}'s`);
				if (slave.pregType === 3) {
					r.push(`almost ready to give birth to triplets.`);
				} else {
					r.push(`ready to give birth to twins.`);
				}
			}
		} else {
			if (slave.preg >= slave.pregData.normalBirth * 1.375) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is horrifically overdue; ${he} should have given birth a staggering ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.25) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is extremely overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.preg >= slave.pregData.normalBirth * 1.075) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType === 1) {
					r.push(`a single overgrown baby.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} overgrown babies.`);
				} else {
					r.push(`overgrown ${pregNumberName(slave.pregType, 2)}.`);
				}
				r.push(`${He} is very overdue; ${he} should have given birth ${(slave.preg - slave.pregData.normalBirth)} weeks ago.`);
			} else if (slave.pregType > 2) {
				r.push(`<span class="pink">massively pregnant</span> with`);
				if (slave.pregType >= 50) {
					r.push(`an absurd number of children.`);
				} else if (slave.pregType >= 30) {
					r.push(`far too many children.`);
				} else if (slave.pregType >= 10) {
					r.push(`${slave.pregType} children.`);
				} else {
					r.push(`${pregNumberName(slave.pregType, 2)}.`);
				}
			} else {
				r.push(`<span class="pink">massively pregnant:</span> ${he}'s`);
				if (slave.pregType === 2) {
					r.push(`almost ready to give birth to twins.`);
				} else {
					r.push(`ready to give birth.`);
				}
			}
		}
		r.push(App.Desc.superfetation(slave));
	} else if (slave.bellyImplant >= 105000) {
		r.push(`${He} looks <span class="pink">massively pregnant with septuplets.</span> ${He} greatly rounded middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyImplant >= 90000) {
		r.push(`${He} looks <span class="pink">massively pregnant with sextuplets.</span> ${He} greatly rounded middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyImplant >= 75000) {
		r.push(`${He} looks <span class="pink">massively pregnant with quintuplets.</span> ${He} greatly rounded middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyImplant >= 60000) {
		r.push(`${He} looks <span class="pink">massively pregnant with quadruplets.</span> ${He} greatly rounded middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyImplant >= 45000) {
		r.push(`${He} looks <span class="pink">massively pregnant with triplets.</span> ${He} greatly rounded middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyImplant >= 30000) {
		r.push(`${He} looks <span class="pink">massively pregnant with twins.</span> ${He} greatly rounded middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyImplant >= 15000) {
		r.push(`${He} looks <span class="pink">massively pregnant.</span> ${He} greatly rounded middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyPreg >= 10000) {
		r.push(`${He} is`);
		if (slave.pregType > 2) {
			r.push(`<span class="pink">hugely pregnant,</span> despite how early in ${his} pregnancy ${he} is: ${he}'s carrying`);
			if (slave.pregType >= 50) {
				r.push(`an absurd number of children.`);
			} else if (slave.pregType >= 30) {
				r.push(`far too many children.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} children.`);
			} else {
				r.push(`${pregNumberName(slave.pregType, 2)}.`);
			}
		} else {
			r.push(`<span class="pink">hugely pregnant:</span> ${he}'s`);
			if (slave.pregType === 2) {
				r.push(`carrying twins.`);
			} else {
				r.push(`almost ready to give birth.`);
			}
		}
		r.push(`${App.Desc.superfetation(slave)}`);
	} else if (slave.bellyImplant >= 10000) {
		r.push(`${He} looks <span class="pink">hugely pregnant.</span> ${He} greatly rounded middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyPreg >= 5000) {
		r.push(`${He} is`);
		if (slave.pregType > 2) {
			r.push(`<span class="pink">very pregnant,</span> despite how early in ${his} pregnancy ${he} is: ${he}'s carrying`);
			if (slave.pregType >= 50) {
				r.push(`an absurd number of children.`);
			} else if (slave.pregType >= 30) {
				r.push(`far too many children.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} children.`);
			} else {
				r.push(`${pregNumberName(slave.pregType, 2)}.`);
			}
		} else {
			r.push(`<span class="pink">very pregnant:</span>`);
			if (slave.pregType === 2) {
				r.push(`${he}'s carrying twins.`);
			} else {
				r.push(`the baby inside ${him} is growing rapidly.`);
			}
		}
		r.push(App.Desc.superfetation(slave));
	} else if (slave.bellyImplant >= 5000) {
		r.push(`${He} looks <span class="pink">very pregnant.</span> ${He} rounded middle is filled by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyPreg >= 1500) {
		r.push(`${He} is`);
		if (slave.pregType > 2) {
			r.push(`<span class="pink">visibly pregnant,</span> despite how early in ${his} pregnancy ${he} is: ${he}'s carrying`);
			if (slave.pregType >= 50) {
				r.push(`an absurd number of children.`);
			} else if (slave.pregType >= 30) {
				r.push(`far too many children.`);
			} else if (slave.pregType >= 10) {
				r.push(`${slave.pregType} children.`);
			} else {
				r.push(`${pregNumberName(slave.pregType, 2)}.`);
			}
		} else {
			r.push(`<span class="pink">visibly pregnant.</span>`);
		}
		r.push(App.Desc.superfetation(slave));
	} else if (slave.bellyImplant >= 1500) {
		r.push(`${He} looks <span class="pink">visibly pregnant.</span> ${He} rounded middle is caused by ${his} ${slave.bellyImplant}cc belly implant.`);
	} else if (slave.bellyPreg >= 100) {
		r.push(`${He} is <span class="pink">pregnant</span> and just beginning to show, though it is hard to tell at a glance.`);
		r.push(App.Desc.superfetation(slave));
	} else if (slave.bellyImplant > 0) {
		r.push(`${He} has an abdominal implant, though it doesn't round out ${his} belly too much yet at a tiny ${slave.bellyImplant}ccs.`);
	} else if (slave.bellyImplant === 0) {
		r.push(`${He} has an abdominal implant, but it is completely empty.`);
	} else if (slave.pregKnown === 1) {
		r.push(`${He} is <span class="pink">pregnant,</span> though it isn't visible yet.`);
		r.push(App.Desc.superfetation(slave));
	} else if (slave.preg > 0 && slave.pregKnown === 0) {
		r.push(`${His} period is late.`);
	}
	if (slave.preg + 5 <= slave.pregWeek && slave.preg <= slave.pregData.normalBirth + 2 && slave.bellyPreg >= 100) {
		r.push(`Despite being pregnant for ${slave.pregWeek} weeks,`);
		if (slave.preg > slave.pregData.minLiveBirth && slave.preg + 10 <= slave.pregWeek) {
			r.push(`${his} pregnancy is finally nearing its end.`);
		} else if (slave.preg + slave.pregData.normalBirth <= slave.pregWeek) {
			if (slave.preg === slave.pregWeek / 2) {
				r.push(`${he} could shockingly pass for a girl half as far along.`);
			} else if (slave.preg === slave.pregWeek / 4) {
				r.push(`${he} could shockingly pass for a girl only a quarter as far along.`);
			} else {
				r.push(`${he} shockingly only looks like a girl on ${his} ${ordinalSuffix(slave.preg)} week of pregnancy.`);
			}
		} else if (slave.preg + (slave.pregData.normalBirth / 2) <= slave.pregWeek) {
			if (slave.preg === slave.pregWeek / 2) {
				r.push(`${he} could surprisingly pass for a girl half as far along.`);
			} else if (slave.preg === slave.pregWeek / 4) {
				r.push(`${he} could surprisingly pass for a girl only a quarter as far along.`);
			} else {
				r.push(`${he} surprisingly only looks like a girl on ${his} ${ordinalSuffix(slave.preg)} week of pregnancy.`);
			}
		} else if (slave.preg + (slave.pregData.normalBirth / 4) <= slave.pregWeek) {
			if (slave.preg === slave.pregWeek / 2) {
				r.push(`${he} could pass for a girl half as far along.`);
			} else if (slave.preg === slave.pregWeek / 4) {
				r.push(`${he} could pass for a girl only a quarter as far along.`);
			} else {
				r.push(`${he} only looks like a woman on ${his} ${ordinalSuffix(slave.preg)} week of pregnancy.`);
			}
		} else {
			r.push(`${his} pregnancy is smaller than anticipated.`);
		}
	} else if (slave.preg > slave.pregWeek && slave.preg <= slave.pregData.normalBirth + 2 && slave.bellyPreg >= 100) {
		if (slave.preg > slave.pregData.minLiveBirth && slave.preg >= slave.pregWeek + 10) {
			r.push(`Even though ${he} is a mere ${slave.pregWeek} weeks along, ${his} pregnancy is at its end.`);
		} else if (slave.preg >= slave.pregWeek + (slave.pregData.normalBirth / 2.66)) {
			r.push(`Despite being pregnant for only ${slave.pregWeek} weeks,`);
			if (slave.preg === slave.pregWeek * 2) {
				r.push(`${he} could shockingly pass for a girl twice as far along.`);
			} else if (slave.preg === slave.pregWeek * 4) {
				r.push(`${he} could shockingly pass for a girl nearly four times as far along.`);
			} else {
				r.push(`${he} shockingly looks like a girl on ${his} ${ordinalSuffix(slave.preg)} week of pregnancy.`);
			}
		} else if (slave.preg >= slave.pregWeek + (slave.pregData.normalBirth / 4)) {
			r.push(`Despite being pregnant for only ${slave.pregWeek} weeks,`);
			if (slave.preg === slave.pregWeek * 2) {
				r.push(`${he} could surprisingly pass for a girl twice as far along.`);
			} else if (slave.preg === slave.pregWeek * 4) {
				r.push(`${he} could surprisingly pass for a girl nearly four times as far along.`);
			} else {
				r.push(`${he} surprisingly looks like a girl on ${his} ${ordinalSuffix(slave.preg)} week of pregnancy.`);
			}
		} else if (slave.preg >= slave.pregWeek + (slave.pregData.normalBirth / 8)) {
			r.push(`Despite being pregnant for only ${slave.pregWeek} weeks,`);
			if (slave.preg === slave.pregWeek * 2) {
				r.push(`${he} could pass for a girl twice as far along.`);
			} else if (slave.preg === slave.pregWeek * 4) {
				r.push(`${he} could pass for a girl nearly four times as far along.`);
			} else {
				r.push(`${he} looks like a woman on ${his} ${ordinalSuffix(slave.preg)} week of pregnancy.`);
			}
		} else {
			r.push(`Despite being pregnant for only ${slave.pregWeek} weeks, ${his} pregnancy is larger than anticipated.`);
		}
	}
	if (slave.pregKnown === 1 && V.saleDescription === 0) {
		const slaveWD = WombGetLittersData(slave);
		if (slave.geneticQuirks.superfetation === 2 && slaveWD.litters.length > 1) {
			if (V.pregnancyMonitoringUpgrade !== 1) {
				let sameFather = 1;
				const sameFatherID = slaveWD.litterData[0][0].fatherID;
				for (let litCount = 0; litCount < slaveWD.litters.length; litCount++) {
					if (slaveWD.litterData[litCount][litCount] !== sameFatherID) {
						sameFather = 0;
						break;
					}
				}
				r.push(`${His} superfetation has resulted in multiple simultaneous pregnancies;`);
				if (sameFather !== 1) {
					r.push(`tests report multiple different sources.`);
				} else {
					if (slaveWD.litterData[slaveWD.litters.length-1][0].age > slave.pregData.normalBirth / 8) {
						r.push(`all of them too young to tell the father of.`);
					} else if (slave.pregSource === -7) {
						r.push(`all of them modified children from the gene lab.`);
					} else if (slave.pregSource === -1) {
						r.push(`all of them yours.`);
					} else if (slave.pregSource === -2) {
						r.push(`all of them fathered by your citizens.`);
					} else if (slave.pregSource === -3) {
						r.push(`all of them fathered by your former Master. He was quite the busy man.`);
					} else if (slave.pregSource === -4) {
						r.push(`all of them fathered by another arcology owner.`);
					} else if (slave.pregSource === -5) {
						r.push(`all of them fathered by one of your clients.`);
					} else if (slave.pregSource === -6) {
						r.push(`all of them fathered by the Societal Elite.`);
					} else if (slave.pregSource === -9) {
						r.push(`all of them fathered by the Futanari Sisters, given how far along ${he} is and ${his} history.`);
					} else if (slave.pregSource === 0) {
						r.push(`all of them of unidentifiable sources.`);
					} else if (slave.pregSource === slave.ID) {
						r.push(`all of them ${his} own.`);
					} else {
						r.push(`all of them ${daddy}'s.`);
					}
				}
			}
		} else {
			if (slave.pregSource === -7) {
				r.push(`${His} womb contains`);
				if (slave.pregType > 1) {
					if (slave.pregType > 10) {
						r.push(`many`);
					}
					r.push(`modified children`);
				} else {
					r.push(`a modified child`);
				}
				r.push(`from the gene lab.`);
			} else if (slave.preg > slave.pregData.normalBirth / 8) {
				if (slave.pregSource === -1) {
					r.push(`Tests show ${his} womb contains`);
					if (slave.pregType > 1) {
						if (slave.pregType > 10) {
							r.push(`many of`);
						}
						r.push(`your growing children.`);
					} else {
						r.push(`your growing child.`);
					}
				} else if (slave.pregSource === -2) {
					r.push(`Tests show ${his} womb contains`);
					if (slave.pregType > 1) {
						if (slave.pregType > 10) {
							r.push(`many`);
						}
						r.push(`children`);
					} else {
						r.push(`a child`);
					}
					r.push(`fathered by one of your citizens.`);
				} else if (slave.pregSource === -3) {
					r.push(`Tests show ${his} womb contains`);
					if (slave.pregType > 1) {
						if (slave.pregType > 10) {
							r.push(`many`);
						}
						r.push(`children`);
					} else {
						r.push(`a child`);
					}
					r.push(`fathered by your former Master. He was quite the busy man.`);
				} else if (slave.pregSource === -4) {
					r.push(`Tests show ${his} womb contains`);
					if (slave.pregType > 1) {
						if (slave.pregType > 10) {
							r.push(`many`);
						}
						r.push(`children`);
					} else {
						r.push(`a child`);
					}
					r.push(`fathered by another arcology owner.`);
				} else if (slave.pregSource === -5) {
					r.push(`Tests show ${his} womb contains`);
					if (slave.pregType > 1) {
						if (slave.pregType > 10) {
							r.push(`many`);
						}
						r.push(`children`);
					} else {
						r.push(`a child`);
					}
					r.push(`fathered by one of your clients.`);
				} else if (slave.pregSource === -6) {
					r.push(`Tests show ${his} womb contains`);
					if (slave.pregType > 1) {
						if (slave.pregType > 10) {
							r.push(`many`);
						}
						r.push(`children`);
					} else {
						r.push(`a child`);
					}
					r.push(`fathered by the Societal Elite.`);
				} else if (slave.pregSource === -9) {
					r.push(`${His} womb contains`);
					if (slave.pregType > 1) {
						if (slave.pregType > 10) {
							r.push(`many`);
						}
						r.push(`children`);
					} else {
						r.push(`a child`);
					}
					r.push(`fathered by the Futanari Sisters, given how far along ${he} is and ${his} history.`);
				} else if (slave.pregSource === 0) {
					r.push(`Tests are inconclusive on who fathered the`);
					if (slave.pregType > 1) {
						if (slave.pregType > 10) {
							r.push(`many`);
						}
						r.push(`children`);
					} else {
						r.push(`child`);
					}
					r.push(`growing in ${his} womb.`);
				} else if (slave.pregSource === slave.ID) {
					r.push(`Tests show ${he} did this to ${himself}.`);
				} else {
					r.push(`Tests show ${his} womb contains`);
					if (slave.pregType > 1) {
						if (slave.pregType > 10) {
							r.push(`many of`);
						}
						r.push(`${daddy}'s growing children.`);
					} else {
						r.push(`${daddy}'s growing child.`);
					}
				}
			} else {
				r.push(`It is too early to tell who exactly fathered the child growing in ${his} womb.`);
			}
		}
	}
	if (slave.bellyPreg > (slave.pregAdaptation * 1000)) {
		r.push(`${He} is undergoing a <span class="red">high risk pregnancy.</span>`);
	}

	if (slave.belly >= 10000) {
		r.push(`${His} stomach is <span class="coral">large enough to be in the way,</span> both in daily affairs and during sex.`);
	}
	return r.join(" ");
};


code:
/**
 * @param {App.Entity.SlaveState} slave
 * @returns {string}
 */
App.Desc.superfetation = function(slave) {
	const r = [];
	const {
		he, him, his, hers, himself, boy, He, His
	} = getPronouns(slave);
	let lsd;
	let daddy;
	const slaveWD = WombGetLittersData(slave);
	if (slave.geneticQuirks.superfetation === 2 && slaveWD.litters.length > 1 && V.pregnancyMonitoringUpgrade === 1 && V.saleDescription === 0) {
		r.push(`${His} womb contains ${num(slaveWD.litters.length)} separate pregnancies`);
		for (let litCount = 0; litCount < slaveWD.litters.length; litCount++) {
			const countLitter = slaveWD.countLitter[litCount];
			const is = countLitter > 1 ? "are" : "is";
			const was = countLitter > 1 ? "were" : "was";
			if (litCount === 0) {
				r.push(`the eldest`);
				if (countLitter > 1) {
					r.push(`set of ${num(countLitter)},`);
				} else {
					r.push(`one,`);
				}
				r.push(`at ${slaveWD.litters[litCount]}`);
				if (slaveWD.litters[litCount] > 1) {
					r.push(`weeks`);
				} else {
					r.push(`week`);
				}
				r.push(`of development,`);
				if (slaveWD.litterData[litCount][0].fatherID === -7) {
					r.push(`${is} from the gene lab,`);
				} else if (slaveWD.litterData[litCount][0].age > slave.pregData.normalBirth / 8) {
					if (slaveWD.litterData[litCount][0].fatherID === -1) {
						r.push(`${was} fathered by your seed,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -2) {
						r.push(`${was} fathered by one of your citizens,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -3) {
						r.push(`${was} fathered by your former Master,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -4) {
						r.push(`${was} fathered by another arcology owner,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -5) {
						r.push(`${was} fathered by one of your clients,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -6) {
						r.push(`${was} fathered by a member of the Societal Elite,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -9) {
						r.push(`${was} fathered by the Futanari Sisters,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === 0) {
						r.push(`${is} from an unidentifiable source,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === slave.ID) {
						r.push(`${is} from ${his} own handiwork,`);
					} else {
						if (slaveWD.litterData[litCount][0].fatherID > 0) {
							lsd = findFather(slaveWD.litterData[litCount][0].fatherID);
							if (lsd) {
								daddy = SlaveFullName(lsd);
							} else {
								daddy = "another slave";
							}
						} else if (slaveWD.litterData[litCount][0].fatherID in V.missingTable && V.showMissingSlaves) {
							daddy = V.missingTable[slave.pregSource].fullName;
						}
						r.push(`${was} fathered by ${daddy}'s seed,`);
					}
				} else {
					r.push(`${is} too young to tell the father of,`);
				}
			} else if (litCount === slaveWD.litters.length - 1) {
				r.push(`and the youngest`);
				if (countLitter > 1) {
					r.push(`set of ${num(countLitter)},`);
				} else {
					r.push(`one,`);
				}
				r.push(`at ${slaveWD.litters[litCount]} week`);
				if (slaveWD.litters[litCount] > 1) {
					r.push(`weeks`);
				} else {
					r.push(`week`);
				}
				r.push(`of development,`);
				if (slaveWD.litterData[litCount][0].fatherID === -7) {
					r.push(`${is} from the gene lab.`);
				} else if (slaveWD.litterData[litCount][0].age > slave.pregData.normalBirth / 8) {
					if (slaveWD.litterData[litCount][0].fatherID === -1) {
						r.push(`${was} fathered by your seed.`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -2) {
						r.push(`${was} fathered by one of your citizens.`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -3) {
						r.push(`${was} fathered by your former Master. He was quite the busy man.`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -4) {
						r.push(`${was} fathered by another arcology owner.`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -5) {
						r.push(`${was} fathered by one of your clients.`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -6) {
						r.push(`${was} fathered by a member of the Societal Elite.`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -9) {
						r.push(`${was} fathered by the Futanari Sisters.`);
					} else if (slaveWD.litterData[litCount][0].fatherID === 0) {
						r.push(`${is} from an unidentifiable source.`);
					} else if (slaveWD.litterData[litCount][0].fatherID === slave.ID) {
						r.push(`${is} from ${his} own seed.`);
					} else {
						if (slaveWD.litterData[litCount][0].fatherID > 0) {
							lsd = findFather(slaveWD.litterData[litCount][0].fatherID);
							if (lsd) {
								daddy = SlaveFullName(lsd);
							} else {
								daddy = "another slave";
							}
						} else if (slaveWD.litterData[litCount][0].fatherID in V.missingTable && V.showMissingSlaves) {
							daddy = V.missingTable[slave.pregSource].fullName;
						}
						r.push(`${was} fathered by ${daddy}'s seed.`);
					}
				} else {
					r.push(`${is} too young to tell the father of.`);
				}
			} else {
				r.push(`the next set of ${num(countLitter)} at ${slaveWD.litters[litCount]} week`);
				if (slaveWD.litters[litCount] > 1) {
					r.push(`weeks`);
				} else {
					r.push(`week`);
				}
				r.push(`of development`);
				if (slaveWD.litterData[litCount][0].fatherID === -7) {
					r.push(`${is} from the gene lab,`);
				} else if (slaveWD.litterData[litCount][0].age > slave.pregData.normalBirth / 8) {
					if (slaveWD.litterData[litCount][0].fatherID === -1) {
						r.push(`${was} fathered by your seed,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -2) {
						r.push(`${was} fathered by one of your citizens,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -3) {
						r.push(`${was} fathered by your former Master,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -4) {
						r.push(`${was} fathered by another arcology owner,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -5) {
						r.push(`${was} fathered by one of your clients,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -6) {
						r.push(`${was} fathered by a member of the Societal Elite,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === -9) {
						r.push(`${was} fathered by the Futanari Sisters,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === 0) {
						r.push(`${is} from an unidentifiable source,`);
					} else if (slaveWD.litterData[litCount][0].fatherID === slave.ID) {
						r.push(`${is} from ${his} own handiwork,`);
					} else {
						if (slaveWD.litterData[litCount][0].fatherID > 0) {
							lsd = findFather(slaveWD.litterData[litCount][0].fatherID);
							if (lsd) {
								daddy = SlaveFullName(lsd);
							} else {
								daddy = "another slave";
							}
						} else if (slaveWD.litterData[litCount][0].fatherID in V.missingTable && V.showMissingSlaves) {
							daddy = V.missingTable[slave.pregSource].fullName;
						}
						r.push(`${was} fathered by ${daddy}'s seed,`);
					}
				} else {
					r.push(`${is} too young to tell the father of,`);
				}
			}
		}
	}
	return r.join(" ");
};


code:
:: Export Slave [nobr]

<<set $nextButton = "Continue", $nextLink = "Slave Interact">>

//Copy the following block of code for importing//

<<if (ndef $activeSlave.currentRules) || ($activeSlave.currentRules.length < 1)>><<set _currentRules = "[]">><<else>><<set _currentRules = "$activeSlave.currentRules">><</if>>

/*

 __Direct JSON export method__:

 */

	<<set _jsonText = toJson($activeSlave)>>
	_jsonText


code:
:: Find Slave [nobr jump-to-safe jump-from-safe]

<<set $nextButton = "Back to Main", $nextLink = "Main">>

After spending a minute trying to remember some details about one of your slaves, you sit down behind your desk and tell $assistant.name that you need to locate a particular slave's records.

"Certainly, <<= properMaster()>>. What can you tell me about them?"

"They're called something like:
<<textbox "_nameSearch" "" autofocus>>
<<link "Locate">>
	<>
<</link>>

//(Enter a fragment of their nickname, name, surname, birth name, or birth surname)//

"In the past, they were:
<<textbox "_backgroundSearch" "">>
<<link "Locate">>
	<>
<</link>>

//(Enter a fragment of their origin or past job, for example, "shelter" or "lawyer")//

"Their data should meet this condition:
<<textbox "_dataSearch" "">>
<<link "Locate">>
	<>
<</link>>

//(Enter a conditional expression which evaluates to true for the slave you want to find, such as "slave.physicalAge >= 18 && slave.physicalAge < 21")//

	/* results list gets populated here by jQuery */


code:
:: Import Slave [nobr]

<<set $nextButton = "Continue", $nextLink = "Slave Interact">>

//Paste the code into the text box and click Apply//

<<set $tempSlave = "">>
<<textbox "$tempSlave" $tempSlave>>
<<link "Apply">>
	<<if (def $tempSlave) && ($tempSlave !== "")>>
		<<set $tempSlave = eval('({' + $tempSlave + '})')>>
		<<set $tempSlave.ID = generateSlaveID()>>
		<<run newSlave($tempSlave)>>
		<<replace #import>>
			''Slave imported successfully!''

		<</replace>>
		<<unset $tempSlave>>
	<<else>>
		<<replace #import>>
			''Slave not imported!''

		<</replace>>
	<</if>>
<</link>>

<<link "Continue">>
	<<goto "Slave Interact">>
<</link>>


code:
:: FFuckdollAnal [nobr no-history]

<<set $AS = $activeSlave.ID>>
<<setLocalPronouns $activeSlave>>

<<set getSlave($AS).counter.anal++, $analTotal++>>
You decide to use the Fuckdoll's <<if getSlave($AS).anus > 3>>gaping<<elseif getSlave($AS).anus == 3>>loose<<elseif getSlave($AS).anus == 2>>relaxed<<elseif getSlave($AS).anus == 1>>tight<</if>> rear hole.
<<if getSlave($AS).fuckdoll <= 10>>
	Since $he is not well adapted to life as a living sex toy yet, $he won't respond to position commands. So, you simply <<if hasAnyLegs(getSlave($AS))>>walk over to $him<<else>>flip $him over<</if>> and ram <<if $PC.dick != 0>>your cock<<else>>a strap-on<</if>> up $his rear hole.
<<elseif getSlave($AS).fuckdoll <= 80>>
	$He can follow intermediate commands, so you order $him to present $his rear hole. $He obediently <<if hasAnyLegs(getSlave($AS))>>bends over, arches $his back, and<<else>>flips over and<</if>> winks $his anus until you insert <<if $PC.dick != 0>>your cock<<else>>a strap-on<</if>>.
<<else>>
	$He can follow advanced commands, so you bring $him over to your chair <<if hasAnyLegs(getSlave($AS))>>and order $him to squat down onto your <<if $PC.dick != 0>>cock<<else>>strap-on<</if>> and slide $his anus up and down <<if $PC.dick != 0>>your<<else>>the<</if>> shaft.<<else>>and impale $him on <<if $PC.dick != 0>>your cock<<else>>your strap-on<</if>>, ordering $him to do $his feeble best to bounce.<</if>>
<</if>>
<<if getSlave($AS).fuckdoll <= 20>>
	$He's not fully used to having things suddenly forced up $his ass, so $he struggles, and $his sphincter spasms deliciously.
<<elseif getSlave($AS).fuckdoll <= 40>>
	Aware that $he is supposed to relax and accept anal rape, $he does $his best to accommodate the sodomy.
<<else>>
	You command $him to milk your <<if $PC.dick != 0>>cock<<else>>strap-on<</if>> with $his asshole, and $he obediently tightens $his sphincter against the invading phallus rhythmically.
<</if>>
<<if getSlave($AS).fuckdoll <= 60>>
	<<if getSlave($AS).energy > 60>>Denied any other outlet for $his powerful sex drive, $he orgasms.<</if>>
<<else>>
	Tuned to enjoy any use by total denial of all other stimulation, $he orgasms repeatedly as you fuck $his anus.
<</if>>
<<if getSlave($AS).voice == 0>>
	Though $he is mute, $his breath hisses loudly <<if getSlave($AS).lips > 95>>past the lips of $his facepussy<<else>>through $his mouth insert<</if>>.
<<else>>
	$He moans, <<if getSlave($AS).lips > 95>>and the lips of $his facepussy quiver<<else>>struggling to force the sound past $his mouth insert<</if>>.
<</if>>
You climax<<if $PC.dick != 0>>, filling $his rectum with your cum,<</if>> and return $him to <<if hasAnyLegs(getSlave($AS))>>a standing position<<else>>where $he was resting<</if>>.
<<if $PC.dick != 0>>
	<<if getSlave($AS).anus > 2>>Your cum flows out of $his gaped rear hole and down the material of $his suit.
	<<elseif getSlave($AS).anus == 2>>Your cum drips out of $his loosened rear hole and down the material of $his suit.
	<<else>>$His tight rear hole retains every drop of your cum.
	<</if>>
	<<if canImpreg(getSlave($AS), $PC)>>
		<<= knockMeUp(getSlave($AS), 5, 0, -1)>>
	<</if>>
	The Fuckdoll will be cleaned by another slave.
<</if>>
<<if getSlave($AS).anus == 0>>
	<<if getSlave($AS).fetish != "mindbroken">>
		As you return to your business, $he shakes slightly in place, and a few low moans come out of $his face hole. This is probably a reaction to losing $his anal virginity.
	<<else>>
		$He gives no external indication that $he's aware that $he's just lost $his anal virginity.
	<</if>>
	In any case, $his rear hole has been broken in.
	<<set getSlave($AS).anus = 1>>
<</if>>

<<if passage() != "Slave Interact">>
	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
<</if>>


code:
:: FFuckdollImpreg [nobr no-history]

<<set $AS = $activeSlave.ID>>
<<setLocalPronouns $activeSlave>>
<<set _bonus = random(6,20)>>

<<if getSlave($AS).mpreg == 1>>
	<<set getSlave($AS).counter.anal += _bonus+1, $analTotal += _bonus+1>>
<<else>>
	<<set getSlave($AS).counter.vaginal += _bonus+1, $vaginalTotal += _bonus+1>>
<</if>>

You decide to use the Fuckdoll's fertile womb to grow a child.
<<if getSlave($AS).fuckdoll <= 10>>
	Since $he is not well adapted to life as a living sex toy yet, $he won't respond to position commands. So, you simply <<if hasAnyLegs(getSlave($AS))>>push $him down to lie on the couch<<else>>set $him on your desk<</if>> and shove <<if $PC.dick != 0>>your cock<<else>>a strap-on<</if>> inside $his <<if getSlave($AS).mpreg == 1>>asshole<<else>>vagina<</if>>.
<<elseif getSlave($AS).fuckdoll <= 70>>
	$He can follow intermediate commands, so you order $him into a position for use of $his <<if getSlave($AS).mpreg == 1>>rear<<else>>front<</if>> hole. $He obediently <<if hasAllLimbs(getSlave($AS))>>gets down on all fours and <</if>>cocks $his hips, offering $his <<if getSlave($AS).mpreg == 1>>asspussy<<else>>cunt<</if>> until you insert your
	<<if $PC.dick > 0>>
		cock
	<<else>>
		strap-on
	<</if>>
	into $his <<if getSlave($AS).mpreg == 1>>winking<<else>>wet<</if>> channel.
<<else>>
	$He can follow advanced commands, so you bring $him over to your chair <<if hasAnyLegs(getSlave($AS))>>and order $him to squat down onto your cock and ride.<<else>>and impale $him on your cock, ordering $him to do $his feeble best to bounce.<</if>>
<</if>>
<<if getSlave($AS).fuckdoll <= 20>>
	$He's not fully used to being raped without warning, so $he struggles, $his muscles spasming delightfully.
<<elseif getSlave($AS).fuckdoll <= 40>>
	Aware that $he is supposed to relax and accept rape, $he does $his best to let you take $him without resistance.
<<else>>
	You command $him to milk your cock with $his <<if getSlave($AS).mpreg == 1>>anal<<else>>vaginal<</if>> walls, and $he obediently starts to flex $his well-developed <<if getSlave($AS).mpreg == 1>>cunt<<else>>anal<</if>> muscles, squeezing you from base to tip.
<</if>>
<<if getSlave($AS).fuckdoll <= 60>>
	<<if getSlave($AS).energy > 40>>Denied any other outlet for $his healthy sex drive, $he orgasms.<</if>>
<<else>>
	$He orgasmed for the first time as you entered $him, and $he continues to do so as you fuck $him. $He's perfectly tuned.
<</if>>
<<if getSlave($AS).voice == 0>>
	Though $he is mute, $his breath hisses loudly <<if getSlave($AS).lips > 95>>past the lips of $his facepussy<<else>>through $his mouth insert<</if>>.
<<else>>
	$He moans, <<if getSlave($AS).lips > 95>>and the lips of $his facepussy quiver<<else>>struggling to force the sound past $his mouth insert<</if>>.
<</if>>
You climax, your cum shooting forward to splash against $his womb, and return $he to <<if hasAnyLegs(getSlave($AS))>>a standing position<<else>>where $he was resting<</if>> to allow your seed to find $his mark.
<<if getSlave($AS).mpreg == 1>>
	<<if getSlave($AS).anus > 2>>Your cum flows out of $his gaping rear hole and down the material of $his suit.
	<<elseif getSlave($AS).anus == 2>>Your cum drips out of $his well-fucked rear hole and down the material of $his suit.
	<<else>>$His tight rear hole retains almost every drop of your cum. A few escape and run down the material of $his suit.
	<</if>>
	The Fuckdoll will be cleaned by another slave.
	<<if getSlave($AS).anus == 0>>
		<<if getSlave($AS).fetish != "mindbroken">>
			As you return to your business, $he shakes slightly in place, and a few low moans come out of $his face hole. This is probably a reaction to losing $his anal virginity.
		<<else>>
			$He gives no external indication that $he's aware that $he's just lost $his virginity.
		<</if>>
		In any case, $his rear hole has been broken in.
		<<set getSlave($AS).anus = 1>>
	<</if>>
<<else>>
	<<if getSlave($AS).vagina >= 10>>Your cum steadily flows from its prolapsed front hole and down the material of $his suit.
	<<elseif getSlave($AS).vagina > 2>>Your cum flows out of $his gaping front hole and down the material of $his suit.
	<<elseif getSlave($AS).vagina == 2>>Your cum drips out of $his well-fucked front hole and down the material of $his suit.
	<<else>>$His tight front hole retains almost every drop of your cum. A few escape and run down the material of $his suit.
	<</if>>
	The Fuckdoll will be cleaned by another slave.
	<<if getSlave($AS).vagina == 0>>
		<<if getSlave($AS).fetish != "mindbroken">>
			As you return to your business, $he shakes slightly in place, and a few low moans come out of $his face hole. This is probably a reaction to losing $his virginity.
		<<else>>
			$He gives no external indication that $he's aware that $he's just lost $his virginity.
		<</if>>
		In any case, $his front hole has been broken in.
		<<set getSlave($AS).vagina = 1>>
	<</if>>
<</if>>

You repeat this ritual throughout the week, ensuring that $he will be an @@.pregnant;incubator for your child.@@

<<= knockMeUp(getSlave($AS), 100, 2, -1, 1)>>

<<if $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1>>
	<<if getSlave($AS).breedingMark != 1 || $propOutcome == 0>>
		Rumors spread about you knocking up your playthings; the Societal Elite are @@.elites.loss; very displeased@@ by these rumors.
		<<set $failedElite += 5>>
	<</if>>
<</if>>

<<if passage() != "Slave Interact">>
	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
<</if>>


code:
:: FFuckdollOral [nobr no-history]

<<set $AS = $activeSlave.ID>>
<<setLocalPronouns $activeSlave>>

<<set getSlave($AS).counter.oral++, $oralTotal++>>
You decide to use the Fuckdoll's <<if getSlave($AS).lips > 95>>facepussy<<else>>face hole<</if>>.
<<if getSlave($AS).fuckdoll <= 10>>
	Since $he is not well adapted to life as a living sex toy yet, $he won't respond to position commands. So, you simply <<if hasBothLegs(getSlave($AS))>>shove $him into a kneeling position<<else>>set $him on the couch<</if>> and straddle $his face.
<<elseif getSlave($AS).fuckdoll <= 80>>
	$He can follow intermediate commands, so you order $him into a position for use of $his face hole. $He obediently <<if hasBothLegs(getSlave($AS))>>gets to $his knees<<else>>cranes $his neck up<</if>> and sticks $his tongue out as far as it will go, wiggling it invitingly. You straddle $his face.
<<else>>
	$He can follow advanced commands, so you order $him into a position for use of $his face hole. $He instantly <<if hasAnyLegs(getSlave($AS))>><<if $PC.dick != 0>>bends at the waist and turns $his head upward, placing $his throat horizontally and at waist height.<<else>>gets to $his knees and turns $his head upward at just the right angle for a pussy to ride $his face hole.<</if>><<else>>cranes $his neck up and sticks $his tongue out as far as it will go, wiggling it invitingly.<</if>> You straddle $his face.
<</if>>
<<if getSlave($AS).fuckdoll <= 20>>
	$He's not fully used to being surprised with face rape, so $he struggles, and $his difficulty breathing <<if $PC.dick != 0>>makes $his throat spasm around your dickhead<<else>>feels lovely on your cunt<</if>>.
<<elseif getSlave($AS).fuckdoll <= 50>>
	Aware that $he is supposed to relax and let you rape $his face, $he does $his best to let you <<if $PC.dick != 0>>fuck $his throat<<else>>ride $his face<</if>>.
<<else>>
	You command $him to <<if $PC.dick != 0>>milk your dick, and $he begins to suck with almost frightening force<<else>>pleasure your cunt, and $he begins to eat you out with almost frightening hunger<</if>>.
<</if>>
<<if getSlave($AS).fuckdoll <= 60>>
	<<if getSlave($AS).energy > 80>>Denied any other outlet for $his extreme sex drive, $he orgasms from nothing more than oral stimulation.<</if>>
<<else>>
	$He's so perfectly tuned that $he begins to orgasm from nothing more than oral stimulation, and $he continues to shiver with repeated orgasms as $he sucks.
<</if>>
You climax, <<if $PC.dick != 0>>blowing your load down $his throat<<else>>giving $him a good amount of femcum to swallow<</if>>, and return $him to <<if hasAnyLegs(getSlave($AS))>>a standing position<<else>>where $he was resting<</if>>.
<<if $PC.dick != 0>>
	<<if getSlave($AS).lips > 95>>$He gives sloppy blowjobs, $his lips being too big for much control, and strings of your cum beribbon $his suit. The Fuckdoll will be cleaned by another slave.
	<<else>>$He swallows repeatedly as $he returns to $his resting posture.
	<</if>>
<</if>>

<<if passage() != "Slave Interact">>
	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
<</if>>


code:
:: FFuckdollVaginal [nobr no-history]

<<set $AS = $activeSlave.ID>>
<<setLocalPronouns $activeSlave>>

<<set getSlave($AS).counter.vaginal++, $vaginalTotal++>>
You decide to use the Fuckdoll's <<if getSlave($AS).vagina > 3>>cavernous<<elseif getSlave($AS).vagina == 3>>soft<<elseif getSlave($AS).vagina == 2>>inviting<<elseif getSlave($AS).vagina == 1>>tight<</if>> front hole.
<<if getSlave($AS).fuckdoll <= 10>>
	Since $he is not well adapted to life as a living sex toy yet, $he won't respond to position commands. So, you simply <<if hasAnyLegs(getSlave($AS))>>push $him down to lie on the couch<<else>>set $him on your desk<</if>> and shove <<if $PC.dick != 0>>your cock<<else>>a strap-on<</if>> inside $his vagina.
<<elseif getSlave($AS).fuckdoll <= 70>>
	$He can follow intermediate commands, so you order $him into a position for use of $his front hole. $He obediently <<if hasAllLimbs(getSlave($AS))>>gets down on all fours and <<elseif hasAnyLegs(getSlave($AS))>>bends over and <</if>>cocks $his hips, offering $his cunt until you insert <<if $PC.dick != 0>>your cock<<else>>a strap-on<</if>> into $his wet channel.
<<else>>
	$He can follow advanced commands, so you bring $him over to your chair <<if hasAnyLegs(getSlave($AS))>>and order $him to squat down onto your <<if $PC.dick != 0>>cock<<else>>strap-on<</if>> and ride.<<else>>and impale $him on <<if $PC.dick != 0>>your cock<<else>>your strap-on<</if>>, ordering $him to do $his feeble best to bounce.<</if>>
<</if>>
<<if getSlave($AS).fuckdoll <= 20>>
	$He's not fully used to being raped without warning, so $he struggles, $his muscles spasming delightfully.
<<elseif getSlave($AS).fuckdoll <= 40>>
	Aware that $he is supposed to relax and accept rape, $he does $his best to let you take $him without resistance.
<<else>>
	You command $him to milk your <<if $PC.dick != 0>>cock<<else>>strap-on<</if>> with $his vaginal walls, and $he obediently starts to flex $his well-developed cunt muscles, squeezing <<if $PC.dick != 0>>you<<else>>your strap-on<</if>> from base to tip.
<</if>>
<<if getSlave($AS).fuckdoll <= 60>>
	<<if getSlave($AS).energy > 40>>Denied any other outlet for $his healthy sex drive, $he orgasms.<</if>>
<<else>>
	$He orgasmed for the first time as you entered $him, and $he continues to do so as you fuck $him. $He's perfectly tuned.
<</if>>
<<if getSlave($AS).voice == 0>>
	Though $he is mute, $his breath hisses loudly <<if getSlave($AS).lips > 95>>past the lips of $his facepussy<<else>>through $his mouth insert<</if>>.
<<else>>
	$He moans, <<if getSlave($AS).lips > 95>>and the lips of $his facepussy quiver<<else>>struggling to force the sound past $his mouth insert<</if>>.
<</if>>
You climax<<if $PC.dick != 0>>, your cum shooting forward to splash against $his womb,<</if>> and return $him to <<if hasAnyLegs(getSlave($AS))>>a standing position<<else>>where $he was resting<</if>>.
<<if $PC.dick != 0>>
	<<if getSlave($AS).vagina > 2>>Your cum flows out of $his gaping front hole and down the material of $his suit.
	<<elseif getSlave($AS).vagina == 2>>Your cum drips out of $his well-fucked front hole and down the material of $his suit.
	<<else>>$His tight front hole retains almost every drop of your cum. A few escape and run down the material of $his suit.
	<</if>>
	<<if canImpreg(getSlave($AS), $PC)>>
		<<= knockMeUp(getSlave($AS), 5, 1, -1)>>
	<</if>>
	The Fuckdoll will be cleaned by another slave.
<</if>>
<<if getSlave($AS).vagina == 0>>
	<<if getSlave($AS).fetish != "mindbroken">>
		As you return to your business, $he shakes slightly in place, and a few low moans come out of $his face hole. This is probably a reaction to losing $his virginity.
	<<else>>
		$He gives no external indication that $he's aware that $he's just lost $his virginity.
	<</if>>
	In any case, @@.lime;$his front hole has been broken in.@@
	<<set getSlave($AS).vagina = 1>>
<</if>>

<<if passage() != "Slave Interact">>
	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
<</if>>