From b8233641d46c76a7ff7b4e78404acd8490655346 Mon Sep 17 00:00:00 2001
From: lowercasedonkey <lowercasedonkey@gmail.com>
Date: Mon, 30 Nov 2020 09:33:45 -0500
Subject: [PATCH] import

---
 .../bodyModification/bodyModification.js      | 1210 +++++++++++++++++
 .../bodyModification/bodyModification.tw      |  853 +-----------
 2 files changed, 1211 insertions(+), 852 deletions(-)

diff --git a/src/facilities/bodyModification/bodyModification.js b/src/facilities/bodyModification/bodyModification.js
index e69de29bb2d..2db2da2b332 100644
--- a/src/facilities/bodyModification/bodyModification.js
+++ b/src/facilities/bodyModification/bodyModification.js
@@ -0,0 +1,1210 @@
+App.UI.bodyModification = function(slave, cheat = false) {
+	const el = new DocumentFragment();
+
+	return el;
+
+	
+App.Utils.setLocalPronouns(slave);
+Enunciate(slave);
+
+<h1>Body Modification Studio</h1>
+<p class="scene-intro">
+	r.push(`${V.SlaveFullName(slave)}`);
+	r.push(` is lying strapped down on the table in your body modification studio. ${He} is entirely at your mercy.`);
+
+	if (V.brandApplied || V.degradation || V.scarApplied || V.modReaction) {
+		if (slave.fuckdoll === 0) {
+			if (canSee(slave)) {
+	r.push(`There's a mirror on the ceiling, so ${he} can see`);
+} else {
+	r.push(`${He} can't see, so `);
+if (canHear(slave)) {
+	r.push(`you're careful to describe`);
+} else {
+	r.push(`${he} must, by ${himself}, get a feel for`);
+}
+}
+	r.push(` ${his} new appearance.`);
+		}
+		if (V.brandApplied) {
+			r.push(`The smell of burnt flesh hangs in the air. Being branded <span class="health.dec">has hurt ${his} health a little.</span>`);
+			healthDamage(slave, 10);
+			delete V.brandApplied;
+		}
+		if (V.scarApplied) {
+			if (V.scarTarget.local === "entire body") {
+				switch (V.scarDesign.local) {
+					case "burn":
+						r.push(`Your goal wasn't to make the distinct shape of a brand, but rather to permanently mar the skin with an open flame.`);
+					case "surgical":
+						if (V.PC.skill.medicine >= 100) {
+							r.push(`Your medical mastery is perfect, so creating Frankenstein's monster was a deliberate work of art.`);
+						} else if (V.PC.skill.medicine > 0) {
+							r.push(`Your medical skills are progressing, and the Frankenstein effect reminds you of your earliest attempts.`);
+						} else {
+							r.push(`You really slashed away with your knife, but were careful not to allow ${him} to bleed out.`);
+						}
+					default:
+						r.push(`The best way to apply scarring to the entire body is with a good old fashioned whip. ${His} body is a mess of crisscrossed lines`);
+if (hasAnyNaturalLimbs(slave)) {
+	r.push(`, and ${his} `);
+if (getLimbCount(slave, 1) > 1) {
+	r.push(`limbs twisted so violently in their restraints that they too have`);
+} else {
+	r.push(`only limb twists so violently in its restraints that it too has`);
+}
+	r.push(` become scarred`);
+}
+	r.push(`.`);
+				}
+				r.push(`No matter how you chose to apply it, scarring so much of ${his} body has <span class="health.dec"> hurt ${his} health.</span>`);
+				healthDamage(slave, 20);
+			} else {
+				if (slave.scar[V.scarTarget.local][V.scarDesign.local] > 0) {
+					r.push(`This is not the first time ${he} was scarred like this.`);
+				}
+				switch (V.scarDesign.local) {
+					case "whip":
+						r.push(`Targeting a single area with a whip is not easy. You set the mood by carefully arranging candles dripping on to a whimpering `);
+V.slave.slaveName
+	r.push(`, then got ${his} attention with a quick`);
+						if (canSee(slave)) {
+							r.push(`wave`);
+						} else if (canHear(slave)) {
+							r.push(`crack`);
+						} else {
+							r.push(`tap`);
+						}
+						r.push(`of the whip. One by one, you carefully snuffed out the candles, flicking hot wax as you went. After pausing a moment, you prepared to leave your mark.`);
+						if (["penis", "vagina"].includes(V.scarTarget.local)) {
+							if (slave.dick > 4 && V.seeDicks) {
+								r.push(`${His} dick was large enough that it was not too difficult to hit,`);
+							} else if (slave.dick > 0 && V.seeDicks) {
+								r.push(`${His} dick was a challengingly small target,`);
+							} else {
+								if (slave.clit > 0) {
+									r.push(`${His} clit was a difficult target,`);
+								} else {
+									r.push(`${His} clit was an impossibly tiny target,`);
+								}
+							}
+							r.push(`but the end was never in doubt. The tip connected with ${his} most intimate place on the first try, and plunged ${him} into absolute agony.`);
+						} else {
+							r.push(`The	end was never in doubt. A few strokes of the whip plunged ${him} into agony ${his} body will not allow ${him} to forget.`);
+						}
+					case "burn":
+						r.push(`Your goal wasn't to make the distinct shape of a brand, but rather to permanently mar the `);
+V.slave.skin
+	r.push(` skin of ${his} ${V.scarTarget.local} with an open flame.`);
+					case "surgical":
+						if (V.PC.skill.medicine >= 100) {
+							r.push(`Your medical mastery is perfect, so creating such a scar was a deliberate act of degradation.`);
+						} else if (V.PC.skill.medicine > 0) {
+							r.push(`Your medical skills are progressing, and the sloppy scar reminds you of your earliest attempts.`);
+						} else {
+							r.push(`You really slashed away at ${V.scarTarget.local} with your knife, but were careful not to allow ${him} to bleed out.`);
+						}
+					default:
+						r.push(`You had no shortage of kinky and medical tools for applying scars. ${His} `);
+V.slave.skin
+	r.push(` ${V.scarTarget.local} is bleeding profusely.`);
+				}
+
+				r.push(`No matter how you chose to apply it, being scarred <span class="health.dec"> hurt ${his} health a little.</span>`);
+				healthDamage(slave, 10);
+			}
+			r.push(`Afterwards you seal the wounds with a white medical spray. Infection is no risk to `);
+V.slave.slaveName
+	r.push(` thanks to your curatives, but in order to form obvious scar tissue you had to keep air out and delay normal healing as long as possible.`);
+			delete V.scarApplied;
+		}
+		if (slave.fetish !== "mindbroken" && slave.fuckdoll === 0) {
+			if (V.degradation > 1) {
+				if (V.degradation > 5) {
+					if (slave.devotion <= 50 && slave.trust < -50) {
+						r.push(`${He} is appalled by the whorish spectacle you have made of ${him}. ${He} <span class="gold">fears</span> you all the more for this but is so terrified of you it does not affect ${his} submission.`);
+						slave.trust -= 10;
+					} else if (slave.devotion <= 50) {
+						r.push(`${He} is appalled by the whorish spectacle you have made of ${him}. ${He} <span class="mediumorchid">hates</span> and <span class="gold">fears</span> you for this.`);
+						slave.devotion -= 10, slave.trust -= 10;
+					} else {
+						r.push(`${He} is shocked by the whorish spectacle you have made of ${him}. However, ${he} is so submissive to your will that ${he} <span class="hotpink">accepts</span> that the slave `);
+if (canSee(slave)) {
+	r.push(`in the mirror`);
+} else {
+	r.push(`${he} pictures`);
+}
+	r.push(` is who ${he} is now.`);
+						slave.devotion += 4;
+					}
+					<br><br>
+				} else {
+					if (slave.devotion < -20 && slave.trust < 20) {
+						r.push(`${He} is <span class="gold">afraid</span> that ${he} has been permanently altered against ${his} will, but is also scared of your reaction to any objection and suppresses ${his} disgust.`);
+						slave.trust -= 5;
+					} else if (slave.devotion < -20) {
+						r.push(`${He} is <span class="mediumorchid">angry</span> and <span class="gold">afraid</span> that ${he} has been permanently altered against ${his} will.`);
+						slave.devotion -= 5, slave.trust -= 5;
+					} else {
+						r.push(`${He} is saddened to have been altered against ${his} will. However, ${he} realizes that ${he} is a slave, so ${he} <span class="hotpink">accepts</span> your work.`);
+						slave.devotion += 2;
+					}
+				}
+				V.degradation = 0;
+			}
+			if (V.modReaction) {
+				r.push(`${V.V.modReaction}`);
+				delete V.modReaction;
+			}
+		}
+	}
+
+	/* 000-250-006 */
+	if (V.seeImages === 1) {
+		if (V.imageChoice === 1) {
+			<div class="imageRef lrgVector"><div class="mask">&nbsp;</div>
+V.SlaveArt(slave, 3, 0)</div>
+		} else {
+			<div class="imageRef lrgRender"><div class="mask">&nbsp;</div>
+V.SlaveArt(slave, 3, 0)</div>
+		}
+	}
+	/* 000-250-006 */
+</p>
+
+/* PIERCINGS */
+
+_piercingCount =(slave.earPiercing + slave.nosePiercing + slave.eyebrowPiercing + slave.lipsPiercing + slave.tonguePiercing + slave.nipplesPiercing + slave.areolaePiercing + slave.corsetPiercing + slave.navelPiercing + slave.clitPiercing + slave.vaginaPiercing + slave.dickPiercing + slave.anusPiercing);
+
+/*DESCRIPTIONS */
+
+<h2>Piercings</h2>
+
+<div class="indent">
+	<div style="padding-bottom:1em">
+		if (_piercingCount === 0) {
+			r.push(`${His} smooth `);
+V.slave.skin
+	r.push(` skin is completely unpierced.`);
+		}
+		<div>
+V.App.Desc.piercing(slave, "ear")</div>
+		<div>
+V.App.Desc.piercing(slave, "nose")</div>
+		<div>
+V.App.Desc.piercing(slave, "eyebrow")</div>
+		<div>
+V.App.Desc.piercing(slave, "lips")</div>
+		<div>
+V.App.Desc.piercing(slave, "tongue")</div>
+		<div>
+V.App.Desc.piercing(slave, "nipple")</div>
+		<div>
+V.App.Desc.piercing(slave, "areolae")</div>
+		<div>
+V.App.Desc.piercing(slave, "navel")</div>
+		<div>
+V.App.Desc.piercing(slave, "corset")</div>
+		<div>
+V.App.Desc.piercing(slave, "clit")</div>
+		<div>
+V.App.Desc.piercing(slave, "vagina")</div>
+		<div>
+V.App.Desc.piercing(slave, "dick")</div>
+		<div>
+V.App.Desc.piercing(slave, "anus")</div>
+
+		<div>
+V.App.Desc.piercing(slave, "chastity")</div>
+	</div>
+
+	/* Apply piercings */
+
+	<div>
+		r.push(`Choose piercing style:`);
+		if (V.piercingLevel !== 1) {[[Light|Body Modification][V.piercingLevel = 1]]
+} else {
+	r.push(`Light`);
+}
+		if (V.piercingLevel !== 2) {| [[Heavy|Body Modification][V.piercingLevel = 2]]
+} else {| Heavy
+}
+		if (V.piercingLevel !== 3) {| [[Smart|Body Modification][V.piercingLevel = 3]]
+} else {| Smart
+}
+		if (V.piercingLevel !== 0) {| [[Remove|Body Modification][V.piercingLevel = 0]]
+} else {| Remove
+}
+	</div>
+
+	<div>
+		if (V.piercingLevel === 1) {
+			//Lightly// pierce ${his}:
+
+			<<link "Entire body">>
+				V.modReaction = "";
+				if (slave.earPiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "ear", 1);
+}
+				if (slave.nosePiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "nose", 1);
+}
+				if (slave.eyebrowPiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "eyebrow", 1);
+}
+				if (slave.lipsPiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "lips", 1);
+}
+				if (slave.tonguePiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "tongue", 1);
+}
+				if (slave.nipples !== "fuckable") {
+					if (slave.nipplesPiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "nipples", 1);
+}
+				}
+				if (slave.areolaePiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "areolae", 1);
+}
+				if (slave.corsetPiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "corset", 1);
+}
+				if (slave.navelPiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "navel", 1);
+}
+				if (slave.vagina !== -1) || (slave.dick !== 0) {
+					if (slave.clitPiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "clit", 1);
+}
+				}
+				if (slave.vagina !== -1) {
+					if (slave.vaginaPiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "vagina", 1);
+}
+				}
+				if (slave.dick > 0) {
+					if (slave.dickPiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "dick", 1);
+}
+				}
+				if (slave.anusPiercing !== 1) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "anus", 1);
+}
+				<<goto "Body Modification">>
+			<</link>>
+
+			if (slave.earPiercing !== 1) {		| [[Ear|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "ear", 1)]]
+}
+			if (slave.nosePiercing !== 1) {		| [[Nose|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "nose", 1)]]
+}
+			if (slave.eyebrowPiercing !== 1) {	| [[Eyebrow|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "eyebrow", 1)]]
+}
+			if (slave.lipsPiercing !== 1) {		| [[Lips|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "lips", 1)]]
+}
+			if (slave.tonguePiercing !== 1) {	| [[Tongue|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "tongue", 1)]]
+}
+			if (slave.nipples !== "fuckable") {
+				if (slave.nipplesPiercing !== 1) {	| [[Nipples|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "nipples", 1)]]
+}
+			}
+			if (slave.areolaePiercing !== 1) {	| [[Areolae|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "areolae", 1)]]
+}
+			if (slave.corsetPiercing !== 1) {	| [[Corset|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "corset", 1)]]
+}
+			if (slave.navelPiercing !== 1) {		| [[Navel|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "navel", 1)]]
+}
+			if (slave.vagina !== -1) || (slave.dick !== 0) {
+				if (slave.vagina !== -1) {
+					if (slave.clitPiercing !== 1) {	| [[Clit|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "clit", 1)]]
+}
+				} else {
+					if (slave.clitPiercing !== 1) {	| [[Dickhead|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "clit", 1)]]
+}
+				}
+			}
+			if (slave.vagina !== -1) {
+				if (slave.vaginaPiercing !== 1) {
+	r.push(` | [[Vagina|Body Modification][${V.modReaction} = App.Medicine.Modification.setPiercing(slave, "vagina", 1)]]`);
+}
+			}
+			if (slave.dick > 0) {
+				if (slave.dickPiercing !== 1) {	| [[Dick|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "dick", 1)]]
+}
+			}
+			if (slave.anusPiercing !== 1) {		| [[Anus|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "anus", 1)]]
+}
+		} else if (V.piercingLevel === 2) {
+			r.push(`''Heavily'' pierce ${his}:`);
+
+			<<link "Entire body">>
+				V.modReaction = "";
+				if (slave.earPiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "ear", 2), V.degradation += 1;
+}
+				if (slave.nosePiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "nose", 2), V.degradation += 1;
+}
+				if (slave.eyebrowPiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "eyebrow", 2), V.degradation += 1;
+}
+				if (slave.lipsPiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "lips", 2), V.degradation += 1;
+}
+				if (slave.tonguePiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "tongue", 2), V.degradation += 1;
+}
+				if (slave.nipples !== "fuckable") {
+					if (slave.nipplesPiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "nipples", 2), V.degradation += 1;
+}
+				}
+				if (slave.areolaePiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "areolae", 2), V.degradation += 1;
+}
+				if (slave.corsetPiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "corset", 2), V.degradation += 1;
+}
+				if (slave.navelPiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "navel", 2), V.degradation += 1;
+}
+				if (slave.vagina !== -1) || (slave.dick !== 0) {
+					if (slave.clitPiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "clit", 2), V.degradation += 1;
+}
+				}
+				if (slave.vagina !== -1) {
+					if (slave.vaginaPiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "vagina", 2), V.degradation += 1;
+}
+				}
+				if (slave.dick > 0) {
+					if (slave.dickPiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "dick", 2), V.degradation += 1;
+}
+				}
+				if (slave.anusPiercing !== 2) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "anus", 2), V.degradation += 1;
+}
+				<<goto "Body Modification">>
+			<</link>>
+
+			if (slave.earPiercing !== 2) {		| [[Ear|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "ear", 2),V.degradation += 1]]
+}
+			if (slave.nosePiercing !== 2) {		| [[Nose|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "nose", 2),V.degradation += 1]]
+}
+			if (slave.eyebrowPiercing !== 2) {	| [[Eyebrow|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "eyebrow", 2),V.degradation += 1]]
+}
+			if (slave.lipsPiercing !== 2) {		| [[Lips|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "lips", 2),V.degradation += 1]]
+}
+			if (slave.tonguePiercing !== 2) {	| [[Tongue|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "tongue", 2),V.degradation += 1]]
+}
+			if (slave.nipples !== "fuckable") {
+				if (slave.nipplesPiercing !== 2) {	| [[Nipples|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "nipples", 2),V.degradation += 1]]
+}
+			}
+			if (slave.areolaePiercing !== 2) {	| [[Areolae|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "areolae", 2),V.degradation += 1]]
+}
+			if (slave.corsetPiercing !== 2) {	| [[Corset|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "corset", 2),V.degradation += 1]]
+}
+			if (slave.navelPiercing !== 2) {		| [[Navel|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "navel", 2),V.degradation += 1]]
+}
+			if (slave.vagina !== -1) || (slave.dick !== 0) {
+				if (slave.vagina !== -1) {
+					if (slave.clitPiercing !== 2) {
+	r.push(` | [[Clit|Body Modification][${V.modReaction} = App.Medicine.Modification.setPiercing(slave, "clit", 2),V.degradation += 1]]`);
+}
+				} else {
+					if (slave.clitPiercing !== 2) {
+	r.push(` | [[Dickhead|Body Modification][${V.modReaction} = App.Medicine.Modification.setPiercing(slave, "clit", 2),V.degradation += 1]]`);
+}
+				}
+			}
+			if (slave.vagina !== -1) {
+				if (slave.vaginaPiercing !== 2) {
+	r.push(` | [[Vagina|Body Modification][${V.modReaction} = App.Medicine.Modification.setPiercing(slave, "vagina", 2),V.degradation += 1]]`);
+}
+			}
+			if (slave.dick > 0) {
+				if (slave.dickPiercing !== 2) {	| [[Dick|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "dick", 2),V.degradation += 1]]
+}
+			}
+			if (slave.anusPiercing !== 2) {		| [[Anus|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "anus", 2),V.degradation += 1]]
+}
+		} else if (V.piercingLevel === 3) {
+			if (slave.vagina !== -1) || (slave.dick !== 0) {
+				if (slave.clitPiercing !== 3) {
+					r.push(`Give ${him} a [[smart piercing?|Body Modification][${V.modReaction} = App.Medicine.Modification.setPiercing(slave, "clit", 3),slave.clitSetting = "all",V.degradation += 1]] //Costs `);
+V.cashFormat(V.SPcost)
+	r.push(`, unlocks options to mold sexuality//`);
+				} else {
+					r.push(`${He} already has a smart piercing!`);
+				}
+			}
+		} else if (V.piercingLevel === 0) {
+			r.push(`Remove piercings from:`);
+
+			/* no dick/vagina checks in 'remove' so stealth piercings can be cleaned. Check only for piercings. */
+			<<link "Everywhere">>
+				V.modReaction = "";
+				if (slave.earPiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "ear", 0);
+}
+				if (slave.nosePiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "nose", 0);
+}
+				if (slave.eyebrowPiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "eyebrow", 0);
+}
+				if (slave.lipsPiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "lips", 0);
+}
+				if (slave.tonguePiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "tongue", 0);
+}
+				if (slave.nipplesPiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "nipples", 0);
+}
+				if (slave.areolaePiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "areolae", 0);
+}
+				if (slave.corsetPiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "corset", 0);
+}
+				if (slave.navelPiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "navel", 0);
+}
+				if (slave.clitPiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "clit", 0);
+}
+				if (slave.vaginaPiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "vagina", 0);
+}
+				if (slave.dickPiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "dick", 0);
+}
+				if (slave.anusPiercing > 0) {
+V.modReaction += App.Medicine.Modification.setPiercing(slave, "anus", 0);
+}
+				<<goto "Body Modification">>
+			<</link>>
+
+			if (slave.earPiercing > 0) {		| [[Ear|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "ear", 0)]]
+}
+			if (slave.nosePiercing > 0) {		| [[Nose|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "nose", 0)]]
+}
+			if (slave.eyebrowPiercing > 0) {	| [[Eyebrow|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "eyebrow", 0)]]
+}
+			if (slave.lipsPiercing > 0) {		| [[Lips|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "lips", 0)]]
+}
+			if (slave.tonguePiercing > 0) {		| [[Tongue|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "tongue", 0)]]
+}
+			if (slave.nipplesPiercing > 0) {	| [[Nipples|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "nipples", 0)]]
+}
+			if (slave.areolaePiercing > 0) {	| [[Areolae|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "areolae", 0)]]
+}
+			if (slave.corsetPiercing > 0) {		| [[Corset|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "corset", 0)]]
+}
+			if (slave.navelPiercing > 0) {		| [[Navel|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "navel", 0)]]
+}
+			if (slave.vagina !== -1) {
+				if (slave.clitPiercing > 0) {	| [[Clit|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "clit", 0)]]
+}
+			} else {
+				if (slave.clitPiercing > 0) {	| [[Dickhead|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "clit", 0)]]
+}
+			}
+			if (slave.vaginaPiercing > 0) {		| [[Vagina|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "vagina", 0)]]
+}
+			if (slave.dickPiercing > 0) {		| [[Dick|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "dick", 0)]]
+}
+			if (slave.anusPiercing > 0) {		| [[Anus|Body Modification][V.modReaction = App.Medicine.Modification.setPiercing(slave, "anus", 0)]]
+}
+		}
+	</div>
+</div> /* indent */
+
+/* TATTOOS */
+
+<h2>Tattoos</h2>
+<div class="indent">
+	<div style="padding-bottom:1em">
+		if (slave.shouldersTat !== 0) {<div>
+V.App.Desc.tattoo(slave, "shoulder")</div>
+_hasTat = 1;
+}
+		if (slave.lipsTat !== 0) {<div>
+V.App.Desc.tattoo(slave, "lips")</div>
+_hasTat = 1;
+}
+		if (slave.boobsTat !== 0) {<div>
+V.App.Desc.tattoo(slave, "breast")</div>
+_hasTat = 1;
+}
+		if (slave.armsTat !== 0 && hasAnyNaturalArms(slave)) {<div>
+V.App.Desc.tattoo(slave, "upper arm")</div>
+_hasTat = 1;
+}
+		if (slave.backTat !== 0) {<div>
+V.App.Desc.tattoo(slave, "back")</div>
+_hasTat = 1;
+}
+		if (slave.stampTat !== 0) {<div>
+V.App.Desc.tattoo(slave, "lower back")</div>
+_hasTat = 1;
+}
+		if (slave.buttTat !== 0) {<div>
+V.App.Desc.tattoo(slave, "buttock")</div>
+_hasTat = 1;
+}
+		if (slave.vaginaTat !== 0) {<div>
+V.App.Desc.tattoo(slave, "vagina")</div>
+_hasTat = 1;
+}
+		if (slave.dickTat !== 0 && slave.dick > 0) {<div>
+V.App.Desc.tattoo(slave, "dick")</div>
+_hasTat = 1;
+}
+		if (slave.anusTat !== 0) {<div>
+V.App.Desc.tattoo(slave, "anus")</div>
+_hasTat = 1;
+}
+		if (slave.legsTat !== 0 && hasAnyNaturalLegs(slave)) {<div>
+V.App.Desc.tattoo(slave, "thigh")</div>
+_hasTat = 1;
+}
+	</div>
+
+	<div>
+		r.push(`Choose a tattoo style:`);
+		/* if/else is here so a "highlighted" option is never a link. */
+		if (V.tattooChoice !== "tribal patterns") {[[Tribal patterns|Body Modification][V.tattooChoice = "tribal patterns"]]
+} else {
+	r.push(`Tribal patterns`);
+}
+		if (V.tattooChoice !== "flowers") {
+	r.push(` | [[Flowers|Body Modification][${V.tattooChoice} = "flowers"]]`);
+} else {| Flowers
+}
+		if (V.tattooChoice !== "counting") {
+	r.push(` | [[Counting|Body Modification][${V.tattooChoice} = "counting"]]`);
+} else {| Counting
+}
+		if (V.tattooChoice !== "advertisements") {
+	r.push(` | [[Advertisements|Body Modification][${V.tattooChoice} = "advertisements"]]`);
+} else {| Advertisements
+}
+		if (V.tattooChoice !== "rude words") {
+	r.push(` | [[Rude words|Body Modification][${V.tattooChoice} = "rude words"]]`);
+} else {| Rude words
+}
+		if (V.tattooChoice !== "degradation") {
+	r.push(` | [[Degradation|Body Modification][${V.tattooChoice} = "degradation"]]`);
+} else {| Degradation
+}
+		if (V.tattooChoice !== "Asian art") {
+	r.push(` | [[Asian art|Body Modification][${V.tattooChoice} = "Asian art"]] `);
+} else {| Asian art
+}
+		if (V.tattooChoice !== "scenes") {
+	r.push(` | [[Scenes|Body Modification][${V.tattooChoice} = "scenes"]]`);
+} else {| Scenes
+}
+		if (V.tattooChoice !== "bovine patterns") {
+	r.push(` | [[Bovine|Body Modification][${V.tattooChoice} = "bovine patterns"]]`);
+} else {| Bovine
+}
+		if (V.tattooChoice !== "permanent makeup") {
+	r.push(` | [[Permanent makeup|Body Modification][${V.tattooChoice} = "permanent makeup"]]`);
+} else {| Permanent makeup
+}
+		if (V.tattooChoice !== "sacrilege") {
+	r.push(` | [[Sacrilege|Body Modification][${V.tattooChoice} = "sacrilege"]]`);
+} else {| Sacrilege
+}
+		if (V.tattooChoice !== "sacrament") {
+	r.push(` | [[Sacrament|Body Modification][${V.tattooChoice} = "sacrament"]]`);
+} else {| Sacrament
+}
+		if (V.tattooChoice !== "possessive") {
+	r.push(` | [[Possessive|Body Modification][${V.tattooChoice} = "possessive"]]`);
+} else {| Possessive
+}
+		if (V.tattooChoice !== "paternalist") {
+	r.push(` | [[Paternalist|Body Modification][${V.tattooChoice} = "paternalist"]]`);
+} else {| Paternalist
+}
+
+		if (slave.anusTat === 0) {
+			if (V.tattooChoice !== "bleached") {| [[Bleach|Body Modification][V.tattooChoice = "bleached"]]
+} else {| Bleach
+}
+		}
+
+		if (_hasTat === 1) {
+			if (V.tattooChoice !== 0) {
+	r.push(` | //[[Remove a tattoo|Body Modification][${V.tattooChoice} = 0]]//`);
+} else {| Remove a tattoo
+}
+		}
+	</div>
+
+	<div>
+		if (def V.tattooChoice) {
+			if (V.tattooChoice === 0) {
+				r.push(`Clean the ink off of ${him}:`);
+			} else if (V.tattooChoice === "counting") {
+				r.push(`Add tallies of ${his} sexual exploits to ${him}:`);
+			} else if (V.tattooChoice === "bleached") {
+				r.push(`Bleach ${his}:`);
+			} else {
+				r.push(`Add ${V.tattooChoice} to ${his}:`);
+			}
+
+			if (V.tattooChoice !== "bleached") && (V.tattooChoice !== "permanent makeup") {
+				<<link "Entire body">>
+					_degradationTemp = 0, V.modReaction = "";
+					if (slave.boobsTat !== V.tattooChoice) {
+						V.modReaction += App.Medicine.Modification.setTattoo(slave, "boobs", V.tattooChoice);
+						_degradationTemp += 1;
+					}
+
+					if (slave.buttTat !== V.tattooChoice) {
+						V.modReaction += App.Medicine.Modification.setTattoo(slave, "butt", V.tattooChoice);
+						_degradationTemp += 1;
+					}
+
+					if (slave.vaginaTat !== V.tattooChoice) {
+						V.modReaction += App.Medicine.Modification.setTattoo(slave, "vagina", V.tattooChoice);
+						_degradationTemp += 1;
+					}
+
+					if (slave.dick > 0) {
+						if (slave.dickTat !== V.tattooChoice && V.tattooChoice !== "scenes") {
+							V.modReaction += App.Medicine.Modification.setTattoo(slave, "dick", V.tattooChoice);
+							_degradationTemp += 1;
+						}
+					}
+
+					if (slave.lipsTat !== V.tattooChoice) {
+						if (V.tattooChoice === "scenes") {
+							V.modReaction += App.Medicine.Modification.setTattoo(slave, "lips", "permanent makeup");
+						} else {
+							V.modReaction += App.Medicine.Modification.setTattoo(slave, "lips", V.tattooChoice);
+						}
+						_degradationTemp += 1;
+					}
+
+					if (V.tattooChoice === "Asian art" || V.tattooChoice === "scenes") && slave.anusTat === "bleached" {
+						/* leave existing bleached anus alone */
+					} else if (slave.anusTat !== V.tattooChoice) {
+						V.modReaction += App.Medicine.Modification.setTattoo(slave, "anus", V.tattooChoice);
+						_degradationTemp += 1;
+					}
+
+					if (slave.shouldersTat !== V.tattooChoice) {
+						V.modReaction += App.Medicine.Modification.setTattoo(slave, "shoulders", V.tattooChoice);
+						_degradationTemp += 1;
+					}
+
+					if (slave.backTat !== V.tattooChoice) {
+						V.modReaction += App.Medicine.Modification.setTattoo(slave, "back", V.tattooChoice);
+						_degradationTemp += 1;
+					}
+
+					if (hasAnyNaturalArms(slave)) {
+						if (slave.armsTat !== V.tattooChoice) {
+							V.modReaction += App.Medicine.Modification.setTattoo(slave, "arms", V.tattooChoice);
+							_degradationTemp += 1;
+						}
+					}
+					if (hasAnyNaturalLegs(slave)) {
+						if (slave.legsTat !== V.tattooChoice) {
+							V.modReaction += App.Medicine.Modification.setTattoo(slave, "legs", V.tattooChoice);
+							_degradationTemp += 1;
+						}
+					}
+
+					if (slave.stampTat !== V.tattooChoice) {
+						V.modReaction += App.Medicine.Modification.setTattoo(slave, "stamp", V.tattooChoice);
+						_degradationTemp += 1;
+					}
+
+					if (!["flowers", "paternalist", "tribal patterns", 0].includes(V.tattooChoice)) {
+						V.degradation += _degradationTemp;
+					}
+
+					<<goto "Body Modification">>
+				<</link>>
+			}
+
+			if (V.tattooChoice === "permanent makeup") {
+				[[Face|Body Modification][V.modReaction = App.Medicine.Modification.setTattoo(slave, "lips", V.tattooChoice)]]
+			} else if (V.tattooChoice === "bleached") {
+				[[Asshole|Body Modification][V.modReaction = App.Medicine.Modification.setTattoo(slave, "anus", V.tattooChoice)]]
+			} else {
+				if (slave.shouldersTat !== V.tattooChoice) {
+	r.push(` | [[Shoulders|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "shoulders", V.tattooChoice)]]`);
+}
+				if (V.tattooChoice !== "scenes") {
+					if (slave.lipsTat !== V.tattooChoice) {
+	r.push(` | [[Face|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "lips", V.tattooChoice)]]`);
+}
+				}
+				if (slave.boobsTat !== V.tattooChoice) {
+	r.push(` | [[Boobs|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "boobs", V.tattooChoice)]]`);
+}
+				if (hasAnyNaturalArms(slave)) {
+					if (slave.armsTat !== V.tattooChoice) {
+	r.push(` | [[Arms|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "arms", V.tattooChoice)]]`);
+}
+				}
+				if (slave.backTat !== V.tattooChoice) {
+	r.push(` | [[Upper back|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "back", V.tattooChoice)]]`);
+}
+				if (slave.stampTat !== V.tattooChoice) {
+	r.push(` | [[Lower back|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "stamp", V.tattooChoice)]]`);
+}
+				if (slave.buttTat !== V.tattooChoice) {
+	r.push(` | [[Buttock|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "butt", V.tattooChoice)]]`);
+}
+				if (slave.vaginaTat !== V.tattooChoice) {
+	r.push(` | [[Vagina|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "vagina", V.tattooChoice)]]`);
+}
+				if (slave.dick > 0 && V.tattooChoice !== "scenes") {
+					if (slave.dickTat !== V.tattooChoice) {
+	r.push(` | [[Dick|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "dick", V.tattooChoice)]]`);
+}
+				}
+				if (V.tattooChoice !== "Asian art") && (V.tattooChoice !== "scenes") {
+					if (slave.anusTat !== V.tattooChoice) {
+	r.push(` | [[Anus|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "anus", V.tattooChoice)]]`);
+}
+				}
+				if (hasAnyNaturalLegs(slave)) {
+					if (slave.legsTat !== V.tattooChoice) {
+	r.push(` | [[Legs|Body Modification][${V.modReaction} = App.Medicine.Modification.setTattoo(slave, "legs", V.tattooChoice)]]`);
+}
+				}
+			}
+		}
+	</div>
+
+	<div>
+		if (slave.belly >= 10000 && slave.bellyPreg < 450000 && slave.bellyFluid < 5000) {
+			if (slave.bellyTat === 0) {
+				r.push(`${He} has no navel tattoos.`);
+			} else {
+				r.push(`${His} navel is tattooed with `);
+V.slave.bellyTat
+	r.push(`.`);
+			}
+			if (slave.bellyTat === 0) {
+				<div>
+				[[Heart|Body Modification][V.modReaction = App.Medicine.Modification.setTattoo(slave, "belly", "a heart")]]
+				| [[Star|Body Modification][V.modReaction = App.Medicine.Modification.setTattoo(slave, "belly", "a star")]]
+				| [[Butterfly|Body Modification][V.modReaction = App.Medicine.Modification.setTattoo(slave, "belly", "a butterfly")]]
+				</div>
+			}
+			if (slave.bellyTat !== 0) {
+				//[[Remove tattoos|Body Modification][V.modReaction = App.Medicine.Modification.setTattoo(slave, "belly", 0)]]//
+			}
+		} else if (slave.bellyPreg >= 450000) {
+			r.push(`${His} middle is large and taut enough to be a suitable canvas for a navel focused tattoo, but ${his} brood is too active to permit the needle to do its work.`);
+		} else if (slave.bellyFluid >= 10000) {
+			r.push(`${His} middle is large and taut enough to be a suitable canvas for a navel focused tattoo, but the pressure applied to ${his} stomach will likely force ${him} to release its contents.`);
+		} else {
+			r.push(`${His} middle isn't large enough to be a suitable canvas for a navel focused tattoo.`);
+		}
+	</div>
+
+	<div>
+		if (slave.birthsTat > 0) {
+			if (slave.birthsTat > 1) {
+				r.push(`${He} has a series of `);
+V.num(slave.birthsTat)
+	r.push(` baby-shaped tattoos adorning ${his} stomach; one for each successful pregnancy`);
+if (slave.pregKnown === 1) {
+	r.push(` and a temporary one for ${his} current pregnancy`);
+}
+	r.push(`.`);
+			} else {
+				r.push(`${He} has a single baby-shaped tattoo`);
+if (slave.pregKnown === 1) {
+	r.push(`, and one temporary one,`);
+}
+	r.push(` adorning ${his} stomach.`);
+			}
+			//[[Remove tattoos|Body Modification][slave.birthsTat = -1, cashX(forceNeg(V.surgeryCost), "slaveSurgery", slave)]]//
+		} else if (slave.birthsTat === 0) {
+			if (slave.pregKnown === 1) {
+				r.push(`${He} has a single baby-shaped temporary tattoo adorning ${his} stomach.`);
+				//[[Remove it|Body Modification][slave.birthsTat = -1]]//
+				if (slave.abortionTat > -1) {
+	r.push(` //This will only remove birth tracking//`);
+}
+			} else {
+				r.push(`${He} is scheduled to receive a tattoo each time ${he} gives birth.`);
+				//[[Cancel|Body Modification][slave.birthsTat = -1]]//
+			}
+		} else {
+			r.push(`Have ${him} receive a tattoo each time ${he} gives birth.`);
+			//[[Begin keeping track|Body Modification][slave.birthsTat = 0]]//
+		}
+	</div>
+
+	<div>
+		if (slave.abortionTat > 0) {
+			if (slave.abortionTat > 1) {
+				r.push(`${He} has a series of `);
+V.num(slave.abortionTat)
+	r.push(` crossed out baby-shaped tattoos`);
+if (slave.pregKnown === 1) {
+	r.push(`, and one uncrossed one,`);
+}
+	r.push(` adorning ${his} stomach.`);
+			} else {
+				r.push(`${He} has a single crossed out baby-shaped tattoo`);
+if (slave.pregKnown === 1) {
+	r.push(`, and one uncrossed one,`);
+}
+	r.push(` adorning ${his} stomach.`);
+			}
+			//[[Remove tattoos|Body Modification][slave.abortionTat = -1, cashX(forceNeg(V.surgeryCost), "slaveSurgery", slave)]]//
+		} else if (slave.abortionTat === 0) {
+			if (slave.pregKnown === 1) {
+				r.push(`${He} has a single baby-shaped temporary tattoo adorning ${his} stomach.`);
+				//[[Remove it|Body Modification][slave.abortionTat = -1]]//
+				if (slave.birthsTat > -1) {
+	r.push(` //This will only remove abortion tracking//`);
+}
+			} else {
+				r.push(`${He} is scheduled to receive a tattoo each time ${he} gets an abortion or miscarries.`);
+				//[[Cancel|Body Modification][slave.abortionTat = -1]]//
+			}
+		} else {
+			r.push(`Have ${him} receive a tattoo for each abortion or miscarriage ${he} has.`);
+			//[[Begin keeping track|Body Modification][slave.abortionTat = 0]]//
+		}
+	</div>
+</div>/* indent */
+
+<h3>Custom Tattoos</h3>
+<div class="indent">
+	//Use complete sentences, make a description of it//
+	<div class="grid-2columns-auto">
+		if (slave.lipsTat === 0) {
+			<div>Give ${him} a custom face tattoo:</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].lipsTat" V.slaves[V.slaveIndices[V.AS]].lipsTat "Slave Interact">></div>
+		}
+
+		if (slave.shouldersTat === 0) {
+			<div>Give ${him} a custom shoulder tattoo:</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].shouldersTat" V.slaves[V.slaveIndices[V.AS]].shouldersTat "Slave Interact">></div>
+		}
+
+		if (slave.armsTat === 0 && hasAnyNaturalArms(slave)) {
+			<div>Give ${him} a custom arm tattoo:</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].armsTat" V.slaves[V.slaveIndices[V.AS]].armsTat "Slave Interact">></div>
+		}
+
+		if (slave.boobsTat === 0) {
+			<div>Give ${him} a custom tit tattoo:</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].boobsTat" V.slaves[V.slaveIndices[V.AS]].boobsTat "Slave Interact">></div>
+		}
+
+		if (slave.backTat === 0) {
+			<div>Give ${him} a custom back tattoo:</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].backTat" V.slaves[V.slaveIndices[V.AS]].backTat "Slave Interact">></div>
+		}
+
+		if (slave.stampTat === 0) {
+			<div>Give ${him} a custom tramp stamp (lower back tattoo):</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].stampTat" V.slaves[V.slaveIndices[V.AS]].stampTat "Slave Interact">></div>
+		}
+
+		if (slave.buttTat === 0) {
+			<div>Give ${him} a custom butt tattoo:</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].buttTat" V.slaves[V.slaveIndices[V.AS]].buttTat "Slave Interact">></div>
+		}
+
+		if (slave.dickTat === 0 && slave.dick !== 0) {
+			<div>Give ${him} a custom dick tattoo:</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].dickTat" V.slaves[V.slaveIndices[V.AS]].dickTat "Slave Interact">></div>
+		}
+
+		if (slave.vaginaTat === 0) {
+			<div>Give ${him} a custom pubic tattoo:</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].vaginaTat" V.slaves[V.slaveIndices[V.AS]].vaginaTat "Slave Interact">></div>
+		}
+
+		if (slave.anusTat === 0) {
+			<div>Give ${him} a custom anus tattoo:</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].anusTat" V.slaves[V.slaveIndices[V.AS]].anusTat "Slave Interact">></div>
+		}
+
+		if (slave.legsTat === 0 && hasAnyNaturalLegs(slave)) {
+			<div>Give ${him} a custom leg tattoo:</div>
+			<div>
+<<textbox "V.slaves[V.slaveIndices[V.AS]].legsTat" V.slaves[V.slaveIndices[V.AS]].legsTat "Slave Interact">></div>
+		}
+	</div> /* grid */
+
+	<div>
+		if (slave.custom.tattoo === "") {
+			r.push(`Give ${him} a custom tattoo: `);
+<<textbox "V.slaves[V.slaveIndices[V.AS]].custom.tattoo" V.slaves[V.slaveIndices[V.AS]].custom.tattoo "Slave Interact">>
+		} else {
+			r.push(`${He} `);
+if (_hasTat === 1) {
+	r.push(`also`);
+}
+	r.push(` has a custom tattoo: `);
+V.slave.custom.tattoo
+			r.push(`Change it here: `);
+<<textbox "V.slaves[V.slaveIndices[V.AS]].custom.tattoo" V.slaves[V.slaveIndices[V.AS]].custom.tattoo "Slave Interact">>
+		}
+		if (slave.custom.tattoo !== "") {
+			//[[Remove custom tattoo|Body Modification][slave.custom.tattoo = "",cashX(forceNeg(V.surgeryCost), "slaveSurgery", slave)]]//
+		}
+	</div>
+
+</div> /* indent */
+
+/* Branding */
+
+<h2>Branding</h2>
+<span id="brand-selection"></span>
+<script>
+	r.push(`App.Medicine.Modification.Select.brand(getSlave(${V.AS))}`);
+</script>
+
+
+if (slave.breedingMark === 1 && (V.propOutcome === 0 || V.eugenicsFullControl === 1 || V.arcologies[0].FSRestart === "unset")) {
+	<div class="indent">
+	r.push(`${He} has an intricate tattoo on ${his} lower belly that suggests ${he} was made to be bred. [[Remove it|Body Modification][getSlave(${V.AS).breedingMark} = 0]]`);
+	</div>
+}
+
+/* Scars */
+
+<h2>Scars</h2>
+<div class="indent">
+<div style="padding-bottom:1em">
+<<for _scarName, _scar range slave.scar>>
+	<div>
+	r.push(`${His}${  _scarName} is marked with `);
+V.App.Desc.expandScarString(slave, _scarName):
+	<<capture _scarName>>
+		<<link "Remove Scar">>
+			V.scarApplied = 0;
+			delete slave.scar[_scarName];
+			cashX(forceNeg(V.surgeryCost), "slaveSurgery", slave);
+			V.degradation -= 10;
+			<<goto "Body Modification">>
+		<</link>>
+	<</capture>>
+	</div>
+<</for>>
+if (jQuery.isEmptyObject(slave.scar)) {
+	<div>
+	r.push(`${His} skin is not scarred.`);
+	</div>
+}
+</div>
+
+<div>
+Use ''V.scarDesign.local'' or choose another scar:
+
+[[Whip|Body Modification][V.scarDesign.local = "whip"]]
+| [[Burns|Body Modification][V.scarDesign.local = "burn"]]
+| [[Surgical|Body Modification][V.scarDesign.local = "surgical"]]
+| [[Menacing|Body Modification][V.scarDesign.local = "menacing"]]
+| [[Exotic|Body Modification][V.scarDesign.local = "exotic"]]
+/* Other common scars might be battle scars or c-Section but it makes little sense to include them here */
+</div>
+
+<div>
+Or design your own: 
+<<textbox "V.scarDesign.local" V.scarDesign.local "Body Modification">>
+</div>
+
+<div>
+Choose a site for scaring:
+
+if (["exotic", "menacing"].includes(V.scarDesign.local)) {
+	[[Cheeks|Body Modification][V.scarTarget.local = "cheek"]]
+} else {
+	/* Sorted head to toe */
+
+	[[Entire body|Body Modification][V.scarTarget.local = "entire body"]]
+
+	/* Head */
+	if (slave.earShape !== "none") {
+		| [[Ears|Body Modification][V.scarTarget.local = "ear"]]
+	}
+	| [[Cheeks|Body Modification][V.scarTarget.local = "cheek"]]
+	| [[Neck|Body Modification][V.scarTarget.local = "neck"]]
+
+	/* Torso */
+	| [[Chest|Body Modification][V.scarTarget.local = "chest"]]
+	| [[Breasts|Body Modification][V.scarTarget.local = "breast"]]
+	| [[Back|Body Modification][V.scarTarget.local = "back"]]
+	| [[Lower Back|Body Modification][V.scarTarget.local = "lower back"]]
+	| [[Belly|Body Modification][V.scarTarget.local = "belly"]]
+	| [[Pubic Mound|Body Modification][V.scarTarget.local = "pubic mound"]]
+	if (slave.dick > 0) {
+		| [[Penis|Body Modification][V.scarTarget.local = "penis"]]
+	}
+	if (slave.balls > 0 && slave.scrotum > 0) {
+		| [[Testicles|Body Modification][V.scarTarget.local = "testicle"]]
+	}
+
+	/* Arms*/
+	| [[Shoulders|Body Modification][V.scarTarget.local = "shoulder"]]
+	if (hasAnyNaturalArms(slave)) {
+		| [[Arm, upper|Body Modification][V.scarTarget.local = "upper arm"]]
+		| [[Arm, lower|Body Modification][V.scarTarget.local = "lower arm"]]
+		| [[Wrists|Body Modification][V.scarTarget.local = "wrist"]]
+		| [[Hands|Body Modification][V.scarTarget.local = "hand"]]
+	}
+
+	/* Legs */
+	| [[Buttocks|Body Modification][V.scarTarget.local = "buttock"]]
+	if (hasAnyNaturalLegs(slave)) {
+		| [[Thighs|Body Modification][V.scarTarget.local = "thigh"]]
+		| [[Calves|Body Modification][V.scarTarget.local = "calf"]]
+		| [[Ankles|Body Modification][V.scarTarget.local = "ankle"]]
+		| [[Feet|Body Modification][V.scarTarget.local = "foot"]]
+	}
+}
+</div>
+
+<div>
+Or a custom site: 
+<<textbox "V.scarTarget.local" V.scarTarget.local "Body Modification">>
+</div>
+
+/* Correct some "bad" choices" */
+if (["exotic", "menacing"].includes(V.scarDesign.local)) {
+	if (V.scarTarget.local !== "cheek") {
+		V.scarTarget.local = "cheek";
+	}
+}
+
+<div>
+if (["ankle", "breast", "buttock", "calf", "cheek", "ear", "foot", "hand", "lower arm", "shoulder", "testicle", "thigh", "upper arm", "wrist"].includes(V.scarTarget.local)) {
+	_leftTarget = ("left " + V.scarTarget.local);
+	_rightTarget = ("right " + V.scarTarget.local);
+	if (slave.scar[_leftTarget]) {
+		r.push(`${His}${  _leftTarget} is already marked with `);
+V.App.Desc.expandScarString(slave, _leftTarget)
+	r.push(`.`);
+	}
+	if (slave.scar[_rightTarget]) {
+		r.push(`${His}${  _rightTarget} is already marked with `);
+V.App.Desc.expandScarString(slave, _rightTarget)
+	r.push(`.`);
+	}
+	r.push(`Scar ${him} now with ''${V.scarDesign.local}'' on the`);
+	_left = 0, _right = 0;
+	r.push(` /* overwrite brand */`);
+
+	if (!(["upper arm", "lower arm", "wrist", "hand"].includes(V.scarTarget.local) && getLeftArmID(slave) !== 1) && !(["thigh", "calf", "ankle", "foot"].includes(V.scarTarget.local) && getLeftLegID(slave) !== 1)) {
+		_left = 1;
+	r.push(` /* make next checks easier */`);
+		<<link "left">>
+			V.scarTarget.local = _leftTarget;
+			V.scarApplied = 1;
+			App.Medicine.Modification.addScar(slave, _leftTarget, V.scarDesign.local);
+			cashX(forceNeg(V.modCost), "slaveMod", slave);
+			V.degradation += 10;
+			<<goto "Body Modification">>
+		<</link>>
+	}
+	if (!(["upper arm", "lower arm", "wrist", "hand"].includes(V.scarTarget.local) && getRightArmID(slave) !== 1) && !(["thigh", "calf", "ankle", "foot"].includes(V.scarTarget.local) && getRightLegID(slave) !== 1)) {
+		_right = 1;
+	r.push(` /* make next checks easier */`);
+	}
+	if (_left && _right) {
+		r.push(`${V.scarTarget.local}, or the`);
+	}
+	if (_right) {
+		<<link "right">>
+			V.scarTarget.local = _rightTarget;
+			V.scarApplied = 1;
+			App.Medicine.Modification.addScar(slave, _rightTarget, V.scarDesign.local);
+			cashX(forceNeg(V.modCost), "slaveMod", slave);
+			V.degradation += 10;
+			<<goto "Body Modification">>
+		<</link>>
+	}
+if (!_left || !_right) {
+	r.push(` ${V.scarTarget.local}`);
+}?
+} else {
+	if (slave.scar.hasOwnProperty(V.scarTarget.local)) {
+		if (slave.scar[V.scarTarget.local][V.scarDesign.local]) {
+			r.push(`${He} already has ${V.scarDesign.local} scars on ${his} V.scarTarget.local. You can make it worse.`);
+		} else {
+	r.push(` /* check how much scarring is on this part */`);
+			_scarTotalValue = (Object.values(slave.scar[V.scarTarget.local])).reduce((a, b) => a + b, 0);
+			if (_scarTotalValue) {
+				r.push(`That would be a new kind of scar to add to the growing collection on ${his} ${V.scarTarget.local}. Life can always be worse for a slave.`);
+			}
+		}
+	}
+	<<link "Scar">>
+		if (V.scarTarget.local === "entire body" && V.scarDesign.local.includes("whip")) {
+			/* Special case for whipping scene, produces two kinds of scars */
+			App.Medicine.Modification.addScourged(slave);
+		} else {
+			/* Normal entire body scarring */
+			if (V.scarTarget.local === "entire body") {
+				_scarArray = ["left breast", "right breast", "back", "lower back", "left buttock", "right buttock"];
+				if (getLeftArmID(slave) === 0) {
+					_scarArray.push("left upper arm");
+				}
+				if (getRightArmID(slave) === 0) {
+					_scarArray.push("right upper arm");
+				}
+				if (getLeftLegID(slave) === 0) {
+					_scarArray.push("left thigh");
+				}
+				if (getRightLegID(slave) === 0) {
+					_scarArray.push("right thigh");
+				}
+			/* Single scar */
+			} else {
+				_scarArray = [V.scarTarget.local];
+			}
+			<<for _i to 0; _i < _scarArray.length; _i++>>
+				App.Medicine.Modification.addScar(slave, _scarArray[_i], V.scarDesign.local);
+				V.degradation += 10;
+			<</for>>
+		}
+		cashX(forceNeg(V.modCost), "slaveMod", slave);
+		V.scarApplied = 1;
+		V.degradation += 10;
+		<<goto "Body Modification">>
+	<</link>>
+	r.push(`with ${V.scarDesign.local} on the V.scarTarget.local`);
+if (slave.scar[V.scarTarget.local]) {
+	r.push(`, adding to the scars that are already there?`);
+} else {
+	r.push(`.`);
+}
+}
+</div>
+</div> /* indent */
+
+};
diff --git a/src/facilities/bodyModification/bodyModification.tw b/src/facilities/bodyModification/bodyModification.tw
index ddac0a6b078..ecf4ae9e6b3 100644
--- a/src/facilities/bodyModification/bodyModification.tw
+++ b/src/facilities/bodyModification/bodyModification.tw
@@ -1,854 +1,3 @@
 :: Body Modification [nobr jump-from-safe]
 
-<<set $nextButton = "Confirm changes", $nextLink = "Slave Interact">>
-<<run App.Utils.setLocalPronouns(getSlave($AS))>>
-<<run Enunciate(getSlave($AS))>>
-
-<<set $encyclopedia = "The Studio">>
-
-<h1>Body Modification Studio</h1>
-<p class="scene-intro">
-	<<= SlaveFullName(getSlave($AS))>> is lying strapped down on the table in your body modification studio. $He is entirely at your mercy.
-
-	<<if $brandApplied || $degradation || $scarApplied || $modReaction>>
-		<<if getSlave($AS).fuckdoll == 0>>
-			<<if canSee(getSlave($AS))>>There's a mirror on the ceiling, so $he can see<<else>>$He can't see, so <<if canHear(getSlave($AS))>>you're careful to describe<<else>>$he must, by $himself, get a feel for<</if>><</if>> $his new appearance.
-		<</if>>
-		<<if $brandApplied>>
-			The smell of burnt flesh hangs in the air. Being branded @@.health.dec;has hurt $his health a little.@@
-			<<run healthDamage(getSlave($AS), 10)>>
-			<<unset $brandApplied>>
-		<</if>>
-		<<if $scarApplied>>
-			<<if $scarTarget.local == "entire body">>
-				<<switch $scarDesign.local>>
-					<<case "burn">>
-						Your goal wasn't to make the distinct shape of a brand, but rather to permanently mar the skin with an open flame.
-					<<case "surgical">>
-						<<if $PC.skill.medicine >= 100>>
-							Your medical mastery is perfect, so creating Frankenstein's monster was a deliberate work of art.
-						<<elseif $PC.skill.medicine > 0>>
-							Your medical skills are progressing, and the Frankenstein effect reminds you of your earliest attempts.
-						<<else>>
-							You really slashed away with your knife, but were careful not to allow $him to bleed out.
-						<</if>>
-					<<default>>
-						The best way to apply scarring to the entire body is with a good old fashioned whip. $His body is a mess of crisscrossed lines<<if hasAnyNaturalLimbs(getSlave($AS))>>, and $his <<if getLimbCount(getSlave($AS), 1) > 1>>limbs twisted so violently in their restraints that they too have<<else>>only limb twists so violently in its restraints that it too has<</if>> become scarred<</if>>.
-				<</switch>>
-				No matter how you chose to apply it, scarring so much of $his body has @@.health.dec; hurt $his health.@@
-				<<run healthDamage(getSlave($AS), 20)>>
-			<<else>>
-				<<if getSlave($AS).scar[$scarTarget.local][$scarDesign.local] > 0>>
-					This is not the first time $he was scarred like this.
-				<</if>>
-				<<switch $scarDesign.local>>
-					<<case "whip">>
-						Targeting a single area with a whip is not easy. You set the mood by carefully arranging candles dripping on to a whimpering <<= getSlave($AS).slaveName>>, then got $his attention with a quick
-						<<if canSee(getSlave($AS))>>
-							wave
-						<<elseif canHear(getSlave($AS))>>
-							crack
-						<<else>>
-							tap
-						<</if>>
-						of the whip. One by one, you carefully snuffed out the candles, flicking hot wax as you went. After pausing a moment, you prepared to leave your mark.
-						<<if ["penis", "vagina"].includes($scarTarget.local)>>
-							<<if getSlave($AS).dick > 4 && $seeDicks>>
-								$His dick was large enough that it was not too difficult to hit,
-							<<elseif getSlave($AS).dick > 0 && $seeDicks>>
-								$His dick was a challengingly small target,
-							<<else>>
-								<<if getSlave($AS).clit > 0>>
-									$His clit was a difficult target,
-								<<else>>
-									$His clit was an impossibly tiny target,
-								<</if>>
-							<</if>>
-							but the end was never in doubt. The tip connected with $his most intimate place on the first try, and plunged $him into absolute agony.
-						<<else>>
-							The	end was never in doubt. A few strokes of the whip plunged $him into agony $his body will not allow $him to forget.
-						<</if>>
-					<<case "burn">>
-						Your goal wasn't to make the distinct shape of a brand, but rather to permanently mar the <<= getSlave($AS).skin>> skin of $his $scarTarget.local with an open flame.
-					<<case "surgical">>
-						<<if $PC.skill.medicine >= 100>>
-							Your medical mastery is perfect, so creating such a scar was a deliberate act of degradation.
-						<<elseif $PC.skill.medicine > 0>>
-							Your medical skills are progressing, and the sloppy scar reminds you of your earliest attempts.
-						<<else>>
-							You really slashed away at $scarTarget.local with your knife, but were careful not to allow $him to bleed out.
-						<</if>>
-					<<default>>
-						You had no shortage of kinky and medical tools for applying scars. $His <<= getSlave($AS).skin>> $scarTarget.local is bleeding profusely.
-				<</switch>>
-
-				No matter how you chose to apply it, being scarred @@.health.dec; hurt $his health a little.@@
-				<<run healthDamage(getSlave($AS), 10)>>
-			<</if>>
-			Afterwards you seal the wounds with a white medical spray. Infection is no risk to <<= getSlave($AS).slaveName>> thanks to your curatives, but in order to form obvious scar tissue you had to keep air out and delay normal healing as long as possible.
-			<<unset $scarApplied>>
-		<</if>>
-		<<if getSlave($AS).fetish != "mindbroken" && getSlave($AS).fuckdoll == 0>>
-			<<if $degradation > 1>>
-				<<if $degradation > 5>>
-					<<if getSlave($AS).devotion <= 50 && getSlave($AS).trust < -50>>
-						$He is appalled by the whorish spectacle you have made of $him. $He @@.gold;fears@@ you all the more for this but is so terrified of you it does not affect $his submission.
-						<<set getSlave($AS).trust -= 10>>
-					<<elseif getSlave($AS).devotion <= 50>>
-						$He is appalled by the whorish spectacle you have made of $him. $He @@.mediumorchid;hates@@ and @@.gold;fears@@ you for this.
-						<<set getSlave($AS).devotion -= 10, getSlave($AS).trust -= 10>>
-					<<else>>
-						$He is shocked by the whorish spectacle you have made of $him. However, $he is so submissive to your will that $he @@.hotpink;accepts@@ that the slave <<if canSee(getSlave($AS))>>in the mirror<<else>>$he pictures<</if>> is who $he is now.
-						<<set getSlave($AS).devotion += 4>>
-					<</if>>
-					<br><br>
-				<<else>>
-					<<if getSlave($AS).devotion < -20 && getSlave($AS).trust < 20>>
-						$He is @@.gold;afraid@@ that $he has been permanently altered against $his will, but is also scared of your reaction to any objection and suppresses $his disgust.
-						<<set getSlave($AS).trust -= 5>>
-					<<elseif getSlave($AS).devotion < -20>>
-						$He is @@.mediumorchid;angry@@ and @@.gold;afraid@@ that $he has been permanently altered against $his will.
-						<<set getSlave($AS).devotion -= 5, getSlave($AS).trust -= 5>>
-					<<else>>
-						$He is saddened to have been altered against $his will. However, $he realizes that $he is a slave, so $he @@.hotpink;accepts@@ your work.
-						<<set getSlave($AS).devotion += 2>>
-					<</if>>
-				<</if>>
-				<<set $degradation = 0>>
-			<</if>>
-			<<if $modReaction>>
-				<<print $modReaction>>
-				<<unset $modReaction>>
-			<</if>>
-		<</if>>
-	<</if>>
-
-	/* 000-250-006 */
-	<<if $seeImages == 1>>
-		<<if $imageChoice == 1>>
-			<div class="imageRef lrgVector"><div class="mask">&nbsp;</div><<= SlaveArt(getSlave($AS), 3, 0)>></div>
-		<<else>>
-			<div class="imageRef lrgRender"><div class="mask">&nbsp;</div><<= SlaveArt(getSlave($AS), 3, 0)>></div>
-		<</if>>
-	<</if>>
-	/* 000-250-006 */
-</p>
-
-/* PIERCINGS */
-
-<<set _piercingCount =(getSlave($AS).earPiercing + getSlave($AS).nosePiercing + getSlave($AS).eyebrowPiercing + getSlave($AS).lipsPiercing + getSlave($AS).tonguePiercing + getSlave($AS).nipplesPiercing + getSlave($AS).areolaePiercing + getSlave($AS).corsetPiercing + getSlave($AS).navelPiercing + getSlave($AS).clitPiercing + getSlave($AS).vaginaPiercing + getSlave($AS).dickPiercing + getSlave($AS).anusPiercing)>>
-
-/*DESCRIPTIONS */
-
-<h2>Piercings</h2>
-
-<div class="indent">
-	<div style="padding-bottom:1em">
-		<<if _piercingCount == 0>>
-			$His smooth <<= getSlave($AS).skin>> skin is completely unpierced.
-		<</if>>
-		<div><<= App.Desc.piercing(getSlave($AS), "ear")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "nose")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "eyebrow")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "lips")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "tongue")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "nipple")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "areolae")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "navel")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "corset")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "clit")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "vagina")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "dick")>></div>
-		<div><<= App.Desc.piercing(getSlave($AS), "anus")>></div>
-
-		<div><<= App.Desc.piercing(getSlave($AS), "chastity")>></div>
-	</div>
-
-	/* Apply piercings */
-
-	<div>
-		Choose piercing style:
-		<<if $piercingLevel != 1>>[[Light|Body Modification][$piercingLevel = 1]]<<else>>Light<</if>>
-		<<if $piercingLevel != 2>>| [[Heavy|Body Modification][$piercingLevel = 2]]<<else>>| Heavy<</if>>
-		<<if $piercingLevel != 3>>| [[Smart|Body Modification][$piercingLevel = 3]]<<else>>| Smart<</if>>
-		<<if $piercingLevel != 0>>| [[Remove|Body Modification][$piercingLevel = 0]]<<else>>| Remove<</if>>
-	</div>
-
-	<div>
-		<<if $piercingLevel == 1>>
-			//Lightly// pierce $his:
-
-			<<link "Entire body">>
-				<<set $modReaction = "">>
-				<<if getSlave($AS).earPiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "ear", 1)>><</if>>
-				<<if getSlave($AS).nosePiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "nose", 1)>><</if>>
-				<<if getSlave($AS).eyebrowPiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "eyebrow", 1)>><</if>>
-				<<if getSlave($AS).lipsPiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "lips", 1)>><</if>>
-				<<if getSlave($AS).tonguePiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "tongue", 1)>><</if>>
-				<<if getSlave($AS).nipples != "fuckable">>
-					<<if getSlave($AS).nipplesPiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "nipples", 1)>><</if>>
-				<</if>>
-				<<if getSlave($AS).areolaePiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "areolae", 1)>><</if>>
-				<<if getSlave($AS).corsetPiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "corset", 1)>><</if>>
-				<<if getSlave($AS).navelPiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "navel", 1)>><</if>>
-				<<if (getSlave($AS).vagina != -1) || (getSlave($AS).dick != 0)>>
-					<<if getSlave($AS).clitPiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "clit", 1)>><</if>>
-				<</if>>
-				<<if (getSlave($AS).vagina != -1)>>
-					<<if getSlave($AS).vaginaPiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "vagina", 1)>><</if>>
-				<</if>>
-				<<if (getSlave($AS).dick > 0)>>
-					<<if getSlave($AS).dickPiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "dick", 1)>><</if>>
-				<</if>>
-				<<if getSlave($AS).anusPiercing != 1>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "anus", 1)>><</if>>
-				<<goto "Body Modification">>
-			<</link>>
-
-			<<if getSlave($AS).earPiercing != 1>>		| [[Ear|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "ear", 1)]]<</if>>
-			<<if getSlave($AS).nosePiercing != 1>>		| [[Nose|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "nose", 1)]]<</if>>
-			<<if getSlave($AS).eyebrowPiercing != 1>>	| [[Eyebrow|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "eyebrow", 1)]]<</if>>
-			<<if getSlave($AS).lipsPiercing != 1>>		| [[Lips|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "lips", 1)]]<</if>>
-			<<if getSlave($AS).tonguePiercing != 1>>	| [[Tongue|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "tongue", 1)]]<</if>>
-			<<if getSlave($AS).nipples != "fuckable">>
-				<<if getSlave($AS).nipplesPiercing != 1>>	| [[Nipples|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "nipples", 1)]]<</if>>
-			<</if>>
-			<<if getSlave($AS).areolaePiercing != 1>>	| [[Areolae|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "areolae", 1)]]<</if>>
-			<<if getSlave($AS).corsetPiercing != 1>>	| [[Corset|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "corset", 1)]]<</if>>
-			<<if getSlave($AS).navelPiercing != 1>>		| [[Navel|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "navel", 1)]]<</if>>
-			<<if (getSlave($AS).vagina != -1) || (getSlave($AS).dick != 0)>>
-				<<if getSlave($AS).vagina != -1>>
-					<<if getSlave($AS).clitPiercing != 1>>	| [[Clit|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "clit", 1)]]<</if>>
-				<<else>>
-					<<if getSlave($AS).clitPiercing != 1>>	| [[Dickhead|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "clit", 1)]]<</if>>
-				<</if>>
-			<</if>>
-			<<if (getSlave($AS).vagina != -1)>>
-				<<if getSlave($AS).vaginaPiercing != 1>> | [[Vagina|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "vagina", 1)]]<</if>>
-			<</if>>
-			<<if (getSlave($AS).dick > 0)>>
-				<<if getSlave($AS).dickPiercing != 1>>	| [[Dick|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "dick", 1)]]<</if>>
-			<</if>>
-			<<if getSlave($AS).anusPiercing != 1>>		| [[Anus|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "anus", 1)]]<</if>>
-		<<elseif $piercingLevel == 2>>
-			''Heavily'' pierce $his:
-
-			<<link "Entire body">>
-				<<set $modReaction = "">>
-				<<if getSlave($AS).earPiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "ear", 2), $degradation += 1>><</if>>
-				<<if getSlave($AS).nosePiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "nose", 2), $degradation += 1>><</if>>
-				<<if getSlave($AS).eyebrowPiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "eyebrow", 2), $degradation += 1>><</if>>
-				<<if getSlave($AS).lipsPiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "lips", 2), $degradation += 1>><</if>>
-				<<if getSlave($AS).tonguePiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "tongue", 2), $degradation += 1>><</if>>
-				<<if getSlave($AS).nipples != "fuckable">>
-					<<if getSlave($AS).nipplesPiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "nipples", 2), $degradation += 1>><</if>>
-				<</if>>
-				<<if getSlave($AS).areolaePiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "areolae", 2), $degradation += 1>><</if>>
-				<<if getSlave($AS).corsetPiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "corset", 2), $degradation += 1>><</if>>
-				<<if getSlave($AS).navelPiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "navel", 2), $degradation += 1>><</if>>
-				<<if (getSlave($AS).vagina != -1) || (getSlave($AS).dick != 0)>>
-					<<if getSlave($AS).clitPiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "clit", 2), $degradation += 1>><</if>>
-				<</if>>
-				<<if (getSlave($AS).vagina != -1)>>
-					<<if getSlave($AS).vaginaPiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "vagina", 2), $degradation += 1>><</if>>
-				<</if>>
-				<<if (getSlave($AS).dick > 0)>>
-					<<if getSlave($AS).dickPiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "dick", 2), $degradation += 1>><</if>>
-				<</if>>
-				<<if getSlave($AS).anusPiercing != 2>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "anus", 2), $degradation += 1>><</if>>
-				<<goto "Body Modification">>
-			<</link>>
-
-			<<if getSlave($AS).earPiercing != 2>>		| [[Ear|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "ear", 2),$degradation += 1]]<</if>>
-			<<if getSlave($AS).nosePiercing != 2>>		| [[Nose|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "nose", 2),$degradation += 1]]<</if>>
-			<<if getSlave($AS).eyebrowPiercing != 2>>	| [[Eyebrow|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "eyebrow", 2),$degradation += 1]]<</if>>
-			<<if getSlave($AS).lipsPiercing != 2>>		| [[Lips|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "lips", 2),$degradation += 1]]<</if>>
-			<<if getSlave($AS).tonguePiercing != 2>>	| [[Tongue|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "tongue", 2),$degradation += 1]]<</if>>
-			<<if getSlave($AS).nipples != "fuckable">>
-				<<if getSlave($AS).nipplesPiercing != 2>>	| [[Nipples|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "nipples", 2),$degradation += 1]]<</if>>
-			<</if>>
-			<<if getSlave($AS).areolaePiercing != 2>>	| [[Areolae|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "areolae", 2),$degradation += 1]]<</if>>
-			<<if getSlave($AS).corsetPiercing != 2>>	| [[Corset|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "corset", 2),$degradation += 1]]<</if>>
-			<<if getSlave($AS).navelPiercing != 2>>		| [[Navel|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "navel", 2),$degradation += 1]]<</if>>
-			<<if (getSlave($AS).vagina != -1) || (getSlave($AS).dick != 0)>>
-				<<if getSlave($AS).vagina != -1>>
-					<<if getSlave($AS).clitPiercing != 2>> | [[Clit|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "clit", 2),$degradation += 1]]<</if>>
-				<<else>>
-					<<if getSlave($AS).clitPiercing != 2>> | [[Dickhead|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "clit", 2),$degradation += 1]]<</if>>
-				<</if>>
-			<</if>>
-			<<if (getSlave($AS).vagina != -1)>>
-				<<if getSlave($AS).vaginaPiercing != 2>> | [[Vagina|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "vagina", 2),$degradation += 1]]<</if>>
-			<</if>>
-			<<if (getSlave($AS).dick > 0)>>
-				<<if getSlave($AS).dickPiercing != 2>>	| [[Dick|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "dick", 2),$degradation += 1]]<</if>>
-			<</if>>
-			<<if getSlave($AS).anusPiercing != 2>>		| [[Anus|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "anus", 2),$degradation += 1]]<</if>>
-		<<elseif $piercingLevel == 3>>
-			<<if (getSlave($AS).vagina != -1) || (getSlave($AS).dick != 0)>>
-				<<if getSlave($AS).clitPiercing != 3>>
-					Give $him a [[smart piercing?|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "clit", 3),getSlave($AS).clitSetting = "all",$degradation += 1]] //Costs <<print cashFormat($SPcost)>>, unlocks options to mold sexuality//
-				<<else>>
-					$He already has a smart piercing!
-				<</if>>
-			<</if>>
-		<<elseif $piercingLevel == 0>>
-			Remove piercings from:
-
-			/* no dick/vagina checks in 'remove' so stealth piercings can be cleaned. Check only for piercings. */
-			<<link "Everywhere">>
-				<<set $modReaction = "">>
-				<<if getSlave($AS).earPiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "ear", 0)>><</if>>
-				<<if getSlave($AS).nosePiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "nose", 0)>><</if>>
-				<<if getSlave($AS).eyebrowPiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "eyebrow", 0)>><</if>>
-				<<if getSlave($AS).lipsPiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "lips", 0)>><</if>>
-				<<if getSlave($AS).tonguePiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "tongue", 0)>><</if>>
-				<<if getSlave($AS).nipplesPiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "nipples", 0)>><</if>>
-				<<if getSlave($AS).areolaePiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "areolae", 0)>><</if>>
-				<<if getSlave($AS).corsetPiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "corset", 0)>><</if>>
-				<<if getSlave($AS).navelPiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "navel", 0)>><</if>>
-				<<if getSlave($AS).clitPiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "clit", 0)>><</if>>
-				<<if getSlave($AS).vaginaPiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "vagina", 0)>><</if>>
-				<<if getSlave($AS).dickPiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "dick", 0)>><</if>>
-				<<if getSlave($AS).anusPiercing > 0>><<set $modReaction += App.Medicine.Modification.setPiercing(getSlave($AS), "anus", 0)>><</if>>
-				<<goto "Body Modification">>
-			<</link>>
-
-			<<if getSlave($AS).earPiercing > 0>>		| [[Ear|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "ear", 0)]]<</if>>
-			<<if getSlave($AS).nosePiercing > 0>>		| [[Nose|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "nose", 0)]]<</if>>
-			<<if getSlave($AS).eyebrowPiercing > 0>>	| [[Eyebrow|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "eyebrow", 0)]]<</if>>
-			<<if getSlave($AS).lipsPiercing > 0>>		| [[Lips|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "lips", 0)]]<</if>>
-			<<if getSlave($AS).tonguePiercing > 0>>		| [[Tongue|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "tongue", 0)]]<</if>>
-			<<if getSlave($AS).nipplesPiercing > 0>>	| [[Nipples|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "nipples", 0)]]<</if>>
-			<<if getSlave($AS).areolaePiercing > 0>>	| [[Areolae|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "areolae", 0)]]<</if>>
-			<<if getSlave($AS).corsetPiercing > 0>>		| [[Corset|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "corset", 0)]]<</if>>
-			<<if getSlave($AS).navelPiercing > 0>>		| [[Navel|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "navel", 0)]]<</if>>
-			<<if getSlave($AS).vagina != -1>>
-				<<if getSlave($AS).clitPiercing > 0>>	| [[Clit|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "clit", 0)]]<</if>>
-			<<else>>
-				<<if getSlave($AS).clitPiercing > 0>>	| [[Dickhead|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "clit", 0)]]<</if>>
-			<</if>>
-			<<if getSlave($AS).vaginaPiercing > 0>>		| [[Vagina|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "vagina", 0)]]<</if>>
-			<<if getSlave($AS).dickPiercing > 0>>		| [[Dick|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "dick", 0)]]<</if>>
-			<<if getSlave($AS).anusPiercing > 0>>		| [[Anus|Body Modification][$modReaction = App.Medicine.Modification.setPiercing(getSlave($AS), "anus", 0)]]<</if>>
-		<</if>>
-	</div>
-</div> /* indent */
-
-/* TATTOOS */
-
-<h2>Tattoos</h2>
-<div class="indent">
-	<div style="padding-bottom:1em">
-		<<if getSlave($AS).shouldersTat != 0>><div><<= App.Desc.tattoo(getSlave($AS), "shoulder")>></div><<set _hasTat = 1>><</if>>
-		<<if getSlave($AS).lipsTat != 0>><div><<= App.Desc.tattoo(getSlave($AS), "lips")>></div><<set _hasTat = 1>><</if>>
-		<<if getSlave($AS).boobsTat != 0>><div><<= App.Desc.tattoo(getSlave($AS), "breast")>></div><<set _hasTat = 1>><</if>>
-		<<if getSlave($AS).armsTat != 0 && hasAnyNaturalArms(getSlave($AS))>><div><<= App.Desc.tattoo(getSlave($AS), "upper arm")>></div><<set _hasTat = 1>><</if>>
-		<<if getSlave($AS).backTat != 0>><div><<= App.Desc.tattoo(getSlave($AS), "back")>></div><<set _hasTat = 1>><</if>>
-		<<if getSlave($AS).stampTat != 0>><div><<= App.Desc.tattoo(getSlave($AS), "lower back")>></div><<set _hasTat = 1>><</if>>
-		<<if getSlave($AS).buttTat != 0>><div><<= App.Desc.tattoo(getSlave($AS), "buttock")>></div><<set _hasTat = 1>><</if>>
-		<<if getSlave($AS).vaginaTat != 0>><div><<= App.Desc.tattoo(getSlave($AS), "vagina")>></div><<set _hasTat = 1>><</if>>
-		<<if getSlave($AS).dickTat != 0 && getSlave($AS).dick > 0>><div><<= App.Desc.tattoo(getSlave($AS), "dick")>></div><<set _hasTat = 1>><</if>>
-		<<if getSlave($AS).anusTat != 0>><div><<= App.Desc.tattoo(getSlave($AS), "anus")>></div><<set _hasTat = 1>><</if>>
-		<<if getSlave($AS).legsTat != 0 && hasAnyNaturalLegs(getSlave($AS))>><div><<= App.Desc.tattoo(getSlave($AS), "thigh")>></div><<set _hasTat = 1>><</if>>
-	</div>
-
-	<div>
-		Choose a tattoo style:
-		/* if/else is here so a "highlighted" option is never a link. */
-		<<if $tattooChoice != "tribal patterns">>[[Tribal patterns|Body Modification][$tattooChoice = "tribal patterns"]]<<else>>Tribal patterns<</if>>
-		<<if $tattooChoice != "flowers">> | [[Flowers|Body Modification][$tattooChoice = "flowers"]]<<else>>| Flowers<</if>>
-		<<if $tattooChoice != "counting">> | [[Counting|Body Modification][$tattooChoice = "counting"]]<<else>>| Counting<</if>>
-		<<if $tattooChoice != "advertisements">> | [[Advertisements|Body Modification][$tattooChoice = "advertisements"]]<<else>>| Advertisements<</if>>
-		<<if $tattooChoice != "rude words">> | [[Rude words|Body Modification][$tattooChoice = "rude words"]]<<else>>| Rude words<</if>>
-		<<if $tattooChoice != "degradation">> | [[Degradation|Body Modification][$tattooChoice = "degradation"]]<<else>>| Degradation<</if>>
-		<<if $tattooChoice != "Asian art">> | [[Asian art|Body Modification][$tattooChoice = "Asian art"]] <<else>>| Asian art<</if>>
-		<<if $tattooChoice != "scenes">> | [[Scenes|Body Modification][$tattooChoice = "scenes"]]<<else>>| Scenes<</if>>
-		<<if $tattooChoice != "bovine patterns">> | [[Bovine|Body Modification][$tattooChoice = "bovine patterns"]]<<else>>| Bovine<</if>>
-		<<if $tattooChoice != "permanent makeup">> | [[Permanent makeup|Body Modification][$tattooChoice = "permanent makeup"]]<<else>>| Permanent makeup<</if>>
-		<<if $tattooChoice != "sacrilege">> | [[Sacrilege|Body Modification][$tattooChoice = "sacrilege"]]<<else>>| Sacrilege<</if>>
-		<<if $tattooChoice != "sacrament">> | [[Sacrament|Body Modification][$tattooChoice = "sacrament"]]<<else>>| Sacrament<</if>>
-		<<if $tattooChoice != "possessive">> | [[Possessive|Body Modification][$tattooChoice = "possessive"]]<<else>>| Possessive<</if>>
-		<<if $tattooChoice != "paternalist">> | [[Paternalist|Body Modification][$tattooChoice = "paternalist"]]<<else>>| Paternalist<</if>>
-
-		<<if getSlave($AS).anusTat == 0>>
-			<<if $tattooChoice != "bleached">>| [[Bleach|Body Modification][$tattooChoice = "bleached"]]<<else>>| Bleach<</if>>
-		<</if>>
-
-		<<if _hasTat == 1>>
-			<<if $tattooChoice !== 0>> | //[[Remove a tattoo|Body Modification][$tattooChoice = 0]]//<<else>>| Remove a tattoo<</if>>
-		<</if>>
-	</div>
-
-	<div>
-		<<if def $tattooChoice>>
-			<<if $tattooChoice == 0>>
-				Clean the ink off of $him:
-			<<elseif $tattooChoice == "counting">>
-				Add tallies of $his sexual exploits to $him:
-			<<elseif $tattooChoice == "bleached">>
-				Bleach $his:
-			<<else>>
-				Add $tattooChoice to $his:
-			<</if>>
-
-			<<if ($tattooChoice != "bleached") && ($tattooChoice != "permanent makeup")>>
-				<<link "Entire body">>
-					<<set _degradationTemp = 0, $modReaction = "">>
-					<<if getSlave($AS).boobsTat != $tattooChoice>>
-						<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "boobs", $tattooChoice)>>
-						<<set _degradationTemp += 1>>
-					<</if>>
-
-					<<if getSlave($AS).buttTat != $tattooChoice>>
-						<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "butt", $tattooChoice)>>
-						<<set _degradationTemp += 1>>
-					<</if>>
-
-					<<if getSlave($AS).vaginaTat != $tattooChoice>>
-						<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "vagina", $tattooChoice)>>
-						<<set _degradationTemp += 1>>
-					<</if>>
-
-					<<if getSlave($AS).dick > 0>>
-						<<if getSlave($AS).dickTat != $tattooChoice && $tattooChoice != "scenes">>
-							<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "dick", $tattooChoice)>>
-							<<set _degradationTemp += 1>>
-						<</if>>
-					<</if>>
-
-					<<if getSlave($AS).lipsTat != $tattooChoice>>
-						<<if $tattooChoice == "scenes">>
-							<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "lips", "permanent makeup")>>
-						<<else>>
-							<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "lips", $tattooChoice)>>
-						<</if>>
-						<<set _degradationTemp += 1>>
-					<</if>>
-
-					<<if ($tattooChoice == "Asian art" || $tattooChoice == "scenes") && getSlave($AS).anusTat == "bleached">>
-						/* leave existing bleached anus alone */
-					<<elseif getSlave($AS).anusTat != $tattooChoice>>
-						<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "anus", $tattooChoice)>>
-						<<set _degradationTemp += 1>>
-					<</if>>
-
-					<<if getSlave($AS).shouldersTat != $tattooChoice>>
-						<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "shoulders", $tattooChoice)>>
-						<<set _degradationTemp += 1>>
-					<</if>>
-
-					<<if getSlave($AS).backTat != $tattooChoice>>
-						<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "back", $tattooChoice)>>
-						<<set _degradationTemp += 1>>
-					<</if>>
-
-					<<if hasAnyNaturalArms(getSlave($AS))>>
-						<<if getSlave($AS).armsTat != $tattooChoice>>
-							<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "arms", $tattooChoice)>>
-							<<set _degradationTemp += 1>>
-						<</if>>
-					<</if>>
-					<<if hasAnyNaturalLegs(getSlave($AS))>>
-						<<if getSlave($AS).legsTat != $tattooChoice>>
-							<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "legs", $tattooChoice)>>
-							<<set _degradationTemp += 1>>
-						<</if>>
-					<</if>>
-
-					<<if getSlave($AS).stampTat != $tattooChoice>>
-						<<set $modReaction += App.Medicine.Modification.setTattoo(getSlave($AS), "stamp", $tattooChoice)>>
-						<<set _degradationTemp += 1>>
-					<</if>>
-
-					<<if !["flowers", "paternalist", "tribal patterns", 0].includes($tattooChoice)>>
-						<<set $degradation += _degradationTemp>>
-					<</if>>
-
-					<<goto "Body Modification">>
-				<</link>>
-			<</if>>
-
-			<<if $tattooChoice == "permanent makeup">>
-				[[Face|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "lips", $tattooChoice)]]
-			<<elseif $tattooChoice == "bleached">>
-				[[Asshole|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "anus", $tattooChoice)]]
-			<<else>>
-				<<if getSlave($AS).shouldersTat != $tattooChoice>> | [[Shoulders|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "shoulders", $tattooChoice)]]<</if>>
-				<<if $tattooChoice != "scenes">>
-					<<if getSlave($AS).lipsTat != $tattooChoice>> | [[Face|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "lips", $tattooChoice)]]<</if>>
-				<</if>>
-				<<if getSlave($AS).boobsTat != $tattooChoice>> | [[Boobs|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "boobs", $tattooChoice)]]<</if>>
-				<<if hasAnyNaturalArms(getSlave($AS))>>
-					<<if getSlave($AS).armsTat != $tattooChoice>> | [[Arms|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "arms", $tattooChoice)]]<</if>>
-				<</if>>
-				<<if getSlave($AS).backTat != $tattooChoice>> | [[Upper back|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "back", $tattooChoice)]]<</if>>
-				<<if getSlave($AS).stampTat != $tattooChoice>> | [[Lower back|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "stamp", $tattooChoice)]]<</if>>
-				<<if getSlave($AS).buttTat != $tattooChoice>> | [[Buttock|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "butt", $tattooChoice)]]<</if>>
-				<<if getSlave($AS).vaginaTat != $tattooChoice>> | [[Vagina|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "vagina", $tattooChoice)]]<</if>>
-				<<if getSlave($AS).dick > 0 && $tattooChoice != "scenes">>
-					<<if getSlave($AS).dickTat != $tattooChoice>> | [[Dick|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "dick", $tattooChoice)]]<</if>>
-				<</if>>
-				<<if ($tattooChoice != "Asian art") && ($tattooChoice != "scenes")>>
-					<<if getSlave($AS).anusTat != $tattooChoice>> | [[Anus|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "anus", $tattooChoice)]]<</if>>
-				<</if>>
-				<<if hasAnyNaturalLegs(getSlave($AS))>>
-					<<if getSlave($AS).legsTat != $tattooChoice>> | [[Legs|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "legs", $tattooChoice)]]<</if>>
-				<</if>>
-			<</if>>
-		<</if>>
-	</div>
-
-	<div>
-		<<if getSlave($AS).belly >= 10000 && getSlave($AS).bellyPreg < 450000 && getSlave($AS).bellyFluid < 5000>>
-			<<if getSlave($AS).bellyTat == 0>>
-				$He has no navel tattoos.
-			<<else>>
-				$His navel is tattooed with <<= getSlave($AS).bellyTat>>.
-			<</if>>
-			<<if getSlave($AS).bellyTat == 0>>
-				<div>
-				[[Heart|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "belly", "a heart")]]
-				| [[Star|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "belly", "a star")]]
-				| [[Butterfly|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "belly", "a butterfly")]]
-				</div>
-			<</if>>
-			<<if getSlave($AS).bellyTat != 0>>
-				//[[Remove tattoos|Body Modification][$modReaction = App.Medicine.Modification.setTattoo(getSlave($AS), "belly", 0)]]//
-			<</if>>
-		<<elseif getSlave($AS).bellyPreg >= 450000>>
-			$His middle is large and taut enough to be a suitable canvas for a navel focused tattoo, but $his brood is too active to permit the needle to do its work.
-		<<elseif getSlave($AS).bellyFluid >= 10000>>
-			$His middle is large and taut enough to be a suitable canvas for a navel focused tattoo, but the pressure applied to $his stomach will likely force $him to release its contents.
-		<<else>>
-			$His middle isn't large enough to be a suitable canvas for a navel focused tattoo.
-		<</if>>
-	</div>
-
-	<div>
-		<<if getSlave($AS).birthsTat > 0>>
-			<<if getSlave($AS).birthsTat > 1>>
-				$He has a series of <<= num(getSlave($AS).birthsTat)>> baby-shaped tattoos adorning $his stomach; one for each successful pregnancy<<if getSlave($AS).pregKnown == 1>> and a temporary one for $his current pregnancy<</if>>.
-			<<else>>
-				$He has a single baby-shaped tattoo<<if getSlave($AS).pregKnown == 1>>, and one temporary one,<</if>> adorning $his stomach.
-			<</if>>
-			//[[Remove tattoos|Body Modification][getSlave($AS).birthsTat = -1, cashX(forceNeg($surgeryCost), "slaveSurgery", getSlave($AS))]]//
-		<<elseif getSlave($AS).birthsTat == 0>>
-			<<if getSlave($AS).pregKnown == 1>>
-				$He has a single baby-shaped temporary tattoo adorning $his stomach.
-				//[[Remove it|Body Modification][getSlave($AS).birthsTat = -1]]//
-				<<if getSlave($AS).abortionTat > -1>> //This will only remove birth tracking//<</if>>
-			<<else>>
-				$He is scheduled to receive a tattoo each time $he gives birth.
-				//[[Cancel|Body Modification][getSlave($AS).birthsTat = -1]]//
-			<</if>>
-		<<else>>
-			Have $him receive a tattoo each time $he gives birth.
-			//[[Begin keeping track|Body Modification][getSlave($AS).birthsTat = 0]]//
-		<</if>>
-	</div>
-
-	<div>
-		<<if getSlave($AS).abortionTat > 0>>
-			<<if getSlave($AS).abortionTat > 1>>
-				$He has a series of <<= num(getSlave($AS).abortionTat)>> crossed out baby-shaped tattoos<<if getSlave($AS).pregKnown == 1>>, and one uncrossed one,<</if>> adorning $his stomach.
-			<<else>>
-				$He has a single crossed out baby-shaped tattoo<<if getSlave($AS).pregKnown == 1>>, and one uncrossed one,<</if>> adorning $his stomach.
-			<</if>>
-			//[[Remove tattoos|Body Modification][getSlave($AS).abortionTat = -1, cashX(forceNeg($surgeryCost), "slaveSurgery", getSlave($AS))]]//
-		<<elseif getSlave($AS).abortionTat == 0>>
-			<<if getSlave($AS).pregKnown == 1>>
-				$He has a single baby-shaped temporary tattoo adorning $his stomach.
-				//[[Remove it|Body Modification][getSlave($AS).abortionTat = -1]]//
-				<<if getSlave($AS).birthsTat > -1>> //This will only remove abortion tracking//<</if>>
-			<<else>>
-				$He is scheduled to receive a tattoo each time $he gets an abortion or miscarries.
-				//[[Cancel|Body Modification][getSlave($AS).abortionTat = -1]]//
-			<</if>>
-		<<else>>
-			Have $him receive a tattoo for each abortion or miscarriage $he has.
-			//[[Begin keeping track|Body Modification][getSlave($AS).abortionTat = 0]]//
-		<</if>>
-	</div>
-</div>/* indent */
-
-<h3>Custom Tattoos</h3>
-<div class="indent">
-	//Use complete sentences, make a description of it//
-	<div class="grid-2columns-auto">
-		<<if getSlave($AS).lipsTat == 0>>
-			<div>Give $him a custom face tattoo:</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].lipsTat" $slaves[$slaveIndices[$AS]].lipsTat "Slave Interact">></div>
-		<</if>>
-
-		<<if getSlave($AS).shouldersTat == 0>>
-			<div>Give $him a custom shoulder tattoo:</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].shouldersTat" $slaves[$slaveIndices[$AS]].shouldersTat "Slave Interact">></div>
-		<</if>>
-
-		<<if getSlave($AS).armsTat == 0 && hasAnyNaturalArms(getSlave($AS))>>
-			<div>Give $him a custom arm tattoo:</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].armsTat" $slaves[$slaveIndices[$AS]].armsTat "Slave Interact">></div>
-		<</if>>
-
-		<<if getSlave($AS).boobsTat == 0>>
-			<div>Give $him a custom tit tattoo:</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].boobsTat" $slaves[$slaveIndices[$AS]].boobsTat "Slave Interact">></div>
-		<</if>>
-
-		<<if getSlave($AS).backTat == 0>>
-			<div>Give $him a custom back tattoo:</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].backTat" $slaves[$slaveIndices[$AS]].backTat "Slave Interact">></div>
-		<</if>>
-
-		<<if getSlave($AS).stampTat == 0>>
-			<div>Give $him a custom tramp stamp (lower back tattoo):</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].stampTat" $slaves[$slaveIndices[$AS]].stampTat "Slave Interact">></div>
-		<</if>>
-
-		<<if getSlave($AS).buttTat == 0>>
-			<div>Give $him a custom butt tattoo:</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].buttTat" $slaves[$slaveIndices[$AS]].buttTat "Slave Interact">></div>
-		<</if>>
-
-		<<if getSlave($AS).dickTat == 0 && getSlave($AS).dick != 0>>
-			<div>Give $him a custom dick tattoo:</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].dickTat" $slaves[$slaveIndices[$AS]].dickTat "Slave Interact">></div>
-		<</if>>
-
-		<<if getSlave($AS).vaginaTat == 0>>
-			<div>Give $him a custom pubic tattoo:</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].vaginaTat" $slaves[$slaveIndices[$AS]].vaginaTat "Slave Interact">></div>
-		<</if>>
-
-		<<if getSlave($AS).anusTat == 0>>
-			<div>Give $him a custom anus tattoo:</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].anusTat" $slaves[$slaveIndices[$AS]].anusTat "Slave Interact">></div>
-		<</if>>
-
-		<<if getSlave($AS).legsTat == 0 && hasAnyNaturalLegs(getSlave($AS))>>
-			<div>Give $him a custom leg tattoo:</div>
-			<div><<textbox "$slaves[$slaveIndices[$AS]].legsTat" $slaves[$slaveIndices[$AS]].legsTat "Slave Interact">></div>
-		<</if>>
-	</div> /* grid */
-
-	<div>
-		<<if (getSlave($AS).custom.tattoo == "")>>
-			Give $him a custom tattoo: <<textbox "$slaves[$slaveIndices[$AS]].custom.tattoo" $slaves[$slaveIndices[$AS]].custom.tattoo "Slave Interact">>
-		<<else>>
-			$He <<if _hasTat == 1>>also<</if>> has a custom tattoo: <<= getSlave($AS).custom.tattoo>>
-			Change it here: <<textbox "$slaves[$slaveIndices[$AS]].custom.tattoo" $slaves[$slaveIndices[$AS]].custom.tattoo "Slave Interact">>
-		<</if>>
-		<<if getSlave($AS).custom.tattoo != "">>
-			//[[Remove custom tattoo|Body Modification][getSlave($AS).custom.tattoo = "",cashX(forceNeg($surgeryCost), "slaveSurgery", getSlave($AS))]]//
-		<</if>>
-	</div>
-
-</div> /* indent */
-
-/* Branding */
-
-<h2>Branding</h2>
-<span id="brand-selection"></span>
-<script>
-	App.Medicine.Modification.Select.brand(getSlave(V.AS))
-</script>
-
-
-<<if getSlave($AS).breedingMark == 1 && ($propOutcome == 0 || $eugenicsFullControl == 1 || $arcologies[0].FSRestart == "unset")>>
-	<div class="indent">
-	$He has an intricate tattoo on $his lower belly that suggests $he was made to be bred. [[Remove it|Body Modification][getSlave($AS).breedingMark = 0]]
-	</div>
-<</if>>
-
-/* Scars */
-
-<h2>Scars</h2>
-<div class="indent">
-<div style="padding-bottom:1em">
-<<for _scarName, _scar range getSlave($AS).scar>>
-	<div>
-	$His _scarName is marked with <<= App.Desc.expandScarString(getSlave($AS), _scarName)>>:
-	<<capture _scarName>>
-		<<link "Remove Scar">>
-			<<set $scarApplied = 0>>
-			<<run delete getSlave($AS).scar[_scarName]>>
-			<<run cashX(forceNeg($surgeryCost), "slaveSurgery", getSlave($AS))>>
-			<<set $degradation -= 10>>
-			<<goto "Body Modification">>
-		<</link>>
-	<</capture>>
-	</div>
-<</for>>
-<<if (jQuery.isEmptyObject(getSlave($AS).scar))>>
-	<div>
-	$His skin is not scarred.
-	</div>
-<</if>>
-</div>
-
-<div>
-Use ''$scarDesign.local'' or choose another scar:
-
-[[Whip|Body Modification][$scarDesign.local = "whip"]]
-| [[Burns|Body Modification][$scarDesign.local = "burn"]]
-| [[Surgical|Body Modification][$scarDesign.local = "surgical"]]
-| [[Menacing|Body Modification][$scarDesign.local = "menacing"]]
-| [[Exotic|Body Modification][$scarDesign.local = "exotic"]]
-/* Other common scars might be battle scars or c-Section but it makes little sense to include them here */
-</div>
-
-<div>
-Or design your own: <<textbox "$scarDesign.local" $scarDesign.local "Body Modification">>
-</div>
-
-<div>
-Choose a site for scaring:
-
-<<if ["exotic", "menacing"].includes($scarDesign.local)>>
-	[[Cheeks|Body Modification][$scarTarget.local = "cheek"]]
-<<else>>
-	/* Sorted head to toe */
-
-	[[Entire body|Body Modification][$scarTarget.local = "entire body"]]
-
-	/* Head */
-	<<if getSlave($AS).earShape != "none">>
-		| [[Ears|Body Modification][$scarTarget.local = "ear"]]
-	<</if>>
-	| [[Cheeks|Body Modification][$scarTarget.local = "cheek"]]
-	| [[Neck|Body Modification][$scarTarget.local = "neck"]]
-
-	/* Torso */
-	| [[Chest|Body Modification][$scarTarget.local = "chest"]]
-	| [[Breasts|Body Modification][$scarTarget.local = "breast"]]
-	| [[Back|Body Modification][$scarTarget.local = "back"]]
-	| [[Lower Back|Body Modification][$scarTarget.local = "lower back"]]
-	| [[Belly|Body Modification][$scarTarget.local = "belly"]]
-	| [[Pubic Mound|Body Modification][$scarTarget.local = "pubic mound"]]
-	<<if getSlave($AS).dick > 0>>
-		| [[Penis|Body Modification][$scarTarget.local = "penis"]]
-	<</if>>
-	<<if getSlave($AS).balls > 0 && getSlave($AS).scrotum > 0>>
-		| [[Testicles|Body Modification][$scarTarget.local = "testicle"]]
-	<</if>>
-
-	/* Arms*/
-	| [[Shoulders|Body Modification][$scarTarget.local = "shoulder"]]
-	<<if hasAnyNaturalArms(getSlave($AS))>>
-		| [[Arm, upper|Body Modification][$scarTarget.local = "upper arm"]]
-		| [[Arm, lower|Body Modification][$scarTarget.local = "lower arm"]]
-		| [[Wrists|Body Modification][$scarTarget.local = "wrist"]]
-		| [[Hands|Body Modification][$scarTarget.local = "hand"]]
-	<</if>>
-
-	/* Legs */
-	| [[Buttocks|Body Modification][$scarTarget.local = "buttock"]]
-	<<if hasAnyNaturalLegs(getSlave($AS))>>
-		| [[Thighs|Body Modification][$scarTarget.local = "thigh"]]
-		| [[Calves|Body Modification][$scarTarget.local = "calf"]]
-		| [[Ankles|Body Modification][$scarTarget.local = "ankle"]]
-		| [[Feet|Body Modification][$scarTarget.local = "foot"]]
-	<</if>>
-<</if>>
-</div>
-
-<div>
-Or a custom site: <<textbox "$scarTarget.local" $scarTarget.local "Body Modification">>
-</div>
-
-/* Correct some "bad" choices" */
-<<if ["exotic", "menacing"].includes($scarDesign.local)>>
-	<<if $scarTarget.local != "cheek">>
-		<<set $scarTarget.local = "cheek">>
-	<</if>>
-<</if>>
-
-<div>
-<<if ["ankle", "breast", "buttock", "calf", "cheek", "ear", "foot", "hand", "lower arm", "shoulder", "testicle", "thigh", "upper arm", "wrist"].includes($scarTarget.local)>>
-	<<set _leftTarget = ("left " + $scarTarget.local)>>
-	<<set _rightTarget = ("right " + $scarTarget.local)>>
-	<<if getSlave($AS).scar[_leftTarget]>>
-		$His _leftTarget is already marked with <<= App.Desc.expandScarString(getSlave($AS), _leftTarget)>>.
-	<</if>>
-	<<if getSlave($AS).scar[_rightTarget]>>
-		$His _rightTarget is already marked with <<= App.Desc.expandScarString(getSlave($AS), _rightTarget)>>.
-	<</if>>
-	Scar $him now with ''$scarDesign.local'' on the
-	<<set _left = 0, _right = 0>> /* overwrite brand */
-
-	<<if !(["upper arm", "lower arm", "wrist", "hand"].includes($scarTarget.local) && getLeftArmID(getSlave($AS)) !== 1) && !(["thigh", "calf", "ankle", "foot"].includes($scarTarget.local) && getLeftLegID(getSlave($AS)) !== 1)>>
-		<<set _left = 1>> /* make next checks easier */
-		<<link "left">>
-			<<set $scarTarget.local = _leftTarget>>
-			<<set $scarApplied = 1>>
-			<<run App.Medicine.Modification.addScar(getSlave($AS), _leftTarget, $scarDesign.local)>>
-			<<run cashX(forceNeg($modCost), "slaveMod", getSlave($AS))>>
-			<<set $degradation += 10>>
-			<<goto "Body Modification">>
-		<</link>>
-	<</if>>
-	<<if !(["upper arm", "lower arm", "wrist", "hand"].includes($scarTarget.local) && getRightArmID(getSlave($AS)) !== 1) && !(["thigh", "calf", "ankle", "foot"].includes($scarTarget.local) && getRightLegID(getSlave($AS)) !== 1)>>
-		<<set _right = 1>> /* make next checks easier */
-	<</if>>
-	<<if _left && _right>>
-		$scarTarget.local, or the
-	<</if>>
-	<<if _right>>
-		<<link "right">>
-			<<set $scarTarget.local = _rightTarget>>
-			<<set $scarApplied = 1>>
-			<<run App.Medicine.Modification.addScar(getSlave($AS), _rightTarget, $scarDesign.local)>>
-			<<run cashX(forceNeg($modCost), "slaveMod", getSlave($AS))>>
-			<<set $degradation += 10>>
-			<<goto "Body Modification">>
-		<</link>>
-	<</if>><<if !_left || !_right>> $scarTarget.local<</if>>?
-<<else>>
-	<<if getSlave($AS).scar.hasOwnProperty($scarTarget.local)>>
-		<<if getSlave($AS).scar[$scarTarget.local][$scarDesign.local]>>
-			$He already has $scarDesign.local scars on $his $scarTarget.local. You can make it worse.
-		<<else>> /* check how much scarring is on this part */
-			<<set _scarTotalValue = (Object.values(getSlave($AS).scar[$scarTarget.local])).reduce((a, b) => a + b, 0)>>
-			<<if _scarTotalValue>>
-				That would be a new kind of scar to add to the growing collection on $his $scarTarget.local. Life can always be worse for a slave.
-			<</if>>
-		<</if>>
-	<</if>>
-	<<link "Scar">>
-		<<if $scarTarget.local === "entire body" && $scarDesign.local.includes("whip")>>
-			/* Special case for whipping scene, produces two kinds of scars */
-			<<run App.Medicine.Modification.addScourged(getSlave($AS))>>
-		<<else>>
-			/* Normal entire body scarring */
-			<<if $scarTarget.local === "entire body">>
-				<<set _scarArray = ["left breast", "right breast", "back", "lower back", "left buttock", "right buttock"]>>
-				<<if getLeftArmID(getSlave($AS)) === 0>>
-					<<set _scarArray.push("left upper arm")>>
-				<</if>>
-				<<if getRightArmID(getSlave($AS)) === 0>>
-					<<set _scarArray.push("right upper arm")>>
-				<</if>>
-				<<if getLeftLegID(getSlave($AS)) === 0>>
-					<<set _scarArray.push("left thigh")>>
-				<</if>>
-				<<if getRightLegID(getSlave($AS)) === 0>>
-					<<set _scarArray.push("right thigh")>>
-				<</if>>
-			/* Single scar */
-			<<else>>
-				<<set _scarArray = [$scarTarget.local]>>
-			<</if>>
-			<<for _i to 0; _i < _scarArray.length; _i++>>
-				<<run App.Medicine.Modification.addScar(getSlave($AS), _scarArray[_i], $scarDesign.local)>>
-				<<set $degradation += 10>>
-			<</for>>
-		<</if>>
-		<<run cashX(forceNeg($modCost), "slaveMod", getSlave($AS))>>
-		<<set $scarApplied = 1>>
-		<<set $degradation += 10>>
-		<<goto "Body Modification">>
-	<</link>>
-	with $scarDesign.local on the $scarTarget.local<<if getSlave($AS).scar[$scarTarget.local]>>, adding to the scars that are already there?<<else>>.<</if>>
-<</if>>
-</div>
-</div> /* indent */
+<<set $nextButton = "Confirm changes", $nextLink = "Slave Interact", $encyclopedia = "The Studio">>
-- 
GitLab