diff --git a/src/SecExp/SecExpBackwardCompatibility.tw b/src/SecExp/SecExpBackwardCompatibility.tw
index 3ee639f803ff010ce945534765d2165f8925cbd5..1a84a94631cb15b3dfc87a2ed7ace04b0ea7efba 100644
--- a/src/SecExp/SecExpBackwardCompatibility.tw
+++ b/src/SecExp/SecExpBackwardCompatibility.tw
@@ -198,6 +198,12 @@
 <<if ndef $sunTzu>>
 <<set $sunTzu = 0>>
 <</if>>
+<<if ndef $mamluks>>
+<<set $mamluks = 0>>
+<</if>>
+<<if ndef $pharaonTradition>>
+<<set $pharaonTradition = 0>>
+<</if>>
 <<if ndef $weaponsLaw || $wasToggledBefore == 1>>
 <<set $weaponsLaw = 3>>
 <</if>>
diff --git a/src/SecExp/edicts.tw b/src/SecExp/edicts.tw
index 50d7371d1090d1ad2f9fac3ef41a3211ab938ffc..7d527a042c15abe48b4e9182156e5303d854be24 100644
--- a/src/SecExp/edicts.tw
+++ b/src/SecExp/edicts.tw
@@ -190,7 +190,7 @@
 	<</if>>
 	
 	<<if $pharaonTradition == 1>>
-		<br>''@@.lime;Legionaries traditions:@@'' you are funding specialized training for your recruits to turn them into an army worthy of a pharaon.
+		<br>''@@.lime;Pharaonic traditions:@@'' you are funding specialized training for your recruits to turn them into an army worthy of a pharaon.
 		[[Implement|edicts][$pharaonTradition = 0, $edictsUpkeep -= 1000, $militiaBaseAttack -= 2, $militiaBaseDefense -= 2, $militiaBaseMorale -= 10]]
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;//Will increase attack, defense and morale of militia units, but will incur upkeep costs.//
 	<</if>>
@@ -207,7 +207,7 @@
 
 	<<if $mamluks == 1>>
 		<br>''@@.lime;Mamluks traditions:@@'' you are funding specialized training for your slaves following the Arabian tradition of mamluks slave soldiers.
-		[[Repeal|edicts][$ronin = 0, $edictsUpkeep -= 1000, $slaveBaseAttack -= 2, $slaveBaseHp--, $slaveBaseMorale -= 10]]
+		[[Repeal|edicts][$mamluks = 0, $edictsUpkeep -= 1000, $slaveBaseAttack -= 2, $slaveBaseHp--, $slaveBaseMorale -= 10]]
 	<</if>>
 	
 	<<if $sunTzu == 1>>
@@ -659,7 +659,7 @@
 	
 	<<if $arcologies[0].FSEgyptianRevivalist >= 40 && $militiaFounded == 1>>
 		<<if $pharaonTradition == 0>>
-			<br>''@@.lime;Legionaries traditions:@@'' Fund specialized training for your recruits to turn them into an army worthy of a pharaon.
+			<br>''@@.lime;Pharaonic traditions:@@'' Fund specialized training for your recruits to turn them into an army worthy of a pharaon.
 			<<if $authority >= 1000>>
 				[[Implement|edicts][$pharaonTradition = 1, $cash -=5000, $authority -= 1000, $edictsUpkeep += 1000, $militiaBaseAttack += 2, $militiaBaseDefense += 2, $militiaBaseMorale += 10]]
 			<<else>>
@@ -697,7 +697,7 @@
 		<<if $mamluks == 0>>
 			<br>''@@.lime;Mamluks traditions:@@'' Fund specialized training for your slaves to turn them into the mamluks slave soldiers of Arabian tradition.
 			<<if $authority >= 1000>>
-				[[Implement|edicts][$ronin = 1, $cash -=5000, $authority -= 1000, $edictsUpkeep += 1000, $slaveBaseAttack += 2, $slaveBaseHp++, $slaveBaseMorale += 10]]
+				[[Implement|edicts][$mamluks = 1, $cash -=5000, $authority -= 1000, $edictsUpkeep += 1000, $slaveBaseAttack += 2, $slaveBaseHp++, $slaveBaseMorale += 10]]
 			<<else>>
 				<br>//Not enough Authority.//
 			<</if>>
diff --git a/src/SecExp/secInit.tw b/src/SecExp/secInit.tw
index 489526b77d66d12ad6acc24d21e324f34acfb0b6..ded13968eaeea850d10073aacad11d8b72bf6acf 100644
--- a/src/SecExp/secInit.tw
+++ b/src/SecExp/secInit.tw
@@ -68,6 +68,8 @@
 <<set $eagleWarriors = 0>>
 <<set $ronin = 0>>
 <<set $sunTzu = 0>>
+<<set $mamluks = 0>>
+<<set $pharaonTradition = 0>>
 <<set $weaponsLaw = 3>>
 <<set $soldierWages = 1>>
 <<set $militiaSoldierPrivilege = 0>>
diff --git a/src/pregmod/fFeet.tw b/src/pregmod/fFeet.tw
index f6d53997b9bfc722ac56c3d39334951193f1d714..bc3c005a1fbceae596fd40aa96adb1947815f534 100644
--- a/src/pregmod/fFeet.tw
+++ b/src/pregmod/fFeet.tw
@@ -260,7 +260,7 @@ You call $activeSlave.slaveName to your office, telling $possessive to use $poss
 		Since $pronoun is immobilized by $possessive _dick dick, you have $object lay on $possessive side on the floor,
 	<<elseif tooBigButt($activeSlave)>>
 		Since $pronoun is immobilized by $possessive _dick dick, you have $object sit on your desk to present $possessive _legs legs and feet, 
-	<<elseif tooBigBalls(activeSlave)>>
+	<<elseif tooBigBalls($activeSlave)>>
 		Since $pronoun is immobilized by $possessive _balls balls, you have $object lay on $possessive back on the floor with $possessive legs over $possessive nuts,
 	<<else>>
 		You have $object sit on the edge of your desk to present $possessive _legs legs and feet,
diff --git a/src/uncategorized/fsDevelopments.tw b/src/uncategorized/fsDevelopments.tw
index 1bb592667f629150ef321d742f3d69e5b52dfb0a..3ace98541071ccdb8d95a98b8537f7193462d2b2 100644
--- a/src/uncategorized/fsDevelopments.tw
+++ b/src/uncategorized/fsDevelopments.tw
@@ -3,139 +3,30 @@
 <<if $useTabs == 0>>__Society__<</if>>
 <br>
 
+<<set _FSRepCreditsRep = [[7000,11000,15000],
+                   [6000,9000,12000,15000],
+				   [6000,9000,12000,15000,18000],
+				   [6000,9000,12000,15000,17000,19000]]>>
+<<set _FSRepDescriptors = ["solid","high","remarkable","great","excellent","unparalleled"]>>
+<<set _ordinalNames = ["second","third","fourth","fifth","sixth","seventh"]>>				   
 <<if $FSCredits > 0>>
 	@@.yellow;$arcologies[0].name's society is ready to begin accepting a new societal direction.@@
 <</if>>
-<<if $FSCreditCount == 4>>
-	<<if ($FSGotRepCredits == 1)>>
-	<<if ($rep > 7000)>>
-		@@.yellow;Your reputation is so solid that $arcologies[0].name's society is ready to begin accepting a second societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 2)>>
-	<<if ($rep > 11000)>>
-		@@.yellow;Your reputation is so high that $arcologies[0].name's society is ready to begin accepting a third societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 3)>>
-	<<if ($rep > 15000)>>
-		@@.yellow;Your reputation is so unparalleled that $arcologies[0].name's society is ready to begin accepting a fourth and final societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-<<elseif $FSCreditCount == 5>>
-	<<if ($FSGotRepCredits == 1)>>
-	<<if ($rep > 6000)>>
-		@@.yellow;Your reputation is so solid that $arcologies[0].name's society is ready to begin accepting a second societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 2)>>
-	<<if ($rep > 9000)>>
-		@@.yellow;Your reputation is so high that $arcologies[0].name's society is ready to begin accepting a third societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 3)>>
-	<<if ($rep > 12000)>>
-		@@.yellow;Your reputation is so great that $arcologies[0].name's society is ready to begin accepting a fourth societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 4)>>
-	<<if ($rep > 15000)>>
-		@@.yellow;Your reputation is so unparalleled that $arcologies[0].name's society is ready to begin accepting a fifth and final societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-<<elseif $FSCreditCount == 6>>
-	<<if ($FSGotRepCredits == 1)>>
-	<<if ($rep > 6000)>>
-		@@.yellow;Your reputation is so solid that $arcologies[0].name's society is ready to begin accepting a second societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 2)>>
-	<<if ($rep > 9000)>>
-		@@.yellow;Your reputation is so high that $arcologies[0].name's society is ready to begin accepting a third societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 3)>>
-	<<if ($rep > 12000)>>
-		@@.yellow;Your reputation is so great that $arcologies[0].name's society is ready to begin accepting a fourth societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 4)>>
-	<<if ($rep > 15000)>>
-		@@.yellow;Your reputation is so excellent that $arcologies[0].name's society is ready to begin accepting a fifth societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 5)>>
-	<<if ($rep > 18000)>>
-		@@.yellow;Your reputation is so unparalleled that $arcologies[0].name's society is ready to begin accepting a sixth and final societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-<<elseif $FSCreditCount == 7>>
-	<<if ($FSGotRepCredits == 1)>>
-	<<if ($rep > 6000)>>
-		@@.yellow;Your reputation is so solid that $arcologies[0].name's society is ready to begin accepting a second societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 2)>>
-	<<if ($rep > 9000)>>
-		@@.yellow;Your reputation is so high that $arcologies[0].name's society is ready to begin accepting a third societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 3)>>
-	<<if ($rep > 12000)>>
-		@@.yellow;Your reputation is so remarkable that $arcologies[0].name's society is ready to begin accepting a fourth societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 4)>>
-	<<if ($rep > 15000)>>
-		@@.yellow;Your reputation is so great that $arcologies[0].name's society is ready to begin accepting a fifth societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 5)>>
-	<<if ($rep > 17000)>>
-		@@.yellow;Your reputation is so excellent that $arcologies[0].name's society is ready to begin accepting a sixth societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
-	<<if ($FSGotRepCredits == 6)>>
-	<<if ($rep > 19000)>>
-		@@.yellow;Your reputation is so unparalleled that $arcologies[0].name's society is ready to begin accepting a seventh and final societal direction.@@
-		<<set $FSGotRepCredits += 1>>
-		<<set $FSCredits += 1>>
-	<</if>>
-	<</if>>
+
+<<if $FSAnnounced == 1 && $FSGotRepCredits < $FSCreditCount && $rep >= _FSRepCreditsRep[$FSCreditCount-4][$FSGotRepCredits-1]>>
+	<<set _descriptor = "">>
+	<<if $FSGotRepCredits == 1>>
+		<<set _descriptor = _FSRepDescriptors[0]>>
+	<<else>>
+		<<set _descriptor = _FSRepDescriptors[Math.trunc($FSGotRepCredits/($FSCreditCount-1)*_FSRepDescriptors.length-1)]>>
+	<<endif>>
+	<<set _ordinalName = _ordinalNames[$FSGotRepCredits-1]>>
+	<<if $FSGotRepCredits == $FSCreditCount-1>>
+	    <<set _ordinalName += " and final">>
+	<</if>>	    		
+	@@.yellow;Your reputation is so _descriptor that $arcologies[0].name's society is ready to begin accepting a _ordinalName societal direction.@@
+	<<set $FSGotRepCredits += 1>>
+	<<set $FSCredits += 1>>
 <</if>>
 
 /* Count adopted FS */