diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index c189d9a951003d813add41b0663ddc776bf99416..a559671fc80c87b511e7795db616e900820d87f7 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -573,9 +573,7 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $assignFilter = 0>>
 
 /*pregmod variables */
-<<set $publiclyouted = 0>> /* pending removal */
 <<set $newDescriptions = 0>>
-<<set $sellBaby = 0>>
 <<set $specialSlavesPriceOverride = 0>>
 <<set $pregAccessibility = 0>>
 <<set $dickAccessibility = 0>>
@@ -592,7 +590,6 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $cumPipeline = 0>>
 <<set $burstee = 0>>
 <<set $slaveDeath = 0>>
-<<set $deathee = 0>>
 <<set $clinicInflateBelly = 0>>
 <<set $playerBred = 0>>
 <<set $propOutcome = 0>>
@@ -618,7 +615,6 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $pregSpeedControl = 0>>
 <<set $clinicSpeedGestation = 0>>
 <<set $playerSurgery = 0>>
-<<set $playerSurgeryType = 0>>
 <<set $bodyswapAnnounced = 0>>
 <<set $allowFamilyTitles = 0>>
 
@@ -732,7 +728,6 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $limbsCompleted = 0>>
 <<set $limbs = []>>
 <<set $ImplantProductionUpgrade = 0>>
-<<set $implantFillable = 0>>
 <<set $permaPregImplant = 0>>
 <<set $injectionUpgrade = 0>>
 <<set $hormoneUpgradeMood = 0>>
diff --git a/src/js/storyJS.tw b/src/js/storyJS.tw
index 03e9791cd3833455555fd2fb51effc6a42139320..4aba8af4e58484822579e5a447973b1de7aac652 100644
--- a/src/js/storyJS.tw
+++ b/src/js/storyJS.tw
@@ -993,46 +993,43 @@ window.ruleSlaveExcluded = function(slave, rule) {
 };
 
 window.hasSurgeryRule = function(slave, rules) {
-	if (!slave || !rules || !slave.currentRules) {
-		return false;
-	}else {
-		for(var d=rules.length-1; d >= 0; d--){
-			for(var e=0; e < slave.currentRules.length;e++){
-				if(slave.currentRules[e] == rules[d].ID){
-					if (rules[d].autoSurgery > 0){
-						return true;
-					}
-				}
+	if (!slave || !rules || !slave.currentRules)
+		return false;
+
+	for (var d = rules.length-1; d >= 0; d--) {
+		if (ruleApplied(slave, rules[d].ID)) {
+			if (rules[d].autoSurgery > 0) {
+				return true;
 			}
-		}return false;
+		}
 	}
+	return false;
 };
 
-window.hasHColorRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "hColor") ? true : false;
-};
-
-window.hasHStyleRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "hStyle") ? true : false;
-};
-
-window.hasEyeColorRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "eyeColor") ? true : false;
-};
-
-window.lastRuleFor = function(slave, rules, what) {
-	if (!slave  || !rules || !slave.currentRules)
-		return null;
+window.hasRuleFor = function(slave, rules, what) {
+	if (!slave || !rules || !slave.currentRules)
+		return false;
 
 	for (var d = rules.length-1; d >= 0; d--) {
 		if (ruleApplied(slave, rules[d].ID)) {
 			if (rules[d][what] !== "no default setting") {
-				return rules[d];
+				return true;
 			}
 		}
 	}
+	return false;
+};
 
-	return null;
+window.hasHColorRule = function(slave, rules) {
+	return hasRuleFor(slave, rules, "hColor");
+}
+
+window.hasHStyleRule = function(slave, rules) {
+	return hasRuleFor(slave, rules, "hStyle");
+};
+
+window.hasEyeColorRule = function(slave, rules) {
+	return hasRuleFor(slave, rules, "eyeColor");
 };
 
 window.lastPregRule = function(slave, rules) {
@@ -1041,9 +1038,9 @@ window.lastPregRule = function(slave, rules) {
 	if (!slave.currentRules)
 		return false;
 
-	for (var d = rules.length-1; d >= 0; d--){
+	for (var d = rules.length-1; d >= 0; d--) {
 		if (ruleApplied(slave, rules[d].ID)) {
-			if (rules[d].preg == -1){
+			if (rules[d].preg == -1) {
 				return rules[d];
 			}
 		}
@@ -1052,158 +1049,6 @@ window.lastPregRule = function(slave, rules) {
 	return null;
 };
 
-window.lastEyeWearRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "eyewear");
-};
-
-window.lastEyeColorRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "eyeColor");
-};
-
-window.lastMakeupRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "makeup");
-};
-
-window.lastNailsRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "nails");
-};
-
-window.lastHColorRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "hColor");
-};
-
-window.lastHStyleRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "hStyle");
-};
-
-window.lastHLengthRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "hLength");
-};
-
-window.lastPubicHColorRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "pubicHColor");
-};
-
-window.lastPubicHStyleRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "pubicHStyle");
-};
-
-window.lastUnderArmHColorRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "underArmHColor");
-};
-
-window.lastUnderArmHStyleRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "underArmHStyle");
-};
-
-window.lastNipplesPiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "nipplesPiercing");
-};
-
-window.lastAreolaePiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "areolaePiercing");
-};
-
-window.lastClitPiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "clitPiercing");
-};
-
-window.lastClitSettingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "clitSetting");
-};
-
-window.lastClitSettingXYRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "clitSettingXY");
-};
-
-window.lastClitSettingXXRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "clitSettingXX");
-};
-
-window.lastClitSettingEnergyRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "clitSettingEnergy");
-};
-
-window.lastVaginaPiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "vaginaPiercing");
-};
-
-window.lastDickPiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "dickPiercing");
-};
-
-window.lastAnusPiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "anusPiercing");
-};
-
-window.lastLipsPiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "lipsPiercing");
-};
-
-window.lastTonguePiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "tonguePiercing");
-};
-
-window.lastEarPiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "earPiercing");
-};
-
-window.lastEyebrowPiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "eyebrowPiercing");
-};
-
-window.lastNosePiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "nosePiercing");
-};
-
-window.lastNavelPiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "navelPiercing");
-};
-
-window.lastCorsetPiercingRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "corsetPiercing");
-};
-
-window.lastBoobsTatRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "boobsTat");
-};
-
-window.lastButtTatRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "buttTat");
-};
-
-window.lastVaginaTatRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "vaginaTat");
-};
-
-window.lastDickTatRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "dickTat");
-};
-
-window.lastAnusTatRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "anusTat");
-};
-
-window.lastLipsTatRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "lipsTat");
-};
-
-window.lastShouldersTatRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "shouldersTat");
-};
-
-window.lastArmsTatRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "armsTat");
-};
-
-window.lastLegsTatRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "legsTat");
-};
-
-window.lastStampTatRule = function(slave, rules) {
-	return lastRuleFor(slave, rules, "stampTat");
-};
-
 window.lastSurgeryRuleFor = function(slave, rules, what) {
 	if (!slave || !rules || !slave.currentRules)
 		return null;
@@ -1238,59 +1083,6 @@ window.lastButtSurgeryRule = function(slave, rules) {
 	return lastSurgeryRuleFor(slave, rules, "butt");
 };
 
-window.checkThresholds = function(number, rule) {
-	if (!rule) {
-		return null;
-	} else {
-		if ((rule.thresholdUpper != "none") && (rule.thresholdLower != "none")){
-			if (!rule.eqLower && !rule.eqUpper){
-				if((number < rule.thresholdUpper) && (number > rule.thresholdLower)){
-					return true;
-				}
-			}
-			else if (rule.eqLower && !rule.eqUpper){
-				if((number < rule.thresholdUpper) && (number >= rule.thresholdLower)){
-					return true;
-				}
-			}
-			else if (!rule.eqLower && rule.eqUpper){
-				if((number <= rule.thresholdUpper) && (number > rule.thresholdLower)){
-					return true;
-				}
-			}
-			else {
-				if((number <= rule.thresholdUpper) && (number >= rule.thresholdLower)){
-					return true;
-				}
-			}
-		}
-		else if (rule.thresholdUpper != "none"){
-			if (!rule.eqUpper) {
-				if(number < rule.thresholdUpper){
-					return true;
-				}
-			}
-			else{
-				if(number <= rule.thresholdUpper){
-					return true;
-				}
-			}
-		}
-		else if (rule.thresholdLower != "none"){
-			if (!rule.eqLower) {
-				if(number > rule.thresholdLower){
-					return true;
-				}
-			}
-			else{
-				if(number >= rule.thresholdLower){
-					return true;
-				}
-			}
-		}return false;
-	}
-};
-
 window.milkAmount = function(slave) {
 	var milk;
 	var calcs;
@@ -1378,6 +1170,54 @@ window.cumAmount = function(slave) {
 	}
 };
 
+
+window.mergeRules = function(rules) {
+    var combinedRule = {};
+
+    for (var i = 0; i < rules.length; i++) {
+        for (var attr in rules[i]) {
+
+            // A rule overrides any preceding ones if,
+            //   * there are no preceding ones,
+            //   * or it sets autoBrand,
+            //   * or it sets setAssignment to something other that "none",
+            //   * or it sets assignFacility to something other that "none",
+            //   * or it sets none of the above and is not "no default setting"
+            var applies = (
+                combinedRule[attr] === undefined
+                || (attr === "autoBrand" && rules[i][attr])
+                || (attr === "setAssignment" && rules[i][attr] !== "none")
+                || (attr === "assignFacility" && rules[i][attr] !== "none")
+                || (
+                    attr !== "autoBrand"
+                    && attr !== "setAssignment"
+                    && attr !== "assignFacility"
+                    && rules[i][attr] !== "no default setting"
+                )
+            );
+
+            if (applies) {
+                if (attr == "setAssignment" && combinedRule.assignFacility !== "none") {
+                    // If the rules so far have set assignFacility, unset it,
+                    // since the assignment overrides it.  We assume that a
+                    // given rule won't set both assignFacility and
+                    // setAssignment.  If that happens, which one will prevail
+                    // is down to the enumeration order of "for ... in".
+                    combinedRule.assignFacility = "none";
+                    combinedRule.facilityRemove = false;
+                }
+                if (attr == "assignFacility" && combinedRule.setAssignment !== "none")
+                    // Similarly, if setAssignment is set, unset it.
+                    combinedRule.setAssignment = "none";
+
+                combinedRule[attr] = rules[i][attr];
+            }
+        }
+    }
+
+    return combinedRule;
+}
+
 /* OLD
 window.randomRelatedSlave = function(slave, filterFunction) {
   if(!slave || !SugarCube) { return undefined; }
diff --git a/src/npc/agent/agentCompany.tw b/src/npc/agent/agentCompany.tw
index ff50d11933f6ba0354517e8164f9d78b445cdbff..e2811f28e39dce67c871cb128b06ed7c73aff15e 100644
--- a/src/npc/agent/agentCompany.tw
+++ b/src/npc/agent/agentCompany.tw
@@ -1,45 +1,30 @@
 :: Agent Company [nobr]
 
-<<set $nextButton = "Continue">>
-<<set $nextLink = "AS Dump">>
-<<set $returnTo = "Main">>
+<<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "Neighbor Interact", _SL = $slaves.length, _ID = $activeSlave.ID>>
 
 <<assignJob $activeSlave "live with your agent">>
 
-<<if $activeSlave.rivalry > 0>>
-	<<for _i = 0;_i < $slaves.length;_i++>>
-	<<if $activeSlave.rivalryTarget == $slaves[_i].ID>>
-		<<set $slaves[_i].rivalry = 0>>
-		<<set $slaves[_i].rivalryTarget = 0>>
-	<</if>>
-	<</for>>
-	<<set $activeSlave.rivalry = 0>>
-	<<set $activeSlave.rivalryTarget = 0>>
-<</if>>
-<<if $activeSlave.ID == $HeadGirl.ID>>
-	<<set $HeadGirl = 0>>
-<</if>>
-<<if $activeSlave.ID == $Recruiter.ID>>
-	<<set $Recruiter = 0>>
-<</if>>
-<<if $activeSlave.ID == $Bodyguard.ID>>
-	<<set $Bodyguard = 0>>
+<<if $activeSlave.reservedChildren > 0>>
+	<<set $reservedChildren -= $activeSlave.reservedChildren>>
+	<<set $activeSlave.reservedChildren = 0>>
 <</if>>
 
-<<for _i = 0;_i < $slaves.length;_i++>>
-<<if $activeSlave.relationshipTarget == $slaves[_i].ID>>
-	<<set $subSlave = $slaves[_i]>>
+<<if $activeSlave.rivalry > 0>>
+	<<for _i = 0; _i < _SL; _i++>>
+		<<if _ID == $slaves[_i].rivalryTarget>>
+			<<set $slaves[_i].rivalry = 0, $slaves[_i].rivalryTarget = 0>>
+			<<break>>
+		<</if>>
+	<</for>>
+	<<set $activeSlave.rivalry = 0, $activeSlave.rivalryTarget = 0>>
 <</if>>
-<</for>>
 
-<<for _i = 0;_i < $arcologies.length;_i++>>
-<<if $subSlave.ID == $arcologies[_i].leaderID>>
-	<<set $activeArcology = $arcologies[_i]>>
-<</if>>
+<<for _i = 0; _i < $arcologies.length; _i++>>
+	<<if $subSlave.ID == $arcologies[_i].leaderID>>
+		<<set $activeArcology = $arcologies[_i]>>
+	<</if>>
 <</for>>
 
-<<SlaveTitle $activeSlave>>
-
 Working in $activeArcology.name's penthouse office, $subSlave.slaveName gets a video call from you. Naturally, her personal assistant program has been instructed to give these the highest priority, and your face appears in front of her immediately. She greets you properly, and asks you what she can do to serve you. You tell her you're planning to send one of your slaves over to her arcology to assist her. Exchanges of this kind are neither unusual nor particularly interesting, so a slight look of perplexity clouds $subSlave.slaveName's face as she wonders why this merits a personal call. Normally, <<if $HeadGirl != 0>>$HeadGirl.slaveName<<else>>$assistantName<</if>> would handle it with her directly.
 
 <br><br>
@@ -47,66 +32,32 @@ Working in $activeArcology.name's penthouse office, $subSlave.slaveName gets a v
 Her question is answered when you bring $activeSlave.slaveName in close, putting her in $subSlave.slaveName's view. $subSlave.slaveName's $subSlave.eyeColor eyes fly open with pleased surprise, but before she can speak, $activeSlave.slaveName goes first.
 <<if canTalk($activeSlave) == false>>
   Unable to speak herself, she simply makes a heart shape with her hands in view of the video call, and blows her <<if $activeSlave.relationship == 4>>lover<<else>>wife<</if>> a kiss.
-<<elseif SlaveStatsChecker.checkForLisp($activeSlave)>>
-  "Hi <<if $activeSlave.relationship == 4>>lover<<else>>thweetheart<</if>>," she lisps in a syrupy tone. "Mith me?"
 <<else>>
-  "Hi <<if $activeSlave.relationship == 4>>lover<<else>>sweetheart<</if>>," she says in a syrupy tone. "Miss me?"
+  <<Enunciate $activeSlave>>
+  "Hi <<if $activeSlave.relationship == 4>>lover<<else>><<s>>weetheart<</if>>," she <<say>>s in a syrupy tone. "Mi<<ss>> me?"
 <</if>>
 
 <br><br>
 
 $subSlave.slaveName smiles back at her, glowing with pleasure, and responds with exaggerated arousal.
 
+<<Enunciate $subSlave>>
+
 <<switch $subSlave.fetish>>
 <<case "submissive">>
-	<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-	  "Looking forward to thleeping in your armth, babe,"
-	<<else>>
-	  "Looking forward to sleeping in your arms, babe,"
-	<</if>>
-	the submissive
+	"Looking forward to <<s>>leeping in your arm<<s>>, babe," the submissive
 <<case "cumslut">>
-	<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-	  "Can't wait to kith you, babe,"
-	<<else>>
-	  "Can't wait to kiss you, babe,"
-	<</if>>
-	the orally fixated
+	"Can't wait to ki<<ss>> you, babe," the orally fixated
 <<case "humiliation">>
-	<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-	  "Can't wait to take you right in the middle of the platha, here,"
-	<<else>>
-	  "Can't wait to take you right in the middle of the plaza, here,"
-	<</if>>
-	the exhibitionist
+	"Can't wait to take you right in the middle of the pla<<z>>a here," the exhibitionist
 <<case "buttslut">>
-	<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-	  "I can't wait to fuck you in your hot little butt,"
-	<<else>>
-	  "I can't wait to fuck you in your hot little ass,"
-	<</if>>
-	the anally fixated
+	"I can't wait to fuck you in your hot little a<<ss>>," the anally fixated
 <<case "boobs">>
-	<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-	  "Looking forward to feeling your breathth again,"
-	<<else>>
-	  "Looking forward to feeling your breasts again,"
-	<</if>>
-	the boob-loving
+	"Looking forward to feeling your brea<<s>>t<<s>> again," the boob-loving
 <<case "pregnancy">>
-	<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-	  "Can't wait to share all the pregnant girlth here with you,"
-	<<else>>
-	  "Can't wait to share all the pregnant girls here with you,"
-	<</if>>
-	the impregnation fetishist
+	"Can't wait to share all the pregnant girl<<s>> here with you," the impregnation fetishist
 <<case "dom">>
-	<<if SlaveStatsChecker.checkForLisp($activeSlave)>>
-	  "Looking forward to shoving you fathedown, bitch,"
-	<<else>>
-	  "Looking forward to shoving you facedown, bitch,"
-	<</if>>
-	the dominant
+	"Looking forward to <<s>>hoving you fa<<c>>edown, bitch," the dominant
 <<case "sadist">>
 	"Looking forward to making you bite the pillow again, bitch," the sadistic
 <<case "masochist">>
@@ -114,4 +65,5 @@ $subSlave.slaveName smiles back at her, glowing with pleasure, and responds with
 <<default>>
 	"Babe, I can't wait to give you a hug and tell you about $activeArcology.name," the loving
 <</switch>>
-leader of an entire arcology says.
+leader of an entire arcology <<say>>s.
+
diff --git a/src/npc/agent/agentRetrieve.tw b/src/npc/agent/agentRetrieve.tw
index 80449dafbdc64bc95ecc32b3dacfb0dbb41ec57e..02fd59374938ff925d9d33be2f1d6f1b4e1e5b13 100644
--- a/src/npc/agent/agentRetrieve.tw
+++ b/src/npc/agent/agentRetrieve.tw
@@ -1,34 +1,35 @@
 :: Agent Retrieve [silently]
 
 <<set _SL = $slaves.length, _ID = $activeArcology.leaderID, _LL = $leaders.length>>
+
 <<for _i = 0; _i < _SL; _i++>>
-<<if $slaves[_i].ID == _ID>>
-<<if $slaves[_i].relationshipTarget > 0>>
-	<<for _j = 0; _j < _SL; _j++>>
-	<<if $slaves[_j].ID == $slaves[_i].relationshipTarget && $slaves[_j].assignment == "live with your agent">>
-		<<if $slaves[$j].preg > 35>>
-			<<set $slaves[$j].birthsTotal += $slaves[$j].pregType, set $slaves[$j].preg = 0, set $slaves[$j].pregSource = 0, set $slaves[$j].pregType = 0>>
+	<<if $slaves[_i].ID == _ID>>
+		<<if $slaves[_i].relationshipTarget > 0>>
+			<<for _j = 0; _j < _SL; _j++>>
+				<<if $slaves[_j].ID == $slaves[_i].relationshipTarget && $slaves[_j].assignment == "live with your agent">>
+					<<if $slaves[$j].preg > 35>>
+						<<set $slaves[$j].birthsTotal += $slaves[$j].pregType, $slaves[$j].preg = 0, $slaves[$j].pregSource = 0, $slaves[$j].pregType = 0>>
+					<</if>>
+					<<removeJob $slaves[_j] "live with your agent">>
+					<<break>>
+				<</if>>
+			<</for>>
+			<<if $slaves[$i].preg > 35>>
+				<<set $slaves[$i].birthsTotal += $slaves[$i].pregType, $slaves[$i].preg = 0, $slaves[$i].pregSource = 0, $slaves[$i].pregType = 0>>
+			<</if>>
 		<</if>>
-		<<removeJob $slaves[_j] $slaves[_j].assignment>>
+		<<removeJob $slaves[_i] "be your agent">>
 		<<break>>
 	<</if>>
-	<</for>>
-	<<if $slaves[$i].preg > 35>>
-		<<set $slaves[$i].birthsTotal += $slaves[$i].pregType, set $slaves[$i].preg = 0, set $slaves[$i].pregSource = 0, set $slaves[$i].pregType = 0>>
-	<</if>>
-<</if>>
-<<removeJob $slaves[_i] $slaves[_i].assignment>>
-<<break>>
-<</if>>
 <</for>>
 
 <<set $activeArcology.leaderID = 0, $activeArcology.government = "your trustees">>
 
 <<for _i = 0;_i < _LL;_i++>>
-<<if _ID == $leaders[_i].ID>>
-	<<set _dump = $leaders.deleteAt(_i)>>
-	<<break>>
-<</if>>
+	<<if _ID == $leaders[_i].ID>>
+		<<set _dump = $leaders.deleteAt(_i)>>
+		<<break>>
+	<</if>>
 <</for>>
 
 <<goto "Neighbor Interact">>
diff --git a/src/npc/agent/agentWorkaround.tw b/src/npc/agent/agentWorkaround.tw
index 4dec360fe7ac466e906d43957ac0d6747e47b0d7..8d38e5cdb45b8327bf5f498a287d6abe81c078c6 100644
--- a/src/npc/agent/agentWorkaround.tw
+++ b/src/npc/agent/agentWorkaround.tw
@@ -4,28 +4,30 @@
 
 <<assignJob $slaves[$i] "be your agent">>
 
-<<if $activeSlave.reservedChildren > 0>>
-	<<set $reservedChildren -= $activeSlave.reservedChildren>>
-	<<set $activeSlave.reservedChildren = 0>>
+<<if $slaves[$i].reservedChildren > 0>>
+	<<set $reservedChildren -= $slaves[$i].reservedChildren>>
+	<<set $slaves[$i].reservedChildren = 0>>
 <</if>>
+
+<<if $slaves[$i].rivalry > 0>>
+	<<for _i = 0; _i < _SL; _i++>>
+		<<if _ID == $slaves[_i].rivalryTarget>>
+			<<set $slaves[_i].rivalry = 0, $slaves[_i].rivalryTarget = 0>>
+			<<break>>
+		<</if>>
+	<</for>>
+	<<set $slaves[$i].rivalry = 0, $slaves[$i].rivalryTarget = 0>>
+<</if>>
+
 <<if $slaves[$i].relationship > 0 && $slaves[$i].relationship < 4>>
 	<<for _i = 0;_i < _SL;_i++>>
-	<<if _ID == $slaves[_i].relationshipTarget>>
-		<<set $slaves[_i].relationship = 0, $slaves[_i].relationshipTarget = 0>>
-		<<break>>
-	<</if>>
+		<<if _ID == $slaves[_i].relationshipTarget>>
+			<<set $slaves[_i].relationship = 0, $slaves[_i].relationshipTarget = 0>>
+			<<break>>
+		<</if>>
 	<</for>>
 	<<set $slaves[$i].relationship = 0, $slaves[$i].relationshipTarget = 0>>
 <</if>>
-<<if $slaves[$i].rivalry > 0>>
-	<<for _i = 0;_i < $slaves.length;_i++>>
-	<<if _ID == $slaves[_i].rivalryTarget>>
-		<<set $slaves[_i].rivalry = 0, $slaves[_i].rivalryTarget = 0>>
-		<<break>>
-	<</if>>
-	<</for>>
-	<<set $slaves[$i].rivalry = 0, $slaves[$i].rivalryTarget = 0>>
-<</if>>
 
 <<set $leaders.push($slaves[$i]), $activeArcology.leaderID = _ID, $activeArcology.government = "your agent">>
 
diff --git a/src/npc/removeActiveSlave.tw b/src/npc/removeActiveSlave.tw
index 9f438501e2b1aa52b2b68486a66faba22e547370..366f4217d4df7c626e82b40f27e9c688db719559 100644
--- a/src/npc/removeActiveSlave.tw
+++ b/src/npc/removeActiveSlave.tw
@@ -96,36 +96,25 @@
 		<</if>>
 	<</for>>
 
-	<<if _ID == $Recruiter.ID>><<set $Recruiter = 0>><</if>>
-	<<if _ID == $HeadGirl.ID>><<set $HeadGirl = 0>><</if>>
-	<<if _ID == $Bodyguard.ID>><<set $Bodyguard = 0>><</if>>
-	<<if _ID == $Lurcher.ID>><<set $Lurcher = 0>><</if>>
-	<<if _ID == $retiree.ID>><<set $retiree = 0>><</if>>
-	<<if _ID == $fighterTwo.ID>><<set $fighterTwo = 0>><</if>>
-	<<if _ID == $Madam.ID>><<set $Madam = 0>><</if>>
-	<<if _ID == $DJ.ID>><<set $DJ = 0>><</if>>
-	<<if _ID == $Milkmaid.ID>><<set $Milkmaid = 0>><</if>>
-	<<if _ID == $Schoolteacher.ID>><<set $Schoolteacher = 0>><</if>>
-	<<if _ID == $Attendant.ID>><<set $Attendant = 0>><</if>>
-	<<if _ID == $Nurse.ID>><<set $Nurse = 0>><</if>>
-	<<if _ID == $Collectrix.ID>><<set $Collectrix = 0>><</if>>
-	<<if _ID == $Stewardess.ID>><<set $Stewardess = 0>><</if>>
-	<<if _ID == $Wardeness.ID>><<set $Wardeness = 0>><</if>>
-	<<if _ID == $Concubine.ID>><<set $Concubine = 0>><</if>>
+	/* remove from Pit fighters list, if needed */
+	<<set $fighterIDs.delete(_ID)>>
+
+	/* remove from Coursing Association, if needed */
+	<<if $Lurcher != 0 && $Lurcher.ID == _ID>>
+		<<set $Lurcher = 0>>
+	<</if>>
 
 	<<if _ID == $personalAttention>>
-		<<if $PC.career == "servant">>
-			<<set $personalAttention = "upkeep">>
-		<<elseif $PC.career == "escort">>
+		<<if $PC.career == "escort">>
 			<<set $personalAttention = "whoring">>
+		<<elseif $PC.career == "servant">>
+			<<set $personalAttention = "upkeep">>
 		<<else>>
 			<<set $personalAttention = "business">>
 		<</if>>
 	<</if>>
 
-	<<set $fighterIDs.delete(_ID)>>
-
-	/% Remove from facility array if assigned %/
+	/% Remove from facility array or leadership role, if needed %/
 	<<removeJob $activeSlave $activeSlave.assignment>>
 
 	<<set $slavesOriginal.delete(_ID)>>
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 584f3f3e5c61ea169ea89dc7943a40af9ee6ccd5..3aa31216973cd4c1ce14029225a0f90304f15d61 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -106,7 +106,10 @@
 	<<set $sectors[7].type = "Club", $sectors[7].ownership = 1>>
 <</if>>
 <<if $arcade && $sectors[20].type != "Arcade" && $sectors[21].type != "Arcade" && $sectors[22].type != "Arcade" && $sectors[23].type != "Arcade" && $sectors[24].type != "Arcade">>
-	<<set $sectors[22].type = "Arcade", $sectors[22].ownership = 1>>
+	<<set $sectors[21].type = "Arcade", $sectors[21].ownership = 1>>
+<</if>>
+<<if $pit && $sectors[20].type != "Pit" && $sectors[21].type != "Pit" && $sectors[22].type != "Pit" && $sectors[23].type != "Pit" && $sectors[24].type != "Pit">>
+	<<set $sectors[23].type = "Pit", $sectors[23].ownership = 1>>
 <</if>>
 <<if $dairy && $sectors[25].type != "Dairy" && $sectors[26].type != "Dairy" && $sectors[27].type != "Dairy" && $sectors[28].type != "Dairy" && $sectors[29].type != "Dairy">>
 	<<set $sectors[27].type = "Dairy", $sectors[27].ownership = 1>>
@@ -125,6 +128,9 @@
         <<elseif _activation == "always">>
             <<set $defaultRules[_i].condition = {id: "true"}>>
 
+        <<elseif _activation == "custom" && (def $defaultRules[_i].customActivationText)>>
+            <<set $defaultRules[_i].condition = parseCondition($defaultRules[_i].customActivationText).expr>>
+
         <<elseif $defaultRules[_i].thresholdLower != "none" && $defaultRules[_i].thresholdUpper != "none">>
             <<set $defaultRules[_i].condition = {
                 id: "&&",
diff --git a/src/uncategorized/assign.tw b/src/uncategorized/assign.tw
index d3cd34948fc35d1fc61ad2d53ff2c0503170a6ca..615f8342481fc704aa64bc3d57e0b9855cd8bd2b 100644
--- a/src/uncategorized/assign.tw
+++ b/src/uncategorized/assign.tw
@@ -2,9 +2,9 @@
 
 <<set $activeSlave = $slaves[$i], _ID = $activeSlave.ID>>
 
-<<assignJob $activeSlave $returnTo>>
+<<assignJob $activeSlave $assignTo>>
 
-<<switch $returnTo>>
+<<switch $assignTo>>
 <<case "Pit">>
 	<<set $fighterIDs.push(_ID)>>
 
@@ -12,16 +12,16 @@
 	<<set $Lurcher = $activeSlave>>
 
 <<default>>
-	<<if ($showAssignToScenes != 1) || ($activeSlave.fetish == "mindbroken")>>
-		<<goto $returnTo>>
-	<<elseif ($returnTo == "Dairy") && (($dairyStimulatorsSetting >= 2) || ($dairyFeedersSetting >= 2) || ($dairyPregSetting >= 2))>>
-		<<goto "Industrial Dairy Assignment Scene">>
-	<<elseif ($returnTo == "Dairy") && ($dairyRestraintsSetting == 0 && $activeSlave.devotion > 0)>>
-		<<goto "Free Range Dairy Assignment Scene">>
-	<<elseif ($returnTo == "Brothel")>>
-		<<goto "Brothel Assignment Scene">>
-	<<else>>
-		<<goto $returnTo>>
+	<<if ($showAssignToScenes == 1) && ($activeSlave.fetish != "mindbroken")>>
+		<<if ($assignTo == "Dairy") && (($dairyStimulatorsSetting >= 2) || ($dairyFeedersSetting >= 2) || ($dairyPregSetting >= 2))>>
+			<<goto "Industrial Dairy Assignment Scene">>
+		<<elseif ($assignTo == "Dairy") && ($dairyRestraintsSetting == 0 && $activeSlave.devotion > 0)>>
+			<<goto "Free Range Dairy Assignment Scene">>
+		<<elseif ($assignTo == "Brothel")>>
+			<<goto "Brothel Assignment Scene">>
+		<</if>>
 	<</if>>
-
 <</switch>>
+
+<<goto $returnTo>>
+
diff --git a/src/uncategorized/endWeek.tw b/src/uncategorized/endWeek.tw
index afd8588a02199b9469047dcd7b33de868eed89f4..b89fc61a1509a74c863278c8808c6cfb9fc4fc5c 100644
--- a/src/uncategorized/endWeek.tw
+++ b/src/uncategorized/endWeek.tw
@@ -121,7 +121,7 @@
 	<<set $PC.preg++>>
 <</if>>
 
-<<set $HGEnergy = 0, $HGCum = 0, $HGSlaveSuccess = 0, $HeadGirl = 0, $HGRelease = 1, $Recruiter = 0, $Madam = 0, $madamCashBonus = 0, $DJ = 0, $DJRepBonus = 0, $Milkmaid = 0, $Collectrix = 0, $Stewardess = 0, $Schoolteacher = 0, $Wardeness = 0, $Concubine = 0, $Attendant = 0, $Nurse = 0, $Bodyguard = 0, $bedSlaveOne = 0, $bedSlaveTwo = 0, $bedSlaveThree = 0, $bedSlaveFour = 0, $fuckSlaves = 0, $freeSexualEnergy = 0, $publicServants = 0, $cumSlaves = 0, $averageDick = 0, $slavesWithWorkingDicks = 0>>
+<<set $HGEnergy = 0, $HGCum = 0, $HGSlaveSuccess = 0, $HeadGirl = 0, $HGRelease = 1, $Recruiter = 0, $Madam = 0, $madamCashBonus = 0, $DJ = 0, $DJRepBonus = 0, $Milkmaid = 0, $Collectrix = 0, $Stewardess = 0, $Schoolteacher = 0, $Wardeness = 0, $Concubine = 0, $Attendant = 0, $Nurse = 0, $Bodyguard = 0, $fuckSlaves = 0, $freeSexualEnergy = 0, $publicServants = 0, $cumSlaves = 0, $averageDick = 0, $slavesWithWorkingDicks = 0>>
 
 /* GAMEOVERS */
 <<if $slaves.length < 1>>
diff --git a/src/uncategorized/neighborInteract.tw b/src/uncategorized/neighborInteract.tw
index 85d7e48edaaf9113ea503e9fe988a48408721f27..e8ff42376339e7726e942c24ca12beb5e98980cd 100644
--- a/src/uncategorized/neighborInteract.tw
+++ b/src/uncategorized/neighborInteract.tw
@@ -1,7 +1,6 @@
 :: Neighbor Interact [nobr]
 
-<<set $nextLink = "Main">>
-<<set $nextButton = "Back">>
+<<set $nextLink = "Manage Arcology", $nextButton = "Back">>
 
 <<for $i = 0; $i < $arcologies.length; $i++>>
   <<if $arcologies[$i].direction == $activeArcology.direction>>
diff --git a/src/uncategorized/neighborsDevelopment.tw b/src/uncategorized/neighborsDevelopment.tw
index 1140f70945be287992f00eb95696156ba3db7dba..7ae851d6fcf11b4d088295d3df2f72e17c3c2f4b 100644
--- a/src/uncategorized/neighborsDevelopment.tw
+++ b/src/uncategorized/neighborsDevelopment.tw
@@ -51,6 +51,9 @@
 <<for _k = 0; _k < $leaders.length; _k++>>
 <<if $leaders[_k].ID == $arcologies[$i].leaderID>>
 	is being run by your agent @@.pink;$leaders[_k].slaveName.@@
+	<<if $leaders[_k].assignment != "be your agent">>
+		<<assignJob $leaders[_k] "be your agent">>
+	<</if>>
 	<<if $agentBonus > 0>>@@.green;She does an excellent job this week.@@<</if>>
 	The arcology
 <</if>>
diff --git a/src/uncategorized/nextWeek.tw b/src/uncategorized/nextWeek.tw
index fe599721f301606a2b23c6728809068d5b4e3300..b8eb0b88e1acb1aecc423608060cfe2f0d5e412c 100644
--- a/src/uncategorized/nextWeek.tw
+++ b/src/uncategorized/nextWeek.tw
@@ -206,22 +206,22 @@
 
 /% These are variables that either should be made into _temp vars or should be Zeroed out once done with them instead of here. This can also interfere with debugging or hide NaN's as zeroing things out would clear a NaN. Also could stop from NaN's getting worse? %/
 /% Integer and float variables. No real need to zero them out but doesn't hurt to have them in a known state, though this might mask variables NaN'ing out. Takes up the least amount of Memory besides a "" string. %/
-<<set $averageProsperity = 0, $beauty = 0, $beautyMultiplier = 0, $boobsID = -1, $boobsInterestTargetID = -1, $brideSlave = -1, $buttslutID = -1, $buttslutInterestTargetID = -1, $cumslutID = -1, $FResult = 0, $groomSlave = -1, $humiliationID = -1, $humiliationInterestTargetID = -1, $i = 0, $I = 0, $individualCosts = 0, $influenceBonus = 0, $j = 0, $learning = 0, $m = 0, $masochistID = -1, $masochistInterestTargetID = -1, $opinion = 0, $r = 0, $subID = -1, $submissiveInterestTargetID = -1, $weddingSlaveID = -1, $x = 0, $y = 0, $relationID = 0, $tempMF = 0, $relationType = 0>>
+<<set $averageProsperity = 0, $beauty = 0, $beautyMultiplier = 0, $boobsID = -1, $boobsInterestTargetID = -1, $brideSlave = -1, $buttslutID = -1, $buttslutInterestTargetID = -1, $cumslutID = -1, $FResult = 0, $groomSlave = -1, $humiliationID = -1, $humiliationInterestTargetID = -1, $i = 0, $I = 0, $individualCosts = 0, $influenceBonus = 0, $j = 0, $learning = 0, $masochistID = -1, $masochistInterestTargetID = -1, $opinion = 0, $r = 0, $subID = -1, $submissiveInterestTargetID = -1, $weddingSlaveID = -1, $x = 0>>
 
 /% Other arrays %/
 <<set $events = [], $FSAcquisitionEvents = [], $FSNonconformistEvents = [], $nurseMolestationSubIDs = [], $PESSevent = [], $PETSevent = [], $qualifiedNicknames = [], $REAnalCowgirlSubIDs = [], $REButtholeCheckinIDs = [], $RECIevent = [], $recruit = [], $RETasteTestSubIDs = [], $qualifiedFS = [], $recruitedType = []>>
 
 /% Slave Objects using 0 instead of null. Second most memory eaten up. %/
-<<set $activeSlave = 0, $displaySlave = 0, $domSlave = 0, $eventSlave = 0, $REBoobCollisionSub = 0, $REIfYouEnjoyItSub = 0, $RERelationshipSlave = 0, $RESadisticDescriptionSub = 0, $REShowerForceSub = 0, $secondSlave = 0, $slaveWithoutBonuses = 0, $subSlave = 0, $milkTap = 0, $relation = 0>>
+<<set $activeSlave = 0, $displaySlave = 0, $domSlave = 0, $eventSlave = 0, $REBoobCollisionSub = 0, $REIfYouEnjoyItSub = 0, $RERelationshipSlave = 0, $RESadisticDescriptionSub = 0, $REShowerForceSub = 0, $slaveWithoutBonuses = 0, $subSlave = 0, $milkTap = 0, $relation = 0>>
 
 /% Slave Objects that never get zeroed so null them here. Second most memory eaten up. %/
-<<set $alphaTwin = null, $assayedSlave = null, $beforeGingering = null, $betaTwin = null, $mother = null, $olderSister = null, $recruiterMother = null, $recruiterSisterOlder = null, $recruiterSisterYoung = null, $recruiterTwin = null, $sibling = null, $tempLover = null, $tempRival = null, $tempSub = null>>
+<<set $alphaTwin = null, $assayedSlave = null, $beforeGingering = null, $betaTwin = null, $mother = null, $olderSister = null, $recruiterMother = null, $recruiterSister, $sibling = null>>
 
 /% Slave Object Arrays. These can take up the most memory. %/
 <<set $eligibleSlaves = [], $slavesInLine = []>>
 
 /% Strings Memory varies. %/
-<<set $analSkinDesc = "", $applyDesc = "", $bellyAccessory = "", $buyer = "", $desc = "", $event = "", $goto = "", $malefactor = "", $nickname = "", $notApplyDesc = "", $oldName = "", $situationDesc = "", $skinDesc = "", $k = "", $l = "", $j = "", $y = "", $relationType = "">>
+<<set $analSkinDesc = "", $applyDesc = "", $bellyAccessory = "", $buyer = "", $desc = "", $event = "", $goto = "", $malefactor = "", $nickname = "", $notApplyDesc = "", $oldName = "", $situationDesc = "", $skinDesc = "", $k = "">>
 /% Done with zeroing out, what should be for the most part Temps %/
 
 /*HACKY EVENT WORKAROUNDS*/
diff --git a/src/uncategorized/pCitizensAndCivilians.tw b/src/uncategorized/pCitizensAndCivilians.tw
index fd51129c52e3083b1724c215ba7385a18e93d1b1..f0d9b3a5e1861b7c48f1321ebfee025dba438670 100644
--- a/src/uncategorized/pCitizensAndCivilians.tw
+++ b/src/uncategorized/pCitizensAndCivilians.tw
@@ -1,13 +1,9 @@
 :: P citizens and civilians
 
-<<nobr>>
+<<set $nextButton = " ", $nextLink = "Random Nonindividual Event", $nextButton = "Continue">>
 
-<<set $nextButton = " ">>
-<<set $nextLink = "Random Nonindividual Event">>
-	<<set $nextButton = "Continue">>
+<<nobr>>
 
-<</nobr>>\
-\
 <<if $assistant > 0>>
 	While working at your desk, you are accompanied by the luscious sound of $assistantName humming to herself, which she does to indicate she's working on a difficult task. After this goes on for a while,
 	<<switch $assistantAppearance>>
@@ -47,8 +43,10 @@
 	and says, "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, I have a suggestion. At your request I have been reviewing historical slave societies for parallels with our current situation. I calculate it would be very advantageous to bind your mercenaries more closely to the arcology. It would be expensive, but if they were all given slaves, better weapons, and some sort of title, they would defend this place to the death."<<else>><<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> catches your attention as you work at your desk. It says, "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, a suggestion. Review of historical slave societies for parallels with your current situation is complete. Analysis indicates it would be advantageous to increase the loyalty of your mercenaries. It would be expensive, but if they were given slaves, better weapons, and an honorary title, they would defend the arcology with increased effectiveness."
 <</if>>
 
+<</nobr>>
+
 ''This is a unique and very important opportunity'' and must not be taken lightly. //All of these choices have the same gameplay effect, and only differ in theme.//
-\
+
 <span id="result">
 <<link "Decline">>
 	<<replace "#result">>
@@ -66,7 +64,7 @@
 	<<set $mercenariesTitle = "Knights">>
 	<</replace>>
 <</link>>  <<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<<if $arcologies[0].FSRomanRevivalist >= 10>>\
+<<if $arcologies[0].FSRomanRevivalist >= 10>>
 <<link "They shall be my Evocati">>
 	<<replace "#result">>
 	You ask for a meeting with your mercenaries' captain and lay out a proposal for a new contract between you over $PC.refreshment. As he reviews the terms, he looks skeptical, then surprised, then interested, and finally, he breaks out into laughter. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>," he says, "you have no idea how fun this is going to be." He rises and gives you a short bow. "Centurion reporting for duty, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>." The mercenaries - no, the Evocati - are well looked after. They are each assigned a nice apartment, a freshly enslaved servant, and a suit of prototype armor equipped with the latest weapons and bearing a Roman standard. Word of the innovation runs through the Free Cities @@.green;like wildfire.@@
@@ -77,8 +75,8 @@
 	<<set $mercenariesTitle = "Evocati">>
 	<</replace>>
 <</link>>  <<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<</if>>\
-<<if $arcologies[0].FSEgyptianRevivalist >= 10>>\
+<</if>>
+<<if $arcologies[0].FSEgyptianRevivalist >= 10>>
 <<link "They shall be my Medjay">>
 	<<replace "#result">>
 	You ask for a meeting with your mercenaries' captain and lay out a proposal for a new contract between you over $PC.refreshment. As he reviews the terms, he looks skeptical, then surprised, then interested, and finally, he breaks out into laughter. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>," he says, "you have no idea how fun this is going to be." He rises and gives you a short bow. "First Medjay reporting for duty, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>." The mercenaries - no, the Medjay - are well looked after. They are each assigned a nice apartment, a freshly enslaved servant, and a suit of prototype armor equipped with the latest weapons and bearing a faux cheetah cloak. Word of the innovation runs through the Free Cities @@.green;like wildfire.@@
@@ -89,8 +87,8 @@
 	<<set $mercenariesTitle = "Medjay">>
 	<</replace>>
 <</link>>  <<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<</if>>\
-<<if $arcologies[0].FSEdoRevivalist >= 10>>\
+<</if>>
+<<if $arcologies[0].FSEdoRevivalist >= 10>>
 <<link "Naturally, they shall be the Samurai">>
 	<<replace "#result">>
 	You ask for a meeting with your mercenaries' captain and lay out a proposal for a new contract between you over $PC.refreshment. As he reviews the terms, he looks skeptical, then surprised, then interested, and finally, he breaks out into laughter. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>," he says, "you have no idea how fun this is going to be." He rises and gives you a short bow. "Your Samurai-Lord reports for duty, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>." The mercenaries - no, the Samurai - are well looked after. They are each assigned a nice apartment, a freshly enslaved servant, and a suit of prototype armor equipped with the latest weapons, exterior plates styled after lacquered Samurai armor, and an enraged mask covering the face. Word of the innovation runs through the Free Cities @@.green;like wildfire.@@
@@ -101,8 +99,8 @@
 	<<set $mercenariesTitle = "Samurai">>
 	<</replace>>
 <</link>>  <<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<</if>>\
-<<if $arcologies[0].FSArabianRevivalist >= 10>>\
+<</if>>
+<<if $arcologies[0].FSArabianRevivalist >= 10>>
 <<link "They shall be my Janissaries">>
 	<<replace "#result">>
 	You ask for a meeting with your mercenaries' captain and lay out a proposal for a new contract between you over $PC.refreshment. As he reviews the terms, he looks skeptical, then surprised, then interested, and finally, he breaks out into laughter. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>," he says, "you have no idea how fun this is going to be." He rises and gives you a short bow. "Corbaci reporting for duty, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>." The mercenaries - no, the Janissaries - are well looked after. They are each assigned a nice apartment, a freshly enslaved servant, and a suit of prototype armor equipped with the latest weapons and cloaked in an outer garment of fine oriental silks. Word of the innovation runs through the Free Cities @@.green;like wildfire.@@
@@ -113,8 +111,8 @@
 	<<set $mercenariesTitle = "Janissaries">>
 	<</replace>>
 <</link>>  <<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<</if>>\
-<<if $arcologies[0].FSChattelReligionist >= 10>>\
+<</if>>
+<<if $arcologies[0].FSChattelReligionist >= 10>>
 <<link "They shall be the Knights Templar">>
 	<<replace "#result">>
 	You ask for a meeting with your mercenaries' captain and lay out a proposal for a new contract between you over $PC.refreshment. As he reviews the terms, he looks skeptical, then surprised, then interested, and finally, he breaks out into laughter. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>," he says, "you have no idea how fun this is going to be." He rises and gives you a short bow. "Inquisitor-General reporting for duty, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>." The mercenaries - no, the Knights Templar - are well looked after. They are each assigned a nice apartment, a freshly enslaved servant, and a suit of prototype armor equipped with the latest weapons and bearing a cloak emblazoned with the symbol of God. Word of the innovation runs through the Free Cities @@.green;like wildfire.@@
@@ -125,8 +123,8 @@
 	<<set $mercenariesTitle = "Knights Templar">>
 	<</replace>>
 <</link>>  <<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<</if>>\
-<<if $arcologies[0].FSDegradationist >= 10>>\
+<</if>>
+<<if $arcologies[0].FSDegradationist >= 10>>
 <<link "They shall be my Immortals">>
 	<<replace "#result">>
 	You ask for a meeting with your mercenaries' captain and lay out a proposal for a new contract between you over $PC.refreshment. As he reviews the terms, he looks skeptical, then surprised, then interested, and finally, he breaks out into laughter. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>," he says, "you have no idea how fun this is going to be." He rises and gives you a short bow. "Satrap reporting for duty, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>." The mercenaries - no, the Immortals - are well looked after. They are each assigned a nice apartment, a freshly enslaved servant, and a suit of prototype armor equipped with the latest weapons and more than one wicked, curved blade. Word of the innovation runs through the Free Cities @@.green;like wildfire.@@
@@ -137,20 +135,20 @@
 	<<set $mercenariesTitle = "Immortals">>
 	<</replace>>
 <</link>>  <<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<</if>>\
-<<if $arcologies[0].FSAssetExpansionist >= 10>>\
-<</if>>\
-<<if $arcologies[0].FSTransformationFetishist >= 10>>\
-<</if>>\
-<<if $arcologies[0].FSGenderRadicalist >= 10>>\
-<</if>>\
-<<if $arcologies[0].FSGenderFundamentalist >= 10>>\
-<</if>>\
-<<if $arcologies[0].FSRepopulationFocus >= 10>>\
-<</if>>\
-<<if $arcologies[0].FSRestart >= 10>>\
-<</if>>\
-<<if $arcologies[0].FSPhysicalIdealist >= 10>>\
+<</if>>
+<<if $arcologies[0].FSAssetExpansionist >= 10>>
+<</if>>
+<<if $arcologies[0].FSTransformationFetishist >= 10>>
+<</if>>
+<<if $arcologies[0].FSGenderRadicalist >= 10>>
+<</if>>
+<<if $arcologies[0].FSGenderFundamentalist >= 10>>
+<</if>>
+<<if $arcologies[0].FSRepopulationFocus >= 10>>
+<</if>>
+<<if $arcologies[0].FSRestart >= 10>>
+<</if>>
+<<if $arcologies[0].FSPhysicalIdealist >= 10>>
 <<link "They shall be the Asgardians">>
 	<<replace "#result">>
 	You ask for a meeting with your mercenaries' captain and lay out a proposal for a new contract between you over $PC.refreshment. As he reviews the terms, he looks skeptical, then surprised, then interested, and finally, he breaks out into laughter. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>," he says, "you have no idea how fun this is going to be." He rises and gives you a short bow. "Foehammer reporting for duty, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>." The mercenaries - no, the Asgardians - are well looked after. They are each assigned a nice apartment, a freshly enslaved servant, a private gym, and a suit of prototype armor equipped with the latest weapons. Word of the innovation runs through the Free Cities @@.green;like wildfire.@@
@@ -161,8 +159,8 @@
 	<<set $mercenariesTitle = "Asgardians">>
 	<</replace>>
 <</link>>  <<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<</if>>\
-<<if $arcologies[0].FSSupremacist >= 10>>\
+<</if>>
+<<if $arcologies[0].FSSupremacist >= 10>>
 <<link "They shall be the Knights of the Blood">>
 	<<replace "#result">>
 	You ask for a meeting with your mercenaries' captain and lay out a proposal for a new contract between you over $PC.refreshment. As he reviews the terms, he looks skeptical, then surprised, then interested, and finally, he breaks out into laughter. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>," he says, "you have no idea how fun this is going to be." He rises and gives you a short bow. "Knights of the Blood reporting for duty, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>." The mercenaries - no, the Knights of the Blood - are well looked after. They are each assigned a nice apartment, three freshly enslaved servants of inferior races, and a suit of prototype armor equipped with the latest weapons. Word of the innovation runs through the Free Cities @@.green;like wildfire.@@
@@ -173,10 +171,10 @@
 	<<set $mercenariesTitle = "Knights of the Blood">>
 	<</replace>>
 <</link>>  <<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<</if>>\
-<<if $arcologies[0].FSSubjugationist >= 10>>\
-<</if>>\
-<<if $arcologies[0].FSPaternalist >= 10>>\
+<</if>>
+<<if $arcologies[0].FSSubjugationist >= 10>>
+<</if>>
+<<if $arcologies[0].FSPaternalist >= 10>>
 <<link "They shall be the Wardens">>
 	<<replace "#result">>
 	You ask for a meeting with your mercenaries' captain and lay out a proposal for a redesigned contract between you. As he reviews the terms, he looks skeptical, then surprised, then interested, and finally, he breaks out into laughter. "<<if $PC.title isnot 0>>Sir<<else>>Ma'am<</if>>," he says, "you have no idea how fun this is going to be." He rises and gives you a short bow. "First Warden reporting for duty, <<if $PC.title isnot 0>>Sir<<else>>Ma'am<</if>>." The mercenaries - no, the Wardens - are well looked after. They are each assigned a nice apartment, a freshly enslaved servant, and a suit of prototype armor equipped with the latest weapons and a collapsible riot shield. Word of the innovation runs through the Free Cities @@.green;like wildfire.@@
@@ -187,12 +185,12 @@
 	<<set $mercenariesTitle = "Wardens">>
 	<</replace>>
 <</link>>  <<if $PC.warfare >= 100 || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<</if>>\
-<<if $arcologies[0].FSBodyPurist >= 10>>\
-<</if>>\
-<<if $arcologies[0].FSSlimnessEnthusiast >= 10>>\
-<</if>>\
-<<if $arcologies[0].FSPastoralist >= 10>>\
+<</if>>
+<<if $arcologies[0].FSBodyPurist >= 10>>
+<</if>>
+<<if $arcologies[0].FSSlimnessEnthusiast >= 10>>
+<</if>>
+<<if $arcologies[0].FSPastoralist >= 10>>
 <<link "They shall be the Rangers">>
 	<<replace "#result">>
 	You ask for a meeting with your mercenaries' captain and lay out a proposal for a new contract between you over $PC.refreshment. As he reviews the terms, he looks skeptical, then surprised, then interested, and finally, he breaks out into laughter. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>," he says, "you have no idea how fun this is going to be." He rises and gives you a short bow. "Lead Ranger reporting for duty, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>." The mercenaries - no, the Rangers - are well looked after. They are each assigned a nice apartment, a freshly enslaved servant, and a suit of prototype armor equipped with the latest weapons - and an improbably massive revolver on the hip. Word of the innovation runs through the Free Cities @@.green;like wildfire.@@
@@ -203,5 +201,5 @@
 	<<set $mercenariesTitle = "Rangers">>
 	<</replace>>
 <</link>>  <<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>>//This will cost ¤20000 and some upkeep, @@.springgreen;reduced by your mercenary contacts@@//<<else>>//This will cost ¤20000 and incur significant upkeep costs//<</if>>
-<</if>>\
+<</if>>
 </span>
diff --git a/src/uncategorized/pit.tw b/src/uncategorized/pit.tw
index a5ea1781756939d5466898771826b0265026acbe..658e5665dc4bcd5407e17e287e30b1e705a4e4bc 100644
--- a/src/uncategorized/pit.tw
+++ b/src/uncategorized/pit.tw
@@ -14,7 +14,7 @@ $pitNameCaps is clean and ready,
 <<elseif _DL > 0>>
 	with slaves assigned to the week's bout.
 <<else>>
-	but no slaves are assigned fight.
+	but no slaves are assigned to fight.
 	<<link "Decommission the pit">>
 		<<set $pit = 0>>
 		<<for _i = 0; _i < $sectors.length; _i++>>
diff --git a/src/uncategorized/rulesAssistant.tw b/src/uncategorized/rulesAssistant.tw
index b1ae080fe666eab630b462616f2060318d95fa2f..2982b779f2b8cea63500f94d723388d91d1e5d6c 100644
--- a/src/uncategorized/rulesAssistant.tw
+++ b/src/uncategorized/rulesAssistant.tw
@@ -303,14 +303,28 @@ __Rule $r Automatic Activation__
 &nbsp;&nbsp;&nbsp;&nbsp;
 
 <<if $currentRule.selectedSlaves.length < 1 && $currentRule.excludedSlaves.length < 1>>
-  @@.gray;Specific slaves:@@
-	''Not limited to nor excluding any specific slaves'' | [[Choose specific slaves|Rules Slave Select][$currentRule.excludedSlaves = []]] | [[Exclude specific slaves|Rules Slave Exclude][$currentRule.selectedSlaves = []]]
+  @@.gray;No specific slaves selected:@@
+	[[Limit to specific slaves|Rules Slave Select][$currentRule.excludedSlaves = []]] | [[Exclude specific slaves|Rules Slave Exclude][$currentRule.selectedSlaves = []]]
 <<elseif $currentRule.selectedSlaves.length < 1 && $currentRule.excludedSlaves.length > 0>>
-  Exclude specific slaves:
-	[[Currently excluding specific slaves|Rules Slave Exclude]] | [[Don't exclude specific slaves|Rules Assistant][$currentRule.excludedSlaves = []]]
+	<br>Excluding specific slaves:
+	<ul>
+	<<for _j = 0; _j < $slaves.length; _j++>>
+		<<if $currentRule.excludedSlaves.includes($slaves[_j].ID)>>
+			<li>$slaves[_j].slaveName</li>
+		<</if>>
+	<</for>>
+	</ul>
+	[[Change specific slaves|Rules Slave Exclude]] | [[Don't exclude specific slaves|Rules Assistant][$currentRule.excludedSlaves = []]]
 <<else>>
-  Apply to specific slaves:
-	[[Currently limited to specific slaves|Rules Slave Select]] | [[Don't limit to specific slaves|Rules Assistant][$currentRule.selectedSlaves = [], $currentRule.excludedSlaves = []]]
+	<br>Limited to specific slaves (this list does not override the exclude special slaves setting above):
+	<ul>
+	<<for _j = 0; _j < $slaves.length; _j++>>
+		<<if $currentRule.selectedSlaves.includes($slaves[_j].ID)>>
+			<li>$slaves[_j].slaveName</li>
+		<</if>>
+	<</for>>
+	</ul>
+	[[Change specific slaves|Rules Slave Select]] | [[Don't limit to specific slaves|Rules Assistant][$currentRule.selectedSlaves = [], $currentRule.excludedSlaves = []]]
 <</if>>
 
 <span id = "setassignment">
@@ -327,238 +341,194 @@ __Rule $r Automatic Activation__
 
 <br><br>
 
-Apply to slaves:<br>
-<<if ((ndef $currentRule.selectedSlaves) || ($currentRule.selectedSlaves.length < 1)) && ((ndef $currentRule.excludedSlaves) || ($currentRule.excludedSlaves.length < 1))>>
-''Currently applied to all slaves'' | [[Choose specific slaves|Rules Slave Select]]
-<<elseif ((ndef $currentRule.selectedSlaves) || ($currentRule.selectedSlaves.length < 1)) && (def $currentRule.excludedSlaves) && ($currentRule.excludedSlaves.length > 0)>>
-''Currently applied to all slaves except excluded slaves'' | [[Choose specific slaves|Rules Slave Select]] | [[Apply to all slaves|Rules Assistant][$currentRule.selectedSlaves = [],$currentRule.excludedSlaves = []]]
-<<else>>
-	<ul>
-	<<for $i = 0; $i < $currentRule.selectedSlaves.length; $i++ >>
-	  <<for $j = 0; $j < $slaves.length; $j++ >>
-			<<if $slaves[$j].ID == $currentRule.selectedSlaves[$i]>>
-					<li>
-						$slaves[$j].slaveName
-					</li>
-			<</if>>
-		<</for>>
-	<</for>>
-	</ul>
-[[Change which slaves this rule applies to|Rules Slave Select]] | [[Apply to all slaves|Rules Assistant][$currentRule.selectedSlaves = [], $currentRule.excludedSlaves = []]]
-<</if>>
-
-<br>
-Exclude slaves:<br>
-<<if ndef $currentRule.excludedSlaves || $currentRule.excludedSlaves.length < 1>>
-''Not excluding any slaves'' |
-
-[[Exclude specific slaves|Rules Slave Exclude]]
-<<else>>
-	<ul>
-	<<for $i = 0; $i < $currentRule.excludedSlaves.length; $i++ >>
-	  <<for $j = 0; $j < $slaves.length; $j++ >>
-			<<if $slaves[$j].ID == $currentRule.excludedSlaves[$i]>>
-					<li>
-						$slaves[$j].slaveName
-					</li>
-			<</if>>
-		<</for>>
-	<</for>>
-	</ul>
-[[Change which slaves are excluded from this rule|Rules Slave Exclude]] | [[Don't exclude slaves|Rules Assistant][$currentRule.excludedSlaves = []]]
-<</if>>
-
-<br><br>
-
 __Rule $r Default Appearance:__
 <br>
 Clothes:
 <span id = "clothes">
-<<if $currentRule.choosesOwnClothes == 1>>
+<<if ($currentRule.clothes == "choosing her own clothes")>>
 	''slave's choice.''
-	<<set $currentRule.clothes = "choosing her own clothes">>
 <<else>>
 	''$currentRule.clothes.''
 <</if>>
 </span>
 <br>(Good clothes)<br>
 <<link "No default clothes setting">>
-	<<set $currentRule.clothes = "no default setting", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "no default setting">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Nice lingerie">>
-	<<set $currentRule.clothes = "attractive lingerie", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "attractive lingerie">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "String bikini">>
-	<<set $currentRule.clothes = "a string bikini", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a string bikini">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Clubslut netting">>
-	<<set $currentRule.clothes = "clubslut netting", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "clubslut netting">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Cheerleader outfit">>
-	<<set $currentRule.clothes = "a cheerleader outfit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a cheerleader outfit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Cutoffs and a t-shirt">>
-	<<set $currentRule.clothes = "cutoffs and a t-shirt", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "cutoffs and a t-shirt">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Slave gown">>
-	<<set $currentRule.clothes = "a slave gown", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a slave gown">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Ball gown">>
-	<<set $currentRule.clothes = "a ball gown", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a ball gown">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Halter top">>
-	<<set $currentRule.clothes = "a halter top dress", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a halter top dress">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Mini dress">>
-	<<set $currentRule.clothes = "a mini dress", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a mini dress">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Slutty suit">>
-	<<set $currentRule.clothes = "slutty business attire", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "slutty business attire">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Nice suit">>
-	<<set $currentRule.clothes = "nice business attire", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "nice business attire">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Slutty nurse">>
-	<<set $currentRule.clothes = "a slutty nurse outfit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a slutty nurse outfit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Nice nurse">>
-	<<set $currentRule.clothes = "a nice nurse outfit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a nice nurse outfit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Schoolgirl">>
-	<<set $currentRule.clothes = "a schoolgirl outfit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a schoolgirl outfit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Bodysuit">>
-	<<set $currentRule.clothes = "a comfortable bodysuit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a comfortable bodysuit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Latex catsuit">>
-	<<set $currentRule.clothes = "a latex catsuit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a latex catsuit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Leotard">>
-	<<set $currentRule.clothes = "a leotard", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a leotard">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Military uniform">>
-	<<set $currentRule.clothes = "a military uniform", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a military uniform">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Skimpy battledress">>
-	<<set $currentRule.clothes = "battledress", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "battledress">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Slutty maid">>
-	<<set $currentRule.clothes = "a slutty maid outfit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a slutty maid outfit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Nice maid">>
-	<<set $currentRule.clothes = "a nice maid outfit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a nice maid outfit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Fallen nun">>
-	<<set $currentRule.clothes = "a fallen nuns habit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a fallen nuns habit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Hijab and abaya">>
-	<<set $currentRule.clothes = "a hijab and abaya", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a hijab and abaya">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Bangles">>
-	<<set $currentRule.clothes = "slutty jewelry", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "slutty jewelry">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Succubus costume">>
-	<<set $currentRule.clothes = "a succubus outfit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a succubus outfit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -567,7 +537,7 @@ Clothes:
 <<if ($arcologies[0].FSGenderFundamentalist != "unset") || ($cheatMode == 1) || ($clothesBoughtBunny == 1)>>
    //FS//
 <<link "Bunny outfit">>
-	<<set $currentRule.clothes = "a bunny outfit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a bunny outfit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -576,7 +546,7 @@ Clothes:
 <<if ($arcologies[0].FSPaternalist != "unset") || ($cheatMode == 1) || ($clothesBoughtConservative == 1)>>
    //FS//
 <<link "Conservative clothing">>
-	<<set $currentRule.clothes = "conservative clothing", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "conservative clothing">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -585,7 +555,7 @@ Clothes:
 <<if ($arcologies[0].FSDegradationist != "unset") || ($cheatMode == 1) || ($clothesBoughtChains == 1)>>
    //FS//
 <<link "Chains">>
-	<<set $currentRule.clothes = "chains", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "chains">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -594,7 +564,7 @@ Clothes:
 <<if ($arcologies[0].FSPastoralist != "unset") || ($cheatMode == 1) || ($clothesBoughtWestern == 1)>>
    //FS//
 <<link "Western clothing">>
-	<<set $currentRule.clothes = "Western clothing", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "Western clothing">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -603,7 +573,7 @@ Clothes:
 <<if ($arcologies[0].FSPhysicalIdealist != "unset") || ($cheatMode == 1) || ($clothesBoughtOil == 1)>>
    //FS//
 <<link "Body oil">>
-	<<set $currentRule.clothes = "body oil", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "body oil">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -612,7 +582,7 @@ Clothes:
 <<if ($arcologies[0].FSChattelReligionist != "unset") || ($cheatMode == 1) || ($clothesBoughtHabit == 1)>>
    //FS//
 <<link "Chattel habit">>
-	<<set $currentRule.clothes = "a chattel habit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a chattel habit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -621,7 +591,7 @@ Clothes:
 <<if ($arcologies[0].FSRomanRevivalist != "unset") || ($cheatMode == 1) || ($clothesBoughtToga == 1)>>
    //FS//
 <<link "Toga">>
-	<<set $currentRule.clothes = "a toga", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a toga">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -630,7 +600,7 @@ Clothes:
 <<if ($arcologies[0].FSEdoRevivalist != "unset") || ($cheatMode == 1) || ($clothesBoughtKimono == 1)>>
    //FS//
 <<link "Kimono">>
-	<<set $currentRule.clothes = "a kimono", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a kimono">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -638,7 +608,7 @@ Clothes:
 <<elseif ($arcologies[0].FSArabianRevivalist != "unset") || ($cheatMode == 1) || ($clothesBoughtHarem == 1)>>
    //FS//
 <<link "Harem gauze">>
-	<<set $currentRule.clothes = "harem gauze", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "harem gauze">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -647,7 +617,7 @@ Clothes:
 <<if ($arcologies[0].FSChineseRevivalist != "unset") || ($cheatMode == 1) || ($clothesBoughtQipao == 1)>>
    //FS//
 <<link "Qipao">>
-	<<set $currentRule.clothes = "a slutty qipao", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a slutty qipao">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -656,7 +626,7 @@ Clothes:
 <<if ($arcologies[0].FSRepopulationFocus != "unset") || ($cheatMode == 1) || ($clothesBoughtMaternityDress == 1)>>
    //FS// 
 <<link "Maternity dress">>
-	<<set $currentRule.clothes = "a maternity dress", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a maternity dress">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -665,49 +635,49 @@ Clothes:
 <<if ($arcologies[0].FSRepopulationFocus != "unset") || ($cheatMode == 1) || ($clothesBoughtMaternityLingerie == 1)>>
    //FS// 
 <<link "Maternity lingerie">>
-	<<set $currentRule.clothes = "attractive lingerie for a pregnant woman", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "attractive lingerie for a pregnant woman">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>> | 
 <</if>>
 <<link "Select her own outfit">>
-	<<set $currentRule.clothes = "choosing her own clothes", $currentRule.choosesOwnClothes = 1>>
+	<<set $currentRule.clothes = "choosing her own clothes">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 <br>(Bad clothes)<br>
 <<link "Nude">>
-	<<set $currentRule.clothes = "no clothing", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "no clothing">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Uncomfortable straps">>
-	<<set $currentRule.clothes = "uncomfortable straps", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "uncomfortable straps">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Shibari ropes">>
-	<<set $currentRule.clothes = "shibari ropes", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "shibari ropes">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Restrictive latex">>
-	<<set $currentRule.clothes = "restrictive latex", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "restrictive latex">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
 <<link "Penitent nun">>
-	<<set $currentRule.clothes = "a penitent nuns habit", $currentRule.choosesOwnClothes = 0>>
+	<<set $currentRule.clothes = "a penitent nuns habit">>
 	<<RAChangeClothes>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
@@ -908,14 +878,14 @@ Body Accessory: ''$currentRule.bellyAccessory.''
 	<<RAChangeApply>>
 <</link>>
 |
-<<link "Tight">>
+<<link "Tight corset">>
 	<<set $currentRule.bellyAccessory = "a corset">>
 	<<RAChangeBelly>>
 	<<RAChangeSave>>
 	<<RAChangeApply>>
 <</link>>
 |
-<<link "Extreme">>
+<<link "Extreme corset">>
 	<<set $currentRule.bellyAccessory = "an extreme corset">>
 	<<RAChangeBelly>>
 	<<RAChangeSave>>
@@ -944,7 +914,7 @@ Body Accessory: ''$currentRule.bellyAccessory.''
 	<<RAChangeApply>>
 <</link>>
 | //FS// 
-<<link "3rd Trimester Twins belly">>
+<<link "3rd Trimester twins belly">>
 	<<set $currentRule.bellyAccessory = "a huge empathy belly">>
 	<<RAChangeBelly>>
 	<<RAChangeSave>>
@@ -2590,7 +2560,6 @@ Relationship rules: ''$currentRule.relationshipRules.''
 				<<set $currentRule.name = "Obedient Slaves">>
 				<<set $currentRule.condition = {id: ">=", first: {id: "(name)", name: "devotion"}, second: {id: "(number)", value: 20}}>>
 				<<set $currentRule.clothes = "slutty jewelry">>
-				<<set $currentRule.choosesOwnClothes = 0>>
 				<<set $currentRule.collar = "pretty jewelry">>
 				<<set $currentRule.shoes = "heels">>
 				<<set $currentRule.vaginalAccessory = "none">>
@@ -2638,7 +2607,6 @@ Relationship rules: ''$currentRule.relationshipRules.''
 				<<set $currentRule.relationshipRules = "permissive">>
 				<<set $currentRule.livingRules = "luxurious">>
 				<<set $currentRule.growth = "unlimited">>
-				<<set $currentRule.lactation = "no default setting">>
 				<<set $currentRule.autoBrand = 1>>
 				<<set $currentRule.assignment = []>>
 				<<set $currentRule.excludeAssignment = []>>
@@ -2671,7 +2639,6 @@ Relationship rules: ''$currentRule.relationshipRules.''
 				<<set $currentRule.name = "Disobedient Slaves">>
 				<<set $currentRule.condition = {id: "<", first: {id: "(name)", name: "devotion"}, second: {id: "(number)", value: 20}}>>
 				<<set $currentRule.clothes = "uncomfortable straps">>
-				<<set $currentRule.choosesOwnClothes = 0>>
 				<<set $currentRule.collar = "uncomfortable leather">>
 				<<set $currentRule.shoes = "heels">>
 				<<set $currentRule.vaginalAccessory = "no default setting">>
@@ -2719,7 +2686,6 @@ Relationship rules: ''$currentRule.relationshipRules.''
 				<<set $currentRule.livingRules = "spare">>
 				<<set $currentRule.autoSurgery = 0>>
 				<<set $currentRule.growth = "unlimited">>
-				<<set $currentRule.lactation = "no default setting">>
 				<<set $currentRule.autoBrand = 1>>
 				<<set $currentRule.assignment = []>>
 				<<set $currentRule.excludeAssignment = []>>
@@ -2750,7 +2716,6 @@ Relationship rules: ''$currentRule.relationshipRules.''
 				<<set $currentRule.name = "Unhealthy Slaves">>
 				<<set $currentRule.condition = {id: "<", first: {id: "(name)", name: "health"}, second: {id: "(number)", value: -2}}>>
 				<<set $currentRule.clothes = "no default setting">>
-				<<set $currentRule.choosesOwnClothes = 0>>
 				<<set $currentRule.collar = "no default setting">>
 				<<set $currentRule.shoes = "no default setting">>
 				<<set $currentRule.vaginalAccessory = "no default setting">>
@@ -2797,7 +2762,6 @@ Relationship rules: ''$currentRule.relationshipRules.''
 				<<set $currentRule.relationshipRules = "no default setting">>
 				<<set $currentRule.livingRules = "no default setting">>
 				<<set $currentRule.growth = "no default setting">>
-				<<set $currentRule.lactation = "no default setting">>
 				<<set $currentRule.autoBrand = "no default setting">>
 				<<set $currentRule.assignment = []>>
 				<<set $currentRule.excludeAssignment = []>>
@@ -2854,7 +2818,7 @@ Relationship rules: ''$currentRule.relationshipRules.''
 
 	<<link "Add a new rule">>
 
-		<<set _activeRule = {aphrodisiacs: "no default setting", activation: "none", thresholdLower: 4, thresholdUpper: "none", eqLower: true, eqUpper: true, releaseRules: "no default setting", clitSetting: "no default setting", clitSettingXY: "no default setting", clitSettingXX: "no default setting", clitSettingEnergy: "no default setting", speechRules: "no default setting", clothes: "no default setting", fuckdoll: 0, choosesOwnClothes: 0, collar: "no default setting", shoes: "no default setting", virginAccessory: "no default setting", aVirginAccessory: "no default setting", vaginalAccessory: "no default setting", aVirginDickAccessory: "no default setting", dickAccessory: "no default setting", cSec: 0, bellyAccessory: "no default setting", aVirginButtplug: "no default setting", buttplug: "no default setting", markings: "none", eyeColor: "no default setting", makeup: "no default setting", nails: "no default setting", hColor: "no default setting", hLength: "no default setting", hStyle: "no default setting", pubicHColor: "no default setting", pubicHStyle: "no default setting", nipplesPiercing: "no default setting", areolaePiercing: "no default setting", clitPiercing: "no default setting", vaginaLube: "no default setting", vaginaPiercing: "no default setting", analArea: 1, dickPiercing: "no default setting", anusPiercing: "no default setting", lipsPiercing: "no default setting", tonguePiercing: "no default setting", earPiercing: "no default setting", nosePiercing: "no default setting", eyebrowPiercing: "no default setting", navelPiercing: "no default setting", corsetPiercing: "no default setting", boobsTat: "no default setting", buttTat: "no default setting", vaginaTat: "no default setting", dickTat: "no default setting", lipsTat: "no default setting", anusTat: "no default setting", shouldersTat: "no default setting", armsTat: "no default setting", legsTat: "no default setting", backTat: "no default setting", stampTat: "no default setting", curatives: "no default setting", livingRules: "no default setting", relationshipRules: "no default setting", standardPunishment: "no default setting", standardReward: "no default setting", useRulesAssistant: 1, diet: "no default setting", dietCum: "no default setting", dietMilk: "no default setting", muscles: "no default setting", XY: "no default setting", XX: "no default setting", gelding: "no default setting", preg: "no default setting", growth: "no default setting", autoSurgery: 0, choosesOwnAssignment: 0, lactation: 0, autoBrand: 0, pornFameSpending: "no default setting", dietGrowthSupport: 0, eyewear: "no default setting", assignment: [], excludeAssignment: [], setAssignment: "none", facility: [], excludeFacility: [], assignFacility: "none", excludeSpecialSlaves: true, facilityRemove: false, removalAssignment: "rest", selectedSlaves: [], excludedSlaves: [], surgery: {lactation: "no default setting", cosmetic: 0, accent: "no default setting", shoulders: "no default setting", shouldersImplant: "no default setting", boobs: "no default setting", hips: "no default setting", hipsImplant: "no default setting", butt: "no default setting", faceShape: "no default setting", lips: "no default setting", holes: 0}, underArmHColor: "no default setting", underArmHStyle: "no default setting" }>>
+		<<set _activeRule = {aphrodisiacs: "no default setting", condition: {id: "false"}, releaseRules: "no default setting", clitSetting: "no default setting", clitSettingXY: "no default setting", clitSettingXX: "no default setting", clitSettingEnergy: "no default setting", speechRules: "no default setting", clothes: "no default setting", collar: "no default setting", shoes: "no default setting", virginAccessory: "no default setting", aVirginAccessory: "no default setting", vaginalAccessory: "no default setting", aVirginDickAccessory: "no default setting", dickAccessory: "no default setting", bellyAccessory: "no default setting", aVirginButtplug: "no default setting", buttplug: "no default setting", eyeColor: "no default setting", makeup: "no default setting", nails: "no default setting", hColor: "no default setting", hLength: "no default setting", hStyle: "no default setting", pubicHColor: "no default setting", pubicHStyle: "no default setting", nipplesPiercing: "no default setting", areolaePiercing: "no default setting", clitPiercing: "no default setting", vaginaLube: "no default setting", vaginaPiercing: "no default setting", dickPiercing: "no default setting", anusPiercing: "no default setting", lipsPiercing: "no default setting", tonguePiercing: "no default setting", earPiercing: "no default setting", nosePiercing: "no default setting", eyebrowPiercing: "no default setting", navelPiercing: "no default setting", corsetPiercing: "no default setting", boobsTat: "no default setting", buttTat: "no default setting", vaginaTat: "no default setting", dickTat: "no default setting", lipsTat: "no default setting", anusTat: "no default setting", shouldersTat: "no default setting", armsTat: "no default setting", legsTat: "no default setting", backTat: "no default setting", stampTat: "no default setting", curatives: "no default setting", livingRules: "no default setting", relationshipRules: "no default setting", standardPunishment: "no default setting", standardReward: "no default setting", diet: "no default setting", dietCum: "no default setting", dietMilk: "no default setting", muscles: "no default setting", XY: "no default setting", XX: "no default setting", gelding: "no default setting", preg: "no default setting", growth: "no default setting", autoSurgery: 0, autoBrand: 0, pornFameSpending: "no default setting", dietGrowthSupport: 0, eyewear: "no default setting", assignment: [], excludeAssignment: [], setAssignment: "none", facility: [], excludeFacility: [], assignFacility: "none", excludeSpecialSlaves: true, facilityRemove: false, removalAssignment: "rest", selectedSlaves: [], excludedSlaves: [], surgery: {lactation: "no default setting", cosmetic: 0, accent: "no default setting", shoulders: "no default setting", shouldersImplant: "no default setting", boobs: "no default setting", hips: "no default setting", hipsImplant: "no default setting", butt: "no default setting", faceShape: "no default setting", lips: "no default setting", holes: 0}, underArmHColor: "no default setting", underArmHStyle: "no default setting" }>>
 
 		<<set _activeRule.name = "Rule " + (_length+1)>>
 		<<set $defaultRules.push(_activeRule)>>
diff --git a/src/uncategorized/rulesFacilityRemove.tw b/src/uncategorized/rulesFacilityRemove.tw
index 8ed1b0153c4dbbc1837cf01d0def4aaef7212200..e14cd3977c75d6275b83852e3c7d7808e94cea29 100644
--- a/src/uncategorized/rulesFacilityRemove.tw
+++ b/src/uncategorized/rulesFacilityRemove.tw
@@ -1,91 +1,91 @@
 :: Rules Facility Remove [nobr]
 
-<<if _currentRule.facilityRemove>>
+<<if _combinedRule.facilityRemove>>
 
-	<<switch _currentRule.assignFacility>>
+	<<switch _combinedRule.assignFacility>>
 	<<case "brothel">>
 		<<if $activeSlave.assignment == "work in the brothel">>
 			<<if ($Madam == 0) || ($Madam.ID != $activeSlave.ID)>>
-				<br>$activeSlave.slaveName has been removed from $brothelName and has been assigned to _currentRule.removalAssignment.
-				<<assignJob $activeSlave _currentRule.removalAssignment>>
+				<br>$activeSlave.slaveName has been removed from $brothelName and has been assigned to _combinedRule.removalAssignment.
+				<<assignJob $activeSlave _combinedRule.removalAssignment>>
 			<</if>>
 		<</if>>
 
 	<<case "club">>
 		<<if $activeSlave.assignment == "serve in the club">>
 			<<if ($DJ == 0) || ($DJ.ID != $activeSlave.ID)>>
-				<br>$activeSlave.slaveName has been removed from $clubName and has been assigned to _currentRule.removalAssignment.
-				<<assignJob $activeSlave _currentRule.removalAssignment>>
+				<br>$activeSlave.slaveName has been removed from $clubName and has been assigned to _combinedRule.removalAssignment.
+				<<assignJob $activeSlave _combinedRule.removalAssignment>>
 			<</if>>
 		<</if>>
 
 	<<case "dairy">>
 		<<if $activeSlave.assignment == "work in the dairy">>
 			<<if ($Milkmaid == 0) || ($Milkmaid.ID != $activeSlave.ID)>>
-				<br>$activeSlave.slaveName has been removed from $dairyName and has been assigned to _currentRule.removalAssignment.
-				<<assignJob $activeSlave _currentRule.removalAssignment>>
+				<br>$activeSlave.slaveName has been removed from $dairyName and has been assigned to _combinedRule.removalAssignment.
+				<<assignJob $activeSlave _combinedRule.removalAssignment>>
 			<</if>>
 		<</if>>
 
 	<<case "arcade">>
 		<<if $activeSlave.assignment == "be confined in the arcade">>
-			<br>$activeSlave.slaveName has been removed from $arcadeName and has been assigned to _currentRule.removalAssignment.
-			<<assignJob $activeSlave _currentRule.removalAssignment>>
+			<br>$activeSlave.slaveName has been removed from $arcadeName and has been assigned to _combinedRule.removalAssignment.
+			<<assignJob $activeSlave _combinedRule.removalAssignment>>
 		<</if>>
 
 	<<case "spa">>
 		<<if $activeSlave.assignment == "rest in the spa">>
 			<<if ($Attendant == 0) || ($Attendant.ID != $activeSlave.ID)>>
-				<br>$activeSlave.slaveName has been removed from $spaName and has been assigned to _currentRule.removalAssignment.
-				<<assignJob $activeSlave _currentRule.removalAssignment>>
+				<br>$activeSlave.slaveName has been removed from $spaName and has been assigned to _combinedRule.removalAssignment.
+				<<assignJob $activeSlave _combinedRule.removalAssignment>>
 			<</if>>
 		<</if>>
 
 	<<case "clinic">>
 		<<if $activeSlave.assignment == "get treatment in the clinic">>
 			<<if ($Nurse == 0) || ($Nurse.ID != $activeSlave.ID)>>
-				<br>$activeSlave.slaveName has been removed from $clinicName and has been assigned to _currentRule.removalAssignment.
-				<<assignJob $activeSlave _currentRule.removalAssignment>>
+				<br>$activeSlave.slaveName has been removed from $clinicName and has been assigned to _combinedRule.removalAssignment.
+				<<assignJob $activeSlave _combinedRule.removalAssignment>>
 			<</if>>
 		<</if>>
 
 	<<case "mastersuite">>
 		<<if $activeSlave.assignment == "serve in the master suite">>
 			<<if ($Concubine == 0) || ($Concubine.ID != $activeSlave.ID)>>
-				<br>$activeSlave.slaveName has been removed from $masterSuiteName and has been assigned to _currentRule.removalAssignment.
-				<<assignJob $activeSlave _currentRule.removalAssignment>>
+				<br>$activeSlave.slaveName has been removed from $masterSuiteName and has been assigned to _combinedRule.removalAssignment.
+				<<assignJob $activeSlave _combinedRule.removalAssignment>>
 			<</if>>
 		<</if>>
 
 	<<case "hgsuite">>
 		<<if $activeSlave.assignment == "live with your Head Girl">>
 			<<if ($HeadGirl == 0) || ($HeadGirl.ID != $activeSlave.ID)>>
-				<br>$activeSlave.slaveName has been removed from $HGSuiteName and has been assigned to _currentRule.removalAssignment.
-				<<assignJob $activeSlave _currentRule.removalAssignment>>
+				<br>$activeSlave.slaveName has been removed from $HGSuiteName and has been assigned to _combinedRule.removalAssignment.
+				<<assignJob $activeSlave _combinedRule.removalAssignment>>
 			<</if>>
 		<</if>>
 
 	<<case "servantsquarters">>
 		<<if $activeSlave.assignment == "work as a servant">>
 			<<if ($Stewardess == 0) || ($Stewardess.ID != $activeSlave.ID)>>
-				<br>$activeSlave.slaveName has been removed from $servantsQuartersName and has been assigned to _currentRule.removalAssignment.
-				<<assignJob $activeSlave _currentRule.removalAssignment>>
+				<br>$activeSlave.slaveName has been removed from $servantsQuartersName and has been assigned to _combinedRule.removalAssignment.
+				<<assignJob $activeSlave _combinedRule.removalAssignment>>
 			<</if>>
 		<</if>>
 
 	<<case "schoolroom">>
 		<<if $activeSlave.assignment == "learn in the schoolroom">>
 			<<if ($Schoolteacher == 0) || ($Schoolteacher.ID != $activeSlave.ID)>>
-				<br>$activeSlave.slaveName has been removed from $schoolroomName and has been assigned to _currentRule.removalAssignment.
-				<<assignJob $activeSlave _currentRule.removalAssignment>>
+				<br>$activeSlave.slaveName has been removed from $schoolroomName and has been assigned to _combinedRule.removalAssignment.
+				<<assignJob $activeSlave _combinedRule.removalAssignment>>
 			<</if>>
 		<</if>>
 
 	<<case "cellblock">>
 		<<if $activeSlave.assignment == "be confined in the cellblock">>
 			<<if ($Wardeness == 0) || ($Wardeness.ID != $activeSlave.ID)>>
-				<br>$activeSlave.slaveName has been removed from $cellblockName and has been assigned to _currentRule.removalAssignment.
-				<<assignJob $activeSlave _currentRule.removalAssignment>>
+				<br>$activeSlave.slaveName has been removed from $cellblockName and has been assigned to _combinedRule.removalAssignment.
+				<<assignJob $activeSlave _combinedRule.removalAssignment>>
 			<</if>>
 		<</if>>
 	<</switch>>
diff --git a/src/uncategorized/saChoosesOwnJob.tw b/src/uncategorized/saChoosesOwnJob.tw
index 9a0d1eb5a254bb5ee779bc54c7444e7b654d77a3..9b4d9703805949c54ff8f2150e7fcff82715f794 100644
--- a/src/uncategorized/saChoosesOwnJob.tw
+++ b/src/uncategorized/saChoosesOwnJob.tw
@@ -1,6 +1,6 @@
 :: SA chooses own job [nobr]
 
-<<if ($slaves[$i].assignment == "choose her own job")>>
+<<if ($slaves[$i].choosesOwnAssignment == 1)>>
 	is allowed to select her own job this week. She watches your other slaves to decide what to do, @@.hotpink;happy@@ to be permitted a choice and a little more @@.mediumaquamarine;confident@@ than if you had just given her orders. She
 	<<set $slaves[$i].devotion++, $slaves[$i].trust++>>
 <</if>>
diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw
index 80ae742874fb0dedd62a0d3f25dc5b1699d4562f..fd14069a1fbedf1be2aff22eaafcbfebfbe0795e 100644
--- a/src/uncategorized/saLiveWithHG.tw
+++ b/src/uncategorized/saLiveWithHG.tw
@@ -202,10 +202,10 @@
 		Since their relationship is very abusive, only $HeadGirl.slaveName @@.hotpink;enjoys@@ living together with $slaves[$i].slaveName.
 		<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 		<<else>>
-		Since $HeadGirl.slaveName and $slaves[$i].slaveName are  lovers, they @@.hotpink;enjoy@@ living together.
+		Since $HeadGirl.slaveName and $slaves[$i].slaveName are lovers, they @@.hotpink;enjoy@@ living together.
 		<</if>>
 	<<else>>
-		Since $HeadGirl.slaveName and $slaves[$i].slaveName are  slave wives, they @@.hotpink;enjoy@@ living together.
+		Since $HeadGirl.slaveName and $slaves[$i].slaveName are slave wives, they @@.hotpink;enjoy@@ living together.
 	<</if>>
 	<</if>>
 <</if>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index c12630cfc5ae8bb3860735caeb31b4a5ba92c2cc..c25ef5eb6571152985a20d962926ea010b810f05 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -5413,7 +5413,7 @@
 <</if>>
 
 /*
-<<if $masterSuitePregnancySlaveLuxuries is 1 and $slaves[$i].pregType is 50 and ($slaves[$i].assignment == "serve in the master suite" or $slaves[$i].assignment == "be your Concubine">>
+<<if $masterSuitePregnancySlaveLuxuries == 1 && $slaves[$i].pregType == 50 && ($slaves[$i].assignment == "serve in the master suite" || $slaves[$i].assignment == "be your Concubine")>>
 <<if $slaves[$i].diet != "high caloric">>
 <<if $slaves[$i].preg > 20>>
 	The pregnancy generator places heavy strain on her as her body @@.red;consumes itself@@ to keep releasing eggs and maintain her many developing babies.
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 22d831b8cf0c8b8443f2d26f90def5052c9e6c20..0c7865c0bf980aacaa2469ac87748c43b6860bb5 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -41,7 +41,7 @@
 <br>
 <<if $seeDetails == 1>>
 	<span id="LSD"><<include "Long Slave Description">></span>
-	<br>//[[Options][$nextLink = passage()]] | [[Descriptions|Slave Interact][$seeDetails = 0]] | [[Customize|Add custom descriptors]] | ''<<link "Update">><<replace "#LSD">><<include "Long Slave Description">><</replace>><</link>>''//
+	<br>//[[Options][$nextLink = passage()]] | [[Hide descriptions|Slave Interact][$seeDetails = 0]] | [[Customize|Add custom descriptors]] | ''<<link "Update">><<replace "#LSD">><<include "Long Slave Description">><</replace>><</link>>''//
 <<else>>
 	//[[Show descriptions|Slave Interact][$seeDetails = 1]]//
 <</if>>
@@ -260,28 +260,28 @@
 		<</if>>
 	<</if>>
 	<<if ($activeSlave.relationship > 0)>>
-		<<for $i = 0; $i < _SL; $i++>>
-		<<if $slaves[$i].ID == $activeSlave.relationshipTarget>>
-			<<set $assayedSlave = $slaves[$i]>>
-			<<AssayedSlaveAvailable>>
-		<</if>>
+		<<for _i = 0; _i < _SL; _i++>>
+			<<if $slaves[_i].ID == $activeSlave.relationshipTarget>>
+				<<set $assayedSlave = $slaves[_i]>>
+				<<AssayedSlaveAvailable>>
+			<</if>>
 		<</for>>
 		<<if $assayedSlaveAvailable == 1>>
-			<<if ($activeSlave.relationship <= 1)>>
+			<<if ($activeSlave.relationship == 1)>>
 			| <<link "Fuck her with her friend">><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
-			<<elseif ($activeSlave.relationship <= 2)>>
+			<<elseif ($activeSlave.relationship == 2)>>
 			| <<link "Fuck her with her best friend">><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
-			<<elseif ($activeSlave.relationship <= 3)>>
+			<<elseif ($activeSlave.relationship == 3)>>
 			| <<link "Fuck her with her FWB">><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
-			<<elseif ($activeSlave.relationship <= 4)>>
+			<<elseif ($activeSlave.relationship == 4)>>
 			| <<link "Fuck her with her lover">><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
 			<<else>>
 			| <<link "Fuck her with her slave wife">><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
 			<</if>>
 		<<else>>
 			| //$assayedSlave.slaveName is unavailable//
-			<<if $activeSlave.assignmentVisible == 1 && $assayedSlave.assignment == "be your agent">>
-				[[Send her to live with your agent|Agent Company]]
+			<<if $assayedSlave.assignment == "be your agent">>
+				[[Send her to live with your agent|Agent Company][$subSlave = $assayedSlave]]
 			<</if>>
 		<</if>>
 	<</if>>
@@ -301,6 +301,7 @@
 	<</if>>
 <</if>>
 
+/* pregmod start */
 <<if $familyTesting == 1>>
 	<br><br>
 	<span id="family">
@@ -314,42 +315,43 @@
 	</span>
 <</if>>
 
-
 <<if $universalRulesImpregnation == "HG">>
-<br><br>
-<<if $activeSlave.HGExclude == 0>>
-Will be bred by the head girl when fertile. [[Exempt her|Slave Interact][$activeSlave.useRulesAssistant = 1]]
-<<else>>
-Will not be bred by the head girl when fertile. [[Include her|Slave Interact][$activeSlave.HGExclude = 0]]
-<</if>>
+	<br><br>
+	<<if $activeSlave.HGExclude == 0>>
+		Will be bred by the head girl when fertile. [[Exempt her|Slave Interact][$activeSlave.HGExclude = 1]]
+	<<else>>
+		Will not be bred by the head girl when fertile. [[Include her|Slave Interact][$activeSlave.HGExclude = 0]]
+	<</if>>
 <</if>>
+/* pregmod end */
 
 <br><br>
-__Rules Assistant__
-//<<link "Apply Rules Assistant to this slave">>
-	<<silently>>
-	<<CheckAutoRulesActivate $activeSlave>>
-	<<DefaultRules $activeSlave>>
-	<</silently>>
-	<<goto "Slave Interact">>
-<</link>>//
-&nbsp;&nbsp;&nbsp;&nbsp;
-<<if $activeSlave.useRulesAssistant != 0>>
-''Subject'' to the rules assistant. [[Exempt her|Slave Interact][$activeSlave.useRulesAssistant = 0]]
+<<if $activeSlave.useRulesAssistant == 0>>
+	@@.gray;''Not subject'' to the Rules Assistant.@@
+	[[Include her|Slave Interact][$activeSlave.useRulesAssistant = 1]]
+	<br>
 <<else>>
-''Not subject'' to the rules assistant. [[Include her|Slave Interact][$activeSlave.useRulesAssistant = 1]]
-<</if>> | [[Rules Assistant Options|Rules Assistant]]
-<<if (def $activeSlave.currentRules) && ($activeSlave.currentRules.length > 0)>>
-	<<for _r = 0; _r < $activeSlave.currentRules.length; _r++>>
-		<<for _s = 0; _s < $defaultRules.length; _s++>>
-			<<set _currentRule = $defaultRules[_s], _num = (_s+1)>>
-			<<if $activeSlave.currentRules[_r] == _currentRule.ID>>
-				<br>Rule _num: _currentRule.name applied.
+	__Rules Assistant__
+	<<link "//Apply Rules Assistant to this slave//">>
+		<<silently>>
+		<<CheckAutoRulesActivate $activeSlave>>
+		<<DefaultRules $activeSlave>>
+		<</silently>>
+		<<goto "Slave Interact">>
+	<</link>>
+	&nbsp;&nbsp;&nbsp;&nbsp;[[Exempt this slave from the Rules Assistant|Slave Interact][$activeSlave.useRulesAssistant = 0]] | [[Rules Assistant Options|Rules Assistant]]
+
+	<<if (def $activeSlave.currentRules) && ($activeSlave.currentRules.length > 0)>>
+		<ul>
+		<<for _r = 0; _r < $defaultRules.length; _r++>>
+			<<if ruleApplied($activeSlave, $defaultRules[_r].ID)>>
+				<li>Rule <<print (_r+1)>>: $defaultRules[_r].name applied.</li>
 			<</if>>
 		<</for>>
-	<</for>>
+		</ul>
+	<</if>>
 <</if>>
-<br>
+
 <<if $cyberMod == 0>>/* CyberMod Toggle */
 /* START hotswap prosthetics */
 <<if ndef $activeSlave.readyLimbs>>
@@ -385,6 +387,7 @@ __Rules Assistant__
 		| <<link "Dick">><<set $activeSlave.toyHole = "dick">><<replace "#hole">>$activeSlave.toyHole<</replace>><</link>>
 		<</if>>
 		| <<link "No Preference">><<set $activeSlave.toyHole = "all her holes">><<replace "#hole">>$activeSlave.toyHole<</replace>><</link>>
+		<br>
 	<</if>>
 </span>
 
@@ -417,131 +420,155 @@ __Rules Assistant__
 	//She is the Wardeness and is not available for other work//
 <<default>>
 
-/* NOT RECOVERING */
-
-<<if $activeSlave.assignmentVisible == 0>>
-	//She is assigned to $activeSlave.assignment; bring her out of the facility to reassign her//
-<<else>>
+/* CAN BE REASSIGNED */
 
-__Assignment__: <strong><span id="assign">$activeSlave.assignment<<if $activeSlave.sentence>> ($activeSlave.sentence weeks)<</if>></span>.</strong>
+	__Assignment__: <strong><span id="assign">$activeSlave.assignment<<if $activeSlave.sentence>> ($activeSlave.sentence weeks)<</if>></span>.</strong>
 	  <<link "Rest">>                   <<removeJob $activeSlave $activeSlave.assignment>><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
 	| <<link "Fucktoy">>                <<assignJob $activeSlave "please you">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
-<<if $activeSlave.fuckdoll == 0>>
-<<if (($activeSlave.devotion >= -20) || (($activeSlave.trust < -20) && ($activeSlave.devotion >= -50)) || ($activeSlave.trust < -50)) && canWalk($activeSlave)>>
-	| <<link "Subordinate slave">>      <<assignJob $activeSlave "be a subordinate slave">><<goto "Subordinate Targeting">><</link>>
-	<<if ($activeSlave.eyes != -2)>>
-	| <<link "Servant">>                <<assignJob $activeSlave "be a servant">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
+
+	<<if ($activeSlave.indentureRestrictions <= 0) && $activeSlave.breedingMark != 1>>
+	| <<link "Gloryhole">>              <<assignJob $activeSlave "work a glory hole">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
+	<</if>>
+
+	<<if $activeSlave.fuckdoll == 0>> /* NON-FUCKDOLL ASSIGNMENTS */
+
+	<<if ($activeSlave.devotion >= -20) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50)>>
+	<<if $activeSlave.intelligenceImplant < 1 && $activeSlave.fetish != "mindbroken">>
+	| <<link "Classes">>                <<assignJob $activeSlave "take classes">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
 	<<else>>
-	/*| //Blind slaves cannot be servants// */
+	| Classes
 	<</if>>
-<</if>>
-<<if ($activeSlave.devotion >= -20) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50)>>
-  <<if $activeSlave.intelligenceImplant < 1 && $activeSlave.fetish != "mindbroken">>
-	| __<<link "Take slave classes">>   <<assignJob $activeSlave "take classes">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>__
-  <<else>>
-    | Take slave classes
-  <</if>>
-<<else>>
+	<<else>>
 	/*| //Too resistant to take classes// */
-<</if>>
-	| <<link "Confine her">>            <<assignJob $activeSlave "stay confined">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
-<<if $activeSlave.breedingMark != 1>>
+	<</if>>
+
+	<<if (($activeSlave.devotion >= -20) || (($activeSlave.trust < -20) && ($activeSlave.devotion >= -50)) || ($activeSlave.trust < -50))>>
+	| <<link "Subordinate Slave">>      <<assignJob $activeSlave "be a subordinate slave">><<goto "Subordinate Targeting">><</link>>
+	<<if canSee($activeSlave) && canWalk($activeSlave)>>
+	| <<link "House Servant">>          <<assignJob $activeSlave "be a servant">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
+	<<else>>
+	/*| //Blind or immobile slaves cannot be servants// */
+	<</if>>
+	<<else>>
+	/*| //Too resistant to be a servant// */
+	<</if>>
+
+	<<if $activeSlave.breedingMark != 1>>
 	| <<link "Whore">>                  <<assignJob $activeSlave "whore">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
-	| <<link "Public servant">>         <<assignJob $activeSlave "serve the public">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
-<</if>>
-<</if>>/* CLOSES FUCKDOLL CHECK */
-<<if ($activeSlave.indentureRestrictions <= 0) && $activeSlave.breedingMark != 1>>
-	| <<link "Glory hole">>             <<assignJob $activeSlave "work a glory hole">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
-<</if>>
-<<if $activeSlave.fuckdoll == 0>>
-<<if ($activeSlave.lactation > 0) || ($activeSlave.balls > 0 && $activeSlave.ballType == "human")>>
-	| <<link "Get milked">>             <<assignJob $activeSlave "get milked">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
-<<else>>
+	| <<link "Public Servant">>         <<assignJob $activeSlave "serve the public">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
+	<</if>>
+
+	<<if ($activeSlave.lactation > 0) || ($activeSlave.balls > 0 && $activeSlave.ballType == "human")>>
+	| <<link "Milked">>                 <<assignJob $activeSlave "get milked">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
+	<<else>>
 	/*| //Not lactating// */
-<</if>>
-	| <<link "Let her choose her own assignment">><<assignJob $activeSlave "choose her own job">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
-	| <<link "Assign her to her current task for another month">><<set $activeSlave.sentence += 4>><<replace "#assign">>$activeSlave.assignment ($activeSlave.sentence weeks)<</replace>><</link>>
-<</if>>/* CLOSES FUCKDOLL CHECK */
+	<</if>>
 
-<<if $activeSlave.fuckdoll == 0>>
-<<if $brothel+$club+$dairy+$servantsQuarters+$masterSuite+$spa+$clinic+$schoolroom+$cellblock+$arcade > 0>>
+	| <<link "Confinement">>            <<assignJob $activeSlave "stay confined">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
+	| <<link "Let her choose">>         <<assignJob $activeSlave "choose her own job">><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
+	| <<link "Stay on this assignment for another month">><<if $activeSlave.assignment != "choose her own job">><<set $activeSlave.sentence += 4>><<replace "#assign">>$activeSlave.assignment ($activeSlave.sentence weeks)<</replace>><</if>><</link>>
+
+	<</if>>/* CLOSES FUCKDOLL CHECK */
+
+	<<set _numFacilities = $brothel+$club+$dairy+$servantsQuarters+$masterSuite+$spa+$clinic+$schoolroom+$cellblock+$arcade+$HGSuite>>
+	
+	<<if _numFacilities > 0>>
+
+	/* find slave's array index so we can save changes before leaving this passage */
 	<<for _i = 0; _i < _SL; _i++>>
-	<<if $activeSlave.ID == $slaves[_i].ID>>
-		<<break>>
-	<</if>>
+		<<if $activeSlave.ID == $slaves[_i].ID>>
+			<<break>>
+		<</if>>
 	<</for>>
+
 	<br>__Transfer to__:
-	<<if $brothel != 0>>
-	<<if $brothel > $brothelSlaves && ($activeSlave.devotion > 50) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50) || ($activeSlave.trust > 50) && $activeSlave.breedingMark != 1>>
-		[[Brothel|Assign][$slaves[_i] = $activeSlave, $returnTo = "Brothel", $i = _i]]
-	<<else>>Brothel<</if>>
+
+	<<if $arcade != 0>>
+		<<if $arcade > $arcadeSlaves && ($activeSlave.indentureRestrictions <= 0) && $activeSlave.breedingMark != 1>>
+			[[Arcade|Assign][$slaves[_i] = $activeSlave, $assignTo = "Arcade", $i = _i]]
+		<<else>>Arcade<</if>>
+		<<if _numFacilities-- > 1>>|<</if>>
 	<</if>>
-	<<if $club != 0>>|
-	<<if $club > $clubSlaves && ($activeSlave.devotion > 50) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50) || ($activeSlave.trust > 50) && $activeSlave.breedingMark != 1>>
-		[[Club|Assign][$slaves[_i] = $activeSlave, $returnTo = "Club", $i = _i]]
-	<<else>>Club<</if>>
+
+	<<if $activeSlave.fuckdoll == 0>> /* NON-FUCKDOLL FACILITIES */
+
+	<<if $clinic != 0>>
+		<<if $clinic > $clinicSlaves && ($activeSlave.health < 20 || ($Nurse != 0 && ($activeSlave.chem > 15 && $clinicUpgradeFilters == 1) || ($bellyImplants == 1 && $activeSlave.bellyImplant > 100) || ($activeSlave.preg >= 1 && ($clinicSpeedGestation >= 0 || $activeSlave.pregControl == "speed up"))))>>
+			[[Clinic|Assign][$slaves[_i] = $activeSlave, $assignTo = "Clinic", $i = _i]]
+		<<else>>Clinic<</if>>
+		<<if _numFacilities-- > 1>>|<</if>>
+	<</if>>
+
+	<<if $masterSuite != 0>>
+		<<if $masterSuite > $masterSuiteSlaves && ($activeSlave.devotion > 20) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50)>>
+			[[Master Suite|Assign][$slaves[_i] = $activeSlave, $assignTo = "Master Suite", $i = _i]]
+		<<else>>Master Suite<</if>>
+		<<if _numFacilities-- > 1>>|<</if>>
 	<</if>>
-	<<if $dairy != 0>>|
-	<<if $dairy > $dairySlaves && (($activeSlave.indentureRestrictions > 0) && ($dairyRestraintsSetting > 1)) || (($activeSlave.indentureRestrictions > 1) && ($dairyRestraintsSetting > 0)) || ($activeSlave.breedingMark == 1 && $dairyRestriantsSettings > 0) || (($dairyPregSetting > 0) && (($activeSlave.bellyImplant != 0) || ($activeSlave.pregType >= 50)))>>
-		Dairy
-	<<elseif (($activeSlave.lactation > 0) || ($activeSlave.balls > 0)) || (($dairyFeedersUpgrade == 1) && ($dairyFeedersSetting > 0) && ($dairySlimMaintainUpgrade == 0))>>
-		 [[Dairy|Assign][$slaves[_i] = $activeSlave, $returnTo = "Dairy", $i = _i]]
-	<<else>>Dairy<</if>>
+
+	<<if $cellblock != 0>>
+		<<if $cellblock > $cellblockSlaves && (($activeSlave.devotion < -20) && ($activeSlave.trust >= -20)) || (($activeSlave.devotion < -50) && ($activeSlave.trust >= -50))>>
+			[[Cellblock|Assign][$slaves[_i] = $activeSlave, $assignTo = "Cellblock", $i = _i]]
+		<<else>>Cellblock<</if>>
+		<<if _numFacilities-- > 1>>|<</if>>
 	<</if>>
-	<<if $servantsQuarters != 0>>|
-	<<if $servantsQuarters > $servantsQuartersSlaves && canWalk($activeSlave) && canSee($activeSlave) && ($activeSlave.devotion >= -20 || ($activeSlave.devotion >= -50 && $activeSlave.trust <= 20) || $activeSlave.trust < -20)>>
-		[[Servants' Quarters|Assign][$slaves[_i] = $activeSlave, $returnTo = "Servants' Quarters", $i = _i]]
-	<<else>>Servants' Quarters<</if>>
+
+	<<if $schoolroom != 0>>
+		<<if $schoolroom > $schoolroomSlaves && $activeSlave.fetish != "mindbroken" && ($activeSlave.devotion >= -20 || ($activeSlave.devotion >= -50 && $activeSlave.trust < -20) || $activeSlave.trust < -50) && (($activeSlave.intelligenceImplant < 1) || ($activeSlave.voice != 0 && $activeSlave.accent+$schoolroomUpgradeLanguage > 2) || ($activeSlave.oralSkill <= 10+$schoolroomUpgradeSkills*20) || ($activeSlave.whoreSkill <= 10+$schoolroomUpgradeSkills*20) || ($activeSlave.entertainSkill <= 10+$schoolroomUpgradeSkills*20) || ($activeSlave.analSkill < 10+$schoolroomUpgradeSkills*20) || ($activeSlave.vagina >= 0 && $activeSlave.vaginalSkill < 10+$schoolroomUpgradeSkills*20))>>
+			[[Schoolroom|Assign][$slaves[_i] = $activeSlave, $assignTo = "Schoolroom", $i = _i]]
+		<<else>>Schoolroom<</if>>
+		<<if _numFacilities-- > 1>>|<</if>>
 	<</if>>
-	<<if $masterSuite != 0>>|
-	<<if $masterSuite > $masterSuiteSlaves && ($activeSlave.devotion > 20) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50)>>
-		[[Master Suite|Assign][$slaves[_i] = $activeSlave, $returnTo = "Master Suite", $i = _i]]
-	<<else>>Master Suite<</if>>
+
+	<<if $servantsQuarters != 0>>
+		<<if $servantsQuarters > $servantsQuartersSlaves && canWalk($activeSlave) && canSee($activeSlave) && ($activeSlave.devotion >= -20 || ($activeSlave.devotion >= -50 && $activeSlave.trust <= 20) || $activeSlave.trust < -20)>>
+			[[Servants' Quarters|Assign][$slaves[_i] = $activeSlave, $assignTo = "Servants' Quarters", $i = _i]]
+		<<else>>Servants' Quarters<</if>>
+		<<if _numFacilities-- > 1>>|<</if>>
 	<</if>>
-	<<if $spa != 0>>|
-	<<if $spa > $spaSlaves && ($activeSlave.devotion >= -20 || $activeSlave.fetish == "mindbroken") && ($activeSlave.health < 20 || $activeSlave.trust < 60 || $activeSlave.devotion <= 60 || $activeSlave.fetish == "mindbroken" || $activeSlave.sexualFlaw !== "none" || $activeSlave.behavioralFlaw !== "none")>>
-		[[Spa|Assign][$slaves[_i] = $activeSlave, $returnTo = "Spa", $i = _i]]
-	<<else>>Spa<</if>>
+
+	<<if $brothel != 0>>
+		<<if $brothel > $brothelSlaves && ($activeSlave.devotion > 50) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50) || ($activeSlave.trust > 50) && $activeSlave.breedingMark != 1>>
+			[[Brothel|Assign][$slaves[_i] = $activeSlave, $assignTo = "Brothel", $i = _i]]
+		<<else>>Brothel<</if>>
+		<<if _numFacilities-- > 1>>|<</if>>
 	<</if>>
-	<<if $clinic != 0>>|
-	<<if $clinic > $clinicSlaves && ($activeSlave.health < 20 || ($Nurse != 0 && ($activeSlave.chem > 15 && $clinicUpgradeFilters == 1) || ($bellyImplants == 1 && $activeSlave.bellyImplant > 100) || ($activeSlave.preg >= 1 && ($clinicSpeedGestation >= 0 || $activeSlave.pregControl == "speed up"))))>>
-		[[Clinic|Assign][$slaves[_i] = $activeSlave, $returnTo = "Clinic", $i = _i]]
-	<<else>>Clinic<</if>>
+
+	<<if $club != 0>>
+		<<if $club > $clubSlaves && ($activeSlave.devotion > 50) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50) || ($activeSlave.trust > 50) && $activeSlave.breedingMark != 1>>
+			[[Club|Assign][$slaves[_i] = $activeSlave, $assignTo = "Club", $i = _i]]
+		<<else>>Club<</if>>
+		<<if _numFacilities-- > 1>>|<</if>>
 	<</if>>
-	<<if $schoolroom != 0>>|
-	<<if $schoolroom > $schoolroomSlaves && $activeSlave.fetish != "mindbroken" && ($activeSlave.devotion >= -20 || ($activeSlave.devotion >= -50 && $activeSlave.trust < -20) || $activeSlave.trust < -50) && (($activeSlave.intelligenceImplant < 1) || ($activeSlave.voice != 0 && $activeSlave.accent+$schoolroomUpgradeLanguage > 2) || ($activeSlave.oralSkill <= 10+$schoolroomUpgradeSkills*20) || ($activeSlave.whoreSkill <= 10+$schoolroomUpgradeSkills*20) || ($activeSlave.entertainSkill <= 10+$schoolroomUpgradeSkills*20) || ($activeSlave.analSkill < 10+$schoolroomUpgradeSkills*20) || ($activeSlave.vagina >= 0 && $activeSlave.vaginalSkill < 10+$schoolroomUpgradeSkills*20))>>
-		[[Schoolroom|Assign][$slaves[_i] = $activeSlave, $returnTo = "Schoolroom", $i = _i]]
-	<<else>>Schoolroom<</if>>
+
+	<<if $dairy != 0>>
+		<<if $dairy > $dairySlaves && (($activeSlave.indentureRestrictions > 0) && ($dairyRestraintsSetting > 1)) || (($activeSlave.indentureRestrictions > 1) && ($dairyRestraintsSetting > 0)) || ($activeSlave.breedingMark == 1 && $dairyRestriantsSettings > 0) || (($dairyPregSetting > 0) && (($activeSlave.bellyImplant != 0) || ($activeSlave.pregType >= 50)))>>
+			Dairy
+		<<elseif (($activeSlave.lactation > 0) || ($activeSlave.balls > 0)) || (($dairyFeedersUpgrade == 1) && ($dairyFeedersSetting > 0) && ($dairySlimMaintainUpgrade == 0))>>
+			 [[Dairy|Assign][$slaves[_i] = $activeSlave, $assignTo = "Dairy", $i = _i]]
+		<<else>>Dairy<</if>>
+		<<if _numFacilities-- > 1>>|<</if>>
 	<</if>>
-	<<if $cellblock != 0>>|
-	<<if $cellblock > $cellblockSlaves && (($activeSlave.devotion < -20) && ($activeSlave.trust >= -20)) || (($activeSlave.devotion < -50) && ($activeSlave.trust >= -50))>>
-		[[Cellblock|Assign][$slaves[_i] = $activeSlave, $returnTo = "Cellblock", $i = _i]]
-	<<else>>Cellblock<</if>>
+
+	<<if $spa != 0>>
+		<<if $spa > $spaSlaves && ($activeSlave.devotion >= -20 || $activeSlave.fetish == "mindbroken") && ($activeSlave.health < 20 || $activeSlave.trust < 60 || $activeSlave.devotion <= 60 || $activeSlave.fetish == "mindbroken" || $activeSlave.sexualFlaw !== "none" || $activeSlave.behavioralFlaw !== "none")>>
+			[[Spa|Assign][$slaves[_i] = $activeSlave, $assignTo = "Spa", $i = _i]]
+		<<else>>Spa<</if>>
 	<</if>>
-<</if>>
-<<if $arcade != 0>>|
-<<if $arcade > $arcadeSlaves && ($activeSlave.indentureRestrictions <= 0) && $activeSlave.breedingMark != 1>>
-	[[Arcade|Assign][$slaves[_i] = $activeSlave, $returnTo = "Arcade", $i = _i]]
-<<else>>Arcade<</if>>
-<</if>>
-<</if>>
 
-<</if>>
+	<</if>> /* CLOSES FUCKDOLL CHECK */
 
-/* END NOT RECOVERING */
-<</switch>>
+	<</if>> /* closes _numFacilities */
+
+<</switch>> /* END CAN BE REASSIGNED */
 
-<br>__Body modification__: [[Use remote surgery|Remote Surgery][$degradation = 0]]
+<br>__Body modification__:
+  [[Use remote surgery|Remote Surgery][$degradation = 0]]
 | [[Use body mod studio|Body Modification][$degradation = 0]]
 | [[Use auto salon|Salon][$degradation = 0]]
 <<if $cyberMod == 1>>| [[Configure cybernetics|cyberConfig][$temp = 0]]<</if>>
 
-<br>
-<<if $activeSlave.assignmentVisible == 0>>
-	//Her drugs are managed by the facility she's assigned to//
-<<else>>
-
-__Drugs__: <span id="drugs"><strong>$activeSlave.drugs</strong></span>.
+<br>__Drugs__: <span id="drugs"><strong>$activeSlave.drugs</strong></span>.
 <<link "None">><<set $activeSlave.drugs = "no drugs">><<replace "#drugs">><strong>$activeSlave.drugs</strong><</replace>><</link>>
 <<if $activeSlave.indentureRestrictions < 2>>
 <<if ($activeSlave.intelligence > -2)>>
@@ -706,8 +733,6 @@ __Aphrodisiacs__: <span id="aphrodisiacs"><strong><<if $activeSlave.aphrodisiacs
 	| <<link "Apply">><<set $activeSlave.aphrodisiacs = 1>><<replace "#aphrodisiacs">><strong>applied</strong><</replace>><</link>>
 	| <<link "Extreme">><<set $activeSlave.aphrodisiacs = 2>><<replace "#aphrodisiacs">><strong>extreme</strong><</replace>><</link>>
 
-<</if>> /* closes drugs (assignmentVisible == 0) */
-
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
 <span id="fertilityblock">
 <<if $activeSlave.fuckdoll == 0 && ($activeSlave.ovaries == 1 || $activeSlave.mpreg == 1)>>
@@ -891,36 +916,36 @@ __Hormones__: <strong><span id="hormones">
 
 <br>
 <<if $activeSlave.fuckdoll > 0>>
-//Rules have little meaning for living sex toys//
-<<elseif $activeSlave.assignmentVisible == 0>>
-//Her rules are set by the facility she's assigned to//
+	//Rules have little meaning for living sex toys//
 <<else>>
-	<<set $dormitoryPopulation = 0, $roomsPopulation = 0>>
-	<<for $i = 0; $i < _SL; $i++>>
-		<<if $slaves[$i].assignmentVisible == 1>>
-			<<if $slaves[$i].livingRules == "luxurious">>
-				<<if $slaves[$i].relationship >= 4>>
-					<<set $roomsPopulation += 0.5>>
+	<<if $activeSlave.assignmentVisible == 1>>
+		<<set $dormitoryPopulation = 0, $roomsPopulation = 0>>
+		<<for $i = 0; $i < _SL; $i++>>
+			<<if $slaves[$i].assignmentVisible == 1>>
+				<<if $slaves[$i].livingRules == "luxurious">>
+					<<if $slaves[$i].relationship >= 4>>
+						<<set $roomsPopulation += 0.5>>
+					<<else>>
+						<<set $roomsPopulation++>>
+					<</if>>
 				<<else>>
-					<<set $roomsPopulation++>>
+					<<set $dormitoryPopulation++>>
 				<</if>>
-			<<else>>
-				<<set $dormitoryPopulation++>>
 			<</if>>
+		<</for>>
+		__Living Standard__: ''<span id="livingRules">$activeSlave.livingRules</span>.''
+		<<if $activeSlave.livingRules == "spare">>
+			<<link "Normal">><<set $activeSlave.livingRules = "normal">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>> |
+			<<if $roomsPopulation <= $rooms-0.5>><<link "Luxurious">><<set $activeSlave.livingRules = "luxurious">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>><<else>>//No luxurious rooms available//<</if>>
+		<<elseif $activeSlave.livingRules == "normal">>
+			<<link "Spare">><<set $activeSlave.livingRules = "spare">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>> |
+			<<if $roomsPopulation <= $rooms-0.5>><<link "Luxurious">><<set $activeSlave.livingRules = "luxurious">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>><<else>>//No luxurious rooms available//<</if>>
+		<<else>>
+			<<link "Spare">><<set $activeSlave.livingRules = "spare">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>> |
+			<<link "Normal">><<set $activeSlave.livingRules = "normal">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>>
 		<</if>>
-	<</for>>
-	__Living Standard__: ''<span id="livingRules">$activeSlave.livingRules</span>.''
-	<<if $activeSlave.livingRules == "spare">>
-		<<link "Normal">><<set $activeSlave.livingRules = "normal">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>> |
-		<<if $roomsPopulation <= $rooms-0.5>><<link "Luxurious">><<set $activeSlave.livingRules = "luxurious">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>><<else>>//No luxurious rooms available//<</if>>
-	<<elseif $activeSlave.livingRules == "normal">>
-		<<link "Spare">><<set $activeSlave.livingRules = "spare">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>> |
-		<<if $roomsPopulation <= $rooms-0.5>><<link "Luxurious">><<set $activeSlave.livingRules = "luxurious">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>><<else>>//No luxurious rooms available//<</if>>
-	<<else>>
-		<<link "Spare">><<set $activeSlave.livingRules = "spare">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>> |
-		<<link "Normal">><<set $activeSlave.livingRules = "normal">><<replace "#livingRules">>$activeSlave.livingRules<</replace>><</link>>
-	<</if>>
-	&nbsp;&nbsp;&nbsp;&nbsp;
+		&nbsp;&nbsp;&nbsp;&nbsp;
+	<</if>> /* Living Standard */
 	<<if $activeSlave.voice != 0>>
 	__Speech Rules__: ''<span id="speechRules">$activeSlave.speechRules</span>.''
 	<<if $activeSlave.speechRules == "restrictive">>
@@ -998,6 +1023,7 @@ __Hormones__: <strong><span id="hormones">
 | <<link "No sex">><<set $activeSlave.clitSetting = "none">><<replace "#setting">>$activeSlave.clitSetting<</replace>><</link>>
 <</if>>
 
+
 <<if $activeSlave.fuckdoll == 0>>
 <br>__Clothes__: ''<span id="clothes">$activeSlave.clothes</span>.''
 <<link "Go naked">><<set $activeSlave.clothes = "no clothing", $activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
@@ -1109,7 +1135,7 @@ __Hormones__: <strong><span id="hormones">
 | <<link "Painfully extreme heels">><<set $activeSlave.shoes = "extreme heels">><<replace "#shoes">>$activeSlave.shoes<</replace>><</link>>
 <</if>>
 
-<br>__Body Accessory__: ''<span id="bellyAccessory">$activeSlave.bellyAccessory</span>.''
+<br>__Torso accessory__: ''<span id="bellyAccessory">$activeSlave.bellyAccessory</span>.''
 <<link "None">><<set $activeSlave.bellyAccessory = "none">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
 | <<link "Tight corset">><<set $activeSlave.bellyAccessory = "a corset">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
 <<if $activeSlave.breedingMark != 1>>
@@ -1117,14 +1143,14 @@ __Hormones__: <strong><span id="hormones">
 <</if>>
 <<if ($arcologies[0].FSRepopulationFocus != "unset") || ($cheatMode == 1) || ($clothesBoughtBelly == 1)>>
 <<if $activeSlave.preg <= 10 && $activeSlave.inflation == 0>>
-| <<link "1st Trimester">><<set $activeSlave.bellyAccessory = "a small empathy belly">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
-| <<link "2nd Trimester">><<set $activeSlave.bellyAccessory = "a medium empathy belly">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
-| <<link "3rd Trimester">><<set $activeSlave.bellyAccessory = "a large empathy belly">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
-| <<link "3rd Trimester twins">><<set $activeSlave.bellyAccessory = "a huge empathy belly">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
+| <<link "1st Trimester belly">><<set $activeSlave.bellyAccessory = "a small empathy belly">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
+| <<link "2nd Trimester belly">><<set $activeSlave.bellyAccessory = "a medium empathy belly">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
+| <<link "3rd Trimester belly">><<set $activeSlave.bellyAccessory = "a large empathy belly">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
+| <<link "3rd Trimester twins belly">><<set $activeSlave.bellyAccessory = "a huge empathy belly">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
 <</if>>
 <</if>>
 
-<br>__Buttplug__: ''<span id="buttplug">$activeSlave.buttplug</span>.''
+<br>__Anal accessory__: ''<span id="buttplug">$activeSlave.buttplug</span>.''
 <<link "None">><<set $activeSlave.buttplug = "none">><<replace "#buttplug">>$activeSlave.buttplug<</replace>><</link>>
 | <<link "Normal">><<set $activeSlave.buttplug = "plug">><<replace "#buttplug">>$activeSlave.buttplug<</replace>><</link>>
 <<if $toysBoughtButtPlugs == 1>>
@@ -1145,7 +1171,7 @@ __Hormones__: <strong><span id="hormones">
 <</if>>
 <</if>>
 <<if $activeSlave.vagina > -1>>
-<br><<if $activeSlave.dick == 0>>__Accessory__<<else>>__Vaginal accessory__<</if>>: ''<span id="vaginalAccessory">$activeSlave.vaginalAccessory</span>.''
+<br>__Vaginal accessory__: ''<span id="vaginalAccessory">$activeSlave.vaginalAccessory</span>.''
 <<link "None">><<set $activeSlave.vaginalAccessory = "none">><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><<SlaveInteractImpreg>><<SlaveInteractFertility>><<SlaveInteractSexOption>><<SlaveInteractAnalSexOption>><<SlaveInteractGropeOption>><<SlaveInteractDickGropeOption>><<SlaveInteractAnalGropeOption>><</link>>
 | <<link "Dildo">><<set $activeSlave.vaginalAccessory = "dildo">><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><</link>>
 <<if $toysBoughtDildos == 1>>
@@ -1170,7 +1196,7 @@ __Hormones__: <strong><span id="hormones">
 | <<link "Combined chastity belt">><<set $activeSlave.vaginalAccessory = "combined chastity",$activeSlave.choosesOwnChastity = 0>><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><<SlaveInteractImpreg>><<SlaveInteractFertility>><<SlaveInteractSexOption>><<SlaveInteractAnalSexOption>><<SlaveInteractGropeOption>><<SlaveInteractDickGropeOption>><<SlaveInteractAnalGropeOption>><</link>>
 <</if>>
 <<if $activeSlave.dick > 0>>
-&nbsp;&nbsp;&nbsp;&nbsp;<<if $activeSlave.vagina == -1>>__Accessory__<<else>>__Dick accessory__<</if>>: ''<span id="dickAccessory">$activeSlave.dickAccessory</span>.''
+<br>__Dick accessory__: ''<span id="dickAccessory">$activeSlave.dickAccessory</span>.''
 <<link "None">><<set $activeSlave.dickAccessory = "none">><<replace "#dickAccessory">>$activeSlave.dickAccessory<</replace>><<SlaveInteractSexOption>><<SlaveInteractAnalSexOption>><<SlaveInteractGropeOption>><<SlaveInteractDickGropeOption>><<SlaveInteractAnalGropeOption>><</link>>
 | <<link "Chastity cage">><<set $activeSlave.dickAccessory = "chastity",$activeSlave.choosesOwnChastity = 0>><<replace "#dickAccessory">>$activeSlave.dickAccessory<</replace>><<SlaveInteractSexOption>><<SlaveInteractAnalSexOption>><<SlaveInteractGropeOption>><<SlaveInteractDickGropeOption>><<SlaveInteractAnalGropeOption>><</link>>
 | <<link "Anal chastity belt">><<set $activeSlave.dickAccessory = "anal chastity",$activeSlave.choosesOwnChastity = 0>><<replace "#dickAccessory">>$activeSlave.dickAccessory<<SlaveInteractSexOption>><<SlaveInteractAnalSexOption>><<SlaveInteractGropeOption>><<SlaveInteractDickGropeOption>><<SlaveInteractAnalGropeOption>><</replace>><</link>>
diff --git a/src/uncategorized/slaveSummary.tw b/src/uncategorized/slaveSummary.tw
index f304085ff454d7f976ff481a8c7a5b4f24fdb016..91d6e639ca80fd323e5e5bcc847d7095cf955ab7 100644
--- a/src/uncategorized/slaveSummary.tw
+++ b/src/uncategorized/slaveSummary.tw
@@ -1,8 +1,11 @@
 :: Slave Summary [nobr]
 
-<<set _Pass = passage(), _SL = $slaves.length>>
+<<set _Pass = passage(), _SL = $slaves.length, $assignTo = _Pass>>
 <<for _i = 0;_i < _SL;_i++>>
 <<set _Slave = $slaves[_i]>>
+<<if _Slave.assignment == "be your agent" || _Slave.assignment == "live with your agent">>
+	<<continue>> /* slaves on these assignments should never be visible from facilities */
+<</if>>
 <<switch _Pass>>
 <<case "Main">>
 	<<if _Slave.assignmentVisible != 1>><<continue>><</if>>
@@ -190,7 +193,7 @@
 <<if _Slave.fuckdoll > 0>><<continue>><</if>>
 <<if $Flag == 0>>
 	<<if _Slave.assignment == "get treatment in the clinic">><<continue>><</if>>
-	<<if (_Slave.health < 20) || ($Nurse != 0 && (_Slave.chem > 15 && $clinicUpgradeFilters == 1) || ($bellyImplants == 1 && _Slave.bellyImplant > 100) || (_Slave.preg >= 1 && ($clinicSpeedGestation >= 0 || $slaves[_i].pregControl == "speed up")))>>
+	<<if (_Slave.health < 20) || ($Nurse != 0 && (_Slave.chem > 15 && $clinicUpgradeFilters == 1) || ($bellyImplants == 1 && _Slave.bellyImplant > 100) || (_Slave.preg >= 1 && ($clinicSpeedGestation >= 0 || _Slave.pregControl == "speed up")))>>
 		<br style="clear:both" /><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<SlaveArt _Slave 1>></div><</if>>
 		<<print "[[_Slave.slaveName|Slave Interact][$activeSlave = $slaves["+_i+"]]]">>
 	<<else>>
@@ -540,7 +543,7 @@
 	<</if>>
 <</if>>
 <<case "Matchmaking">>
-	<<if ($slaves[_i].devotion < 100) || ($slaves[_i].relationship != $activeSlave.relationship) || ($slaves[_i].ID == $activeSlave.ID)>><<continue>><</if>>
+	<<if (_Slave.devotion < 100) || (_Slave.relationship != $activeSlave.relationship) || (_Slave.ID == $activeSlave.ID)>><<continue>><</if>>
 	<br style="clear:both" /><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<SlaveArt _Slave 1>></div><</if>>
 	<<print "[[_Slave.slaveName|Slave Interact][$activeSlave = $slaves["+_i+"]]]">>
 <</switch>>
@@ -584,67 +587,67 @@ will
 <<if (_Slave.assignment == "rest") && (_Slave.health >= -20)>>
 	''__@@.lawngreen;rest.@@__''
 <<elseif (_Slave.assignment == "stay confined") && ((_Slave.devotion > 20) || ((_Slave.trust < -20) && (_Slave.devotion >= -20)) || ((_Slave.trust < -50) && (_Slave.devotion >= -50)))>>
-	''__@@.lawngreen;stay confined.@@__''
+	''__@@.lawngreen;stay confined.@@__''<<if _Slave.sentence > 0>> (_Slave.sentence weeks)<</if>>
 <<else>>
-	_Slave.assignment<<if _Slave.sentence > 0>> (_Slave.sentence weeks)<</if>>.
+	<<if _Slave.choosesOwnAssignment == 1>>choose her own assignment for next week<<else>>_Slave.assignment<<if _Slave.sentence > 0>> (_Slave.sentence weeks)<</if>><</if>>.
 <</if>>
 
 <<if ($displayAssignments == 1) && (_Pass == "Main") && (_Slave.ID != $HeadGirl.ID) && (_Slave.ID != $Recruiter.ID) && (_Slave.ID != $Bodyguard.ID)>>
 	<<if _Slave.assignment != "rest">>
-		<<print "[[Rest|Rest Workaround][$i = "+_i+"]]">> |
+		<<print "[[Rest|Rest Workaround][$i = "+_i+"]]">>
 	<<else>>
-		Rest |
+		Rest
 	<</if>>
 	<<if _Slave.assignment != "please you">>
-		<<print "[[Fucktoy|Fucktoy Workaround][$i = "+_i+"]]">> |
+		| <<print "[[Fucktoy|Fucktoy Workaround][$i = "+_i+"]]">>
 	<<else>>
-		Fucktoy |
+		| Fucktoy
 	<</if>>
-	<<if _Slave.fuckdoll == 0>>
-	<<if (_Slave.assignment != "be a servant")>>
-		<<if ((_Slave.devotion >= -20) || ((_Slave.trust < -20) && (_Slave.devotion >= -50)) || (_Slave.trust < -50)) && canWalk(_Slave) && canSee(_Slave)>>
-			<<print "[[House Servant|Servant Workaround][$i = "+_i+"]]">> |
+	<<if _Slave.indentureRestrictions <= 0 && _Slave.breedingMark != 1>>
+		<<if _Slave.assignment != "work a glory hole">>
+			| <<print "[[Gloryhole|Hole Workaround][$i = "+_i+"]]">>
+		<<else>>
+			| Hole
 		<</if>>
-	<<else>>
-		House Servant |
 	<</if>>
-	<<if (_Slave.assignment != "take classes")>>
-		<<if ((_Slave.devotion >= -20) || ((_Slave.trust < -20) && (_Slave.devotion >= -50)) || (_Slave.trust < -50)) && (_Slave.fetish != "mindbroken") && (_Slave.intelligenceImplant != 1)>>
-			<<print "[[Classes|Classes Workaround][$i = "+_i+"]]">> |
+	<<if _Slave.fuckdoll == 0>> /* NON-FUCKDOLL ASSIGNMENTS */
+		<<if (_Slave.assignment != "take classes")>>
+			<<if (_Slave.intelligenceImplant != 1) && ((_Slave.devotion >= -20) || ((_Slave.trust < -20) && (_Slave.devotion >= -50)) || (_Slave.trust < -50)) && (_Slave.fetish != "mindbroken")>>
+				| <<print "[[Classes|Classes Workaround][$i = "+_i+"]]">>
+			<</if>>
+		<<else>>
+			| Classes
 		<</if>>
-	<<else>>
-		Classes |
-	<</if>>
-	<<if (_Slave.assignment != "stay confined")>>
-		<<print "[[Confinement|Confinement Workaround][$i = "+_i+"]]">> |
-	<<else>>
-		Confinement |
-	<</if>>
-	<<if (_Slave.assignment != "whore") && _Slave.breedingMark != 1>>
-		<<print "[[Whore|Whore Workaround][$i = "+_i+"]]">> |
-	<<else>>
-		Whore |
-	<</if>>
-	<<if (_Slave.assignment != "serve the public") && _Slave.breedingMark != 1>>
-		<<print "[[Public Servant|Public Servant Workaround][$i = "+_i+"]]">> |
-	<<else>>
-		Public Servant |
-	<</if>>
-	<<if (_Slave.lactation > 0) || (_Slave.balls > 0)>>
-		<<if (_Slave.assignment != "get milked")>>
-			<<print "[[Milking|Milking Workaround][$i = "+_i+"]]">> |
+		<<if (_Slave.assignment != "be a servant")>>
+			<<if ((_Slave.devotion >= -20) || ((_Slave.trust < -20) && (_Slave.devotion >= -50)) || (_Slave.trust < -50)) && canWalk(_Slave) && canSee(_Slave)>>
+				| <<print "[[House Servant|Servant Workaround][$i = "+_i+"]]">>
+			<</if>>
 		<<else>>
-			Milking |
+			| House Servant
 		<</if>>
-	<</if>>
-	<</if>>
-	<<if _Slave.indentureRestrictions <= 0 && _Slave.breedingMark != 1>>
-		<<if _Slave.assignment != "work a glory hole">>
-			<<print "[[Hole|Hole Workaround][$i = "+_i+"]]">>
+		<<if (_Slave.assignment != "whore") && _Slave.breedingMark != 1>>
+			| <<print "[[Whore|Whore Workaround][$i = "+_i+"]]">>
 		<<else>>
-			Hole
+			| Whore
 		<</if>>
-	<</if>>
+		<<if (_Slave.assignment != "serve the public") && _Slave.breedingMark != 1>>
+			| <<print "[[Public Servant|Public Servant Workaround][$i = "+_i+"]]">>
+		<<else>>
+			| Public Servant
+		<</if>>
+		<<if (_Slave.lactation > 0) || (_Slave.balls > 0)>>
+			<<if (_Slave.assignment != "get milked")>>
+				| <<print "[[Milked|Milking Workaround][$i = "+_i+"]]">>
+			<<else>>
+				| Milked
+			<</if>>
+		<</if>>
+		<<if (_Slave.assignment != "stay confined")>>
+			| <<print "[[Confinement|Confinement Workaround][$i = "+_i+"]]">>
+		<<else>>
+			| Confinement
+		<</if>>
+	<</if>> /* CLOSES FUCKDOLL CHECK */
 <</if>>
 
 <br><<if $seeImages != 1 || $seeSummaryImages != 1 || $imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
@@ -3334,7 +3337,7 @@ _Slave.faceShape face.
 <<case "Clinic">>
 <br><<if $seeImages != 1 || $seeSummaryImages != 1 || $imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
 	<<if $clinicUpgradeScanner == 1>>
-		@@.cyan;Estimated DNA error value: <<print Math.ceil($slaves[_i].chem/10)>>@@
+		@@.cyan;Estimated DNA error value: <<print Math.ceil(_Slave.chem/10)>>@@
 	<</if>>
 <<if $Flag == 0>>
 	<<print "[[Send her to the Clinic|Assign][$i = "+_i+"]]">>
diff --git a/src/utility/assignWidgets.tw b/src/utility/assignWidgets.tw
index 24f72e9f43b68ef25328aec4ae124c84f054afb7..fde7750a3d80cbb659fb4c55c8817cc9694bdd18 100644
--- a/src/utility/assignWidgets.tw
+++ b/src/utility/assignWidgets.tw
@@ -36,15 +36,17 @@
 			<<set $args[0].assignment = "work as a servant",            $args[0].assignmentVisible = 0, $servantsQuartersSlaves++, $ServQiIDs.push({ID: _wID, Index: _wi})>>
 		<<case "rest in the spa" "spa">>
 			<<set $args[0].assignment = "rest in the spa",              $args[0].assignmentVisible = 0, $spaSlaves++, $SpaiIDs.push({ID: _wID, Index: _wi})>>
-		<<case "be the attendant" "be your concubine" "be the dj" "be the madam" "be the milkmaid" "be the nurse" "be the schoolteacher" "be the stewardess" "be the wardeness" "be your agent" "live with your agent">>
+		<<case "be the attendant" "be your concubine" "be the dj" "be the madam" "be the milkmaid" "be the nurse" "be the schoolteacher" "be the stewardess" "be the wardeness">>
 			<<set $args[0].assignment = $args[1],                       $args[0].assignmentVisible = 0>>     /* non-visible leadership roles */
+		<<case "be your agent" "live with your agent">>
+			<<set $args[0].assignment = $args[1],                       $args[0].assignmentVisible = 0,      $args[0].useRulesAssistant = 0>> /* non-visible roles exempt from Rules Assistant */
 		<<case "choose her own job">>
 			<<set $args[0].assignment = $args[1],                       $args[0].choosesOwnAssignment = 1>>  /* removeJob already set assignmentVisible = 1 */
 		<<default>>
 			<<set $args[0].assignment = $args[1]>>                      /* removeJob already set assignmentVisible = 1 and choosesOwnAssignment = 0 */
 	<</switch>>
 
-	<<if _wID == $personalAttention>>
+	<<if _wID == $personalAttention && $args[0].assignmentVisible == 0>>
 		<<if $PC.career == "escort">>
 			<<set $personalAttention = "whoring">>
 		<<elseif $PC.career == "servant">>
@@ -52,6 +54,7 @@
 		<<else>>
 			<<set $personalAttention = "business">>
 		<</if>>
+		$args[0].slaveName no longer has your personal attention; you plan to focus on $personalAttention.
 	<</if>>
 
 	/% Get slaves[_wi] index # %/
@@ -185,7 +188,7 @@
 			<</for>>
 		<<case "be your head girl">>
 			<<set $args[0].assignment = "rest">>
-			<<if $personalAttention == "HG">>
+			<<if $HGSuiteEquality == 0 && $personalAttention == "HG">>
 				<<if $PC.career == "escort">>
 					<<set $personalAttention = "whoring">>
 				<<elseif $PC.career == "servant">>
diff --git a/src/utility/descriptionWidgets.tw b/src/utility/descriptionWidgets.tw
index 1034566c5a86ceb332067fc3e655549fe630ea74..7d286fdcb21e1027aa6df62b77ca9a3117dc3999 100644
--- a/src/utility/descriptionWidgets.tw
+++ b/src/utility/descriptionWidgets.tw
@@ -4594,7 +4594,7 @@ $pronounCap's got a
 <<if ($showClothing == 1) && ($saleDescription == 0)>>
 
 $activeSlave.slaveName is
-<<if ($activeSlave.clothes == "choosing $possessive own clothes")>>
+<<if ($activeSlave.clothes == "choosing her own clothes")>>
 	allowed to choose $possessive own clothes, but hasn't made a selection yet,
 <<else>>
 	wearing $activeSlave.clothes,
@@ -7616,7 +7616,7 @@ $pronounCap has
 		<</if>>
 		<<if ($arcologies[0].FSTransformationFetishist > 20)>>
 			<<if $activeSlave.lips > 70>>
-				<<if $activeSlave.lipsImplant/$activeSlave.lips < 50)>>
+				<<if ($activeSlave.lipsImplant/$activeSlave.lips < 50)>>
 					$possessiveCap lips are huge and @@.red;disgustingly natural@@ for their size.
 				<<else>>
 					$possessiveCap lips are huge and @@.green;obviously implants,@@ as they should be.
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index c3704ede9ccd7e079b3de13abac257daca321085..f7e6a67f36c168cb2063471319a7bb0b17b3ae1d 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -1405,6 +1405,7 @@
 		<<set $SEnunciate = "Th">>
 		<<set $ssEnunciate = "th">>
 		<<set $cEnunciate = "th">>
+		<<set $zEnunciate = "th">>
 	<<else>>
 		<<if def $PC.customTitle>><<set $titleEnunciate = $PC.customTitle>><<elseif $PC.title != 0>><<set $titleEnunciate = "Master">><<else>><<set $titleEnunciate = "Mistress">><</if>>
 		<<if $allowFamilyTitles == 1>>
@@ -1454,6 +1455,7 @@
 		<<set $SEnunciate = "S">>
 		<<set $ssEnunciate = "ss">>
 		<<set $cEnunciate = "c">>
+		<<set $zEnunciate = "z">>
 	<</if>>
 <</widget>>
 <<widget "Master">><<if def $args[0]>><<Enunciate $args[0]>><<else>><<Enunciate $activeSlave>>$titleEnunciate<</if>><</widget>>
@@ -1462,6 +1464,7 @@
 <<widget "S">>$SEnunciate<</widget>>
 <<widget "ss">>$ssEnunciate<</widget>>
 <<widget "c">>$cEnunciate<</widget>>
+<<widget "z">>$zEnunciate<</widget>>
 
 /%
  Call as <<SoftenBehavioralFlaw>>
@@ -2355,6 +2358,7 @@ Call as <<SlaveSort [$slaves]>>
 		| <<link "Dick">><<set $activeSlave.toyHole = "dick">><<replace "#hole">>$activeSlave.toyHole<</replace>><</link>>
 		<</if>>
 		| <<link "No Preference">><<set $activeSlave.toyHole = "all her holes">><<replace "#hole">>$activeSlave.toyHole<</replace>><</link>>
+		<br>
 	<</if>>
 <</replace>>