diff --git a/src/005-passages/interactPassages.js b/src/005-passages/interactPassages.js
index bab037625e48943f339c9b1ee53441e3bbd2a919..82133efb1b3de8a4a52baa89c7c3386f30aab907 100644
--- a/src/005-passages/interactPassages.js
+++ b/src/005-passages/interactPassages.js
@@ -135,14 +135,6 @@ new App.DomPassage("BreedingTest",
 	}
 );
 
-new App.DomPassage("PC Surgery Degradation",
-	() => {
-		V.nextButton = "Continue";
-		V.nextLink = "Manage Personal Affairs";
-		return App.UI.PCSurgeryDegradation();
-	}
-);
-
 new App.DomPassage("Aztec Slave Sacrifice Penance",
 	() => {
 		V.nextButton = "Back to Main";
diff --git a/src/005-passages/managePassages.js b/src/005-passages/managePassages.js
index e3f55468fa8e3954913a3d8e9f2e0eef02e11f7f..7272233433c8ca9e537bda27e6bc70586524e352 100644
--- a/src/005-passages/managePassages.js
+++ b/src/005-passages/managePassages.js
@@ -84,3 +84,10 @@ new App.DomPassage("Farmyard Animals",
 		return App.Facilities.Farmyard.animals();
 	}
 );
+
+
+new App.DomPassage("Elective Surgery",
+	() => {
+		return App.UI.electiveSurgery();
+	}
+);
diff --git a/src/player/electiveSurgery.js b/src/player/electiveSurgery.js
new file mode 100644
index 0000000000000000000000000000000000000000..cc473307cb1d050e2e124167363e30c7cdcec309
--- /dev/null
+++ b/src/player/electiveSurgery.js
@@ -0,0 +1,913 @@
+App.UI.electiveSurgery = function() {
+	const el = document.createElement("div");
+	const {
+		HeU,
+		heU, hisU
+	} = getNonlocalPronouns(V.seeDicks === 100 ? 100 : 0).appendSuffix("U");
+
+	App.Events.addParagraph(el, [
+		`You arrive at your favorite plastic surgeon for your appointment to find them as busy as ever, but you find yourself quickly hurried into an exam room by their cute assistant. ${HeU} wastes no time in hurrying you into ${hisU} office, stripping you down, measuring you and making sure you are healthy enough for surgery, all the while not so subtly running ${hisU} hands across every part of you. "So, what can I help you with?"`
+	]);
+
+	face();
+	skin();
+	breasts();
+	belly();
+	butt();
+	balls();
+	vagina();
+	ovaries();
+	sexType();
+
+	return el;
+
+	function face() {
+		const p = document.createElement("p");
+		const r = [];
+		const linkArray = [];
+		App.Events.addNode(p, [
+			`"You sure you want to mess with that lovely face?" ${heU} teases, caressing your cheek. "<span class="cash">${cashFormat(5000)}.</span> Also wouldn't recommend changing your eyes, face shape or skin color; some security systems get real uppity over things like that. Though I s'pose race and hair can fall under that as well, but hey, we don't handle racial surgery and this isn't a hair salon, so nothing to worry about, right? Yes, I'm certain your systems will recognize you after we finish working on you — give us some credit."`
+		], "div");
+		r.push(`You're <span class="intro question">${V.PC.actualAge} years old.</span>`);
+		if (V.PC.actualAge >= 65) {
+			if (V.PC.visualAge > V.PC.actualAge) {
+				r.push(`You've had surgery to make yourself <span class="lime">look older.</span>`);
+				linkArray.push(surgeryLink("Undo Facial surgery", "restoreFace", () => {
+					V.PC.faceImplant = 0;
+					V.PC.visualAge = V.PC.physicalAge;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			} else if (V.PC.visualAge < V.PC.actualAge) {
+				r.push(`You've had surgery to make yourself <span class="lime">look younger.</span>`);
+				linkArray.push(surgeryLink("Undo Facial surgery", "restoreFace", () => {
+					V.PC.faceImplant = 0;
+					V.PC.visualAge = V.PC.physicalAge;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			} else {
+				r.push(`You could benefit from a face lift.`);
+				if (V.PC.visualAge >= 25) {
+					linkArray.push(surgeryLink("Get a face lift", "ageDown", () => {
+						V.PC.faceImplant = 1;
+						cashX(forceNeg(5000), "PCmedical");
+					}));
+				}
+				linkArray.push(surgeryLink("Remodel your face to appear older", "ageUp", () => {
+					V.PC.faceImplant = 1;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			}
+		} else if (V.PC.actualAge >= 50) {
+			if (V.PC.visualAge > V.PC.actualAge) {
+				r.push(`You've had surgery to make yourself <span class="lime">look older.</span>`);
+				linkArray.push(surgeryLink("Undo Facial surgery", "restoreFace", () => {
+					V.PC.faceImplant = 0;
+					V.PC.visualAge = V.PC.physicalAge;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			} else if (V.PC.visualAge < V.PC.actualAge) {
+				r.push(`You've had surgery to make yourself <span class="lime">look younger.</span>`);
+				linkArray.push(surgeryLink("Undo Facial surgery", "restoreFace", () => {
+					V.PC.faceImplant = 0;
+					V.PC.visualAge = V.PC.physicalAge;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			} else {
+				r.push(`You could benefit from a face lift.`);
+				if (V.PC.visualAge >= 25) {
+					linkArray.push(surgeryLink("Get a face lift", "ageDown", () => {
+						V.PC.faceImplant = 1;
+						cashX(forceNeg(5000), "PCmedical");
+					}));
+				}
+				linkArray.push(surgeryLink("Remodel your face to appear older", "ageUp", () => {
+					V.PC.faceImplant = 1;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			}
+		} else if (V.PC.actualAge >= 35) {
+			if (V.PC.visualAge > V.PC.actualAge) {
+				r.push(`You've had surgery to make yourself <span class="lime">look older.</span>`);
+				linkArray.push(surgeryLink("Undo Facial surgery", "restoreFace", () => {
+					V.PC.faceImplant = 0;
+					V.PC.visualAge = V.PC.physicalAge;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			} else if (V.PC.visualAge < V.PC.actualAge) {
+				r.push(`You've had surgery to make yourself <span class="lime">look younger.</span>`);
+				linkArray.push(surgeryLink("Undo Facial surgery", "restoreFace", () => {
+					V.PC.faceImplant = 0;
+					V.PC.visualAge = V.PC.physicalAge;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			} else {
+				r.push(`You could go for a face lift, though making yourself look older could be useful.`);
+				if (V.PC.visualAge >= 25) {
+					linkArray.push(surgeryLink("Get a face lift", "ageDown", () => {
+						V.PC.faceImplant = 1;
+						cashX(forceNeg(5000), "PCmedical");
+					}));
+				}
+				linkArray.push(surgeryLink("Remodel your face to appear older", "ageUp", () => {
+					V.PC.faceImplant = 1;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			}
+		} else {
+			if (V.PC.visualAge > V.PC.actualAge) {
+				r.push(`You've had surgery to make yourself <span class="lime">look older.</span>`);
+				linkArray.push(surgeryLink("Undo Facial surgery", "restoreFace", () => {
+					V.PC.faceImplant = 0;
+					V.PC.visualAge = V.PC.physicalAge;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			} else if (V.PC.visualAge < V.PC.actualAge) {
+				r.push(`You've had surgery to make yourself <span class="lime">look younger.</span>`);
+				linkArray.push(surgeryLink("Undo Facial surgery", "restoreFace", () => {
+					V.PC.faceImplant = 0;
+					V.PC.visualAge = V.PC.physicalAge;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			} else {
+				r.push(`You could undergo facial surgery to make yourself look older${(V.PC.visualAge >= 25) ? ", though you could also make yourself look even younger" : ""}.`);
+				if (V.PC.visualAge >= 25) {
+					linkArray.push(surgeryLink("Remodel your face to appear younger", "ageDown", () => {
+						V.PC.faceImplant = 1;
+						cashX(forceNeg(5000), "PCmedical");
+					}));
+				}
+				linkArray.push(surgeryLink("Remodel your face to appear older", "ageUp", () => {
+					V.PC.faceImplant = 1;
+					cashX(forceNeg(5000), "PCmedical");
+				}));
+			}
+		}
+		App.Events.addNode(p, r, "div");
+		p.append(App.UI.DOM.makeElement("div", App.UI.DOM.generateLinksStrip(linkArray)));
+		el.append(p);
+	}
+
+	function skin() {
+		const p = document.createElement("p");
+		const r = [];
+		App.Events.addNode(p, [
+			`"Your skin is beautiful as is, but we can change it if you want," ${heU} says, pulling a large tanning bed-like cart out of a closet. "<span class="cash">${cashFormat(2000)}.</span> This thing just came out of testing. I assure you it doesn't cause cancer anymore! But still, mind your security systems. We won't be held accountable if you get arrested for trying to enter your penthouse." ${HeU} looks a little worrisome, "Now, there are some side effects, and we will have to keep you under special care for a few days. It's similar to a severe sunburn, across your entire body, all of it, even down there. Now don't give me that look, we have special ointments to soothe the pain and have a little fun with." ${HeU} tosses you a wink alongside a hesitant giggle. "Now all your typical skin tones are preprogrammed into it, and with a couple button presses... There! I unlocked the option for custom hues. Now this thing is going to recolor your skin pigment permanently, so you might want to take it seriously. It'll all be on you if I choke with laughter ${(V.PC.dick !== 0) ? `sucking on your big polka-dotted cock` : `going down on your polka-dotted pussy`}!"`
+		], "div");
+
+		r.push(`You have <span class="intro question">${V.PC.skin} skin.</span>`);
+		if (V.PC.skin !== V.PC.origSkin) {
+			r.push(`Your original skin tone was ${V.PC.origSkin}.`);
+		}
+		App.Events.addNode(p, r, "div");
+
+		const choiceDiv = document.createElement("div");
+		const choices = new Map([]);
+		if (V.PC.skin !== V.PC.origSkin) {
+			choices.set(V.PC.origSkin, capFirstChar(`Restore natural ${V.PC.origSkin}`));
+		}
+		for (const skin of App.Medicine.Modification.naturalSkins) {
+			choices.set(skin, capFirstChar(skin));
+		}
+
+		const select = document.createElement("select");
+		let matchFound;
+		for (const [value, text] of choices) {
+			const option = document.createElement("option");
+			option.text = text;
+			option.value = value;
+			if (V.PC.skin === option.value) {
+				option.selected = true;
+				matchFound = true;
+			}
+			select.append(option);
+		}
+		if (!matchFound) {
+			select.selectedIndex = -1;
+		}
+		select.onchange = () => {
+			V.PC.skin = select.options[select.selectedIndex].value;
+			cashX(forceNeg(2000), "PCmedical");
+			showDegradation("skinTone");
+		};
+
+		choiceDiv.append(select, " or custom ", App.UI.DOM.makeTextBox(
+			V.PC.skin, v => {
+				V.PC.skin = v;
+				cashX(forceNeg(2000), "PCmedical");
+				showDegradation("skinTone");
+			}
+		));
+		p.append(choiceDiv);
+		el.append(p);
+	}
+
+	function breasts() {
+		const p = document.createElement("p");
+		const r = [];
+		const linkArray = [];
+		App.Events.addNode(p, [
+			`"Maybe some breast work? I assure you they are lovely," ${heU} says as ${heU} brushes the back of your head with ${hisU} own pair. "<span class="cash">${cashFormat(5000)}</span> for a reduction, <span class="cash">${cashFormat(10000)}</span> for implants, that includes size ups, and <span class="cash">${cashFormat(15000)}</span> for additional breast tissue. That last one might as well be real!${(V.PC.boobs < 700) ? " With a little work, we can even remove a small amount of fat from your breasts to bring your cup size down without damaging their inner workings. Though we'll have to build them up some before we can stick reasonable implants into you." : ""}"`
+		], "div");
+		if (V.PC.boobs >= 1400) {
+			if (V.PC.boobsImplant > 0) {
+				r.push(`You have a <span class="intro question">pair of round H-cup breasts;</span> they are very obviously implants.`);
+				linkArray.push(
+					App.UI.DOM.disabledLink("Get the next size up", ["You are starting to experience back pain; any bigger and they might seriously impede your ability to run your arcology."]),
+					breastReductionImplant()
+				);
+			} else {
+				r.push(`You have a <span class="intro question">heavy H-cup bust.</span> They tend to sag a little when you free them from your top, though they have some perk to them.`);
+				linkArray.push(
+					App.UI.DOM.disabledLink("Add additional breast tissue", ["You are starting to experience back pain; any bigger and they might seriously impede your ability to run your arcology."]),
+					breastShrinkageAbsolute(1300)
+				);
+			}
+		} else if (V.PC.boobs >= 1200) {
+			if (V.PC.boobsImplant > 0) {
+				r.push(`You have a <span class="intro question">pair of rounded G-cup breasts;</span> they are a little too perky for their size to pass as natural.`);
+				linkArray.push(
+					breastEnlargementImplant(),
+					breastReductionImplant()
+				);
+			} else {
+				r.push(`You have a <span class="intro question">huge G-cup bust.</span>`);
+				linkArray.push(
+					breastEnlargement(),
+					breastShrinkageRelative()
+				);
+			}
+		} else if (V.PC.boobs >= 1000) {
+			if (V.PC.boobsImplant > 0) {
+				r.push(`You have a <span class="intro question">pair of perky F-cup breasts;</span> you can barely tell they are implanted.`);
+				linkArray.push(
+					breastEnlargementImplant(),
+					breastReductionImplant()
+				);
+			} else {
+				r.push(`You have a <span class="intro question">hefty F-cup bust.</span>`);
+				linkArray.push(
+					breastEnlargement(),
+					breastShrinkageRelative()
+				);
+			}
+		} else if (V.PC.boobs >= 800) {
+			r.push(`You have a <span class="intro question">big pair of DD-cup breasts.</span>`);
+			linkArray.push(
+				getImplants(),
+				breastEnlargement(),
+				breastShrinkageAbsolute(700),
+				flatChest()
+			);
+		} else if (V.PC.boobs >= 650) {
+			r.push(`You have a <span class="intro question">pair of D-cup breasts.</span>`);
+			linkArray.push(
+				breastEnlargement(),
+				breastShrinkageAbsolute(600),
+				flatChest()
+			);
+		} else if (V.PC.boobs >= 500) {
+			r.push(`You have a <span class="intro question">average pair of C-cup breasts.</span>`);
+			linkArray.push(
+				breastEnlargement(),
+				breastShrinkageAbsolute(400),
+				flatChest()
+			);
+		} else if (V.PC.boobs >= 400) {
+			r.push(`You have a <span class="intro question">small pair of B-cup breasts.</span>`);
+			linkArray.push(
+				breastEnlargement(),
+				App.UI.DOM.disabledLink("Have fatty tissue removed", ["You lack sufficient fatty tissue to permit additional size reduction short of total breast removal"]),
+				flatChest()
+			);
+		} else if (V.PC.boobs >= 300) {
+			r.push(`You have a <span class="intro question">small pair of A-cup breasts.</span>`);
+			linkArray.push(
+				breastEnlargement(100),
+				App.UI.DOM.disabledLink("Have fatty tissue removed", ["You lack sufficient fatty tissue to permit additional size reduction short of total breast removal"]),
+				flatChest()
+			);
+		} else if (V.PC.title === 1) {
+			r.push(`You have a <span class="intro question">masculine chest.</span> At your request, breast tissue could be added until you have a healthy bust, though society is unlikely to approve.`);
+			linkArray.push(breasts());
+		} else {
+			r.push(`<span class="intro question">You're flat.</span> "We can fix that, if you want."`);
+			linkArray.push(breasts());
+		}
+		App.Events.addNode(p, r, "div");
+		p.append(App.UI.DOM.makeElement("div", App.UI.DOM.generateLinksStrip(linkArray)));
+		el.append(p);
+
+		function breastReductionImplant() {
+			return surgeryLink("Have your implants removed", "breastReductionImplant", () => {
+				V.PC.boobs -= V.PC.boobsImplant;
+				V.PC.boobsImplant = 0;
+				V.PC.boobsImplantType = "none";
+				cashX(forceNeg(5000), "PCmedical");
+			});
+		}
+
+		function breastEnlargementImplant() {
+			return surgeryLink("Get the next size up", "breastEnlargementImplant", () => {
+				V.PC.boobs += 200;
+				V.PC.boobsImplant += 200;
+				cashX(forceNeg(10000), "PCmedical");
+			});
+		}
+
+		function breastEnlargement(boobGrowth = 200) {
+			return surgeryLink("Add additional breast tissue", "breastEnlargement", () => {
+				V.PC.boobs += boobGrowth;
+				cashX(forceNeg(15000), "PCmedical");
+			});
+		}
+
+		function breastShrinkageRelative() {
+			return surgeryLink("Have tissue removed", "breastShrinkage", () => {
+				V.PC.boobs -= 200;
+				cashX(forceNeg(5000), "PCmedical");
+			});
+		}
+
+		function getImplants() {
+			return surgeryLink("Get a pair of breast implants", "breastEnlargementImplant", () => {
+				V.PC.boobs += 200;
+				V.PC.boobsImplant += 200;
+				V.PC.boobsImplantType = "normal";
+				cashX(forceNeg(10000), "PCmedical");
+			});
+		}
+
+		/**
+		 * 
+		 * @param {number} newSize 
+		 * @returns 
+		 */
+		function breastShrinkageAbsolute(newSize) {
+			return surgeryLink("Have fatty tissue removed", "breastShrinkage", () => {
+				V.PC.boobs = newSize;
+				cashX(forceNeg(5000), "PCmedical");
+			});
+		}
+
+		function flatChest() {
+			return surgeryLink("Have them removed", "flatChest", () => {
+				V.PC.boobs = 100;
+				cashX(forceNeg(5000), "PCmedical");
+			});
+		}
+
+		function breasts() {
+			return surgeryLink("Get a pair of breasts", "breasts", () => {
+				V.PC.boobs = 650;
+				cashX(forceNeg(15000), "PCmedical");
+			});
+		}
+	}
+
+	function belly() {
+		const p = document.createElement("p");
+		const r = [];
+		const linkArray = [];
+		if (V.PC.belly >= 100 && V.PC.preg > 3) {
+			r.push(`${HeU} darts for your middle.`);
+			if (V.PC.belly >= 120000) {
+				r.push(`"My god! What happened to you? You might not want to hit the fertility drugs so hard next time. Then again, I don't think you'll see us complaining when you come in for a tummy tuck to get everything back where it used to be," ${heU} says with a wink as ${heU} uses both hands to massage your`);
+				if (V.PC.preg > 40) {
+					r.push(`overdue ${pregNumberName(V.PC.pregType, 1)}-bursting belly, enjoying the kicks from your ${(V.PC.pregType > 1) ? "children" : "child"} within. "If you go into labor, we have everything you'll need, so don't worry."`);
+				} else {
+					r.push(`over-crowded belly.`);
+				}
+			} else if (V.PC.belly >= 110000) {
+				r.push(`"My god! What happened to you? You might not want to hit the fertility drugs so hard next time. Then again, I don't think you'll see us complaining when you come in for a tummy tuck to get everything back where it used to be," ${heU} says with a wink as ${heU} uses both hands to massage your`);
+				if (V.PC.preg > 40) {
+					r.push(`overdue ${pregNumberName(V.PC.pregType, 1)}-stuffed belly, enjoying the kicks from your ${(V.PC.pregType > 1) ? "children" : "child"} within. "If you go into labor, we have everything you'll need, so don't worry."`);
+				} else {
+					r.push(`over-crowded belly.`);
+				}
+			} else if (V.PC.belly >= 95000) {
+				r.push(`Oh wow! It's like a party in there!" ${heU} says as ${heU} uses both hands to massage your`);
+				if (V.PC.preg > 40) {
+					r.push(`overdue ${pregNumberName(V.PC.pregType, 1)}-stuffed belly, enjoying the kicks from your ${(V.PC.pregType > 1) ? "children" : "child"} within. "If you go into labor, we have everything you'll need, so don't worry."`);
+				} else {
+					r.push(`crowded belly.`);
+				}
+			} else if (V.PC.belly >= 80000) {
+				r.push(`You must feel so full, like all the time. What's it feel like? Do they ever calm down?" ${heU} says as ${heU} uses both hands to massage your`);
+				if (V.PC.preg > 40) {
+					r.push(`overdue ${pregNumberName(V.PC.pregType, 1)}-filled belly, enjoying the kicks from your ${(V.PC.pregType > 1) ? "children" : "child"} within. "If you go into labor, we have everything you'll need, so don't worry."`);
+				} else {
+					r.push(`crowded belly.`);
+				}
+			} else if (V.PC.belly >= 64000) {
+				r.push(`Oh wow! You're immense! I almost can't wrap my arms around it!" ${heU} says as ${heU} uses both hands to massage your`);
+				if (V.PC.preg > 40) {
+					r.push(`overdue ${pregNumberName(V.PC.pregType, 1)}-filled belly, enjoying the kicks from your ${(V.PC.pregType > 1) ? "children" : "child"} within. "If you go into labor, we have everything you'll need, so don't worry."`);
+				} else {
+					r.push(`crowded belly.`);
+				}
+			} else if (V.PC.belly >= 48000) {
+				r.push(`"Oh wow! You're gigantic! Are you sure you want to have surgery in this state? Things start to get complicated when you're this pregnant," ${heU} says as ${heU} uses both hands to massage your`);
+				if (V.PC.preg > 40) {
+					r.push(`overdue ${pregNumberName(V.PC.pregType, 1)}-filled belly, enjoying the kicks from your ${(V.PC.pregType > 1) ? "children" : "child"} within. "If you go into labor, we have everything you'll need, so don't worry."`);
+				} else {
+					r.push(`crowded belly.`);
+				}
+			} else if (V.PC.belly >= 32000) {
+				r.push(`"My word, are you sure you want to have surgery in this state? You're gigantic! Plus things start to get complicated when you're this pregnant," ${heU} says as ${heU} uses both hands to massage your`);
+				if (V.PC.preg > 40) {
+					r.push(`overdue ${pregNumberName(V.PC.pregType, 1)}-filled belly, enjoying the kicks from your ${(V.PC.pregType > 1) ? "children" : "child"} within. "If you go into labor, we have everything you'll need, so don't worry."`);
+				} else {
+					r.push(`crowded belly.`);
+				}
+			} else if (V.PC.belly >= 16000) {
+				r.push(`"My word, are you sure you want to have surgery in this state? You're giant!" ${heU} says as ${heU} uses both hands to massage your`);
+				if (V.PC.preg > 40) {
+					r.push(`overdue belly, enjoying the kicks from your ${(V.PC.pregType > 1) ? "children" : "child"} within. "If you go into labor, we have everything you'll need, so don't worry."`);
+				} else {
+					r.push(`belly, taking note of the extra occupants.`);
+				}
+			} else if (V.PC.belly >= 14000) {
+				r.push(`"Wow, are you going to be ok? That looks really heavy," ${heU} says as ${heU} uses both hands to grope your massive belly, paying extra attention to your navel. "Are you sure you don't want to take a seat?"`);
+			} else if (V.PC.belly >= 12000) {
+				r.push(`"You're huge! Look at that adorable navel!" ${heU} says as ${heU} uses both hands to grope your huge belly, paying extra attention to your navel.`);
+			} else if (V.PC.belly >= 10000) {
+				r.push(`"Look how big you are!" ${heU} says as ${heU} uses both hands to grope your huge belly.`);
+			} else if (V.PC.belly >= 7000) {
+				r.push(`"You're getting so big!" ${heU} says as ${heU} uses both hands to massage your big pregnant belly.`);
+			} else if (V.PC.belly >= 5000) {
+				r.push(`"You're getting so big!" ${heU} says as ${heU} uses both hands to massage your pregnant belly.`);
+			} else if (V.PC.belly >= 3000) {
+				r.push(`"Looks like fun!" ${heU} says as ${heU} uses both hands to rub your pregnant belly.`);
+			} else if (V.PC.belly >= 1500) {
+				r.push(`"Awwww, you're getting soo big!" ${heU} says as ${heU} rubs your pregnant belly.`);
+			} else if (V.PC.belly >= 500) {
+				r.push(`"Awwww, you have a bun in the oven! That's so adorable; didn't think you the type," ${heU} says as ${heU} pats your rounded middle.`);
+			} else if (V.PC.belly >= 300) {
+				r.push(`"Awwww, you have a bun in the oven! That's so adorable; didn't think you the type," ${heU} says as ${heU} rubs your slightly rounded middle.`);
+			} else if (V.PC.belly >= 100) {
+				r.push(`"Awwww, you have a bun in the oven! That's so adorable; didn't think you the type," ${heU} says as ${heU} rubs your slightly swollen belly. No denying it now.`);
+			}
+		} else if (V.PC.belly >= 100 && V.PC.preg < 1) {
+			r.push(`${HeU} pinches your belly. "How about a tummy tuck? We can smooth this right out, cheaply too, <span class="cash">${cashFormat(500)}.</span>" ${HeU} lets your saggy middle flop back to its usual drooping state.`);
+			linkArray.push(surgeryLink("Firm up your stomach", "tummyTuck", () => {
+				V.PC.belly = 0;
+				cashX(forceNeg(500), "PCmedical");
+			}));
+		}
+		App.Events.addNode(p, r, "div");
+		p.append(App.UI.DOM.makeElement("div", App.UI.DOM.generateLinksStrip(linkArray)));
+		el.append(p);
+	}
+
+	function butt() {
+		const p = document.createElement("p");
+		const r = [];
+		const linkArray = [];
+		App.Events.addNode(p, [`"How about a new butt?" ${heU} says as ${heU} wiggles ${hisU} own at you. "Same prices as the breasts."`], "div");
+		if (V.PC.butt >= 5) {
+			if (V.PC.buttImplant >= 1) {
+				r.push(`You have an <span class="intro question">enormous, round, hard butt;</span> it is very obviously a pair of huge implants.`);
+				linkArray.push(
+					App.UI.DOM.disabledLink("Get the next size up", ["You can barely squeeze your rear into your clothes and are starting to get stuck in chairs; any bigger and it might seriously impede your ability to run your arcology."]),
+					buttReductionImplantRemove()
+				);
+			} else {
+				r.push(`You have an <span class="intro question">enormous, jiggly butt.</span>`);
+				linkArray.push(
+					App.UI.DOM.disabledLink("Add additional fatty tissue", ["You can barely squeeze your rear into your clothes and are starting to get stuck in chairs; any bigger and it might seriously impede your ability to run your arcology."]),
+					buttShrinkage()
+				);
+			}
+		} else if (V.PC.butt >= 4) {
+			if (V.PC.buttImplant >= 1) {
+				r.push(`You have a <span class="intro question">huge, round, firm butt;</span> it's easily identifiable as fake.`);
+				linkArray.push(
+					buttEnlargementImplant(),
+					buttReductionImplantRemove()
+				);
+			} else {
+				r.push(`You have a <span class="intro question">huge, soft butt.</span>`);
+				linkArray.push(
+					buttEnlargement(),
+					buttShrinkage()
+				);
+			}
+		} else if (V.PC.butt >= 3) {
+			if (V.PC.buttImplant >= 1) {
+				r.push(`You have a <span class="intro question">big firm butt;</span> anyone that feels it can tell it's fake, but at a glance you can't tell otherwise.`);
+				linkArray.push(
+					buttEnlargementImplant(),
+					buttReductionImplantRemove()
+				);
+			} else {
+				r.push(`You have a <span class="intro question">big butt.</span>`);
+				linkArray.push(
+					buttEnlargement(),
+					buttShrinkage()
+				);
+			}
+		} else {
+			r.push(`You have a <span class="intro question">cute, but normal butt.</span> At your request, fat could be added until you have a healthy rear; alternatively, a pair of implants could be inserted instead.`);
+			linkArray.push(
+				surgeryLink("Get a pair of butt implants", "buttEnlargementImplant", () => {
+					V.PC.butt += 1;
+					V.PC.buttImplant += 1;
+					V.PC.buttImplantType = "normal";
+					cashX(forceNeg(10000), "PCmedical");
+				}),
+				buttEnlargement(),
+			);
+		}
+		App.Events.addNode(p, r, "div");
+		p.append(App.UI.DOM.makeElement("div", App.UI.DOM.generateLinksStrip(linkArray)));
+		el.append(p);
+
+		function buttReductionImplantRemove() {
+			return surgeryLink("Have your implants removed", "buttReductionImplant", () => {
+				V.PC.butt -= V.PC.buttImplant;
+				V.PC.buttImplant = 0;
+				V.PC.buttImplantType = "none";
+				cashX(forceNeg(5000), "PCmedical");
+			});
+		}
+
+		function buttShrinkage() {
+			return surgeryLink("Have fat removed", "buttShrinkage", () => {
+				V.PC.butt -= 1;
+				cashX(forceNeg(5000), "PCmedical");
+			});
+		}
+
+		function buttEnlargementImplant() {
+			return surgeryLink("Get the next size up", "buttEnlargementImplant", () => {
+				V.PC.butt += 1;
+				V.PC.buttImplant += 1;
+				cashX(forceNeg(10000), "PCmedical");
+			});
+		}
+
+		function buttEnlargement() {
+			return surgeryLink("Add additional fatty tissue", "buttEnlargement", () => {
+				V.PC.butt += 1;
+				cashX(forceNeg(15000), "PCmedical");
+			});
+		}
+	}
+
+	function balls() {
+		const p = document.createElement("p");
+		const r = [];
+		const linkArray = [];
+		if (V.PC.balls !== 0 && V.PC.scrotum !== 0) {
+			App.Events.addNode(p, [
+				`"We could add gel around your testes to make your balls look bigger. Would also dampen any impacts to them as well, if that is anything to consider," ${heU} says, running a finger down the length of your shaft. "<span class="cash">${cashFormat(7500)}</span> for draining and <span class="cash">${cashFormat(12000)}</span> for filling, it's not the most simple procedure, you know? Anyway, they'll be very obvious, if that turns you on." ${HeU} takes another look at you before offering another option. "Of course, if you want bigger balls in a <i>functional</i> sense, we can do that too. The doctor's research in advanced targeted growth hormones has shown promising results in test subjects, and he's been able to use them successfully on a few citizen patients so far. A direct injection of hormones, and your testes will grow on their own. Unlike the cosmetic gel, there's no easily reversing this treatment, unless you are willing to subject yourself to slave drugs. It's expensive too, for the high quality drugs you want; <span class="cash">${cashFormat(25000)}</span> for one round of therapy. I should also warn you that repeated doses tend to have an increased effect."`
+			], "div");
+			if (V.PC.balls >= 30) {
+				r.push(`You have a <span class="intro question">monstrous, massive pair of balls</span> roughly the size of small watermelons; it's impossible to sit normally, so you've had to buy special chairs, you've given up on wearing pants, and they're so obvious that people probably assume they're fake, but every slave you fuck gets to really feel the load you pump into them, and you love it.`);
+				if (V.PC.ballsImplant) {
+					linkArray.push(
+						surgeryLink("Have gel extracted", "ballShrinkage", () => {
+							V.PC.balls = 14;
+							V.PC.ballsImplant = 11;
+							cashX(forceNeg(7500), "PCmedical");
+						}),
+						surgeryLink("Have a lot of gel extracted", "ballBigShrinkage", () => {
+							V.PC.balls = 5;
+							V.PC.ballsImplant = 2;
+							cashX(forceNeg(7500), "PCmedical");
+						}),
+					);
+				}
+			} else if (V.PC.balls >= 14) {
+				r.push(`You have an <span class="intro question">enormous, heavy pair of balls</span> roughly the size of cantaloupes; it's difficult to sit normally, your clothes barely fit, and everyone can tell they are fake, but every slave you fuck gets a distinct slap with each thrust and you love it.`);
+				linkArray.push(App.UI.DOM.disabledLink("Have even more gel added", ["You're beginning to have trouble moving around and using furniture thanks to your over-sized nuts, even bringing your legs together is a pain; any bigger and they might seriously impede your ability to run your arcology, or walk, for that matter."]));
+				if (V.PC.ballsImplant) {
+					linkArray.push(
+						surgeryLink("Have even more gel added", "ballEnlargement", () => {
+							V.PC.balls = 30;
+							V.PC.ballsImplant = 27;
+							cashX(forceNeg(15000), "PCmedical");
+						}),
+						surgeryLink("Have gel extracted", "ballShrinkage", () => {
+							V.PC.balls = 9;
+							V.PC.ballsImplant = 6;
+							cashX(forceNeg(7500), "PCmedical");
+						}),
+					);
+				} else {
+					linkArray.push(surgeryLink("Get another round of growth hormones anyway", "ballEnlargementHorm", () => {
+						V.PC.balls = 30;
+						cashX(forceNeg(15000), "PCmedical");
+					}));
+				}
+			} else if (V.PC.balls >= 9) {
+				r.push(`You have a <span class="intro question">huge pair of balls</span> roughly the size of softballs; they make quite a bulge in your clothes and dangle heavily any other time.`);
+				if (V.PC.ballsImplant) {
+					linkArray.push(
+						surgeryLink("Have more gel added", "ballEnlargement", () => {
+							V.PC.balls = 14;
+							V.PC.ballsImplant = 11;
+							cashX(forceNeg(15000), "PCmedical");
+						}),
+						surgeryLink("Have gel extracted", "ballShrinkage", () => {
+							V.PC.balls = 5;
+							V.PC.ballsImplant = 2;
+							cashX(forceNeg(7500), "PCmedical");
+						}),
+					);
+				} else {
+					linkArray.push(surgeryLink("Get another round of growth hormones", "ballEnlargementHorm", () => {
+						V.PC.balls = 14;
+						cashX(forceNeg(15000), "PCmedical");
+					}));
+				}
+			} else if (V.PC.balls >= 5) {
+				r.push(`You have a <span class="intro question">large pair of balls;</span> you can certainly feel them as you move.`);
+				if (V.PC.ballsImplant) {
+					linkArray.push(
+						surgeryLink("Have more gel added", "ballEnlargement", () => {
+							V.PC.balls = 9;
+							V.PC.ballsImplant = 6;
+							cashX(forceNeg(15000), "PCmedical");
+						}),
+						surgeryLink("Have gel extracted", "ballShrinkage", () => {
+							V.PC.balls = 3;
+							V.PC.ballsImplant = 0;
+							cashX(forceNeg(7500), "PCmedical");
+						}),
+					);
+				} else {
+					linkArray.push(surgeryLink("Get another round of growth hormones", "ballEnlargementHorm", () => {
+						V.PC.balls = 9;
+						cashX(forceNeg(15000), "PCmedical");
+					}));
+				}
+			} else {
+				r.push(`You have a <span class="intro question">normal, uneventful pair of balls.</span>`);
+				linkArray.push(
+					surgeryLink("Get hormone treatment", "ballEnlargementHorm", () => {
+						V.PC.balls = 5;
+						cashX(forceNeg(15000), "PCmedical");
+					}),
+					surgeryLink("Have the gel added", "ballEnlargement", () => {
+						V.PC.balls = 5;
+						V.PC.ballsImplant = 2;
+						cashX(forceNeg(15000), "PCmedical");
+					}),
+				);
+			}
+		}
+		App.Events.addNode(p, r, "div");
+		p.append(App.UI.DOM.makeElement("div", App.UI.DOM.generateLinksStrip(linkArray)));
+		el.append(p);
+	}
+
+	function vagina() {
+		const p = document.createElement("p");
+		const r = [];
+		if (V.PC.vagina >= 3 && V.PC.newVag === 0) {
+			r.push(`"Looking a little loose down there; I can fix that for you. Get you nice and tight again. Oh, and our pussies are guaranteed to not lose their tightness, or your money back! <span class="cash">${cashFormat(15000)}</span> for a brand new vagina."`);
+			App.Events.addNode(p, r, "div");
+			p.append(App.UI.DOM.makeElement("div", surgeryLink("Get a tighter vagina", "tightPussy", () => {
+				V.PC.vagina = 1;
+				V.PC.newVag = 1;
+				cashX(forceNeg(15000), "PCmedical");
+			})));
+		}
+
+		el.append(p);
+	}
+
+	function ovaries() {
+		const p = document.createElement("p");
+		const r = [];
+		if (V.PC.preg === -2 && V.PC.physicalAge < 70) {
+			r.push(`Now we can only do this so many times before your body just can't handle it, but if you absolutely must have a child with your, um, vintage, then we can do something for you. For <span class="cash">${cashFormat(50000)},</span> we can clone and replace your depleted ovaries with slightly younger ones. They'll get you a couple more years of ovulation before they dry up too, but if you're desperate for a child, they may be your last option.`);
+			App.Events.addNode(p, r, "div");
+			p.append(App.UI.DOM.makeElement("div", surgeryLink("Regenerate your ovaries and cheat menopause for a couple more years", "ovulationRestart", () => {
+				V.PC.ovaryAge = 45;
+				V.PC.preg = 0;
+				cashX(forceNeg(50000), "PCmedical");
+			})));
+		}
+		el.append(p);
+	}
+
+	function sexType() {
+		const p = document.createElement("p");
+		const r = [];
+		const linkArray = [];
+		App.Events.addNode(p, [
+			`"Now, if what you are looking for is sex reassignment surgery, that's going to be more complicated. Personally I think you are fine the way you are, but if you insist on paying me, I won't say no to it. We'll need to take a DNA sample to clone the required organs, and that will take some time to complete, so tell me early if this is what you really want. I've had a few patients seeking a working set of both sexes, so if that gets you off, it is an option. As for prices, <span class="cash">${cashFormat(50000)}</span> for a sex swap, <span class="cash">${cashFormat(150000)}</span> to be a fully functional herm, oh and <span class="red">breasts are not included unless you undergo a full body remodeling.</span> You'll have to set up another appointment for that, however. Oh, and I guess <span class="cash">${cashFormat(25000)}</span> is fair for having a sex organ removed, if you have both. It's a very invasive procedure, as we will be near completely remodeling your body. I assure you, we do such fantastic work that no one will know you weren't naturally born that way! Oh, and due to the extent of the surgery, we will not perform the procedure if you are pregnant; please clean yourself out before you arrive."`
+		], "div");
+		if (V.PC.preg > 0) {
+			r.push(`${HeU} pokes your belly. "You're pregnant. What did I tell you?"`);
+		} else {
+			if (V.PC.dick !== 0 && V.PC.vagina !== -1) {
+				r.push(`You have working <span class="intro question">male and female reproductive organs</span> and a <span class="intro question">`);
+				if (V.PC.title > 0) {
+					r.push(`masculine`);
+				} else {
+					r.push(`feminine`);
+				}
+				r.push(`appearance.</span> "We'll store some of your sperm for you, should you decide to lose your maleness, and have it shipped to your arcology. Who you decide to use it on, well... That's up to you!"`);
+				linkArray.push(
+					surgeryLink("Remove your male half", "herm2female", () => {
+						V.PC.ballsImplant = 0;
+						V.PC.balls = 0;
+						V.PC.scrotum = 0;
+						V.PC.dick = 0;
+						V.PC.prostate = 0;
+						V.PC.counter.storedCum += 10;
+						cashX(forceNeg(25000), "PCmedical");
+					}),
+					surgeryLink("Remove your female half", "herm2male", () => {
+						V.PC.vagina = -1;
+						V.PC.vaginaLube = 0;
+						V.PC.ovaries = 0;
+						V.PC.preg = 0;
+						WombFlush(V.PC);
+						cashX(forceNeg(25000), "PCmedical");
+					}),
+				);
+				if (V.PC.title > 0) {
+					linkArray.push(surgeryLink("Remove your male half completely", "herm2truefemale", () => {
+						V.PC.ballsImplant = 0;
+						V.PC.balls = 0;
+						V.PC.scrotum = 0;
+						V.PC.dick = 0;
+						V.PC.prostate = 0;
+						V.PC.counter.storedCum += 10;
+						V.PC.title = 0;
+						generatePlayerPronouns(V.PC);
+						cashX(forceNeg(25000), "PCmedical");
+					}));
+				} else {
+					linkArray.push(surgeryLink("Remove your female half completely", "herm2truemale", () => {
+						V.PC.vagina = -1;
+						V.PC.vaginaLube = 0;
+						V.PC.ovaries = 0;
+						V.PC.preg = 0;
+						WombFlush(V.PC);
+						V.PC.boobs = 100;
+						V.PC.boobsImplant = 0;
+						V.PC.title = 1;
+						generatePlayerPronouns(V.PC);
+						cashX(forceNeg(25000), "PCmedical");
+					}));
+				}
+			} else if (V.PC.dick !== 0) {
+				r.push(`You have <span class="intro question">male genitalia</span> and a <span class="intro question">`);
+				if (V.PC.title > 0) {
+					r.push(`masculine`);
+				} else {
+					r.push(`feminine`);
+				}
+				r.push(`appearance.</span> "We'll store some of your sperm for you, should you decide to lose your maleness, and have it shipped to your arcology. Who you decide to use it on, well... That's up to you!"`);
+				linkArray.push(
+					surgeryLink("Have your male organs replaced with female ones", "male2female", () => {
+						V.PC.ballsImplant = 0;
+						V.PC.balls = 0;
+						V.PC.scrotum = 0;
+						V.PC.dick = 0;
+						V.PC.prostate = 0;
+						V.PC.vagina = 1;
+						V.PC.newVag = 1;
+						V.PC.vaginaLube = 1;
+						V.PC.ovaries = 1;
+						cashX(forceNeg(50000), "PCmedical");
+					}),
+					surgeryLink("Add a female reproductive tract", "male2herm", () => {
+						V.PC.vagina = 1;
+						V.PC.newVag = 1;
+						V.PC.vaginaLube = 1;
+						V.PC.ovaries = 1;
+						V.PC.preg = 0;
+						WombFlush(V.PC);
+						cashX(forceNeg(150000), "PCmedical");
+					}),
+				);
+				if (V.PC.title > 0) {
+					linkArray.push(
+						surgeryLink("Become a woman", "male2truefemale", () => {
+							V.PC.ballsImplant = 0;
+							V.PC.balls = 0;
+							V.PC.scrotum = 0;
+							V.PC.dick = 0;
+							V.PC.prostate = 0;
+							V.PC.counter.storedCum += 10;
+							V.PC.vagina = 1;
+							V.PC.newVag = 1;
+							V.PC.vaginaLube = 1;
+							V.PC.ovaries = 1;
+							V.PC.preg = 0;
+							V.PC.title = 0;
+							generatePlayerPronouns(V.PC);
+							cashX(forceNeg(50000), "PCmedical");
+						}),
+						surgeryLink("Become a hermaphrodite girl", "male2hermfemale", () => {
+							V.PC.vagina = 1;
+							V.PC.newVag = 1;
+							V.PC.vaginaLube = 1;
+							V.PC.ovaries = 1;
+							V.PC.preg = 0;
+							WombFlush(V.PC);
+							V.PC.title = 0;
+							generatePlayerPronouns(V.PC);
+							cashX(forceNeg(150000), "PCmedical");
+						}),
+					);
+				}
+			} else {
+				r.push(`You have <span class="intro question">female genitalia</span> and a <span class="intro question">`);
+				if (V.PC.title > 0) {
+					r.push(`masculine`);
+				} else {
+					r.push(`feminine`);
+				}
+				r.push(`appearance.</span>`);
+				linkArray.push(
+					surgeryLink("Have your female organs replaced with male ones", "female2male", () => {
+						V.PC.ballsImplant = 0;
+						V.PC.balls = 3;
+						V.PC.scrotum = 3;
+						V.PC.dick = 4;
+						V.PC.prostate = 1;
+						V.PC.vagina = -1;
+						V.PC.vaginaLube = 0;
+						V.PC.ovaries = 0;
+						cashX(forceNeg(50000), "PCmedical");
+					}),
+					surgeryLink("Add a male reproductive tract", "female2herm", () => {
+						V.PC.ballsImplant = 0;
+						V.PC.balls = 3;
+						V.PC.scrotum = 3;
+						V.PC.dick = 4;
+						V.PC.prostate = 1;
+						cashX(forceNeg(150000), "PCmedical");
+					}),
+				);
+				if (V.PC.title === 0) {
+					linkArray.push(
+						surgeryLink("Become a man", "female2truemale", () => {
+							V.PC.ballsImplant = 0;
+							V.PC.balls = 3;
+							V.PC.scrotum = 3;
+							V.PC.dick = 4;
+							V.PC.prostate = 1;
+							V.PC.vagina = -1;
+							V.PC.vaginaLube = 0;
+							V.PC.ovaries = 0;
+							V.PC.preg = 0;
+							WombFlush(V.PC);
+							V.PC.title = 1;
+							generatePlayerPronouns(V.PC);
+							V.PC.boobs = 100;
+							V.PC.boobsImplant = 0;
+							cashX(forceNeg(50000), "PCmedical");
+						}),
+						surgeryLink("Become a hermaphrodite boy", "female2hermmale", () => {
+							V.PC.ballsImplant = 0;
+							V.PC.balls = 3;
+							V.PC.scrotum = 3;
+							V.PC.dick = 4;
+							V.PC.prostate = 1;
+							V.PC.title = 1;
+							generatePlayerPronouns(V.PC);
+							V.PC.boobs = 100;
+							V.PC.boobsImplant = 0;
+							cashX(forceNeg(150000), "PCmedical");
+						}),
+					);
+				}
+			}
+		}
+		App.Events.addNode(p, r, "div");
+		p.append(App.UI.DOM.makeElement("div", App.UI.DOM.generateLinksStrip(linkArray)));
+		el.append(p);
+	}
+
+	/**
+	 *
+	 * @param {string} title
+	 * @param {string} type
+	 * @param {function():void} func
+	 * @returns {HTMLAnchorElement}
+	 */
+	function surgeryLink(title, type, func) {
+		return App.UI.DOM.link(
+			title,
+			() => {
+				func();
+				showDegradation(type);
+			}
+		);
+	}
+
+	function showDegradation(type) {
+		V.nextButton = "Continue";
+		V.nextLink = "Manage Personal Affairs";
+		App.Utils.scheduleSidebarRefresh();
+		jQuery(el).empty().append(App.UI.PCSurgeryDegradation(type));
+	}
+};
diff --git a/src/player/electiveSurgery.tw b/src/player/electiveSurgery.tw
deleted file mode 100644
index 502a18a9d4da947f8ac095e616a7087a75f4066b..0000000000000000000000000000000000000000
--- a/src/player/electiveSurgery.tw
+++ /dev/null
@@ -1,402 +0,0 @@
-:: Elective Surgery [nobr]
-
-<<if $seeDicks == 100>>
-	<<setNonlocalPronouns 100>>
-<<else>>
-	<<setNonlocalPronouns 0>>
-<</if>>
-
-You arrive at your favorite plastic surgeon for your appointment to find them as busy as ever, but you find yourself quickly hurried into an exam room by their cute assistant. _HeU wastes no time in hurrying you into _hisU office, stripping you down, measuring you and making sure you are healthy enough for surgery, all the while not so subtly running _hisU hands across every part of you. "So, what can I help you with?"
-
-<br><br>
-"You sure you want to mess with that lovely face?" _heU teases, caressing your cheek. "@@.yellowgreen;<<print cashFormat(5000)>>.@@ Also wouldn't recommend changing your eyes, face shape or skin color; some security systems get real uppity over things like that. Though I s'pose race and hair can fall under that as well, but hey, we don't handle racial surgery and this isn't a hair salon, so nothing to worry about, right? Yes, I'm certain your systems will recognize you after we finish working on you — give us some credit."
-<br>
-You're @@.orange;$PC.actualAge years old.@@
-<<if $PC.actualAge >= 65>>
-	<<if $PC.visualAge > $PC.actualAge>>
-		You've had surgery to make yourself @@.lime;look older.@@
-		<br>[[Undo Facial surgery|PC Surgery Degradation][$PC.faceImplant = 0, $PC.visualAge = $PC.physicalAge, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "restoreFace"]]
-	<<elseif $PC.visualAge < $PC.actualAge>>
-		You've had surgery to make yourself @@.lime;look younger.@@
-		<br>[[Undo Facial surgery|PC Surgery Degradation][$PC.faceImplant = 0, $PC.visualAge = $PC.physicalAge, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "restoreFace"]]
-	<<else>>
-		You could benefit from a face lift.
-		<br>
-		<<if $PC.visualAge >= 25>>
-			[[Get a face lift|PC Surgery Degradation][$PC.faceImplant = 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "ageDown"]] |
-		<</if>>
-		[[Remodel your face to appear older|PC Surgery Degradation][$PC.faceImplant = 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "ageUp"]]
-	<</if>>
-<<elseif $PC.actualAge >= 50>>
-	<<if $PC.visualAge > $PC.actualAge>>
-		You've had surgery to make yourself @@.lime;look older.@@
-		<br>[[Undo Facial surgery|PC Surgery Degradation][$PC.faceImplant = 0, $PC.visualAge = $PC.physicalAge, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "restoreFace"]]
-	<<elseif $PC.visualAge < $PC.actualAge>>
-		You've had surgery to make yourself @@.lime;look younger.@@
-		<br>[[Undo Facial surgery|PC Surgery Degradation][$PC.faceImplant = 0, $PC.visualAge = $PC.physicalAge, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "restoreFace"]]
-	<<else>>
-		You could benefit from a face lift.
-		<br>
-		<<if $PC.visualAge >= 25>>
-			[[Get a face lift|PC Surgery Degradation][$PC.faceImplant = 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "ageDown"]] |
-		<</if>>
-		[[Remodel your face to appear older|PC Surgery Degradation][$PC.faceImplant = 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "ageUp"]]
-	<</if>>
-<<elseif $PC.actualAge >= 35>>
-	<<if $PC.visualAge > $PC.actualAge>>
-		You've had surgery to make yourself @@.lime;look older.@@
-		<br>[[Undo Facial surgery|PC Surgery Degradation][$PC.faceImplant = 0, $PC.visualAge = $PC.physicalAge, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "restoreFace"]]
-	<<elseif $PC.visualAge < $PC.actualAge>>
-		You've had surgery to make yourself @@.lime;look younger.@@
-		<br>[[Undo Facial surgery|PC Surgery Degradation][$PC.faceImplant = 0, $PC.visualAge = $PC.physicalAge, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "restoreFace"]]
-	<<else>>
-		You could go for a face lift, though making yourself look older could be useful.
-		<br>
-		<<if $PC.visualAge >= 25>>
-			[[Get a face lift|PC Surgery Degradation][$PC.faceImplant = 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "ageDown"]] |
-		<</if>>
-		[[Remodel your face to appear older|PC Surgery Degradation][$PC.faceImplant = 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "ageUp"]]
-	<</if>>
-<<else>>
-	<<if $PC.visualAge > $PC.actualAge>>
-		You've had surgery to make yourself @@.lime;look older.@@
-		<br>[[Undo Facial surgery|PC Surgery Degradation][$PC.faceImplant = 0, $PC.visualAge = $PC.physicalAge, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "restoreFace"]]
-	<<elseif $PC.visualAge < $PC.actualAge>>
-		You've had surgery to make yourself @@.lime;look younger.@@
-		<br>[[Undo Facial surgery|PC Surgery Degradation][$PC.faceImplant = 0, $PC.visualAge = $PC.physicalAge, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "restoreFace"]]
-	<<else>>
-		You could undergo facial surgery to make yourself look older<<if $PC.visualAge >= 25>>, though you could also make yourself look even younger<</if>>.
-		<br>
-		<<if $PC.visualAge >= 25>>
-			[[Remodel your face to appear younger|PC Surgery Degradation][$PC.faceImplant = 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "ageDown"]] |
-		<</if>>
-		[[Remodel your face to appear older|PC Surgery Degradation][$PC.faceImplant = 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "ageUp"]]
-	<</if>>
-<</if>>
-
-<br><br>
-"Your skin is beautiful as is, but we can change it if you want," _heU says, pulling a large tanning bed-like cart out of a closet. "@@.yellowgreen;<<print cashFormat(2000)>>.@@ This thing just came out of testing. I assure you it doesn't cause cancer anymore! But still, mind your security systems. We won't be held accountable if you get arrested for trying to enter your penthouse." _HeU looks a little worrisome, "Now, there are some side effects, and we will have to keep you under special care for a few days. It's similar to a severe sunburn, across your entire body, all of it, even down there. Now don't give me that look, we have special ointments to soothe the pain and have a little fun with." _HeU tosses you a wink alongside a hesitant giggle. "Now all your typical skin tones are preprogrammed into it, and with a couple button presses... There! I unlocked the option for custom hues. Now this thing is going to recolor your skin pigment permanently, so you might want to take it seriously. It'll all be on you if I choke with laughter <<if $PC.dick != 0>>sucking on your big polka-dotted cock<<else>>going down on your polka-dotted pussy<</if>>!"
-<br>
-You have @@.orange;$PC.skin skin.@@<<if $PC.skin != $PC.origSkin>> Your original skin tone was $PC.origSkin.<</if>>
-<br>
-<<if $PC.skin != $PC.origSkin>>
-	[[Restore natural color|PC Surgery Degradation][$PC.skin = $PC.origSkin, cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "pure white">>
-	[[Pure White|PC Surgery Degradation][$PC.skin = "pure white", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "ivory">>
-	[[Ivory|PC Surgery Degradation][$PC.skin = "ivory", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "white">>
-	[[White|PC Surgery Degradation][$PC.skin = "white", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "extremely pale">>
-	[[Extremely Pale|PC Surgery Degradation][$PC.skin = "extremely pale", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "very pale">>
-	[[Very Pale|PC Surgery Degradation][$PC.skin = "very pale", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "pale">>
-	[[Pale|PC Surgery Degradation][$PC.skin = "pale", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "extremely fair">>
-	[[Extremely Fair|PC Surgery Degradation][$PC.skin = "extremely fair", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "very fair">>
-	[[Very Fair|PC Surgery Degradation][$PC.skin = "very fair", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "fair">>
-	[[Fair|PC Surgery Degradation][$PC.skin = "fair", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "light">>
-	[[Light|PC Surgery Degradation][$PC.skin = "light", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "light olive">>
-	[[Light Olive|PC Surgery Degradation][$PC.skin = "light olive", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "tan">>
-	[[Tan|PC Surgery Degradation][$PC.skin = "tan", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "olive">>
-	[[Olive|PC Surgery Degradation][$PC.skin = "olive", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "bronze">>
-	[[Bronze|PC Surgery Degradation][$PC.skin = "bronze", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "dark olive">>
-	[[Dark Olive|PC Surgery Degradation][$PC.skin = "dark olive", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "dark">>
-	[[Dark|PC Surgery Degradation][$PC.skin = "dark", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "light beige">>
-	[[Light Beige|PC Surgery Degradation][$PC.skin = "light beige", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "beige">>
-	[[Beige|PC Surgery Degradation][$PC.skin = "beige", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "dark beige">>
-	[[Dark Beige|PC Surgery Degradation][$PC.skin = "dark beige", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "light brown">>
-	[[Light Brown|PC Surgery Degradation][$PC.skin = "light brown", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "brown">>
-	[[Brown|PC Surgery Degradation][$PC.skin = "brown", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "dark brown">>
-	[[Dark Brown|PC Surgery Degradation][$PC.skin = "dark brown", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "black">>
-	[[Black|PC Surgery Degradation][$PC.skin = "black", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "ebony">>
-	[[Ebony|PC Surgery Degradation][$PC.skin = "ebony", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]] |
-<</if>>
-<<if $PC.skin != "pure black">>
-	[[Pure Black|PC Surgery Degradation][$PC.skin = "pure black", cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]]
-<</if>>
-[[Custom Color|PC Skin Workaround][cashX(forceNeg(2000), "PCmedical"), $surgeryType = "skinTone"]]
-
-
-<br><br>"Maybe some breast work? I assure you they are lovely," _heU says as _heU brushes the back of your head with _hisU own pair. "@@.yellowgreen;<<print cashFormat(5000)>>@@ for a reduction, @@.yellowgreen;<<print cashFormat(10000)>>@@ for implants, that includes size ups, and @@.yellowgreen;<<print cashFormat(15000)>>@@ for additional breast tissue. That last one might as well be real!<<if $PC.boobs < 700>> With a little work, we can even remove a small amount of fat from your breasts to bring your cup size down without damaging their inner workings. Though we'll have to build them up some before we can stick reasonable implants into you.<</if>>"<br>
-<<if $PC.boobs >= 1400>>
-	<<if $PC.boobsImplant > 0>>
-		You have a @@.orange;pair of round H-cup breasts;@@ they are very obviously implants.
-		<br>//You are starting to experience back pain; any bigger and they might seriously impede your ability to run your arcology.// | [[Have your implants removed|PC Surgery Degradation][$PC.boobs -= $PC.boobsImplant, $PC.boobsImplant = 0, $PC.boobsImplantType = "none", cashX(forceNeg(5000), "PCmedical"), $surgeryType = "breastReductionImplant"]]
-	<<else>>
-		You have a @@.orange;heavy H-cup bust.@@ They tend to sag a little when you free them from your top, though they have some perk to them.
-		<br>//You are starting to experience back pain; any bigger and they might seriously impede your ability to run your arcology.// | [[Have tissue removed|PC Surgery Degradation][$PC.boobs = 1300, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "breastShrinkage"]]
-	<</if>>
-<<elseif $PC.boobs >= 1200>>
-	<<if $PC.boobsImplant > 0>>
-		You have a @@.orange;pair of rounded G-cup breasts;@@ they are a little too perky for their size to pass as natural.
-		<br>[[Have your implants removed|PC Surgery Degradation][$PC.boobs -= $PC.boobsImplant, $PC.boobsImplant = 0, $PC.boobsImplantType = "none", cashX(forceNeg(5000), "PCmedical"), $surgeryType = "breastReductionImplant"]] | [[Get the next size up|PC Surgery Degradation][$PC.boobs += 200, $PC.boobsImplant += 200, cashX(forceNeg(10000), "PCmedical"), $surgeryType = "breastEnlargementImplant"]]
-	<<else>>
-		You have a @@.orange;huge G-cup bust.@@
-		<br>[[Add additional breast tissue|PC Surgery Degradation][$PC.boobs += 200, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "breastEnlargement"]] | [[Have tissue removed|PC Surgery Degradation][$PC.boobs -= 200, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "breastShrinkage"]]
-	<</if>>
-<<elseif $PC.boobs >= 1000>>
-	<<if $PC.boobsImplant > 0>>
-		You have a @@.orange;pair of perky F-cup breasts;@@ you can barely tell they are implanted.
-		<br>[[Have your implants removed|PC Surgery Degradation][$PC.boobs -= $PC.boobsImplant, $PC.boobsImplant = 0, $PC.boobsImplantType = "none", cashX(forceNeg(5000), "PCmedical"), $surgeryType = "breastReductionImplant"]] | [[Get the next size up|PC Surgery Degradation][$PC.boobs += 200, $PC.boobsImplant += 200, cashX(forceNeg(10000), "PCmedical"), $surgeryType = "breastEnlargementImplant"]]
-	<<else>>
-		You have a @@.orange;hefty F-cup bust.@@
-		<br>[[Add additional breast tissue|PC Surgery Degradation][$PC.boobs += 200, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "breastEnlargement"]] | [[Have tissue removed|PC Surgery Degradation][$PC.boobs -= 200, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "breastShrinkage"]]
-	<</if>>
-<<elseif $PC.boobs >= 800>>
-	You have a @@.orange;big pair of DD-cup breasts.@@
-	<br>[[Get a pair of breast implants|PC Surgery Degradation][$PC.boobs += 200, $PC.boobsImplant += 200, $PC.boobsImplantType = "normal", cashX(forceNeg(10000), "PCmedical"), $surgeryType = "breastEnlargementImplant"]] | [[Add additional breast tissue|PC Surgery Degradation][$PC.boobs += 200, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "breastEnlargement"]] | [[Have fatty tissue removed|PC Surgery Degradation][$PC.boobs = 700, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "breastShrinkage"]] | [[Have them removed|PC Surgery Degradation][$PC.boobs = 100, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "flatChest"]]
-<<elseif $PC.boobs >= 650>>
-	You have a @@.orange;pair of D-cup breasts.@@
-	<br>[[Add additional fatty tissue|PC Surgery Degradation][$PC.boobs += 200, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "breastEnlargement"]] | [[Have fatty tissue removed|PC Surgery Degradation][$PC.boobs = 600, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "breastShrinkage"]] | [[Have them removed|PC Surgery Degradation][$PC.boobs = 100, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "flatChest"]]
-<<elseif $PC.boobs >= 500>>
-	You have a @@.orange;average pair of C-cup breasts.@@
-	<br>[[Add additional fatty tissue|PC Surgery Degradation][$PC.boobs += 200, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "breastEnlargement"]] | [[Have fatty tissue removed|PC Surgery Degradation][$PC.boobs = 400, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "breastShrinkage"]] | [[Have them removed|PC Surgery Degradation][$PC.boobs = 100, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "flatChest"]]
-<<elseif $PC.boobs >= 400>>
-	You have a @@.orange;small pair of B-cup breasts.@@
-	<br>[[Add additional fatty tissue|PC Surgery Degradation][$PC.boobs += 200, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "breastEnlargement"]] | [[Have them removed|PC Surgery Degradation][$PC.boobs = 100, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "flatChest"]] | //You lack sufficient fatty tissue to permit additional size reduction short of total breast removal.//
-<<elseif $PC.boobs >= 300>>
-	You have a @@.orange;small pair of A-cup breasts.@@
-	<br>[[Add additional fatty tissue|PC Surgery Degradation][$PC.boobs += 100, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "breastEnlargement"]] | [[Have them removed|PC Surgery Degradation][$PC.boobs = 100, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "flatChest"]] | //You lack sufficient fatty tissue to permit additional size reduction short of total breast removal.//
-<<elseif $PC.title == 1>>
-	You have a @@.orange;masculine chest.@@ At your request, breast tissue could be added until you have a healthy bust, though society is unlikely to approve.
-	<br>[[Get a pair of breasts|PC Surgery Degradation][$PC.boobs = 650, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "breasts"]]
-<<else>>
-	@@.orange;You're flat.@@ "We can fix that, if you want."
-	<br>[[Get a pair of breasts|PC Surgery Degradation][$PC.boobs = 650, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "breasts"]]
-<</if>>
-
-<<if $PC.belly >= 100 && $PC.preg > 3>>
-	<br><br>_HeU darts for your middle.
-	<<if $PC.belly >= 120000>>
-		"My god! What happened to you? You might not want to hit the fertility drugs so hard next time. Then again, I don't think you'll see us complaining when you come in for a tummy tuck to get everything back where it used to be," _heU says with a wink as _heU uses both hands to massage your
-		<<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-bursting belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry."
-		<<else>>over-crowded belly.
-		<</if>>
-		<br>
-	<<elseif $PC.belly >= 110000>>
-		"My god! What happened to you? You might not want to hit the fertility drugs so hard next time. Then again, I don't think you'll see us complaining when you come in for a tummy tuck to get everything back where it used to be," _heU says with a wink as _heU uses both hands to massage your
-		<<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-stuffed belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry."
-		<<else>>over-crowded belly.
-		<</if>>
-		<br>
-	<<elseif $PC.belly >= 95000>>
-		Oh wow! It's like a party in there!" _heU says as _heU uses both hands to massage your
-		<<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-stuffed belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry."
-		<<else>>crowded belly.
-		<</if>>
-		<br>
-	<<elseif $PC.belly >= 80000>>
-		You must feel so full, like all the time. What's it feel like? Do they ever calm down?" _heU says as _heU uses both hands to massage your
-		<<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry."
-		<<else>>crowded belly.
-		<</if>>
-		<br>
-	<<elseif $PC.belly >= 64000>>
-		Oh wow! You're immense! I almost can't wrap my arms around it!" _heU says as _heU uses both hands to massage your
-		<<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry."
-		<<else>>crowded belly.
-		<</if>>
-		<br>
-	<<elseif $PC.belly >= 48000>>
-		"Oh wow! You're gigantic! Are you sure you want to have surgery in this state? Things start to get complicated when you're this pregnant," _heU says as _heU uses both hands to massage your
-		<<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry."
-		<<else>>crowded belly.
-		<</if>>
-		<br>
-	<<elseif $PC.belly >= 32000>>
-		"My word, are you sure you want to have surgery in this state? You're gigantic! Plus things start to get complicated when you're this pregnant," _heU says as _heU uses both hands to massage your
-		<<if $PC.preg > 40>>overdue <<print pregNumberName($PC.pregType, 1)>>-filled belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry."
-		<<else>>crowded belly.
-		<</if>>
-		<br>
-	<<elseif $PC.belly >= 16000>>
-		"My word, are you sure you want to have surgery in this state? You're giant!" _heU says as _heU uses both hands to massage your
-		<<if $PC.preg > 40>>overdue belly, enjoying the kicks from your child<<if $PC.pregType > 1>>ren<</if>> within. "If you go into labor, we have everything you'll need, so don't worry."
-		<<else>>belly, taking note of the extra occupants.
-		<</if>>
-		<br>
-	<<elseif $PC.belly >= 14000>>
-		"Wow, are you going to be ok? That looks really heavy," _heU says as _heU uses both hands to grope your massive belly, paying extra attention to your navel. "Are you sure you don't want to take a seat?"<br>
-	<<elseif $PC.belly >= 12000>>
-		"You're huge! Look at that adorable navel!" _heU says as _heU uses both hands to grope your huge belly, paying extra attention to your navel.<br>
-	<<elseif $PC.belly >= 10000>>
-		"Look how big you are!" _heU says as _heU uses both hands to grope your huge belly.<br>
-	<<elseif $PC.belly >= 7000>>
-		"You're getting so big!" _heU says as _heU uses both hands to massage your big pregnant belly.<br>
-	<<elseif $PC.belly >= 5000>>
-		"You're getting so big!" _heU says as _heU uses both hands to massage your pregnant belly.<br>
-	<<elseif $PC.belly >= 3000>>
-		"Looks like fun!" _heU says as _heU uses both hands to rub your pregnant belly.<br>
-	<<elseif $PC.belly >= 1500>>
-		"Awwww, you're getting soo big!" _heU says as _heU rubs your pregnant belly.<br>
-	<<elseif $PC.belly >= 500>>
-		"Awwww, you have a bun in the oven! That's so adorable; didn't think you the type," _heU says as _heU pats your rounded middle.<br>
-	<<elseif $PC.belly >= 300>>
-		"Awwww, you have a bun in the oven! That's so adorable; didn't think you the type," _heU says as _heU rubs your slightly rounded middle.<br>
-	<<elseif $PC.belly >= 100>>
-		"Awwww, you have a bun in the oven! That's so adorable; didn't think you the type," _heU says as _heU rubs your slightly swollen belly. No denying it now.<br>
-	<</if>>
-<<elseif $PC.belly >= 100 && $PC.preg < 1>>
-	_HeU pinches your belly. "How about a tummy tuck? We can smooth this right out, cheaply too, @@.yellowgreen;<<print cashFormat(500)>>.@@" _HeU lets your saggy middle flop back to its usual drooping state.
-	[[Firm up your stomach|PC Surgery Degradation][$PC.belly = 0, cashX(forceNeg(500), "PCmedical"), $surgeryType = "tummyTuck"]]
-<</if>>
-
-<br><br>"How about a new butt?" _heU says as _heU wiggles _hisU own at you. "Same prices as the breasts."<br>
-<<if $PC.butt >= 5>>
-	<<if $PC.buttImplant >= 1>>
-		You have an @@.orange;enormous, round, hard butt;@@ it is very obviously a pair of huge implants.
-		<br>//You can barely squeeze your rear into your clothes and are starting to get stuck in chairs; any bigger and it might seriously impede your ability to run your arcology.// | [[Have your implants removed|PC Surgery Degradation][$PC.butt -= $PC.buttImplant, $PC.buttImplant = 0, $PC.buttImplantType = "none", cashX(forceNeg(5000), "PCmedical"), $surgeryType = "buttReductionImplant"]]
-	<<else>>
-		You have an @@.orange;enormous, jiggly butt.@@
-		<br>//You can barely squeeze your rear into your clothes and are starting to get stuck in chairs; any bigger and it might seriously impede your ability to run your arcology.// | [[Have fat removed|PC Surgery Degradation][$PC.butt -= 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "buttShrinkage"]]
-	<</if>>
-<<elseif $PC.butt >= 4>>
-	<<if $PC.buttImplant >= 1>>
-		You have a @@.orange;huge, round, firm butt;@@ it's easily identifiable as fake.
-		<br>[[Have your implants removed|PC Surgery Degradation][$PC.butt -= $PC.buttImplant, $PC.buttImplant = 0, $PC.buttImplantType = "none", cashX(forceNeg(5000), "PCmedical"), $surgeryType = "buttReductionImplant"]] | [[Get the next size up|PC Surgery Degradation][$PC.butt += 1, $PC.buttImplant += 1, cashX(forceNeg(10000), "PCmedical"), $surgeryType = "buttEnlargementImplant"]]
-	<<else>>
-		You have a @@.orange;huge, soft butt.@@
-		<br>[[Add additional fatty tissue|PC Surgery Degradation][$PC.butt += 1, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "buttEnlargement"]] | [[Have fat removed|PC Surgery Degradation][$PC.butt -= 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "buttShrinkage"]]
-	<</if>>
-<<elseif $PC.butt >= 3>>
-	<<if $PC.buttImplant >= 1>>
-		You have a @@.orange;big firm butt;@@ anyone that feels it can tell it's fake, but at a glance you can't tell otherwise.
-		<br>[[Have your implants removed|PC Surgery Degradation][$PC.butt -= $PC.buttImplant, $PC.buttImplant = 0, $PC.buttImplantType = "none", cashX(forceNeg(5000), "PCmedical"), $surgeryType = "buttReductionImplant"]] | [[Get the next size up|PC Surgery Degradation][$PC.butt += 1, $PC.buttImplant += 1, cashX(forceNeg(10000), "PCmedical"), $surgeryType = "buttEnlargementImplant"]]
-	<<else>>
-		You have a @@.orange;big butt.@@
-		<br>[[Add additional fatty tissue|PC Surgery Degradation][$PC.butt += 1, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "buttEnlargement"]] | [[Have fat removed|PC Surgery Degradation][$PC.butt -= 1, cashX(forceNeg(5000), "PCmedical"), $surgeryType = "buttShrinkage"]]
-	<</if>>
-<<else>>
-	You have a @@.orange;cute, but normal butt.@@ At your request, fat could be added until you have a healthy rear; alternatively, a pair of implants could be inserted instead.
-	<br>[[Get a pair of butt implants|PC Surgery Degradation][$PC.butt += 1, $PC.buttImplant += 1, $PC.buttImplantType = "normal", cashX(forceNeg(10000), "PCmedical"), $surgeryType = "buttEnlargementImplant"]] | [[Add additional fatty tissue|PC Surgery Degradation][$PC.butt += 1, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "buttEnlargement"]]
-<</if>>
-
-<<if $PC.balls != 0 && $PC.scrotum != 0>>
-	<br><br>"We could add gel around your testes to make your balls look bigger. Would also dampen any impacts to them as well, if that is anything to consider," _heU says, running a finger down the length of your shaft. "@@.yellowgreen;<<print cashFormat(7500)>>@@ for draining and @@.yellowgreen;<<print cashFormat(12000)>>@@ for filling, it's not the most simple procedure, you know? Anyway, they'll be very obvious, if that turns you on." _HeU takes another look at you before offering another option. "Of course, if you want bigger balls in a <i>functional</i> sense, we can do that too. The doctor's research in advanced targeted growth hormones has shown promising results in test subjects, and he's been able to use them successfully on a few citizen patients so far. A direct injection of hormones, and your testes will grow on their own. Unlike the cosmetic gel, there's no easily reversing this treatment, unless you are willing to subject yourself to slave drugs. It's expensive too, for the high quality drugs you want; @@.yellowgreen;<<print cashFormat(25000)>>@@ for one round of therapy. I should also warn you that repeated doses tend to have an increased effect."
-	<<if $PC.balls >= 30>>
-		You have a @@.orange;monstrous, massive pair of balls@@ roughly the size of small watermelons; it's impossible to sit normally, so you've had to buy special chairs, you've given up on wearing pants, and they're so obvious that people probably assume they're fake, but every slave you fuck gets to really feel the load you pump into them, and you love it.
-		<<if $PC.ballsImplant>>
-			<br>[[Have gel extracted|PC Surgery Degradation][$PC.balls = 14, $PC.ballsImplant = 11, cashX(forceNeg(7500), "PCmedical"), $surgeryType = "ballShrinkage"]] | [[Have a lot of gel extracted|PC Surgery Degradation][$PC.balls = 5, $PC.ballsImplant = 2, cashX(forceNeg(7500), "PCmedical"), $surgeryType = "ballBigShrinkage"]]
-		<</if>>
-	<<elseif $PC.balls >= 14>>
-		You have an @@.orange;enormous, heavy pair of balls@@ roughly the size of cantaloupes; it's difficult to sit normally, your clothes barely fit, and everyone can tell they are fake, but every slave you fuck gets a distinct slap with each thrust and you love it.
-		<br>//You're beginning to have trouble moving around and using furniture thanks to your over-sized nuts, even bringing your legs together is a pain; any bigger and they might seriously impede your ability to run your arcology, or walk, for that matter.// |
-		<<if $PC.ballsImplant>>
-			[[Have even more gel added|PC Surgery Degradation][$PC.balls = 30, $PC.ballsImplant = 27, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "ballEnlargement"]] | [[Have gel extracted|PC Surgery Degradation][$PC.balls = 9, $PC.ballsImplant = 6, cashX(forceNeg(7500), "PCmedical"), $surgeryType = "ballShrinkage"]]
-		<<else>>
-			[[Get another round of growth hormones anyway|PC Surgery Degradation][$PC.balls = 30, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "ballEnlargementHorm"]]
-		<</if>>
-	<<elseif $PC.balls >= 9>>
-		You have a @@.orange;huge pair of balls@@ roughly the size of softballs; they make quite a bulge in your clothes and dangle heavily any other time.
-		<br>
-		<<if $PC.ballsImplant>>
-			[[Have more gel added|PC Surgery Degradation][$PC.balls = 14, $PC.ballsImplant = 11, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "ballEnlargement"]] | [[Have gel extracted|PC Surgery Degradation][$PC.balls = 5, $PC.ballsImplant = 2, cashX(forceNeg(7500), "PCmedical"), $surgeryType = "ballShrinkage"]]
-		<<else>>
-			[[Get another round of growth hormones|PC Surgery Degradation][$PC.balls = 14, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "ballEnlargementHorm"]]
-		<</if>>
-	<<elseif $PC.balls >= 5>>
-		You have a @@.orange;large pair of balls;@@ you can certainly feel them as you move.
-		<br>
-		<<if $PC.ballsImplant>>
-			[[Have more gel added|PC Surgery Degradation][$PC.balls = 9, $PC.ballsImplant = 6, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "ballEnlargement"]] | [[Have gel extracted|PC Surgery Degradation][$PC.balls = 3, $PC.ballsImplant = 0, cashX(forceNeg(7500), "PCmedical"), $surgeryType = "ballShrinkage"]]
-		<<else>>
-			[[Get another round of growth hormones|PC Surgery Degradation][$PC.balls = 9, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "ballEnlargementHorm"]]
-		<</if>>
-	<<else>>
-		You have a @@.orange;normal, uneventful pair of balls.@@
-		<br>[[Get hormone treatment|PC Surgery Degradation][$PC.balls = 5, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "ballEnlargementHorm"]] | [[Have the gel added|PC Surgery Degradation][$PC.balls = 5, $PC.ballsImplant = 2, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "ballEnlargement"]]
-	<</if>>
-<</if>>
-
-<<if $PC.vagina >= 3 && $PC.newVag == 0>>
-	<br><br>
-	"Looking a little loose down there; I can fix that for you. Get you nice and tight again. Oh, and our pussies are guaranteed to not lose their tightness, or your money back! @@.yellowgreen;<<print cashFormat(15000)>>@@ for a brand new vagina."
-	<br>
-	[[Get a tighter vagina|PC Surgery Degradation][$PC.vagina = 1, $PC.newVag = 1, cashX(forceNeg(15000), "PCmedical"), $surgeryType = "tightPussy"]]
-<</if>>
-
-<<if $PC.preg == -2 && $PC.physicalAge < 70>>
-	<br><br>
-	Now we can only do this so many times before your body just can't handle it, but if you absolutely must have a child with your, um, vintage, then we can do something for you. For @@.yellowgreen;<<print cashFormat(50000)>>,@@ we can clone and replace your depleted ovaries with slightly younger ones. They'll get you a couple more years of ovulation before they dry up too, but if you're desperate for a child, they may be your last option.
-	[[Regenerate your ovaries and cheat menopause for a couple more years|PC Surgery Degradation][$PC.ovaryAge = 45, $PC.preg = 0, cashX(forceNeg(50000), "PCmedical"), $surgeryType = "ovulationRestart"]]
-<</if>>
-
-<br><br>
-"Now, if what you are looking for is sex reassignment surgery, that's going to be more complicated. Personally I think you are fine the way you are, but if you insist on paying me, I won't say no to it. We'll need to take a DNA sample to clone the required organs, and that will take some time to complete, so tell me early if this is what you really want. I've had a few patients seeking a working set of both sexes, so if that gets you off, it is an option. As for prices, @@.yellowgreen;<<print cashFormat(50000)>>@@ for a sex swap, @@.yellowgreen;<<print cashFormat(150000)>>@@ to be a fully functional herm, oh and @@.red;breasts are not included unless you undergo a full body remodeling.@@ You'll have to set up another appointment for that, however. Oh, and I guess @@.yellowgreen;<<print cashFormat(25000)>>@@ is fair for having a sex organ removed, if you have both. It's a very invasive procedure, as we will be near completely remodeling your body. I assure you, we do such fantastic work that no one will know you weren't naturally born that way! Oh, and due to the extent of the surgery, we will not perform the procedure if you are pregnant; please clean yourself out before you arrive."
-<br>
-<<if $PC.preg > 0>>
-	_HeU pokes your belly. "You're pregnant. What did I tell you?"
-<<else>>
-	<<if $PC.dick != 0 && $PC.vagina != -1>>
-		You have working @@.orange;male and female reproductive organs@@ and a @@.orange;<<if $PC.title > 0>>masculine<<else>>feminine<</if>> appearance.@@ "We'll store some of your sperm for you, should you decide to lose your maleness, and have it shipped to your arcology. Who you decide to use it on, well... That's up to you!"
-		<br>
-		[[Remove your male half|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.scrotum = 0, $PC.dick = 0, $PC.prostate = 0, $PC.counter.storedCum += 10, cashX(forceNeg(25000), "PCmedical"), $surgeryType = "herm2female"]] |
-		[[Remove your female half|PC Surgery Degradation][$PC.vagina = -1, $PC.vaginaLube = 0, $PC.ovaries = 0, $PC.preg = 0, WombFlush($PC), cashX(forceNeg(25000), "PCmedical"), $surgeryType = "herm2male"]]
-		<<if $PC.title > 0>>
-			| [[Remove your male half completely|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.scrotum = 0, $PC.dick = 0, $PC.prostate = 0, $PC.counter.storedCum += 10, $PC.title = 0, generatePlayerPronouns($PC), cashX(forceNeg(25000), "PCmedical"), $surgeryType = "herm2truefemale"]]
-		<<else>>
-			| [[Remove your female half completely|PC Surgery Degradation][$PC.vagina = -1, $PC.vaginaLube = 0, $PC.ovaries = 0, $PC.preg = 0, WombFlush($PC), $PC.boobs = 100, $PC.boobsImplant = 0, $PC.title = 1, generatePlayerPronouns($PC), cashX(forceNeg(25000), "PCmedical"), $surgeryType = "herm2truemale"]]
-		<</if>>
-	<<elseif $PC.dick != 0>>
-		You have @@.orange;male genitalia@@ and a @@.orange;<<if $PC.title > 0>>masculine<<else>>feminine<</if>> appearance.@@ "We'll store some of your sperm for you, should you decide to lose your maleness, and have it shipped to your arcology. Who you decide to use it on, well... That's up to you!"
-		<br>
-		[[Have your male organs replaced with female ones|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.scrotum = 0, $PC.dick = 0, $PC.prostate = 0, $PC.vagina = 1, $PC.newVag = 1, $PC.vaginaLube = 1, $PC.ovaries = 1, cashX(forceNeg(50000), "PCmedical"), $surgeryType = "male2female"]] |
-		[[Add a female reproductive tract|PC Surgery Degradation][$PC.vagina = 1, $PC.newVag = 1, $PC.vaginaLube = 1, $PC.ovaries = 1, $PC.preg = 0, WombFlush($PC), cashX(forceNeg(150000), "PCmedical"), $surgeryType = "male2herm"]]
-		<<if $PC.title > 0>>
-			| [[Become a woman|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 0, $PC.scrotum = 0, $PC.dick = 0, $PC.prostate = 0, $PC.counter.storedCum += 10, $PC.vagina = 1, $PC.newVag = 1, $PC.vaginaLube = 1, $PC.ovaries = 1, $PC.preg = 0, $PC.title = 0, generatePlayerPronouns($PC), cashX(forceNeg(50000), "PCmedical"), $surgeryType = "male2truefemale"]]
-			| [[Become a hermaphrodite girl|PC Surgery Degradation][$PC.vagina = 1, $PC.newVag = 1, $PC.vaginaLube = 1, $PC.ovaries = 1, $PC.preg = 0, WombFlush($PC), $PC.title = 0, generatePlayerPronouns($PC), cashX(forceNeg(150000), "PCmedical"), $surgeryType = "male2hermfemale"]]
-		<</if>>
-	<<else>>
-		You have @@.orange;female genitalia@@ and a @@.orange;<<if $PC.title > 0>>masculine<<else>>feminine<</if>> appearance.@@
-		<br>
-		[[Have your female organs replaced with male ones|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 3, $PC.scrotum = 3, $PC.dick = 4, $PC.prostate = 1, $PC.vagina = -1, $PC.vaginaLube = 0, $PC.ovaries = 0, cashX(forceNeg(50000), "PCmedical"), $surgeryType = "female2male"]] |
-		[[Add a male reproductive tract|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 3, $PC.scrotum = 3, $PC.dick = 4, $PC.prostate = 1, cashX(forceNeg(150000), "PCmedical"), $surgeryType = "female2herm"]]
-		<<if $PC.title == 0>>
-			| [[Become a man|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 3, $PC.scrotum = 3, $PC.dick = 4, $PC.prostate = 1, $PC.vagina = -1, $PC.vaginaLube = 0, $PC.ovaries = 0, $PC.preg = 0, WombFlush($PC), $PC.title = 1, generatePlayerPronouns($PC), $PC.boobs = 100, $PC.boobsImplant = 0, cashX(forceNeg(50000), "PCmedical"), $surgeryType = "female2truemale"]]
-			| [[Become a hermaphrodite boy|PC Surgery Degradation][$PC.ballsImplant = 0, $PC.balls = 3, $PC.scrotum = 3, $PC.dick = 4, $PC.prostate = 1, $PC.title = 1, generatePlayerPronouns($PC), $PC.boobs = 100, $PC.boobsImplant = 0, cashX(forceNeg(150000), "PCmedical"), $surgeryType = "female2hermmale"]]
-		<</if>>
-	<</if>>
-<</if>>
diff --git a/src/player/pcSkinWorkaround.tw b/src/player/pcSkinWorkaround.tw
deleted file mode 100644
index 38e52022bb3d703484d7669a82561f412609d88e..0000000000000000000000000000000000000000
--- a/src/player/pcSkinWorkaround.tw
+++ /dev/null
@@ -1,6 +0,0 @@
-:: PC Skin Workaround [nobr]
-
-<<set $nextButton = "Get in", $nextLink = "PC Surgery Degradation">>
-
-You can enter any color for your skin to be changed to. Once you have chosen, you just have to get in and let the machine do its thing.
-<br><<textbox "$PC.skin" $PC.skin "PC Surgery Degradation">>
\ No newline at end of file
diff --git a/src/player/pcSurgeryDegradation.js b/src/player/pcSurgeryDegradation.js
index 4b59fcb1f239c192784caebabf6c3288812acf2a..7325c8fc705f2ee9ecdc8bb0e433528611932004 100644
--- a/src/player/pcSurgeryDegradation.js
+++ b/src/player/pcSurgeryDegradation.js
@@ -1,4 +1,4 @@
-App.UI.PCSurgeryDegradation = function() {
+App.UI.PCSurgeryDegradation = function(surgeryType) {
 	const frag = new DocumentFragment();
 	let r = [];
 
@@ -7,8 +7,7 @@ App.UI.PCSurgeryDegradation = function() {
 		heU, hisU, himU, himselfU
 	} = getNonlocalPronouns(V.seeDicks).appendSuffix("U");
 
-	// FIXME: 'surgeryType' is deprecated.
-	switch (V.surgeryType) {
+	switch (surgeryType) {
 		case "skinTone":
 			r.push(`After a few hours, you awaken in the recovery wing to find every`);
 			if (V.showInches === 2) {