diff --git a/src/js/futureSocietyJS.js b/src/js/futureSocietyJS.js
index 8f9e1b1d727ba2f02ca2f20f5ba4d7948e0e4ff9..c4d7e32c52309ea33f52e8f22d8acc637481e339 100644
--- a/src/js/futureSocietyJS.js
+++ b/src/js/futureSocietyJS.js
@@ -33,8 +33,12 @@ window.FutureSocieties = (function() {
 		StatuesqueGlorification: "FSStatuesqueGlorification"
 	};
 	const SocietyList = [...new Set(Object.keys(FSString2Property).map(key => FSString2Property[key]))]; // This returns an array containing the unique values of FSString2Property. E.g. "FSSupremacist" and "FSSubjugationist"
+	const NPCSocietyList = [ "FSCummunism", "FSIncestFetishist" ]; // NPC arcologies may use these FSes, but the PC can't
 
 	return {
+		activeCount: activeCount,
+		applyBroadProgress: applyBroadProgress,
+		overflowToInfluence: overflowToInfluence,
 		remove: removeFS,
 		DecorationCleanup: DecorationCleanup,
 		Change: FSChange,
@@ -42,6 +46,37 @@ window.FutureSocieties = (function() {
 		HighestDecoration: FSHighestDecoration
 	};
 
+	// helper function, not callable externally
+	function activeFSes(arcologyID) {
+		let isSet = (fs) => V.arcologies[arcologyID][fs] !== "unset";
+		const npcFSes = arcologyID !== 0 ? NPCSocietyList.filter(isSet) : [];
+		return SocietyList.filter(isSet).concat(npcFSes);
+	}
+
+	// call as FutureSocieties.activeCount(arcologyID)
+	function activeCount(arcologyID) {
+		return activeFSes(arcologyID).length;
+	}
+
+	// call as FutureSocieties.applyBroadProgress(arcologyID, progress)
+	function applyBroadProgress(arcologyID, progress) {
+		for (const fs of activeFSes(arcologyID)) {
+			V.arcologies[arcologyID][fs] += progress;
+		}
+	}
+
+	// call as FutureSocieties.overflowToInfluence(arcologyID)
+	// converts excess progress into influence bonus
+	function overflowToInfluence(arcologyID) {
+		const arcology = V.arcologies[arcologyID];
+		for (const fs of activeFSes(arcologyID)) {
+			if (arcology[fs] > V.FSLockinLevel) {
+				arcology.influenceBonus += arcology[fs] - V.FSLockinLevel;
+				arcology[fs] = V.FSLockinLevel;
+			}
+		}
+	}
+
 	// call as FutureSocieties.remove(FS)
 	// FS must be a string (e.g. "FSPaternalist" or "FSDegradationist").
 	function removeFS(FS) {
diff --git a/src/uncategorized/fsDevelopments.tw b/src/uncategorized/fsDevelopments.tw
index 66ba98f708a43fba1ab5b091c5d411810f28e1a2..aa72630b77093dfdd83230bf427aea3005b96490 100644
--- a/src/uncategorized/fsDevelopments.tw
+++ b/src/uncategorized/fsDevelopments.tw
@@ -30,77 +30,7 @@
 <</if>>
 
 /* Count adopted FS */
-<<set _societies = 0>>
-<<if $arcologies[0].FSSupremacist != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSSubjugationist != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSGenderRadicalist != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSGenderFundamentalist != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSPaternalist != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSDegradationist != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSIntellectualDependency != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSSlaveProfessionalism != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSBodyPurist != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSTransformationFetishist != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSAssetExpansionist != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSPastoralist != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSPhysicalIdealist != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSHedonisticDecadence != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSPetiteAdmiration != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSStatuesqueGlorification != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSMaturityPreferentialist != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSYouthPreferentialist != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSChattelReligionist != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSRomanRevivalist != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSAztecRevivalist != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSEgyptianRevivalist != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSEdoRevivalist != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSArabianRevivalist != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSChineseRevivalist != "unset">>
-	<<set _societies++>>
-<</if>>
-<<if $arcologies[0].FSRepopulationFocus != "unset">>
-	<<set _societies++>>
-<<elseif $arcologies[0].FSRestart != "unset">>
-	<<set _societies++>>
-<</if>>
+<<set _societies = FutureSocieties.activeCount(0)>>
 
 /* Spending, terrain, rep effects */
 <<set _broadProgress = 0>>
@@ -237,76 +167,7 @@
 	<</switch>>
 <</if>> /*closes FS count changes */
 <<if _broadProgress != 0>>
-	<<if $arcologies[0].FSSupremacist != "unset">>
-		<<set $arcologies[0].FSSupremacist += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSSubjugationist != "unset">>
-		<<set $arcologies[0].FSSubjugationist += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSGenderRadicalist != "unset">>
-		<<set $arcologies[0].FSGenderRadicalist += _broadProgress>>
-	<<elseif $arcologies[0].FSGenderFundamentalist != "unset">>
-		<<set $arcologies[0].FSGenderFundamentalist += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSPaternalist != "unset">>
-		<<set $arcologies[0].FSPaternalist += _broadProgress>>
-	<<elseif $arcologies[0].FSDegradationist != "unset">>
-		<<set $arcologies[0].FSDegradationist += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSIntellectualDependency != "unset">>
-		<<set $arcologies[0].FSIntellectualDependency += _broadProgress>>
-	<<elseif $arcologies[0].FSSlaveProfessionalism != "unset">>
-		<<set $arcologies[0].FSSlaveProfessionalism += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSBodyPurist != "unset">>
-		<<set $arcologies[0].FSBodyPurist += _broadProgress>>
-	<<elseif $arcologies[0].FSTransformationFetishist != "unset">>
-		<<set $arcologies[0].FSTransformationFetishist += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
-		<<set $arcologies[0].FSSlimnessEnthusiast += _broadProgress>>
-	<<elseif $arcologies[0].FSAssetExpansionist != "unset">>
-		<<set $arcologies[0].FSAssetExpansionist += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSPastoralist != "unset">>
-		<<set $arcologies[0].FSPastoralist += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSPhysicalIdealist != "unset">>
-		<<set $arcologies[0].FSPhysicalIdealist += _broadProgress>>
-	<<elseif $arcologies[0].FSHedonisticDecadence != "unset">>
-		<<set $arcologies[0].FSHedonisticDecadence += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSMaturityPreferentialist != "unset">>
-		<<set $arcologies[0].FSMaturityPreferentialist += _broadProgress>>
-	<<elseif $arcologies[0].FSYouthPreferentialist != "unset">>
-		<<set $arcologies[0].FSYouthPreferentialist += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSPetiteAdmiration != "unset">>
-		<<set $arcologies[0].FSPetiteAdmiration += _broadProgress>>
-	<<elseif $arcologies[0].FSStatuesqueGlorification != "unset">>
-		<<set $arcologies[0].FSStatuesqueGlorification += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSChattelReligionist != "unset">>
-		<<set $arcologies[0].FSChattelReligionist += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSRomanRevivalist != "unset">>
-		<<set $arcologies[0].FSRomanRevivalist += _broadProgress>>
-	<<elseif $arcologies[0].FSAztecRevivalist != "unset">>
-		<<set $arcologies[0].FSAztecRevivalist += _broadProgress>>
-	<<elseif $arcologies[0].FSEgyptianRevivalist != "unset">>
-		<<set $arcologies[0].FSEgyptianRevivalist += _broadProgress>>
-	<<elseif $arcologies[0].FSEdoRevivalist != "unset">>
-		<<set $arcologies[0].FSEdoRevivalist += _broadProgress>>
-	<<elseif $arcologies[0].FSArabianRevivalist != "unset">>
-		<<set $arcologies[0].FSArabianRevivalist += _broadProgress>>
-	<<elseif $arcologies[0].FSChineseRevivalist != "unset">>
-		<<set $arcologies[0].FSChineseRevivalist += _broadProgress>>
-	<</if>>
-	<<if $arcologies[0].FSRepopulationFocus != "unset">>
-		<<set $arcologies[0].FSRepopulationFocus += _broadProgress>>
-	<<elseif $arcologies[0].FSRestart != "unset">>
-		<<set $arcologies[0].FSRestart += _broadProgress>>
-	<</if>>
+	<<run FutureSocieties.applyBroadProgress(0, _broadProgress)>>
 <</if>>
 
 <<if $secExpEnabled == 1>>
@@ -636,106 +497,7 @@
 <</if>>
 
 /* Progress overflow into influence */
-<<if $arcologies[0].FSSupremacist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSSupremacist - $FSLockinLevel>>
-	<<set $arcologies[0].FSSupremacist = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSSubjugationist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSSubjugationist - $FSLockinLevel>>
-	<<set $arcologies[0].FSSubjugationist = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSGenderRadicalist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSGenderRadicalist - $FSLockinLevel>>
-	<<set $arcologies[0].FSGenderRadicalist = $FSLockinLevel>>
-<<elseif $arcologies[0].FSGenderFundamentalist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSGenderFundamentalist - $FSLockinLevel>>
-	<<set $arcologies[0].FSGenderFundamentalist = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSPaternalist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSPaternalist - $FSLockinLevel>>
-	<<set $arcologies[0].FSPaternalist = $FSLockinLevel>>
-<<elseif $arcologies[0].FSPaternalist != "unset">>
-	<<set $arcologies[0].FSPaternalist += _broadProgress>>
-<<elseif $arcologies[0].FSDegradationist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSDegradationist - $FSLockinLevel>>
-	<<set $arcologies[0].FSDegradationist = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSIntellectualDependency > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSIntellectualDependency - $FSLockinLevel>>
-	<<set $arcologies[0].FSIntellectualDependency = $FSLockinLevel>>
-<<elseif $arcologies[0].FSSlaveProfessionalism > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSSlaveProfessionalism - $FSLockinLevel>>
-	<<set $arcologies[0].FSSlaveProfessionalism = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSBodyPurist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSBodyPurist - $FSLockinLevel>>
-	<<set $arcologies[0].FSBodyPurist = $FSLockinLevel>>
-<<elseif $arcologies[0].FSTransformationFetishist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSTransformationFetishist - $FSLockinLevel>>
-	<<set $arcologies[0].FSTransformationFetishist = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSPastoralist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSPastoralist - $FSLockinLevel>>
-	<<set $arcologies[0].FSPastoralist = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSPhysicalIdealist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSPhysicalIdealist - $FSLockinLevel>>
-	<<set $arcologies[0].FSPhysicalIdealist = $FSLockinLevel>>
-<<elseif $arcologies[0].FSHedonisticDecadence > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSHedonisticDecadence - $FSLockinLevel>>
-	<<set $arcologies[0].FSHedonisticDecadence = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSMaturityPreferentialist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSMaturityPreferentialist - $FSLockinLevel>>
-	<<set $arcologies[0].FSMaturityPreferentialist = $FSLockinLevel>>
-<<elseif $arcologies[0].FSYouthPreferentialist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSYouthPreferentialist - $FSLockinLevel>>
-	<<set $arcologies[0].FSYouthPreferentialist = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSPetiteAdmiration > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSPetiteAdmiration - $FSLockinLevel>>
-	<<set $arcologies[0].FSPetiteAdmiration = $FSLockinLevel>>
-<<elseif $arcologies[0].FSStatuesqueGlorification > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSStatuesqueGlorification - $FSLockinLevel>>
-	<<set $arcologies[0].FSStatuesqueGlorification = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSSlimnessEnthusiast > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSSlimnessEnthusiast - $FSLockinLevel>>
-	<<set $arcologies[0].FSSlimnessEnthusiast = $FSLockinLevel>>
-<<elseif $arcologies[0].FSAssetExpansionist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSAssetExpansionist - $FSLockinLevel>>
-	<<set $arcologies[0].FSAssetExpansionist = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSChattelReligionist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSChattelReligionist - $FSLockinLevel>>
-	<<set $arcologies[0].FSChattelReligionist = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSRomanRevivalist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSRomanRevivalist - $FSLockinLevel>>
-	<<set $arcologies[0].FSRomanRevivalist = $FSLockinLevel>>
-<<elseif $arcologies[0].FSAztecRevivalist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSAztecRevivalist - $FSLockinLevel>>
-	<<set $arcologies[0].FSAztecRevivalist = $FSLockinLevel>>
-<<elseif $arcologies[0].FSEgyptianRevivalist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSEgyptianRevivalist - $FSLockinLevel>>
-	<<set $arcologies[0].FSEgyptianRevivalist = $FSLockinLevel>>
-<<elseif $arcologies[0].FSEdoRevivalist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSEdoRevivalist - $FSLockinLevel>>
-	<<set $arcologies[0].FSEdoRevivalist = $FSLockinLevel>>
-<<elseif $arcologies[0].FSArabianRevivalist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSArabianRevivalist - $FSLockinLevel>>
-	<<set $arcologies[0].FSArabianRevivalist = $FSLockinLevel>>
-<<elseif $arcologies[0].FSChineseRevivalist > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSChineseRevivalist - $FSLockinLevel>>
-	<<set $arcologies[0].FSChineseRevivalist = $FSLockinLevel>>
-<</if>>
-<<if $arcologies[0].FSRepopulationFocus > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSRepopulationFocus - $FSLockinLevel>>
-	<<set $arcologies[0].FSRepopulationFocus = $FSLockinLevel>>
-<<elseif $arcologies[0].FSRestart > $FSLockinLevel>>
-	<<set $arcologies[0].influenceBonus += $arcologies[0].FSRestart - $FSLockinLevel>>
-	<<set $arcologies[0].FSRestart = $FSLockinLevel>>
-<</if>>
+<<run FutureSocieties.overflowToInfluence(0)>>
 
 /* warm up policy influence */
 <<if $arcologies[0].FSEgyptianRevivalistIncestPolicy == 1 && $arcologies[0].FSEgyptianRevivalistInterest < 26>>
diff --git a/src/uncategorized/neighborsDevelopment.tw b/src/uncategorized/neighborsDevelopment.tw
index a5768bd73cdc10db8192ceae5df24cbc247a9acf..ad12e9105429aa45cee7000aa79a7dc03c718cb8 100644
--- a/src/uncategorized/neighborsDevelopment.tw
+++ b/src/uncategorized/neighborsDevelopment.tw
@@ -634,7 +634,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 
 /* FUTURE SOCIETY PROGRESS */
 
-<<set _societiesAdopted = 0>>
+<<set _societiesAdopted = FutureSocieties.activeCount($i)>>
 <<switch $arcologies[$i].government>>
 <<case "elected officials">>
 	<<set $efficiency = random(-2,2)>>
@@ -664,11 +664,10 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<<set _FSCrossThresh += 5>>
 <</if>>
 
+<<if $arcologies[$i].direction != 0>>
+	<<run FutureSocieties.applyBroadProgress($i, $efficiency)>>
+<</if>>
 <<if $arcologies[$i].FSSupremacist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSSupremacist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if ($arcologies[$j].FSSupremacist > $arcologies[$i].FSSupremacist + _FSCrossThresh) && ($arcologies[$j].FSSupremacistRace == $arcologies[$i].FSSupremacistRace)>>
@@ -682,10 +681,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSSupremacist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSSupremacist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSSupremacist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Racial Supremacy for $arcologies[$i].FSSupremacistRace people has reached stability and acceptance there. The arcology has been renamed
 				<<switch $arcologies[$i].FSSupremacistRace>>
 				<<case "white">>
@@ -732,10 +728,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSSubjugationist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSSubjugationist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if ($arcologies[$j].FSSubjugationist > $arcologies[$i].FSSubjugationist + _FSCrossThresh) && ($arcologies[$j].FSSubjugationistRace == $arcologies[$i].FSSubjugationistRace)>>
@@ -749,10 +741,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSSubjugationist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSSubjugationist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSSubjugationist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Racial Subjugationism of $arcologies[$i].FSSubjugationistRace people has reached stability and acceptance there. The arcology has been renamed
 				<<switch $arcologies[$i].FSSubjugationistRace>>
 				<<case "white">>
@@ -799,10 +788,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSRepopulationFocus != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSRepopulationFocus += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSRepopulationFocus > $arcologies[$i].FSRepopulationFocus + _FSCrossThresh>>
@@ -816,10 +801,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSRepopulationFocus >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSRepopulationFocus - $FSLockinLevel>>
-			<<set $arcologies[$i].FSRepopulationFocus = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Repopulationism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name to setup.ArcologyNamesRepopulationist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -847,10 +829,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSRestart != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSRestart += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSRestart > $arcologies[$i].FSRestart + _FSCrossThresh>>
@@ -864,10 +842,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSRestart >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSRestart - $FSLockinLevel>>
-			<<set $arcologies[$i].FSRestart = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				<<set $arcologies[$i].FSRestartResearch = 1>>
 				Eugenics has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesEugenics.random()>>
@@ -898,10 +873,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSGenderRadicalist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSGenderRadicalist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSGenderRadicalist > $arcologies[$i].FSGenderRadicalist + _FSCrossThresh>>
@@ -915,10 +886,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSGenderRadicalist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSGenderRadicalist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSGenderRadicalist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				<<set $arcologies[$i].FSGenderRadicalistResearch = 1>>
 				Gender Radicalism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesGenderRadicalist.random()>>
@@ -953,10 +921,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSGenderFundamentalist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSGenderFundamentalist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSGenderFundamentalist > $arcologies[$i].FSGenderFundamentalist + _FSCrossThresh>>
@@ -970,10 +934,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSGenderFundamentalist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSGenderFundamentalist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSGenderFundamentalist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Gender Fundamentalism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesGenderFundamentalist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -995,10 +956,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSPaternalist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSPaternalist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSPaternalist > $arcologies[$i].FSPaternalist + _FSCrossThresh>>
@@ -1012,10 +969,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSPaternalist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSPaternalist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSPaternalist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Paternalism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesPaternalist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1044,10 +998,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSDegradationist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSDegradationist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSDegradationist > $arcologies[$i].FSDegradationist + _FSCrossThresh>>
@@ -1061,10 +1011,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSDegradationist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSDegradationist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSDegradationist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Degradationism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesDegradationist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1095,10 +1042,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSIntellectualDependency != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSIntellectualDependency += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSIntellectualDependency > $arcologies[$i].FSIntellectualDependency + _FSCrossThresh>>
@@ -1112,10 +1055,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSIntellectualDependency >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSIntellectualDependency - $FSLockinLevel>>
-			<<set $arcologies[$i].FSIntellectualDependency = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Intellectual Dependency has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesIntellectualDependency.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1139,10 +1079,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSSlaveProfessionalism != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSSlaveProfessionalism += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSSlaveProfessionalism > $arcologies[$i].FSSlaveProfessionalism + _FSCrossThresh>>
@@ -1156,10 +1092,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSSlaveProfessionalism >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSSlaveProfessionalism - $FSLockinLevel>>
-			<<set $arcologies[$i].FSSlaveProfessionalism = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				<<set $arcologies[$i].FSSlaveProfessionalismResearch = 1>>
 				Slave Professionalism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesSlaveProfessionalism.random()>>
@@ -1200,10 +1133,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSBodyPurist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSBodyPurist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSBodyPurist > $arcologies[$i].FSBodyPurist + _FSCrossThresh>>
@@ -1217,10 +1146,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSBodyPurist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSBodyPurist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSBodyPurist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Body Purism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesBodyPurist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1242,10 +1168,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSTransformationFetishist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSTransformationFetishist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSTransformationFetishist > $arcologies[$i].FSTransformationFetishist + _FSCrossThresh>>
@@ -1259,10 +1181,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSTransformationFetishist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSTransformationFetishist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSTransformationFetishist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				<<set $arcologies[$i].FSTransformationFetishistResearch = 1>>
 				Transformation Fetishism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesTransformationFetishist.random()>>
@@ -1289,10 +1208,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSYouthPreferentialist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSYouthPreferentialist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSYouthPreferentialist > $arcologies[$i].FSYouthPreferentialist + _FSCrossThresh>>
@@ -1306,10 +1221,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSYouthPreferentialist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSYouthPreferentialist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSYouthPreferentialist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Youth Preferentialism has reached stability and acceptance there. The arcology has been renamed
 				<<if $pedo_mode == 1 || $minimumSlaveAge < 6>>
 					<<set $arcologies[$i].name = setup.ArcologyNamesYouthPreferentialistLow.random()>>
@@ -1336,10 +1248,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSMaturityPreferentialist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSMaturityPreferentialist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSMaturityPreferentialist > $arcologies[$i].FSMaturityPreferentialist + _FSCrossThresh>>
@@ -1353,10 +1261,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSMaturityPreferentialist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSMaturityPreferentialist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSMaturityPreferentialist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Maturity Preferentialism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesMaturityPreferentialist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1378,10 +1283,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSPetiteAdmiration != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSPetiteAdmiration += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSPetiteAdmiration > $arcologies[$i].FSPetiteAdmiration + _FSCrossThresh>>
@@ -1395,10 +1296,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSPetiteAdmiration >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSPetiteAdmiration - $FSLockinLevel>>
-			<<set $arcologies[$i].FSPetiteAdmiration = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Petite Admiration has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesPetiteAdmiration.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1422,10 +1320,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSStatuesqueGlorification != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSStatuesqueGlorification += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSStatuesqueGlorification > $arcologies[$i].FSStatuesqueGlorification + _FSCrossThresh>>
@@ -1439,10 +1333,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSStatuesqueGlorification >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSStatuesqueGlorification - $FSLockinLevel>>
-			<<set $arcologies[$i].FSStatuesqueGlorification = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Statuesque Glorification has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesStatuesqueGlorification.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1468,10 +1359,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSSlimnessEnthusiast != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSSlimnessEnthusiast += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSSlimnessEnthusiast > $arcologies[$i].FSSlimnessEnthusiast + _FSCrossThresh>>
@@ -1485,10 +1372,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSSlimnessEnthusiast >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSSlimnessEnthusiast - $FSLockinLevel>>
-			<<set $arcologies[$i].FSSlimnessEnthusiast = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Slimness Enthusiasm has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesSlimnessEnthusiast.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1511,10 +1395,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSAssetExpansionist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSAssetExpansionist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSAssetExpansionist > $arcologies[$i].FSAssetExpansionist + _FSCrossThresh>>
@@ -1528,10 +1408,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSAssetExpansionist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSAssetExpansionist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSAssetExpansionist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				<<set $arcologies[$i].FSAssetExpansionistResearch = 1>>
 				Asset Expansionism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesAssetExpansionist.random()>>
@@ -1562,10 +1439,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSPastoralist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSPastoralist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSPastoralist > $arcologies[$i].FSPastoralist + _FSCrossThresh>>
@@ -1576,10 +1449,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSPastoralist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSPastoralist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSPastoralist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Pastoralism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesPastoralist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1603,10 +1473,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSCummunism != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSCummunism += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSCummunism > $arcologies[$i].FSCummunism + _FSCrossThresh>>
@@ -1620,10 +1486,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSCummunism >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSCummunism - $FSLockinLevel>>
-			<<set $arcologies[$i].FSCummunism = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Cummunism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesCummunism.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1653,10 +1516,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSPhysicalIdealist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSPhysicalIdealist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSPhysicalIdealist > $arcologies[$i].FSPhysicalIdealist + _FSCrossThresh>>
@@ -1670,10 +1529,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSPhysicalIdealist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSPhysicalIdealist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSPhysicalIdealist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Physical Idealism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesPhysicalIdealist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1701,10 +1557,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSHedonisticDecadence != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSHedonisticDecadence += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSHedonisticDecadence > $arcologies[$i].FSHedonisticDecadence + _FSCrossThresh>>
@@ -1718,10 +1570,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSHedonisticDecadence >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSHedonisticDecadence - $FSLockinLevel>>
-			<<set $arcologies[$i].FSHedonisticDecadence = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				<<set $arcologies[$i].FSHedonisticDecadenceResearch = 1>>
 				Decadent Hedonism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesHedonisticDecadence.random()>>
@@ -1748,10 +1597,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSIncestFetishist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSIncestFetishist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSIncestFetishist > $arcologies[$i].FSIncestFetishist + _FSCrossThresh>>
@@ -1762,10 +1607,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSIncestFetishist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSIncestFetishist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSIncestFetishist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Incest Fetishism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesIncestFetishist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1787,10 +1629,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSChattelReligionist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSChattelReligionist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSChattelReligionist > $arcologies[$i].FSChattelReligionist + _FSCrossThresh>>
@@ -1801,10 +1639,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSChattelReligionist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSChattelReligionist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSChattelReligionist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Chattel Religionism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesChattelReligionist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1830,10 +1665,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 <</if>>
 
 <<if $arcologies[$i].FSRomanRevivalist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSRomanRevivalist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSRomanRevivalist > $arcologies[$i].FSRomanRevivalist + _FSCrossThresh>>
@@ -1859,10 +1690,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSRomanRevivalist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSRomanRevivalist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSRomanRevivalist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Roman Revivalism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesRomanRevivalist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1882,10 +1710,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSAztecRevivalist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSAztecRevivalist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSAztecRevivalist > $arcologies[$i].FSAztecRevivalist + _FSCrossThresh>>
@@ -1911,10 +1735,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSAztecRevivalist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSAztecRevivalist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSAztecRevivalist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Aztec Revivalism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesAztecRevivalist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1934,10 +1755,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSEgyptianRevivalist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSEgyptianRevivalist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSEgyptianRevivalist > $arcologies[$i].FSEgyptianRevivalist + _FSCrossThresh>>
@@ -1963,10 +1780,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSEgyptianRevivalist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSEgyptianRevivalist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSEgyptianRevivalist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Egyptian Revivalism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesEgyptianRevivalist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -1986,10 +1800,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSEdoRevivalist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSEdoRevivalist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSEdoRevivalist > $arcologies[$i].FSEdoRevivalist + _FSCrossThresh>>
@@ -2015,10 +1825,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSEdoRevivalist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSEdoRevivalist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSEdoRevivalist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Edo Revivalism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesEdoRevivalist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -2038,10 +1845,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSArabianRevivalist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSArabianRevivalist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSArabianRevivalist > $arcologies[$i].FSArabianRevivalist + _FSCrossThresh>>
@@ -2067,10 +1870,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSArabianRevivalist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSArabianRevivalist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSArabianRevivalist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Arabian Revivalism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesArabianRevivalist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -2094,10 +1894,6 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <<elseif $arcologies[$i].FSChineseRevivalist != "unset">>
-	<<set _societiesAdopted += 1>>
-	<<if $arcologies[$i].direction != 0>>
-		<<set $arcologies[$i].FSChineseRevivalist += $efficiency>>
-	<</if>>
 	<<for $j = 0; $j < $arcologies.length; $j++>>
 		<<if $arcologies[$i].direction != $arcologies[$j].direction>>
 			<<if $arcologies[$j].FSChineseRevivalist > $arcologies[$i].FSChineseRevivalist + _FSCrossThresh>>
@@ -2123,10 +1919,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 	<</for>>
 	<<if $arcologies[$i].direction != 0>>
 		<<if $arcologies[$i].FSChineseRevivalist >= $FSLockinLevel>>
-			<<set $arcologies[$i].influenceBonus += $arcologies[$i].FSChineseRevivalist - $FSLockinLevel>>
-			<<set $arcologies[$i].FSChineseRevivalist = $FSLockinLevel>>
-			<<set $toSearch = $arcologies[$i].name>>
-			<<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
+			<<if ($arcologies[$i].name.indexOf("Arcology") != -1) && (random(0,2) == 0)>>
 				Chinese Revivalism has reached stability and acceptance there. The arcology has been renamed
 				<<set $arcologies[$i].name = setup.ArcologyNamesChineseRevivalist.random()>>
 				'' $arcologies[$i].name'' to mark the occasion.
@@ -2146,6 +1939,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh
 		<</if>>
 	<</if>>
 <</if>>
+<<run FutureSocieties.overflowToInfluence($i)>>
 
 /* FUTURE SOCIETY ADOPTION */
 
diff --git a/src/uncategorized/neighborsFSAdoption.tw b/src/uncategorized/neighborsFSAdoption.tw
index 0ec292191497c1bcb0158481af06a252d5b27fd1..640fe8b230458efc44a994e03eac08acdd95655c 100644
--- a/src/uncategorized/neighborsFSAdoption.tw
+++ b/src/uncategorized/neighborsFSAdoption.tw
@@ -496,74 +496,40 @@ societal development.
 		<</if>>
 	<</if>>
 <</if>>
-<<if $familyTesting == 1>>
-	<<if ($arcologies[$i].FSRomanRevivalist == "unset")>>
-	<<if ($arcologies[$i].FSAztecRevivalist == "unset")>>
-	<<if ($arcologies[$i].FSEgyptianRevivalist == "unset")>>
-	<<if ($arcologies[$i].FSEdoRevivalist == "unset")>>
-	<<if ($arcologies[$i].FSArabianRevivalist == "unset")>>
-	<<if ($arcologies[$i].FSChineseRevivalist == "unset")>>
-		<<if ($leaders[$j].relationshipTarget != 0)>>
-			<<set _lover = $slaves.findIndex(function(s) { return areRelated(s, $leaders[$j]) && $leaders[$j].relationshipTarget == s.ID; })>>
-			<<if _lover != -1>>
-				Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Egyptian Revivalism,@@ since $he's already part of a gloriously incestuous relationship.
-				<<set $arcologies[$i].FSEgyptianRevivalist = 5>><<break>>
-			<</if>>
-		<<elseif $leaders[$j].nationality == "Chinese">>
-			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Chinese Revivalism,@@ since $he's Chinese $himself and can claim high honor in such a society.
-			<<set $arcologies[$i].FSChineseRevivalist = 5>><<break>>
-		<<elseif $leaders[$j].nationality == "Japanese">>
-			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Edo Revivalism,@@ since $he's Japanese $himself and can claim high honor in such a society.
-			<<set $arcologies[$i].FSEdoRevivalist = 5>><<break>>
-		<<elseif $leaders[$j].nationality == "Mexican">>
-			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Aztec Revivalism,@@ since $he's Mexican $himself and can claim high honor in such a society.
-			<<set $arcologies[$i].FSAztecRevivalist = 5>><<break>>
-		<<elseif $leaders[$j].behavioralQuirk == "confident">>
-			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Roman Revivalism,@@ since it appeals to $his confident, patrician nature.
-			<<set $arcologies[$i].FSRomanRevivalist = 5>><<break>>
-		<<elseif $leaders[$j].fetish == "dom">>
-			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Arabian Revivalism,@@ since $he's sexually dominant and quite likes the idea of overseeing slave bazaars.
-			<<set $arcologies[$i].FSArabianRevivalist = 5>><<break>>
-		<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-<<else>>
-	<<if ($arcologies[$i].FSRomanRevivalist == "unset")>>
-	<<if ($arcologies[$i].FSAztecRevivalist == "unset")>>
-	<<if ($arcologies[$i].FSEgyptianRevivalist == "unset")>>
-	<<if ($arcologies[$i].FSEdoRevivalist == "unset")>>
-	<<if ($arcologies[$i].FSArabianRevivalist == "unset")>>
-	<<if ($arcologies[$i].FSChineseRevivalist == "unset")>>
-		<<if ($leaders[$j].relationshipTarget != 0) && ($leaders[$j].relationshipTarget == $leaders[$j].relationTarget)>>
+<<if ($arcologies[$i].FSRomanRevivalist == "unset")>>
+<<if ($arcologies[$i].FSAztecRevivalist == "unset")>>
+<<if ($arcologies[$i].FSEgyptianRevivalist == "unset")>>
+<<if ($arcologies[$i].FSEdoRevivalist == "unset")>>
+<<if ($arcologies[$i].FSArabianRevivalist == "unset")>>
+<<if ($arcologies[$i].FSChineseRevivalist == "unset")>>
+	<<if ($leaders[$j].relationshipTarget != 0)>>
+		<<set _lover = getSlave($leaders[$j].relationshipTarget)>>
+		<<if (def _lover) && areRelated($leaders[$j], _lover)>>
 			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Egyptian Revivalism,@@ since $he's already part of a gloriously incestuous relationship.
 			<<set $arcologies[$i].FSEgyptianRevivalist = 5>><<break>>
-		<<elseif $leaders[$j].nationality == "Chinese">>
-			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Chinese Revivalism,@@ since $he's Chinese $himself and can claim high honor in such a society.
-			<<set $arcologies[$i].FSChineseRevivalist = 5>><<break>>
-		<<elseif $leaders[$j].nationality == "Japanese">>
-			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Edo Revivalism,@@ since $he's Japanese $himself and can claim high honor in such a society.
-			<<set $arcologies[$i].FSEdoRevivalist = 5>><<break>>
-		<<elseif $leaders[$j].nationality == "Mexican">>
-			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Aztec Revivalism,@@ since $he's Mexican $himself and can claim high honor in such a society.
-			<<set $arcologies[$i].FSAztecRevivalist = 5>><<break>>
-		<<elseif $leaders[$j].behavioralQuirk == "confident">>
-			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Roman Revivalism,@@ since it appeals to $his confident, patrician nature.
-			<<set $arcologies[$i].FSRomanRevivalist = 5>><<break>>
-		<<elseif $leaders[$j].fetish == "dom">>
-			Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Arabian Revivalism,@@ since $he's sexually dominant and quite likes the idea of overseeing slave bazaars.
-			<<set $arcologies[$i].FSArabianRevivalist = 5>><<break>>
 		<</if>>
+	<<elseif $leaders[$j].nationality == "Chinese">>
+		Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Chinese Revivalism,@@ since $he's Chinese $himself and can claim high honor in such a society.
+		<<set $arcologies[$i].FSChineseRevivalist = 5>><<break>>
+	<<elseif $leaders[$j].nationality == "Japanese">>
+		Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Edo Revivalism,@@ since $he's Japanese $himself and can claim high honor in such a society.
+		<<set $arcologies[$i].FSEdoRevivalist = 5>><<break>>
+	<<elseif $leaders[$j].nationality == "Mexican">>
+		Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Aztec Revivalism,@@ since $he's Mexican $himself and can claim high honor in such a society.
+		<<set $arcologies[$i].FSAztecRevivalist = 5>><<break>>
+	<<elseif $leaders[$j].behavioralQuirk == "confident">>
+		Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Roman Revivalism,@@ since it appeals to $his confident, patrician nature.
+		<<set $arcologies[$i].FSRomanRevivalist = 5>><<break>>
+	<<elseif $leaders[$j].fetish == "dom">>
+		Your agent @@.pink;$leaders[$j].slaveName@@ successfully pushes it to @@.yellow;adopt Arabian Revivalism,@@ since $he's sexually dominant and quite likes the idea of overseeing slave bazaars.
+		<<set $arcologies[$i].FSArabianRevivalist = 5>><<break>>
 	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-<</if>> /* closes extended family mode */
+<</if>>
+<</if>>
+<</if>>
+<</if>>
+<</if>>
+<</if>>
 
 <<set _adopted = 0>> /* did not break out of the for loop, so no FS was adopted */
 <</if>>