diff --git a/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw b/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw
index 1881612dd7dbfb34a0bf3bffb7997ceb8c1ff055..006df17db6a958b2373143cc019a2872f4bee62d 100644
--- a/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw
+++ b/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw
@@ -7,6 +7,7 @@
 	<<goto "Manage Personal Affairs">>
 <</if>>
 
+<<set $customEvalCode = "(" + $customEvalCode + ")">>
 <<if typeof eval($customEvalCode) === "function">>
 	<<run eval($customEvalCode)($tempSlave)>>
 <</if>>
diff --git a/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw b/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw
index 44d10da7e6bed946c1fbf3e971a3c9ae32b2ea9d..108553136987b2c29e178a9937a958a17e9d83fb 100644
--- a/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw
+++ b/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw
@@ -2,6 +2,7 @@
 
 <<set $nextButton = "Continue", $nextLink = "Manage Arcology">>
 
+<<set $customEvalCode = "(" + $customEvalCode + ")">>
 <<if typeof eval($customEvalCode) === "function">>
 	<<run eval($customEvalCode)($arcologies[0])>>
 <</if>>
diff --git a/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw b/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw
index 516a3b61fe99a70f1e146922694e61d49a4b1495..606ec83d74af1630fc4e316c40d2c4658101a03e 100644
--- a/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw
+++ b/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw
@@ -7,6 +7,7 @@
 	<<goto "Slave Interact">>
 <</if>>
 
+<<set $customEvalCode = "(" + $customEvalCode + ")">>
 <<if typeof eval($customEvalCode) === "function">>
 	<<run eval($customEvalCode)($tempSlave)>>
 <</if>>
diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index 68e88d2dbafd4dd775eb0e01a6552641a12cbe2a..42dfc5ffa51ca70edd6e999382c993b174581b91 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -14,19 +14,20 @@
 <<set setup.broodSizeOneShutDown = [0, 13090, 25340, 36760, 47360, 57160, 66030, 73960, 81060, 87400, 93040, 98040, 102440, 106290, 109620, 112460, 114860, 116850, 118470, 119760, 120760, 121520, 122070, 122460, 122720, 122880, 122980, 123030, 123050, 123060, 123060, 123060, 123060, 123060, 123060, 123060, 123060, 123060]>>
 
 /* START Custom Nationalities region filter */
-<<set setup.northamericaNationalities = ["American", "Antiguan", "Aruban", "Bahamian", "Barbadian", "Belizean", "Bermudian", "Canadian", "Costa Rican", "Cuban", "Dominican", "Dominiquais", "Greenlandic", "Grenadian", "Guatemalan", "Haitian", "Honduran", "Jamaican", "Kittitian", "Mexican", "Nicaraguan", "Panamanian", "Puerto Rican", "Saint Lucian", "Salvadoran", "Trinidadian", "Vincentian"]>>
+/* Not currently weighted, but will accept weights */
+<<set setup.northamericaNationalities = {"American": 1, "Antiguan": 1, "Aruban": 1, "Bahamian": 1, "Barbadian": 1, "Belizean": 1, "Bermudian": 1, "Canadian": 1, "Costa Rican": 1, "Cuban": 1, "Dominican": 1, "Dominiquais": 1, "Greenlandic": 1, "Grenadian": 1, "Guatemalan": 1, "Haitian": 1, "Honduran": 1, "Jamaican": 1, "Kittitian": 1, "Mexican": 1, "Nicaraguan": 1, "Panamanian": 1, "Puerto Rican": 1, "Saint Lucian": 1, "Salvadoran": 1, "Trinidadian": 1, "Vincentian": 1}>>
 
-<<set setup.southamericaNationalities = ["Argentinian", "Bolivian", "Brazilian", "Chilean", "Colombian", "Ecuadorian", "French Guianan", "Guyanese", "Paraguayan", "Peruvian", "Surinamese", "Uruguayan", "Venezuelan"]>>
+<<set setup.southamericaNationalities = {"Argentinian": 1, "Bolivian": 1, "Brazilian": 1, "Chilean": 1, "Colombian": 1, "Ecuadorian": 1, "French Guianan": 1, "Guyanese": 1, "Paraguayan": 1, "Peruvian": 1, "Surinamese": 1, "Uruguayan": 1, "Venezuelan": 1}>>
 
-<<set setup.europeNationalities = ["Albanian", "Andorran", "Austrian", "Belarusian", "Belgian", "Bosnian", "British", "Bulgarian", "Catalan", "Croatian", "Czech", "Danish", "Dutch", "Estonian", "Finnish", "French", "German", "Greek", "Hungarian", "Icelandic", "Irish", "Italian", "Kosovan", "Latvian", "a Liechtensteiner", "Lithuanian", "Luxembourgian", "Macedonian", "Maltese", "Moldovan", "Monégasque", "Montenegrin", "Norwegian", "Polish", "Portuguese", "Romanian", "Russian", "Sammarinese", "Scottish", "Serbian", "Slovak", "Slovene", "Spanish", "Swedish", "Swiss", "Ukrainian", "Vatican"]>>
+<<set setup.europeNationalities = {"Albanian": 1, "Andorran": 1, "Austrian": 1, "Belarusian": 1, "Belgian": 1, "Bosnian": 1, "British": 1, "Bulgarian": 1, "Catalan": 1, "Croatian": 1, "Czech": 1, "Danish": 1, "Dutch": 1, "Estonian": 1, "Finnish": 1, "French": 1, "German": 1, "Greek": 1, "Hungarian": 1, "Icelandic": 1, "Irish": 1, "Italian": 1, "Kosovan": 1, "Latvian": 1, "a Liechtensteiner": 1, "Lithuanian": 1, "Luxembourgian": 1, "Macedonian": 1, "Maltese": 1, "Moldovan": 1, "Monégasque": 1, "Montenegrin": 1, "Norwegian": 1, "Polish": 1, "Portuguese": 1, "Romanian": 1, "Russian": 1, "Sammarinese": 1, "Scottish": 1, "Serbian": 1, "Slovak": 1, "Slovene": 1, "Spanish": 1, "Swedish": 1, "Swiss": 1, "Ukrainian": 1, "Vatican": 1}>>
 
-<<set setup.asiaNationalities = ["Bangladeshi", "Bhutanese", "Bruneian", "Burmese", "Cambodian", "Chinese", "East Timorese", "Filipina", "Indian", "Indonesian", "Japanese", "Kazakh", "Korean", "Kyrgyz", "Laotian", "Malaysian", "Maldivian", "Mongolian", "Nepalese", "Pakistani", "Singaporean", "Sri Lankan", "Taiwanese", "Tajik", "Thai", "Tibetan", "Turkmen", "Uzbek", "Vietnamese"]>>
+<<set setup.asiaNationalities = {"Bangladeshi": 1, "Bhutanese": 1, "Bruneian": 1, "Burmese": 1, "Cambodian": 1, "Chinese": 1, "East Timorese": 1, "Filipina": 1, "Indian": 1, "Indonesian": 1, "Japanese": 1, "Kazakh": 1, "Korean": 1, "Kyrgyz": 1, "Laotian": 1, "Malaysian": 1, "Maldivian": 1, "Mongolian": 1, "Nepalese": 1, "Pakistani": 1, "Singaporean": 1, "Sri Lankan": 1, "Taiwanese": 1, "Tajik": 1, "Thai": 1, "Tibetan": 1, "Turkmen": 1, "Uzbek": 1, "Vietnamese": 1}>>
 
-<<set setup.middleeastNationalities = ["Afghan", "Armenian", "Azerbaijani", "Bahraini", "Cypriot", "Egyptian", "Emirati", "Georgian", "Iranian", "Iraqi", "Israeli", "Jordanian", "Kurdish", "Kuwaiti", "Lebanese", "Omani", "Palestinian", "Qatari", "Saudi", "Syrian", "Turkish", "Yemeni"]>>
+<<set setup.middleeastNationalities = {"Afghan": 1, "Armenian": 1, "Azerbaijani": 1, "Bahraini": 1, "Cypriot": 1, "Egyptian": 1, "Emirati": 1, "Georgian": 1, "Iranian": 1, "Iraqi": 1, "Israeli": 1, "Jordanian": 1, "Kurdish": 1, "Kuwaiti": 1, "Lebanese": 1, "Omani": 1, "Palestinian": 1, "Qatari": 1, "Saudi": 1, "Syrian": 1, "Turkish": 1, "Yemeni": 1}>>
 
-<<set setup.africaNationalities = ["Algerian", "Angolan", "Beninese", "Bissau-Guinean", "Burkinabé", "Burundian", "Cameroonian", "Cape Verdean", "Central African", "Chadian", "Comorian", "Congolese", "Djiboutian", "Equatoguinean", "Eritrean", "Ethiopian", "Gabonese", "Gambian", "Ghanan", "Guinean", "Ivorian", "Kenyan", "Liberian", "Libyan", "Malagasy", "Malawian", "Malian", "Mauritanian", "Mauritian", "Moroccan", "Mosotho", "Motswana", "Mozambican", "Namibian", "Nigerian", "Nigerien", "Rwandan", "Sahrawi", "São Toméan", "Senegalese", "Seychellois", "Sierra Leonean", "Somali", "South African", "South Sudanese", "Sudanese", "Swazi", "Tanzanian", "Togolese", "Tunisian", "Ugandan", "Zairian", "Zambian", "Zimbabwean"]>>
+<<set setup.africaNationalities = {"Algerian": 1, "Angolan": 1, "Beninese": 1, "Bissau-Guinean": 1, "Burkinabé": 1, "Burundian": 1, "Cameroonian": 1, "Cape Verdean": 1, "Central African": 1, "Chadian": 1, "Comorian": 1, "Congolese": 1, "Djiboutian": 1, "Equatoguinean": 1, "Eritrean": 1, "Ethiopian": 1, "Gabonese": 1, "Gambian": 1, "Ghanan": 1, "Guinean": 1, "Ivorian": 1, "Kenyan": 1, "Liberian": 1, "Libyan": 1, "Malagasy": 1, "Malawian": 1, "Malian": 1, "Mauritanian": 1, "Mauritian": 1, "Moroccan": 1, "Mosotho": 1, "Motswana": 1, "Mozambican": 1, "Namibian": 1, "Nigerian": 1, "Nigerien": 1, "Rwandan": 1, "Sahrawi": 1, "São Toméan": 1, "Senegalese": 1, "Seychellois": 1, "Sierra Leonean": 1, "Somali": 1, "South African": 1, "South Sudanese": 1, "Sudanese": 1, "Swazi": 1, "Tanzanian": 1, "Togolese": 1, "Tunisian": 1, "Ugandan": 1, "Zairian": 1, "Zambian": 1, "Zimbabwean": 1}>>
 
-<<set setup.australiaNationalities = ["Australian", "a Cook Islander", "Fijian", "French Polynesian", "Guamanian", "I-Kiribati", "Marshallese", "Micronesian", "Nauruan", "New Caledonian", "a New Zealander", "Ni-Vanuatu", "Niuean", "Palauan", "Papua New Guinean", "Samoan", "a Solomon Islander", "Tongan", "Tuvaluan"]>>
+<<set setup.australiaNationalities = {"Australian": 1, "a Cook Islander": 1, "Fijian": 1, "French Polynesian": 1, "Guamanian": 1, "I-Kiribati": 1, "Marshallese": 1, "Micronesian": 1, "Nauruan": 1, "New Caledonian": 1, "a New Zealander": 1, "Ni-Vanuatu": 1, "Niuean": 1, "Palauan": 1, "Papua New Guinean": 1, "Samoan": 1, "a Solomon Islander": 1, "Tongan": 1, "Tuvaluan": 1}>>
 
 /* Nationalities based on $continent value. Note that $continent can be undefined! */
 <<set setup.nationalityPoolSelector = {
diff --git a/src/uncategorized/storyCaption.tw b/src/uncategorized/storyCaption.tw
index bd8e53d38bf4c517f220938e993547973a80dbf1..8ece63dc1d12682c3ad2d73bb92481a484979ac7 100644
--- a/src/uncategorized/storyCaption.tw
+++ b/src/uncategorized/storyCaption.tw
@@ -632,7 +632,7 @@
 <</if>>
 	<br><br>
 <<if ($debugMode == 1)>>
-	Debugging
+	Debugging Tools
 	<br>
 	<<link "Display Variables">><<checkvars>><</link>>
 	<br>
@@ -642,6 +642,16 @@
 	<</link>>
 	<br>
 	<<link "Bug Report">><<bugreport>><</link>>
+	<br>
+	<<textarea "$customEvalCode" "">>
+	<<link "Run Custom Function">>
+		<<set $customEvalCode = "(" + $customEvalCode + ")">>
+		<<if typeof eval($customEvalCode) === "function">>
+			<<run eval($customEvalCode)()>>
+		<</if>>
+		<<unset $customEvalCode>>
+		<<goto _Pass>>
+	<</link>>
 <</if>>
 
 <</nobr>>