diff --git a/src/SecExp/js/secExp.js b/src/SecExp/js/secExp.js
index 3818dcc0ed090fef530916d5823f1edab76ff24a..d3cff6963bb24c358c1b27df25683eed4981817c 100644
--- a/src/SecExp/js/secExp.js
+++ b/src/SecExp/js/secExp.js
@@ -408,9 +408,11 @@ App.SecExp.Check = (function() {
 			V.SecExp = {settings:{show:V.SecExp.settings.show}};
 		}
 
+		delete V.SecExp.army;
+
 		if (V.secExpEnabled > 0) {
 			V.SecExp.core = V.SecExp.core || {};
-			V.SecExp.army = V.SecExp.army || {};
+
 			V.SecExp.core.trade = V.SecExp.core.trade || 0;
 			if (passage() === "Acquisition" || V.SecExp.core.trade === 0) {
 				const V = State.variables;
@@ -462,58 +464,54 @@ App.SecExp.Check = (function() {
 				V.SecExp.settings.battle.enabled = V.battlesEnabled;
 				delete V.battlesEnabled;
 			}
-				delete V.SecExp.battle;
-				V.SecExp.settings.battle.major = V.SecExp.settings.battle.major || {};
-				V.SecExp.settings.battle.frequency = V.SecExp.settings.battle.frequency || 1;
-				if (jsDef(V.battleFrequency)) {
-					V.SecExp.settings.battle.frequency = V.battleFrequency;
-					delete V.battleFrequency;
-				}
-				V.SecExp.settings.battle.force = V.SecExp.settings.battle.force || 0;
-				if (jsDef(V.forceBattle)) {
-					V.SecExp.settings.battle.force = V.forceBattle;
-					delete V.forceBattle;
-				}
+			delete V.SecExp.battle;
 
-				if (jsDef(V.readiness)) {
-					if(V.readiness === 10) {
-						V.sectionInFirebase = 1;
-					}
-					delete V.readiness;
+			V.SecExp.settings.battle.major = V.SecExp.settings.battle.major || {};
+			V.SecExp.settings.battle.frequency = V.SecExp.settings.battle.frequency || 1;
+			if (jsDef(V.battleFrequency)) {
+				V.SecExp.settings.battle.frequency = V.battleFrequency;
+				delete V.battleFrequency;
+			}
+			V.SecExp.settings.battle.force = V.SecExp.settings.battle.force || 0;
+			if (jsDef(V.forceBattle)) {
+				V.SecExp.settings.battle.force = V.forceBattle;
+				delete V.forceBattle;
+			}
+
+			if (jsDef(V.readiness)) {
+				if(V.readiness === 10) {
+					V.sectionInFirebase = 1;
 				}
+				delete V.readiness;
+			}
 
-				V.SecExp.settings.unitDescriptions = V.SecExp.settings.unitDescriptions || 0;
+			V.SecExp.settings.unitDescriptions = V.SecExp.settings.unitDescriptions || 0;
 
-				V.SecExp.settings.battle.allowSlavePrestige = V.SecExp.settings.battle.allowSlavePrestige || 1;
-				if (jsDef(V.allowPrestigeFromBattles)) {
-					V.SecExp.settings.battle.allowSlavePrestige = V.allowPrestigeFromBattles;
-					delete V.allowPrestigeFromBattles;
-				}
+			V.SecExp.settings.battle.allowSlavePrestige = V.SecExp.settings.battle.allowSlavePrestige || 1;
+			if (jsDef(V.allowPrestigeFromBattles)) {
+				V.SecExp.settings.battle.allowSlavePrestige = V.allowPrestigeFromBattles;
+				delete V.allowPrestigeFromBattles;
+			}
 
-				V.SecExp.settings.battle.major.enabled = V.SecExp.settings.battle.major.enabled || 1;
-				if (jsDef(V.majorBattlesEnabled)) {
-					V.SecExp.settings.battle.major.enabled = V.majorBattlesEnabled;
-					delete V.majorBattlesEnabled;
-				}
+			V.SecExp.settings.battle.major.enabled = V.SecExp.settings.battle.major.enabled || 1;
+			if (jsDef(V.majorBattlesEnabled)) {
+				V.SecExp.settings.battle.major.enabled = V.majorBattlesEnabled;
+				delete V.majorBattlesEnabled;
+			}
 
-				if (V.SecExp.settings.battle.major.enabled > 0) {
-					V.SecExp.settings.battle.major.gameOver = V.SecExp.settings.battle.major.gameOver || 1;
-					if (jsDef(V.majorBattleGameOver)) {
-						V.SecExp.settings.battle.major.gameOver = V.majorBattleGameOver;
-						delete V.majorBattleGameOver;
-					}
-					V.SecExp.settings.battle.major.force = V.SecExp.settings.battle.major.force || 0;
-					if (jsDef(V.forceMajorBattle)) {
-						V.SecExp.settings.battle.major.force = V.forceMajorBattle;
-						delete V.forceMajorBattle;
-					}
+			V.SecExp.settings.battle.major.gameOver = V.SecExp.settings.battle.major.gameOver || 1;
+			if (jsDef(V.majorBattleGameOver)) {
+				V.SecExp.settings.battle.major.gameOver = V.majorBattleGameOver;
+				delete V.majorBattleGameOver;
+			}
+			V.SecExp.settings.battle.major.force = V.SecExp.settings.battle.major.force || 0;
+			if (jsDef(V.forceMajorBattle)) {
+				V.SecExp.settings.battle.major.force = V.forceMajorBattle;
+				delete V.forceMajorBattle;
+			}
 
-					V.SecExp.settings.battle.major.mult = V.SecExp.settings.battle.major.mult || 1;
-					if (jsDef(V.majorBattleMult)) {
-						V.SecExp.settings.battle.major.mult = V.majorBattleMult;
-						delete V.majorBattleMult;
-					}
-				}
+			delete V.majorBattleMult;
+			delete V.SecExp.settings.battle.major.mult;
 
 			V.SecExp.settings.rebellion = V.SecExp.settings.rebellion || {};
 			V.SecExp.settings.rebellion.enabled = V.SecExp.settings.rebellion.enabled || 1;
@@ -522,22 +520,22 @@ App.SecExp.Check = (function() {
 				delete V.rebellionsEnabled;
 			}
 
-				V.SecExp.settings.rebellion.force = V.SecExp.settings.rebellion.force || 0;
-				if (jsDef(V.forceRebellion)) {
-					V.SecExp.settings.rebellion.force = V.forceRebellion;
-					delete V.forceRebellion;
-				}
-				V.SecExp.settings.rebellion.gameOver = V.SecExp.settings.rebellion.gameOver || 1;
-				if (jsDef(V.rebellionGameOver)) {
-					V.SecExp.settings.rebellion.gameOver = V.rebellionGameOver;
-					delete V.rebellionGameOver;
-				}
+			V.SecExp.settings.rebellion.force = V.SecExp.settings.rebellion.force || 0;
+			if (jsDef(V.forceRebellion)) {
+				V.SecExp.settings.rebellion.force = V.forceRebellion;
+				delete V.forceRebellion;
+			}
+			V.SecExp.settings.rebellion.gameOver = V.SecExp.settings.rebellion.gameOver || 1;
+			if (jsDef(V.rebellionGameOver)) {
+				V.SecExp.settings.rebellion.gameOver = V.rebellionGameOver;
+				delete V.rebellionGameOver;
+			}
 
-				V.SecExp.settings.rebellion.speed = V.SecExp.settings.rebellion.speed || 1;
-				if (jsDef(V.rebellionSpeed)) {
-					V.SecExp.settings.rebellion.speed = V.rebellionSpeed;
-					delete V.rebellionSpeed;
-				}
+			V.SecExp.settings.rebellion.speed = V.SecExp.settings.rebellion.speed || 1;
+			if (jsDef(V.rebellionSpeed)) {
+				V.SecExp.settings.rebellion.speed = V.rebellionSpeed;
+				delete V.rebellionSpeed;
+			}
 
 			if (V.SecExp.settings.battle.enabled + V.SecExp.settings.rebellion.enabled > 0) {
 				V.SecExp.settings.showStats = V.SecExp.settings.showStats || 0;
diff --git a/src/SecExp/widgets/miscSecExpWidgets.tw b/src/SecExp/widgets/miscSecExpWidgets.tw
index 35f83a4f6fb4811af7392ddaa41023c5587cb21d..33318b5a23398af041fd7bd46d523ee04144a553 100644
--- a/src/SecExp/widgets/miscSecExpWidgets.tw
+++ b/src/SecExp/widgets/miscSecExpWidgets.tw
@@ -251,9 +251,13 @@
 <</widget>>
 
 <<widget "replenishAllUnits">>
-	<<set _hasLossesM = 0>>
-	<<set _hasLossesS = 0>>
-	<<set _hasLossesMe = 0>>
+	<<set _hasLossesBots = 0, _hasLossesM = 0>>
+	<<set _hasLossesS = 0, _hasLossesMe = 0>>
+
+	<<if $secBots.troops < $secBots.maxTroops && $cash >= 500>>
+		<<set _hasLossesBots = 1>>
+		<<break>>
+	<</if>>
 
 	<<for _i = 0; _i < $militiaUnits.length; _i++>>
 		<<if $militiaUnits[_i].troops < $militiaUnits[_i].maxTroops && $militiaFreeManpower > 0>>
@@ -276,9 +280,12 @@
 		<</if>>
 	<</for>>
 
-	<<if _hasLossesM == 1 && $militiaFreeManpower > 0 || _hasLossesS == 1 && $menials > 0 || _hasLossesMe == 1 && $mercFreeManpower > 0>>
-
+	<<if _hasLossesBots == 1 || _hasLossesM == 1 || _hasLossesS == 1 || _hasLossesMe == 1>>
 		<br><br><<link "Replenish all units">>
+			<<if _hasLossesBots == 1>>
+					<<run cashX(-((_$secBots.maxTroops - $secBots.troops) * 500), "securityExpansion")>>
+					<<set $secBots.troops = $secBots.maxTroops>>
+			<</if>>
 
 			<<if _hasLossesM == 1>>
 				<<for _i = 0; _i < $militiaUnits.length; _i++>>
@@ -349,7 +356,7 @@
 			<</if>>
 
 		<</link>>
-		 //Will replenish units as long as manpower is available
+		//Will replenish units as long as requirements are meet.//<br>
 	<</if>>
 
-<</widget>>
\ No newline at end of file
+<</widget>>