From 28ac350538d076a9af5087182ae88e3535459897 Mon Sep 17 00:00:00 2001
From: lowercasedonkey <lowercasedonkey@gmail.com>
Date: Sat, 13 Jun 2020 22:33:32 -0400
Subject: [PATCH] break into subfunctions

---
 src/npc/descriptions/dimensions.js | 608 +++++++++++++++--------------
 1 file changed, 321 insertions(+), 287 deletions(-)

diff --git a/src/npc/descriptions/dimensions.js b/src/npc/descriptions/dimensions.js
index f108a20587f..58020c27d0a 100644
--- a/src/npc/descriptions/dimensions.js
+++ b/src/npc/descriptions/dimensions.js
@@ -5,102 +5,14 @@
 App.Desc.dimensions = function(slave) {
 	const r = [];
 	const {
-		he, him, his, hers, himself, boy, He, His
+		he, him, his, himself, He, His
 	} = getPronouns(slave);
 
-	let _averageHeight = Height.mean(slave);
-	r.push(`is`);
-	if (slave.height <= (_averageHeight + 5) && slave.height >= (_averageHeight - 5)) {
-		r.push(`an average height`);
-		if (slave.physicalAge < 16) {
-			r.push(`for ${his} age`);
-		}
-	} else if (slave.height < (_averageHeight - 15)) {
-		r.push(`petite`);
-		if (slave.physicalAge < 16) {
-			r.push(`for ${his} age`);
-		}
-	} else if (slave.height < (_averageHeight - 5)) {
-		r.push(`short`);
-		if (slave.physicalAge < 16) {
-			r.push(`for ${his} age`);
-		}
-	} else if (slave.height > (_averageHeight + 15)) {
-		r.push(`very tall`);
-		if (slave.physicalAge < 16) {
-			r.push(`for ${his} age`);
-		}
-	} else if (slave.height > (_averageHeight + 5)) {
-		r.push(`tall`);
-		if (slave.physicalAge < 16) {
-			r.push(`for ${his} age`);
-		}
-	}
-	if (V.showHeightCMs === 1) {
-		r.push(`at ${heightToEitherUnit(slave.height)},`);
-	}
+	r.push(height());
 
 	r.push(`and`);
 
-	if (slave.weight > 190) {
-		if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-			r.push(either("perfectly curvy.", "perfectly plush."));
-		} else {
-			r.push(`<span class="red">${either("dangerously fat", "dangerously overweight", "extremely obese")}.</span>`);
-		}
-	} else if (slave.weight > 160) {
-		if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-			r.push(either("spectacularly curvy.", "spectacularly plush."));
-		} else {
-			r.push(`<span class="red">${either("extremely fat", "extremely overweight", "very obese")}.</span>`);
-		}
-	} else if (slave.weight > 130) {
-		if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-			r.push(either("amazingly curvy.", "amazingly plush."));
-		} else {
-			r.push(`<span class="red">${either("obese", "very fat", "very overweight")}.</span>`);
-		}
-	} else if (slave.weight > 95) {
-		if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-			if (slave.hips > 1) {
-				r.push(`${either("extremely curvy", "extremely plush")}, ${his} huge hips complementing ${his} plushness perfectly`);
-			} else {
-				r.push(`${either("extremely curvy", "extremely plush")}.`);
-			}
-		} else if (slave.hips > 1) {
-			r.push(`${either("extremely curvy", "extremely plush")}, but ${his} huge hips make the extra weight attractive on ${him}.`);
-		} else {
-			r.push(`<span class="red">${either("carrying a lot of extra weight", "fat", "overweight")}.</span>`);
-		}
-	} else if (slave.weight > 30) {
-		if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-			if (slave.hips > 1) {
-				r.push(`${either("quite curvy", "very plush")}, ${his} motherly hips adding to ${his} soft appeal`);
-			} else {
-				r.push(`${either("quite curvy", "very plush")}.`);
-			}
-		} else if (slave.hips > 1) {
-			r.push(`${either("quite curvy", "very plush")}, but ${his} motherly hips make the extra weight attractive on ${him}.`);
-		} else {
-			r.push(`<span class="red">${either("carrying extra weight", "chubby")}.</span>`);
-		}
-	} else if (slave.weight > 10) {
-		r.push(either("nicely plush.", "pleasingly curvy."));
-	} else if (slave.weight >= -10) {
-		r.push(either("a healthy weight.", `an attractive weight for ${his} frame.`, "neither too fat nor too skinny."));
-	} else if (slave.weight >= -30) {
-		r.push(either("appealingly skinny.", "pleasingly thin."));
-	} else if (slave.weight >= -95) {
-		if (slave.hips > 1) {
-			r.push(`${either("quite skinny", "very thin")}, but ${his} wide hips make the gap between ${his} thighs very noticeable.`);
-		} else if (slave.hips < -1) {
-			r.push(`${either("quite skinny", "very thin")}, but ${his} trim hips make ${him} look like a model.`);
-		} else {
-			r.push(`<span class="red">${either("rail thin", "too skinny", "underweight")}.</span>`);
-		}
-	} else {
-		r.push(`<span class="red">${either("dangerously skinny", "emaciated")}.</span>`);
-	}
+	r.push(weight());
 
 	if (slave.hips > 2) {
 		r.push(`${His} hips are unrealistically wide, it is obvious they have been artificially widened.`);
@@ -108,253 +20,375 @@ App.Desc.dimensions = function(slave) {
 
 	r.push(App.Desc.waist(slave));
 
-	if (V.arcologies[0].FSStatuesqueGlorification !== "unset") {
-		if (heightPass(slave)) {
-			r.push(`${He} is tall enough`);
-			if (setup.heightBoostingShoes.includes(slave.shoes)) {
-				r.push(`in ${his} ${heightToEitherUnit(heelLength(slave))} ${slave.shoes}`);
-			}
-			r.push(`to measure up to society's strict tastes.`);
-		} else {
-			r.push(`${He} fails to measure up to society's strict`);
-			if (setup.heightBoostingShoes.includes(slave.shoes)) {
-				r.push(`tastes even with ${his} ${heightToEitherUnit(heelLength(slave))} ${slave.shoes}`);
-			} else {
-				r.push(`tastes.`);
-			}
-		}
-	} else if (V.arcologies[0].FSPetiteAdmiration !== "unset") {
-		if (heightPass(slave)) {
-			r.push(`Society finds ${him} adorably short.`);
-		} else if (slave.height >= 170) {
-			r.push(`Society finds ${him} distastefully tall.`);
-		}
-	}
+	r.push(FS());
+	r.push(travel());
+
+	r.push(App.Desc.heightImplant(slave));
+
+	r.push(muscles());
+	r.push(arms());
+
+	return r.join(" ");
 
-	if (V.arcologies[0].FSGenderFundamentalistLawBeauty + V.arcologies[0].FSGenderRadicalistLawBeauty > 0) {
-		if (V.arcologies[0].FSHedonisticDecadence === "unset" && V.arcologies[0].FSPhysicalIdealistStrongFat === 0) {
-			if (slave.weight > 130) {
-				r.push(`${He} is much too fat for the fashionable feminine ideal.`);
-			} else if (slave.weight > 30) {
-				r.push(`${He} is too fat for the fashionable feminine ideal.`);
-			} else if (slave.weight < -30) {
-				r.push(`${He} is too skinny for the fashionable feminine ideal.`);
+
+	function height() {
+		const r = [];
+		const averageHeight = Height.mean(slave);
+		r.push(`is`);
+		if (slave.height <= (averageHeight + 5) && slave.height >= (averageHeight - 5)) {
+			r.push(`an average height`);
+			if (slave.physicalAge < 16) {
+				r.push(`for ${his} age`);
 			}
-		} else {
-			if (slave.weight > 130) {
-				r.push(`${He} is much too fat for the fashionable feminine ideal.`);
-			} else if (slave.weight < -30) {
-				r.push(`${He} is too skinny for the fashionable feminine ideal.`);
+		} else if (slave.height < (averageHeight - 15)) {
+			r.push(`petite`);
+			if (slave.physicalAge < 16) {
+				r.push(`for ${his} age`);
 			}
-		}
-	} else if (V.arcologies[0].FSSlimnessEnthusiastLaw === 1) {
-		if (V.arcologies[0].FSHedonisticDecadence === "unset" && V.arcologies[0].FSPhysicalIdealistStrongFat === 0) {
-			if (slave.weight > 30) {
-				r.push(`${He} is much too fat for the fashionable feminine ideal.`);
-			} else if (slave.weight > 10) {
-				r.push(`${He} is too fat for the fashionable feminine ideal.`);
+		} else if (slave.height < (averageHeight - 5)) {
+			r.push(`short`);
+			if (slave.physicalAge < 16) {
+				r.push(`for ${his} age`);
 			}
-		} else {
-			if (slave.weight > 60) {
-				r.push(`${He} is much too fat for the fashionable feminine ideal.`);
-			} else if (slave.weight > 30) {
-				r.push(`${He} is too fat for the fashionable feminine ideal.`);
+		} else if (slave.height > (averageHeight + 15)) {
+			r.push(`very tall`);
+			if (slave.physicalAge < 16) {
+				r.push(`for ${his} age`);
+			}
+		} else if (slave.height > (averageHeight + 5)) {
+			r.push(`tall`);
+			if (slave.physicalAge < 16) {
+				r.push(`for ${his} age`);
 			}
 		}
-	} else if (V.arcologies[0].FSHedonisticDecadenceLaw2 === 1) {
-		if (slave.weight <= 95) {
-			r.push(`${He} is too thin for the fashionable feminine ideal.`);
-		} else if (slave.weight <= 10) {
-			r.push(`${He} is much too thin for the fashionable feminine ideal.`);
+		if (V.showHeightCMs === 1) {
+			r.push(`at ${heightToEitherUnit(slave.height)},`);
 		}
+		return r.join(" ");
 	}
-
-	if (canWalk(slave)) {
-		if (slave.weight > (170 + (slave.muscles / 5)) && slave.physicalAge >= 18) {
-			r.push(`${He} is so fat that it is difficult for ${him} to move.`);
-			if (slave.muscles > 95) {
-				r.push(`However, ${he} is so powerfully built that ${he} can manage it with effort, though ${he} often has to stop for breaks.`);
-			} else if (slave.muscles > 30) {
-				r.push(`${He} can barely manage to get to ${his} feet unaided, and usually walks alongside objects to help relieve the weight.`);
-			} else if (slave.muscles > 5) {
-				r.push(`${He} requires assistance to get to ${his} feet, and tends to lean on things to help relieve the weight.Much furniture has met an early demise thanks to this habit.`);
+	function weight() {
+		const r = [];
+		if (slave.weight > 190) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r.push(either("perfectly curvy.", "perfectly plush."));
 			} else {
-				r.push(`${He} cannot get to ${his} feet unaided, and tries to stay seated as much as ${he} can.`);
+				r.push(`<span class="red">${either("dangerously fat", "dangerously overweight", "extremely obese")}.</span>`);
 			}
-		} else if (slave.weight > (110 + (slave.muscles / 20)) && slave.physicalAge <= 3) {
-			r.push(`${He} is so fat that it is difficult for ${him} to move.`);
-			if (slave.muscles > 95) {
-				r.push(`However, ${he} is so powerfully built that ${he} can manage it with effort, though ${he} often has to stop for breaks.`);
-			} else if (slave.muscles > 30) {
-				r.push(`${He} can barely manage to get to ${his} feet unaided, and usually walks alongside objects to help relieve the weight.`);
-			} else if (slave.muscles > 5) {
-				r.push(`${He} requires assistance to get to ${his} feet, and tends to lean on things to help relieve the weight.Much furniture has met an early demise thanks to this habit.`);
+		} else if (slave.weight > 160) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r.push(either("spectacularly curvy.", "spectacularly plush."));
 			} else {
-				r.push(`${He} cannot get to ${his} feet unaided, and tries to stay seated as much as ${he} can.`);
+				r.push(`<span class="red">${either("extremely fat", "extremely overweight", "very obese")}.</span>`);
 			}
-		} else if (slave.weight > (140 + (slave.muscles / 15)) && slave.physicalAge <= 12) {
-			r.push(`${He} is so fat that it is difficult for ${him} to move.`);
-			if (slave.muscles > 95) {
-				r.push(`However, ${he} is so powerfully built that ${he} can manage it with effort, though ${he} often has to stop for breaks.`);
-			} else if (slave.muscles > 30) {
-				r.push(`${He} can barely manage to get to ${his} feet unaided, and usually walks alongside objects to help relieve the weight.`);
-			} else if (slave.muscles > 5) {
-				r.push(`${He} requires assistance to get to ${his} feet, and tends to lean on things to help relieve the weight.Much furniture has met an early demise thanks to this habit.`);
+		} else if (slave.weight > 130) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r.push(either("amazingly curvy.", "amazingly plush."));
 			} else {
-				r.push(`${He} cannot get to ${his} feet unaided, and tries to stay seated as much as ${he} can.`);
+				r.push(`<span class="red">${either("obese", "very fat", "very overweight")}.</span>`);
 			}
-		} else if (slave.weight > (165 + (slave.muscles / 10)) && slave.physicalAge < 18) {
-			r.push(`${He} is so fat that it is difficult for ${him} to move.`);
-			if (slave.muscles > 95) {
-				r.push(`However, ${he} is so powerfully built that ${he} can manage it with effort, though ${he} often has to stop for breaks.`);
-			} else if (slave.muscles > 30) {
-				r.push(`${He} can barely manage to get to ${his} feet unaided, and usually walks alongside objects to help relieve the weight.`);
-			} else if (slave.muscles > 5) {
-				r.push(`${He} requires assistance to get to ${his} feet, and tends to lean on things to help relieve the weight.Much furniture has met an early demise thanks to this habit.`);
+		} else if (slave.weight > 95) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				if (slave.hips > 1) {
+					r.push(`${either("extremely curvy", "extremely plush")}, ${his} huge hips complementing ${his} plushness perfectly`);
+				} else {
+					r.push(`${either("extremely curvy", "extremely plush")}.`);
+				}
+			} else if (slave.hips > 1) {
+				r.push(`${either("extremely curvy", "extremely plush")}, but ${his} huge hips make the extra weight attractive on ${him}.`);
 			} else {
-				r.push(`${He} cannot get to ${his} feet unaided, and tries to stay seated as much as ${he} can.`);
+				r.push(`<span class="red">${either("carrying a lot of extra weight", "fat", "overweight")}.</span>`);
+			}
+		} else if (slave.weight > 30) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				if (slave.hips > 1) {
+					r.push(`${either("quite curvy", "very plush")}, ${his} motherly hips adding to ${his} soft appeal`);
+				} else {
+					r.push(`${either("quite curvy", "very plush")}.`);
+				}
+			} else if (slave.hips > 1) {
+				r.push(`${either("quite curvy", "very plush")}, but ${his} motherly hips make the extra weight attractive on ${him}.`);
+			} else {
+				r.push(`<span class="red">${either("carrying extra weight", "chubby")}.</span>`);
+			}
+		} else if (slave.weight > 10) {
+			r.push(either("nicely plush.", "pleasingly curvy."));
+		} else if (slave.weight >= -10) {
+			r.push(either("a healthy weight.", `an attractive weight for ${his} frame.`, "neither too fat nor too skinny."));
+		} else if (slave.weight >= -30) {
+			r.push(either("appealingly skinny.", "pleasingly thin."));
+		} else if (slave.weight >= -95) {
+			if (slave.hips > 1) {
+				r.push(`${either("quite skinny", "very thin")}, but ${his} wide hips make the gap between ${his} thighs very noticeable.`);
+			} else if (slave.hips < -1) {
+				r.push(`${either("quite skinny", "very thin")}, but ${his} trim hips make ${him} look like a model.`);
+			} else {
+				r.push(`<span class="red">${either("rail thin", "too skinny", "underweight")}.</span>`);
 			}
-		}
-	}
-
-	r.push(App.Desc.heightImplant(slave));
-
-	r.push(`${He} is`);
-	if (slave.muscles > 95) {
-		r.push(`<span class="pink">extremely muscular,</span> with defined pecs, powerful glutes, and massive`);
-		if (slave.weight > 95) {
-			r.push(`traps hidden beneath a layer of fat`);
-		} else {
-			r.push(`traps.`);
-		}
-	} else if (slave.muscles > 50) {
-		r.push(`<span class="pink">quite muscular,</span> with ripped abs, strong shoulders, and defined`);
-		if (slave.weight > 95) {
-			r.push(`lats hidden beneath a layer of fat`);
-		} else {
-			r.push(`lats.`);
-		}
-	} else if (slave.muscles > 30) {
-		r.push(`<span class="pink">well built,</span> yet feminine with defined abs and strong shapely`);
-		if (slave.weight > 95) {
-			r.push(`muscles hidden beneath a layer of fat`);
-		} else {
-			r.push(`muscles.`);
-		}
-	} else if (slave.muscles > 5) {
-		r.push(`<span class="pink">well built,</span> yet feminine, with just - visible`);
-		if (slave.weight > 30) {
-			r.push(`muscles hidden beneath a layer of fat`);
 		} else {
-			r.push(`muscles.`);
-		}
-	} else if (slave.muscles > -6) {
-		r.push(`<span class="pink">soft and feminine,</span> with no visible muscles.`);
-	} else if (slave.muscles > -31) {
-		r.push(`<span class="pink">rather weak,</span> with barely any muscles.`);
-	} else if (slave.muscles > -96) {
-		r.push(`<span class="pink">very weak;</span> ${he} struggles with day-to-day tasks.`);
-	} else {
-		r.push(`<span class="red">frail;</span> ${he} can barely hold ${himself} up.`);
-	}
-
-	if (V.arcologies[0].FSGenderFundamentalistLawBeauty + V.arcologies[0].FSGenderRadicalistLawBeauty + V.arcologies[0].FSSlimnessEnthusiastLaw > 0 && V.arcologies[0].FSPhysicalIdealist === "unset" && V.arcologies[0].FSHedonisticDecadenceStrongFat === 0) {
-		if (V.arcologies[0].FSPhysicalIdealistLaw > 0 && slave.muscles > 50) {
-			r.push(`${He} is entirely too muscular for the fashionable feminine ideal.`);
-		} else if (slave.muscles > 30) {
-			r.push(`${He} is entirely too muscular for the fashionable feminine ideal.`);
+			r.push(`<span class="red">${either("dangerously skinny", "emaciated")}.</span>`);
 		}
+		return r.join(" ");
 	}
+	function FS() {
+		const r = [];
 
-	if (hasAnyNaturalArms(slave)) {
-		if (slave.weight > 190) {
-			r.push(`${He} has`);
-			if (hasBothNaturalArms(slave)) {
-				r.push(`hugely thick arms`);
+		if (V.arcologies[0].FSStatuesqueGlorification !== "unset") {
+			if (heightPass(slave)) {
+				r.push(`${He} is tall enough`);
+				if (setup.heightBoostingShoes.includes(slave.shoes)) {
+					r.push(`in ${his} ${heightToEitherUnit(heelLength(slave))} ${slave.shoes}`);
+				}
+				r.push(`to measure up to society's strict tastes.`);
 			} else {
-				r.push(`a hugely thick arm`);
+				r.push(`${He} fails to measure up to society's strict`);
+				if (setup.heightBoostingShoes.includes(slave.shoes)) {
+					r.push(`tastes even with ${his} ${heightToEitherUnit(heelLength(slave))} ${slave.shoes}`);
+				} else {
+					r.push(`tastes.`);
+				}
 			}
-			r.push(`with sagging fat`);
-			if (slave.muscles > 5) {
-				r.push(`rolls and`);
-			} else {
-				r.push(`rolls.`);
+		} else if (V.arcologies[0].FSPetiteAdmiration !== "unset") {
+			if (heightPass(slave)) {
+				r.push(`Society finds ${him} adorably short.`);
+			} else if (slave.height >= 170) {
+				r.push(`Society finds ${him} distastefully tall.`);
 			}
-		} else if (slave.weight > 160) {
-			r.push(`${He} has`);
-			if (hasBothNaturalArms(slave)) {
-				r.push(`thick arms`);
+		}
+
+		if (V.arcologies[0].FSGenderFundamentalistLawBeauty + V.arcologies[0].FSGenderRadicalistLawBeauty > 0) {
+			if (V.arcologies[0].FSHedonisticDecadence === "unset" && V.arcologies[0].FSPhysicalIdealistStrongFat === 0) {
+				if (slave.weight > 130) {
+					r.push(`${He} is much too fat for the fashionable feminine ideal.`);
+				} else if (slave.weight > 30) {
+					r.push(`${He} is too fat for the fashionable feminine ideal.`);
+				} else if (slave.weight < -30) {
+					r.push(`${He} is too skinny for the fashionable feminine ideal.`);
+				}
 			} else {
-				r.push(`a thick arm`);
+				if (slave.weight > 130) {
+					r.push(`${He} is much too fat for the fashionable feminine ideal.`);
+				} else if (slave.weight < -30) {
+					r.push(`${He} is too skinny for the fashionable feminine ideal.`);
+				}
 			}
-			r.push(`with drooping fat`);
-			if (slave.muscles > 5) {
-				r.push(`folds and`);
+		} else if (V.arcologies[0].FSSlimnessEnthusiastLaw === 1) {
+			if (V.arcologies[0].FSHedonisticDecadence === "unset" && V.arcologies[0].FSPhysicalIdealistStrongFat === 0) {
+				if (slave.weight > 30) {
+					r.push(`${He} is much too fat for the fashionable feminine ideal.`);
+				} else if (slave.weight > 10) {
+					r.push(`${He} is too fat for the fashionable feminine ideal.`);
+				}
 			} else {
-				r.push(`folds.`);
+				if (slave.weight > 60) {
+					r.push(`${He} is much too fat for the fashionable feminine ideal.`);
+				} else if (slave.weight > 30) {
+					r.push(`${He} is too fat for the fashionable feminine ideal.`);
+				}
 			}
-		} else if (slave.weight > 130) {
-			r.push(`${He} has`);
-			if (hasBothNaturalArms(slave)) {
-				if (slave.muscles > 5) {
-					r.push(`plump arms with`);
+		} else if (V.arcologies[0].FSHedonisticDecadenceLaw2 === 1) {
+			if (slave.weight <= 95) {
+				r.push(`${He} is too thin for the fashionable feminine ideal.`);
+			} else if (slave.weight <= 10) {
+				r.push(`${He} is much too thin for the fashionable feminine ideal.`);
+			}
+		}
+		return r.join(" ");
+	}
+	function travel() {
+		const r = [];
+		if (canWalk(slave)) {
+			if (slave.weight > (170 + (slave.muscles / 5)) && slave.physicalAge >= 18) {
+				r.push(`${He} is so fat that it is difficult for ${him} to move.`);
+				if (slave.muscles > 95) {
+					r.push(`However, ${he} is so powerfully built that ${he} can manage it with effort, though ${he} often has to stop for breaks.`);
+				} else if (slave.muscles > 30) {
+					r.push(`${He} can barely manage to get to ${his} feet unaided, and usually walks alongside objects to help relieve the weight.`);
+				} else if (slave.muscles > 5) {
+					r.push(`${He} requires assistance to get to ${his} feet, and tends to lean on things to help relieve the weight.Much furniture has met an early demise thanks to this habit.`);
 				} else {
-					r.push(`plump arms.`);
+					r.push(`${He} cannot get to ${his} feet unaided, and tries to stay seated as much as ${he} can.`);
 				}
-			} else {
-				if (slave.muscles > 5) {
-					r.push(`a plump arm with`);
+			} else if (slave.weight > (110 + (slave.muscles / 20)) && slave.physicalAge <= 3) {
+				r.push(`${He} is so fat that it is difficult for ${him} to move.`);
+				if (slave.muscles > 95) {
+					r.push(`However, ${he} is so powerfully built that ${he} can manage it with effort, though ${he} often has to stop for breaks.`);
+				} else if (slave.muscles > 30) {
+					r.push(`${He} can barely manage to get to ${his} feet unaided, and usually walks alongside objects to help relieve the weight.`);
+				} else if (slave.muscles > 5) {
+					r.push(`${He} requires assistance to get to ${his} feet, and tends to lean on things to help relieve the weight.Much furniture has met an early demise thanks to this habit.`);
 				} else {
-					r.push(`a plump arm.`);
+					r.push(`${He} cannot get to ${his} feet unaided, and tries to stay seated as much as ${he} can.`);
 				}
-			}
-		} else if (slave.weight > 97) {
-			r.push(`${He} has`);
-			if (hasBothNaturalArms(slave)) {
-				if (slave.muscles > 5) {
-					r.push(`chubby arms with`);
+			} else if (slave.weight > (140 + (slave.muscles / 15)) && slave.physicalAge <= 12) {
+				r.push(`${He} is so fat that it is difficult for ${him} to move.`);
+				if (slave.muscles > 95) {
+					r.push(`However, ${he} is so powerfully built that ${he} can manage it with effort, though ${he} often has to stop for breaks.`);
+				} else if (slave.muscles > 30) {
+					r.push(`${He} can barely manage to get to ${his} feet unaided, and usually walks alongside objects to help relieve the weight.`);
+				} else if (slave.muscles > 5) {
+					r.push(`${He} requires assistance to get to ${his} feet, and tends to lean on things to help relieve the weight.Much furniture has met an early demise thanks to this habit.`);
 				} else {
-					r.push(`chubby arms.`);
+					r.push(`${He} cannot get to ${his} feet unaided, and tries to stay seated as much as ${he} can.`);
 				}
-			} else {
-				if (slave.muscles > 5) {
-					r.push(`a chubby arm with`);
+			} else if (slave.weight > (165 + (slave.muscles / 10)) && slave.physicalAge < 18) {
+				r.push(`${He} is so fat that it is difficult for ${him} to move.`);
+				if (slave.muscles > 95) {
+					r.push(`However, ${he} is so powerfully built that ${he} can manage it with effort, though ${he} often has to stop for breaks.`);
+				} else if (slave.muscles > 30) {
+					r.push(`${He} can barely manage to get to ${his} feet unaided, and usually walks alongside objects to help relieve the weight.`);
+				} else if (slave.muscles > 5) {
+					r.push(`${He} requires assistance to get to ${his} feet, and tends to lean on things to help relieve the weight.Much furniture has met an early demise thanks to this habit.`);
 				} else {
-					r.push(`a chubby arm.`);
+					r.push(`${He} cannot get to ${his} feet unaided, and tries to stay seated as much as ${he} can.`);
 				}
 			}
-		} else if (slave.muscles > 5) {
-			r.push(`${He} has`);
-			if (hasBothNaturalArms(slave)) {
-				r.push(`normal arms`);
-			} else {
-				r.push(`a normal arm`);
-			}
-			r.push(`with`);
 		}
+		return r.join(" ");
+	}
 
+	function muscles() {
+		const r = [];
+		r.push(`${He} is`);
 		if (slave.muscles > 95) {
+			r.push(`<span class="pink">extremely muscular,</span> with defined pecs, powerful glutes, and massive`);
+			if (slave.weight > 95) {
+				r.push(`traps hidden beneath a layer of fat`);
+			} else {
+				r.push(`traps.`);
+			}
+		} else if (slave.muscles > 50) {
+			r.push(`<span class="pink">quite muscular,</span> with ripped abs, strong shoulders, and defined`);
 			if (slave.weight > 95) {
-				r.push(`huge muscles hidden beneath ${his} soft flesh.`);
+				r.push(`lats hidden beneath a layer of fat`);
 			} else {
-				r.push(`huge muscles.`);
+				r.push(`lats.`);
 			}
 		} else if (slave.muscles > 30) {
+			r.push(`<span class="pink">well built,</span> yet feminine with defined abs and strong shapely`);
 			if (slave.weight > 95) {
-				r.push(`obvious muscles hidden beneath ${his} soft flesh.`);
+				r.push(`muscles hidden beneath a layer of fat`);
 			} else {
-				r.push(`obvious muscles.`);
+				r.push(`muscles.`);
 			}
 		} else if (slave.muscles > 5) {
-			r.push(``);
+			r.push(`<span class="pink">well built,</span> yet feminine, with just - visible`);
 			if (slave.weight > 30) {
-				r.push(`toned muscles hidden beneath ${his} soft flesh.`);
+				r.push(`muscles hidden beneath a layer of fat`);
 			} else {
-				r.push(`toned muscles.`);
+				r.push(`muscles.`);
 			}
+		} else if (slave.muscles > -6) {
+			r.push(`<span class="pink">soft and feminine,</span> with no visible muscles.`);
+		} else if (slave.muscles > -31) {
+			r.push(`<span class="pink">rather weak,</span> with barely any muscles.`);
+		} else if (slave.muscles > -96) {
+			r.push(`<span class="pink">very weak;</span> ${he} struggles with day-to-day tasks.`);
 		} else {
-			// little muscle to them.
+			r.push(`<span class="red">frail;</span> ${he} can barely hold ${himself} up.`);
 		}
+
+		if (V.arcologies[0].FSGenderFundamentalistLawBeauty + V.arcologies[0].FSGenderRadicalistLawBeauty + V.arcologies[0].FSSlimnessEnthusiastLaw > 0 && V.arcologies[0].FSPhysicalIdealist === "unset" && V.arcologies[0].FSHedonisticDecadenceStrongFat === 0) {
+			if (V.arcologies[0].FSPhysicalIdealistLaw > 0 && slave.muscles > 50) {
+				r.push(`${He} is entirely too muscular for the fashionable feminine ideal.`);
+			} else if (slave.muscles > 30) {
+				r.push(`${He} is entirely too muscular for the fashionable feminine ideal.`);
+			}
+		}
+		return r.join(" ");
+	}
+
+	function arms() {
+		const r = [];
+		if (hasAnyNaturalArms(slave)) {
+			if (slave.weight > 190) {
+				r.push(`${He} has`);
+				if (hasBothNaturalArms(slave)) {
+					r.push(`hugely thick arms`);
+				} else {
+					r.push(`a hugely thick arm`);
+				}
+				r.push(`with sagging fat`);
+				if (slave.muscles > 5) {
+					r.push(`rolls and`);
+				} else {
+					r.push(`rolls.`);
+				}
+			} else if (slave.weight > 160) {
+				r.push(`${He} has`);
+				if (hasBothNaturalArms(slave)) {
+					r.push(`thick arms`);
+				} else {
+					r.push(`a thick arm`);
+				}
+				r.push(`with drooping fat`);
+				if (slave.muscles > 5) {
+					r.push(`folds and`);
+				} else {
+					r.push(`folds.`);
+				}
+			} else if (slave.weight > 130) {
+				r.push(`${He} has`);
+				if (hasBothNaturalArms(slave)) {
+					if (slave.muscles > 5) {
+						r.push(`plump arms with`);
+					} else {
+						r.push(`plump arms.`);
+					}
+				} else {
+					if (slave.muscles > 5) {
+						r.push(`a plump arm with`);
+					} else {
+						r.push(`a plump arm.`);
+					}
+				}
+			} else if (slave.weight > 97) {
+				r.push(`${He} has`);
+				if (hasBothNaturalArms(slave)) {
+					if (slave.muscles > 5) {
+						r.push(`chubby arms with`);
+					} else {
+						r.push(`chubby arms.`);
+					}
+				} else {
+					if (slave.muscles > 5) {
+						r.push(`a chubby arm with`);
+					} else {
+						r.push(`a chubby arm.`);
+					}
+				}
+			} else if (slave.muscles > 5) {
+				r.push(`${He} has`);
+				if (hasBothNaturalArms(slave)) {
+					r.push(`normal arms`);
+				} else {
+					r.push(`a normal arm`);
+				}
+				r.push(`with`);
+			}
+
+			if (slave.muscles > 95) {
+				if (slave.weight > 95) {
+					r.push(`huge muscles hidden beneath ${his} soft flesh.`);
+				} else {
+					r.push(`huge muscles.`);
+				}
+			} else if (slave.muscles > 30) {
+				if (slave.weight > 95) {
+					r.push(`obvious muscles hidden beneath ${his} soft flesh.`);
+				} else {
+					r.push(`obvious muscles.`);
+				}
+			} else if (slave.muscles > 5) {
+				r.push(``);
+				if (slave.weight > 30) {
+					r.push(`toned muscles hidden beneath ${his} soft flesh.`);
+				} else {
+					r.push(`toned muscles.`);
+				}
+			} else {
+				// little muscle to them.
+			}
+		}
+		return r.join(" ");
 	}
-	return r.join(" ");
 };
-- 
GitLab