diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 74d9a17eaf1f58d36114dd2e89502ce35edd91b0..dbf5c079e67c6dd34f5548a60781a24d72bfba25 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -5,6 +5,8 @@ Pregmod
 	0
 	-overhauled reputation tracking
 	-reputation is now harder to build the higher it gets
+	-fertility diet no longer blocked by chastity
+	-RA can now apply contracpetives to postpartum slaves
 	-fixes
 
 0.10.7.1-2.1.x
diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js
index 94026f56c35bc21483cff86afdd58fd3d0868f77..66e5dc6609919d8d108c48918c7c58c10d9d8d63 100644
--- a/src/js/DefaultRules.js
+++ b/src/js/DefaultRules.js
@@ -28,7 +28,7 @@ window.DefaultRules = (function() {
 			ProcessLegAccessory(slave, rule);
 		}
 		ProcessBellyImplant(slave, rule);
-		if (isFertile(slave))
+		if (isFertile(slave) || slave.pregWeek < 0)
 			ProcessContraceptives(slave, rule);
 		ProcessOtherDrugs(slave, rule);
 		ProcessAssetGrowthDrugs(slave, rule);
@@ -1547,7 +1547,7 @@ window.DefaultRules = (function() {
 						r += `<br>${slave.slaveName} has been put on a diet of cleansers.`;
 					}
 				} else if ((rule.diet === "fertility")) {
-					if (canGetPregnant(slave)) {
+					if (isFertile(slave) && slave.preg == 0) {
 						if ((slave.diet !== "fertility")) {
 							slave.diet = "fertility";
 							r += `<br>${slave.slaveName} has been put on a diet to enhance fertility.`;
diff --git a/src/uncategorized/saDiet.tw b/src/uncategorized/saDiet.tw
index 1f7535af6e0e51a472dc1f47f46a967cd5a65c6d..90025b5c438f3cf3191cb7136580ed99f2b608b8 100644
--- a/src/uncategorized/saDiet.tw
+++ b/src/uncategorized/saDiet.tw
@@ -784,7 +784,7 @@
 		<</if>>
 	<</if>>
 <<case "fertility">> /* + ovum and small boosts to energy and attrXY */
-	<<if !canGetPregnant($slaves[$i])>>
+	<<if !isFertile($slaves[$i]) || $slaves[$i].preg != 0>>
 		<<if $slaves[$i].pregKnown == 0 && $slaves[$i].preg > 0>>
 			The diet is not properly working; tests reveal the reason is a @@.lime;new pregnancy.@@
 			<<set $slaves[$i].pregKnown = 1>>
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index bbe94ad518b3914517581c0cc43bf4c64f1eb79e..15ad0ad102385f0c837e72c9ecc39a9e224953d3 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1299,7 +1299,7 @@ Aphrodisiacs: <span id="aphrodisiacs"><strong><<if $activeSlave.aphrodisiacs > 1
 		//$His pregnancy implant is turned off<<if $activeSlave.broodmotherCountDown > 0>>; $he is expected to be completely emptied of $his remaining brood in $activeSlave.broodmotherCountDown week<<if $activeSlave.broodmotherCountDown > 1>>s<</if>><<else>>.<</if>>//
 		[[Turn on implant|Slave Interact][$activeSlave.broodmotherOnHold = 0, $activeSlave.broodmotherCountDown = 0]]
 	<<elseif $activeSlave.preg >= -1>>
-	Contraception: <span id="fertility"><strong><<if $activeSlave.preg == -1>><<print "using contraceptives">><<elseif $activeSlave.pregWeek < 0>><<print "postpartum">><<elseif $activeSlave.preg == 0>><<print "fertile">><<elseif $activeSlave.preg < 4>><<print "may be pregnant">><<else>><<print $activeSlave.preg>><<print " weeks pregnant">><</if>></strong></span>.
+		Contraception: <span id="fertility"><strong><<if $activeSlave.preg == -1>><<print "using contraceptives">><<elseif $activeSlave.pregWeek < 0>><<print "postpartum">><<elseif $activeSlave.preg == 0>><<print "fertile">><<elseif $activeSlave.preg < 4>><<print "may be pregnant">><<else>><<print $activeSlave.preg>><<print " weeks pregnant">><</if>></strong></span>.
 		<<if ($activeSlave.preg > 1 && $activeSlave.broodmother == 0 && $pregnancyMonitoringUpgrade == 1)>>
 			[[Inspect pregnancy|Analyze Pregnancy]] |
 		<</if>>
@@ -1514,7 +1514,7 @@ Hormones: <strong><span id="hormones">
 <<if ($activeSlave.balls > 0) && ($cumProDiet == 1)>>
 | <<link "Cum production">><<set $activeSlave.diet = "cum production">><<replace "#diet">>$activeSlave.diet<</replace>><</link>>
 <</if>>
-<<if canGetPregnant($activeSlave) && ($dietFertility == 1)>>
+<<if isFertile($activeSlave) && $activeSlave.preg == 0 && ($dietFertility == 1)>>
 | <<link "Fertility">><<set $activeSlave.diet = "fertility">><<replace "#diet">>$activeSlave.diet<</replace>><</link>>
 <</if>>
 <<if ($activeSlave.weight >= -95)>>