diff --git a/src/facilities/nursery/nurseryWidgets.js b/src/facilities/nursery/nurseryWidgets.js
index 1de2a16087cbabd926323c5a814e3bf194c32c4d..2a07162d9b13cb0c2c2067be3e6d12e9e63f500c 100644
--- a/src/facilities/nursery/nurseryWidgets.js
+++ b/src/facilities/nursery/nurseryWidgets.js
@@ -2674,7 +2674,7 @@ App.Facilities.Nursery.ChildSummary = function(child) {
 				longClothes(child);
 				longCollar(child);
 				longBelly(child);
-				if (child.amp !== 1) {
+				if (hasAnyLegs(child)) {
 					longLegs(child);
 				}
 				if (canWalk(child)) {
@@ -8228,9 +8228,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 					} else if (scrotalFullness === -1) {
 						r += `${His} poor scrotum is so overfilled, every little vein is visible. ${He} must be in constant discomfort. `;
 					} else if (scrotalFullness === 0) {
-						r += `${His} comfortable scrotum allows them to hang massively ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+						r += `${His} comfortable scrotum allows them to hang massively ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 					} else {
-						r += `Their weight and size has stretched ${his} scrotum downward, so that they ${child.amp !== 1 ? `drag along the floor` : `hang far from ${his} limbless torso`}. `;
+						r += `Their weight and size has stretched ${his} scrotum downward, so that they ${hasBothLegs(child) ? `drag along the floor` : `hang far from ${his} legless torso`}. `;
 					}
 				} else if (child.balls >= 20) {
 					if (scrotalFullness < -1) {
@@ -8238,9 +8238,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 					} else if (scrotalFullness === -1) {
 						r += `${His} poor scrotum is so overfilled, every little vein is visible. ${He} must be in constant discomfort. `;
 					} else if (scrotalFullness === 0) {
-						r += `${His} comfortable scrotum allows them to hang massively ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+						r += `${His} comfortable scrotum allows them to hang massively ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 					} else {
-						r += `Their weight and size has stretched ${his} scrotum downward, so that they dangle ${child.amp !== 1 ? `to ${his} knees` : `quite the distance from ${his} limbless torso`}. `;
+						r += `Their weight and size has stretched ${his} scrotum downward, so that they dangle ${hasBothLegs(child) ? `to ${his} knees` : `quite the distance from ${his} legless torso`}. `;
 					}
 				} else if (child.balls > 5) {
 					if (scrotalFullness < -1) {
@@ -8248,9 +8248,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 					} else if (scrotalFullness === -1) {
 						r += `They're held against ${his} base by a tight scrotum that permits them little movement. `;
 					} else if (scrotalFullness === 0) {
-						r += `${His} comfortable scrotum allows them to hang massively ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+						r += `${His} comfortable scrotum allows them to hang massively ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 					} else {
-						r += `Their weight has stretched ${his} scrotum downward, so that they dangle ${child.amp !== 1 ? `halfway to ${his} knees` : `some distance from ${his} limbless torso`}. `;
+						r += `Their weight has stretched ${his} scrotum downward, so that they dangle ${hasBothLegs(child) ? `halfway to ${his} knees` : `some distance from ${his} legless torso`}. `;
 					}
 				} else if (child.balls > 3) {
 					if (scrotalFullness < -1) {
@@ -8258,9 +8258,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 					} else if (scrotalFullness === -1) {
 						r += `They're held against ${his} base by a tight scrotum that permits them little movement. `;
 					} else if (scrotalFullness === 0) {
-						r += `${His} soft scrotum allows them to rest comfortably ${child.amp !== 1 ? `between ${his} legs` : `beneath ${his} limbless torso`}. `;
+						r += `${His} soft scrotum allows them to rest comfortably ${hasBothLegs(child) ? `between ${his} legs` : `beneath ${his} legless torso`}. `;
 					} else {
-						r += `${He} has a loose, dangling scrotum that allows them to swing ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+						r += `${He} has a loose, dangling scrotum that allows them to swing ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 					}
 				} else if (child.balls > 1) {
 					if (scrotalFullness === -1) {
@@ -8294,7 +8294,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 				r += `${He}'s painfully erect. `;
 			} else if (child.dick > 8) {
 				r += `${He}'s too huge for ${his} cardiovascular system to create even the beginnings of an erection. ${His} cock is a soft, sensitive monolith${child.dick * 6 > child.height ? ` bigger than ${his} body` : child.dick * 6 > child.height / 2 ? ` the size of one of ${his} legs` : ` the size of one of ${his} arms`}, `;
-				if (child.amp && child.dick * 6 > child.height) {
+				if (hasAnyArms(child) && hasAnyLegs(child) && child.dick * 6 > child.height) {
 					r += `or would be if ${he} had any of those. `;
 				} else {
 					r += `hanging with its head ${child.dick > 9 ? `below` : `between`} ${his} knees. `;
@@ -8656,7 +8656,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 			}
 		} else if (child.vagina === -1) {
 			if (!child.scrotum) {
-				r += `${He} has ${V.seeDicks > 0 ? `no penis and ` : ``}no vagina, nothing but a tiny hole in the smooth ${child.skin} skin ${child.amp !== 1 ? `between ${his} legs` : `at the base of ${his} hips`}. `;
+				r += `${He} has ${V.seeDicks > 0 ? `no penis and ` : ``}no vagina, nothing but a tiny hole in the smooth ${child.skin} skin ${hasBothLegs(child) ? `between ${his} legs` : `at the base of ${his} hips`}. `;
 			} else {
 				r += `${He} has ${V.seeDicks > 0 ? `no penis and ` : ``}no vagina, just a tiny hole above `;
 
@@ -8695,9 +8695,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 					} else if (scrotalFullness === -1) {
 						r += `${His} poor scrotum is so overfilled, every little vein is visible. ${He} must be in constant discomfort. `;
 					} else if (scrotalFullness === 0) {
-						r += `${His} comfortable scrotum allows them to hang massively ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+						r += `${His} comfortable scrotum allows them to hang massively ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 					} else {
-						r += `Their weight and size has stretched ${his} scrotum downward, so that they ${child.amp !== 1 ? `drag along the floor` : `hang far from ${his} limbless torso`}. `;
+						r += `Their weight and size has stretched ${his} scrotum downward, so that they ${hasBothLegs(child) ? `drag along the floor` : `hang far from ${his} legless torso`}. `;
 					}
 				} else if (child.balls > 20) {
 					if (scrotalFullness < -1) {
@@ -8705,9 +8705,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 					} else if (scrotalFullness === -1) {
 						r += `${His} poor scrotum is so overfilled, every little vein is visible. ${He} must be in constant discomfort. `;
 					} else if (scrotalFullness === 0) {
-						r += `${His} comfortable scrotum allows them to hang massively ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+						r += `${His} comfortable scrotum allows them to hang massively ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 					} else {
-						r += `Their weight and size has stretched ${his} scrotum downward, so that they dangle ${child.amp !== 1 ? `to ${his} knees` : `quite the distance from ${his} limbless torso`}. `;
+						r += `Their weight and size has stretched ${his} scrotum downward, so that they dangle ${hasBothLegs(child) ? `to ${his} knees` : `quite the distance from ${his} legless torso`}. `;
 					}
 				} else if (child.balls > 5) {
 					if (scrotalFullness < -1) {
@@ -8715,9 +8715,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 					} else if (scrotalFullness === -1) {
 						r += `They're held against ${his} base by a tight scrotum that permits them little movement. `;
 					} else if (scrotalFullness === 0) {
-						r += `${His} comfortable scrotum allows them to hang massively ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+						r += `${His} comfortable scrotum allows them to hang massively ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 					} else {
-						r += `Their weight has stretched ${his} scrotum downward, so that they dangle ${child.amp !== 1 ? `halfway to ${his} knees` : `some distance from ${his} limbless torso`}. `;
+						r += `Their weight has stretched ${his} scrotum downward, so that they dangle ${hasBothLegs(child) ? `halfway to ${his} knees` : `some distance from ${his} legless torso`}. `;
 					}
 				} else if (child.balls > 3) {
 					if (scrotalFullness < -1) {
@@ -8725,9 +8725,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 					} else if (scrotalFullness === -1) {
 						r += `They're held against ${his} base by a tight scrotum that permits them little movement. `;
 					} else if (scrotalFullness === 0) {
-						r += `${His} soft scrotum allows them to rest comfortably ${child.amp !== 1 ? `between ${his} legs` : `beneath ${his} limbless torso`}. `;
+						r += `${His} soft scrotum allows them to rest comfortably ${hasBothLegs(child) ? `between ${his} legs` : `beneath ${his} legless torso`}. `;
 					} else {
-						r += `${He} has a loose, dangling scrotum that allows them to swing ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+						r += `${He} has a loose, dangling scrotum that allows them to swing ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 					}
 				} else if (child.balls > 1) {
 					if (scrotalFullness === -1) {
@@ -8941,9 +8941,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 						} else if (scrotalFullness === -1) {
 							r += `${His} poor scrotum is so overfilled, every little vein is visible. ${He} must be in constant discomfort. `;
 						} else if (scrotalFullness === 0) {
-							r += `${His} comfortable scrotum allows them to hang massively ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+							r += `${His} comfortable scrotum allows them to hang massively ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 						} else {
-							r += `Their weight and size has stretched ${his} scrotum downward, so that they ${child.amp !== 1 ? `drag along the floor` : `hang far from ${his} limbless torso`}. `;
+							r += `Their weight and size has stretched ${his} scrotum downward, so that they ${hasBothLegs(child) ? `drag along the floor` : `hang far from ${his} legless torso`}. `;
 						}
 					} else if (child.balls >= 20) {
 						if (scrotalFullness < -1) {
@@ -8951,9 +8951,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 						} else if (scrotalFullness === -1) {
 							r += `${His} poor scrotum is so overfilled, every little vein is visible. ${He} must be in constant discomfort. `;
 						} else if (scrotalFullness === 0) {
-							r += `${His} comfortable scrotum allows them to hang massively ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+							r += `${His} comfortable scrotum allows them to hang massively ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 						} else {
-							r += `Their weight and size has stretched ${his} scrotum downward, so that they dangle ${child.amp !== 1 ? `to ${his} knees` : `quite the distance from ${his} limbless torso`}. `;
+							r += `Their weight and size has stretched ${his} scrotum downward, so that they dangle ${hasBothLegs(child) ? `to ${his} knees` : `quite the distance from ${his} legless torso`}. `;
 						}
 					} else if (child.balls > 5) {
 						if (scrotalFullness < -1) {
@@ -8961,9 +8961,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 						} else if (scrotalFullness === -1) {
 							r += `They're held against ${his} base by a tight scrotum that permits them little movement. `;
 						} else if (scrotalFullness === 0) {
-							r += `${His} comfortable scrotum allows them to hang massively ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+							r += `${His} comfortable scrotum allows them to hang massively ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 						} else {
-							r += `Their weight has stretched ${his} scrotum downward, so that they dangle ${child.amp !== 1 ? `halfway to ${his} knees` : `some distance from ${his} limbless torso`}. `;
+							r += `Their weight has stretched ${his} scrotum downward, so that they dangle ${hasBothLegs(child) ? `halfway to ${his} knees` : `some distance from ${his} legless torso`}. `;
 						}
 					} else if (child.balls > 3) {
 						if (scrotalFullness < -1) {
@@ -8971,9 +8971,9 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 						} else if (scrotalFullness === -1) {
 							r += `They're held against ${his} base by a tight scrotum that permits them little movement. `;
 						} else if (scrotalFullness === 0) {
-							r += `${His} soft scrotum allows them to rest comfortably ${child.amp !== 1 ? `between ${his} legs` : `beneath ${his} limbless torso`}. `;
+							r += `${His} soft scrotum allows them to rest comfortably ${hasBothLegs(child) ? `between ${his} legs` : `beneath ${his} legless torso`}. `;
 						} else {
-							r += `${He} has a loose, dangling scrotum that allows them to swing ${child.amp !== 1 ? `between ${his} legs` : `from ${his} limbless torso`}. `;
+							r += `${He} has a loose, dangling scrotum that allows them to swing ${hasBothLegs(child) ? `between ${his} legs` : `from ${his} legless torso`}. `;
 						}
 					} else if (child.balls > 1) {
 						if (scrotalFullness === -1) {
@@ -9506,7 +9506,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 		let
 			r = ``;
 
-		if (child.amp !== 1) {
+		if (hasAnyLegs(child)) {
 			switch (child.clothes) {
 				case "a slave gown":
 					switch (child.shoes) {
@@ -10635,7 +10635,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 		}
 
 		if (V.showClothing && !V.saleDescription) {
-			if (child.amp !== 1) {
+			if (hasAnyLegs(child)) {
 				if (child.shoes !== "none" && child.shoes !== "flats") {
 					r += `${He} is, so ${he} can walk reasonably well. `;
 				} else {
@@ -10921,7 +10921,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 		let
 			r = ``;
 
-		if (child.amp) {
+		if (!hasAnyArms(child)) {
 			r += `${He} has no hands, and thus, no nails. `;
 		} else {
 			switch (child.nails) {
@@ -12723,11 +12723,11 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 			if (child.releaseRules === "permissive" || child.releaseRules === "masturbation") {
 				if ((child.aphrodisiacs > 0 || child.inflationType === "aphrodisiac") && child.drugs !== "priapism agent") {
 					if (child.aphrodisiacs > 1 || (child.inflationType === "aphrodisiac" && child.inflation > 1)) {
-						if (child.dick !== 0 && child.hormoneBalance >= 100 && child.amp) {
+						if (child.dick !== 0 && child.hormoneBalance >= 100 && !hasAnyArms(child)) {
 							r += `The extreme dose of aphrodisiacs combined with the hormones that keep ${him} flaccid have ${him} in a state of extreme sexual frustration; ${he}'s${(child.fetish === "buttslut" || child.sexualFlaw !== "hates anal") && child.counter.anal > 9 ? ` unconsciously humping ${his} ass against whatever's next to ${him} for anal stimulation and` : ``} humping ${his} dick against whatever ${he} can manage to mount without limbs. ${child.inflationType === "aphrodisiac" ? `${His} efforts force ${his} distended middle to jiggle around, stirring up the aphrodisiacs contained in ${his} gut and strengthening their effects even more. ` : ``}`;
-						} else if (child.dick !== 0 && child.balls > 0 && child.ballType === "sterile" && child.amp) {
+						} else if (child.dick !== 0 && child.balls > 0 && child.ballType === "sterile" && !hasAnyArms(child)) {
 							r += `The extreme dose of aphrodisiacs combined with the chemical castration that keeps ${him} flaccid have ${him} in a state of extreme sexual frustration; ${he}'s${(child.fetish === "buttslut" || child.sexualFlaw !== "hates anal") && child.counter.anal > 9 ? ` unconsciously humping ${his} ass against whatever's next to ${him} for anal stimulation and` : ``} humping ${his} limp dick against whatever ${he} can manage to mount without limbs. ${child.inflationType === "aphrodisiac" ? `${His} efforts force ${his} distended middle to jiggle around, stirring up the aphrodisiacs contained in ${his} gut and strengthening their effects even more. ` : ``}`;
-						} else if (child.dick !== 0 && !child.balls && child.amp) {
+						} else if (child.dick !== 0 && !child.balls && !hasAnyArms(child)) {
 							r += `The extreme dose of aphrodisiacs combined with the lack of balls that keeps ${him} flaccid have ${him} in a state of extreme sexual frustration; ${he}'s ${(child.fetish === "buttslut" || child.sexualFlaw !== "hates anal") && child.counter.anal > 9 ? ` unconsciously humping ${his} ass against whatever's next to ${him} for anal stimulation and` : ``} humping ${his} limp dick against whatever ${he} can manage to mount without limbs. ${child.inflationType === "aphrodisiac" ? `${His} efforts force ${his} distended middle to jiggle around, stirring up the aphrodisiacs contained in ${his} gut and strengthening their effects even more. ` : ``}`;
 						} else if (child.dick !== 0 && child.hormoneBalance >= 100) {
 							r += `The extreme dose of aphrodisiacs combined with the hormones that keep ${him} flaccid have ${him} in a state of extreme sexual frustration; ${he}'s rubbing ${his} limp dick distractedly${(child.fetish === "buttslut" || child.sexualFlaw !== "hates anal") && child.counter.anal > 9 ? ` and unconsciously humping ${his} ass against whatever's next to ${him} for anal stimulation` : ``}. ${child.inflationType === "aphrodisiac" ? `${His} efforts force ${his} distended middle to jiggle around, stirring up the aphrodisiacs contained in ${his} gut and strengthening their effects even more. ` : ``}`;
@@ -12739,11 +12739,11 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 							r += `The extreme dose of aphrodisiacs has ${his} cock painfully erect and precum drips from its head. `;
 						}
 					} else {
-						if (child.dick !== 0 && child.hormoneBalance >= 100 && child.amp) {
+						if (child.dick !== 0 && child.hormoneBalance >= 100 && isAmputee(child)) {
 							r += `The aphrodisiacs combined with the hormones that keep ${him} flaccid have ${him} sexually frustrated; ${he}'s ${(child.fetish === "buttslut" || child.sexualFlaw !== "hates anal") && child.counter.anal > 9 ? ` unconsciously humping ${his} ass against whatever's next to ${him} for anal stimulation and` : ``} humping ${his} dick against whatever ${he} can manage to mount without limbs. ${child.inflationType === "aphrodisiac" ? `${His} efforts force ${his} distended middle to jiggle around, stirring up the aphrodisiacs contained in ${his} gut and strengthening their effects even more. ` : ``}`;
-						} else if (child.dick !== 0 && child.balls > 0 && child.ballType === "sterile" && child.amp) {
+						} else if (child.dick !== 0 && child.balls > 0 && child.ballType === "sterile" && isAmputee(child)) {
 							r += `The aphrodisiacs combined with the chemical castration that keeps ${him} flaccid have ${him} sexually frustrated; ${he}'s ${(child.fetish === "buttslut" || child.sexualFlaw !== "hates anal") && child.counter.anal > 9 ? ` unconsciously humping ${his} ass against whatever's next to ${him} for anal stimulation and` : ``}  humping ${his} dick against whatever ${he} can manage to mount without limbs. ${child.inflationType === "aphrodisiac" ? `${His} efforts force ${his} distended middle to jiggle around, stirring up the aphrodisiacs contained in ${his} gut and strengthening their effects even more. ` : ``}`;
-						} else if (child.dick !== 0 && !child.balls && child.amp) {
+						} else if (child.dick !== 0 && !child.balls && isAmputee(child)) {
 							r += `The aphrodisiacs combined with the lack of balls that keeps ${him} flaccid have ${him} sexually frustrated; ${he}'s ${(child.fetish === "buttslut" || child.sexualFlaw !== "hates anal") && child.counter.anal > 9 ? ` unconsciously humping ${his} ass against whatever's next to ${him} for anal stimulation and` : ``} humping ${his} dick against whatever ${he} can manage to mount without limbs. ${child.inflationType === "aphrodisiac" ? `${His} efforts force ${his} distended middle to jiggle around, stirring up the aphrodisiacs contained in ${his} gut and strengthening their effects even more. ` : ``}`;
 						} else if (child.dick !== 0 && child.hormoneBalance >= 100) {
 							r += `The aphrodisiacs combined with the hormones that keep ${him} flaccid have ${him} sexually frustrated; ${he}'s touching ${his} limp dick distractedly${(child.fetish === "buttslut" || child.sexualFlaw !== "hates anal") && child.counter.anal > 9 ? ` and unconsciously rubbing ${his} ass against whatever's next to ${him}` : ``}. ${child.inflationType === "aphrodisiac" ? `${His} efforts force ${his} distended middle to jiggle around, stirring up the aphrodisiacs contained in ${his} gut and strengthening their effects even more. ` : ``}`;
@@ -14756,9 +14756,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 
 	r += `<br>&nbsp;&nbsp;&nbsp;&nbsp;`;
 
-	if (child.amp) {
-		r += App.Desc.amputee(child);
-	}
+	r += App.Desc.limbs(child);
 
 	if (V.showClothing && !V.saleDescription) {
 		r += `${child.slaveName} is `;
@@ -14770,25 +14768,25 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 
 		switch (child.clothes) {
 			case "a slave gown":
-				r += `a gorgeous affair ${child.amp ? `cleavage and a short skirt. ` : `with cuts that offer tantalizing glimpses of delicate flesh and ${footwear(child)}`}`;
+				r += `a gorgeous affair ${!hasAnyLegs(child) ? `cleavage and a short skirt. ` : `with cuts that offer tantalizing glimpses of delicate flesh and ${footwear(child)}`}`;
 				break;
 			case "a ball gown":
-				r += `a majestically grand silken dress for formal ${child.amp ? `back. ` : `occasions, stockings, and ${footwear(child)}`}`;
+				r += `a majestically grand silken dress for formal ${!hasAnyLegs(child) ? `back. ` : `occasions, stockings, and ${footwear(child)}`}`;
 				break;
 			case "a mini dress":
-				r += `a body hugging strapless number that shows as much skin as it ${child.amp ? `everything. ` : `covers, paired with ${footwear(child)}`}`;
+				r += `a body hugging strapless number that shows as much skin as it ${!hasAnyLegs(child) ? `everything. ` : `covers, paired with ${footwear(child)}`}`;
 				break;
 			case "a schoolgirl outfit":
-				r += `which includes a tight white ${child.amp ? `pattern. ` : `blouse, a short plaid skirt, and ${footwear(child)}`}`;
+				r += `which includes a tight white ${!hasAnyLegs(child) ? `pattern. ` : `blouse, a short plaid skirt, and ${footwear(child)}`}`;
 				break;
 			case "a sweater":
 			case "a t-shirt":
 			case "a tank-top":
 			case "an oversized t-shirt":
-				r += `which only covers ${his} ${child.amp ? `breasts. ` : `torso, and ${footwear(child)}`}`;
+				r += `which only covers ${his} ${!hasAnyLegs(child) ? `breasts. ` : `torso, and ${footwear(child)}`}`;
 				break;
 			default:
-				r += `so ${his} nude body is on display. ${child.amp ? `In fact, ${he}'s devoid of even limbs. ` : `${He} is wearing ${footwear(child)}`}`;
+				r += `so ${his} nude body is on display. ${!hasAnyLegs(child) ? `In fact, ${he}'s devoid of even legs. ` : `${He} is wearing ${footwear(child)}`}`;
 				break;
 		}
 	}
@@ -15028,47 +15026,53 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 		}
 	}
 
-	if (!child.amp) {
+	if (hasAnyArms(child)) {
+		let s = "s";
+		let a = "";
+		if (!hasBothArms(child)) {
+			s = "";
+			a = "a "
+		}
 		if (child.weight > 190) {
-			r += `${He} has hugely thick arms with sagging fat rolls and `;
+			r += `${He} has ${a}hugely thick arm${s} with sagging fat rolls and `;
 		} else if (child.weight > 160) {
-			r += `${He} has thick arms with drooping fat folds and `;
+			r += `${He} has ${a}thick arm${s} with drooping fat folds and `;
 		} else if (child.weight > 130) {
-			r += `${He} has plump arms with `;
+			r += `${He} has ${a}plump arm${s} with `;
 		} else if (child.weight > 97) {
-			r += `${He} has chubby arms with `;
+			r += `${He} has ${a}chubby arm${s} with `;
 		} else {
-			r += `${He} has normal arms with `;
+			r += `${He} has ${a}normal arm${s} with `;
 		}
-	}
 
 	if (child.muscles > 95) {
 		r += `huge muscles`;
 		if (child.weight > 95) {
-			r += ` hidden beneath ${his} soft flesh `;
+			r += ` hidden beneath ${his} soft flesh`;
 		}
 		r += `. `;
 	} else if (child.muscles > 30) {
 		r += `obvious muscles`;
 		if (child.weight > 95) {
-			r += ` hidden beneath ${his} soft flesh `;
+			r += ` hidden beneath ${his} soft flesh`;
 		}
 		r += `. `;
 	} else if (child.muscles > 5) {
 		r += `toned muscles`;
 		if (child.weight > 30) {
-			r += ` hidden beneath ${his} soft flesh `;
+				r += ` hidden beneath ${his} soft flesh`;
+			}
+			r += `. `;
+		} else {
+			r += `little muscle to them. `;
 		}
-		r += `. `;
-	} else {
-		r += `little muscle to them. `;
 	}
 
 	if (child.skill.combat > 0) {
-		r += `${He} is <span class="aquamarine"skilled at combat:</span> ${he} is comfortable with the use of modern firearms and edges weapons, and ${his} hands `;
-		if (child.amp === -4) {
+		r += `${He} is <span class="aquamarine"skilled at combat:</span> ${he} is comfortable with the use of modern firearms and edges weapons, and ${his} limbs `;
+		if (getLimbCount(child, 105) > 1) {
 			r += `would be deadly weapons even if they weren't full of deadly weapons already`;
-		} else if (child.amp > 0) {
+		} else if (!isAmputee(child)) {
 			r += `would be deadly weapons if ${he} had any`;
 		} else {
 			r += `are deadly weapons`;
@@ -15084,19 +15088,26 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 		r += piercings.corset(child);
 	}
 
-	if (!child.amp) {
+	if (hasAnyLegs(child)) {
+		let s = "s";
+		let a = "";
+		if (!hasBothLegs(child)) {
+			s = "";
+			a = "a ";
+		}
+
 		if (child.weight > 190) {
-			r += `${He} has extremely fat legs with immense soft, rather uneven thighs and `;
+			r += `${He} has ${hasBothLegs(child) ? `` : `an `}extremely fat leg${s} with ${hasBothLegs(child) ? `` : `an `}immense soft, rather uneven thigh${s} and `;
 		} else if (child.weight > 160) {
-			r += `${He} has very fat legs with massively thick, soft, somewhat uneven thighs and `;
+			r += `${He} has ${a}very fat leg${s} with ${a}massively thick, soft, somewhat uneven thigh${s} and `;
 		} else if (child.weight > 130) {
-			r += `${He} has fat legs with hugely thick, soft thighs and `;
+			r += `${He} has ${a}fat leg${s} with ${a}hugely thick, soft thigh${s} and `;
 		} else if (child.weight > 97) {
-			r += `${He} has fat legs with thick, soft thighs and `;
+			r += `${He} has ${a}fat leg${s} with ${a}thick, soft thigh${s} and `;
 		} else if (child.weight > 95) {
-			r += `${He} has normal legs with thick, soft thighs and `;
+			r += `${He} has ${a}normal leg${s} with ${a}thick, soft thigh${s} and `;
 		} else {
-			r += `${He} has relatively normal legs and thighs with `;
+			r += `${He} has ${a}relatively normal leg${s} and thigh${s} with `;
 		}
 
 		if (child.muscles > 95) {
@@ -15112,7 +15123,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 			}
 			r += `. `;
 		} else if (child.muscles > 5) {
-			r += `tones muscles`;
+			r += `toned muscles`;
 			if (child.weight > 30) {
 				r += ` hidden beneath ${his} soft flab`;
 			}
@@ -15212,7 +15223,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 		r += `${His} armpits appear hairless, but closer inspection reveals light, ${child.underArmHColor} stubble. `;
 	} else if (child.underArmHStyle === "neat") {
 		r += `${His} armpit hair is neatly trimmed `;
-		if (child.amp) {
+		if (!hasAnyArms(child)) {
 			r += `since it is always in full view`;
 		} else {
 			r += ` to not be visible unless ${he} lifts ${his} arms`;
@@ -15220,7 +15231,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 		r += `. `;
 	} else if (child.underArmHStyle === "bushy") {
 		r += `${His} ${child.underArmHColor} armpit hair has been allowed to grow freely`;
-		if (child.amp) {
+		if (!hasAnyArms(child)) {
 			r += ` creating two bushy patches under where ${his} arms used to be`;
 		} else {
 			r += ` and can be seen poking out from under ${his} arms at all times`;
@@ -15259,14 +15270,18 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 	if (V.showClothing && !V.saleDescription) {
 		r += collar(child);
 		if (child.relationship > 4) { // TODO: will children be able to get married?
-			if (child.amp !== 1) {
+			if (hasLeftArm(child)) {
 				r += `${He} has a simple gold band on the little finger of ${his} left hand. `;
+			} else if (hasRightArm(child)) {
+				r += `${He} has a simple gold band on the little finger of ${his} right hand. `;
 			} else {
 				r += `${He} has a simple gold band on a length of chain around ${his} neck. `;
 			}
 		} else if (child.relationship === -3) {
-			if (child.amp !== 1) {
+			if (hasLeftArm(child)) {
 				r += `${He} has a simple steel band on the little finger of ${his} left hand. `;
+			} else if (hasRightArm(child)) {
+				r += `${He} has a simple steel band on the little finger of ${his} right hand. `;
 			} else {
 				r += `${He} has a simple steel band on a length of cord around ${his} neck. `;
 			}
@@ -15336,19 +15351,19 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 			break;
 		case "intensive breast injections":
 		case "hyper breast injections":
-			r += `${He} ${child.amp !== 1 ? `massages ${his} tits uncomfortably` : `squirms under the unfamiliar weight on ${his} chest`}. The ${child.drugs === "hyper breast injections" ? `HA-HGH` : `A-HGH`} must be having an effect, painfully stretching ${his} breasts as the mammary and adipose tissue underneath grows explosively. `;
+			r += `${He} ${hasAnyArms(child) ? `massages ${his} tits uncomfortably` : `squirms under the unfamiliar weight on ${his} chest`}. The ${child.drugs === "hyper breast injections" ? `HA-HGH` : `A-HGH`} must be having an effect, painfully stretching ${his} breasts as the mammary and adipose tissue underneath grows explosively. `;
 			break;
 		case "intensive butt injections":
 		case "hyper butt injections":
-			r += `${He} ${child.amp !== 1 ? `massages ${his} butt uncomfortably` : `squirms under the unfamiliar weight on ${his} backside`}. The ${child.drugs === "hyper butt injections" ? `HA-HGH` : `A-HGH`} must be having an effect, painfully stretching ${his} buttocks as the muscular and adipose tissue underneath grows explosively. `;
+			r += `${He} ${hasAnyArms(child) ? `massages ${his} butt uncomfortably` : `squirms under the unfamiliar weight on ${his} backside`}. The ${child.drugs === "hyper butt injections" ? `HA-HGH` : `A-HGH`} must be having an effect, painfully stretching ${his} buttocks as the muscular and adipose tissue underneath grows explosively. `;
 			break;
 		case "intensive penis enhancement":
 		case "hyper penis enhancement":
-			`${He} ${child.amp !== 1 ? `massages ${his} ${child.dick > 0 ? `dick` : `clit`} uncomfortably` : `squirms under the unfamiliar weight in ${his} ${child.dick > 0 ? `dick` : `clit`}`}. The ${child.drugs === "hyper penis enhancement" ? `HA-HGH` : `A-HGH`} must be having an effect, painfully lengthening and thickening ${his} ${child.dick > 0 ? `dick` : `clit`}. `;
+			`${He} ${hasAnyArms(child) ? `massages ${his} ${child.dick > 0 ? `dick` : `clit`} uncomfortably` : `squirms under the unfamiliar weight in ${his} ${child.dick > 0 ? `dick` : `clit`}`}. The ${child.drugs === "hyper penis enhancement" ? `HA-HGH` : `A-HGH`} must be having an effect, painfully lengthening and thickening ${his} ${child.dick > 0 ? `dick` : `clit`}. `;
 			break;
 		case "intensive testicle enhancement":
 		case "hyper testicle enhancement":
-			r += `${He} ${child.amp !== 1 ? `${He} massages ${his} balls uncomfortably` : `${He} squirms under the unfamiliar pressure in ${his} balls`} as `;
+			r += `${He} ${hasAnyArms(child) ? `${He} massages ${his} balls uncomfortably` : `${He} squirms under the unfamiliar pressure in ${his} balls`} as `;
 			if (child.drugs === "hyper testicle enhancement") {
 				if (child.balls < 20) {
 					r += ` as cum drools from the tip of ${his} dick. `;
@@ -15372,26 +15387,26 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 			r += `Despite how little ${he} has been eating lately, ${his} stomach barely growls at all. `;
 			break;
 		case "penis atrophiers":
-			r += `${He} ${child.amp !== 1 ? `massages ${his} dick uncomfortably` : `squirms in respose to the discomfort in ${his} dick`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} dick. `;
+			r += `${He} ${hasAnyArms(child) ? `massages ${his} dick uncomfortably` : `squirms in respose to the discomfort in ${his} dick`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} dick. `;
 			break;
 		case "testicle atropiers":
-			r += `${He} ${child.amp !== 1 ? `massages ${his} balls uncomfortably` : `squirms in respose to the discomfort in ${his} balls`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} balls. `;
+			r += `${He} ${hasAnyArms(child) ? `massages ${his} balls uncomfortably` : `squirms in respose to the discomfort in ${his} balls`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} balls. `;
 			break;
 		case "clitoris atrophiers":
-			r += `${He} ${child.amp !== 1 ? `massages ${his} clit uncomfortably` : `squirms in respose to the discomfort in ${his} clit`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} clit. `;
+			r += `${He} ${hasAnyArms(child) ? `massages ${his} clit uncomfortably` : `squirms in respose to the discomfort in ${his} clit`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} clit. `;
 			break;
 		case "labia atrophiers":
-			r += `${He} ${child.amp !== 1 ? `massages ${his} pussy uncomfortably` : `squirms in respose to the discomfort in ${his} pussy`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} pussy. `;
+			r += `${He} ${hasAnyArms(child) ? `massages ${his} pussy uncomfortably` : `squirms in respose to the discomfort in ${his} pussy`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} pussy. `;
 			break;
 		case "nipple atrophiers":
-			r += `${He} ${child.amp !== 1 ? `massages ${his} nipples uncomfortably` : `squirms in respose to the discomfort in ${his} nipples`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} nipples. `;
+			r += `${He} ${hasAnyArms(child) ? `massages ${his} nipples uncomfortably` : `squirms in respose to the discomfort in ${his} nipples`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} nipples. `;
 			break;
 		case "lip atrophiers":
-			r += `${He} ${child.amp !== 1 ? `massages ${his} lips uncomfortably` : `licks ${his} lips uncomfortably`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} lips. `;
+			r += `${He} ${hasAnyArms(child) ? `massages ${his} lips uncomfortably` : `licks ${his} lips uncomfortably`}. The A-TRPH must be having an effect, painfully causing ${his} body to atrophy ${his} lips. `;
 			break;
 		case "breast redistributors":
 		case "butt redistributors":
-			r += `${He} ${child.amp !== 1 ? `pinches at the fat building on ${his} belly and lets off a sigh` : `squirms under the added weight building on ${his} belly`}. The RDST-D must be having an effect, encouraging ${his} body to redistribute ${his} ${child.drugs === "breast redistributors" ? `breasts'` : `buttocks'`} adipose tissue to ${his} middle. `;
+			r += `${He} ${hasAnyArms(child) ? `pinches at the fat building on ${his} belly and lets off a sigh` : `squirms under the added weight building on ${his} belly`}. The RDST-D must be having an effect, encouraging ${his} body to redistribute ${his} ${child.drugs === "breast redistributors" ? `breasts'` : `buttocks'`} adipose tissue to ${his} middle. `;
 			break;
 		case "sag-B-gone":
 			r += `${His} breasts are shiny from the layer of anti-sag cream rubbed onto them. They might be a little perkier, or not. `;
@@ -15401,7 +15416,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 	if (child.aphrodisiacs > 0 || child.inflationType === "aphrodisiacs") {
 		if (child.inflationType === "aphrodisiacs") {
 			r += `${He}'s literally full of`;
-			if (child.amp) {
+			if (isAmputee(child)) {
 				r += `aphrodisiacs, but is an amputee, so ${he} cannot touch ${himself}. ${He} writhes with extreme sexual frustration, desperately trying to relieve ${himself}, but only managing to stir up the aphrodisiacs contained in ${his} gut, strengthening their effects even more. `;
 			} else if (child.chastityVagina) {
 				r += `aphrodisiacs, but is wearing a chastity belt and cannot touch ${himself}. ${He} writhes with extreme sexual frustration, desperately trying to relieve ${himself}, but only managing to stir up the aphrodisiacs contained in ${his} gut, strengthening their effects even more. `;
@@ -15435,7 +15450,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 			}
 		} else if (child.aphrodisiacs > 1) {
 			r += `${He}'s swimming in`;
-			if (child.amp) {
+			if (isAmputee(child)) {
 				r += `aphrodisiacs, but is an amputee, so ${he} cannot touch ${himself}. ${He} writhes with extreme sexual frustration, desperately trying to relieve ${himself}. `;
 			} else if (child.chastityVagina) {
 				r += `aphrodisiacs, but is wearing a chastity belt and cannot touch ${himself}. ${He} writhes with extreme sexual frustration, desperately trying to relieve ${himself}. `;
@@ -15468,7 +15483,7 @@ App.Facilities.Nursery.LongChildDescription = function(child) {
 				r += `aphrodisiacs and is not allowed to masturbate, so as ${he} stands before you ${he} desperately presents ${his} open mouth, ${his} breasts, ${his} pussy, and ${his} anus in turn, hoping that something will entice you to give ${him} relief. `;
 			}
 		} else {
-			if (child.amp) {
+			if (isAmputee(child)) {
 				r += `${He}'s on aphrodisiacs, but is an amputee, so ${he} cannot touch ${himself}. ${He} writhes with sexual frustration. `;
 			} else if (child.chastityVagina) {
 				r += `${He}'s on aphrodisiacs, but is wearing a chastity belt and cannot touch ${himself}. ${He} writhes with sexual frustration. `;