diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index ef25ba6967854ac74f6d6d67e368e683d0f56c3f..11705d3457d3c0e420983c738afe52296557b1ad 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,12 @@
 
 0.10.7.1-0.7.x
 
+9/19/2018
+
+	35
+	-more vector work from Deepmurk
+	-tweaks to special slave prices and how the catalogue works
+
 9/18/2018
 
 	34
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 09d5808448a0c708e6271e0e5d08209d74ed9eb7..c9b04cc080702892a81f43232505cec94ea08dea 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -8805,6 +8805,10 @@ window.SlaveSort = function SlaveSort(slaves, main=false) {
 	}
 };
 
+window.slaveSortMinor = function slaveSortMinor(slaves) {
+	slaves = slaves.sort((a, b) => a.slaveName < b.slaveName ? -1 : 1);
+}
+
 window.MenialPopCap = function MenialPopCap () {
 	const V = State.variables;
 	let popCap = 500;
diff --git a/devTools/AutoGitVersionUploadBackground.sh b/devTools/AutoGitVersionUploadBackground.sh
index daab2796e9c138b39e222b35ee4c882375c83981..cfb17ea2a37ac38910474cd686ca6bd5fa4f1e64 100755
--- a/devTools/AutoGitVersionUploadBackground.sh
+++ b/devTools/AutoGitVersionUploadBackground.sh
@@ -1,12 +1,12 @@
-#!/bin/sh Additional packages required: meg	MEGAcmd and git
-RD=/Root/FC LD=/tmp/FC U=anon@anon.anon P=13245 Branch=git@ssh.gitgud.io:pregmodfan/fc-pregmod.git ; echo "Fresh clone?" && read VN && clear && mega-login $U $P > /dev/null
+#!/bin/sh Additional packages required: megatools,	MEGAcmd and git
+V=-1 RD=FC/ LD=/tmp/FC U=anon@anon.anon P=13245 Branch=git@ssh.gitgud.io:pregmodfan/fc-pregmod.git ; echo "Fresh clone?" && read VN && clear && mega-login $U $P > /dev/null
 while true; do
-	if [[ $VN == y||$VN == yes ]]; then V=2 && mkdir $LD ; git clone -q $Branch $LD && cd $LD/
-	elif [[ ($VN == n||$VN == no) || $V = 0 ]]; then cd $LD/ && git fetch -q
+	if [[ $VN == y||$VN == yes ]]; then V=2 && mkdir $LD ; git clone -q $Branch $LD
+	elif [[ $VN == n||$VN == no||$V = 0 ]]; then cd $LD/ && git fetch -q
 		if  [ `git rev-list HEAD...origin/pregmod-master --count` != 0 ]; then git pull -q && V=1
 		fi #Check is a slight tweak of https://stackoverflow.com/a/17192101
 	fi
-	if [[ ($V = 2||$V = 1) || $VN == na ]]; then rm bin/*.html ; ./compile > /dev/null && minify -o bin/FC_pregmod.html bin/FC_pregmod.html && mv bin/FC_pregmod.html "bin/FC-pregmod-$(git log -1 --format='%cd' --date='format:%d-%m-%Y-%H-%M')-$(git log -n1 --abbrev-commit|grep -m1 commit|sed 's/commit //')".html && mega-put bin/*.html FC/ && megals -u $U -p $P /Root/FC|sed -n '1!p'|sort -r|tail -n +11|paste -sd " " -|xargs megarm -u $U -p $P > /dev/null && V=0
+	if [[ $VN == na||$V == 2||$V == 1 ]]; then V=0 && cd $LD/ && rm bin/*.html ; ./compile > /dev/null && minify -o bin/FC_pregmod.html bin/FC_pregmod.html && mv bin/FC_pregmod.html "bin/FC-pregmod-$(git log -1 --format='%cd' --date='format:%d-%m-%Y-%H-%M')-$(git log -n1 --abbrev-commit|grep -m1 commit|sed 's/commit //')".html && mega-put bin/*.html FC/ && megals -u $U -p $P /Root/FC|sed -n '1!p'|sort -r|tail -n +11|paste -sd " " -|xargs megarm -u $U -p $P > /dev/null
 	fi
 	clear && sleep 15m
 done 
\ No newline at end of file
diff --git a/sanityCheck b/sanityCheck
index 9945eb4e6534082ac884326f56280e4b36108203..e6509e577f0ad5b67dfb9114f6292c6892109344 100755
--- a/sanityCheck
+++ b/sanityCheck
@@ -50,7 +50,7 @@ $GREP "<<[^<>]*[<>]\?[^<>]*>>>" -- "src/*.tw" | myprint "TooManyAngleBrackets"
 # Check for too many <<<.  e.g.: <<</if>>
 $GREP "<<<[^<>]*[<>]\?[^<>]*>>" -- "src/*.tw" | myprint "TooManyAngleBrackets"
 # Check for wrong capitalization on 'activeslave' and other common typos
-$GREP -e "\$act" --and --not -e "\$\(activeSlave\|activeArcology\|activeStandard\|activeOrgan\|activeLimbs\|activeUnits\)" -- "src/*" | myprint "WrongCapitilization"
+$GREP -e "\$act" --and --not -e "\$\(activeSlave\|activeArcology\|activeStandard\|activeOrgan\|activeLimbs\|activeUnits\|activeCanine\|activeHooved\|activeFeline\)" -- "src/*" | myprint "WrongCapitilization"
 $GREP  "\(csae\|[a-z] She \|attepmts\|youreslf\|advnaces\|canAcheive\|setBellySize\|SetbellySize\|setbellySize\|bellypreg\|pregBelly\|bellyimplant\|bellyfluid\|pronounCaps\)" -- 'src/*' | myprint "SpellCheck"
 $GREP  "\(recieve\|recieves\)" -- 'src/*' | myprint "PregmodderCannotSpellReceive"
 $GREP "\$slave\[" -- 'src/*' | myprint "ShouldBeSlaves"
diff --git a/src/art/vector/Head.tw b/src/art/vector/Head.tw
index 56dce4c77bde2b6c1ee82996edef9bf2c08e834b..d43f14919779453adaddc30dd71c744a1195138f 100644
--- a/src/art/vector/Head.tw
+++ b/src/art/vector/Head.tw
@@ -261,37 +261,3 @@
 		<<include Art_Vector_Head_Outfit_SluttyNurse>>
 	<</if>>
 <</if>>
-
-<<switch _artSlave.eye>>
-<<case "blue">>
-	<<set _eyeColor = "#0579ff">>
-<<case "black">>
-	<<set _eyeColor = "#0b0907">>
-<<case "brown">>
-	<<set _eyeColor = "#795548">>
-<<case "red">>
-	<<set _eyeColor = "#af1c1c">>
-<<case "green">>
-	<<set _eyeColor = "#66b266">>
-<<case "turquois">>
-	<<set _eyeColor = "#39c6b8">>
-<<case "sky-blue">>
-	<<set _eyeColor = "#89b7ff">>
-<<case "hazel">>
-	<<set _eyeColor = "#8d6f1f">>	
-<<case "pale-grey">>
-	<<set _eyeColor = "#b2babb">>
-<<case "white">>
-	<<set _eyeColor = "#ffffff">>
-<<case "pink">>
-	<<set _eyeColor = "#ffb7c4">>
-<<case "yellow">>
-	<<set _eyeColor = "#ffff00">>	
-<<case "orange">>
-	<<set _eyeColor = "#ffa500">>
-<<case "amber">>
-	<<set _eyeColor = "#ffbf00">>		
-<<default>>
-	/* use color for "eyes" by default */
-	<<set _eyeColor = "#89b7ff">>
-<</switch>>
\ No newline at end of file
diff --git a/src/art/vector/Set_Colour_Outfit_JS.tw b/src/art/vector/Set_Colour_Outfit_JS.tw
index 21518062211185f8ef57542970d74e5f617fe8e3..e1d4f085abd4686ead80cfb4743ba3788acd73db 100644
--- a/src/art/vector/Set_Colour_Outfit_JS.tw
+++ b/src/art/vector/Set_Colour_Outfit_JS.tw
@@ -48,7 +48,53 @@ if (artSlave.glassesColor) {
 }
 
 if (artSlave.eyeColor) {
-	s.eyeColor = artSlave.eyeColor; /* eye colour selected by user */
+	switch (artSlave.eyeColor) {
+		case "blue":
+			s.eyeColor = "#0579ff";
+			break;
+		case "black":
+			s.eyeColor = "#0b0907";
+			break;
+		case "brown":
+			s.eyeColor = "#795548";
+			break;
+		case "red":
+			s.eyeColor = "#af1c1c";
+			break;
+		case "green":
+			s.eyeColor = "#66b266";
+			break;
+		case "turquoise":
+			s.eyeColor = "#39c6b8";
+			break;
+		case "sky-blue":
+			s.eyeColor = "#89b7ff";
+			break;
+		case "hazel":
+			s.eyeColor = "#8d6f1f";	
+			break;
+		case "pale-grey":
+			s.eyeColor = "#b2babb";
+			break;
+		case "white":
+			s.eyeColor = "#ffffff";
+			break;
+		case "pink":
+			s.eyeColor = "#ffb7c4";
+			break;
+		case "yellow":
+			s.eyeColor = "#ffff00";
+			break;
+		case "orange":
+			s.eyeColor = "#ffa500";
+			break;
+		case "amber":
+			s.eyeColor = "#ffbf00";
+			break;
+		default:
+			/* use color for "eyes" by default */
+			s.eyeColor = "#89b7ff";
+	}
 }
 
 return s;
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index a3654719c3362a2068290dc4205aae00184ebb04..bd686508b724c616dd703048e10baa8194d091ed 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -1925,6 +1925,10 @@ window.SlaveSort = function SlaveSort(slaves, main=false) {
 	}
 };
 
+window.slaveSortMinor = function slaveSortMinor(slaves) {
+	slaves = slaves.sort((a, b) => a.slaveName < b.slaveName ? -1 : 1);
+}
+
 window.MenialPopCap = function MenialPopCap () {
 	const V = State.variables;
 	let popCap = 500;
diff --git a/src/uncategorized/completeCatalog.tw b/src/uncategorized/completeCatalog.tw
index 6057a1930db20d508396e6511823b30c8518916c..512a47684b38afda13b13584fc28bb9a55d92ed5 100644
--- a/src/uncategorized/completeCatalog.tw
+++ b/src/uncategorized/completeCatalog.tw
@@ -8,7 +8,11 @@
 
 <<for $i = 0; $i < $heroSlaves.length; $i++>>
 	<<if $i > 0>> | <</if>>
-	<<print "[[$heroSlaves[$i].slaveName|Complete Catalog][$activeSlave = getHeroSlave($heroSlaves[" + $i + "], $baseHeroSlave)]]">>
+	<<if $heroSlaves[$i].ID == $activeSlave.ID>>
+		//$heroSlaves[$i].slaveName//
+	<<else>>
+		<<print "[[$heroSlaves[$i].slaveName|Complete Catalog][$activeSlave = getHeroSlave($heroSlaves[" + $i + "], $baseHeroSlave)]]">>
+	<</if>>
 <</for>>
 
 <<if ndef $activeSlave.pubicHColor>>
@@ -17,6 +21,34 @@
 <<if ndef $activeSlave.underArmHColor>>
 	<<set $activeSlave.underArmHColor = $activeSlave.hColor>>
 <</if>>
+<<if ($activeSlave.override_Eye_Color != 1)>>
+	<<switch ($activeSlave.eyeColor)>>
+		<<case "blind blue">>
+			<<set $activeSlave.origEye = "deep blue">>
+		<<case "milky white" "implant">>
+			<<set $activeSlave.origEye = random("blue", "green", "brown", "hazel", "light blue", "light green", "dark green", "dark blue")>>
+		<<default>>
+			<<set $activeSlave.origEye = $activeSlave.eyeColor>>
+	<</switch>>
+<</if>>
+<<if ($activeSlave.override_Race != 1)>>
+	<<set $activeSlave.origRace = $activeSlave.race>>
+<</if>>
+<<if ($activeSlave.override_H_Color != 1)>>
+	<<set $activeSlave.origHColor = $activeSlave.hColor>>
+<</if>>
+<<if ($activeSlave.override_Arm_H_Color != 1)>>
+	<<set $activeSlave.underArmHColor = $activeSlave.hColor>>
+<</if>>
+<<if ($activeSlave.override_Pubic_H_Color != 1)>>
+	<<set $activeSlave.pubicHColor = $activeSlave.hColor>>
+<</if>>
+<<if ($activeSlave.override_Brow_H_Color != 1)>>
+	<<set $activeSlave.eyebrowHColor = $activeSlave.hColor>>
+<</if>>
+<<if ($activeSlave.override_Skin != 1)>>
+	<<set $activeSlave.origSkin = $activeSlave.skin>>
+<</if>>
 <<run SetBellySize($activeSlave)>>
 <<set $specialSlavesPriceOverride = 1>>
 <<run nationalityToAccent($activeSlave)>>
diff --git a/src/uncategorized/specialSlave.tw b/src/uncategorized/specialSlave.tw
index b8e840c25029bb2fb7485f78cd2fec4c83457273..791b7277f0340b4c030f4de0e74a932789a62dfd 100644
--- a/src/uncategorized/specialSlave.tw
+++ b/src/uncategorized/specialSlave.tw
@@ -10,6 +10,7 @@
 
 	<br><br>
 
+	<<run slaveSortMinor($heroSlaves)>>
 	<<set $activeSlave = getHeroSlave($heroSlaves.random(), $baseHeroSlave)>>
 	<<set $activeSlave.weekAcquired = $week>>
 	<<if ndef $activeSlave.pubicHColor>>
@@ -18,6 +19,36 @@
 	<<if ndef $activeSlave.underArmHColor>>
 		<<set $activeSlave.underArmHColor = $activeSlave.hColor>>
 	<</if>>
+	
+	<<if ($activeSlave.override_Eye_Color != 1)>>
+		<<switch ($activeSlave.eyeColor)>>
+			<<case "blind blue">>
+				<<set $activeSlave.origEye = "deep blue">>
+			<<case "milky white" "implant">>
+				<<set $activeSlave.origEye = random("blue", "green", "brown", "hazel", "light blue", "light green", "dark green", "dark blue")>>
+			<<default>>
+				<<set $activeSlave.origEye = $activeSlave.eyeColor>>
+		<</switch>>
+	<</if>>
+	<<if ($activeSlave.override_Race != 1)>>
+		<<set $activeSlave.origRace = $activeSlave.race>>
+	<</if>>
+	<<if ($activeSlave.override_H_Color != 1)>>
+		<<set $activeSlave.origHColor = $activeSlave.hColor>>
+	<</if>>
+	<<if ($activeSlave.override_Arm_H_Color != 1)>>
+		<<set $activeSlave.underArmHColor = $activeSlave.hColor>>
+	<</if>>
+	<<if ($activeSlave.override_Pubic_H_Color != 1)>>
+		<<set $activeSlave.pubicHColor = $activeSlave.hColor>>
+	<</if>>
+	<<if ($activeSlave.override_Brow_H_Color != 1)>>
+		<<set $activeSlave.eyebrowHColor = $activeSlave.hColor>>
+	<</if>>
+	<<if ($activeSlave.override_Skin != 1)>>
+		<<set $activeSlave.origSkin = $activeSlave.skin>>
+	<</if>>
+	
 	<<run SetBellySize($activeSlave)>>
 	<<if $familyTesting == 1>>
 		/* special slaves exceptions to keep siblings sensible */
@@ -52,7 +83,12 @@
 		<</if>>
 	<</if>>
 	<<run nationalityToAccent($activeSlave)>>
+	<<set $specialSlavesPriceOverride = 1>>
 	<<slaveCost $activeSlave>>
+	<<set $slaveCost = (10*Math.trunc(($slaveCost/10)*2))>>
+	<<if $slaveCost < 20000>>
+		<<set $slaveCost += random(5000,30000)>>
+	<</if>>
 
 	The offered price is <<print cashFormat($slaveCost)>>.
 
@@ -68,7 +104,6 @@
 
 	<br><br>
 
-	<<set $specialSlavesPriceOverride = 1>>
 	<<set $saleDescription = 1>><<include "Long Slave Description">>
 	<<set $specialSlavesPriceOverride = 0>>