diff --git a/src/endWeek/saServeThePublic.js b/src/endWeek/saServeThePublic.js
index cb278d850183bd2cedd6e38070a3cc1a3c3b7657..dbfc5aef7a0c59778ca61798a4436271223abbe1 100644
--- a/src/endWeek/saServeThePublic.js
+++ b/src/endWeek/saServeThePublic.js
@@ -745,7 +745,7 @@ window.saServeThePublic = (function saServeThePublic() {
 				}
 			}
 		} else if (arcology.FSSlimnessEnthusiastLaw === 1) {
-			if (isSlim(slave)) {
+			if (slimLawPass(slave) === 1) {
 				r += ` The public enjoys ${his} fashionably sleek little body.`;
 				if (canTalk(slave) && slave.voice > 2) {
 					r += ` ${His} high voice contributes to ${his} girlish image, so ${he} does even better.`;
diff --git a/src/endWeek/saWhore.js b/src/endWeek/saWhore.js
index 497bfb5ec97bbc6ea3a394394560389e4b4dc084..9ea96fa1546824a280514a584e598692710d8202 100644
--- a/src/endWeek/saWhore.js
+++ b/src/endWeek/saWhore.js
@@ -907,7 +907,7 @@ window.saWhore = (function saWhore() {
 				}
 			}
 		} else if (arcology.FSSlimnessEnthusiastLaw === 1) {
-			if (isSlim(slave)) {
+			if (slimLawPass(slave) === 1) {
 				r += ` ${He} makes extra ¤ due to ${his} fashionably sleek little body.`;
 				if (canTalk(slave) && slave.voice > 2) {
 					r += ` ${His} high voice contributes to ${his} girlish image, so ${he} does even better.`;
diff --git a/src/facilities/nursery/longChildDescription.tw b/src/facilities/nursery/longChildDescription.tw
index fae281dfdcb96e2fa4038bcb1f3041a6ea15ea3a..8005318bb72812674412b59977961fc767c8ec67 100644
--- a/src/facilities/nursery/longChildDescription.tw
+++ b/src/facilities/nursery/longChildDescription.tw
@@ -865,7 +865,7 @@ is
 		$His body is a perfect example of the fashionable feminine ideal.
 	<</if>>
 <<elseif $arcologies[0].FSSlimnessEnthusiastLaw == 1>>
-	<<if isSlim($activeChild)>>
+	<<if slimLawPass($activeChild) == 1>>
 		$His body is a perfect example of the fashionable ideal flat body.
 	<</if>>
 <<elseif $arcologies[0].FSHedonisticDecadenceLaw2 == 1>>
diff --git a/src/js/slaveCostJS.js b/src/js/slaveCostJS.js
index 39a6e2df3d9c87d5ea716253b0b273ffdce4f885..de5ae36715a3ad7a7e6c79f4fd9289c6076af394 100644
--- a/src/js/slaveCostJS.js
+++ b/src/js/slaveCostJS.js
@@ -1239,7 +1239,7 @@ window.Beauty = (function() {
 	 * @param {App.Entity.SlaveState} slave
 	 */
 	function calcSlimBeauty(slave) {
-		if (isSlim(slave)) {
+		if (slimLawPass(slave) === 1) {
 			beauty += 40 + (arcology.FSSlimnessEnthusiast / 20); /* 45 */
 		} else {
 			beauty -= arcology.FSSlimnessEnthusiast / 20;
diff --git a/src/js/slaveStatsChecker.js b/src/js/slaveStatsChecker.js
index 5a25da6c41e7b345e3d581587f7f231392386c0f..4cbc7c259ba1166b5e23dc95c6b2f32d920b92ea 100644
--- a/src/js/slaveStatsChecker.js
+++ b/src/js/slaveStatsChecker.js
@@ -14,8 +14,8 @@ window.SlaveStatsChecker = (function() {
 		return (slave.lips > 70 || (slave.lipsPiercing + slave.tonguePiercing > 2) || slave.teeth === "gapped");
 	}
 
-	/* call as SlaveStatsChecker.modScore() */
-	/**
+
+	/** call as SlaveStatsChecker.modScore()
 	 * @param {App.Entity.SlaveState} slave
 	 * @returns {number} // I think
 	 */
@@ -26,8 +26,8 @@ window.SlaveStatsChecker = (function() {
 		return V.tatScore + V.piercingScore;
 	}
 
-	/* helper function, not callable */
 	/**
+	 * helper function, not callable
 	 * @param {App.Entity.SlaveState} slave
 	 * @returns {number}
 	 */
@@ -80,8 +80,8 @@ window.SlaveStatsChecker = (function() {
 		return score;
 	}
 
-	/* helper function, not callable */
 	/**
+	 * helper function, not callable
 	 * @param {App.Entity.SlaveState} slave
 	 * @returns {number}
 	 */
@@ -147,8 +147,8 @@ window.SlaveStatsChecker = (function() {
 		return score;
 	}
 
-	/* call as SlaveStatsChecker.isModded() */
 	/**
+	 * call as SlaveStatsChecker.isModded()
 	 * @param {App.Entity.SlaveState} slave
 	 * @returns {boolean}
 	 */
@@ -160,8 +160,8 @@ window.SlaveStatsChecker = (function() {
 		return (mods > 15 || (piercings > 8 && tattoos > 5));
 	}
 
-	/* call as SlaveStatsChecker.isUnmodded() */
 	/**
+	 * call as SlaveStatsChecker.isUnmodded()
 	 * @param {App.Entity.SlaveState} slave
 	 * @returns {boolean}
 	 */
@@ -183,18 +183,9 @@ window.isSlim = function(slave) {
 	const ArcologyZero = State.variables.arcologies[0];
 
 	if (ArcologyZero.FSSlimnessEnthusiastLaw === 1) {
-		if ((slave.boobs < 300) && (slave.butt <= 1) && (slave.waist <= 10)) {
-			if ((slave.muscles <= 30) && (ArcologyZero.FSPhysicalIdealist !== "unset") && (ArcologyZero.FSHedonisticDecadenceStrongFat === 1)) {
-				slim = true;
-			} else if ((ArcologyZero.FSHedonisticDecadence === "unset") || (ArcologyZero.FSPhysicalIdealistStrongFat !== 1)) {
-				if (slave.weight <= 30) {
-					slim = true;
-				}
-			} else if (slave.weight <= 10) {
-				slim = true;
-			}
-		}
-	} else if ((slave.boobs < 500) && (slave.butt < 3)) {
+		return (slimLawPass(slave) === 1);
+	}
+	if ((slave.boobs < 500) && (slave.butt < 3)) {
 		if ((slave.muscles <= 30) && (ArcologyZero.FSPhysicalIdealist === "unset") && (slave.weight <= 10) && (ArcologyZero.FSHedonisticDecadence === "unset")) {
 			slim = true;
 		} else if (ArcologyZero.FSPhysicalIdealist !== "unset") {
@@ -214,6 +205,36 @@ window.isSlim = function(slave) {
 	return slim;
 };
 
+/**
+ * Returns if slave is considered slim or not by Slimness Enthusiast Law.
+ * @param {App.Entity.SlaveState} slave
+ * @returns {number} 1: yes, 0: no
+ */
+window.slimLawPass = function(slave) {
+	let slimLawPass = 0;
+	const ArcologyZero = State.variables.arcologies[0];
+
+	if (ArcologyZero.FSSlimnessEnthusiastLaw === 1) {
+		if ((slave.boobs < 300) && (slave.butt <= 1) && (slave.waist <= 10)) {
+			if ((ArcologyZero.FSPhysicalIdealist === "unset") && (ArcologyZero.FSHedonisticDecadenceStrongFat === 0) && (slave.muscles > 30)) {
+			/* muscle check*/
+				slimLawPass = 0;
+			} else if ((ArcologyZero.FSHedonisticDecadence !== "unset") || (ArcologyZero.FSPhysicalIdealistStrongFat === 1)) {
+			/* weight check*/
+				if (slave.weight > 30) {
+					slimLawPass = 0;
+				}
+			} else if (slave.weight > 10) {
+				slimLawPass = 0;
+			} else {
+				slimLawPass = 1;
+			}
+		}
+	}
+
+	return slimLawPass;
+};
+
 /**
  * Returns if slave is considered stacked (big T&A) or not.
  * @param {App.Entity.SlaveState} slave
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index e2c7ebdba373d317c2b7f4b9e1c0a4af909b1972..ce7d69a1e1e5f9c08bd9b09df8932ddf3df477e5 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -1668,7 +1668,7 @@ is
 		$His body is a perfect example of the fashionable feminine ideal.
 	<</if>>
 <<elseif $arcologies[0].FSSlimnessEnthusiastLaw == 1>>
-	<<if isSlim($activeSlave)>>
+	<<if slimLawPass($activeSlave) == 1>>
 		$His body is a perfect example of the fashionable ideal flat body.
 	<</if>>
 <<elseif $arcologies[0].FSHedonisticDecadenceLaw2 == 1>>