diff --git a/FCHost/fchost/fchost_handler.cc b/FCHost/fchost/fchost_handler.cc
index 33586d050ea421cf7836d55437b380041bd1a8bb..98ce4417d404aebe5f49ae3380e54d80e8c47e38 100644
--- a/FCHost/fchost/fchost_handler.cc
+++ b/FCHost/fchost/fchost_handler.cc
@@ -73,9 +73,13 @@ bool FCHostHandler::OnConsoleMessage(CefRefPtr<CefBrowser> browser, cef_log_seve
 									 const CefString& message, const CefString& source, int line)
 {
 	std::ofstream s("console.log", std::ios_base::app);
-	s << DateTime() << " - " << source.c_str() << ":" << line << ": " << message.c_str() << "\n";
-	s.flush();
-	s.close();
+	s << DateTime() << " - ";
+    if (!source.empty()) {
+        s << source.c_str();
+    } else {
+        s << "Unknown Source";
+    }
+    s << ":" << line << ": " << message.c_str() << "\n";
 
 	return false;
 }
diff --git a/js/003-data/gameVariableData.js b/js/003-data/gameVariableData.js
index 8cdb520a18071e7259dcc45500ac959813fe1f86..6b7204e5f8e45f6b30dfbc638ed1f289d49b6a06 100644
--- a/js/003-data/gameVariableData.js
+++ b/js/003-data/gameVariableData.js
@@ -301,6 +301,7 @@ App.Data.defaultGameStateVariables = {
 	incubatorName: "the Incubator",
 	incubatorNameCaps: "The Incubator",
 	sortIncubatorList: "Unsorted",
+	readySlaves: 0,
 	reservedChildren: 0,
 	tanks: [],
 	clinicDecoration: "standard",
@@ -358,6 +359,8 @@ App.Data.defaultGameStateVariables = {
 	cribsFreed: [], // array of children that have been freed
 	childToSlave: -1, // number of total children that have become slaves
 	cribsIndices: 0,
+	sortNurseryList: "Unsorted",
+	targetAgeNursery: 18,
 	// Farmyard Subsection
 	farmyard: 0,
 	farmyardShowgirls: [], // array of farmhands putting on shows
@@ -725,6 +728,7 @@ App.Data.defaultGameStateVariables = {
 	eliteVegetable: 0,
 	eliteFate: 0,
 	swanSong: 0,
+	swanSongWeek: 99999,
 	failedElite: 0,
 	eugenicsFullControl: 0,
 	badC: 0,
@@ -1134,6 +1138,9 @@ App.Data.defaultGameStateVariables = {
 	nicaeaInvolvement: -2,
 	nicaeaPower: 0,
 	nicaeaHeld: 0,
+	nicaeaFocus: "",
+	nicaeaAssignment: "",
+	nicaeaAchievement: "",
 	peacekeepers: 0,
 	peacekeepersFate: 0,
 	mercRomeo: 0,
@@ -1542,6 +1549,7 @@ App.Data.defaultGameStateVariables = {
 	SFGear: 0,
 	SavedLeader: 0,
 	SavedSFI: 0,
+	sectionInFirebase: 0,
 
 	/* base vars */
 	secExp: {},
diff --git a/src/SecExp/js/secExp.js b/src/SecExp/js/secExp.js
index a3756be10c6b925f885cb70116b0964f739b1aaf..5541934309d473e6fe079da1ba7ea59c3e96eb32 100644
--- a/src/SecExp/js/secExp.js
+++ b/src/SecExp/js/secExp.js
@@ -292,7 +292,7 @@ App.SecExp.battle = (function() {
 		if(V.readinessUpgrades.earlyWarn > 0) {
 			init += 2;
 		}
-		if( V.SF.Toggle && V.SF.Active >= 1 && jsDef(V.sectionInFirebase)) {
+		if( V.SF.Toggle && V.SF.Active >= 1 && V.sectionInFirebase >= 1) {
 			init += 2;
 		}
 		return init;
diff --git a/src/data/backwardsCompatibility/backwardsCompatibility.js b/src/data/backwardsCompatibility/backwardsCompatibility.js
index efa1b52568f4490c266364d20a246ef08b55e79d..27dc25d16f406938fe63327c79c695c54f660dce 100644
--- a/src/data/backwardsCompatibility/backwardsCompatibility.js
+++ b/src/data/backwardsCompatibility/backwardsCompatibility.js
@@ -1150,12 +1150,12 @@ App.Update.genePoolRecords = function() {
 			let oldEyes;
 			if (slave.origEye === "implant") {
 				slave.eyesImplant = 1;
-				oldEyes = V.genePool.find(function(s) { return s.ID = slave.ID; });
+				oldEyes = V.genePool.find(function(s) { return s.ID === slave.ID; });
 				slave.origEye = oldEyes.origEye;
 			}
 			if (slave.origEye === "none") {
 				slave.eyes = -3;
-				oldEyes = V.genePool.find(function(s) { return s.ID = slave.ID; });
+				oldEyes = V.genePool.find(function(s) { return s.ID === slave.ID; });
 				slave.origEye = oldEyes.origEye;
 			}
 			if (slave.eyeColor === "empty") {
diff --git a/src/npc/acquisition.tw b/src/npc/acquisition.tw
index 28c146729dccf70cad52765a3f428c8d7de52b34..1ee89d8d51523be72bf93696c396c7d2bf68f0ee 100644
--- a/src/npc/acquisition.tw
+++ b/src/npc/acquisition.tw
@@ -203,6 +203,8 @@
 	<<set $rivalSet = 1>>
 	<<set $arcologies[_bestProsperityIndex].rival = 1>>
 <</if>>
+<<set $targetAge = $minimumSlaveAge>>
+<<set $targetAgeNursery = $minimumSlaveAge>>
 
 You've done it.
 <br><br>
diff --git a/src/uncategorized/peConcubineInterview.tw b/src/uncategorized/peConcubineInterview.tw
index 69b7be680d7f513db89c7406862412967b9b7a58..63c6d1269daa325afcf928c0950f6680dea54992 100644
--- a/src/uncategorized/peConcubineInterview.tw
+++ b/src/uncategorized/peConcubineInterview.tw
@@ -1,6 +1,6 @@
 :: PE concubine interview [nobr]
 
-<<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "RIE Eligibility Check", $activeSlave = $Concubine, $oldRep = $rep>>
+<<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "RIE Eligibility Check", $activeSlave = $Concubine, _oldRep = $rep>>
 <<run Enunciate($activeSlave)>>
 <<setLocalPronouns $activeSlave>>
 <<set _belly = bellyAdjective($activeSlave)>>
@@ -430,10 +430,10 @@ You receive an official communication from a popular talk show e-hosted in one o
 	<</if>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	At the conclusion, the host
-	<<if $rep - $oldRep > 200>>
+	<<if $rep - _oldRep > 200>>
 		seems @@.green;impressed@@ and says sincerely,
 		<<run repX(500, "concubine", $activeSlave)>>
-	<<elseif $rep - $oldRep < 0>>
+	<<elseif $rep - _oldRep < 0>>
 		seems @@.red;unimpressed@@ and says mockingly,
 		<<run repX(-100, "concubine", $activeSlave)>>
 	<<else>>
diff --git a/src/uncategorized/reRelativeRecruiter.tw b/src/uncategorized/reRelativeRecruiter.tw
index c3dde76f2b81b2e903e147e390497668916e26c8..2cb84d57e71c0310ee5c9392e7f49a6da644257f 100644
--- a/src/uncategorized/reRelativeRecruiter.tw
+++ b/src/uncategorized/reRelativeRecruiter.tw
@@ -20,10 +20,6 @@
 /* 000-250-006 */
 </span>
 
-<<if ndef $newRelativeRecruitID>>
-	<<set $newRelativeRecruitID = 1100000>>
-<</if>>
-
 <<run Enunciate($eventSlave)>>
 <<setLocalPronouns $eventSlave>>
 
@@ -80,7 +76,7 @@
 	<<set _recruitedType.push("twin")>>
 <</if>>
 
-<<set $activeSlave.ID = $newRelativeRecruitID>>
+<<set $activeSlave.ID = generateSlaveID()>>
 
 <<if _recruitedType.length == 0>>
 	<<set $eventSlave.canRecruit = 0>>
@@ -488,8 +484,6 @@
 <<if _familyName>><<set $activeSlave.slaveSurname = _familyName>><</if>>
 <<set $activeSlave.birthSurname = _familyBirthSurname>>
 
-<<set $newRelativeRecruitID++>>
-
 <<run generatePronouns($activeSlave)>>
 <<setLocalPronouns $activeSlave 2>>
 <<setSpokenLocalPronouns $eventSlave $activeSlave>>