diff --git a/src/facilities/surgery/analyzePregnancy.js b/src/facilities/surgery/analyzePregnancy.js
index cdab21ff671d4d04388ef173260f8b9fdb51b5fb..fb33e286902ab8899c7bfebac5d1fbc0e4960f36 100644
--- a/src/facilities/surgery/analyzePregnancy.js
+++ b/src/facilities/surgery/analyzePregnancy.js
@@ -1,4 +1,9 @@
-globalThis.analyzePregnancies = function(mother) {
+/**
+ * @param {App.Entity.SlaveState} mother
+ * @param {boolean} cheat
+ * @returns {DocumentFragment}
+ */
+globalThis.analyzePregnancies = function(mother, cheat) {
 	const el = new DocumentFragment();
 	for (let i = 0; i < mother.womb.length; i++) {
 		el.append(scanFetus(i));
diff --git a/src/pregmod/analyzePlayerPregnancy.tw b/src/pregmod/analyzePlayerPregnancy.tw
index f38748459d2db7adc685d53a12993fd1a20164ba..f833df6172f7e7da4e8d01f7ab35bbc968a16d8c 100644
--- a/src/pregmod/analyzePlayerPregnancy.tw
+++ b/src/pregmod/analyzePlayerPregnancy.tw
@@ -71,174 +71,6 @@
 
 	<p>
 		<h2>Deep scan</h2>
-		<<for _ap = 0; _ap < _WL; _ap++>>
-		<hr style="margin:0">
-		<<capture _ap>>
-			<<if $PC.womb[_ap].age >=2 >>
-				<div class="indent">
-					Ova: $PC.womb[_ap].genetics.name
-				</div>
-
-				<<if $geneticMappingUpgrade >= 1>>
-					<div class="indent">
-						Gender: $PC.womb[_ap].genetics.gender
-					</div>
-					<div class="indent">
-						Father ID: $PC.womb[_ap].genetics.father
-					</div>
-					<div class="indent">
-						Father Name:
-						<<if ndef $PC.womb[_ap].genetics.fatherName>>
-							name not registered
-						<<else>>
-							$PC.womb[_ap].genetics.fatherName
-						<</if>>
-					</div>
-
-					<div class="indent">
-						Mother ID: $PC.womb[_ap].genetics.mother
-					</div>
-					<div class="indent">
-						Mother Name:
-						<<if ndef $PC.womb[_ap].genetics.motherName>>
-							name not registered
-						<<else>>
-							$PC.womb[_ap].genetics.motherName
-						<</if>>
-					</div>
-					<div class="indent">
-						Nationality: $PC.womb[_ap].genetics.nationality
-					</div>
-					<div class="indent">
-						Race: $PC.womb[_ap].genetics.race
-					</div>
-					<div class="indent">
-						Skin tone: $PC.womb[_ap].genetics.skin
-					</div>
-					<div class="indent">
-						Intelligence index: $PC.womb[_ap].genetics.intelligence out of 100
-					</div>
-					<div class="indent">
-						Face index: $PC.womb[_ap].genetics.face out of 100
-					</div>
-					<div class="indent">
-						Eye Color: $PC.womb[_ap].genetics.eyeColor
-					</div>
-					<div class="indent">
-						Hair Color: $PC.womb[_ap].genetics.hColor
-					</div>
-					<<if $PC.womb[_ap].genetics.underArmHStyle == "hairless" && $PC.womb[_ap].genetics.pubicHStyle == "hairless">>
-						<div class="indent">
-							Body hair: none
-						</div>
-					<<elseif $PC.womb[_ap].genetics.underArmHStyle == "hairless">>
-						<div class="indent">
-							Body hair: lacks underarm hair
-						</div>
-					<<elseif $PC.womb[_ap].genetics.pubicHStyle == "hairless">>
-						<div class="indent">
-							Body hair: lacks pubic hair
-						</div>
-					<</if>>
-					<<if $PC.womb[_ap].genetics.markings == "freckles" || $PC.womb[_ap].genetics.markings == "heavily freckled">>
-						<div class="indent">
-							Markings: $PC.womb[_ap].genetics.markings
-						</div>
-					<</if>>
-					<<includeDOM fetusAbnormalities($PC.womb[_ap])>>
-				<<else>>
-					<<if $PC.womb[_ap].age > 13>>
-						<div class="indent">
-							Gender: $PC.womb[_ap].genetics.gender
-						</div>
-					<</if>>
-					<<if $PC.womb[_ap].age > 5>>
-						<div class="indent">
-							Father ID: $PC.womb[_ap].genetics.father
-						</div>
-						<div class="indent">
-							Father Name: $PC.womb[_ap].genetics.fatherName
-						</div>
-						<div class="indent">
-							Mother ID: $PC.womb[_ap].genetics.mother
-						</div>
-						<div class="indent">
-							Mother Name: $PC.womb[_ap].genetics.motherName
-						</div>
-					<</if>>
-				<</if>>
-				<<if $incubator.capacity > 0 || $nursery > 0>>
-					<div class="indent">
-						Reserved: $PC.womb[_ap].reserve
-					</div>
-				<</if>>
-
-				<div class="indent">
-					Rename: <<textbox "_tempName" _tempName >> [[Apply | Analyze PC Pregnancy][$PC.womb[_ap].genetics.name = _tempName]]
-				</div>
-				<<if $PC.womb[_ap].age < 4 && ($arcologies[0].FSRestart == "unset" || $eugenicsFullControl == 1 || ($PC.womb[_ap].fatherID != -1 && $PC.womb[_ap].fatherID != -6))>>
-					<div class="indent">
-						<<link "Terminate ovum" "Analyze PC Pregnancy">><<run WombRemoveFetus($PC, _ap)>><</link>>
-						<<if $surgeryUpgrade == 1>>
-							| [[Transplant ovum|Ova Transplant Workaround][$donatrix = $PC, $wombIndex = _ap, $nextLink = "Analyze PC Pregnancy"]]
-						<</if>>
-					</div>
-				<</if>>
-				<<if $incubator.capacity > 0>>
-					<div class="indent">
-						<<if $PC.womb[_ap].reserve === "incubator">>
-							<<link "Don't keep this child $incubator.name" "Analyze PC Pregnancy">>
-								<<set $PC.womb[_ap].reserve = "">>
-								<<set _reservedChildren-->>
-							<</link>>
-						<<elseif _freeTanks - _reservedChildren > 0>>
-							<<link "Keep this child in $incubator.name" "Analyze PC Pregnancy">>
-								<<if $PC.womb[_ap].reserve === "nursery">>
-									<<set _reservedChildrenNursery-->>
-								<</if>>
-								<<set $PC.womb[_ap].reserve = "incubator">>
-								<<set _reservedChildren++>>
-							<</link>>
-						<<else>>
-							There is not enough free space to keep this child in <<= $incubator.name>>.
-						<</if>>
-					</div>
-				<</if>>
-				<<if $nursery > 0>>
-					<div class="indent">
-						<<if $PC.womb[_ap].reserve === "nursery">>
-							<<link "Don't keep this child in $nurseryName" "Analyze PC Pregnancy">>
-								<<set $PC.womb[_ap].reserve = "">>
-								<<set _reservedChildrenNursery-->>
-							<</link>>
-						<<elseif _freeCribs - _reservedChildrenNursery > 0>>
-							<<link "Keep this child in $nurseryName" "Analyze PC Pregnancy">>
-								<<if $PC.womb[_ap].reserve === "incubator">>
-									<<set _reservedChildren-->>
-								<</if>>
-								<<set $PC.womb[_ap].reserve = "nursery">>
-								<<set _reservedChildrenNursery++>>
-							<</link>>
-						<<else>>
-							There is not enough free space to keep this child in $nurseryName.
-						<</if>>
-					</div>
-				<</if>>
-			<<else>>
-				<div class="indent">
-					Unidentified ova found, no detailed data available.
-				</div>
-				<div class="indent">
-					Age: too early for scan.
-				</div>
-				<div class="indent">
-					<<link "Terminate ovum" "Analyze PC Pregnancy">><<run WombRemoveFetus($PC, _ap)>><</link>>
-					<<if $surgeryUpgrade == 1>>
-						| [[Transplant ovum|Ova Transplant Workaround][$donatrix = $PC, $wombIndex = _ap, $nextLink = "Analyze PC Pregnancy"]]
-					<</if>>
-				</div>
-			<</if>>
-		<</capture>>
-		<</for>>
+		<<includeDOM analyzePregnancies($PC)>>
 	</p>
 <</if>>