diff --git a/js/003-data/slaveWearData.js b/js/003-data/slaveWearData.js
index 6065c8ee0de396a9999afdb4a8c0210d4a27f0fc..dd07624cc37beac04823fcfc5b85c0c1d3480276 100644
--- a/js/003-data/slaveWearData.js
+++ b/js/003-data/slaveWearData.js
@@ -779,7 +779,7 @@ App.Data.clothes = new Map([
 			name: "Chains",
 			fs: "FSDegradationist",
 			get requirements() { return V.boughtItem.clothing.chains === 1; },
-			exposure: 3,
+			exposure: 4,
 			harsh: true
 		}
 	],
@@ -806,7 +806,7 @@ App.Data.clothes = new Map([
 	["shibari ropes",
 		{
 			name: "Shibari ropes",
-			exposure: 3,
+			exposure: 4,
 			harsh: true
 		}
 	],
diff --git a/src/endWeek/saClothes.js b/src/endWeek/saClothes.js
index 1edffa8176e40a0f02fc0b2def9aad169e882f7b..0abf5f1e2b96472cc80935c0cbb4f286ccb32cd6 100644
--- a/src/endWeek/saClothes.js
+++ b/src/endWeek/saClothes.js
@@ -85,252 +85,23 @@ App.SlaveAssignment.clothes = (function() {
 	 *
 	 */
 	function clothingEffects(slave) {
-		switch (slave.clothes) {
-			case "no clothing":
-			case "body oil":
-				if (slave.devotion >= -20) {
-					if (slave.fetish === "humiliation" && slave.fetishKnown === 0) {
-						r.push(`${He} pretends to be embarrassed by ${his} nudity but seems to get off on it. <span class="lightcoral">${He}'s into humiliation.</span>`);
-						slave.fetishKnown = 1;
-					} else if (slave.fetish === "humiliation" && slave.fetishStrength > 60) {
-						r.push(`${He} pretends to be embarrassed by ${his} nudity but <span class="hotpink">openly gets off on it.</span>`);
-						slave.devotion += 2;
-					} else if (slave.fetish === "humiliation") {
-						r.push(`${He} pretends to be embarrassed by ${his} nudity but <span class="hotpink">secretly gets off on it.</span>`);
-						slave.devotion += 1;
-					} else if (slave.energy > 95) {
-						r.push(`${His} libido is so strong that ${he} <span class="hotpink">enjoys being naked and available.</span>`);
-						slave.devotion += 1;
-					}
-				}
-				break;
-			case "a penitent nuns habit":
-				r.push(`The mortification of the flesh ${he} endures from wearing ${his} sackcloth habit slowly and painfully <span class="hotpink">purifies ${his} mind</span> of any but devoted, <span class="gold">fearful</span> thoughts. It's also <span class="health dec">unhealthy.</span>`);
-				slave.devotion += 2;
-				slave.trust -= 2;
-				healthDamage(slave, 3);
-				if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
-					r.push(`${His} chafed skin makes sex an agonizing prospect. ${He} seems to get off on the pain; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
+		if (App.Data.clothes.get(slave.clothes) && getExposure(slave) === 4) {
+			if (slave.devotion >= -20) {
+				if (slave.fetish === "humiliation" && slave.fetishKnown === 0) {
+					r.push(`${He} pretends to be embarrassed by ${his} nudity but seems to get off on it. <span class="lightcoral">${He}'s into humiliation.</span>`);
 					slave.fetishKnown = 1;
-				} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
-					if (fetishChangeChance(slave) > jsRandom(0, 100)) {
-						r.push(`${His} chafed skin makes sex an agonizing prospect. ${He} learns to come in spite of, and then <span class="lightcoral">because of the pain.</span>`);
-						slave.fetish = "masochist";
-						slave.fetishKnown = 1;
-						slave.fetishStrength = 10;
-					}
-				}
-				break;
-			case "uncomfortable straps":
-				if (slave.devotion >= -20 && slave.fetish === "masochist" && slave.fetishKnown === 1) {
-					r.push(`The uncomfortable straps ${he}'s wearing constantly give ${him} little twinges of pain, <span class="hotpink">titillating ${him}.</span>`);
-					slave.devotion += 2;
-				} else if (slave.devotion <= 20 && slave.trust >= -50) {
-					r.push(`The uncomfortable straps ${he}'s wearing keep ${him} <span class="hotpink">servile</span> and <span class="gold">afraid.</span>`);
-					slave.devotion += 1;
-					slave.trust -= 1;
-					if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
-						r.push(`The straps pinch and constrict ${him} whenever ${he}'s used. ${He} seems to get off on the discomfort; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
-						slave.fetishKnown = 1;
-					} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
-						if (fetishChangeChance(slave) > jsRandom(0, 100)) {
-							r.push(`The straps pinch and constrict ${him} whenever ${he}'s used. ${He} learns to come in spite of, and then <span class="lightcoral">because of the discomfort.</span>`);
-							slave.fetish = "masochist";
-							slave.fetishKnown = 1;
-							slave.fetishStrength = 10;
-						}
-					}
-				} else {
-					if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
-						r.push(`${His} straps pinch and constrict ${him} whenever ${he}'s used. ${He} seems to get off on the discomfort; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
-						slave.fetishKnown = 1;
-					} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
-						if (fetishChangeChance(slave) > jsRandom(0, 100)) {
-							r.push(`${His} straps pinch and constrict ${him} whenever ${he}'s used. ${He} learns to come in spite of, and then <span class="lightcoral">because of the discomfort.</span>`);
-							slave.fetish = "masochist";
-							slave.fetishKnown = 1;
-							slave.fetishStrength = 10;
-						}
-					}
-				}
-				break;
-			case "chains":
-				if (slave.devotion >= -20 && slave.fetish === "masochist" && slave.fetishKnown === 1) {
-					r.push(`The chains ${he}'s wearing constantly give ${him} little twinges of pain, <span class="hotpink">titillating ${him}.</span>`);
+				} else if (slave.fetish === "humiliation" && slave.fetishStrength > 60) {
+					r.push(`${He} pretends to be embarrassed by ${his} nudity but <span class="hotpink">openly gets off on it.</span>`);
 					slave.devotion += 2;
-				} else if (slave.devotion <= 20 && slave.trust >= -50) {
-					r.push(`The chains ${he}'s wearing keep ${him} <span class="hotpink">servile</span> and <span class="gold">afraid.</span>`);
-					slave.devotion += 1;
-					slave.trust -= 1;
-					if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
-						r.push(`${His} chains pinch and constrict ${him} whenever ${he}'s used. ${He} seems to get off on the discomfort; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
-						slave.fetishKnown = 1;
-					} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
-						if (fetishChangeChance(slave) > jsRandom(0, 100)) {
-							r.push(`${His} chains pinch and constrict ${him} whenever ${he}'s used. ${He} learns to come in spite of, and then <span class="lightcoral">because of the discomfort.</span>`);
-							slave.fetish = "masochist";
-							slave.fetishKnown = 1;
-							slave.fetishStrength = 10;
-						}
-					}
-				} else {
-					if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
-						r.push(`${His} chains pinch and constrict ${him} whenever ${he}'s used. ${He} seems to get off on the discomfort; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
-						slave.fetishKnown = 1;
-					} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
-						if (fetishChangeChance(slave) > jsRandom(0, 100)) {
-							r.push(`${His} chains pinch and constrict ${him} whenever ${he}'s used. ${He} learns to come in spite of, and then <span class="lightcoral">because of the discomfort.</span>`);
-							slave.fetish = "masochist";
-							slave.fetishKnown = 1;
-							slave.fetishStrength = 10;
-						}
-					}
-				}
-				break;
-			case "restrictive latex":
-				if (slave.devotion > 20 && slave.trust >= -50 && slave.fetish === "submissive") {
-					if (slave.fetishKnown === 0) {
-						r.push(`The latex ${he}'s wearing limits ${his} world to your input and control. ${He} seems to get off on the lack of control; ${he}'s a <span class="lightcoral">total submissive.</span>`);
-						slave.fetishKnown = 1;
-					} else if (slave.fetishStrength > 60) {
-						r.push(`As a submissive ${he} <span class="hotpink">openly enjoys being immured in latex.</span>`);
-						slave.devotion += 2;
-					} else {
-						r.push(`${His} submissive tendencies help ${him} <span class="hotpink">enjoy being immured in latex.</span>`);
-						slave.devotion += 1;
-					}
-				} else if (slave.devotion < -20) {
-					r.push(`The latex ${he}'s wearing limits ${his} world to <span class="hotpink">your input and control</span> and <span class="gold">fear</span> of unexpected pain.`);
-					slave.devotion += 1;
-					slave.trust -= 1;
-				}
-				break;
-			case "shibari ropes":
-				if (slave.devotion > 20 && slave.trust >= -50 && slave.fetish === "submissive") {
-					if (slave.fetishKnown === 0) {
-						r.push(`The ropes ${he}'s wearing restrict ${him} and leave ${him} completely helpless. ${He} seems to get off on the lack of control; ${he}'s a <span class="lightcoral">natural submissive.</span>`);
-						slave.fetishKnown = 1;
-					} else if (slave.fetishStrength > 60) {
-						r.push(`As a submissive ${he} <span class="hotpink">openly enjoys wearing binding ropes as clothing.</span>`);
-						slave.devotion += 2;
-					} else {
-						r.push(`${His} submissive tendencies help ${him} <span class="hotpink">enjoy wearing binding ropes as clothing.</span>`);
-						slave.devotion += 1;
-					}
-				} else if (slave.devotion < -20) {
-					r.push(`The ropes ${he}'s wearing restrict ${him} without pain, rendering ${him} <span class="hotpink">susceptible to control</span> and <span class="gold">afraid.</span>`);
-					slave.devotion += 1;
-					slave.trust -= 1;
-				}
-				break;
-			case "an apron":
-				if (slave.fetish === "submissive") {
-					if (slave.fetishKnown === 0) {
-						r.push(`${He} pretends to be embarrassed by wearing nothing but an apron, but seems to get off on how it invites other to take control and use ${him}. <span class="lightcoral">${He}'s a natural submissive.</span>`);
-						slave.fetishKnown = 1;
-					} else {
-						r.push(`${He} pretends to be embarrassed by wearing nothing but an apron but <span class="hotpink">secretly gets off</span> on how it invites men to bend ${him} over and put ${him} in ${his} place.`);
-						slave.devotion += 1;
-					}
 				} else if (slave.fetish === "humiliation") {
-					if (slave.fetishKnown === 0) {
-						r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but seems to get off on it. <span class="lightcoral">${He}'s into humiliation.</span>`);
-						slave.fetishKnown = 1;
-					} else if (slave.fetishStrength > 60) {
-						r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but <span class="hotpink">openly gets off on it.</span>`);
-						slave.devotion += 2;
-					} else {
-						r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but <span class="hotpink">secretly gets off on it.</span>`);
-						slave.devotion += 1;
-					}
-				} else if (slave.fetish === "pregnancy" && (slave.bellyPreg >= 1500 || slave.bellyImplant >= 1500)) {
-					if (slave.fetishKnown === 0) {
-						r.push(`${He} pretends to be embarrassed over only having an apron to cover ${his} gravid swell but seems to get off on it. <span class="lightcoral">${He}'s a pregnancy fetishist.</span>`);
-						slave.fetishKnown = 1;
-					} else if (slave.fetishStrength > 60) {
-						r.push(`${He} <span class="hotpink">openly gets off</span> from how motherly ${he} looks wearing nothing but an apron over ${his}`);
-						if (slave.bellyPreg > 100) {
-							r.push(`increasingly`);
-						}
-						r.push(`gravid frame.`);
-						slave.devotion += 2;
-					} else {
-						r.push(`${He} <span class="hotpink">secretly gets off</span> from how motherly ${he} feels wearing nothing but an apron over ${his}`);
-						if (slave.bellyPreg > 100) {
-							r.push(`increasingly`);
-						}
-						r.push(`gravid frame.`);
-						slave.devotion += 1;
-					}
-				} else if (slave.devotion <= 20) {
-					r.push(`${He} is <span class="mediumorchid">inappropriately proud</span> of the nice apron ${he}'s wearing, <span class="mediumaquamarine">building ${his} confidence.</span>`);
-					slave.devotion -= 5;
-					slave.trust += 3;
-				} else {
-					r.push(`${He} is <span class="hotpink">proud</span> and <span class="mediumaquamarine">confident</span> of the nice apron ${he}'s wearing.`);
+					r.push(`${He} pretends to be embarrassed by ${his} nudity but <span class="hotpink">secretly gets off on it.</span>`);
 					slave.devotion += 1;
-					slave.trust += 1;
-				}
-				break;
-			default:
-				if (slave.devotion <= 20) {
-					if (App.Data.clothes.get(slave.clothes).exposure === 0) {
-						r.push(`${He} is <span class="mediumorchid">inappropriately proud</span> of the modest clothes ${he}'s wearing; their decency <span class="mediumaquamarine">rapidly building ${his} confidence.</span>`);
-						slave.trust += 7;
-					} else if (App.Data.clothes.get(slave.clothes).exposure === 1) {
-						r.push(`${He} is <span class="mediumorchid">inappropriately proud</span> of the nice clothes ${he}'s wearing; their relative decency <span class="mediumaquamarine">building ${his} confidence.</span>`);
-						slave.trust += 5;
-					} else if (App.Data.clothes.get(slave.clothes).exposure <= 3) {
-						r.push(`${He} is <span class="mediumorchid">inappropriately proud</span> of the nice clothes ${he}'s wearing, <span class="mediumaquamarine">building ${his} confidence.</span>`);
-						slave.trust += 3;
-					}
-					slave.devotion -= 5;
-				} else if (slave.fetish === "boobs" && slave.clothes === "a monokini") {
-					if (slave.fetishKnown === 0) {
-						r.push(`${He} pretends to be embarrassed by how ${his} monokini draws attention to ${his} breasts but <span class="hotpink">seems to get off on it.</span>`);
-						slave.devotion += 1;
-					} else if (slave.fetishStrength > 60) {
-						r.push(`${He} pretends to be embarrassed by ${his} clearly exposed breasts but <span class="hotpink">openly gets off on it.</span>`);
-						slave.devotion += 2;
-					} else {
-						r.push(`${He} pretends to be embarrassed by ${his} clearly exposed breasts but <span class="hotpink">secretly gets off on it.</span>`);
-						slave.devotion += 1;
-					}
-				} else if (slave.fetish === "humiliation" && getExposure(slave) === 3) {
-					if (slave.fetishKnown === 0) {
-						r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but seems to get off on it. <span class="lightcoral">${He}'s into humiliation.</span>`);
-						slave.fetishKnown = 1;
-					} else if (slave.fetishStrength > 60) {
-						r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but <span class="hotpink">openly gets off on it.</span>`);
-						slave.devotion += 2;
-					} else {
-						r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but <span class="hotpink">secretly gets off on it.</span>`);
-						slave.devotion += 1;
-					}
-				} else if (slave.dick > 0) {
-					/* males have trouble with outfit block */ /* return to with crotch description overhaul */
-					switch (slave.clothes) {
-						case "attractive lingerie":
-						case "attractive lingerie for a pregnant woman":
-							r.push(`${He} is <span class="hotpink">proud</span> of the pretty lingerie ${he}'s wearing, but ${he} constantly has to adjust ${his} g-string to cover ${his} penis.`);
-							slave.devotion += 1;
-							break;
-						case "a string bikini":
-							r.push(`${He} is <span class="hotpink">proud</span> of the slutty swimsuit ${he}'s wearing, but ${he} constantly has to adjust ${his} string bikini bottom in a vain effort to cover ${his} penis.`);
-							slave.devotion += 1;
-							break;
-						default:
-							r.push(`${He} is <span class="hotpink">proud</span> and <span class="mediumaquamarine">confident</span> of the nice clothes ${he}'s wearing.`);
-							slave.devotion += 1;
-							slave.trust += 1;
-					}
-				} else {
-					r.push(`${He} is <span class="hotpink">proud</span> and <span class="mediumaquamarine">confident</span> of the nice clothes ${he}'s wearing.`);
+				} else if (slave.energy > 95) {
+					r.push(`${His} libido is so strong that ${he} <span class="hotpink">enjoys being naked and available.</span>`);
 					slave.devotion += 1;
-					slave.trust += 1;
 				}
+			}
 		}
-
 		// humiliating clothing effects
 		if (slave.fetishKnown === 0 || slave.fetish === "none") {
 			if (getExposure(slave) === 3) {
@@ -343,6 +114,273 @@ App.SlaveAssignment.clothes = (function() {
 			}
 		}
 
+		if (App.Data.clothes.get(slave.clothes)) {
+			if (App.Data.clothes.get(slave.clothes).harsh) {
+				switch (slave.clothes) {
+					case "a penitent nuns habit":
+						r.push(`The mortification of the flesh ${he} endures from wearing ${his} sackcloth habit slowly and painfully <span class="hotpink">purifies ${his} mind</span> of any but devoted, <span class="gold">fearful</span> thoughts. It's also <span class="health dec">unhealthy.</span>`);
+						slave.devotion += 2;
+						slave.trust -= 2;
+						healthDamage(slave, 3);
+						if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
+							r.push(`${His} chafed skin makes sex an agonizing prospect. ${He} seems to get off on the pain; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
+							slave.fetishKnown = 1;
+						} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
+							if (fetishChangeChance(slave) > jsRandom(0, 100)) {
+								r.push(`${His} chafed skin makes sex an agonizing prospect. ${He} learns to come in spite of, and then <span class="lightcoral">because of the pain.</span>`);
+								slave.fetish = "masochist";
+								slave.fetishKnown = 1;
+								slave.fetishStrength = 10;
+							}
+						}
+						break;
+					case "uncomfortable straps":
+						if (slave.devotion >= -20 && slave.fetish === "masochist" && slave.fetishKnown === 1) {
+							r.push(`The uncomfortable straps ${he}'s wearing constantly give ${him} little twinges of pain, <span class="hotpink">titillating ${him}.</span>`);
+							slave.devotion += 2;
+						} else if (slave.devotion <= 20 && slave.trust >= -50) {
+							r.push(`The uncomfortable straps ${he}'s wearing keep ${him} <span class="hotpink">servile</span> and <span class="gold">afraid.</span>`);
+							slave.devotion += 1;
+							slave.trust -= 1;
+							if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
+								r.push(`The straps pinch and constrict ${him} whenever ${he}'s used. ${He} seems to get off on the discomfort; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
+								if (fetishChangeChance(slave) > jsRandom(0, 100)) {
+									r.push(`The straps pinch and constrict ${him} whenever ${he}'s used. ${He} learns to come in spite of, and then <span class="lightcoral">because of the discomfort.</span>`);
+									slave.fetish = "masochist";
+									slave.fetishKnown = 1;
+									slave.fetishStrength = 10;
+								}
+							}
+						} else {
+							if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
+								r.push(`${His} straps pinch and constrict ${him} whenever ${he}'s used. ${He} seems to get off on the discomfort; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
+								if (fetishChangeChance(slave) > jsRandom(0, 100)) {
+									r.push(`${His} straps pinch and constrict ${him} whenever ${he}'s used. ${He} learns to come in spite of, and then <span class="lightcoral">because of the discomfort.</span>`);
+									slave.fetish = "masochist";
+									slave.fetishKnown = 1;
+									slave.fetishStrength = 10;
+								}
+							}
+						}
+						break;
+					case "chains":
+						if (slave.devotion >= -20 && slave.fetish === "masochist" && slave.fetishKnown === 1) {
+							r.push(`The chains ${he}'s wearing constantly give ${him} little twinges of pain, <span class="hotpink">titillating ${him}.</span>`);
+							slave.devotion += 2;
+						} else if (slave.devotion <= 20 && slave.trust >= -50) {
+							r.push(`The chains ${he}'s wearing keep ${him} <span class="hotpink">servile</span> and <span class="gold">afraid.</span>`);
+							slave.devotion += 1;
+							slave.trust -= 1;
+							if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
+								r.push(`${His} chains pinch and constrict ${him} whenever ${he}'s used. ${He} seems to get off on the discomfort; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
+								if (fetishChangeChance(slave) > jsRandom(0, 100)) {
+									r.push(`${His} chains pinch and constrict ${him} whenever ${he}'s used. ${He} learns to come in spite of, and then <span class="lightcoral">because of the discomfort.</span>`);
+									slave.fetish = "masochist";
+									slave.fetishKnown = 1;
+									slave.fetishStrength = 10;
+								}
+							}
+						} else {
+							if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
+								r.push(`${His} chains pinch and constrict ${him} whenever ${he}'s used. ${He} seems to get off on the discomfort; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
+								if (fetishChangeChance(slave) > jsRandom(0, 100)) {
+									r.push(`${His} chains pinch and constrict ${him} whenever ${he}'s used. ${He} learns to come in spite of, and then <span class="lightcoral">because of the discomfort.</span>`);
+									slave.fetish = "masochist";
+									slave.fetishKnown = 1;
+									slave.fetishStrength = 10;
+								}
+							}
+						}
+						break;
+					case "restrictive latex":
+						if (slave.devotion > 20 && slave.trust >= -50 && slave.fetish === "submissive") {
+							if (slave.fetishKnown === 0) {
+								r.push(`The latex ${he}'s wearing limits ${his} world to your input and control. ${He} seems to get off on the lack of control; ${he}'s a <span class="lightcoral">total submissive.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetishStrength > 60) {
+								r.push(`As a submissive ${he} <span class="hotpink">openly enjoys being immured in latex.</span>`);
+								slave.devotion += 2;
+							} else {
+								r.push(`${His} submissive tendencies help ${him} <span class="hotpink">enjoy being immured in latex.</span>`);
+								slave.devotion += 1;
+							}
+						} else if (slave.devotion < -20) {
+							r.push(`The latex ${he}'s wearing limits ${his} world to <span class="hotpink">your input and control</span> and <span class="gold">fear</span> of unexpected pain.`);
+							slave.devotion += 1;
+							slave.trust -= 1;
+						}
+						break;
+					case "shibari ropes":
+						if (slave.devotion > 20 && slave.trust >= -50 && slave.fetish === "submissive") {
+							if (slave.fetishKnown === 0) {
+								r.push(`The ropes ${he}'s wearing restrict ${him} and leave ${him} completely helpless. ${He} seems to get off on the lack of control; ${he}'s a <span class="lightcoral">natural submissive.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetishStrength > 60) {
+								r.push(`As a submissive ${he} <span class="hotpink">openly enjoys wearing binding ropes as clothing.</span>`);
+								slave.devotion += 2;
+							} else {
+								r.push(`${His} submissive tendencies help ${him} <span class="hotpink">enjoy wearing binding ropes as clothing.</span>`);
+								slave.devotion += 1;
+							}
+						} else if (slave.devotion < -20) {
+							r.push(`The ropes ${he}'s wearing restrict ${him} without pain, rendering ${him} <span class="hotpink">susceptible to control</span> and <span class="gold">afraid.</span>`);
+							slave.devotion += 1;
+							slave.trust -= 1;
+						}
+						break;
+					default:
+						if (slave.devotion >= -20 && slave.fetish === "masochist" && slave.fetishKnown === 1) {
+							r.push(`The outfit ${he}'s wearing constantly give ${him} little twinges of pain, <span class="hotpink">titillating ${him}.</span>`);
+							slave.devotion += 2;
+						} else if (slave.devotion <= 20 && slave.trust >= -50) {
+							r.push(`The outfit ${he}'s wearing keep ${him} <span class="hotpink">servile</span> and <span class="gold">afraid.</span>`);
+							slave.devotion += 1;
+							slave.trust -= 1;
+							if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
+								r.push(`${His} outfit pinches and constricts ${him} whenever ${he}'s used. ${He} seems to get off on the discomfort; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
+								if (fetishChangeChance(slave) > jsRandom(0, 100)) {
+									r.push(`${His} outfit pinches and constricts ${him} whenever ${he}'s used. ${He} learns to come in spite of, and then <span class="lightcoral">because of the discomfort.</span>`);
+									slave.fetish = "masochist";
+									slave.fetishKnown = 1;
+									slave.fetishStrength = 10;
+								}
+							}
+						} else {
+							if (slave.fetish === "masochist" && slave.fetishKnown === 0) {
+								r.push(`${His} outfit pinches and constricts ${him} whenever ${he}'s used. ${He} seems to get off on the discomfort; ${he}'s a <span class="lightcoral">natural masochist.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetish === "none" || slave.fetishKnown === 0) {
+								if (fetishChangeChance(slave) > jsRandom(0, 100)) {
+									r.push(`${His} outfit pinches and constricts ${him} whenever ${he}'s used. ${He} learns to come in spite of, and then <span class="lightcoral">because of the discomfort.</span>`);
+									slave.fetish = "masochist";
+									slave.fetishKnown = 1;
+									slave.fetishStrength = 10;
+								}
+							}
+						}
+				}
+			} else { // nice
+				switch (slave.clothes) {
+					case "an apron":
+						if (slave.fetish === "submissive") {
+							if (slave.fetishKnown === 0) {
+								r.push(`${He} pretends to be embarrassed by wearing nothing but an apron, but seems to get off on how it invites other to take control and use ${him}. <span class="lightcoral">${He}'s a natural submissive.</span>`);
+								slave.fetishKnown = 1;
+							} else {
+								r.push(`${He} pretends to be embarrassed by wearing nothing but an apron but <span class="hotpink">secretly gets off</span> on how it invites men to bend ${him} over and put ${him} in ${his} place.`);
+								slave.devotion += 1;
+							}
+						} else if (slave.fetish === "humiliation") {
+							if (slave.fetishKnown === 0) {
+								r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but seems to get off on it. <span class="lightcoral">${He}'s into humiliation.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetishStrength > 60) {
+								r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but <span class="hotpink">openly gets off on it.</span>`);
+								slave.devotion += 2;
+							} else {
+								r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but <span class="hotpink">secretly gets off on it.</span>`);
+								slave.devotion += 1;
+							}
+						} else if (slave.fetish === "pregnancy" && (slave.bellyPreg >= 1500 || slave.bellyImplant >= 1500)) {
+							if (slave.fetishKnown === 0) {
+								r.push(`${He} pretends to be embarrassed over only having an apron to cover ${his} gravid swell but seems to get off on it. <span class="lightcoral">${He}'s a pregnancy fetishist.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetishStrength > 60) {
+								r.push(`${He} <span class="hotpink">openly gets off</span> from how motherly ${he} looks wearing nothing but an apron over ${his}`);
+								if (slave.bellyPreg > 100) {
+									r.push(`increasingly`);
+								}
+								r.push(`gravid frame.`);
+								slave.devotion += 2;
+							} else {
+								r.push(`${He} <span class="hotpink">secretly gets off</span> from how motherly ${he} feels wearing nothing but an apron over ${his}`);
+								if (slave.bellyPreg > 100) {
+									r.push(`increasingly`);
+								}
+								r.push(`gravid frame.`);
+								slave.devotion += 1;
+							}
+						} else if (slave.devotion <= 20) {
+							r.push(`${He} is <span class="mediumorchid">inappropriately proud</span> of the nice apron ${he}'s wearing, <span class="mediumaquamarine">building ${his} confidence.</span>`);
+							slave.devotion -= 5;
+							slave.trust += 3;
+						} else {
+							r.push(`${He} is <span class="hotpink">proud</span> and <span class="mediumaquamarine">confident</span> of the nice apron ${he}'s wearing.`);
+							slave.devotion += 1;
+							slave.trust += 1;
+						}
+						break;
+					default:
+						if (slave.devotion <= 20) {
+							if (App.Data.clothes.get(slave.clothes).exposure === 0) {
+								r.push(`${He} is <span class="mediumorchid">inappropriately proud</span> of the modest clothes ${he}'s wearing; their decency <span class="mediumaquamarine">rapidly building ${his} confidence.</span>`);
+								slave.trust += 7;
+							} else if (App.Data.clothes.get(slave.clothes).exposure === 1) {
+								r.push(`${He} is <span class="mediumorchid">inappropriately proud</span> of the nice clothes ${he}'s wearing; their relative decency <span class="mediumaquamarine">building ${his} confidence.</span>`);
+								slave.trust += 5;
+							} else if (App.Data.clothes.get(slave.clothes).exposure <= 3) {
+								r.push(`${He} is <span class="mediumorchid">inappropriately proud</span> of the nice clothes ${he}'s wearing, <span class="mediumaquamarine">building ${his} confidence.</span>`);
+								slave.trust += 3;
+							}
+							slave.devotion -= 5;
+						} else if (slave.fetish === "boobs" && slave.clothes === "a monokini") {
+							if (slave.fetishKnown === 0) {
+								r.push(`${He} pretends to be embarrassed by how ${his} monokini draws attention to ${his} breasts but <span class="hotpink">seems to get off on it.</span>`);
+								slave.devotion += 1;
+							} else if (slave.fetishStrength > 60) {
+								r.push(`${He} pretends to be embarrassed by ${his} clearly exposed breasts but <span class="hotpink">openly gets off on it.</span>`);
+								slave.devotion += 2;
+							} else {
+								r.push(`${He} pretends to be embarrassed by ${his} clearly exposed breasts but <span class="hotpink">secretly gets off on it.</span>`);
+								slave.devotion += 1;
+							}
+						} else if (slave.fetish === "humiliation" && getExposure(slave) === 3) {
+							if (slave.fetishKnown === 0) {
+								r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but seems to get off on it. <span class="lightcoral">${He}'s into humiliation.</span>`);
+								slave.fetishKnown = 1;
+							} else if (slave.fetishStrength > 60) {
+								r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but <span class="hotpink">openly gets off on it.</span>`);
+								slave.devotion += 2;
+							} else {
+								r.push(`${He} pretends to be embarrassed by ${his} extremely revealing clothing but <span class="hotpink">secretly gets off on it.</span>`);
+								slave.devotion += 1;
+							}
+						} else if (slave.dick > 0) {
+							/* males have trouble with outfit block */ /* return to with crotch description overhaul */
+							switch (slave.clothes) {
+								case "attractive lingerie":
+								case "attractive lingerie for a pregnant woman":
+									r.push(`${He} is <span class="hotpink">proud</span> of the pretty lingerie ${he}'s wearing, but ${he} constantly has to adjust ${his} g-string to cover ${his} penis.`);
+									slave.devotion += 1;
+									break;
+								case "a string bikini":
+									r.push(`${He} is <span class="hotpink">proud</span> of the slutty swimsuit ${he}'s wearing, but ${he} constantly has to adjust ${his} string bikini bottom in a vain effort to cover ${his} penis.`);
+									slave.devotion += 1;
+									break;
+								default:
+									r.push(`${He} is <span class="hotpink">proud</span> and <span class="mediumaquamarine">confident</span> of the nice clothes ${he}'s wearing.`);
+									slave.devotion += 1;
+									slave.trust += 1;
+							}
+						} else {
+							r.push(`${He} is <span class="hotpink">proud</span> and <span class="mediumaquamarine">confident</span> of the nice clothes ${he}'s wearing.`);
+							slave.devotion += 1;
+							slave.trust += 1;
+						}
+				}
+			}
+		}
+
 		// Chattel Religionist effects
 		if (arcology.FSChattelReligionist !== "unset") {
 			if (slave.behavioralQuirk === "sinful") {
@@ -427,7 +465,7 @@ App.SlaveAssignment.clothes = (function() {
 			if (slave.collar === "heavy gold" || slave.collar === "ancient Egyptian") {
 				r.push(`${He} bears the burden of ${his} heavy gold collar with <span class="mediumaquamarine">confidence.</span>`);
 				slave.trust += 1;
-			} else if (slave.collar === "bowtie" || slave.collar === "neck tie" ) {
+			} else if (slave.collar === "bowtie" || slave.collar === "neck tie") {
 				r.push(`The ${slave.collar} and shirt collar ${he} wears fill ${him} with <span class="mediumaquamarine">confidence,</span> since although they conceal a more traditional slave collar that can be used to restrain ${him}, they don't look like it.`);
 				slave.trust += 1;
 			} else if (["nice retirement counter", "pretty jewelry", "satin choker", "silk ribbon", "stylish leather"].includes(slave.collar)) {