diff --git a/src/npc/startingGirls/commitStartingGirl.tw b/src/npc/startingGirls/commitStartingGirl.tw
index 028b716752a937718935e20ca4b9a09b0bcb06be..8ce20e177e3c2bd449da08cea98f5fc2a9465e59 100644
--- a/src/npc/startingGirls/commitStartingGirl.tw
+++ b/src/npc/startingGirls/commitStartingGirl.tw
@@ -1,6 +1,8 @@
 :: Commit Starting Girl [nobr]
 
 <<run App.StartingGirls.cleanup($activeSlave)>>
+<<set _beforeCareerBonus = clone($activeSlave)>>
+<<set _srcID = $activeSlave.ID>>
 
 <<if def $slaveIndices[$activeSlave.ID]>>
 	<div>@@.red;Starting Girl ID conflict; slave not committed. Please report this error with a description of your actions.@@</div>
@@ -29,19 +31,19 @@
 	<</link>>
 	<br>
 	<<link "Add another slave, based on the previous slave">>
-		<<set $activeSlave = clone($activeSlave)>>
+		<<set $activeSlave = _beforeCareerBonus>>
 		<<set $activeSlave.ID = generateSlaveID()>>
 		<<run nationalityToName($activeSlave), App.StartingGirls.randomizeUnknowns($activeSlave)>>
 		<<set $activeSlave.mother = 0, $activeSlave.father = 0>>
 		<<goto "Starting Girls">>
 	<</link>>
-	<<set _srcID = $activeSlave.ID>>
 	<br>
 	//Add another slave, related to the previous slave://
 	<div class="indent">
 	<<link "Twin">>
 		<<run setMissingParents(getSlave(_srcID))>>
-		<<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "twin")>>
+		<<set _beforeCareerBonus.mother = getSlave(_srcID).mother, _beforeCareerBonus.father = getSlave(_srcID).father>>
+		<<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "twin")>>
 		<<run App.StartingGirls.randomizeUnknowns($activeSlave)>>
 		<<goto "Starting Girls">>
 	<</link>>
@@ -50,7 +52,7 @@
 		<<if $seeDicks !== 100 && $activeSlave.mother === 0>>
 			<div class="indent">
 			<<link "Mother">>
-				<<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "parent", getSlave(_srcID).genes === "XY")>>
+				<<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "parent", _beforeCareerBonus.genes === "XY")>>
 				<<run App.StartingGirls.randomizeUnknowns($activeSlave)>>
 				<<set getSlave(_srcID).mother = $activeSlave.ID>>
 				<<goto "Starting Girls">>
@@ -60,7 +62,7 @@
 		<<if $seeDicks !== 0 && $activeSlave.father === 0>>
 			<div class="indent">
 			<<link "Father">>
-				<<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "parent", getSlave(_srcID).genes === "XX")>>
+				<<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "parent", _beforeCareerBonus.genes === "XX")>>
 				<<run App.StartingGirls.randomizeUnknowns($activeSlave)>>
 				<<set getSlave(_srcID).father = $activeSlave.ID>>
 				<<goto "Starting Girls">>
@@ -73,7 +75,8 @@
 			<div class="indent">
 			<<link "Older Sister">>
 				<<run setMissingParents(getSlave(_srcID))>>
-				<<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "older sibling", getSlave(_srcID).genes === "XY")>>
+				<<set _beforeCareerBonus.mother = getSlave(_srcID).mother, _beforeCareerBonus.father = getSlave(_srcID).father>>
+				<<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "older sibling", _beforeCareerBonus.genes === "XY")>>
 				<<run App.StartingGirls.randomizeUnknowns($activeSlave)>>
 				<<goto "Starting Girls">>
 			<</link>>
@@ -83,7 +86,8 @@
 			<div class="indent">
 			<<link "Older Brother">>
 				<<run setMissingParents(getSlave(_srcID))>>
-				<<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "older sibling", getSlave(_srcID).genes === "XX")>>
+				<<set _beforeCareerBonus.mother = getSlave(_srcID).mother, _beforeCareerBonus.father = getSlave(_srcID).father>>
+				<<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "older sibling", _beforeCareerBonus.genes === "XX")>>
 				<<run App.StartingGirls.randomizeUnknowns($activeSlave)>>
 				<<goto "Starting Girls">>
 			<</link>>
@@ -95,7 +99,8 @@
 			<div class="indent">
 			<<link "Younger Sister">>
 				<<run setMissingParents(getSlave(_srcID))>>
-				<<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "younger sibling", getSlave(_srcID).genes === "XY")>>
+				<<set _beforeCareerBonus.mother = getSlave(_srcID).mother, _beforeCareerBonus.father = getSlave(_srcID).father>>
+				<<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "younger sibling", _beforeCareerBonus.genes === "XY")>>
 				<<run App.StartingGirls.randomizeUnknowns($activeSlave)>>
 				<<goto "Starting Girls">>
 			<</link>>
@@ -105,7 +110,8 @@
 			<div class="indent">
 			<<link "Younger Brother">>
 				<<run setMissingParents(getSlave(_srcID))>>
-				<<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "younger sibling", getSlave(_srcID).genes === "XX")>>
+				<<set _beforeCareerBonus.mother = getSlave(_srcID).mother, _beforeCareerBonus.father = getSlave(_srcID).father>>
+				<<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "younger sibling", _beforeCareerBonus.genes === "XX")>>
 				<<run App.StartingGirls.randomizeUnknowns($activeSlave)>>
 				<<goto "Starting Girls">>
 			<</link>>
@@ -116,7 +122,7 @@
 		<<if $seeDicks !== 100>>
 			<div class="indent">
 			<<link "Daughter">>
-				<<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "child", getSlave(_srcID).genes === "XY")>>
+				<<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "child", _beforeCareerBonus.genes === "XY")>>
 				<<run App.StartingGirls.randomizeUnknowns($activeSlave)>>
 				<<goto "Starting Girls">>
 			<</link>>
@@ -125,7 +131,7 @@
 		<<if $seeDicks !== 0>>
 			<div class="indent">
 			<<link "Son">>
-				<<set $activeSlave = generateRelatedSlave(getSlave(_srcID), "child", getSlave(_srcID).genes === "XX")>>
+				<<set $activeSlave = generateRelatedSlave(_beforeCareerBonus, "child", _beforeCareerBonus.genes === "XX")>>
 				<<run App.StartingGirls.randomizeUnknowns($activeSlave)>>
 				<<goto "Starting Girls">>
 			<</link>>