diff --git a/Source/JobGivers/JobGiver_Bestiality.cs b/Source/JobGivers/JobGiver_Bestiality.cs
index 5a2ec362c0e336f4cd4423ae1e80e5d3175c6efa..842edb3a50567493e4bf3dbefd88b7320eb6236b 100644
--- a/Source/JobGivers/JobGiver_Bestiality.cs
+++ b/Source/JobGivers/JobGiver_Bestiality.cs
@@ -20,6 +20,8 @@ namespace rjw
 
 		protected override Job TryGiveJob(Pawn pawn)
 		{
+			if (pawn.Drafted) return null;
+
 			// Most checks are now done in ThinkNode_ConditionalBestiality
 			DebugText("[RJW] JobGiver_Bestiality::TryGiveJob( " + xxx.get_pawnname(pawn) + " ) called");
 
diff --git a/Source/JobGivers/JobGiver_ComfortPrisonerRape.cs b/Source/JobGivers/JobGiver_ComfortPrisonerRape.cs
index 91f1e39391feaa1cced79839693fc595ef98eacb..497b1b2ad4979e37eee3c4e6eb6f5f81672763fc 100644
--- a/Source/JobGivers/JobGiver_ComfortPrisonerRape.cs
+++ b/Source/JobGivers/JobGiver_ComfortPrisonerRape.cs
@@ -54,6 +54,8 @@ namespace rjw
 				if (!xxx.is_healthy(rapist) || rapist.IsDesignatedComfort() || (!SexUtility.ReadyForLovin(rapist) && !xxx.is_frustrated(rapist))) return null;
 			}
 
+			if (rapist.Drafted) return null;
+
 			//Log.Message("[RJW] JobGiver_ComfortPrisonerRape::TryGiveJob( " + xxx.get_pawnname(rapist) + " ) called1");
 			if (!xxx.can_rape(rapist)) return null;
 
diff --git a/Source/JobGivers/JobGiver_DoFappin.cs b/Source/JobGivers/JobGiver_DoFappin.cs
index fdb010d9b82386a7f63b2b549efc4793630893dd..047fa17d0e09d478ec7bfe50d2dd85601acefca9 100644
--- a/Source/JobGivers/JobGiver_DoFappin.cs
+++ b/Source/JobGivers/JobGiver_DoFappin.cs
@@ -139,6 +139,8 @@ namespace rjw
 		{
 			//--Log.Message("[RJW] JobGiver_DoFappin::TryGiveJob( " + xxx.get_pawnname(fapper) + " ) called");
 
+			if (fapper.Drafted) return null;
+
 			if (!xxx.can_be_fucked(fapper) && !xxx.can_fuck(fapper)) return null;
 
 			// Whores only fap if frustrated, unless imprisoned.
diff --git a/Source/JobGivers/JobGiver_JoinInBed.cs b/Source/JobGivers/JobGiver_JoinInBed.cs
index 39cf6c915b92cf83e0afa21de4ddcf4f71a214bf..64db0361605e282de7334780e7953738bc6e649b 100644
--- a/Source/JobGivers/JobGiver_JoinInBed.cs
+++ b/Source/JobGivers/JobGiver_JoinInBed.cs
@@ -84,6 +84,7 @@ namespace rjw
 		{
 			//--Log.Message("[RJW] JobGiver_JoinInBed( " + xxx.get_pawnname(pawn) + " ) called");
 
+			if (pawn.Drafted) return null;
 			if (!SexUtility.ReadyForLovin(pawn) && !xxx.is_frustrated(pawn)) return null;
 
 			if (pawn.CurJob == null || pawn.CurJob.def == JobDefOf.LayDown)
diff --git a/Source/JobGivers/JobGiver_RapeEnemy.cs b/Source/JobGivers/JobGiver_RapeEnemy.cs
index e1b061b1f334bc6497a4d342ccbb5370370c27ad..3f22f33c8330e90d3d04af1fde0c624cec195b57 100644
--- a/Source/JobGivers/JobGiver_RapeEnemy.cs
+++ b/Source/JobGivers/JobGiver_RapeEnemy.cs
@@ -20,6 +20,8 @@ namespace rjw
 			//Log.Message("[RJW] JobGiver_RapeEnemy::TryGiveJob( " + xxx.get_pawnname(rapist) + " ) 1 " + Find.TickManager.TicksGame);
 			//Log.Message("[RJW] JobGiver_RapeEnemy::TryGiveJob( " + xxx.get_pawnname(rapist) + " ) 2 " + rapist.mindState.canLovinTick);
 
+			if (rapist.Drafted) return null;
+
 			if (rapist.health.hediffSet.HasHediff(HediffDef.Named("Hediff_RapeEnemyCD")) || !rapist.health.capacities.CanBeAwake || !(SexUtility.ReadyForLovin(rapist) || xxx.need_some_sex(rapist) <= 1f))
 			//if (rapist.health.hediffSet.HasHediff(HediffDef.Named("Hediff_RapeEnemyCD")) || !rapist.health.capacities.CanBeAwake || (SexUtility.ReadyForLovin(rapist) || xxx.is_human(rapist) ? xxx.need_some_sex(rapist) <= 1f : false))
 				return null;
diff --git a/Source/JobGivers/JobGiver_ViolateCorpse.cs b/Source/JobGivers/JobGiver_ViolateCorpse.cs
index 44baf49e64ad4f1e5e70859ff3fe84204b3e6f18..e04cab48e4c24a208887487c4ae272f51d2f83a8 100644
--- a/Source/JobGivers/JobGiver_ViolateCorpse.cs
+++ b/Source/JobGivers/JobGiver_ViolateCorpse.cs
@@ -46,6 +46,8 @@ namespace rjw
 			// filter out necro for nymphs
 			if (!RJWSettings.necrophilia_enabled) return null;
 
+			if (rapist.Drafted) return null;
+
 			//--Log.Message("[RJW] JobGiver_ViolateCorpse::TryGiveJob for ( " + xxx.get_pawnname(rapist) + " )");
 			if (SexUtility.ReadyForLovin(rapist) || xxx.need_some_sex(rapist) > 1f)
 			{
diff --git a/Source/Modules/Whoring/JobGivers/JobGiver_WhoreInvitingVisitors.cs b/Source/Modules/Whoring/JobGivers/JobGiver_WhoreInvitingVisitors.cs
index efa81183ae7c3ab7272cccaf1905e1b8666a7e38..7e14aaf7a1d8d4decf09a4b9a2142c2b7e48e55a 100644
--- a/Source/Modules/Whoring/JobGivers/JobGiver_WhoreInvitingVisitors.cs
+++ b/Source/Modules/Whoring/JobGivers/JobGiver_WhoreInvitingVisitors.cs
@@ -123,13 +123,16 @@ namespace rjw
 
 			if (!potentialClients.Any()) return null;
 
-			//Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::FindAttractivePawn number of potential clients " + potentialClients.Count());
+			//Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::FindAttractivePawn whore: " + xxx.get_pawnname(whore));
+			//Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::FindAttractivePawn number of potential clients pass1 " + potentialClients.Count());
 
 			IEnumerable<Pawn> guestsSpawned = potentialClients.Where(x => x.Faction != whore.Faction
 				&& WhoringHelper.CanAfford(x, whore, priceOfWhore)
 				&& !MemoryChecker(x, ThoughtDef.Named("RJWFailedSolicitation"))
 				&& x != LovePartnerRelationUtility.ExistingLovePartner(whore));
 
+			//Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::FindAttractivePawn number of potential clients pass2 " + potentialClients.Count());
+
 			if (guestsSpawned.Any())
 			{
 				//Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::FindAttractivePawn number of acceptable guests " + guestsSpawned.Count());
@@ -159,10 +162,12 @@ namespace rjw
 		{
 			// Most things are now checked in the ThinkNode_ConditionalWhore.
 
+			if (pawn.Drafted) return null;
+
 			//Log.Message("[RJW] JobGiver_WhoreInvitingVisitors::TryGiveJob( " + xxx.get_pawnname(pawn) + " ) called");
 			if (!SexUtility.ReadyForLovin(pawn))
 			{
-				//Whores need rest too, but this'll redude the wait a bit every it triggers.
+				//Whores need rest too, but this'll reduxe the wait a bit every it triggers.
 				pawn.mindState.canLovinTick -= 40;
 				return null;
 			}