diff --git a/src/js/walkPastJS.js b/src/js/walkPastJS.js
index ca56e19c2cee92cb7f1c22b3b2a073a088c65ffc..3179d7fd04af28ad9a68c0492f63f046a5687940 100644
--- a/src/js/walkPastJS.js
+++ b/src/js/walkPastJS.js
@@ -2607,3 +2607,308 @@ window.buttWatch = function(slave) {
 	}
 	return t;
 };
+
+window.anusWatch = function(slave) {
+
+	/* will be moved up once this becomes a single, contained function. */
+	let t = "";
+	let V = State.variables;
+
+	let pronouns = getPronouns(slave);
+	let he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun;
+	let He = capFirstChar(he), His = capFirstChar(his);
+
+	V.target = "FAnus";
+
+	t += `<<AnusDescription>>`;
+	if (slave.chastityAnus == 0) {
+		t += ` `;
+		switch (slave.clothes) {
+			case "a Fuckdoll suit":
+				t += `${His} suit is expressly designed to encourage use of ${his} rear hole.`;
+				break;
+			case "uncomfortable straps":
+				t += `The ring over ${his} asshole beckons.`;
+				break;
+			case "shibari ropes":
+				t += `The rope between ${his} buttocks presses lewdly against ${his} anus as ${he} moves.`;
+				break;
+			case "restrictive latex":
+				t += `As one of the only islands in the sea of black latex, ${his} asshole is eye catching.`;
+				break;
+			case "a fallen nuns habit":
+				t += `${His} slutty nun outfit leaves ${his} butthole bare and available for anal sin.`;
+				break;
+			case "a chattel habit":
+				t += `${His} chattel habit covers ${his} anus with a strip of cloth, but it's designed to be lifted readily.`;
+				break;
+			case "a penitent nuns habit":
+				t += `${His} habit chafes ${his} rear end so cruelly that it would probably be a relief to ${him} to have it pulled up for a rough buttfuck.`;
+				break;
+			case "attractive lingerie":
+				if (alave.anus > 1 && slave.amp === 1) {
+					t += `${His} pretty g-string frequently fails to cover ${his} big butthole.`;
+					break;
+				} else if (slave.anus > 1) {
+					t += `As ${he} moves, ${his} pretty g-string frequently fails to cover ${his} big butthole.`;
+					break;
+				} else {
+					t += `As ${he} moves, ${his} pretty g-string draws your attention to ${his} ass.`;
+				}
+				break;
+			case "a succubus outfit":
+				t += `${His} succubus outfit's tail holds ${his} skirt up high in back, inviting a damning buttfuck.`;
+				break;
+			case "a nice maid outfit":
+				t += `${His} long maid's skirt will have to be gotten out of the way to permit access to ${his} ass.`;
+				break;
+			case "a slutty maid outfit":
+				t += `${His} short maid's skirt can be lifted to reveal ${his} bare buttocks.`;
+				break;
+			case "a slutty nurse outfit":
+				t += `${His} tight skirt flatters ${his} ass as ${he} moves.`;
+				break;
+			case "a schoolgirl outfit":
+				if (slave.anus === 0) {
+					t += `This schoolgirl clearly needs to lose ${his} anal virginity.`;
+				} else if (slave.vagina === 0) {
+					t += `This schoolgirl clearly takes it up the ass; that way, ${he} can remain a virgin, and be, like, totally pure and innocent.`;
+				} else {
+					t += `This schoolgirl clearly takes it up the ass.`;
+				}
+				break;
+			case "a kimono":
+				t += ` While ${his} kimono may demurely cover ${his} behind, you know ${his} asshole is bare under it.`;
+				break;
+			case "attractive lingerie for a pregnant woman":
+				t += `${His} silken panties are just begging to be torn off.`;
+				break;
+			case "a maternity dress":
+				t += `${His} dress could easily be slide up over ${his} butt to expose ${his} backdoor.`;
+				break;
+			case "stretch pants and a crop-top":
+				t += `${He} can easily be pantsed to reveal ${his} bare buttocks.`;
+				break;
+			case "a hijab and abaya":
+			case "a niqab and abaya":
+				t += `While ${his} abaya totally covers ${his} behind, it can be easily lifted to reveal ${his} asshole.`;
+				break;
+			case "a klan robe":
+				t += `While ${his} robe totally covers ${his} behind, it can be lifted to reveal ${his} asshole.`;
+				break;
+			case "a burqa":
+				t += `While ${his} burqa totally covers ${his} behind, it can be lifted to reveal ${his} asshole.`;
+				break;
+			case "an oversized t-shirt":
+				t += `${His} t-shirt may be oversized, but it does little to hide ${his} asshole.`;
+				break;
+			case "a tube top and thong":
+			case "a thong":
+			case "a t-shirt and thong":
+				if (alave.anus > 1 && slave.amp === 1) {
+					t += `${His} thong frequently fails to cover ${his} big butthole.`;
+					break;
+				} else if (slave.anus > 1) {
+					t += `As ${he} moves, ${his} thong frequently fails to cover ${his} big butthole.`;
+					break;
+				} else {
+					t += `As ${he} moves, ${his} thong draws your attention to ${his} ass.`;
+				}
+				break;
+			case "a bra":
+			case "a button-up shirt":
+			case "a sweater":
+			case "a tank-top":
+			case "a tube top":
+			case "a striped bra":
+			case "a slutty klan robe":
+			case "a sports bra":
+			case "a t-shirt":
+				t += `${His} outfit exposes ${his} bare butt and vulnerable asshole.`;
+				break;
+			case "an oversized t-shirt and boyshorts":
+			case "boyshorts":
+				t += `${His} boyshorts are tight enough to give hints of ${his} asshole.`;
+				break;
+			case "a button-up shirt and panties":
+			case "a sweater and panties":
+			case "a tank-top and panties":
+			case "panties":
+			case "a t-shirt and panties":
+			case "panties and pasties":
+			case "striped underwear":
+				t += `${His} tightly clinging panties can be pulled aside to reveal ${his} asshole.`;
+				break;
+			case "cutoffs":
+			case "sport shorts and a t-shirt":
+			case "sport shorts":
+			case "a sweater and cutoffs":
+			case "sport shorts and a sports bra":
+				t += `${His} shorts are practically begging to be pulled down to reveal ${his} naked butthole.`;
+				break;
+			case "a police uniform":
+			case "a t-shirt and jeans":
+			case "leather pants":
+			case "jeans":
+			case "leather pants and a tube top":
+			case "leather pants and pasties":
+				t += `${His} pants are practically begging to be pulled down to reveal ${his} naked butthole.`;
+				break;
+			case "a nice pony outfit":
+			case "a slutty pony outfit":
+				t += `${His} leather outfit is practically sculpted to fit ${his} ass, though would need to be undone to reach ${his} butthole.`;
+				break;
+			case "a skimpy loincloth":
+				t += `${His} loincloth gives hints of ${his} bare ass and asshole beneath it.`;
+				break;
+			case "a gothic lolita dress":
+				t += `${His} dress can be lifted easily to reveal ${his} asshole.`;
+				break;
+			case "a hanbok":
+				t += `${His} hanbok can be lifted easily to reveal ${his} asshole.`;
+				break;
+			case "a one-piece swimsuit":
+				t += `${His} swimsuit tightly clings to ${his} rear, but `;
+				if (slave.butt > 3) {
+					t += `${his} butt is too large to easily pull it aside and reach ${his} asshole.`;
+				} else {
+					t += `can be easily pulled aside to reveal ${his} asshole.`;
+				}
+				break;
+			case "a burkini":
+				t += `${His} burkini modestly covers ${his} rear.`;
+				break;
+			case "a hijab and blouse":
+				t += `${His} modest skirt can be easily lifted to reveal ${his} asshole.`;
+				break;
+			case "battledress":
+				t += `${His} fatigue trousers are not particularly flattering to ${his} butt but could be pulled down easily enough.`;
+				break;
+			case "a monokini":
+				t += `The bottom of ${his} monokini is practically sculpted to fit ${his} ass.`;
+				break;
+			case "a cybersuit":
+				t += `As ${his} buttocks work naturally with ${his} movement, ${his} tight bodysuit gives hints of ${his} asshole.`;
+				break;
+			case "a string bikini":
+				if (slave.anus > 1) {
+					t += `As ${he} moves, ${his} big butthole is clearly visible behind ${his} tiny g-string.`;
+				} else {
+					t += `As ${he} moves, ${his} tiny g-string draws your attention to ${his} ass.`;
+				}
+				break;
+			case "a scalemail bikini":
+				t += `${His} scalemail bottom draws attention to ${his} ass cheeks, while concealing ${his} rear hole.`;
+				break;
+			case "striped panties":
+				t += `${His} cute panties draw attention to ${his} ass cheeks, while concealing ${his} rear hole.`;
+				break;
+			case "clubslut netting":
+				t += `As ${he} moves, the hole in ${his} netting right over ${his} butthole looks inviting.`;
+				break;
+			case "a cheerleader outfit":
+				t += `As ${he} moves, ${his} short pleated cheerleader skirt shows off ${his} butt.`;
+				break;
+			case "cutoffs and a t-shirt":
+				t += `As ${he} moves, ${his} tight cutoffs flatter ${his} butt.`;
+				break;
+			case "spats and a tank top":
+				t += `${His} spats show off every curve of ${his} ass.`;
+				break;
+			case "a slutty outfit":
+				t += `For today's slutty outfit ${he}'s chosen `;
+				if (slave.butt > 5) {
+					t += `a leather skirt with zippers that permit ready access to ${his} butt.`;
+				} else {
+					t += `fishnets with a hole cut over ${his} asshole so ${he} can be sodomized without removing or damaging ${his} clothing.`;
+				}
+				break;
+			case "a slave gown":
+				t += `${His} gorgeous dress leaves little to the imagination; there's little doubt ${his} butt is bare beneath it.`;
+				break;
+			case "a halter top dress":
+				t += `${His} dress should slide up over ${his} butt to reveal ${his} backdoor.`;
+				break;
+			case "a ball gown":
+				t += `${His} ballgown and its petticoats could easily be flipped up to bare ${his} butt.`;
+				break;
+			case "slutty business attire":
+				t += `${His} short skirt will easily slide up to bare ${his} asshole.`;
+				break;
+			case "nice business attire":
+				t += `${His} conservative skirt can be slid up over ${his} hips to bare ${his} butthole.`;
+				break;
+			case "a comfortable bodysuit":
+				t += `${His} bodysuit demands attention for ${his} tightly clad backdoor.`;
+				break;
+			case "a latex catsuit":
+				t += `${His} latex catsuit's crotch zipper offers ready access to ${his} backdoor.`;
+				break;
+			case "a military uniform":
+				t += `${His} uniform skirt can be slid up over ${his} hips to bare ${his} butthole.`;
+				break;
+			case "a schutzstaffel uniform":
+				t += `${His} uniform's trousers can be easily slid down to expose ${his} butthole.`;
+				break;
+			case "a slutty schutzstaffel uniform":
+				t += `${His} uniform miniskirt can be easily slid up over ${his} hips to bare ${his} butthole.`;
+				break;
+			case "a red army uniform":
+				t += `${His} uniform skirt can be slid up over ${his} hips to bare ${his} butthole.`;
+				break;
+			case "a long qipao":
+				t += `${His} dress can be slid up over ${his} hips to bare ${his} butthole.`;
+				break;
+			case "battlearmor":
+				t += `${His} armor demands attention for ${his} tightly clad backdoor.`;
+				break;
+			case "a mounty outfit":
+				t += `${His} uniform slacks can be slipped off ${his} hips to bare ${his} butthole.`;
+				break;
+			case "a dirndl":
+				t += `${His} dress can be easily lifted to access ${his} bare ass.`;
+				break;
+			case "lederhosen":
+				t += `${His} tight shorts can be slipped off ${his} hips to bare ${his} butthole.`;
+				break;
+			case "a biyelgee costume":
+				t += `${His} costume can be easily lifted to access ${his} naked butt.`;
+				break;
+			case "a nice nurse outfit":
+				t += `${His} nurse's trousers can be easily slid down to expose ${his} butthole.`;
+				break;
+			case "a mini dress":
+				t += `${His} mini dress can be easily slid up to expose ${his} butthole.`;
+				break;
+			case "an apron":
+				t += `${His} apron leaves ${his} asshole completely exposed.`;
+				break;
+			case "a leotard":
+				t += `As ${his} buttocks work naturally with ${his} movement, ${his} tight leotard gives hints of ${his} asshole.`;
+				break;
+			case "a bunny outfit":
+				t += `${His} fluffy white cottontail draws attention to ${his} butt, inevitably bringing anal to mind.`;
+				break;
+			case "harem gauze":
+				t += `${His} ass is clearly visible through the thin gauze that covers it.`;
+				break;
+			case "a toga":
+				t += `${His} toga is so transparent it can't hide ${his} asscrack, which looks very seductive.`;
+				break;
+			case "a huipil":
+				t += `${His} huipil can be easily lifted to access ${his} naked butt.`;
+				break;
+			case "slutty jewelry":
+				t += `${His} belt of light chain threatens to dip into ${his} asscrack with each step.`;
+				break;
+			default:
+				if (slave.chastityVagina) {
+					t += `${His} chastity belt leaves ${his} ass available.`;
+				} else {
+					t += `You run your eye over ${his} naked ass.`;
+				}
+		}
+	}
+
+	return t;
+};
diff --git a/src/uncategorized/walkPast.tw b/src/uncategorized/walkPast.tw
index 1c55bfbfaa7896c4280b6917727dfa3bfa444527..2c2cb1e2f651feb10343f1be83ce892ade791c54 100644
--- a/src/uncategorized/walkPast.tw
+++ b/src/uncategorized/walkPast.tw
@@ -2993,180 +2993,9 @@
 	<</if>>
 	<<set $target = "FVagina">>
 <<elseif (_flag > 20)>>
-	<<AnusDescription>>
-	<<switch $activeSlave.clothes>>
-	<<case "a Fuckdoll suit">>
-		$His suit is expressly designed to encourage use of $his rear hole.
-	<<case "uncomfortable straps">>
-		The ring over $his asshole beckons.
-	<<case "shibari ropes">>
-		The rope between $his buttocks presses lewdly against $his anus as $he moves.
-	<<case "restrictive latex">>
-		As one of the only islands in the sea of black latex, $his asshole is eye catching.
-	<<case "a fallen nuns habit">>
-		$His slutty nun outfit leaves $his butthole bare and available for anal sin.
-	<<case "a chattel habit">>
-		$His chattel habit covers $his anus with a strip of cloth, but it's designed to be lifted readily.
-	<<case "a penitent nuns habit">>
-		$His habit chafes $his rear end so cruelly that it would probably be a relief to $him to have it pulled up for a rough buttfuck.
-	<<case "attractive lingerie">>
-		<<if ($activeSlave.anus > 1) && ($activeSlave.amp == 1)>>
-			$His pretty g-string frequently fails to cover $his big butthole.
-		<<elseif ($activeSlave.anus > 1)>>
-			As $he moves, $his pretty g-string frequently fails to cover $his big butthole.
-		<<else>>
-			As $he moves, $his pretty g-string draws your attention to $his ass.
-		<</if>>
-	<<case "a succubus outfit">>
-		$His succubus outfit's tail holds $his skirt up high in back, inviting a damning buttfuck.
-	<<case "a nice maid outfit">>
-		$His long maid's skirt will have to be gotten out of the way to permit access to $his ass.
-	<<case "a slutty maid outfit">>
-		$His short maid's skirt can be lifted to reveal $his bare buttocks.
-	<<case "a slutty nurse outfit">>
-		$His tight skirt flatters $his ass as $he moves.
-	<<case "a schoolgirl outfit">>
-		<<if $activeSlave.anus == 0>>
-			This schoolgirl clearly needs to lose $his anal virginity.
-		<<elseif $activeSlave.vagina == 0>>
-			This schoolgirl clearly takes it up the ass; that way, $he can remain a virgin, and be, like, totally pure and innocent.
-		<<else>>
-			This schoolgirl clearly takes it up the ass.
-		<</if>>
-	<<case "a kimono">>
-		<<if ($activeSlave.butt > 5)>>
-			$His kimono demurely covers $his behind, though it cannot conceal its massive shape.
-		<<else>>
-			$His kimono demurely covers $his behind.
-		<</if>>
-	<<case "attractive lingerie for a pregnant woman">>
-		$His silken panties are just begging to be torn off.
-	<<case "a maternity dress">>
-		<<if $activeSlave.butt > 5>>
-			$His dress covers $his behind, though it cannot conceal its massive size.
-		<<else>>
-			$His dress demurely covers $his behind.
-		<</if>>
-	<<case "stretch pants and a crop-top">>
-		$He can easily be pantsed to reveal $his bare buttocks.
-	<<case "a hijab and abaya" "a niqab and abaya">>
-		While $his abaya totally covers $his behind, it can be easily lifted to reveal $his asshole.
-	<<case "a klan robe">>
-		While $his robe totally covers $his behind, it can be lifted to reveal $his asshole.
-	<<case "a burqa">>
-		While $his burqa totally covers $his behind, it can be lifted to reveal $his asshole.
-	<<case "a tube top and thong" "a bra" "a button-up shirt" "a sweater" "a tank-top" "a thong" "a tube top" "a striped bra" "a slutty klan robe" "a sports bra" "a t-shirt" "a t-shirt and thong" "an oversized t-shirt">>
-		$His clothing leaves $his butt bare, with easy access to $his asshole.
-	<<case "a button-up shirt and panties" "a sweater and panties" "a tank-top and panties" "an oversized t-shirt and boyshorts" "boyshorts" "panties" "a t-shirt and panties" "panties and pasties" "striped underwear">>
-		$His tightly clinging panties can be pulled aside to reveal $his asshole.
-	<<case "cutoffs" "sport shorts and a t-shirt" "sport shorts" "a sweater and cutoffs" "sport shorts and a sports bra">>
-		$His shorts are practically sculpted to fit $his ass.
-	<<case "a police uniform" "a t-shirt and jeans" "leather pants" "jeans" "leather pants and a tube top" "leather pants and pasties">>
-		$His pants are practically sculpted to fit $his ass.
-	<<case "a nice pony outfit" "a slutty pony outfit">>
-		$His leather outfit is practically sculpted to fit $his ass.
-	<<case "a skimpy loincloth">>
-		$his loincloth gives hints of $his bare ass and asshole beneath it.
-	<<case "a gothic lolita dress">>
-		$His dress can be lifted easily to reveal $his asshole.
-	<<case "a hanbok">>
-		$His hanbok can be lifted easily to reveal $his asshole.
-	<<case "a one-piece swimsuit">>
-		$His swimsuit tightly clings to $his rear, but can be easily pulled aside to reveal $his asshole.
-	<<case "a burkini">>
-		$His burkini modestly covers $his rear.
-	<<case "a hijab and blouse">>
-		$His modest skirt can be easily lifted to reveal $his asshole.
-	<<case "battledress">>
-		$His fatigue trousers are not particularly flattering to $his butt.
-	<<case "a monokini">>
-		The bottom of $his monokini is practically sculpted to fit $his ass.
-	<<case "a cybersuit">>
-		As $his buttocks work naturally with $his movement, $his tight bodysuit gives hints of $his asshole.
-	<<case "a string bikini">>
-		<<if ($activeSlave.anus > 1)>>
-			As $he moves, $his big butthole is clearly visible behind $his tiny g-string.
-		<<else>>
-			As $he moves, $his tiny g-string draws your attention to $his ass.
-		<</if>>
-	<<case "a scalemail bikini">>
-		$His scalemail bottom draws attention to $his ass cheeks, while concealing $his rear hole.
-	<<case "striped panties">>
-		$His cute panties draw attention to $his ass cheeks, while concealing $his rear hole.
-	<<case "clubslut netting">>
-		As $he moves, the hole in $his netting right over $his butthole looks inviting.
-	<<case "a cheerleader outfit">>
-		As $he moves, $his short pleated cheerleader skirt shows off $his butt.
-	<<case "cutoffs and a t-shirt">>
-		As $he moves, $his tight cutoffs flatter $his butt.
-	<<case "spats and a tank top">>
-		$His spats show off every curve of $his ass.
-	<<case "a slutty outfit">>
-		<<if ($activeSlave.butt > 5)>>
-			For today's slutty outfit $he's chosen a leather skirt with zippers that permit ready access to $his butt.
-		<<else>>
-			For today's slutty outfit $he's chosen fishnets with a hole cut over $his asshole so $he can be sodomized without removing or damaging $his clothing.
-		<</if>>
-	<<case "a slave gown">>
-		$His gorgeous dress leaves little to the imagination; there's little doubt $his butt is bare beneath it.
-	<<case "a halter top dress">>
-		$His dress should slide up over $his butt to reveal $his backdoor.
-	<<case "a ball gown">>
-		$His ballgown and its petticoats could easily be flipped up to bare $his butt.
-	<<case "slutty business attire">>
-		$His short skirt will easily slide up to bare $his asshole.
-	<<case "nice business attire">>
-		$His conservative skirt can be slid up over $his hips to bare $his butthole.
-	<<case "a comfortable bodysuit">>
-		$His bodysuit demands attention for $his tightly clad backdoor.
-	<<case "a latex catsuit">>
-		$His latex catsuit's crotch zipper offer ready access to $his backdoor.
-	<<case "a military uniform">>
-		$His uniform skirt can be slid up over $his hips to bare $his butthole.
-	<<case "a schutzstaffel uniform">>
-		$His uniform's trousers can be easily slid down to expose $his butthole.
-	<<case "a slutty schutzstaffel uniform">>
-		$His uniform miniskirt can be easily slid up over $his hips to bare $his butthole.
-	<<case "a red army uniform">>
-		$His uniform skirt can be slid up over $his hips to bare $his butthole.
-	<<case "a long qipao">>
-		$His dress can be slid up over $his hips to bare $his butthole.
-	<<case "battlearmor">>
-		$His armor demands attention for $his tightly clad backdoor.
-	<<case "a mounty outfit">>
-		$His uniform slacks can be slipped off $his hips to bare $his butthole.
-	<<case "a dirndl">>
-		$His dress can be easily lifted to access $his bare ass.
-	<<case "lederhosen">>
-		$His tight shorts can be slipped off $his hips to bare $his butthole.
-	<<case "a biyelgee costume">>
-		$His costume can be easily lifted to access $his naked butt.
-	<<case "a nice nurse outfit">>
-		$His nurse's trousers can be easily slid down to expose $his butthole.
-	<<case "a mini dress">>
-		$His mini dress can be easily slid up to expose $his butthole.
-	<<case "an apron">>
-		$His apron leaves $his asshole completely exposed.
-	<<case "a leotard">>
-		As $his buttocks work naturally with $his movement, $his tight leotard gives hints of $his asshole.
-	<<case "a bunny outfit">>
-		$His fluffy white cottontail draws attention to $his butt, inevitably bringing anal to mind.
-	<<case "harem gauze">>
-		$His ass is clearly visible through the thin gauze that covers it.
-	<<case "a toga">>
-		$His toga is so transparent it can't hide $his asscrack, which looks very seductive.
-	<<case "a huipil">>
-		$His huipil can be easily lifted to access $his naked butt.
-	<<case "slutty jewelry">>
-		$His belt of light chain threatens to dip into $his asscrack with each step.
-	<<default>>
-		<<if ($activeSlave.chastityVagina)>>
-			$His chastity belt leaves $his ass available.
-		<<else>>
-			You run your eye over $his naked ass.
-		<</if>>
-	<</switch>>
-	<<set $target = "FAnus">>
+
+	<<= anusWatch($activeSlave)>>
+
 <<elseif (_flag > 0)>>
 	<<faceDescription>>
 	<<mouthDescription>>