diff --git a/src/js/rulesAssistantOptions.js b/src/js/rulesAssistantOptions.js
index d1abe766c61830c36946c58daea1c703ab25721e..515d0590def0d001cedd1626f89cfe453b281077 100644
--- a/src/js/rulesAssistantOptions.js
+++ b/src/js/rulesAssistantOptions.js
@@ -3651,7 +3651,7 @@ globalThis.rulesAssistantOptions = (function() {
 				items.push(["(FS) Star of David", "a Star of David"]);
 			}
 
-			if (V.arcologies[0].FSGenderRadicalist !== "unset" || V.arcologies.FSGenderFundamentalist !== "unset") {
+			if (V.arcologies[0].FSGenderRadicalist !== "unset" || V.arcologies[0].FSGenderFundamentalist !== "unset") {
 				items.push(["(FS) Gender Symbol", "a gender symbol"]);
 			}
 
diff --git a/src/npc/descriptions/boobs/boobs.js b/src/npc/descriptions/boobs/boobs.js
index 9af8982aa91092713b8106bd9263aaabbb02ae9d..aeae1c3d596c206eac55597e6fbd214b22e75f61 100644
--- a/src/npc/descriptions/boobs/boobs.js
+++ b/src/npc/descriptions/boobs/boobs.js
@@ -226,7 +226,7 @@ App.Desc.boobs = function() {
 	/**
 	 *
 	 * @param {App.Entity.SlaveState} slave
-	 * @param {App.Utils.Pronouns} pronouns
+	 * @param {App.Utils.Pronouns} [pronouns]
 	 * @returns {string}
 	 */
 	function describe(slave, pronouns) {
@@ -1402,7 +1402,7 @@ App.Desc.boobs = function() {
 
 /**
  * @param {App.Entity.SlaveState} slave
- * @param {App.Utils.Pronouns} pronouns
+ * @param {App.Utils.Pronouns} [pronouns]
  * @returns {string}
  */
 App.Desc.boobsExtra = function(slave, pronouns) {
@@ -1553,7 +1553,7 @@ App.Desc.boobsExtra = function(slave, pronouns) {
 
 /**
  * @param {App.Entity.SlaveState} slave
- * @param {App.Utils.Pronouns} pronouns
+ * @param {App.Utils.Pronouns} [pronouns]
  * @returns {string}
  */
 App.Desc.nipples = function(slave, pronouns) {
@@ -1748,7 +1748,7 @@ App.Desc.nipples = function(slave, pronouns) {
 
 /**
  * @param {App.Entity.SlaveState} slave
- * @param {App.Utils.Pronouns} pronouns
+ * @param {App.Utils.Pronouns} [pronouns]
  * @returns {string}
  */
 App.Desc.areola = function(slave, pronouns) {
diff --git a/src/npc/descriptions/describePiercings.js b/src/npc/descriptions/describePiercings.js
index 85b9c8e85761333bd588a9951b7fd876f18b10c7..7ecd6dabe90a1a08467cf7b5b2993a8d4f855bd9 100644
--- a/src/npc/descriptions/describePiercings.js
+++ b/src/npc/descriptions/describePiercings.js
@@ -231,25 +231,24 @@ App.Desc.piercing = function(slave, surface) {
 			} else if (slave.tonguePiercing === 2) {
 				r.push(`${His} tongue bears a row of studs, offering thorough stimulation to anyone ${he} blows.`);
 			}
-			if (canTalk(slave)) {
-				if (slave.lips >= 70 || slave.lipsPiercing === 2) {
-					r.push(`${He} can barely enunciate`);
-					if (slave.lipsPiercing === 2) {
-						r.push(`past ${his} piercings;`);
-					} else {
-						r.push(`with ${his} fat lips;`);
-					}
-					Enunciate(slave);
-					if (V.writtenTitle === V.enunciate.title) {
-						if (setup.badNames.includes(capFirstChar(V.writtenTitle))) {
-							r.push(`unfortunately`);
-						} else {
-							r.push(`fortunately`);
-						}
-						r.push(`'${V.enunciate.title}' is easy to pronounce.`);
+			if (SlaveStatsChecker.checkForLisp(slave)) {
+				r.push(`${He} can barely enunciate`);
+				if (slave.lipsPiercing === 2) {
+					r.push(`past ${his} piercings;`);
+				} else {
+					r.push(`with ${his} fat lips;`);
+				}
+				const {title} = getEnunciation(slave);
+				const writtenTitle = getWrittenTitle(slave);
+				if (title === writtenTitle) {
+					if (setup.badNames.includes(capFirstChar(writtenTitle))) {
+						r.push(`unfortunately`);
 					} else {
-						r.push(`'${V.writtenTitle}' comes out as '${V.enunciate.title}.'`);
+						r.push(`fortunately`);
 					}
+					r.push(`'${title}' is easy to pronounce.`);
+				} else {
+					r.push(`'${writtenTitle}' comes out as '${title}.'`);
 				}
 			}
 			break;
diff --git a/src/npc/descriptions/longSlave.js b/src/npc/descriptions/longSlave.js
index 2ebeb71c204ee9011e8d1e6ff90db757a7e3ac5a..a214f710df6eac10fb762fa38c9aad81abfa5131 100644
--- a/src/npc/descriptions/longSlave.js
+++ b/src/npc/descriptions/longSlave.js
@@ -1,5 +1,9 @@
 /**
- * @param {App.Entity.SlaveState} slave
+ * @param {object} params
+ * @param {App.Entity.SlaveState} [params.slave]
+ * @param {number} [params.saleDescription]
+ * @param {number} [params.showClothing]
+ * @param {number} [params.eventDescription]
  * @returns {string}
  */
 App.Desc.longSlave = function({slave = V.activeSlave, saleDescription = V.saleDescription, showClothing = V.showClothing, eventDescription = V.eventDescription} = {}) {
@@ -301,7 +305,7 @@ App.Desc.longSlave = function({slave = V.activeSlave, saleDescription = V.saleDe
 	r.push(App.Desc.mods(slave, "calf"));
 	r.push(App.Desc.mods(slave, "ankle"));
 	r.push(App.Desc.mods(slave, "foot"));
-	r.push(App.Desc.heels(slave, "foot"));
+	r.push(App.Desc.heels(slave));
 	r.push(App.Desc.skin(slave));
 
 	if (saleDescription === 1) {