diff --git a/src/Mods/SecExp/attackHandler.tw b/src/Mods/SecExp/attackHandler.tw
index 2bca99e2995993f7c04bfd1bc1f16015339f133b..00a77c7bad8aa0f7657dee2f355749c3874a8732 100644
--- a/src/Mods/SecExp/attackHandler.tw
+++ b/src/Mods/SecExp/attackHandler.tw
@@ -85,9 +85,11 @@
 		<<elseif $SecExp.core.authority >= 15000>>
 			<<set _slaveMod += 0.25>>
 		<</if>>
-		<<if $PC.career == "escort" || $PC.career == "servant">>
+		<<if $PC.career == "escort" || $PC.career == "prostitute" || $PC.career == "servant">>
 			<<set _slaveMod += 0.10>>
-		<<elseif $PC.career == "slaver">>
+		<<elseif $PC.career == "child prostitute" && $PC.visualAge >= $minimumSlaveAge>>
+			<<set _slaveMod += 0.05>>
+		<<elseif $PC.career == "slaver" || $PC.career == "slave overseer" || $PC.career == "slave tender">>
 			<<set _slaveMod -= 0.10>>
 		<</if>>
 		<<if $rep <= 2500 && $rep > 1000>>
diff --git a/src/data/backwardsCompatibility/datatypeCleanup.js b/src/data/backwardsCompatibility/datatypeCleanup.js
index 39633e092b00a3ad4eff40d0e14009a2bd40d341..9a5a759bc3ddba13fb137334c9823b7d527dc634 100644
--- a/src/data/backwardsCompatibility/datatypeCleanup.js
+++ b/src/data/backwardsCompatibility/datatypeCleanup.js
@@ -1505,7 +1505,7 @@ globalThis.ArcologyDatatypeCleanup = function() {
 	V.drugsCost = Math.trunc(10000 / V.localEcon);
 	V.rulesCost = Math.trunc(10000 / V.localEcon);
 	V.modCost = Math.trunc(5000 / V.localEcon);
-	V.surgeryCost = Math.trunc(30000 / (V.localEcon * (V.PC.career === "medicine" ? 2 : 1)));
+	V.surgeryCost = Math.trunc(30000 / (V.localEcon * ((V.PC.career === "medicine" || V.PC.career === "medical assistant" || V.PC.career === "nurse") ?  2 : 1)));
 	V.facilityCost = +V.facilityCost || 100;
 
 	for (const school of App.Data.misc.schools.keys()) {
diff --git a/src/endWeek/economics/reputation.js b/src/endWeek/economics/reputation.js
index 1a31805abc4d44f9416b54ea7e5e075f539bb94a..66c3e8668376c8c6a44afdb57440fcdb5993ebf8 100644
--- a/src/endWeek/economics/reputation.js
+++ b/src/endWeek/economics/reputation.js
@@ -461,7 +461,7 @@ App.EndWeek.reputation = function() {
 
 	if (
 		(V.PC.belly >= 1500) ||
-		(V.PC.career === "escort" && V.PC.belly >= 500 && V.PC.preg > 0)
+		(V.PC.career === "escort" && V.PC.belly >= 500 && V.PC.preg > 0) // .belly? .clothing?
 	) {
 		if (V.arcologies[0].FSRestart !== "unset") {
 			if (V.arcologies[0].FSRestartDecoration === 100) {
@@ -523,13 +523,25 @@ App.EndWeek.reputation = function() {
 		}
 	}
 
-	if (V.PC.career === "escort" && V.rep < 16000 - _enduringRep) {
-		r.push(`Society <span class="red">frowns</span> over being run by an ex-whore. The presence of porn of you on the net doesn't aid your reputation either.`);
+	if ((V.PC.career === "escort" || V.PC.career === "prostitute") && V.rep < 16000 - _enduringRep) {
+		r.push(`Society <span class="red">frowns</span> over being run by an ex-whore.`);
+		if (V.PC.career === "escort") {
+			r.push(`The presence of porn of you on the net doesn't aid your reputation either.`);
+		}
 		repX(forceNeg(Math.min((V.rep * 0.05), 500)), "PCactions");
-	} else if (V.PC.career === "escort") {
+	} else if (V.PC.career === "escort" || V.PC.career === "prostitute") {
 		r.push(`Your reputation is so strong that society has accepted your previous endeavors despite how unusual it is for a prominent slaveowner to have once nearly been a slave.`);
 	}
-	if (V.PC.career === "servant" && V.rep < 12000 - _enduringRep) {
+	if (V.PC.career === "child prostitute" && V.rep < 22000 - _enduringRep) {
+		r.push(`Society <span class="red">is mortified</span> over being run by a sex-addled child whore.`);
+		if (V.PC.visualAge < V.minimumSlaveAge) {
+			r.push(`The fact that you appear underage only makes the thought worse.`);
+		}
+		repX(forceNeg(Math.min((V.rep * 0.06), 500)), "PCactions");
+	} else if (V.PC.career === "child prostitute") {
+		r.push(`Your reputation is so strong that society has finally accepted your previous life as a child whore.`);
+	}
+	if ((V.PC.career === "servant" || V.PC.career === "handmaiden" || V.PC.career === "child servant") && V.rep < 12000 - _enduringRep) {
 		r.push(`Society <span class="red">frowns</span> over being run by an ex-`);
 		if (V.PC.title === 1) {
 			r.push(`butler,`);
@@ -538,16 +550,28 @@ App.EndWeek.reputation = function() {
 		}
 		r.push(`despite how prominent their previous owner was.`);
 		repX(forceNeg(Math.min((V.rep * 0.05), 500)), "PCactions");
-	} else if (V.PC.career === "servant") {
+	} else if (V.PC.career === "servant" || V.PC.career === "handmaiden" || V.PC.career === "child servant") {
 		r.push(`Your reputation is so strong that society has accepted your previous vocation despite how unusual it is for a prominent slaveowner to have once been nothing more than a lowly servant.`);
 	}
 	if (V.PC.career === "gang" && V.rep < 15000 - _enduringRep) {
 		r.push(`Society <span class="red">frowns</span> over being run by an ex-gang leader, no matter how strong they might have been.`);
 		repX(forceNeg(Math.min((V.rep * 0.05), 500)), "PCactions");
+	} else if (V.PC.career === "hoodlum" && V.rep < 16000 - _enduringRep) {
+		r.push(`Society <span class="red">dislikes</span> being run by some low-life thug, no matter how much "street cred" they may have once held.`);
+		repX(forceNeg(Math.min((V.rep * 0.05), 500)), "PCactions");
+	} else if (V.PC.career === "street urchin" && V.rep < 20000 - _enduringRep) {
+		r.push(`Society <span class="red">hates</span> being run by some homeless street rat; how you even managed to get this far baffles them.`);
+		repX(forceNeg(Math.min((V.rep * 0.06), 500)), "PCactions");
 	} else if (V.PC.career === "BlackHat" && V.rep < 15000 - _enduringRep) {
 		r.push(`Society <span class="red">dislikes</span> being run by someone so capable of dredging up secrets, especially when they used to do it for the highest bidder.`);
 		repX(forceNeg(Math.min((V.rep * 0.05), 500)), "PCactions");
-	} else if (V.PC.career === "gang" || V.PC.career === "BlackHat") {
+	} else if (V.PC.career === "hacker" && V.rep < 16000 - _enduringRep) {
+		r.push(`Society <span class="red">dislikes</span> being run by someone so capable of dredging up secrets, especially when they do it for fun.`);
+		repX(forceNeg(Math.min((V.rep * 0.05), 500)), "PCactions");
+	} else if (V.PC.career === "script kiddy" && V.rep < 18000 - _enduringRep) {
+		r.push(`Society <span class="red">dislikes</span> being run by someone with such a reckless and disruptive idea of fun.`);
+		repX(forceNeg(Math.min((V.rep * 0.05), 500)), "PCactions");
+	} else if (V.PC.career === "gang" || V.PC.career === "hoodlum" || V.PC.career === "street urchin" || V.PC.career === "BlackHat" || V.PC.career === "hacker" || V.PC.career === "script kiddy") {
 		r.push(`Your reputation is strong enough that society has come to accept your background as part of your image.`);
 	}
 
diff --git a/src/events/intro/initNationalities.js b/src/events/intro/initNationalities.js
index 6e4149d3a94b4be91266c3c1253efe31b40e6694..491a310a163420291102d36146a0ccb0a4a225a8 100644
--- a/src/events/intro/initNationalities.js
+++ b/src/events/intro/initNationalities.js
@@ -116,34 +116,34 @@ App.Intro.initNationalities = function() {
 				break;
 			case "prostitute":
 				V.trinkets.push("a nude pinup of you from the brothel you used to work in");
-				// tattoo "You have your ID number from your days as a prostitute tattooed on your left breast."
+				V.PC.boobsTat = "You have your ID number from your days as a prostitute tattooed on your left breast.";
 				break;
 			case "child prostitute":
 				V.trinkets.push("a pair of your used underwear");
-				// tattoo "You have your ID number from your days as a prostitute tattooed on your left breast."
+				V.PC.boobsTat = "You have your ID number from your days as a prostitute tattooed on your left breast.";
 				break;
 			case "servant":
 				V.trinkets.push("a framed picture of your late Master");
-				// tattoo "You have your Master's brand tattooed on your left breast.";
+				V.PC.boobsTat = "You have your Master's brand tattooed on your left breast.";
 				break;
 			case "handmaiden":
 				V.trinkets.push("a framed picture of your late Master's family");
-				// tattoo "You have your Master's brand tattooed on your left breast.";
+				V.PC.boobsTat = "You have your Master's brand tattooed on your left breast.";
 				break;
 			case "child servant":
 				V.trinkets.push("a framed picture of your late Master patting your head");
-				// tattoo "You have your Master's brand tattooed on your left breast.";
+				V.PC.boobsTat = "You have your Master's brand tattooed on your left breast.";
 				break;
 			case "gang":
 				V.trinkets.push("your favorite handgun, whose sight has instilled fear in many");
 				break;
 			case "hoodlum":
 				V.trinkets.push("a hood ornament stolen from a fancy Old World vehicle");
-				// tattoo "You have a tattoo denoting your gang affiliation on your neck."
+				V.PC.shoulderTat = "You have a tattoo denoting your gang affiliation on your neck.";
 				break;
 			case "street urchin":
 				V.trinkets.push("your trusty knife, whose kept you safe many a night");
-				// tattoo "You have a tattoo denoting your gang affiliation on your neck."
+				V.PC.shoulderTat = "You have a tattoo denoting your gang affiliation on your neck.";
 				break;
 		}
 
diff --git a/src/facilities/farmyard/food/pFoodCrisis.tw b/src/facilities/farmyard/food/pFoodCrisis.tw
index cbf28f977c7187b82d3a0ec4cec725be03061e2f..1e34af8d9ea6758b107226b09844e9c63a8186f7 100644
--- a/src/facilities/farmyard/food/pFoodCrisis.tw
+++ b/src/facilities/farmyard/food/pFoodCrisis.tw
@@ -4,9 +4,9 @@
 
 <<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event">>
 
-<<if ($PC.skill.trading >= 100) || ($PC.career == "capitalist")>>
+<<if ($PC.skill.trading >= 100) || ($PC.career == "capitalist" || $PC.career == "entrepreneur" || $PC.career == "business kid")>>
 	<<set _price = 2500>>
-<<elseif ($PC.skill.trading >= 50) || ($PC.career == "capitalist")>>
+<<elseif ($PC.skill.trading >= 50) || ($PC.career == "capitalist" || $PC.career == "entrepreneur" || $PC.career == "business kid")>>
 	<<set _price = 5000>>
 <<else>>
 	<<set _price = 10000>>
@@ -32,7 +32,7 @@
 		<<set $rations = 2>>
 		<</replace>>
 	<</link>>
-	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist")>>//This will cost <<print cashFormat(_price*2)>> and some upkeep, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost <<print cashFormat(_price*2)>> and incur significant upkeep costs//<</if>>
+	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist" || $PC.career == "entrepreneur" || $PC.career == "business kid")>>//This will cost <<print cashFormat(_price*2)>> and some upkeep, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost <<print cashFormat(_price*2)>> and incur significant upkeep costs//<</if>>
 	<br><<link "Give them enough to survive on">>
 		<<replace "#result">>
 		You have your own problems to deal with, but that doesn't mean you don't look out for your own. You have a number of rationing stations set up throughout $arcologies[0].name and announce that each citizen is entitled to two full meals a day, just enough for your citizens not to starve. Your citizens are @@.green;happy@@ to hear that their leader is looking out for them.
@@ -41,7 +41,7 @@
 		<<set $rations = 1>>
 		<</replace>>
 	<</link>>
-	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist")>>//This will cost <<print cashFormat(_price)>> and some upkeep, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost <<print cashFormat(_price)>> and incur significant upkeep costs//<</if>>
+	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist" || $PC.career == "entrepreneur" || $PC.career == "business kid")>>//This will cost <<print cashFormat(_price)>> and some upkeep, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost <<print cashFormat(_price)>> and incur significant upkeep costs//<</if>>
 	<br><<link "They can figure their problem out on their own">>
 		<<replace "#result">>
 		You have your own problems to deal with, and you simply can't afford to drop everything and solve theirs at the moment. That you can't take care of your arcology's citizen @@.red;reflects poorly on you.@@
@@ -65,7 +65,7 @@
 		<<set $rations = 4>>
 		<</replace>>
 	<</link>>
-	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist")>>//This will cost <<print cashFormat(_price*2)>> and some upkeep, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost <<print cashFormat(_price*2)>> and incur significant upkeep costs//<</if>>
+	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist" || $PC.career == "entrepreneur" || $PC.career == "business kid")>>//This will cost <<print cashFormat(_price*2)>> and some upkeep, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost <<print cashFormat(_price*2)>> and incur significant upkeep costs//<</if>>
 	<br><<link "Provide them with enough sustenance to survive on too">>
 		<<replace "#result">>
 		As much as you'd like to provide them with all of the food in the world, it simply is not feasible in your current situation. Therefore, you announce to the leaders that you will provide them only enough rations to live off of. The leaders understand, and are @@.green;pleased@@ to hear that you would provide for them at all.
@@ -74,7 +74,7 @@
 		<<set $rations = 3>>
 		<</replace>>
 	<</link>>
-	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist")>>//This will cost <<print cashFormat(_price)>> and some upkeep, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost <<print cashFormat(_price)>> and incur significant upkeep costs//<</if>>
+	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist" || $PC.career == "entrepreneur" || $PC.career == "business kid")>>//This will cost <<print cashFormat(_price)>> and some upkeep, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost <<print cashFormat(_price)>> and incur significant upkeep costs//<</if>>
 	<br><<link "Change your mind about giving out any rations at all">>
 		<<replace "#result">>
 		Having given the people rations at all was a mistake, you think to yourself. You have a great number of your own problems to deal with, and providing rations to everyone that can't afford food is putting an unnecessary strain on your own situation. With this is mind, you tell the leaders that you simply can't help them at this time, and have decided that you can't help anyone with food at all. The citizens are understandably @@.red;angry@@ that you would go back on your word.
@@ -103,7 +103,7 @@
 		<<unset $rations>>
 		<</replace>>
 	<</link>>
-	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist")>>//This will cost an initial investment of <<print cashFormat(_price*5)>>, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost an initial investment of <<print cashFormat(_price*5)>>//<</if>>
+	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist" || $PC.career == "entrepreneur" || $PC.career == "business kid")>>//This will cost an initial investment of <<print cashFormat(_price*5)>>, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost an initial investment of <<print cashFormat(_price*5)>>//<</if>>
 	<br><<link "Politely decline their offer, but continue giving them rations">>
 		<<replace "#result">>
 		Things have been going fairly well for you, but not //that// well — setting up an entirely new place to buy, sell, and store food would no doubt be an expensive undertaking. You tell the citizens that while you can't spare the resources to create a new market at the moment, you will honor your past agreement and continue giving them free rations. The people initially seem a bit disappointed that you don't seem to want to expand $arcologies[0].name, but are ultimately @@.green;glad@@ to hear that you'll continue taking care of them.
@@ -112,7 +112,7 @@
 		<<set $rations = 5>>
 		<</replace>>
 	<</link>>
-	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist")>>//This will cost <<print cashFormat(_price)>> and some upkeep, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost <<print cashFormat(_price)>> and incur significant upkeep costs//<</if>>
+	<<if ($PC.skill.trading >= 50) || ($PC.career == "capitalist" || $PC.career == "entrepreneur" || $PC.career == "business kid")>>//This will cost <<print cashFormat(_price)>> and some upkeep, @@.springgreen;reduced by your knowledge of trading@@//<<else>>//This will cost <<print cashFormat(_price)>> and incur significant upkeep costs//<</if>>
 	<br><<link "Turn down their offer and end rationing completely">>
 		<<replace "#result">>
 		While a new place to buy, sell, and store food in $arcologies[0].name would most likely come in quite handy in the future, you ultimately decide that you simply cannot spare the resources required. In fact, giving rations at all was a costly venture, and after not having seen any sort of return-on-investment, you decide that you are unable to continue giving out rations anymore. Your citizens are @@.red;angry@@ at the fact that you seem not to care about them at all, but that's their problem.
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 013cd21ae6fe333cf3f641f015796fa6cfa8feda..09a3e01e4c6e38bbc5804698c73fc6ee4e7f7862 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -199,17 +199,21 @@ Finishing your work, you lean back for a well-deserved break. Your peace is quic
 		but you just have to reach for your trusty handgun to make the slave step back in fear.
 	<</if>>
 	<<set $mutinery = 0>>
-<<elseif ($PC.career == "mercenary")>>
+<<elseif ($PC.career == "street urchin")>>
+	but you slash at $him with your trusted knife, catching $him off guard and leaving a nasty gash. Before $he recovers $his senses, you make sure to have your knife to $his throat.
+	<<set $mutinery = 0>>
+	/* add scar somewhere */
+<<elseif ($PC.career == "mercenary" || $PC.career == "recruit")>>
 	<<if ($personalArms != 0)>>
 		but you quickly draw the weapon you always keep close at hand, forcing the slave to put $his hand<<if hasBothArms($activeSlave)>>s<</if>> on the back of $his head.
 	<<else>>
 		but you quickly grab $his arm, pull it towards you and lock it in $his back, pushing $him over the desk.
 	<</if>>
 	<<set $mutinery = 0>>
-<<elseif ($PC.career == "escort")>>
+<<elseif ($PC.career == "escort" || PC.career == "prostitute" || PC.career == "child prostitute")>>
 	but you simply give $him a kick to the groin; $he wouldn't be the first person to try this shit on you.
 	<<set $mutinery = 0>>
-<<elseif ($PC.career == "slaver") || $PC.skill.slaving >= 20>>
+<<elseif ($PC.career == "slaver" || $PC.career == "slave overseer") || $PC.skill.slaving >= 20>>
 	but you simply give $him a kick to the groin, a little trick you remember from your early days on how to deal with rebellious slaves.
 	<<set $mutinery = 0>>
 <<elseif ($PC.skill.warfare >= 20)>>
@@ -4548,7 +4552,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h
 			<<else>>
 				hypertrophied
 			<</if>>
-			dick inside your<<if $PC.career == "escort" || $PC.career == "servant">> expert<</if>> mouth. You diligently suck until you feel $him begin to tense up; this is your chance. You clamp down on $his cock while simultaneously punching $him in the balls. $He howls in pain, until you headbutt $him in the stomach and knock the wind out of $him. You quickly pull $him into an arm lock and force $him over your desk. Now that you have $him restrained, it's time $he learned $his place — after you've gotten the taste of the slut out of your mouth, that is.
+			dick inside your<<if $PC.career == "escort" || $PC.career == "prostitute" || $PC.career == "child prostitute" || $PC.career == "servant">> expert<</if>> mouth. You diligently suck until you feel $him begin to tense up; this is your chance. You clamp down on $his cock while simultaneously punching $him in the balls. $He howls in pain, until you headbutt $him in the stomach and knock the wind out of $him. You quickly pull $him into an arm lock and force $him over your desk. Now that you have $him restrained, it's time $he learned $his place — after you've gotten the taste of the slut out of your mouth, that is.
 			<<set $mutinery = 2>>
 
 			<br><br><span id="result2">
diff --git a/src/uncategorized/genericPlotEvents.tw b/src/uncategorized/genericPlotEvents.tw
index 1691e3ac6e974622cd86367c2e64168a90aaa308..dd1f4a93b76b81410d65a68729487acc2a80bf88 100644
--- a/src/uncategorized/genericPlotEvents.tw
+++ b/src/uncategorized/genericPlotEvents.tw
@@ -680,27 +680,37 @@
 		an incredible opportunity,
 	<</if>>
 	is nothing short of astonishing. Other arcologies have taken many years to develop along anything but strictly conservative lines, and you are not the only arcology owner with a background
-	<<if $PC.career === "wealth">>
+	<<if $PC.career === "wealth" || $PC.career === "trust fund" || $PC.career === "rich kid">>
 		of substantial wealth.
-	<<elseif $PC.career === "capitalist">>
+	<<elseif $PC.career === "capitalist" || $PC.career === "entrepreneur" || $PC.career === "business kid">>
 		in business.
 	<<elseif $PC.career === "mercenary">>
 		in the world of private contracting.
+	<<elseif $PC.career === "recruit" || $PC.career === "child soldier">>
+		in the military.
 	<<elseif $PC.career === "slaver">>
 		as a slavebreaker.
+	<<elseif $PC.career === "slave overseer">>
+		as a slave trainer.
+	<<elseif $PC.career === "slave tender">>
+		as a slave tamer.
 	<<elseif $PC.career === "engineer">>
 		in arcology engineering.
-	<<elseif $PC.career === "medicine">>
+	<<elseif $PC.career === "construction" || $PC.career === "worksite helper">>
+		in construction.
+	<<elseif $PC.career === "medicine" || $PC.career === "medical assistant">>
 		in medicine and surgery.
-	<<elseif $PC.career === "celebrity">>
+	<<elseif $PC.career === "nurse">>
+		in medicine.
+	<<elseif $PC.career === "celebrity" || $PC.career === "rising star" || $PC.career === "child star">>
 		in the public sphere.
-	<<elseif $PC.career === "escort">>
+	<<elseif $PC.career === "escort" || $PC.career === "prostitute" || $PC.career === "child prostitute">>
 		involving many personal contacts.
-	<<elseif $PC.career === "servant">>
+	<<elseif $PC.career === "servant" || $PC.career === "handmaiden" || $PC.career === "child servant">>
 		involving the rich and powerful.
-	<<elseif $PC.career === "gang">>
+	<<elseif $PC.career === "gang" || $PC.career === "hoodlum" || $PC.career === "street urchin">>
 		involving gangs.
-	<<elseif $PC.career === "BlackHat">>
+	<<elseif $PC.career === "BlackHat" || $PC.career === "hacker" || $PC.career === "script kiddy">>
 		involving mysterious data breaches.
 	<<else>>
 		in the Free Cities.