diff --git a/src/cheats/mod_EditSlaveCheat.tw b/src/cheats/mod_EditSlaveCheat.tw
index f6ea60b9e09b961d3966c539996567ebb7f02c89..f3e63d0343c906af922cf3d35741f9bf6334b110 100644
--- a/src/cheats/mod_EditSlaveCheat.tw
+++ b/src/cheats/mod_EditSlaveCheat.tw
@@ -158,7 +158,14 @@
 
 <br><br>
 
+<<switch $activeSlave.hStyle>>
+<<case "tails" "dreadlocks" "curls" "cornrows">>
+''Her hair is in $activeSlave.hStyle''
+<<case "ponytail">>
+''Her hair is in a $activeSlave.hStyle''
+<<default>>
 ''Her hair is $activeSlave.hStyle''
+<</switch>>
 Custom hair description: <<textbox "$activeSlave.hStyle" $activeSlave.hStyle>>
 <br>
 //For best results, use a short, uncapitalized and unpunctuated description; for example: 'back in a ponytail'//
diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw
index a712f27c802396c81ba76ea9c6924e2962f5cabc..2c171948a6c18a974d3ed514ba61d0a38c7d0dcc 100644
--- a/src/events/intro/introSummary.tw
+++ b/src/events/intro/introSummary.tw
@@ -824,6 +824,12 @@ Image display
 		<<set $PC.engineering = 100>>
 	<<elseif $PC.career == "medicine">>
 		<<set $PC.medicine = 100>>
+	<<elseif $PC.career == "arcology owner">>
+		<<set $PC.trading = 100>>
+		<<set $PC.warfare = 100>>
+		<<set $PC.slaving = 100>>
+		<<set $PC.engineering = 100>>
+		<<set $PC.medicine = 100>>
 	<<elseif $PC.career == "escort">>
 		<<set $PC.trading = 50>>
 		<<set $PC.warfare = -100>>
diff --git a/src/uncategorized/PESS.tw b/src/uncategorized/PESS.tw
index f1bd17b6868420222f9f1e3596689326bbd88d47..cd3c242f721466427581829ea9669bd182f18c7c 100644
--- a/src/uncategorized/PESS.tw
+++ b/src/uncategorized/PESS.tw
@@ -201,7 +201,7 @@ She sees you examining at her, and looks back at you submissively, too tired to
 <<link "Make her the face of an ad campaign">>
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
-	You bring her out to a pretty balcony and put her through an extended photoshoot. She has no idea what you're planning, but she's skilled enough not to need to. She dons different outfits, changes makeup, and even shifts personas for the camera, producing hundreds of elegant, sensual and eye-catching images. You dismiss her back to the club when you're done, and she clearly thinks little of it. The next day, however, you walk her out onto the club in the morning. When the two of you, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>> and DJ, reach the main club, she stops short when she catches sight of the main billboard screen. There she is, resplendent and opulent, ten meters tall, giving the viewer a sultry look. She only breaks down for a single moment, but it's quite a moment: she cries rather inelegantly, <<if SlaveStatsChecker.checkForLisp($activeSlave)>>lisping, "I love you <<if def $PC.customTitleLisp>>$PC.customTitleLisp<<elseif $PC.title != 0>>Mathter<<else>>Mithtreth<</if>>" into your ear<<else>>sobbing "I love you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>" into your ear<</if>> before giving you a @@color:hotpink;wet kiss.@@ Then she runs over to stand under the screen, looking back at you to give you a @@color:green;picture-perfect@@ imitation of the billboard she's standing under before laughing at herself a little.
+	You bring her out to a pretty balcony and put her through an extended photoshoot. She has no idea what you're planning, but she's skilled enough not to need to. She dons different outfits, changes makeup, and even shifts personas for the camera, producing hundreds of elegant, sensual and eye-catching images. You dismiss her back to the club when you're done, and she clearly thinks little of it. The next day, however, you walk her out onto the club in the morning. When the two of you, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>> and DJ, reach the main club, she stops short when she catches sight of the main billboard screen. There she is, resplendent and opulent, ten meters tall, giving the viewer a sultry look. She only breaks down for a single moment, but it's quite a moment: she cries rather inelegantly, <<if canTalk($activeSlave)>><<if SlaveStatsChecker.checkForLisp($activeSlave)>>lisping, "I love you <<if def $PC.customTitleLisp>>$PC.customTitleLisp<<elseif $PC.title != 0>>Mathter<<else>>Mithtreth<</if>>" into your ear<<else>>sobbing "I love you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>" into your ear<</if>><</if>> before giving you a @@color:hotpink;wet kiss.@@ Then she runs over to stand under the screen, looking back at you to give you a @@color:green;picture-perfect@@ imitation of the billboard she's standing under before laughing at herself a little.
 	<<set $cash -= 1000>>
 	<<set $rep += 500>>
 	<<set $activeSlave.devotion += 4>>
diff --git a/src/uncategorized/addCustomDescriptors.tw b/src/uncategorized/addCustomDescriptors.tw
index ad25aba5700a235427322bcc060afb266ee58902..eef21774cb9bb66a388c3b3e38079f022bd10916 100644
--- a/src/uncategorized/addCustomDescriptors.tw
+++ b/src/uncategorized/addCustomDescriptors.tw
@@ -52,7 +52,14 @@ You may enter custom descriptors for your slave's hair color, hair style, tattoo
 <</if>>
 
 <br><br>
+<<switch $activeSlave.hStyle>>
+<<case "tails" "dreadlocks" "curls" "cornrows">>
+Her hair is in $activeSlave.hStyle.	
+<<case "ponytail">>
+Her hair is in a $activeSlave.hStyle.
+<<default>>
 Her hair is $activeSlave.hStyle.
+<</switch>>
 Custom hair description: <<textbox "$activeSlave.hStyle" $activeSlave.hStyle "Add custom descriptors">>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;//For best results, use a short, uncapitalized and unpunctuated description; for example: 'back in a ponytail'//
 
@@ -85,4 +92,4 @@ Assign her a custom image:
 	<<textbox "$activeSlave.customImage" "" "Add custom descriptors">>
 <</if>>
 <<link "Reset">><<set $activeSlave.customImage = 0>><<goto "Add custom descriptors">><</link>>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;//File must be in .png format. Place file in the \resources folder. Enter the filename without the .png extension. For example, for a file with the path \bin\resources\headgirl.png, enter headgirl.//
\ No newline at end of file
+<br>&nbsp;&nbsp;&nbsp;&nbsp;//File must be in .png format. Place file in the \resources folder. Enter the filename without the .png extension. For example, for a file with the path \bin\resources\headgirl.png, enter headgirl.//
diff --git a/src/uncategorized/assistantAutosurgery.tw b/src/uncategorized/assistantAutosurgery.tw
index 53ac58e0bc4c4acecfd710691258f2f48aa41e3b..a4ca635754051b8b2ad32824ab83c5ef8cee0701 100644
--- a/src/uncategorized/assistantAutosurgery.tw
+++ b/src/uncategorized/assistantAutosurgery.tw
@@ -43,7 +43,7 @@
 	<<set $surgeries.push("a nicer face")>>
 	<<if $slaves[$i].faceShape is "masculine">><<set $slaves[$i].faceShape = "androgynous">><</if>>
 	<<set $slaves[$i].faceImplant = 1>>
-	<<set $slaves[$i].face = Math.trunc($slaves[$i].face+20,-100,100)>>
+	<<set $slaves[$i].face = Math.clamp($slaves[$i].face+20,-100,100)>>
 	<<set $cash -= $surgeryCost>>
 	<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
 <<elseif ($slaves[$i].ageImplant != 1) && ($slaves[$i].physicalAge >= 25) && ($thisSurgery.cosmetic != 0)>>
@@ -86,21 +86,21 @@
 	<<set $surgeries.push("a nicer face")>>
 	<<if $slaves[$i].faceShape is "masculine">><<set $slaves[$i].faceShape to "androgynous">><</if>>
 	<<set $slaves[$i].faceImplant to 2>>
-	<<set $slaves[$i].face = Math.trunc($slaves[$i].face+20,-100,100)>>
+	<<set $slaves[$i].face = Math.clamp($slaves[$i].face+20,-100,100)>>
 	<<set $cash -= $surgeryCost>>
 	<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
 <<elseif ($slaves[$i].faceImplant > 0) && ($slaves[$i].face <= 95) && ($surgeryUpgrade == 1) && ($thisSurgery.cosmetic is 2)>>
 	<<set $surgeries.push("a nicer face")>>
 	<<if $slaves[$i].faceShape is "masculine">><<set $slaves[$i].faceShape to "androgynous">><</if>>
 	<<set $slaves[$i].faceImplant to 2>>
-	<<set $slaves[$i].face = Math.trunc($slaves[$i].face+20,-100,100)>>
+	<<set $slaves[$i].face = Math.clamp($slaves[$i].face+20,-100,100)>>
 	<<set $cash -= $surgeryCost>>
 	<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
 <<elseif ($slaves[$i].waist >= -95) && ($thisSurgery.cosmetic is 2) && ($seeExtreme == 1)>>
 	<<set $surgeries.push("a narrower waist")>>
-	<<set $slaves[$i].waist = Math.trunc($slaves[$i].waist-20,-100,100)>>
+	<<set $slaves[$i].waist = Math.clamp($slaves[$i].waist-20,-100,100)>>
 	<<set $cash -= $surgeryCost>>
-	<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 30.5>><<else>><<set $slaves[$i].health -= 4>><</if>>
+	<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
 <<elseif ($slaves[$i].voice < 3) && ($slaves[$i].voiceImplant == 0) && ($thisSurgery.cosmetic == 2)>>
 	<<set $surgeries.push("a bimbo's voice")>>
 	<<set $slaves[$i].voice += 1>>
diff --git a/src/uncategorized/assistantEvents.tw b/src/uncategorized/assistantEvents.tw
index 828344fbd784cf097463f0e3d3d931b19e04aa52..05c0a6e7b8aa9ee2a27c0e6da9c09e16df097345 100644
--- a/src/uncategorized/assistantEvents.tw
+++ b/src/uncategorized/assistantEvents.tw
@@ -56,6 +56,12 @@ She continues more seriously,
 <</if>>
 The character vanishes, and the symbol returns. "Ahem. What do you think, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>?"
 
+<<case "assistant SP Pack 2">>
+
+"Cool! New appearances to play around with!" Your assintant happily chimes. "Lets see what's inside! This looks heavenly..." She hunches forward as a large pair of white feathered wings extend form her upper back. She takes several experimental flaps before taking to the sky. "I feel positively radiant! Maybe a smaller version will be more to your liking?" She loses both height and wingspan until she stands rougly equivalent to 120cm. She flutters around cutely. "This is neat, I'm like cupid. Want me to hook you up with anyone?" She winks as her wings become batlike and a pair of cute little nubs appear on her head. "Or maybe you'd just like to play with me instead." The impish figure flirts, before landing and blossoming into a stunning woman. "You know a succubus can take her lover's ideal form." She runs her hands down her sides and to her crotch. She begins rubbing her clit as it steadily grows into a meaty cock. "Or an incubus, for the ladies." She returns to her previous form. "Says here it comes with 'bonus novice witch' too. Neat. What's this though? It looks like an appe"
+
+<br><br><br><br><br><br><br><br>You tap at the screen; did she crash or something?
+
 <<case "assistant FS">>
 
 <<set $assistantFSOptions = 1>>
@@ -930,6 +936,18 @@ Suddenly, there is a fresh source of light behind you. The reflection you're loo
 	pouts her lips
 <<case "preggololi">>
 	squares her shoulders, rests her hands atop her middle,
+<<case "angel">>
+	looks up, hoping you'll answer her prayers,
+<<case "cherub" "imp">>
+	takes flight, steadies herself,
+<<case "incubus">>
+	squares her shoulders, her dick begining to harden,
+<<case "succubus">>
+	squares her shoulders, pushes her breasts together,
+<<case "witch">>
+	squares her shoulders, gathers up all her confidence,
+<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
+	begins puffing up
 <<case "schoolgirl">>
 	bites her lip cutely
 <<default>>
@@ -958,9 +976,23 @@ and asks, "May I have a name?"
 	<<case "hypergoddess">>
 	  She smiles at you radiantly.  "Thank you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>.  I love you.  I love all my children, but you most of all.  I swear I'll name the next hundred after you."  She begins to labor on the first.
 	<<case "loli">>
-	  She jumps up and down clapping excitedly.  "Thankyouthankyouthankyouthankyou!  I love you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>!"  It takes her some time to stop hopping excitedly.
+	  She jumps up and down clapping excitedly. "Thankyouthankyouthankyouthankyou!  I love you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>!"  It takes her some time to stop hopping excitedly.
 	<<case "preggololi">>
-	  She breaks down and starts crying.  "I love you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>.  Thank you so much."  She cradles her pregnant belly as she calms down.
+	  She breaks down and starts crying. "I love you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>.  Thank you so much."  She cradles her pregnant belly as she calms down.
+	<<case "angel">>
+		She leaps to her feet, tears streaming down her face. "Thank you so much <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>! Thank you for this most wonderful gift!" She kneels back down to pray for the rest of your stock.
+	<<case "cherub">>
+		She crashes to the ground in shock before rolling into a kneel. "Thank you so much <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>! I promise I will do everything I can to bring your teachings to your followers!" She flutters around cheerfully saying her new name.
+	<<case "incubus">>
+		She cums hard at your response. "Excellent <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>! I can't wait to hear it shouted out of the next girl I plow!" She says, ready to cum again.
+	<<case "succubus">>
+		She hops up and down, jiggling in all the right places. "I can't wait to here you talking dirty using my new name, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>!"
+	<<case "imp">>
+		She crashes to the ground in shock before rolling into a kneel. "Thank you so much <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>!" She shouts, face to the ground, "If you want me to do anything, and I mean 'anything', I'm all yours." She tosses you a wink.
+	<<case "witch">>
+		She collapses to the ground in tears. "You've made me happier than correctly casting a spell ever could, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>." She wipes her face. "I promise to try harder than ever for you!" She vows.
+	<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
+		She practically explodes. You have no idea what you are looking at, but it's likely happy.
 	<<case "schoolgirl">>
 		She was on the verge of tears already, and begins to cry. "Th-thank you, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>. I love you," she blubbers inelegantly. "It's just so, like, you know." She waves her hand in apology for her inability to express herself.
 	<<default>>
@@ -1006,6 +1038,19 @@ Your personal assistant has been adapting to <<if $assistant>>her<<else>>its<</i
 		a fellow MILF of a businesswoman. The new avatar has slightly bigger tits and somewhat thicker glasses, but they could be sisters.
 	<<case "fairy" "pregnant fairy">>
 		a fellow fairy, though this grey-haired fairy wears glasses and a business-like blue dress, looking and behaving more formally.
+	<<case "angel">>
+		a fellow angel. She looks quite intelligent; her glasses and short hair complement her.
+	<<case "cherub">>
+		a fellow cherub, though this one is a little taller, with short hair and a certain haughtiness to her.
+	<<case "incubus">>
+		a fresh young girl, similar in style to the incubus. She's completely nude, and judging by her blushing, still a virgin; for now, at least.
+	<<case "succubus">>
+	<<case "imp">>
+		a fellow imp, though this one is a little lankier, with short hair and an air of uncertainty about her.
+	<<case "witch">>
+		a fellow apprentice witch. This which is noticably pudgy, with long hair and glasses, and seems to be just as inept at magic as her tutor.
+	<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
+		a cute human girl. She doesn't seem to realize what the woman she is following really is.
 	<<case "amazon">>
 		a tribeswoman modeled to look like she's from the same group as the amazon. She's much more feminine, however.
 	<</switch>>
@@ -1043,6 +1088,20 @@ Your personal assistant has been adapting to her greatly increased computing pow
 	thin appearance 
 <<case "preggololi">>
 	gravid appearance 
+<<case "angel">>
+	angelic appearrance
+<<case "cherub">>
+	fluttering appearance
+<<case "incubus">>
+	hung appearance
+<<case "succubus">>
+	sultry appearance
+<<case "imp">>
+	mishevious appearance
+<<case "witch">>
+	hatted appearance
+<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
+	pulsating appearance
 <<case "schoolgirl">>
 	studently appearance
 <</switch>>
@@ -1063,15 +1122,29 @@ $assistantName's avatar seems to be extremely escited over something. Disregardi
 <<case "pregnant fairy">>
 	//placeholder//
 <<case "goddess">>
-	She hops up and down clutching a virtual printout of the report, her huge breasts splattering milk everywhere and invoking a stomr of kicks from her many children.
+	She hops up and down clutching a virtual printout of the report, her huge breasts splattering milk everywhere and invoking a storm of kicks from her many children.
 <<case "hypergoddess">>
 	She struggles to hop up and down while clutching a virtual printout of the report. After a single hop, she is dragged to the ground by labor pains to give birth to a number of over excited babies.
 <<case "loli">>
 	She hops up and down excitedly clutching a virtual printout of the report; she doesn't seem to be interested in stopping.
 <<case "preggololi">>
 	She hops up and down excitedly clutching a virtual printout of the report; she only stops once her child starts kicking in protest.
+<<case "angel">>
+	She hops up and down clutching a virtual printout of the report, an unusual sight given that she can fly.
+<<case "cherub">>
+	She flutters back and forth clutching a virtual printout of the report, occasional doing a loop or roll.
+<<case "incubus">>
+	She hops up and down excitedly clutching a virtual printout of the report, her erection slapping against her chest until she is so overcome by excitement she unleashes it directly into her own face.
+<<case "succubus">>
+	She hops up and down excitedly clutching a virtual printout of the report; her tantalizing body is particularly captivating today.
+<<case "imp">>
+	She flaps back and forth clutching a virtual printout of the report, occasional doing a loop or roll.
+<<case "witch">>
+	She hops up and down excitedly clutching a virtual printout of the report; until she trips on the hem of her robes, falling onto her butt and fully revealing her naked pussy.
+<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
+	She is trying her hardest to appear convincingly human, even losing focus on you.
 <<case "schoolgirl">>
-	She hops up and down excitedly clutching a virtual printout of the report; her breasts juggling delightfully in her blouse and her skirt flipping up with each descent revealing her panties.
+	She hops up and down excitedly clutching a virtual printout of the report; her breasts jiggling delightfully in her blouse and her skirt flipping up with each descent revealing her panties.
 <</switch>>
 "Sorry, sorry. So could I...?"
 <br><br>
@@ -1192,6 +1265,62 @@ __Personal assistant appearances:__
 	<</replace>>
 <</link>>
 
+<<case "assistant SP Pack 2">>
+
+After several minutes, she snaps back to life, with no mention about what exactly tied her up for so long.
+<br>
+__Personal assistant appearances:__
+<br>&nbsp;&nbsp;&nbsp;&nbsp;<<link "Angel">>
+	<<replace "#result">>
+	At your order, she installs the angel appearance. She spreads her wings and hecks out her new body, "Thanks, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, but could I have a robe or something? I'm indecent!" She blushes red. "You can always customize me from the arcology management menu," she adds.
+	<<set $assistantAppearance = "angel">>
+	<</replace>>
+<</link>>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;<<link "Cherub">>
+  <<replace "#result">>
+  <<nobr>>
+	At your order, she installs the cherub appearance. She returns to her youthful figure and sprouts her wings. "This is awesome, little embarrassing though..." She says, covering her shame. "You can always customize me from the arcology management menu," she adds.
+    <<set $assistantAppearance = "cherub">>
+  <</nobr>><</replace>>
+<</link>>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;<<link "Imp">>
+  <<replace "#result">>
+  <<nobr>>
+	At your order, she installs the cherub appearance. She returns to her youthful figure and sprouts her wings. "This is awesome! So, wanna fool around? Maybe go torment some slaves?" She says, pulling out a pitchfork. "You can always customize me from the arcology management menu," she adds.
+    <<set $assistantAppearance = "imp">>
+  <</nobr>><</replace>>
+<</link>>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;<<link "Succubus">>
+	<<replace "#result">>
+	At your order, she installs the succubus appearance. She promptly takes your breath away. "Thank you, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>. Now how shall I show you my appreciation..." Her avatar trails off while spreading her legs and flashing you her lovely pussy. "You can always customize me from the arcology management menu," she adds, with a hint of dissaproval.
+	<<set $assistantAppearance = "succubus">>
+	<</replace>>
+<</link>>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;<<link "Incubus">>
+	<<replace "#result">>
+	At your order, she installs the incubus appearance. She becomes rather masculine, sporting an soft cock nearly as long as her thigh. "Thank you, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>. This is going to be fun. Would you like a taste?" She steadily becomes erect, a bead of precum forming at it's tip. "You can always customize me from the arcology management menu," she adds, with a hint of dissaproval.
+	<<set $assistantAppearance = "incubus">>
+	<</replace>>
+<</link>>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;<<link "witch">>
+  <<replace "#result">>
+	At your order, she installs the novice witch appearance. She wraps a tightly clinging robe around her voluptuous body and dons a wide-brimmed hat. "You can always customize me from the arcology management menu," she adds, pulling a book of lewd spell out.
+    <<set $assistantAppearance = "witch">>
+	<</replace>>
+<</link>>
+<<link "_">>
+  <<replace "#result">>
+	At your order, she installs the bugged appearance. Her body twists and contorts into an abomination of flesh and bone. It is honestly unsettling to look at. The thing morphs its body into a familiar female shape, though it is still off. Especially her eyes; they seem soulless. "You can always customize me from the arcology management menu," she adds, in an ill pronounced mimicry of your voice.
+    <<set $assistantAppearance = "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
+	<</replace>>
+<</link>>
+<br><<link "Your current appearance will do">>
+	<<replace "#result">>
+	At your order, she maintains the $assistantAppearance appearance as her avatar. "Yes, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>," she confirms, and adds "if you reconsider, I can be customized from the arcology management menu."
+	<<set $assistantAppearance = "normal">>
+	<</replace>>
+<</link>>
+
 <<case "assistant FS">>
 
 __Personal assistant appearances:__
@@ -1291,6 +1420,14 @@ __Personal Assistant and Market Assistant relationship styles:__
 		a nice friend. $assistantName jumps and gives  big "Hooray!" and flies into her new friend witha big hug. The market assistant's avatar reaches around and gingerly pats her on the back before separating and turning to you. "Thank you for having me," she says with a bow. "I hope I can serve you well."
 	<<case "amazon">>
 		a very nice friend. $assistantName chuckles, and the new tribeswoman smiles pleasantly at her. The amazon introduces herself to the market assistant's avatar in a loud voice, chattering away as the new avatar watches her energy tolerantly.
+	<<case "angel">>
+		another angel and fine friend. $assistantName smiles, and the new girl beams a smile in reutrn. "Hey," $assistantName says to the market assistant's avatar, "you wouldn't mind helping me guide the souls of this place, would you?" "Of course I would!" She replies, slightly taken aback that wasn't obvious.
+	<<case "cherub">>
+	<<case "incubus">>
+	<<case "succubus">>
+	<<case "imp">>
+	<<case "witch">>
+	<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
 	<</switch>>
 	<<set $marketAssistantRelationship = "cute">>
 	<</replace>>
@@ -1319,6 +1456,13 @@ __Personal Assistant and Market Assistant relationship styles:__
 		is quite the catch, $assistantName giggles and flies at the market assistant. "Ah-" her voice is cut off as $assistantName locks lips with her. The market assistant's avater relaxes in her arms, slowly bringing her own around the fairy's waist as they continue to make out.
 	<<case "pregnant fairy">>
 		is quite the catch, $assistantName giggles and flies at the market assistant. "Ah-" her voice is cut off as $assistantName locks lips with her. The market assistant's avater relaxes in her arms, slowly bringing her hand up to caress the pregnant fary's swollen belly as they continue to make out.
+	<<case "angel">>
+	<<case "cherub">>
+	<<case "incubus">>
+	<<case "succubus">>
+	<<case "imp">>
+	<<case "witch">>
+	<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
 	<<case "amazon">>
 		would be a good partner. $assistantName laughs nervously and turns to the new tribeswoman, saying "Um, would you keep my fireside? I'm, um, very strong." The market assistant's avatar smiles and kisses her. "And you're very beautiful," she says, placing the amazon's hands on her bare breasts. The amazon sweeps her new tribal wife up into her arms with a shout of triumph.
 	<</switch>>
@@ -1349,6 +1493,13 @@ __Personal Assistant and Market Assistant relationship styles:__
 		"Oh, merde." $assistantName giggles at her exclamation. "Oh don't you worry about a thing," She whispers, wrapping her fingers around the market assistant's shoulders. " I'm gonna treat you reeeaaal niiicely." She blows hot air into her pointed ear and gives it a slow, sensual lick. The market assistant trembles from the sensation.
 	<<case "pregnant fairy">>
 		"Oh, merde." $assistantName giggles at her exclamation. "Oh don't you worry about a thing," She whispers, wrapping her around the market assistant's belly. " I'll gonna treat you like a proper lady." She traces her fingers along her belly while bumping her own swollen belly into her back for emphasis.
+	<<case "angel">>
+	<<case "cherub">>
+	<<case "incubus">>
+	<<case "succubus">>
+	<<case "imp">>
+	<<case "witch">>
+	<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
 	<<case "amazon">>
 		$assistantName snaps her fingers, and the new tribeswoman's paint and tribal markings change to that of a different group. That done, $assistantName promptly knocks her out, scoops her up, and carries her prize off.
 	<</switch>>
@@ -1377,6 +1528,14 @@ __Personal Assistant and Market Assistant relationship styles:__
 		becoming a much younger version of $assistantName's avatar. About a generation apart, in fact. $assistantName turns to the market assistant's avatar to introduce herself. "Come here, honey," she says, patting her thighs. The new avatar sits on her mother's lap, and they kiss lasciviously, stripping each others' jackets off.
 	<<case "fairy" "pregnant fairy">>
 		becoming very similar to $assistantName's avatar, though still keeping her former personality. "We're sisters now!" $assistantName shouts as she leaps into her sister and unleashing a giant hug. Gingerly hugging her new sister in return, the market assistant turns to to greet you. " Thank you for having me," she pauses, then blushes. "And...and for my sister." She turns back to her childish older sister and pats her on the head.
+	<<case "angel">>
+	<<case "cherub">>
+	<<case "incubus">>
+	<<case "succubus">>
+	<<case "imp">>
+	<<case "witch">>
+	<<case "ERROR_1606_APPEARANCE_FILE_CORRUPT">>
+		becoming an obvious sibling of $assistantName's avatar. $assistantName turns to face her "sister" who responds with an uncertain "Sister? You haven't been... right, lately. Are you OK?" She barely has a chance to scream as $assistantName's body splits open, her interior tentacles wrap around the hapless girl and yank her into the waiting maw. She reforms into the sister's appearance, albeit with a massive, struggling belly. It seems she is keeping her for some nefarious purpose.
 	<<case "amazon">>
 		becoming an obvious sibling of $assistantName's avatar, though the new avatar is a tribe wife rather than a musclegirl, with huge breasts and broad hips. $assistantName grabs her sister by the shoulders without preamble and plants a kiss on her lips. They need no introduction, and after a short time, $assistantName carries her sibling conquest away to have her way with her.
 	<</switch>>
diff --git a/src/uncategorized/costs.tw b/src/uncategorized/costs.tw
index 64a0efd33e3470833b65cb1a2e99c889c5a34bd5..137113fd59e91829f407f4196a0dadd22bb58753 100644
--- a/src/uncategorized/costs.tw
+++ b/src/uncategorized/costs.tw
@@ -317,6 +317,18 @@
 	<<set $costs += 1000>>
 <</if>>
 
+<<if ($personalAttention == "trading")>>
+	<<set $costs += 10000>>
+<<elseif ($personalAttention == "warfare")>>
+	<<set $costs += 10000>>
+<<elseif ($personalAttention == "slaving")>>
+	<<set $costs += 10000>>
+<<elseif ($personalAttention == "engineering")>>
+	<<set $costs += 10000>>
+<<elseif ($personalAttention == "medicine")>>
+	<<set $costs += 10000>>
+<</if>>
+
 <<if $cyberMod != 0 && $researchLab.built == "true">>
 	<<set $costs += ((100*$researchLab.maxSpace)+(300*$researchLab.hired)+(100*$researchLab.hired))>>
 <</if>>
diff --git a/src/uncategorized/costsReport.tw b/src/uncategorized/costsReport.tw
index 033f87f9c89e1fd3e634a07b6d7eba6103ad94a4..2933b84cebdf6e0f47e7178852ad4c0022b1bae6 100644
--- a/src/uncategorized/costsReport.tw
+++ b/src/uncategorized/costsReport.tw
@@ -139,6 +139,18 @@
 	<br>Coursing Association membership: ¤1000
 <</if>>
 
+<<if ($personalAttention == "trading")>>
+	<br>Trading trainer fees: ¤10000
+<<elseif ($personalAttention == "warfare")>>
+	<br>Warfare trainer fees: ¤10000
+<<elseif ($personalAttention == "slaving")>>
+	<br>Slaving trainer fees: ¤10000
+<<elseif ($personalAttention == "engineering")>>
+	<br>Engineering trainer fees: ¤10000
+<<elseif ($personalAttention == "medicine")>>
+	<br>Medicine trainer fees: ¤10000
+<</if>>
+
 <br>
 
 <<for $i = 0; $i < $slaves.length; $i++>>
diff --git a/src/uncategorized/economics.tw b/src/uncategorized/economics.tw
index bca251fe6548051e744b437afae41301d4336715..ff809ec257a9590e4fa69562868bcd25fda4b195 100644
--- a/src/uncategorized/economics.tw
+++ b/src/uncategorized/economics.tw
@@ -224,6 +224,119 @@ __Personal Business__
 <<else>>
 	You have enough cash to manage your affairs, but not enough to do much business.
 <</if>>
+
+<<if ($personalAttention == "trading")>>
+	<<set _oldSkill = $PC.trading>>
+	<<set $PC.trading += random(5,10)>>
+	<<if _oldSkill <= 10>>
+		<<if $PC.trading > 10>>
+			You now have @@color:green;basic knowledge@@ about how to be a venture capitalist.
+		<</if>>
+	<<elseif _oldSkill <= 30>>
+		<<if $PC.trading > 30>>
+			You now have @@color:green;some skill@@ as a venture capitalist.
+		<</if>>
+	<<elseif _oldSkill <= 60>>
+		<<if $PC.trading > 60>>
+			You are now an @@color:green;expert venture capitalist.@@
+		<</if>>
+	<<else>>
+		<<if $PC.trading >= 100>>
+			<<set $personalAttention = "business">>
+			You are now a @@color:green;master venture capitalist.@@
+		<</if>>
+	<</if>>
+	
+<<elseif ($personalAttention == "warfare")>>
+	<<set _oldSkill = $PC.warfare>>
+	<<set $PC.warfare += random(5,10)>>
+	<<if _oldSkill <= 10>>
+		<<if $PC.warfare > 10>>
+			You now have @@color:green;basic knowledge@@ about how to be a mercenary.
+		<</if>>
+	<<elseif _oldSkill <= 30>>
+		<<if $PC.warfare > 30>>
+			You now have @@color:green;some skill@@ as a mercenary.
+		<</if>>
+	<<elseif _oldSkill <= 60>>
+		<<if $PC.warfare > 60>>
+			You are now an @@color:green;expert mercenary.@@
+		<</if>>
+	<<else>>
+		<<if $PC.warfare >= 100>>
+			<<set $personalAttention = "business">>
+			You are now a @@color:green;master mercenary.@@
+		<</if>>
+	<</if>>
+
+<<elseif ($personalAttention == "slaving")>>
+	<<set _oldSkill = $PC.slaving>>
+	<<set $PC.slaving += random(5,10)>>
+	<<if _oldSkill <= 10>>
+		<<if $PC.slaving > 10>>
+			You now have @@color:green;basic knowledge@@ about how to be a slaver.
+		<</if>>
+	<<elseif _oldSkill <= 30>>
+		<<if $PC.slaving > 30>>
+			You now have @@color:green;some skill@@ as a slaver.
+		<</if>>
+	<<elseif _oldSkill <= 60>>
+		<<if $PC.slaving > 60>>
+			You are now an @@color:green;expert slaver.@@
+		<</if>>
+	<<else>>
+		<<if $PC.slaving >= 100>>
+			<<set $personalAttention = "business">>
+			You are now a @@color:green;master slaver.@@
+		<</if>>
+	<</if>>
+	
+<<elseif ($personalAttention == "engineering")>>
+	<<set _oldSkill = $PC.engineering>>
+	<<set $PC.engineering += random(5,10)>>
+	<<if _oldSkill <= 10>>
+		<<if $PC.engineering > 10>>
+			You now have @@color:green;basic knowledge@@ about how to be an arcology engineer.
+		<</if>>
+	<<elseif _oldSkill <= 30>>
+		<<if $PC.engineering > 30>>
+			You now have @@color:green;some skill@@ as an arcology engineer.
+		<</if>>
+	<<elseif _oldSkill <= 60>>
+		<<if $PC.engineering > 60>>
+			You are now an @@color:green;expert arcology engineer.@@
+		<</if>>
+	<<else>>
+		<<if $PC.engineering >= 100>>
+			<<set $personalAttention = "business">>
+			You are now a @@color:green;master arcology engineer.@@
+		<</if>>
+	<</if>>
+	
+<<elseif ($personalAttention == "medicine")>>
+	<<set _oldSkill = $PC.medicine>>
+	<<set $PC.medicine += random(5,10)>>
+	<<if _oldSkill <= 10>>
+		<<if $PC.medicine > 10>>
+			You now have @@color:green;basic knowledge@@ about how to be a slave surgeon.
+		<</if>>
+	<<elseif _oldSkill <= 30>>
+		<<if $PC.medicine > 30>>
+			You now have @@color:green;some skill@@ as a slave surgeon.
+		<</if>>
+	<<elseif _oldSkill <= 60>>
+		<<if $PC.medicine > 60>>
+			You are now an @@color:green;expert slave surgeon.@@
+		<</if>>
+	<<else>>
+		<<if $PC.medicine >= 100>>
+			<<set $personalAttention = "business">>
+			You are now a @@color:green;master slave surgeon.@@
+		<</if>>
+	<</if>>
+	
+<</if>>
+
 <<if $cash > 1000>>
 <<if $CashForRep == 1>>
 	This week you gave up business opportunities worth ¤$policyCost to help deserving citizens, @@color:green;burnishing your reputation.@@
diff --git a/src/uncategorized/endWeek.tw b/src/uncategorized/endWeek.tw
index 39cb58fcf757741da3886df14da37d4c892107d3..66b27a89e9758bc98ec8158517aaf72cb8cfbc21 100644
--- a/src/uncategorized/endWeek.tw
+++ b/src/uncategorized/endWeek.tw
@@ -121,18 +121,6 @@
 	<<set $PC.preg++>>
 <</if>>
 
-<<if ($personalAttention == "trading")>>
-	<<set $PC.trading += random(5,10), $cash -= 10000>><<if $PC.trading >= 100>><<set $personalAttention = "sex">><</if>>
-<<elseif ($personalAttention == "warfare")>>
-	<<set $PC.warfare += random(5,10), $cash -= 10000>><<if $PC.warfare >= 100>><<set $personalAttention = "sex">><</if>>
-<<elseif ($personalAttention == "slaving")>>
-	<<set $PC.slaving += random(5,10), $cash -= 10000>><<if $PC.slaving >= 100>><<set $personalAttention = "sex">><</if>>
-<<elseif ($personalAttention == "engineering")>>
-	<<set $PC.engineering += random(5,10), $cash -= 10000>><<if $PC.engineering >= 100>><<set $personalAttention = "sex">><</if>>
-<<elseif ($personalAttention == "medicine")>>
-	<<set $PC.medicine += random(5,10), $cash -= 10000>><<if $PC.medicine >= 100>><<set $personalAttention = "sex">><</if>>
-<</if>>
-
 <<set $HGEnergy = 0, $HGCum = 0, $HGSlaveSuccess = 0, $HeadGirl = 0, $HGBalls = 0, $HGRelease = 1, $Recruiter = 0, $Madam = 0, $madamCashBonus = 0, $DJ = 0, $DJRepBonus = 0, $Milkmaid = 0, $Collectrix = 0, $Stewardess = 0, $Schoolteacher = 0, $Wardeness = 0, $Concubine = 0, $Attendant = 0, $Nurse = 0, $Bodyguard = 0, $bedSlaves = 0, $fuckSlaves = 0, $freeSexualEnergy = 0, $publicServants = 0, $cumSlaves = 0, $averageDick = 0, $slavesWithWorkingDicks = 0>>
 
 /* GAMEOVERS */
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index 38a4092f94f85c0d3369098f28ac1fc58750d4b1..891a60b79ec9e72af51d56103e983a92e6aa069c 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -16,6 +16,7 @@
 
 <<PMODinit $activeSlave>>
 <<if $activeSlave.pregSource > 0>>
+	<<set _daddy = "partner">>
 	<<for _i = 0; _i < $slaves.length; _i++>>
 		<<if $activeSlave.pregSource == $slaves[_i].ID>>
 			<<set _daddy = $slaves[_i].slaveName>>
diff --git a/src/uncategorized/matchmaking.tw b/src/uncategorized/matchmaking.tw
index bd79136f8f1d3c5ab175682ab1b727e34fb390c2..a76f736ffdc85d17402df5d5e10b8bed8c29abc6 100644
--- a/src/uncategorized/matchmaking.tw
+++ b/src/uncategorized/matchmaking.tw
@@ -365,7 +365,7 @@ Despite her devotion and trust, she is still a slave, and probably knows that he
 <</if>>
 /* 000-250-006 */
 
-<br><br>__Put her with another worshipful <<if $eventSlave.relationship == -2>>emotionally bonded emotionally slave<<else>>emotional slut<</if>>:__
+<br><br>__Put her with another worshipful <<if $eventSlave.relationship == -2>>emotionally bonded slave<<else>>emotional slut<</if>>:__
 <<set $Flag to 1>>
 <<include "Slave Summary">>
 
diff --git a/src/uncategorized/nextWeek.tw b/src/uncategorized/nextWeek.tw
index 4d75dbc91ce19ae7e9563318b02e33f185ef6fb0..30c36d423a7b4c3ecf62631208a4cb0a991e7066 100644
--- a/src/uncategorized/nextWeek.tw
+++ b/src/uncategorized/nextWeek.tw
@@ -87,17 +87,9 @@
 	<</if>>
 	/* AVERAGE VALUES UPDATE */
 	<<if $slaves[_i].assignmentVisible == 1>>
-		<<set $averageTrust += $slaves[_i].trust, $averageDevotion += $slaves[_i].devotion, _slavesContributing += 1>>
-	<<else>>
-		<<if $slaves[_i].assignment != "be confined in the cellblock">>
-		<<if $slaves[_i].assignment != "be confined in the arcade">>
-		<<if $slaves[_i].assignment != "labor in the production line">>
-		<<if ($slaves[_i].assignment != "work in the dairy") || ($dairyRestraintsSetting < 2)>>
-			<<set $averageTrust += $slaves[_i].trust*0.5, $averageDevotion += $slaves[_i].devotion*0.5, _slavesContributing += 0.5>>
-		<</if>>
-		<</if>>
-		<</if>>
-		<</if>>
+		<<set $averageTrust += $slaves[_i].trust, $averageDevotion += $slaves[_i].devotion, _slavesContributing++>>
+	<<elseif ($slaves[_i].assignment != "be confined in the cellblock") && ($slaves[_i].assignment != "be confined in the arcade") && (($slaves[_i].assignment != "work in the dairy") || ($dairyRestraintsSetting < 2)) && $slaves[_i].assignment != "labor in the production line">>
+		<<set $averageTrust += $slaves[_i].trust*0.5, $averageDevotion += $slaves[_i].devotion*0.5, _slavesContributing += 0.5>>
 	<</if>>
 <</for>>
 <<set $averageTrust = $averageTrust/_slavesContributing>>
diff --git a/src/uncategorized/personalAttentionSelect.tw b/src/uncategorized/personalAttentionSelect.tw
index c0a5f18f1673c13d819f6e18f65576fdb8ab749b..62a834fb93aaa0f566a5c1709a67501272448717 100644
--- a/src/uncategorized/personalAttentionSelect.tw
+++ b/src/uncategorized/personalAttentionSelect.tw
@@ -13,34 +13,88 @@
 	<br>[[Support your Head Girl|Main][$personalAttention = "HG", $personalAttentionChanged = 1]]
 <</if>>
 <br>[[Have as much sex with your slaves as possible|Main][$personalAttention = "sex", $personalAttentionChanged = 1]]<br><br>
+
 <<if $PC.trading >= 100>>
 	//You are a master trader.//
 <<else>>
-	[[Hire a merchant to train you in commerce|Main][$personalAttention = "trading", $personalAttentionChanged = 1]]
+	<<if $PC.trading > 60>>
+		//You are an expert trader.//
+	<<elseif $PC.trading > 30>>
+		//You have some skill as a trader.//
+	<<elseif $PC.trading > 10>>
+		//You have basic knowledge as a trader.//
+	<</if>>
+	<<if $personalAttention == "trading">>
+		You are training in venture capitalism.
+	<<else>>
+		[[Hire a merchant to train you in commerce|Main][$personalAttention = "trading", $personalAttentionChanged = 1]]
+	<</if>>
 <</if>><br>
 <<if $PC.warfare >= 100>>
 	//You are a master tactician.//
 <<else>>
-	[[Hire a mercenary to train you in warfare|Main][$personalAttention = "warfare", $personalAttentionChanged = 1]]
+	<<if $PC.warfare > 60>>
+		//You are an expert tactician.//
+	<<elseif $PC.warfare > 30>>
+		//You have some skill as a tactician.//
+	<<elseif $PC.warfare > 10>>
+		//You have basic knowledge as a tactician.//
+	<</if>>
+	<<if $personalAttention == "warfare">>
+		You are training in tactics.
+	<<else>>
+		[[Hire a mercenary to train you in warfare|Main][$personalAttention = "warfare", $personalAttentionChanged = 1]]
+	<</if>>
 <</if>><br>
 <<if $PC.slaving >= 100>>
 	//You are a master slaver.//
 <<else>>
-	[[Hire a slaver to train you in slaving|Main][$personalAttention = "slaving", $personalAttentionChanged = 1]]
+	<<if $PC.slaving > 60>>
+		//You are an expert slaver.//
+	<<elseif $PC.slaving > 30>>
+		//You have some skill as a slaver.//
+	<<elseif $PC.slaving > 10>>
+		//You have basic knowledge as a slaver.//
+	<</if>>
+	<<if $personalAttention == "slaving">>
+		You are training in slaving.
+	<<else>>
+		[[Hire a slaver to train you in slaving|Main][$personalAttention = "slaving", $personalAttentionChanged = 1]]
+	<</if>>
 <</if>><br>
 <<if $PC.engineering >= 100>>
-	//You are a master engineer.//
+	//You are a master arcology engineer.//
 <<else>>
-	[[Hire an engineer to train you in engineering|Main][$personalAttention = "engineering", $personalAttentionChanged = 1]]
+	<<if $PC.slaving > 60>>
+		//You are an expert arcology engineer.//
+	<<elseif $PC.slaving > 30>>
+		//You have some skill as an arcology engineer.//
+	<<elseif $PC.slaving > 10>>
+		//You have basic knowledge as an arcology engineer.//
+	<</if>>
+	<<if $personalAttention == "engineering">>
+		You are training in arcology engineering.
+	<<else>>
+		[[Hire an engineer to train you in engineering|Main][$personalAttention = "engineering", $personalAttentionChanged = 1]]
+	<</if>>
 <</if>><br>
 <<if $PC.medicine >= 100>>
 	//You are a master surgeon.//
 <<else>>
-	[[Hire a doctor to train you in medicine|Main][$personalAttention = "medicine", $personalAttentionChanged = 1]]
-<</if>><br>
-<<if $PC.engineering < 100 && $PC.trading < 100 && $PC.warfare < 100 && $PC.engineering < 100 && $PC.slaving < 100 && $PC.medicine < 100>>
-//Training will cost ¤10000 per week.//<br><br>
+	<<if $PC.medicine > 60>>
+		//You are an expert surgeon.//
+	<<elseif $PC.medicine > 30>>
+		//You have some skill as a surgeon.//
+	<<elseif $PC.medicine > 10>>
+		//You have basic knowledge as a surgeon.//
+	<</if>>
+	<<if $personalAttention == "medicine">>
+		You are training in slave surgery.
+	<<else>>
+		[[Hire a doctor to train you in medicine|Main][$personalAttention = "medicine", $personalAttentionChanged = 1]]
+	<</if>>
 <</if>>
+<br>//Training will cost ¤10000 per week.//<br><br>
 
 <<if ($personalAttentionChanged == 1)>>
 <<if ($activeSlave.health < -20)>>
diff --git a/src/uncategorized/recETS.tw b/src/uncategorized/recETS.tw
index c8d49b8bc990535d0af06e98aa5489d302d1d7fe..27a002db402d0779b775aa2151ec098bd49f10ea 100644
--- a/src/uncategorized/recETS.tw
+++ b/src/uncategorized/recETS.tw
@@ -109,7 +109,7 @@ An older woman comes to see you representing her family business. She's pretty e
 <<set $nextButton = "Continue">>
 <<set $nextLink = "RIE Eligibility Check">>
 <<set $contractCost = 10000>>
-<<set $activeSlaveOneTimeMinAge = Math.max($fertilityAge+18, $minimumSlaveAge+18)>>
+<<set $activeSlaveOneTimeMinAge = Math.max($fertilityAge+18, $potencyAge+18, $minimumSlaveAge+18)>>
 <<set $activeSlaveOneTimeMaxAge = 40>>
 <<set $one_time_age_overrides_pedo_mode = 1>> /% Old enough to have a son who can knock her up. %/
 <<include "Generate XX Slave">>
diff --git a/src/uncategorized/recETSWorkaround.tw b/src/uncategorized/recETSWorkaround.tw
index 8fe0d0f7a3333a60afd525ec999b46624b3c5afa..6d827a7834202f08f28165cfd6a226d8f28f6113 100644
--- a/src/uncategorized/recETSWorkaround.tw
+++ b/src/uncategorized/recETSWorkaround.tw
@@ -125,8 +125,8 @@ The son cheers happily and hugs her relieved mother. She leans in and kisses him
 <<set $activeSlave.physicalAge = $activeSlave.actualAge>>
 <<set $activeSlave.visualAge = $activeSlave.actualAge>>
 <<ResyncHeight>>
-<<set $activeSlave.vagina = 0>>
-<<set $activeSlave.preg = -2>>
+<<set $activeSlave.vagina = -1>>
+<<set $activeSlave.preg = 0>>
 <<set $activeSlave.dick = 2>>
 <<set $activeSlave.foreskin = 3>>
 <<set $activeSlave.ovaries = 0>>
diff --git a/src/uncategorized/remFluctuations.tw b/src/uncategorized/remFluctuations.tw
index d461020cc24e643e539ecf4edb25122cf0925944..235a6e24d907a2c3754c9db8e46a8fcbcb1b876a 100644
--- a/src/uncategorized/remFluctuations.tw
+++ b/src/uncategorized/remFluctuations.tw
@@ -34,7 +34,7 @@
 	<</switch>>
 <<else>>
 	<<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> appears on a wall screen as you're going about your business.
-	<<switch>>
+	<<switch $assistantAppearance>>
 	<<case "monstergirl">>She's looking unusually businesslike, with her tentacle hair restrained in a bun.
 	<<case "loli">>She's looking unusually businesslike, withdrawn deep in thought.
 	<<case "preggololi">>She's looking unusually businesslike, withdrawn deep in thought.
diff --git a/src/uncategorized/rulesAutosurgery.tw b/src/uncategorized/rulesAutosurgery.tw
index efb3a4dabf784730e10454bc6cf30b0e69d911be..b728818d3baa6dd496b5f262610820abbcc9ee2c 100644
--- a/src/uncategorized/rulesAutosurgery.tw
+++ b/src/uncategorized/rulesAutosurgery.tw
@@ -85,7 +85,7 @@
 	<<set $surgeries.push("a nicer face")>>
 	<<if $slaves[$i].faceShape is "masculine">><<set $slaves[$i].faceShape to "androgynous">><</if>>
 	<<set $slaves[$i].faceImplant to 1>>
-	<<set $slaves[$i].face = Math.trunc($slaves[$i].face+20,-100,100)>>
+	<<set $slaves[$i].face = Math.clamp($slaves[$i].face+20,-100,100)>>
 	<<set $cash -= $surgeryCost>>
 	<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
 <<elseif ($slaves[$i].ageImplant != 1) && ($slaves[$i].age >= 25) && ($thisSurgery.cosmetic != 0)>>
@@ -153,21 +153,21 @@
 	<<set $surgeries.push("a nicer face")>>
 	<<if $slaves[$i].faceShape is "masculine">><<set $slaves[$i].faceShape to "androgynous">><</if>>
 	<<set $slaves[$i].faceImplant to 2>>
-	<<set $slaves[$i].face = Math.trunc($slaves[$i].face+20,-100,100)>>
+	<<set $slaves[$i].face = Math.clamp($slaves[$i].face+20,-100,100)>>
 	<<set $cash -= $surgeryCost>>
 	<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
 <<elseif ($slaves[$i].faceImplant > 0) && ($slaves[$i].face <= 95) && ($surgeryUpgrade == 1) && ($thisSurgery.cosmetic is 2)>>
 	<<set $surgeries.push("a nicer face")>>
 	<<if $slaves[$i].faceShape is "masculine">><<set $slaves[$i].faceShape to "androgynous">><</if>>
 	<<set $slaves[$i].faceImplant to 2>>
-	<<set $slaves[$i].face = Math.trunc($slaves[$i].face+20,-100,100)>>
+	<<set $slaves[$i].face = Math.clamp($slaves[$i].face+20,-100,100)>>
 	<<set $cash -= $surgeryCost>>
 	<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
 <<elseif ($slaves[$i].waist >= -95) && ($thisSurgery.cosmetic is 2) && ($seeExtreme == 1)>>
 	<<set $surgeries.push("a narrower waist")>>
-	<<set $slaves[$i].waist = Math.trunc($slaves[$i].waist-20,-100,100)>>
+	<<set $slaves[$i].waist = Math.clamp($slaves[$i].waist-20,-100,100)>>
 	<<set $cash -= $surgeryCost>>
-	<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 30.5>><<else>><<set $slaves[$i].health -= 4>><</if>>
+	<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
 <<elseif ($slaves[$i].voice < 3) && ($slaves[$i].voiceImplant == 0) && ($thisSurgery.cosmetic == 2)>>
 	<<set $surgeries.push("a bimbo's voice")>>
 	<<set $slaves[$i].voice += 1>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 14970179c14bd2649925359d59d59427d3927baa..2c301854f15be4fb6b2108fd08ce567599139be5 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -5819,32 +5819,68 @@ and ($slaves[$i].clothes != "a slutty qipao") and ($slaves[$i].clothes != "restr
 /* LANGUAGE */
 
 <<if $slaves[$i].fetish != "mindbroken">>
-<<if canTalk($slaves[$i])>>
 <<if $slaves[$i].accent > 0>>
 <<if $slaves[$i].speechRules is "restrictive">>
-	<<set $seed to 30>>
+	<<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>> /* can't talk, but slowly picks up language */
+		<<set $seed to 60>>
+	<<elseif SlaveStatsChecker.checkForLisp($slaves[$i])>>
+		<<set $seed to 40>>
+	<<else>>
+		<<set $seed to 30>>
+	<</if>>
 <<elseif $slaves[$i].speechRules is "accent elimination">>
+	<<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>> /* can't talk, but slowly picks up language */
+		<<set $seed to 35>>
+	<<elseif SlaveStatsChecker.checkForLisp($slaves[$i])>>
+		<<set $seed to 25>>
+	<<else>>
+		<<set $seed to 15>>
+	<</if>>
 	<<set $seed to 15>>
 <<elseif $slaves[$i].speechRules is "language lessons">>
-	<<set $seed to 10>>
+	<<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>> /* can't talk, but slowly picks up language */
+		<<set $seed to 30>>
+	<<elseif SlaveStatsChecker.checkForLisp($slaves[$i])>>
+		<<set $seed to 20>>
+	<<else>>
+		<<set $seed to 10>>
+	<</if>>
 <<else>>
-	<<set $seed to 20>>
+	<<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>> /* can't talk, but slowly picks up language */
+		<<set $seed to 40>>
+	<<elseif SlaveStatsChecker.checkForLisp($slaves[$i])>>
+		<<set $seed to 30>>
+	<<else>>
+		<<set $seed to 20>>
+	<</if>>
 <</if>>
 <<if $slaves[$i].accent >= 4>>
 	<<if $week - $slaves[$i].weekAcquired > $seed - ($slaves[$i].intelligence*5) - 5>>
 		<<set $slaves[$i].accent -= 1>>
 		<<set $slaves[$i].speechRules = "accent elimination">>
-		She has managed to pick up enough $language that @@color:green;she can now barely get her point across.@@ Her accent is horrible, but it's a start.
+		<<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>>
+			She has managed to pick up enough $language that @@color:green;she could now barely get her point across.@@ If she were able to talk, that is.
+		<<else>>
+			She has managed to pick up enough $language that @@color:green;she can now barely get her point across.@@ Her accent is horrible, but it's a start.
+		<</if>>
 	<</if>>
 <<elseif $slaves[$i].accent >= 3>>
 	<<if $week - $slaves[$i].weekAcquired > $seed - ($slaves[$i].intelligence*5)>>
 		<<set $slaves[$i].accent -= 1>>
-		She has managed to pick up enough $language that @@color:green;she's now reasonably fluent in the language.@@ Her accent is quite heavy, but she can make herself understood.
+		<<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>>
+			She has managed to pick up enough $language that @@color:green;she's now reasonably fluent in the language.@@
+		<<else>>
+			She has managed to pick up enough $language that @@color:green;she's now reasonably fluent in the language.@@ Her accent is quite heavy, but she can make herself understood.
+		<</if>>
 	<</if>>
 <<elseif $slaves[$i].accent >= 2>>
 	<<if $week - $slaves[$i].weekAcquired > $seed - ($slaves[$i].intelligence*5) + 5>>
 		<<set $slaves[$i].accent -= 1>>
-		She has heard and spoken a great deal of $language as your slave. @@color:green;Her accent has diminished from heavy to a pleasant exoticism.@@
+		<<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>>
+			She has heard a great deal of $language as your slave. Were she able to talk, @@color:green;her accent would be pleasantly exotic.@@
+		<<else>>
+			She has heard and spoken a great deal of $language as your slave. @@color:green;Her accent has diminished from heavy to a pleasant exoticism.@@
+		<</if>>
 	<</if>>
 <<elseif $slaves[$i].accent >= 1>>
 	<<if $slaves[$i].speechRules is "accent elimination">>
@@ -5856,7 +5892,8 @@ and ($slaves[$i].clothes != "a slutty qipao") and ($slaves[$i].clothes != "restr
 <</if>>
 <</if>>
 <</if>>
-<</if>>
+
+
 
 /* PRESTIGE */
 <<if ($slaves[$i].prestige > 0)>>
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 3f5a243542d6c843a79f0df0b364a45bde301240..df68675d3ba92bf94ab7ec6ff4b70ad6162dd51b 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1059,7 +1059,7 @@ __Required Bloating__: <strong><span id="inflate"><<if $activeSlave.inflation is
 <</if>>
 | <<link "Select her own clothes">><<set $activeSlave.clothes = "choosing her own clothes",$activeSlave.choosesOwnClothes = 1>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 
-<br>__Collar:__ ''<span id="collar">$activeSlave.collar</span>.''
+<br>__Collar__: ''<span id="collar">$activeSlave.collar</span>.''
 <<link "None">><<set $activeSlave.collar = "none">><<replace "#collar">>$activeSlave.collar<</replace>><</link>>
 | <<link "Tight steel">><<set $activeSlave.collar = "tight steel">><<replace "#collar">>$activeSlave.collar<</replace>><</link>>
 <<if ($seeAge != 0)>>
diff --git a/src/uncategorized/slaveSummary.tw b/src/uncategorized/slaveSummary.tw
index a8c5daf363262adc60f8ab94647a4728578a7e44..cc4f22b8fefed18cd2ffccdd1f40ecebc63941bb 100644
--- a/src/uncategorized/slaveSummary.tw
+++ b/src/uncategorized/slaveSummary.tw
@@ -164,7 +164,7 @@
 	<</if>>
 <</if>>
 <<case "DJ Select">>
-<<if (_Slave.assignmentVisible == 1) && (_Slave.fuckdoll == 0) && (_Slave.devotion > 50) && (_Slave.intelligence > -2) && canWalk(_Slave) && _Slave.breedingMark != 1>>
+<<if (_Slave.assignmentVisible == 1) && (_Slave.fuckdoll == 0) && (_Slave.devotion > 50) && (_Slave.intelligence > -2) && canTalk(_Slave) && canWalk(_Slave) && _Slave.breedingMark != 1>>
 	<br style="clear:both" /><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<SlaveArt _Slave 1>></div><</if>><<print "[[_Slave.slaveName|DJ Workaround][$i = "+_i+"]]">>
 <<else>>
 	<<continue>>
@@ -203,7 +203,7 @@
 <<if $Flag == 0>>
 	<<if _Slave.assignment == "learn in the schoolroom">><<continue>><</if>>
 	<<if (_Slave.devotion >= -20) || ((_Slave.devotion >= -50) && (_Slave.trust < -20)) || (_Slave.trust < -50)>>
-		<<if (_Slave.intelligenceImplant < 1) || (_Slave.accent+$schoolroomUpgradeLanguage > 2) || (_Slave.oralSkill <= 10) || (_Slave.whoreSkill <= 10) || (_Slave.entertainSkill <= 10) || (_Slave.analSkill < 1) || ((_Slave.vaginalSkill < 1) && (_Slave.vagina > 0))>>
+		<<if (_Slave.intelligenceImplant < 1) || (_Slave.accent+$schoolroomUpgradeLanguage > 2) || (_Slave.oralSkill <= 10) || (_Slave.whoreSkill <= 10) || (_Slave.entertainSkill <= 10) || (_Slave.analSkill < 10) || ((_Slave.vaginalSkill < 10) && (_Slave.vagina >= 0))>>
 			<br style="clear:both" /><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<SlaveArt _Slave 1>></div><</if>><<print "[[_Slave.slaveName|Slave Interact][$activeSlave = $slaves["+_i+"]]]">>
 		<<else>>
 			<br>//_Slave.slaveName already has a basic education//
diff --git a/src/utility/descriptionWidgets.tw b/src/utility/descriptionWidgets.tw
index f9a922a1422ed23a8298d3ee03b1deb0e46f341a..00323b60d39363fbaea1d3d6d874f9ba969c3e21 100644
--- a/src/utility/descriptionWidgets.tw
+++ b/src/utility/descriptionWidgets.tw
@@ -3329,7 +3329,7 @@ $pronounCap's got a
 	$possessiveCap cock is flirting with the limit of what the human cardiovascular system can bring erect: the best $pronoun can manage is a half-hardness that's too soft to meaningfully fuck anything. If $pronoun could somehow get fully erect, there are few holes $pronoun could safely penetrate, anyway.
 <<elseif ($activeSlave.dick > 1)>>
 	<<if ($activeSlave.aphrodisiacs > 0) || $activeSlave.inflationType == "aphrodisiac">>
-		The aphrodisiacs have $possessive <<if ($activeSlave.aphrodisiacs > 1) || ($activeSlave.inflationType == "aphrodisiac" && $activeSlave.inflation >= 2)>>painfully <</if>>hard<<if !canAchieveEreciton($activeSlave)>>, despite her usual inability to acheive erection<</if>>.
+		The aphrodisiacs have $possessive <<if ($activeSlave.aphrodisiacs > 1) || ($activeSlave.inflationType == "aphrodisiac" && $activeSlave.inflation >= 2)>>painfully <</if>>hard<<if !canAchieveErection($activeSlave)>>, despite her usual inability to acheive erection<</if>>.
 	<<elseif ($activeSlave.energy > 95)>>
 		As a nympho, $pronoun's almost constantly hard.
 	<<elseif ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishStrength > 60) && ($activeSlave.fetishKnown == 1)>>