diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt
index 1d5bcb2eba0d01004bebbe915f2a88fda175dac8..77225b99640c085708a051aa5e0a5cf2f8658a32 100644
--- a/slave variables documentation - Pregmod.txt	
+++ b/slave variables documentation - Pregmod.txt	
@@ -3518,3 +3518,35 @@ WombZeroID($activeSlave, _SlaveID) - automatically scan all fetuses and if their
 
 All this womb system can be much more automated (.preg .pregType .pregSource .pregWeek may have to be done in a way, that they will have no need to be controlled manually anywhere at all. Just will be set fully automatically). But in this case many changes in present game code needed, to REMOVE legacy code.
 Right now they are set correctly, based on state of .womb object through pregnancy, but not outside. Also old style pregnancy initiation (setting only .preg to >0 and .pregType to >=1 ) working too - WombImpregnation function for proper setup of .womb will be called on next SetBellySize call. Also old style pregnancy progression through using .preg++ is supported too, but can have minor issues with character descriptions in some cases, if SetBellySize widget not called before descriptions widgets.
+
+
+
+Advanced pregnancy control structure:
+
+Now, with support of human-animal pregnancy, there is need for ability to change values that been constant before. New structure designed for it.
+
+.pregData property for slave should now contain object with describle pregnancy process. By default it will be set to human data. Templates stored in setup.pregData.x where "x" - name of species.
+
+<<set slave.pregData = setup.pregData.human>>
+
+In code at any time properties that contain data can be acessed now. Properties is RW, so slaves can be changed individually later. Example:
+
+<<if slave.pregData.type == "human">>
+or
+<<set slave.pregData.normalOvaMin = 2, slave.pregData.normalOvaMax = 4>> (setting normal ova count 2-4 on every ovulation).
+
+	Proprty list:
+
+	type 			- name of species. Should math slave.ovaType
+	normalOvaMin 	- normal/base ova count on ovulation (minimal)
+	normalOvaMax	- normal/base ova count on ovulation (maximal)
+	normalBirth		- typical normal pregnancy length in weeks
+	minLiveBirth	- typical weeks that guarantee at least 90% chance to fetus survival if normal birth occur.
+	fetusWeek		- array with weeks control points.
+	fetusSize		- array with size control points.
+	fetusCTR		- array with CTR control points.
+
+	These three array is linked, and values in second and third should be in the same order as in first. (Week of .fetusWeek[i] is correspond to .fetusSize[i] and fetusCTR[i])
+	Control points - it's points of graph as if it builded on paper (one axis - fetusWeek, other - fetusSize/fetusCTR). This graph data used to get actual size of fetus, so no need for manual setting of every week data in array. 
+
+	What is CTR? In most medical data, human fetus size (length) measured as "crown to rump" from 1 to 20 weeks, and "crown to heel" later. Formula that calculate volume of womb should get data in single format. So there is need CTR rate - value that describe difference between full "crown to heel" and "crown to rump" length of fetus (also it's can be used to control aproximation of legs, hands and tails volume). For most animal fetus data it's always 1 as they are not bipedal and "crown to rump" is natural measurements for them. But CTR rate changes might be needed to get more accurate results for volume calculations, as fetus is not sphere and length - not always have the same relation to it's volume.