diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 8ca1f58d43846fec41610c2f68fdca3ea79d2a5b..a3e4c61533b7a4686b4bad5ef78d1579cb812f49 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -4,6 +4,18 @@
 
 3/23/2018
 
+	4
+	-fixes to setPregType()
+	-slimming diet can now be reassigned after muscles are completely gone to trim assets
+
+	3.1
+	-little fix to broodmother initiation in wombJS
+
+	3
+	-finished implementing setPregType(), now to find it outputs multiples too readily
+	-incubator now adjusts .hormoneBalance when the hormone settings are on
+	-various spelling corrections and a minor bugfix
+
 	2.1
 	-minor fixes
 	-fixed boomerang slave relation null pointer exception
diff --git a/devNotes/twine JS b/devNotes/twine JS
index ba1e7feb5adecf13390fefa47e6ec87d97ac6421..42b3639959447d6d3d0be96c530ae58914dd2dc4 100644
--- a/devNotes/twine JS	
+++ b/devNotes/twine JS	
@@ -1313,7 +1313,7 @@ window.bellyAdjective = function(slave) {
 }
 
 /* calculates and returns expected ovum count during conception*/
-window.setPregType == function(actor) {
+window.setPregType = function(actor) {
 	/* IMHO rework is posssible. Can be more interesting to play, if this code will take in account more body conditions - age, fat, food, hormone levels, etc. */
 	
 	var ovum = 1;
@@ -1368,7 +1368,7 @@ window.setPregType == function(actor) {
 				ovum += jsEither(0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3);
 				fertilityStack++;
 			}
-			if(State.variable.seeHyperPreg == 1) {
+			if(State.variables.seeHyperPreg == 1) {
 				if(actor.drugs == "super fertility drugs") {
 					ovum += jsRandom(0, fertilityStack*2);
 				} else {
@@ -7107,7 +7107,7 @@ window.WombNormalizePreg = function(actor)
         actor.pregType = 0; 
         actor.pregKnown = 0;
         
-        if (actor.preg > 0)
+        if (actor.preg >= 0)
             actor.preg = 0.1; //to avoid legacy code conflicts - broodmother on hold can't be impregnated, but she not on normal contraceptives. So we set this for special case.
         
         if (actor.pregSource > 0)
diff --git a/src/art/artWidgets.tw b/src/art/artWidgets.tw
index 0f2a9c7d279c93fc3333260745b2c6f46411d808..17063ece72cd6d49f9141ad7f3bde0b9381cfb73 100644
--- a/src/art/artWidgets.tw
+++ b/src/art/artWidgets.tw
@@ -406,7 +406,7 @@ vector art added later is drawn over previously added art
 <</if>>
 
 /% Boob %/
-<<if $args[0].boobs < 250>>
+<<if $args[0].boobs < 300>>
 	<<set _boobSize = 0>>
 <<elseif $args[0].boobs < 500>>
 	<<set _boobSize = 1>>
diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index 78c38f4b9a47c5913ecd6be7b226a8a693fb2b51..7c57c70ae38e169ef4f3600db4e79bd694b25eb3 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -857,8 +857,10 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $dietXXY = 0>>
 <<set $dietCleanse = 0>>
 <<set $cumProDiet = 0>>
+<<set $dietFertility = 0>>
 <<set $curativeUpgrade = 0>>
 <<set $growthStim = 0>>
+<<set $reproductionFormula = 0>>
 <<set $aphrodisiacUpgrade = 0>>
 <<set $aphrodisiacUpgradeRefine = 0>>
 <<set $healthyDrugsUpgrade = 0>>
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index dd4f38e35c79876631438e44e468cb99430f8af3..7fd3cee4f3d83a6369a031827a15ea5f554a6e9c 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -1981,6 +1981,9 @@ Setting missing global variables:
 <<if ndef $dietCleanse>>
 	<<set $dietCleanse = 0>>
 <</if>>
+<<if ndef $dietFertility>>
+	<<set $dietFertility = 0>>
+<</if>>
 <<if ndef $cumProDiet>>
 	<<set $cumProDiet = 0>>
 <</if>>
@@ -1990,6 +1993,9 @@ Setting missing global variables:
 <<if ndef $healthyDrugsUpgrade>>
 	<<set $healthyDrugsUpgrade = 0>>
 <</if>>
+<<if ndef $reproductionFormula>>
+	<<set $reproductionFormula = 0>>
+<</if>>
 <<if ndef $superFertilityDrugs>>
 	<<set $superFertilityDrugs = 0>>
 <</if>>
diff --git a/src/uncategorized/saDiet.tw b/src/uncategorized/saDiet.tw
index 2bda641090e462e9df4df163adf45d5e120075a0..f10dbe202d32ef4dfe90c0efa89f534cbe10dfee 100644
--- a/src/uncategorized/saDiet.tw
+++ b/src/uncategorized/saDiet.tw
@@ -363,53 +363,83 @@
 		She is no longer capable of actively working out. Her special diet @@.yellow;has ended.@@
 		<<set $slaves[$i].diet = "healthy">>
 	<<else>>
-	<<if $slaves[$i].muscles <= 10>>
-		Her long workouts focus on cardio. She has finally @@.or;lost all visible musculature.@@
-		<<set $slaves[$i].muscles = 0>>
-		<<set $slaves[$i].diet = "healthy">>
-	<<elseif ($slaves[$i].drugs == "steroids")>>
-		Her long workouts focus on cardio, but since she's still shooting gear, she @@.lime;loses mass slowly.@@
-		<<set $slaves[$i].muscles -= 3>>
-	<<elseif ($slaves[$i].balls > 0) && ($slaves[$i].hormoneBalance <= -100)>>
-		Her long workouts focus on cardio, but since she's got so much natural and artificial testosterone, she @@.lime;loses mass slowly.@@
-		<<set $slaves[$i].muscles -= 3>>
-	<<elseif ($slaves[$i].balls > 0) && ($slaves[$i].hormoneBalance >= 100)>>
-		Her long workouts focus on cardio, and with the natural testosterone in her system counteracted by hormone treatment, she @@.lime;loses musculature.@@
-		<<set $slaves[$i].muscles -= 5>>
-	<<elseif ($slaves[$i].balls > 0)>>
-		Her long workouts focus on cardio, but with some natural testosterone in her system, she @@.lime;loses muscle slowly.@@
-		<<set $slaves[$i].muscles -= 3>>
-	<<elseif ($slaves[$i].hormoneBalance >= 100)>>
-		Her long workouts focus on cardio, and with female hormone treatment, she @@.lime;loses musculature rapidly.@@
-		<<set $slaves[$i].muscles -= 8>>
-	<<elseif ($slaves[$i].hormoneBalance <= -100)>>
-		Her long workouts focus on cardio, but under male hormone treatment, she @@.lime;loses muscle slowly.@@
-		<<set $slaves[$i].muscles -= 3>>
-	<<else>>
-		Her long workouts focus on cardio, and she @@.lime;loses musculature.@@
-		<<set $slaves[$i].muscles -= 5>>
-	<</if>>
-	<<if ($slaves[$i].behavioralQuirk == "fitness")>>
-		She approaches endurance work with real enthusiasm, quickly slimming her down.
-		<<set $slaves[$i].muscles -= 2>>
-	<</if>>
-	<<if random(1,100) > 90>>
-	<<if ($slaves[$i].boobs-$slaves[$i].boobsImplant >= 200)>>
-		@@.orange;Her breasts get a little smaller.@@
-		<<set $slaves[$i].boobs -= 50>>
-	<<elseif ($slaves[$i].butt > 1)>>
-		@@.orange;Her butt gets a little smaller.@@
-		<<set $slaves[$i].butt -= 1>>
-	<</if>>
-	<</if>>
-	<<if random(1,100) > 80>>
-		Her workout successes have @@.green;improved her health.@@
-		<<set $slaves[$i].health += 10>>
-	<</if>>
-	<<if $slaves[$i].weight > 10>>
-		Her workouts have also @@.orange;burned off some excess fat.@@
-		<<set $slaves[$i].weight -= 2>>
-	<</if>>
+		<<if $slaves[$i].muscles <= 10>>
+			<<if $slaves[$i].muscles <= 10>>
+				Her long workouts focus on cardio. She has finally @@.orange;lost all visible musculature.@@
+				<<set $slaves[$i].muscles = 0>>
+				<<set $slaves[$i].diet = "healthy">>
+			<<elseif ($slaves[$i].drugs == "steroids")>>
+				Her long workouts focus on cardio, but since she's still shooting gear, she @@.lime;loses mass slowly.@@
+				<<set $slaves[$i].muscles -= 3>>
+			<<elseif ($slaves[$i].balls > 0) && ($slaves[$i].hormoneBalance <= -100)>>
+				Her long workouts focus on cardio, but since she's got so much natural and artificial testosterone, she @@.lime;loses mass slowly.@@
+				<<set $slaves[$i].muscles -= 3>>
+			<<elseif ($slaves[$i].balls > 0) && ($slaves[$i].hormoneBalance >= 100)>>
+				Her long workouts focus on cardio, and with the natural testosterone in her system counteracted by hormone treatment, she @@.lime;loses musculature.@@
+				<<set $slaves[$i].muscles -= 5>>
+			<<elseif ($slaves[$i].balls > 0)>>
+				Her long workouts focus on cardio, but with some natural testosterone in her system, she @@.lime;loses muscle slowly.@@
+				<<set $slaves[$i].muscles -= 3>>
+			<<elseif ($slaves[$i].hormoneBalance >= 100)>>
+				Her long workouts focus on cardio, and with female hormone treatment, she @@.lime;loses musculature rapidly.@@
+				<<set $slaves[$i].muscles -= 8>>
+			<<elseif ($slaves[$i].hormoneBalance <= -100)>>
+				Her long workouts focus on cardio, but under male hormone treatment, she @@.lime;loses muscle slowly.@@
+				<<set $slaves[$i].muscles -= 3>>
+			<<else>>
+				Her long workouts focus on cardio, and she @@.lime;loses musculature.@@
+				<<set $slaves[$i].muscles -= 5>>
+			<</if>>
+			<<if ($slaves[$i].behavioralQuirk == "fitness")>>
+				She approaches endurance work with real enthusiasm, quickly slimming her down.
+				<<set $slaves[$i].muscles -= 2>>
+			<</if>>
+			<<if random(1,100) > 90>>
+				<<if ($slaves[$i].boobs-$slaves[$i].boobsImplant >= 200)>>
+					@@.orange;Her breasts get a little smaller.@@
+					<<set $slaves[$i].boobs -= 50>>
+				<<elseif ($slaves[$i].butt > 1)>>
+					@@.orange;Her butt gets a little smaller.@@
+					<<set $slaves[$i].butt -= 1>>
+				<</if>>
+			<</if>>
+			<<if random(1,100) > 80>>
+				Her workout successes have @@.green;improved her health.@@
+				<<set $slaves[$i].health += 10>>
+			<</if>>
+			<<if $slaves[$i].weight > 10>>
+				Her workouts have also @@.orange;burned off some excess fat.@@
+				<<set $slaves[$i].weight -= 2>>
+			<</if>>
+		<<else>>
+			Her long workouts focus on cardio to keep her body lithe.
+			<<if ($slaves[$i].behavioralQuirk == "fitness")>>
+				She @@.hotpink;enjoys@@ the time she's given to workout.
+				<<set $slaves[$i].devotion += 2>>
+			<</if>>
+			<<if $slaves[$i].muscles < -10>>
+				Since she is rather weak, her routine slowly tones her soft muscles.
+				<<set $slaves[$i].muscles++>>
+			<</if>>
+			<<if ($slaves[$i].boobs-$slaves[$i].boobsImplant >= 200)>>
+				@@.orange;Her breasts get a little smaller.@@
+				<<set $slaves[$i].boobs -= 50>>
+			<</if>>
+			<<if random(1,100) > 50>>
+				<<if ($slaves[$i].butt > 1)>>
+					@@.orange;Her butt loses a little mass.@@
+					<<set $slaves[$i].butt -= 1>>
+				<</if>>
+			<</if>>
+			<<if random(1,100) > 50 && $slaves[$i].health <= 90 && $slaves[$i].health >= -20>>
+				Her workout successes have @@.green;improved her health.@@
+				<<set $slaves[$i].health += 5>>
+			<</if>>
+			<<if $slaves[$i].weight > 10>>
+				Her workouts have also @@.orange;burned off some excess fat.@@
+				<<set $slaves[$i].weight -= 2>>
+			<</if>>
+		<</if>>
 	<</if>>
 <<case "cum production">>
 	<<if $slaves[$i].fetish != "mindbroken">>
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 4e7d804d3b055eb6ef1e50a46b656949222b83a1..233c0abb5131ad83ea880118a929bdc022e28c2c 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1258,11 +1258,11 @@ Hormones: <strong><span id="hormones">
 <<else>>
 | //She has no limbs and thus can't effectively build muscle//
 <</if>>
-<<if $activeSlave.muscles > 5 && canWalk($activeSlave)>>
+<<if ($activeSlave.muscles > 5 || $activeSlave.fuckdoll == 0) && canWalk($activeSlave)>>
 | <<link "Slim down">><<set $activeSlave.diet = "slimming">><<replace "#diet">>$activeSlave.diet<</replace>><</link>>
 <<elseif !canWalk($activeSlave)>>
 | //She can't move and thus can't trim down//
-<<else>>
+<<elseif $activeSlave.fuckdoll > 0>>
 | //She has no muscles left to lose//
 <</if>>