diff --git a/src/SpecialForce/SpecialForce.js b/src/SpecialForce/SpecialForce.js
index 59ef13fde77a521845e77f95f4013de7c76d40a0..fad7cbf690897af48458661a2da9465225ba3e34 100644
--- a/src/SpecialForce/SpecialForce.js
+++ b/src/SpecialForce/SpecialForce.js
@@ -1,5 +1,5 @@
 // V=SugarCube.State.variables, T=SugarCube.State.temporary;	TODO: remove this line?
-window.Main = function () {
+window.Main = function() {
 	const V = State.variables;
 	V.SF = {
 		Toggle: V.SF.Toggle,
@@ -24,7 +24,7 @@ window.Main = function () {
 	V.arcologies[0].SFRaid = 1;
 	V.arcologies[0].SFRaidTarget = -1;
 };
-window.Squad = function () {
+window.Squad = function() {
 	const V = State.variables;
 	V.SF.Squad = {
 		Troops: 40,
@@ -50,7 +50,7 @@ window.Squad = function () {
 		HAT: 0
 	};
 };
-window.Colonel = function () {
+window.Colonel = function() {
 	const V = State.variables;
 	V.SF.Colonel = {
 		Core: "",
@@ -59,7 +59,7 @@ window.Colonel = function () {
 		Status: 0
 	};
 };
-window.MercCon = function () {
+window.MercCon = function() {
 	const V = State.variables;
 	V.SF.MercCon = {
 		History: 0,
@@ -72,7 +72,7 @@ window.MercCon = function () {
 		TotalMercs: 0
 	};
 };
-window.Facility = function () {
+window.Facility = function() {
 	const V = State.variables;
 	V.SF.Facility = {
 		Toggle: 0,
@@ -89,13 +89,13 @@ window.Facility = function () {
 	};
 };
 
-window.SFInit = function () {
+window.SFInit = function() {
 	Main();
 	Squad();
 	Colonel();
 };
 
-window.SFBC = function () {
+window.SFBC = function() {
 	const V = State.variables;
 
 	function InitClean() {
@@ -346,7 +346,7 @@ window.SFBC = function () {
 	};
 };
 
-window.SFReport = function () {
+window.SFReport = function() {
 	"use strict";
 	const V = State.variables,
 		T = State.temporary,
@@ -701,7 +701,7 @@ window.SFReport = function () {
 	return r;
 };
 
-window.Count = function () {
+window.Count = function() {
 	const V = State.variables,
 		T = State.temporary,
 		C = Math.clamp,
@@ -809,12 +809,12 @@ window.Count = function () {
 	if (V.SF.MercCon.CanAttend !== -2 || V.SF.MercCon.CanAttend !== -3) V.SF.MercCon.CanAttend = -1;
 };
 
-window.SFNameCapsCheck = function () {
+window.SFNameCapsCheck = function() {
 	const V = State.variables;
 	if (V.SF.Lower !== "the special force") V.SF.Caps = V.SF.Lower.replace("the ", "The ");
 };
 
-window.SFUpgradeCost = function (cost, unit) {
+window.SFUpgradeCost = function(cost, unit) {
 	"use strict";
 	const V = State.variables,
 		T = State.temporary,
@@ -825,7 +825,7 @@ window.SFUpgradeCost = function (cost, unit) {
 	return Math.ceil(value);
 };
 
-window.progress = function (x, max) {
+window.progress = function(x, max) {
 	"use strict";
 	let out = `⏐`,
 		z, i;
@@ -851,7 +851,7 @@ window.progress = function (x, max) {
 	return `${out}`;
 };
 
-window.SFC = function () {
+window.SFC = function() {
 	const V = State.variables;
 	if (V.SF.MercCon.CanAttend === -1) {
 		return `The Colonel`;
@@ -863,7 +863,7 @@ window.SFC = function () {
 	}
 };
 
-window.SFCR = function () {
+window.SFCR = function() {
 	const V = State.variables,
 		C = V.SF.Colonel;
 	if (C.Status <= 19) {
@@ -875,7 +875,7 @@ window.SFCR = function () {
 	}
 };
 
-window.Interactions = function () {
+window.Interactions = function() {
 	"use strict";
 	let choice = ``,
 		time = ``;
@@ -909,7 +909,7 @@ window.Interactions = function () {
 	return `${time} <br>${choice}`;
 };
 
-window.BadOutcome = function () {
+window.BadOutcome = function() {
 	"use strict";
 	const V = State.variables;
 	let r = ``;
@@ -975,7 +975,7 @@ window.BadOutcome = function () {
 	return r;
 };
 
-window.UnitText = function (input) {
+window.UnitText = function(input) {
 	"use strict";
 	const V = State.variables,
 		S = V.SF.Squad;
diff --git a/src/art/artJS.js b/src/art/artJS.js
index 7a18eab3ac7b2a128b5a4115e25ac16e962af752..eea6ebf24784f35bc9b2a4f7d037c3e5c915a9b8 100644
--- a/src/art/artJS.js
+++ b/src/art/artJS.js
@@ -13,6 +13,9 @@ UIDisplay (optional, only used by legacy art): icon UI Display for vector art, 1
 */
 /**
  * @param {App.Entity.SlaveState} artSlave
+ * @param {number} artSize
+ * @param {number} UIDisplay
+ * @returns {object}	// TODO: I think
  */
 window.SlaveArt = function(artSlave, artSize, UIDisplay) {
 	const imageChoice = State.variables.imageChoice;
@@ -100,6 +103,8 @@ window.ArtControlRendered = function ArtControlRendered(slave, sizePlacement) {
 
 /**
  * @param {App.Entity.SlaveState} slave
+ * @param {number} imageSize
+ * @returns {string}
  */
 window.CustomArt = function(slave, imageSize) {
 	const fileType = slave.custom.image.format || "png";
@@ -120,16 +125,16 @@ window.CustomArt = function(slave, imageSize) {
 /*
 This takes a textual hair color description and tries to guess the appropriate HTML compliant color code.
 Color should be a color name, but can also be a string describing hair color.
-eyes can be nearly anything, it only indicates that the function is being used for eye color instead of hair color.
+eyes can be nearly anything, it only indicates that the functionis being used for eye color instead of hair color.
 This code's working is described to the user in the Encyclopedia, chapter "Lore", section "Dyes".
 */
 
-window.extractColor = function (color, eyes) {
+window.extractColor = function(color, eyes) {
 	/*
 	these are color names known and used in FreeCities
 	attributed color names are at the front of the array
 	*/
-	var FCname2HTMLarray = [
+	let FCname2HTMLarray = [
 		["amber", "#ffbf00"],
 		["auburn", "#a53f2a"],
 		["black", "#171717"],
@@ -171,11 +176,11 @@ window.extractColor = function (color, eyes) {
 	];
 
 	/* these are HTML color names supported by most browsers */
-	var HTMLstandardColors = ["aliceblue", "antiquewhite", "aqua", "aquamarine", "azure", "beige", "bisque", "black", "blanchedalmond", "blue", "blueviolet", "brown", "burlywood", "cadetblue", "chartreuse", "chocolate", "coral", "cornflowerblue", "cornsilk", "crimson", "cyan", "darkblue", "darkcyan", "darkgoldenrod", "darkgray", "darkgrey", "darkgreen", "darkkhaki", "darkmagenta", "darkolivegreen", "darkorange", "darkorchid", "darkred", "darksalmon", "darkseagreen", "darkslateblue", "darkslategray", "darkslategrey", "darkturquoise", "darkviolet", "deeppink", "deepskyblue", "dimgray", "dimgrey", "dodgerblue", "firebrick", "floralwhite", "forestgreen", "fuchsia", "gainsboro", "ghostwhite", "gold", "goldenrod", "gray", "grey", "green", "greenyellow", "honeydew", "hotpink", "indianred", "indigo", "ivory", "khaki", "lavender", "lavenderblush", "lawngreen", "lemonchiffon", "lightblue", "lightcoral", "lightcyan", "lightgoldenrodyellow", "lightgray", "lightgrey", "lightgreen", "lightpink", "lightsalmon", "lightseagreen", "lightskyblue", "lightslategray", "lightslategrey", "lightsteelblue", "lightyellow", "lime", "limegreen", "linen", "magenta", "maroon", "mediumaquamarine", "mediumblue", "mediumorchid", "mediumpurple", "mediumseagreen", "mediumslateblue", "mediumspringgreen", "mediumturquoise", "mediumvioletred", "midnightblue", "mintcream", "mistyrose", "moccasin", "navajowhite", "navy", "oldlace", "olive", "olivedrab", "orange", "orangered", "orchid", "palegoldenrod", "palegreen", "paleturquoise", "palevioletred", "papayawhip", "peachpuff", "peru", "pink", "plum", "powderblue", "purple", "rebeccapurple", "red", "rosybrown", "royalblue", "saddlebrown", "salmon", "sandybrown", "seagreen", "seashell", "sienna", "silver", "skyblue", "slateblue", "slategray", "slategrey", "snow", "springgreen", "steelblue", "tan", "teal", "thistle", "tomato", "turquoise", "violet", "wheat", "white", "whitesmoke", "yellow", "yellowgreen"];
+	let HTMLstandardColors = ["aliceblue", "antiquewhite", "aqua", "aquamarine", "azure", "beige", "bisque", "black", "blanchedalmond", "blue", "blueviolet", "brown", "burlywood", "cadetblue", "chartreuse", "chocolate", "coral", "cornflowerblue", "cornsilk", "crimson", "cyan", "darkblue", "darkcyan", "darkgoldenrod", "darkgray", "darkgrey", "darkgreen", "darkkhaki", "darkmagenta", "darkolivegreen", "darkorange", "darkorchid", "darkred", "darksalmon", "darkseagreen", "darkslateblue", "darkslategray", "darkslategrey", "darkturquoise", "darkviolet", "deeppink", "deepskyblue", "dimgray", "dimgrey", "dodgerblue", "firebrick", "floralwhite", "forestgreen", "fuchsia", "gainsboro", "ghostwhite", "gold", "goldenrod", "gray", "grey", "green", "greenyellow", "honeydew", "hotpink", "indianred", "indigo", "ivory", "khaki", "lavender", "lavenderblush", "lawngreen", "lemonchiffon", "lightblue", "lightcoral", "lightcyan", "lightgoldenrodyellow", "lightgray", "lightgrey", "lightgreen", "lightpink", "lightsalmon", "lightseagreen", "lightskyblue", "lightslategray", "lightslategrey", "lightsteelblue", "lightyellow", "lime", "limegreen", "linen", "magenta", "maroon", "mediumaquamarine", "mediumblue", "mediumorchid", "mediumpurple", "mediumseagreen", "mediumslateblue", "mediumspringgreen", "mediumturquoise", "mediumvioletred", "midnightblue", "mintcream", "mistyrose", "moccasin", "navajowhite", "navy", "oldlace", "olive", "olivedrab", "orange", "orangered", "orchid", "palegoldenrod", "palegreen", "paleturquoise", "palevioletred", "papayawhip", "peachpuff", "peru", "pink", "plum", "powderblue", "purple", "rebeccapurple", "red", "rosybrown", "royalblue", "saddlebrown", "salmon", "sandybrown", "seagreen", "seashell", "sienna", "silver", "skyblue", "slateblue", "slategray", "slategrey", "snow", "springgreen", "steelblue", "tan", "teal", "thistle", "tomato", "turquoise", "violet", "wheat", "white", "whitesmoke", "yellow", "yellowgreen"];
 
-	var FCnames = new Map(FCname2HTMLarray);
+	let FCnames = new Map(FCname2HTMLarray);
 	color = color.toLowerCase(); /* normalization: lowercase color name */
-	var colorCode = FCnames.get(color); /* look up in FreeCities color names */
+	let colorCode = FCnames.get(color); /* look up in FreeCities color names */
 	if (!colorCode) { /* not a FreeCities color name*/
 		if (HTMLstandardColors.includes(color) || color.match(/^#([0-9a-f]{3}){1,2}$/) !== null) {
 			colorCode = color; /* is a HTML color name or value, use it directly */
@@ -184,23 +189,23 @@ window.extractColor = function (color, eyes) {
 			is not even a HTML color name. color probably is a description.
 			look for anything resembling a valid color name within the description.
 			*/
-			var colorNoSpaces = color.replace(/\s+/g, ''); /* remove all spaces from description */
-			var FCkeys = Array.from(FCnames.keys());
-			var colorCodes = [
-				FCnames.get(FCkeys.find(function (e) {
+			let colorNoSpaces = color.replace(/\s+/g, ''); /* remove all spaces from description */
+			let FCkeys = Array.from(FCnames.keys());
+			let colorCodes = [
+				FCnames.get(FCkeys.find(function(e) {
 					return color.startsWith(e);
 				})),
-				HTMLstandardColors.find(function (e) {
+				HTMLstandardColors.find(function(e) {
 					return colorNoSpaces.startsWith(e);
 				}),
-				FCnames.get(FCkeys.find(function (e) {
+				FCnames.get(FCkeys.find(function(e) {
 					return color.includes(e);
 				})),
-				HTMLstandardColors.find(function (e) {
+				HTMLstandardColors.find(function(e) {
 					return colorNoSpaces.includes(e);
 				})
 			];
-			colorCode = colorCodes.find(function (e) {
+			colorCode = colorCodes.find(function(e) {
 				return e;
 			}); /* picks the first successful guess */
 		}
@@ -215,7 +220,7 @@ window.extractColor = function (color, eyes) {
 	return colorCode;
 };
 
-window.clothing2artSuffix = function (v) {
+window.clothing2artSuffix = function(v) {
 	if (v === "restrictive latex") {
 		v = "latex";
 	} /* universal "special case": latex art is actually "restrictive latex" TODO: align name in vector source */
@@ -223,7 +228,7 @@ window.clothing2artSuffix = function (v) {
 		.replace(/ ?(outfit|clothing) ?/, "") /* remove "outfit" and "clothing" (redundant) */
 		.replace("-", "") /* remove minus character */
 		.replace(/\w\S*/g,
-			function (txt) {
+			function(txt) {
 				return txt.charAt(0).toUpperCase() +
 					txt.substr(1).toLowerCase();
 			}
@@ -231,7 +236,7 @@ window.clothing2artSuffix = function (v) {
 		.replace(/\W/g, ""); /* remove remaining whitespace */
 };
 
-window.skinColorCatcher = function (artSlave) {
+window.skinColorCatcher = function(artSlave) {
 	let colorSlave = {
 		skinColor: "#e8b693",
 		areolaColor: "#d76b93",
diff --git a/src/art/vector/VectorArtJS.js b/src/art/vector/VectorArtJS.js
index 9e36e44382e8f04e8c0b36153142fadc15dac450..8d2c8651648754dcef4cb0c816f67a70c63de331 100644
--- a/src/art/vector/VectorArtJS.js
+++ b/src/art/vector/VectorArtJS.js
@@ -1,4 +1,4 @@
-window.VectorArt = (function () {
+window.VectorArt = (function() {
 	"use strict";
 	let V, T, slave;
 	let r;
diff --git a/src/debugging/debugJS.js b/src/debugging/debugJS.js
index b2b0f014eb2dcf625ee9bb0e379bff279968afc0..86ca5dd2d9c83f88edf02c4049205e3a3e2a7379 100644
--- a/src/debugging/debugJS.js
+++ b/src/debugging/debugJS.js
@@ -5,7 +5,7 @@ Given an object, this will return an array where for each property of the origin
 {variable: property, oldVal: _oldDiff.property, newVal: _newDiff.property}
 */
 window.generateDiffArray = function generateDiffArray(obj) {
-	var diffArray = Object.keys(obj).map(function(key) {
+	let diffArray = Object.keys(obj).map(function(key) {
 		return {variable: key, oldVal: State.temporary.oldDiff[key], newVal: State.temporary.newDiff[key]};
 	});
 	return diffArray;
@@ -16,7 +16,7 @@ Shamelessly copied from https://codereview.stackexchange.com/a/11580
 Finds and returns the difference between two objects. Potentially will have arbitrary nestings of objects.
 */
 window.difference = function difference(o1, o2) {
-	var k, kDiff, diff = {};
+	let k, kDiff, diff = {};
 	for (k in o1) {
 		if (!o1.hasOwnProperty(k)) {
 		} else if (typeof o1[k] !== 'object' || typeof o2[k] !== 'object') {
@@ -49,17 +49,17 @@ Flattens an object while concatenating property names.
 For example {id: {number: 4, name: "A"}} --> {id.number: 4, id.name: "A"}
 */
 window.diffFlatten = function diffFlatten(data) {
-	var result = {};
-	function recurse (cur, prop) {
+	let result = {};
+	function recurse(cur, prop) {
 		if (Object(cur) !== cur) {
 			result[prop] = cur;
 		} else if (Array.isArray(cur)) {
-			for (var i=0, l=cur.length; i<l; i++)
+			for (let i=0, l=cur.length; i<l; i++)
 				recurse(cur[i], prop + "[" + i + "]");
 			if (l === 0)
 				result[prop] = [];
 		} else {
-			var isEmpty = true;
+			let isEmpty = true;
 			for (let p in cur) {
 				isEmpty = false;
 				recurse(cur[p], prop ? prop+"."+p : p);
@@ -77,7 +77,7 @@ Finds all NaN values anywhere in the State.variables object. Returns an array wi
 */
 window.findNaN = function findNan() {
 	const flatV = diffFlatten(State.variables);
-	var result = [];
+	let result = [];
 	for (let key in flatV) {
 		if (Number.isNaN(flatV[key])) {
 			result.push('$$'+key); /* double dollar signs to escape sugarcube markup */
@@ -89,12 +89,12 @@ window.findNaN = function findNan() {
 /**
  * Dumps game save as a readable JSON to the browser for saving in a file
  */
-App.Debug.dumpGameState = function () {
+App.Debug.dumpGameState = function() {
 	// helper to download a blob
 	// borrowed from stackexchange
 	function downloadToFile(content, fileName, contentType) {
-		var a = document.createElement("a");
-		var file = new Blob([content], {
+		let a = document.createElement("a");
+		let file = new Blob([content], {
 			type: contentType
 		});
 		a.href = URL.createObjectURL(file);
@@ -105,7 +105,7 @@ App.Debug.dumpGameState = function () {
 	// we will replace SugarCube onSave handler
 	let oldHandler = SugarCube.Config.saves.onSave;
 	try {
-		SugarCube.Config.saves.onSave = function (save) {
+		SugarCube.Config.saves.onSave = function(save) {
 			if (oldHandler) {
 				oldHandler(save);
 			}
diff --git a/src/endWeek/saChoosesOwnClothes.js b/src/endWeek/saChoosesOwnClothes.js
index 4c8ba1d7e47d5327edeab2a7140b4587acb5daec..6411730f5ac9f01fc1b7b6845122abc84a15865b 100644
--- a/src/endWeek/saChoosesOwnClothes.js
+++ b/src/endWeek/saChoosesOwnClothes.js
@@ -1,4 +1,4 @@
-window.saChoosesOwnClothes = (function () {
+window.saChoosesOwnClothes = (function() {
 	"use strict";
 	let V;
 	let player;
diff --git a/src/endWeek/saPorn.js b/src/endWeek/saPorn.js
index 38897cbc19d93217604249612d27fe684bdede90..997922a4838ca34765b4f2d82fc49fffedda8a65 100644
--- a/src/endWeek/saPorn.js
+++ b/src/endWeek/saPorn.js
@@ -4,7 +4,7 @@
  * @param {App.Entity.SlaveState} slave
  * @returns {object}
  */
-window.getHighestPorn = function (slave) {
+window.getHighestPorn = function(slave) {
 	let max = {
 		value: 0,
 		type: "none"
diff --git a/src/endWeek/saServeThePublic.js b/src/endWeek/saServeThePublic.js
index 3950c2f55c1e73f1112d4c159e8343febc657a21..af4c769616398942f4218371bbf115375351ca82 100644
--- a/src/endWeek/saServeThePublic.js
+++ b/src/endWeek/saServeThePublic.js
@@ -573,7 +573,7 @@ window.saServeThePublic = (function saServeThePublic() {
 			if (totalRelatives(slave) > 0) {
 				let children = [];
 				children = V.slaves.filter(
-					function (s) {
+					function(s) {
 						return ((slave.ID === s.father || slave.ID === s.mother || s.ID === slave.father || s.ID === slave.mother || areSisters(slave, s) > 0) && (s.assignment === slave.assignment));
 					}
 				);
diff --git a/src/facilities/nursery/childSummary.tw b/src/facilities/nursery/childSummary.tw
index df36e3788188cb1d9f73b786eb9763f4a958e20d..35f8efbff88e59a4646bb1cb06c6631e30e7a496 100644
--- a/src/facilities/nursery/childSummary.tw
+++ b/src/facilities/nursery/childSummary.tw
@@ -81,7 +81,7 @@
 					<</for>>
 				</div>
 				<script>
-					$("[data-quick-index]").click(function () {
+					$("[data-quick-index]").click(function() {
 							var $this = $(this), which = $this.attr('data-quick-index');
 							var $quick = $('div#list_index' + which);
 							$quick.toggleClass("hidden");
diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index 8a786260645e53536d191a0d6faa11f79a1a2b3f..cf6b022a0de7cbd57aa33c7183710ad9963adeb7 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -1467,7 +1467,7 @@ You should have received a copy of the GNU General Public License along with thi
 	menials: 0,
 }>>
 <<set $prosthetics = {}>>
-<<run setup.prostheticIDs.forEach(function (id) {
+<<run setup.prostheticIDs.forEach(function(id) {
 	$prosthetics[id] = {amount: 0, research: 0};
 })>>
 
diff --git a/src/interaction/main/mainLinks.js b/src/interaction/main/mainLinks.js
index 92e2ea9c5c8a6d91b48cb2aabafac3519dda58d8..a8829ab1bde7a1835a5a6f9cd76fcf2c0d205144 100644
--- a/src/interaction/main/mainLinks.js
+++ b/src/interaction/main/mainLinks.js
@@ -1,8 +1,8 @@
 /* OPEN MAIN */
-App.UI.View.MainLinks = function () {
+App.UI.View.MainLinks = function() {
 	"use strict";
 	const V = State.variables;
-	const PA = Array.isArray(V.personalAttention) ? V.personalAttention.map(function (x) {
+	const PA = Array.isArray(V.personalAttention) ? V.personalAttention.map(function(x) {
 		return getSlave(x.ID);
 	}) : [];
 	let r = ``;
diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js
index d29c064c78fd8ea3b9e1fba76f5db1ca95a49c4e..87fc385c21221ad8e8de896f115295ce6f963cc9 100644
--- a/src/js/DefaultRules.js
+++ b/src/js/DefaultRules.js
@@ -1,6 +1,6 @@
 // this code applies RA rules onto slaves
 
-window.DefaultRules = (function () {
+window.DefaultRules = (function() {
 	"use strict";
 	let V;
 	let r;
@@ -1383,7 +1383,7 @@ window.DefaultRules = (function () {
 				}
 			}
 			if (_priorities.length > 1) {
-				_priorities = _priorities.sort(function (a, b) {
+				_priorities = _priorities.sort(function(a, b) {
 					if (a.weight > b.weight) {
 						return -1;
 					}
diff --git a/src/js/PenthouseNaming.js b/src/js/PenthouseNaming.js
index 95149c8ebaac5e70f7541b531e7176c5f79b9f0d..6e85f6ab59a4e61cc0f9708a1031132165704503 100644
--- a/src/js/PenthouseNaming.js
+++ b/src/js/PenthouseNaming.js
@@ -28,7 +28,7 @@ window.ServantQuartersUIName = function() {
 /**
  * @return {string}
  */
-window.SpaUIName = function () {
+window.SpaUIName = function() {
 	const V = State.variables;
 	const name = (V.spaNameCaps === "The Spa") ? "Spa" : V.spaNameCaps;
 	return `<<link "${name}""Spa">><</link>> `;
diff --git a/src/js/accordianJS.js b/src/js/accordianJS.js
index c07ad7dfdb125daca881dd7d78e784b548a055eb..34158aa86d151a03748c25af995f13ab36e4994d 100644
--- a/src/js/accordianJS.js
+++ b/src/js/accordianJS.js
@@ -13,20 +13,20 @@
  * 000-250-006 03092017
  */
 
-postdisplay["doAccordionSet"] = function () {
+postdisplay["doAccordionSet"] = function() {
 	if (variables().useAccordion === 1) {
 		Array.prototype.slice.call(document.querySelectorAll(".macro-include"))
-			.forEach(function (element) {
+			.forEach(function(element) {
 				element.classList.add("accHidden");
 			});
 	}
 };
 
-postdisplay["doAccordion"] = function () {
+postdisplay["doAccordion"] = function() {
 	const acc = document.getElementsByClassName("accordion");
 
 	for (let i = 0; i < acc.length; i += 1) {
-		acc[i].onclick = function () {
+		acc[i].onclick = function() {
 			this.classList.toggle("active");
 			let panel = this.nextElementSibling;
 			if (panel === null || panel === undefined) {
diff --git a/src/js/assayJS.js b/src/js/assayJS.js
index 8abeeecc0ba7ad1d6c30e814f7c2fe68dae661da..b259946ef550c3872138a183a664a6193c1019f8 100644
--- a/src/js/assayJS.js
+++ b/src/js/assayJS.js
@@ -187,7 +187,7 @@ window.newSlave = function newSlave(slave) {
 		V.genePool.push(slave);
 		/* Store non-albino stats in genePool */
 		if (slave.geneticQuirks.albinism === 2) {
-			const albInd = V.genePool.findIndex(function (s) {
+			const albInd = V.genePool.findIndex(function(s) {
 				return s.ID === slave.ID;
 			});
 			V.genePool[albInd].origSkin = slave.albinismOverride.skin;
@@ -199,7 +199,7 @@ window.newSlave = function newSlave(slave) {
 			slave.albinismOverride = 0;
 		}
 	} else {
-		if (V.genePool.findIndex(function (s) {
+		if (V.genePool.findIndex(function(s) {
 				return s.ID === slave.ID;
 			}) === -1) {
 			V.genePool.push(slave);
@@ -332,7 +332,7 @@ window.getSlave = function getSlave(ID) {
 };
 window.getChild = function getChild(ID) {
 	const V = State.variables;
-	return V.cribs.find(function (s) {
+	return V.cribs.find(function(s) {
 		return s.ID === ID;
 	});
 };
diff --git a/src/js/assignJS.js b/src/js/assignJS.js
index 49cbd71805f0cba4ed8218f2bfadf1d2b31827f4..c80085fbaaf27ee76d663c529f51d25b11ac1bf2 100644
--- a/src/js/assignJS.js
+++ b/src/js/assignJS.js
@@ -303,7 +303,7 @@ window.assignJob = function assignJob(slave, job) {
 	}
 
 	if (slave.assignmentVisible === 0 && Array.isArray(V.personalAttention)) {
-		const awi = V.personalAttention.findIndex(function (s) {
+		const awi = V.personalAttention.findIndex(function(s) {
 			return s.ID === slave.ID;
 		});
 		if (awi !== -1) {
@@ -491,7 +491,7 @@ window.removeJob = function removeJob(slave, assignment) {
 			case "be your agent":
 			case "live with your agent":
 				slave.assignment = "rest";
-				const _leaderIndex = V.leaders.findIndex(function (x) {
+				const _leaderIndex = V.leaders.findIndex(function(x) {
 					return x.ID === slave.ID;
 				});
 				if (_leaderIndex !== -1)
@@ -499,7 +499,7 @@ window.removeJob = function removeJob(slave, assignment) {
 
 				if (slave.relationshipTarget > 0) {
 					/* following code assumes there can be at most one companion */
-					const _lover = V.slaves.findIndex(function (s) {
+					const _lover = V.slaves.findIndex(function(s) {
 						return haveRelationshipP(s, slave) && s.assignment === "live with your agent";
 					});
 					if (_lover !== -1) {
@@ -544,7 +544,7 @@ window.resetJobIDArray = function resetJobIDArray() {
 		"be a subordinate slave": []
 	};
 
-	slaves.forEach(function (slave) {
+	slaves.forEach(function(slave) {
 		if (JobIDArray.hasOwnProperty(slave.assignment))
 			JobIDArray[slave.assignment].push(slave.ID);
 	});
@@ -555,7 +555,7 @@ window.resetJobIDArray = function resetJobIDArray() {
 /**
  * Generates string with links for changing slave assignment
  */
-App.UI.jobLinks = function () {
+App.UI.jobLinks = function() {
 	"use strict";
 	const facilitiesOrder = [
 		/* sorted by improvement before work, within improvement in order of progress, within work alphabetical for facilities*/
@@ -623,7 +623,7 @@ App.UI.jobLinks = function () {
 }();
 
 App.UI.SlaveInteract = {
-	fucktoyPref: function () {
+	fucktoyPref: function() {
 		let elem = jQuery('#fucktoypref');
 		elem.empty();
 		let res = "";
@@ -658,7 +658,7 @@ App.UI.SlaveInteract = {
 		elem.append(ins);
 	},
 
-	assignmentBlock: function (blockId) {
+	assignmentBlock: function(blockId) {
 		let res = App.UI.jobLinks.assignments(-1, undefined, () => {
 			return `<<replace "#assign">>$activeSlave.assignment<</replace>><<replace "#${blockId}">><<= App.UI.SlaveInteract.assignmentBlock("${blockId}")>><<= App.UI.SlaveInteract.fucktoyPref()>><</replace>>`;
 		});
diff --git a/src/js/colorModeJS.js b/src/js/colorModeJS.js
index bc6d8d7630af8ec4ae6847b68196c30d4bdd031d..3c495cdb5229aa5ffa74cd92fb3820adc9554b35 100644
--- a/src/js/colorModeJS.js
+++ b/src/js/colorModeJS.js
@@ -1,4 +1,4 @@
-window.flipColors = function (lightColorMap) {
+window.flipColors = function(lightColorMap) {
 	if (!window.savedColorMap) {
 		window.savedColorMap = setColors(lightColorMap);
 	} else {
@@ -7,7 +7,7 @@ window.flipColors = function (lightColorMap) {
 	}
 };
 
-window.setColors = function (colorMap) {
+window.setColors = function(colorMap) {
 	let originalState = [];
 	let props = ["color", "backgroundColor", "backgroundImage"];
 	let styleSheetArray = Array.from(document.styleSheets);
@@ -38,7 +38,7 @@ window.setColors = function (colorMap) {
 	return originalState;
 };
 
-window.restoreColors = function (styleMap) {
+window.restoreColors = function(styleMap) {
 	styleMap.forEach(
 		item => {
 			item.element.style[item.propName] = item.value;
diff --git a/src/js/colorinput.js b/src/js/colorinput.js
index 828a33d11520001b1339bac7e0129ccf9e974b04..066743e17728444ceeb71145bdbf4b66f7f96bf4 100644
--- a/src/js/colorinput.js
+++ b/src/js/colorinput.js
@@ -1,5 +1,5 @@
 Macro.add("colorinput", {
-	handler: function () {
+	handler: function() {
 		if (this.args.length < 2) {
 			let e = [];
 			return this.args.length < 1 && e.push("variable name"), this.args.length < 2 && e.push("default value"), this.error("no " + e.join(" or ") + " specified");
@@ -48,7 +48,7 @@ Macro.add("colorinput", {
 				value: value,
 				tabindex: 0
 			}).addClass("macro-" + this.name)
-			.on("change", function () {
+			.on("change", function() {
 				State.setVar(varName, this.value);
 				// eslint-disable-next-line eqeqeq
 				if (this.value != value) { // If the value has actually changed, reload the page.  Note != and not !== because types might be different
diff --git a/src/js/dTree.min.js b/src/js/dTree.min.js
index ef3edbace94720ca989362b602aba6aef11d2c88..f98a67329fc3a095026bf871801314cecbde7c39 100644
--- a/src/js/dTree.min.js
+++ b/src/js/dTree.min.js
@@ -1,6 +1,6 @@
 /* This is the minified version of lodash, d3 and dTree */
 ;
-(function (window, define, exports) {
+(function(window, define, exports) {
 /**
  * @license
  * Lodash lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE
diff --git a/src/js/datatypeCleanupJS.js b/src/js/datatypeCleanupJS.js
index cb58cf42e0b485086ceaf42bdf72546210b074a8..2bdf933b8dd6984491f4a3c28a8778a4eaffa69e 100644
--- a/src/js/datatypeCleanupJS.js
+++ b/src/js/datatypeCleanupJS.js
@@ -5,7 +5,7 @@
  * and in general pays no attention to the property values unless they need to be changed due
  * to the schema change.
  */
-App.Entity.Utils.SlaveDataSchemeCleanup = (function () {
+App.Entity.Utils.SlaveDataSchemeCleanup = (function() {
 	"use strict";
 	return SlaveDataSchemeCleanup;
 
@@ -1638,7 +1638,7 @@ window.ArcologyDatatypeCleanup = function ArcologyDatatypeCleanup() {
 	V.TFS.schoolProsperity = Math.clamp(+V.TFS.schoolProsperity, -10, 10) || 0;
 };
 
-window.FacilityDatatypeCleanup = (function () {
+window.FacilityDatatypeCleanup = (function() {
 	"use strict";
 	let V;
 	return FacilityDatatypeCleanup;
@@ -1669,7 +1669,7 @@ window.FacilityDatatypeCleanup = (function () {
 			if (!Array.isArray(facilityIDArray)) {
 				facilityIDArray = [];
 			} else if (typeof facilityIDArray[0] === "object") {
-				facilityIDArray = facilityIDArray.map(function (a) {
+				facilityIDArray = facilityIDArray.map(function(a) {
 					return a.ID;
 				});
 			}
@@ -1736,7 +1736,7 @@ window.FacilityDatatypeCleanup = (function () {
 		V.brothel = Math.max(+V.brothel, 0) || 0;
 		V.brothelUpgradeDrugs = Math.clamp(+V.brothelUpgradeDrugs, 0, 2) || 0;
 		/* madam */
-		V.Madam = V.slaves.find(function (s) {
+		V.Madam = V.slaves.find(function(s) {
 			return s.assignment === "be the Madam";
 		}) || 0;
 		V.MadamIgnoresFlaws = Math.clamp(+V.MadamIgnoresFlaws, 0, 1) || 0;
@@ -1768,7 +1768,7 @@ window.FacilityDatatypeCleanup = (function () {
 		V.bioreactorsXY = Math.max(+V.bioreactorsXY, 0) || 0;
 		V.bioreactorsBarren = Math.max(+V.bioreactorsBarren, 0) || 0;
 		/* milkmaid */
-		V.Milkmaid = V.slaves.find(function (s) {
+		V.Milkmaid = V.slaves.find(function(s) {
 			return s.assignment === "be the Milkmaid";
 		}) || 0;
 		V.milkmaidImpregnates = Math.clamp(+V.milkmaidImpregnates, 0, 1) || 0;
@@ -1779,7 +1779,7 @@ window.FacilityDatatypeCleanup = (function () {
 		V.farmyardBreeding = Math.clamp(+V.farmyardBreeding, 0, 1) || 0;
 		V.farmyardShows = Math.clamp(+V.farmyardShows, 0, 1) || 0;
 		/* farmer */
-		V.Farmer = V.slaves.find(function (s) {
+		V.Farmer = V.slaves.find(function(s) {
 			return s.assignment === "be the Farmer";
 		}) || 0;
 	}
@@ -1797,7 +1797,7 @@ window.FacilityDatatypeCleanup = (function () {
 		V.club = Math.max(+V.club, 0) || 0;
 		V.clubUpgradePDAs = Math.clamp(+V.clubUpgradePDAs, 0, 1) || 0;
 		/* madam */
-		V.DJ = V.slaves.find(function (s) {
+		V.DJ = V.slaves.find(function(s) {
 			return s.assignment === "be the DJ";
 		}) || 0;
 		V.DJignoresFlaws = Math.clamp(+V.DJignoresFlaws, 0, 1) || 0;
@@ -1808,7 +1808,7 @@ window.FacilityDatatypeCleanup = (function () {
 		V.servantsQuarters = Math.max(+V.servantsQuarters, 0) || 0;
 		V.servantsQuartersUpgradeMonitoring = Math.clamp(+V.servantsQuartersUpgradeMonitoring, 0, 1) || 0;
 		/* stewardess */
-		V.Stewardess = V.slaves.find(function (s) {
+		V.Stewardess = V.slaves.find(function(s) {
 			return s.assignment === "be the Stewardess";
 		}) || 0;
 		V.stewardessImpregnates = Math.clamp(+V.stewardessImpregnates, 0, 1) || 0;
@@ -1821,7 +1821,7 @@ window.FacilityDatatypeCleanup = (function () {
 		V.schoolroomUpgradeLanguage = Math.clamp(+V.schoolroomUpgradeLanguage, 0, 1) || 0;
 		V.schoolroomUpgradeRemedial = Math.clamp(+V.schoolroomUpgradeRemedial, 0, 1) || 0;
 		/* schoolteacher */
-		V.Schoolteacher = V.slaves.find(function (s) {
+		V.Schoolteacher = V.slaves.find(function(s) {
 			return s.assignment === "be the Schoolteacher";
 		}) || 0;
 	}
@@ -1831,7 +1831,7 @@ window.FacilityDatatypeCleanup = (function () {
 		V.spa = Math.max(+V.spa, 0) || 0;
 		V.spaUpgrade = Math.clamp(+V.spaUpgrade, 0, 1) || 0;
 		/* attendant */
-		V.Attendant = V.slaves.find(function (s) {
+		V.Attendant = V.slaves.find(function(s) {
 			return s.assignment === "be the Attendant";
 		}) || 0;
 		V.spaFix = Math.clamp(+V.spaFix, 0, 2) || 0;
@@ -1846,7 +1846,7 @@ window.FacilityDatatypeCleanup = (function () {
 		V.clinicInflateBelly = Math.clamp(+V.clinicInflateBelly, 0, 1) || 0;
 		V.clinicSpeedGestation = Math.clamp(+V.clinicSpeedGestation, 0, 1) || 0;
 		/* nurse */
-		V.Nurse = V.slaves.find(function (s) {
+		V.Nurse = V.slaves.find(function(s) {
 			return s.assignment === "be the Nurse";
 		}) || 0;
 	}
@@ -1865,7 +1865,7 @@ window.FacilityDatatypeCleanup = (function () {
 		V.cellblock = Math.max(+V.cellblock, 0) || 0;
 		V.cellblockUpgrade = Math.clamp(+V.cellblockUpgrade, 0, 1) || 0;
 		/* wardeness */
-		V.Wardeness = V.slaves.find(function (s) {
+		V.Wardeness = V.slaves.find(function(s) {
 			return s.assignment === "be the Wardeness";
 		}) || 0;
 		V.cellblockWardenCumsInside = Math.clamp(+V.cellblockWardenCumsInside, 0, 1) || 0;
@@ -1881,14 +1881,14 @@ window.FacilityDatatypeCleanup = (function () {
 		V.masterSuitePregnancyFertilityDrugs = Math.clamp(+V.masterSuitePregnancyFertilityDrugs, 0, 1) || 0;
 		V.masterSuiteHyperPregnancy = Math.clamp(+V.masterSuiteHyperPregnancy, 0, 1) || 0;
 		/* concubine */
-		V.Concubine = V.slaves.find(function (s) {
+		V.Concubine = V.slaves.find(function(s) {
 			return s.assignment === "be your Concubine";
 		}) || 0;
 	}
 
 	function HeadGirlSuiteDatatypeCleanup() {
 		/* headgirl */
-		V.HeadGirl = V.slaves.find(function (s) {
+		V.HeadGirl = V.slaves.find(function(s) {
 			return s.assignment === "be your Head Girl";
 		}) || 0;
 		V.HGSuiteEquality = Math.clamp(+V.HGSuiteEquality, 0, 1) || 0;
@@ -1911,7 +1911,7 @@ window.FacilityDatatypeCleanup = (function () {
  * It removes all the unneeded properties for the gene pool attributes.
  * @todo remove after refactoring the slave state class
  */
-App.Entity.Utils.GenePoolRecordCleanup = (function () {
+App.Entity.Utils.GenePoolRecordCleanup = (function() {
 	"use strict";
 	return GenePoolRecordCleanup;
 
diff --git a/src/js/descriptionWidgets.js b/src/js/descriptionWidgets.js
index 3ada47d3ade022e5be0c651d75253e8bfe0d898f..22b95cd4475d6617f1f4359a0332f894a535f194 100644
--- a/src/js/descriptionWidgets.js
+++ b/src/js/descriptionWidgets.js
@@ -2,7 +2,7 @@
  * @param {App.Entity.SlaveState} slave
  * @return {string} Slave's eyes
  */
-App.Desc.eyes = function (slave) {
+App.Desc.eyes = function(slave) {
 	"use strict";
 	const V = State.variables;
 	let r = ``;
@@ -247,7 +247,7 @@ App.Desc.eyes = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {string} Slave's eye color
  */
-App.Desc.eyeColor = function (slave) {
+App.Desc.eyeColor = function(slave) {
 	"use strict";
 	let r;
 
@@ -265,7 +265,7 @@ App.Desc.eyeColor = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {string} Slave's age and health
  */
-App.Desc.ageAndHealth = function (slave) {
+App.Desc.ageAndHealth = function(slave) {
 	"use strict";
 	const V = State.variables;
 	let r = ``;
@@ -572,7 +572,7 @@ App.Desc.ageAndHealth = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {string} Slave's brand
  */
-App.Desc.brand = function (slave) {
+App.Desc.brand = function(slave) {
 	"use strict";
 	let r = ``;
 	let bellyAccessory;
@@ -603,7 +603,7 @@ App.Desc.brand = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {string} Description of slave's amputation, if present
  */
-App.Desc.amputee = function (slave) {
+App.Desc.amputee = function(slave) {
 	"use strict";
 	let r = ``;
 	/* eslint-disable */
@@ -642,7 +642,7 @@ App.Desc.amputee = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {string} Description of slave's waist
  */
-App.Desc.waist = function (slave) {
+App.Desc.waist = function(slave) {
 	"use strict";
 	const V = State.variables;
 	let r = ``;
diff --git a/src/js/economyJS.js b/src/js/economyJS.js
index 74e7e7654f8bbb6da43566720145c55651eae36b..a49f9e9ea8b9f3880e6fe9b27ce89385ba03f812 100644
--- a/src/js/economyJS.js
+++ b/src/js/economyJS.js
@@ -42,7 +42,7 @@ window.PersonalAttention = Object.freeze({
 	HACKING: 'hacking'
 });
 
-window.predictCost = function (array) {
+window.predictCost = function(array) {
 	const array2 = array;
 	let totalCosts = (
 		getBrothelCosts() +
@@ -93,7 +93,7 @@ window.predictCost = function (array) {
 	return totalCosts;
 };
 
-window.getCost = function (array) {
+window.getCost = function(array) {
 	const array2 = array;
 	const oldCash = State.variables.cash;
 	let costSoFar = 0;
@@ -140,7 +140,7 @@ window.getCost = function (array) {
 };
 
 // slave expenses
-window.predictTotalSlaveCosts = function (array3) {
+window.predictTotalSlaveCosts = function(array3) {
 	let loopCosts = 0;
 	// slave expenses
 	for (const slave of array3) {
@@ -150,7 +150,7 @@ window.predictTotalSlaveCosts = function (array3) {
 	return loopCosts;
 };
 
-window.getTotalSlaveCosts = function (array3) {
+window.getTotalSlaveCosts = function(array3) {
 	let slaveCost = 0;
 	let slaveCostMinor = 0;
 	for (const slave of array3) {
@@ -163,7 +163,7 @@ window.getTotalSlaveCosts = function (array3) {
 };
 
 // facility expenses
-window.getBrothelCosts = function () {
+window.getBrothelCosts = function() {
 	const facilityCost = State.variables.facilityCost;
 	const brothel = State.variables.brothel;
 	let costs = (brothel * facilityCost);
@@ -171,7 +171,7 @@ window.getBrothelCosts = function () {
 	return costs;
 };
 
-window.getBrothelAdsCosts = function () {
+window.getBrothelAdsCosts = function() {
 	const brothel = State.variables.brothel;
 	let costs = 0;
 	if (brothel > 0) {
@@ -180,7 +180,7 @@ window.getBrothelAdsCosts = function () {
 	return costs;
 };
 
-window.getArcadeCosts = function () {
+window.getArcadeCosts = function() {
 	const facilityCost = State.variables.facilityCost;
 	const arcade = State.variables.arcade;
 	let costs = (arcade * facilityCost * 0.05);
@@ -188,7 +188,7 @@ window.getArcadeCosts = function () {
 	return costs;
 };
 
-window.getClubCosts = function () {
+window.getClubCosts = function() {
 	const facilityCost = State.variables.facilityCost;
 	const club = State.variables.club;
 	let costs = (club * facilityCost);
@@ -199,7 +199,7 @@ window.getClubCosts = function () {
 	return costs;
 };
 
-window.getClubAdsCosts = function () {
+window.getClubAdsCosts = function() {
 	const club = State.variables.club;
 	let costs = 0;
 	if (club > 0) {
@@ -208,7 +208,7 @@ window.getClubAdsCosts = function () {
 	return costs;
 };
 
-window.getDairyCosts = function () {
+window.getDairyCosts = function() {
 	const facilityCost = State.variables.facilityCost;
 	const dairy = State.variables.dairy;
 	let costs = (dairy * facilityCost) + (0.2 * State.variables.dairyFeedersUpgrade * dairy * facilityCost) +
@@ -220,7 +220,7 @@ window.getDairyCosts = function () {
 	return costs;
 };
 
-window.getIncubatorCosts = function () {
+window.getIncubatorCosts = function() {
 	const facilityCost = State.variables.facilityCost;
 	const incubator = State.variables.incubator;
 	let costs = (State.variables.incubator * facilityCost * 10);
@@ -235,14 +235,14 @@ window.getIncubatorCosts = function () {
 	return costs;
 };
 
-window.getServantsQuartersCosts = function () {
+window.getServantsQuartersCosts = function() {
 	const facilityCost = State.variables.facilityCost;
 	const servantsQuarters = State.variables.servantsQuarters;
 	const costs = (0.2 * State.variables.servantsQuartersUpgradeMonitoring * servantsQuarters * facilityCost);
 	return costs;
 };
 
-window.getMasterSuiteCosts = function () {
+window.getMasterSuiteCosts = function() {
 	let costs = 0;
 	if (State.variables.masterSuitePregnancySlaveLuxuries === 1) {
 		costs += 500;
@@ -253,21 +253,21 @@ window.getMasterSuiteCosts = function () {
 	return costs;
 };
 
-window.getNurseryCosts = function () {
+window.getNurseryCosts = function() {
 	const facilityCost = State.variables.facilityCost;
 	const nursery = State.variables.nursery;
 	const costs = (nursery * facilityCost);
 	return costs;
 };
 
-window.getFarmyardCosts = function () {
+window.getFarmyardCosts = function() {
 	const facilityCost = State.variables.facilityCost;
 	const farmyard = State.variables.farmyard;
 	const costs = (farmyard * facilityCost);
 	return costs;
 };
 
-window.getSecurityExpansionCost = function () {
+window.getSecurityExpansionCost = function() {
 	// security expansion
 	let secExpCost = 0;
 	let soldierMod = 0;
@@ -324,14 +324,14 @@ window.getSecurityExpansionCost = function () {
 
 // general arcology costs
 
-window.getLifestyleCosts = function () {
+window.getLifestyleCosts = function() {
 	let costs = 0;
 	const localEcon = State.variables.localEcon;
 	costs += (State.variables.girls * (250 + (50000 / localEcon)));
 	return costs;
 };
 
-window.getFSCosts = function () {
+window.getFSCosts = function() {
 	let costs = 0;
 	costs += State.variables.FSSpending;
 	if (State.variables.arcologies[0].FSRepopulationFocusLaw === 1 && State.variables.PC.pregKnown === 1) {
@@ -340,13 +340,13 @@ window.getFSCosts = function () {
 	return costs;
 };
 
-window.getCitizenOrphanageCosts = function () {
+window.getCitizenOrphanageCosts = function() {
 	let costs = 0;
 	costs += State.variables.citizenOrphanageTotal * 100;
 	return costs;
 };
 
-window.getPrivateOrphanageCosts = function () {
+window.getPrivateOrphanageCosts = function() {
 	let costs = 0;
 	costs += State.variables.privateOrphanageTotal * 500;
 	if (State.variables.breederOrphanageTotal > 0) {
@@ -355,7 +355,7 @@ window.getPrivateOrphanageCosts = function () {
 	return costs;
 };
 
-window.getPeacekeeperCosts = function () {
+window.getPeacekeeperCosts = function() {
 	let costs = 0;
 	if (State.variables.peacekeepers !== 0 && State.variables.peacekeepers.undermining !== 0) {
 		costs += State.variables.peacekeepers.undermining;
@@ -363,7 +363,7 @@ window.getPeacekeeperCosts = function () {
 	return costs;
 };
 
-window.getMercenariesCosts = function () {
+window.getMercenariesCosts = function() {
 	let costs = 0;
 	let mercCosts = State.variables.mercenaries * 2000;
 	if (State.variables.mercenaries > 0) {
@@ -378,7 +378,7 @@ window.getMercenariesCosts = function () {
 	return costs;
 };
 
-window.getMenialRetirementCosts = function () {
+window.getMenialRetirementCosts = function() {
 	let costs = 0;
 	if (State.variables.citizenRetirementMenials === 1) {
 		costs += State.variables.menials * 2;
@@ -387,7 +387,7 @@ window.getMenialRetirementCosts = function () {
 };
 
 // policy and other expenses
-window.getRecruiterCosts = function () {
+window.getRecruiterCosts = function() {
 	let costs = 0;
 	if (State.variables.Recruiter !== 0) {
 		costs += 250;
@@ -395,7 +395,7 @@ window.getRecruiterCosts = function () {
 	return costs;
 };
 
-window.getSchoolCosts = function () {
+window.getSchoolCosts = function() {
 	let costs = 0;
 	if (State.variables.TSS.schoolPresent === 1) {
 		costs += 1000;
@@ -448,7 +448,7 @@ window.getSchoolCosts = function () {
 	return costs;
 };
 
-window.getPolicyCosts = function () {
+window.getPolicyCosts = function() {
 	let costs = 0;
 	let policyCost = State.variables.policyCost;
 	if (State.variables.alwaysSubsidizeGrowth === 1) {
@@ -480,7 +480,7 @@ window.getProstheticsCosts = function() {
 
 
 // player expenses
-window.getPCTrainingCosts = function () {
+window.getPCTrainingCosts = function() {
 	let costs = 0;
 	if (State.variables.PC.actualAge >= State.variables.IsInPrimePC && State.variables.PC.actualAge < State.variables.IsPastPrimePC) {
 		if (State.variables.personalAttention === PersonalAttention.TRADE) {
@@ -499,7 +499,7 @@ window.getPCTrainingCosts = function () {
 	}
 	return costs;
 };
-window.getPCCosts = function () {
+window.getPCCosts = function() {
 	let costs = 0;
 	if (State.variables.PC.preg === -1) {
 		costs += 25;
@@ -515,7 +515,7 @@ window.getPCCosts = function () {
 };
 
 
-window.getPCMultiplierCosts = function (cost) {
+window.getPCMultiplierCosts = function(cost) {
 	if (State.variables.PC.career === 'servant') {
 		if (State.variables.personalAttention === PersonalAttention.MAID) {
 			if (State.variables.PC.belly >= 5000) {
@@ -531,7 +531,7 @@ window.getPCMultiplierCosts = function (cost) {
 	return cost;
 };
 
-window.getEnvironmentCosts = function (cost) {
+window.getEnvironmentCosts = function(cost) {
 	if (State.variables.secExp === 1) {
 		if (State.variables.terrain === 'oceanic' || State.variables.terrain === 'marine') {
 			if (State.variables.docks > 0) {
@@ -544,7 +544,7 @@ window.getEnvironmentCosts = function (cost) {
 	return Math.trunc(cost);
 };
 
-window.getSFCosts = function () {
+window.getSFCosts = function() {
 	let costs = 0;
 	if (State.variables.SF.Toggle && State.variables.SF.Active >= 1 && State.variables.SF.Subsidy !== undefined) {
 		Count();
@@ -553,7 +553,7 @@ window.getSFCosts = function () {
 	return costs;
 };
 
-window.getWeatherCosts = function () {
+window.getWeatherCosts = function() {
 	let costs = 0;
 	if (State.variables.econWeatherDamage && State.variables.disasterResponse > 0) {
 		costs += Math.trunc(State.variables.disasterResponse * 200000 / State.variables.localEcon);
@@ -564,7 +564,7 @@ window.getWeatherCosts = function () {
 	return costs;
 };
 
-window.getSlaveMinorCosts = function (slave) {
+window.getSlaveMinorCosts = function(slave) {
 	let costs = 0;
 	let rulesCost = State.variables.rulesCost;
 	if (slave.assignment === Job.SERVANT || slave.assignment === Job.SERVER) {
@@ -609,7 +609,7 @@ window.getSlaveMinorCosts = function (slave) {
 	return costs;
 };
 
-window.getSlaveCost = function (s) {
+window.getSlaveCost = function(s) {
 	if (!s) {
 		return 0;
 	}
@@ -948,7 +948,7 @@ window.getSlaveCost = function (s) {
 // Supply and Demand for slaves (linear, simple)
 // PC buying slaves reduces supply, selling slaves reduces demand.
 
-window.menialSlaveCost = function (q) {
+window.menialSlaveCost = function(q) {
 	if (!q) {
 		q = 0;
 	}
@@ -959,7 +959,7 @@ window.menialSlaveCost = function (q) {
 	return (Math.trunc(baseCost + demand / 400 - supply / 400 + q / 400) + random);
 };
 
-window.NPCSexSupply = function (LC) {
+window.NPCSexSupply = function(LC) {
 	const V = State.variables;
 	let NPCSexSupply = {
 		lowerClass: V.NPCSexSupply.lowerClass
@@ -979,7 +979,7 @@ window.NPCSexSupply = function (LC) {
 };
 
 // The function for calculating and storing a slave's sexual interaction with citizens/'the outside'
-window.slaveJobValues = function () {
+window.slaveJobValues = function() {
 	const V = State.variables;
 	let slaveJobValues = {
 			arcade: 0,
@@ -1313,7 +1313,7 @@ window.slaveJobValues = function () {
 
 // Corporation Value
 
-window.corpValue = function () {
+window.corpValue = function() {
 	const V = State.variables;
 	if (V.corpIncorporated === 0) {
 		return 0;
@@ -1364,7 +1364,7 @@ window.corpValue = function () {
 // Corporation Share Price
 // A positive q means adding shares to the market, negative means removing them
 
-window.corpSharePrice = function (q = 0) {
+window.corpSharePrice = function(q = 0) {
 	const V = State.variables;
 	if (V.corpIncorporated === 0) {
 		return 0;
@@ -1376,7 +1376,7 @@ window.corpSharePrice = function (q = 0) {
 // The amount of additional slaves you can fit in a division
 // Can we condense this?
 
-window.corpDivBreakSlavesRoom = function () {
+window.corpDivBreakSlavesRoom = function() {
 	const V = State.variables;
 	if (V.corpDivBreak === 1 && V.corpDivBreakDev > V.corpDivBreakSlaves) {
 		return V.corpDivBreakDev - V.corpDivBreakSlaves;
@@ -1384,7 +1384,7 @@ window.corpDivBreakSlavesRoom = function () {
 	return 0;
 };
 
-window.corpDivSurgerySlavesRoom = function () {
+window.corpDivSurgerySlavesRoom = function() {
 	const V = State.variables;
 	if (V.corpDivSurgery === 1 && V.corpDivSurgeryDev > V.corpDivSurgerySlaves) {
 		return V.corpDivSurgeryDev - V.corpDivSurgerySlaves;
@@ -1392,7 +1392,7 @@ window.corpDivSurgerySlavesRoom = function () {
 	return 0;
 };
 
-window.corpDivTrainSlavesRoom = function () {
+window.corpDivTrainSlavesRoom = function() {
 	const V = State.variables;
 	if (V.corpDivTrain === 1 && V.corpDivTrainDev > V.corpDivTrainSlaves) {
 		return V.corpDivTrainDev - V.corpDivTrainSlaves;
@@ -1400,7 +1400,7 @@ window.corpDivTrainSlavesRoom = function () {
 	return 0;
 };
 
-window.corpDivArcadeSlavesRoom = function () {
+window.corpDivArcadeSlavesRoom = function() {
 	const V = State.variables;
 	if (V.corpDivArcade === 1 && V.corpDivArcadeDev > V.corpDivArcadeSlaves) {
 		return V.corpDivArcadeDev - V.corpDivArcadeSlaves;
@@ -1408,7 +1408,7 @@ window.corpDivArcadeSlavesRoom = function () {
 	return 0;
 };
 
-window.corpDivMenialSlavesRoom = function () {
+window.corpDivMenialSlavesRoom = function() {
 	const V = State.variables;
 	if (V.corpDivMenial === 1 && V.corpDivMenialDev > V.corpDivMenialSlaves) {
 		return V.corpDivMenialDev - V.corpDivMenialSlaves;
@@ -1416,7 +1416,7 @@ window.corpDivMenialSlavesRoom = function () {
 	return 0;
 };
 
-window.corpDivDairySlavesRoom = function () {
+window.corpDivDairySlavesRoom = function() {
 	const V = State.variables;
 	if (V.corpDivDairy === 1 && V.corpDivDairyDev > V.corpDivDairySlaves) {
 		return V.corpDivDairyDev - V.corpDivDairySlaves;
@@ -1424,7 +1424,7 @@ window.corpDivDairySlavesRoom = function () {
 	return 0;
 };
 
-window.corpDivWhoreSlavesRoom = function () {
+window.corpDivWhoreSlavesRoom = function() {
 	const V = State.variables;
 	if (V.corpDivWhore === 1 && V.corpDivWhoreDev > V.corpDivWhoreSlaves) {
 		return V.corpDivWhoreDev - V.corpDivWhoreSlaves;
@@ -1434,7 +1434,7 @@ window.corpDivWhoreSlavesRoom = function () {
 
 // Corporation race blacklisting/whitelisting
 // race is the lowercase string representing the race, 'blacklist' is either 1 or 0. 1 means we are blacklisting and 0 means we are whitelisting said race
-window.corpBlacklistRace = function (race, blacklist) {
+window.corpBlacklistRace = function(race, blacklist) {
 	let raceArray = State.variables.corpSpecRaces;
 	if (raceArray.length > 0 && blacklist === 1) {
 		raceArray.delete(race);
@@ -1446,7 +1446,7 @@ window.corpBlacklistRace = function (race, blacklist) {
 	return raceArray;
 };
 
-window.getSlaveStatisticData = function (s, facility) {
+window.getSlaveStatisticData = function(s, facility) {
 	if (!s || !facility) {
 		// Base data, even without facility
 		return {
@@ -1485,7 +1485,7 @@ window.getSlaveStatisticData = function (s, facility) {
 	return data;
 };
 
-window.initFacilityStatistics = function (facility) {
+window.initFacilityStatistics = function(facility) {
 	facility = facility || {};
 	facility.adsIncome = 0;
 	facility.maintenance = 0;
@@ -1522,7 +1522,7 @@ A full list of categories (slaveMod, slaveTransfer, event) are in the widget "se
 The third category, the "slave slot" is completely optional. Sometimes you just want to spend money by yourself.
 
 */
-window.cashX = function (cost, what, who) {
+window.cashX = function(cost, what, who) {
 	const V = State.variables;
 
 	if (!Number.isFinite(cost)) {
@@ -1573,7 +1573,7 @@ window.cashX = function (cost, what, who) {
 	return cost;
 };
 
-window.repX = function (rep, what, who) {
+window.repX = function(rep, what, who) {
 	const V = State.variables;
 
 	if (!Number.isFinite(rep)) {
@@ -1639,10 +1639,10 @@ window.repX = function (rep, what, who) {
 	return rep;
 };
 
-window.forceNeg = function (x) {
+window.forceNeg = function(x) {
 	return -Math.abs(x);
 };
 
-Number.prototype.toFixedHTML = function () {
+Number.prototype.toFixedHTML = function() {
 	return num(Number.prototype.toFixed.apply(this, arguments)).replace(/\.0+$/, '<span style="opacity: 0.3">$&</span>');
 };
diff --git a/src/js/eventSelectionJS.js b/src/js/eventSelectionJS.js
index 7b0cb81cea47d195fe7332b2387347f4cc34f528..1929e3b90510eae0046b88b25fd1488d45ccd93e 100644
--- a/src/js/eventSelectionJS.js
+++ b/src/js/eventSelectionJS.js
@@ -1,4 +1,4 @@
-window.generateRandomEventPoolStandard = function (eventSlave) {
+window.generateRandomEventPoolStandard = function(eventSlave) {
 	/* STANDARD EVENTS */
 
 	if (eventSlave.fetish !== "mindbroken") {
@@ -225,7 +225,7 @@ window.generateRandomEventPoolStandard = function (eventSlave) {
 				}
 
 				if (eventSlave.relationship > 3) {
-					let relationshipSlave = State.variables.slaves.find(function (s) {
+					let relationshipSlave = State.variables.slaves.find(function(s) {
 						return s.ID === eventSlave.relationshipTarget;
 					});
 					if (relationshipSlave.devotion > 20) {
@@ -1867,7 +1867,7 @@ window.generateRandomEventPoolStandard = function (eventSlave) {
 };
 
 /* servants spend a lot of time in the penthouse, so should be eligible for a number (but not all) random events */
-window.generateRandomEventPoolServant = function (eventSlave) {
+window.generateRandomEventPoolServant = function(eventSlave) {
 	/* STANDARD EVENTS */
 
 	if (eventSlave.fetish !== "mindbroken") {
@@ -1958,7 +1958,7 @@ window.generateRandomEventPoolServant = function (eventSlave) {
 				}
 
 				if (eventSlave.relationship > 3) {
-					let relationshipSlave = State.variables.slaves.find(function (s) {
+					let relationshipSlave = State.variables.slaves.find(function(s) {
 						return s.ID === eventSlave.relationshipTarget;
 					});
 					if (relationshipSlave.devotion > 20) {
@@ -2972,7 +2972,7 @@ window.generateRandomEventPoolServant = function (eventSlave) {
 	}
 };
 
-window.populateEventArray = function (RESS = State.variables.RESSevent.length, RESSTR = State.variables.RESSTRevent.length, RETS = State.variables.RETSevent.length, RECI = State.variables.RECIevent.length) {
+window.populateEventArray = function(RESS = State.variables.RESSevent.length, RESSTR = State.variables.RESSTRevent.length, RETS = State.variables.RETSevent.length, RECI = State.variables.RECIevent.length) {
 	/* EVENT RANDOMIZATION */
 	let events = State.variables.events;
 	let i = 0;
diff --git a/src/js/extendedFamilyModeJS.js b/src/js/extendedFamilyModeJS.js
index ee51652283afc806186aff2235cd0dc1242ec6d0..a040b9f2f9ebfeac1828758cdc634ac7f2c572eb 100644
--- a/src/js/extendedFamilyModeJS.js
+++ b/src/js/extendedFamilyModeJS.js
@@ -12,14 +12,14 @@ window.isParentP = function isParentP(daughter, parent) {
 	return isMotherP(daughter, parent) || isFatherP(daughter, parent);
 };
 
-window.sameDad = function (slave1, slave2) {
+window.sameDad = function(slave1, slave2) {
 	if ((slave1.father === slave2.father) && (slave1.father !== 0 && slave1.father !== -2)) {
 		return true;
 	}
 	return false;
 };
 
-window.sameMom = function (slave1, slave2) {
+window.sameMom = function(slave1, slave2) {
 	if ((slave1.mother === slave2.mother) && (slave1.mother !== 0 && slave1.mother !== -2)) {
 		return true;
 	}
@@ -31,7 +31,7 @@ window.sameMom = function (slave1, slave2) {
  * @param {App.Entity.SlaveState} aunt
  * @returns {boolean}
  */
-window.isAunt = function (niece, aunt) {
+window.isAunt = function(niece, aunt) {
 	if (!State.variables.showDistantRelatives) {
 		return false;
 	}
@@ -53,7 +53,7 @@ window.isAunt = function (niece, aunt) {
 };
 
 // testtest catches the case if a mother is a father or a father a mother - thank you familyAnon, for this code
-window.sameTParent = function (slave1, slave2) {
+window.sameTParent = function(slave1, slave2) {
 	if (slave1.mother === -1 && slave1.father === -1 && slave2.mother === -1 && slave2.father === -1) {
 		return 1;
 	} else if (slave1.mother === slave2.father && slave1.father === slave2.mother && slave1.mother !== 0 && slave1.mother !== -2 && slave1.father !== 0 && slave1.father !== -2 && slave1.mother !== slave1.father) {
@@ -74,7 +74,7 @@ window.sameTParent = function(slave1, slave2) {
 };
 */
 
-window.areTwins = function (slave1, slave2) {
+window.areTwins = function(slave1, slave2) {
 	if (!sameDad(slave1, slave2)) {
 		return false;
 	} else if (!sameMom(slave1, slave2)) {
@@ -85,7 +85,7 @@ window.areTwins = function (slave1, slave2) {
 	return false;
 };
 
-window.areSisters = function (slave1, slave2) {
+window.areSisters = function(slave1, slave2) {
 	if (slave1.ID === slave2.ID) {
 		return 0; // you are not your own sister
 	} else if (((slave1.father === 0) || (slave1.father === -2)) && ((slave1.mother === 0) || (slave1.mother === -2))) {
@@ -139,7 +139,7 @@ window.areSisters = function(c1, c2) {
  * @param {App.Entity.SlaveState} slave2
  * @returns {boolean}
  */
-window.areCousins = function (slave1, slave2) {
+window.areCousins = function(slave1, slave2) {
 	if (!State.variables.showDistantRelatives) {
 		return false;
 	}
@@ -172,7 +172,7 @@ window.areCousins = function (slave1, slave2) {
  * @returns {boolean}
  */
 window.areRelated =
-	function (slave1, slave2) {
+	function(slave1, slave2) {
 		return (slave1.father === slave2.ID || slave1.mother === slave2.ID || slave2.father === slave1.ID || slave2.mother === slave1.ID || areSisters(slave1, slave2) > 0);
 	};
 
@@ -180,7 +180,7 @@ window.areRelated =
  * @param {App.Entity.SlaveState} slave
  * @returns {number}
  */
-window.totalRelatives = function (slave) {
+window.totalRelatives = function(slave) {
 	let relatives = 0;
 	if (slave.mother > 0) {
 		relatives += 1;
@@ -203,8 +203,8 @@ window.totalRelatives = function (slave) {
  * @param {App.Entity.SlaveState[]} slaves
  * @returns {Array}	// I think
  */
-window.mutualChildren = function (slave1, slave2, slaves) {
-	return slaves.filter(function (s) {
+window.mutualChildren = function(slave1, slave2, slaves) {
+	return slaves.filter(function(s) {
 		return s.ID !== slave1.ID && s.ID !== slave2.ID && s.mother > 0 && s.father > 0 && ((s.mother === slave1.ID && s.father === slave2.ID) || (s.mother === slave2.ID && s.father === slave1.ID));
 	}).length;
 };
@@ -213,7 +213,7 @@ window.mutualChildren = function (slave1, slave2, slaves) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isSlaveAvailable = function (slave) {
+window.isSlaveAvailable = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.assignment === "be your agent") {
@@ -241,18 +241,18 @@ window.randomRelatedSlave = function(slave, filterFunction) {
  * @param {function} filterFunction	// I think
  * @returns {object}	// I think
  */
-window.randomRelatedSlave = function (slave, filterFunction) {
+window.randomRelatedSlave = function(slave, filterFunction) {
 	if (!slave || !SugarCube) {
 		return undefined;
 	}
 	if (typeof filterFunction !== 'function') {
-		filterFunction = function ( /* s, index, array*/ ) {
+		filterFunction = function( /* s, index, array*/ ) {
 			return true;
 		};
 	}
 	const arr = State.variables.slaves.filter(filterFunction);
 	arr.shuffle();
-	return arr.find(function (s) {
+	return arr.find(function(s) {
 		return areSisters(slave, s) ||
 			slave.ID === s.mother ||
 			slave.ID === s.father ||
@@ -265,8 +265,8 @@ window.randomRelatedSlave = function (slave, filterFunction) {
  * @param {App.Entity.SlaveState} slave
  * @returns {object}
  */
-window.randomRelatedAvailableSlave = function (slave) {
-	return randomRelatedSlave(slave, function (s) {
+window.randomRelatedAvailableSlave = function(slave) {
+	return randomRelatedSlave(slave, function(s) {
 		return isSlaveAvailable(s);
 	});
 };
@@ -275,8 +275,8 @@ window.randomRelatedAvailableSlave = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {object}
  */
-window.randomSister = function (slave) {
-	return randomRelatedSlave(slave, function (s) {
+window.randomSister = function(slave) {
+	return randomRelatedSlave(slave, function(s) {
 		return areSisters(slave, s);
 	});
 };
@@ -285,8 +285,8 @@ window.randomSister = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {object}
  */
-window.randomTwinSister = function (slave) {
-	return randomRelatedSlave(slave, function (s) {
+window.randomTwinSister = function(slave) {
+	return randomRelatedSlave(slave, function(s) {
 		return areSisters(slave, s);
 	});
 };
@@ -295,8 +295,8 @@ window.randomTwinSister = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {object}
  */
-window.randomAvailableSister = function (slave) {
-	return randomRelatedSlave(slave, function (s) {
+window.randomAvailableSister = function(slave) {
+	return randomRelatedSlave(slave, function(s) {
 		return isSlaveAvailable(s) && areSisters(slave, s);
 	});
 };
@@ -305,8 +305,8 @@ window.randomAvailableSister = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {object}
  */
-window.randomAvailableTwinSister = function (slave) {
-	return randomRelatedSlave(slave, function (s) {
+window.randomAvailableTwinSister = function(slave) {
+	return randomRelatedSlave(slave, function(s) {
 		return isSlaveAvailable(s) && areSisters(slave, s);
 	});
 };
@@ -315,8 +315,8 @@ window.randomAvailableTwinSister = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {object}
  */
-window.randomDaughter = function (slave) {
-	return randomRelatedSlave(slave, function (s) {
+window.randomDaughter = function(slave) {
+	return randomRelatedSlave(slave, function(s) {
 		return s.mother === slave.ID || s.father === slave.ID;
 	});
 };
@@ -325,8 +325,8 @@ window.randomDaughter = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {object}
  */
-window.randomAvailableDaughter = function (slave) {
-	return randomRelatedSlave(slave, function (s) {
+window.randomAvailableDaughter = function(slave) {
+	return randomRelatedSlave(slave, function(s) {
 		return isSlaveAvailable(s) && (s.mother === slave.ID || s.father === slave.ID);
 	});
 };
@@ -335,8 +335,8 @@ window.randomAvailableDaughter = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {object}
  */
-window.randomParent = function (slave) {
-	return randomRelatedSlave(slave, function (s) {
+window.randomParent = function(slave) {
+	return randomRelatedSlave(slave, function(s) {
 		return s.ID === slave.mother || s.ID === slave.father;
 	});
 };
@@ -345,13 +345,13 @@ window.randomParent = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {object}
  */
-window.randomAvailableParent = function (slave) {
-	return randomRelatedSlave(slave, function (s) {
+window.randomAvailableParent = function(slave) {
+	return randomRelatedSlave(slave, function(s) {
 		return isSlaveAvailable(s) && (s.ID === slave.mother || s.ID === slave.father);
 	});
 };
 
-window.totalPlayerRelatives = function (pc) {
+window.totalPlayerRelatives = function(pc) {
 	let relatives = 0;
 	if (pc.mother > 0) {
 		relatives += 1;
@@ -374,7 +374,7 @@ window.totalPlayerRelatives = function (pc) {
  * @returns {string}
  */
 window.relativeTerm =
-	function (slave1, slave2) {
+	function(slave1, slave2) {
 		if (slave2.mother === slave1.ID || slave2.father === slave1.ID) {
 			if (slave2.genes === "XY" && State.variables.diversePronouns) {
 				return "son";
diff --git a/src/js/familyTreeJS.js b/src/js/familyTreeJS.js
index d404ec4c024dce37e350efebdfe06d9d9f4b59f8..93ebf31abe87ba45e298f5564afbfc05b17643ef 100644
--- a/src/js/familyTreeJS.js
+++ b/src/js/familyTreeJS.js
@@ -16,7 +16,7 @@ let lastActiveSlave, lastSlaves, lastPC;
 
 */
 
-window.renderFamilyTree = function (slaves, filterID) {
+window.renderFamilyTree = function(slaves, filterID) {
 	'use strict';
 
 	let ftreeWidth, ftreeHeight;
@@ -84,11 +84,11 @@ window.renderFamilyTree = function (slaves, filterID) {
 
 	function runFtreeSim(data) {
 		let simulation = d3.forceSimulation()
-			.force('link', d3.forceLink().id(function (d) {
+			.force('link', d3.forceLink().id(function(d) {
 				return d.index;
 			}))
 			// eslint-disable-next-line no-unused-vars
-			.force('collide', d3.forceCollide(function (d) {
+			.force('collide', d3.forceCollide(function(d) {
 				return 60;
 			}).iterations(4))
 			.force('charge', d3.forceManyBody().strength(-200).distanceMin(100).distanceMax(1000))
@@ -125,7 +125,7 @@ window.renderFamilyTree = function (slaves, filterID) {
 				.on('end', dragended));
 
 		node.append('circle')
-			.attr('r', function (d) { return d.r; })
+			.attr('r', function(d) { return d.r; })
 			.attr('stroke', function(d) {
 				if (d.ID === filterID) {
 					return '#ffff20';
@@ -159,7 +159,7 @@ window.renderFamilyTree = function (slaves, filterID) {
 				return `${d.name }(${ssym})`;
 			})
 			.attr('dy', 4)
-			.attr('dx', function (d) {
+			.attr('dx', function(d) {
 				return -(8 * d.name.length) / 2;
 			})
 			.attr('class', 'node-text')
@@ -180,23 +180,23 @@ window.renderFamilyTree = function (slaves, filterID) {
 		svg.selectAll('.node-circle');
 		svg.selectAll('.node-text');
 
-		let ticked = function () {
+		let ticked = function() {
 			link
-				.attr('x1', function (d) {
+				.attr('x1', function(d) {
 					return d.source.x;
 				})
-				.attr('y1', function (d) {
+				.attr('y1', function(d) {
 					return d.source.y;
 				})
-				.attr('x2', function (d) {
+				.attr('x2', function(d) {
 					return d.target.x;
 				})
-				.attr('y2', function (d) {
+				.attr('y2', function(d) {
 					return d.target.y;
 				});
 
 			node
-				.attr("transform", function (d) {
+				.attr("transform", function(d) {
 					return `translate(${ d.x }, ${ d.y })`;
 				});
 		};
@@ -226,7 +226,7 @@ window.renderFamilyTree = function (slaves, filterID) {
 	}
 };
 
-window.buildFamilyTree = function (slaves = State.variables.slaves, filterID) {
+window.buildFamilyTree = function(slaves = State.variables.slaves, filterID) {
 	let family_graph = {
 		nodes: [],
 		links: []
@@ -551,7 +551,7 @@ If there's no active slave, you can do:
 <<run updateFamilyTree(null, $slaves, $PC)>>
 */
 
-window.updateFamilyTree = function (activeSlave = lastActiveSlave, slaves = lastSlaves, PC = lastPC) {
+window.updateFamilyTree = function(activeSlave = lastActiveSlave, slaves = lastSlaves, PC = lastPC) {
 	lastActiveSlave = activeSlave;
 	lastSlaves = slaves;
 	lastPC = PC;
@@ -660,7 +660,7 @@ window.updateFamilyTree = function (activeSlave = lastActiveSlave, slaves = last
 		for (let key in spouseToChild) {
 			if (spouseToChild.hasOwnProperty(key)) {
 				let children = shouldAddChildren?spouseToChild[key]:[];
-				let spouse = getSlave(key, (slaves.genes === "XX")?"unknownXY":(slaves.genes === "XY")?"unknownXX":"unknown");
+				let spouse = getSlave(key, (slaves.genes === "XX") ? "unknownXY" : (slaves.genes === "XY") ? "unknownXX" : "unknown");	// FIXME: nested ternary
 				let spouseName;
 				if (spouse.ID !== slave.ID){
 					spouseName = spouse.slaveName + (spouse.physicalAge?(`&nbsp;(${ spouse.physicalAge })`):"");
@@ -672,7 +672,7 @@ window.updateFamilyTree = function (activeSlave = lastActiveSlave, slaves = last
 						"name": spouseName,
 						"class": spouse.genes
 					},
-					"children": children.map(function (x) {
+					"children": children.map(function(x) {
 						return slaveInfo_(x, activeSlaveId, slavesAdded, depth + 1);
 					}),
 				};
@@ -703,7 +703,7 @@ window.updateFamilyTree = function (activeSlave = lastActiveSlave, slaves = last
 		width: Math.min(200 + 40 * numTreeNodes,
 			parentWidth - 200) + 200,
 		callbacks: {
-			nodeClick: function ( /* name, extra*/ ) {}
+			nodeClick: function( /* name, extra*/ ) {}
 		}
 	});
 };
diff --git a/src/js/futureSocietyJS.js b/src/js/futureSocietyJS.js
index 1be764a5cacebf3825389ea7536804d17ed73cb9..02f9f09703463ddbd5eb4563091204073845f383 100644
--- a/src/js/futureSocietyJS.js
+++ b/src/js/futureSocietyJS.js
@@ -1,4 +1,4 @@
-window.FutureSocieties = (function () {
+window.FutureSocieties = (function() {
 	return {
 		remove: removeFS,
 		DecorationCleanup: DecorationCleanup
diff --git a/src/js/generateGenetics.js b/src/js/generateGenetics.js
index 321cd70bbc5acca9b04ab2f13b83c44bd2bf8f63..4c4112fb66e57d562d25b497dd81f4730e353c37 100644
--- a/src/js/generateGenetics.js
+++ b/src/js/generateGenetics.js
@@ -1,6 +1,6 @@
 // Generates a child's genetics based off mother and father and returns it as an object to be attached to an ovum
 
-window.generateGenetics = (function () {
+window.generateGenetics = (function() {
 	"use strict";
 	let genes;
 	let mother;
@@ -37,7 +37,7 @@ window.generateGenetics = (function () {
 			geneticQuirks: 0
 		};
 		if (actor1.ID > 0) {
-			mother = V.genePool.find(function (s) {
+			mother = V.genePool.find(function(s) {
 				return s.ID === actor1.ID;
 			});
 			if (mother === undefined) {
@@ -52,7 +52,7 @@ window.generateGenetics = (function () {
 			mother = V.PC;
 		}
 		if (actor2 > 0) {
-			father = V.genePool.find(function (s) {
+			father = V.genePool.find(function(s) {
 				return s.ID === actor2;
 			});
 			activeFather = V.slaves[V.slaveIndices[actor2]];
@@ -62,7 +62,7 @@ window.generateGenetics = (function () {
 			}
 			if (father === undefined) {
 				if (V.incubator > 0) {
-					father = V.tanks.find(function (s) {
+					father = V.tanks.find(function(s) {
 						return s.ID === actor2;
 					});
 					activeFather = 0; // activeFather = father?
@@ -70,7 +70,7 @@ window.generateGenetics = (function () {
 			}
 			if (father === undefined) {
 				if (V.nursery > 0) {
-					father = V.cribs.find(function (s) {
+					father = V.cribs.find(function(s) {
 						return s.ID === actor2;
 					});
 					activeFather = 0; // activeFather = father?
@@ -1041,7 +1041,7 @@ window.generateGenetics = (function () {
 	return generateGenetics;
 })();
 
-window.generateChild = function (mother, ova, destination) {
+window.generateChild = function(mother, ova, destination) {
 	let V = State.variables;
 	let genes = ova.genetics; // maybe just argument this? We'll see.
 	let pregUpgrade = V.pregnancyMonitoringUpgrade;
diff --git a/src/js/generateNewSlaveJS.js b/src/js/generateNewSlaveJS.js
index 638ecb9c9c4ee68406a243b0c5763bcf3504a877..d928bccf609fa592fc6501e699c33af75d36c239 100644
--- a/src/js/generateNewSlaveJS.js
+++ b/src/js/generateNewSlaveJS.js
@@ -1,5 +1,5 @@
 /* eslint-disable camelcase */
-window.GenerateNewSlave = (function () {
+window.GenerateNewSlave = (function() {
 	"use strict";
 	let V;
 	let chance;
diff --git a/src/js/heroCreator.js b/src/js/heroCreator.js
index 3b19f98cf7d2de0e7086ef349b499ed3b245cd8c..1539fecb5f492203adaaca8f0e0bfd473ee99032 100644
--- a/src/js/heroCreator.js
+++ b/src/js/heroCreator.js
@@ -3,7 +3,7 @@
  * @param {App.Entity.SlaveState} baseHeroSlave
  * @return {App.Entity.SlaveState}
  */
-App.Utils.getHeroSlave = function (heroSlave, baseHeroSlave) {
+App.Utils.getHeroSlave = function(heroSlave, baseHeroSlave) {
 	function isObject(o) {
 		return (o !== undefined && typeof o === 'object' && !Array.isArray(o));
 	}
diff --git a/src/js/itemAvailability.js b/src/js/itemAvailability.js
index 4c473f9baf2e6f8ade34a47fdefeaddc9c5051ac..e7c07a12666a2f575993554907eb1203eb0b66fa 100644
--- a/src/js/itemAvailability.js
+++ b/src/js/itemAvailability.js
@@ -5,7 +5,7 @@
  * @param {string} string Name of the item
  * @returns {boolean}
  */
-window.isItemAccessible = function (string) {
+window.isItemAccessible = function(string) {
 	const V = State.variables;
 
 	if (V.cheatMode === 1) {
diff --git a/src/js/nurseryWidgets.js b/src/js/nurseryWidgets.js
new file mode 100644
index 0000000000000000000000000000000000000000..7da57471c0914beb5f554a5f6b5bf88b57511a87
--- /dev/null
+++ b/src/js/nurseryWidgets.js
@@ -0,0 +1,7 @@
+App.Facilities.Nursery.ChildSummary = function(child) {
+    const V = State.variables;
+    let r = ``;
+    r += `${child} will stay in ${V.nurseryName} for another ${child.weeksLeft} weeks. `;
+    SlaveSummary(child);
+    return r;
+};
diff --git a/src/js/optionsMacro.js b/src/js/optionsMacro.js
index 425836d1ba52f53f48521e68ec1b55b454c9e565..0d93bf0ed18c4932d8652a1b0005273af5a42bc1 100644
--- a/src/js/optionsMacro.js
+++ b/src/js/optionsMacro.js
@@ -146,7 +146,14 @@ Macro.add('options', {
 						// and 'Disable' buttons differently.
 						const isEnableOption = argText && (argText.startsWith("Enable") || argText === "Yes" || argText.startsWith("Allow"));
 						const isDisableOption = argText && (argText.startsWith("Disable") || argText === "No" || argText.startsWith("Deny"));
-						let className = "optionMacroOption " + (isEnableOption ? "optionMacroEnable" : isDisableOption ? "optionMacroDisable" : "");
+						let className = "optionMacroOption ";
+						if (isEnableOption === "optionMacroEnable") {
+							className += isDisableOption;
+						} else {
+							if (isDisableOption) {
+								className += "optionMacroDisable";
+							}
+						}
 						if (found_index !== i || hasMultipleOptionsWithSameValue) {
 							let onClickChange = args[hasComparitor ? 3 : 2];
 							onClickChange = onClickChange ? ', ' + onClickChange : '';
diff --git a/src/js/pregJS.js b/src/js/pregJS.js
index 6c913bc07518bf259cb3132d6eff3e954d227d0b..28a6852c870c3aa847b8bced9274c05be8cb5719 100644
--- a/src/js/pregJS.js
+++ b/src/js/pregJS.js
@@ -1,5 +1,5 @@
 /* Major props to the anons who worked together to forge the Super Pregnancy Project. Let your legacy go unforgotten.*/
-window.getPregBellySize = function (s) {
+window.getPregBellySize = function(s) {
 	let targetLen;
 	let gestastionWeek = s.preg;
 	let fetuses = s.pregType;
@@ -21,7 +21,7 @@ window.getPregBellySize = function (s) {
  * @param {App.Entity.SlaveState} slave
  * @returns {string}
  */
-window.bellyAdjective = function (slave) {
+window.bellyAdjective = function(slave) {
 	let r = ``;
 	slave = slave || State.variables.activeSlave;
 	if (slave.belly >= 1500) {
@@ -65,7 +65,7 @@ window.bellyAdjective = function (slave) {
 };
 
 /* calculates and returns expected ovum count during conception*/
-window.setPregType = function (actor) {
+window.setPregType = function(actor) {
 	/* IMHO rework is possible. Can be more interesting to play, if this code will take in account more body conditions - age, fat, food, hormone levels, etc. */
 
 	let ovum = jsRandom(actor.pregData.normalOvaMin, actor.pregData.normalOvaMax); // for default human profile it's always 1.
@@ -84,7 +84,7 @@ window.setPregType = function (actor) {
 
 	if (actor.broodmother < 1) { // Broodmothers should be not processed here. Necessary now.
 		if (typeof actor.readyOva === "number" && actor.readyOva !== 0) {
-			ovum = actor.readyOva; //just single override; for delayed impregnation cases
+			ovum = actor.readyOva; // just single override; for delayed impregnation cases
 		} else if (actor.ID === -1) {
 			if (actor.geneticQuirks.fertility === 2 && actor.geneticQuirks.hyperFertility === 2) { // Do not mix with sperm
 				if (actor.fertDrugs === 1) {
@@ -397,7 +397,7 @@ window.setPregType = function (actor) {
  fatherID is the ID of her sire or 0 if undefined.
  displayOverride is an override if defined - fatherID must be defined in this case.
 */
-window.knockMeUp = function (target, chance, hole, fatherID, displayOverride) {
+window.knockMeUp = function(target, chance, hole, fatherID, displayOverride) {
 	const V = State.variables;
 	let pronouns;
 	let He;
@@ -407,7 +407,7 @@ window.knockMeUp = function (target, chance, hole, fatherID, displayOverride) {
 		He = capFirstChar(pronouns.pronoun);
 	}
 	if (V.seePreg !== 0) {
-		if (jsRandom(0, 99) < (chance + (V.reproductionFormula*((target.pregSource <= 0) ? ((target.ID === -1) ? 0 : 10) : 20)))) {
+		if (jsRandom(0, 99) < (chance + (V.reproductionFormula * ((target.pregSource <= 0) ? ((target.ID === -1) ? 0 : 10) : 20)))) {		// FIXME: nested ternary
 			if (target.mpreg === hole) {
 				if (target.pregWeek <= 0) {
 					target.preg = 1;
@@ -476,29 +476,29 @@ window.knockMeUp = function (target, chance, hole, fatherID, displayOverride) {
 	return r;
 };
 
-window.getIncubatorReserved = function(/*slaves*/) {
+window.getIncubatorReserved = function(/* slaves */) {
 	return FetusGlobalReserveCount("incubator");
 };
 
-window.getNurseryReserved = function(/*slaves*/) {
+window.getNurseryReserved = function(/* slaves */) {
 	return FetusGlobalReserveCount("nursery");
 };
 
-window.findFather = function (fatherID) {
+window.findFather = function(fatherID) {
 	let father;
 	let V = State.variables;
 
 	father = V.slaves[V.slaveIndices[fatherID]];
 	if (father === undefined) {
 		if (V.incubator > 0) {
-			father = V.tanks.find(function (s) {
+			father = V.tanks.find(function(s) {
 				return s.ID === fatherID;
 			});
 		}
 	}
 	if (father === undefined) {
 		if (V.nursery > 0) {
-			father = V.cribs.find(function (s) {
+			father = V.cribs.find(function(s) {
 				return s.ID === fatherID;
 			});
 		}
@@ -507,7 +507,7 @@ window.findFather = function (fatherID) {
 	return father;
 };
 
-window.adjustFatherProperty = function (actor, property, newValue) {
+window.adjustFatherProperty = function(actor, property, newValue) {
 	let father = findFather(actor.ID);
 	if (father)
 		father[property] = newValue;
@@ -543,6 +543,6 @@ window.adjustFatherProperty = function(actor, property, newValue) {
  * @param {App.Entity.SlaveState} slave
  * @returns {number}
  */
-window.getBaseBoobs = function (slave) {
+window.getBaseBoobs = function(slave) {
 	return slave.boobs - slave.boobsImplant - slave.boobsMilk - slave.boobsWombVolume;
 };
diff --git a/src/js/quickListJS.js b/src/js/quickListJS.js
index ac0241f18e7addc978aac93dda122000ddc75cb9..6d90ef8373ada8fbd8a48b22491138a659782ece 100644
--- a/src/js/quickListJS.js
+++ b/src/js/quickListJS.js
@@ -1,4 +1,4 @@
-window.sortDomObjects = function (objects, attrName, reverse = 0) {
+window.sortDomObjects = function(objects, attrName, reverse = 0) {
 	reverse = (reverse) ? -1 : 1;
 
 	function sortingByAttr(a, b) {
@@ -14,22 +14,22 @@ window.sortDomObjects = function (objects, attrName, reverse = 0) {
 	return objects.toArray().sort(sortingByAttr);
 };
 
-window.sortButtonsByDevotion = function () {
+window.sortButtonsByDevotion = function() {
 	let $sortedButtons = $('#qlWrapper button').remove();
 	$sortedButtons = sortDomObjects($sortedButtons, 'data-devotion');
 	$($sortedButtons).appendTo($('#qlWrapper'));
 	quickListBuildLinks();
 };
 
-window.sortButtonsByTrust = function () {
+window.sortButtonsByTrust = function() {
 	let $sortedButtons = $('#qlWrapper button').remove();
 	$sortedButtons = sortDomObjects($sortedButtons, 'data-trust');
 	$($sortedButtons).appendTo($('#qlWrapper'));
 	quickListBuildLinks();
 };
 
-window.quickListBuildLinks = function () {
-	$("[data-scroll-to]").click(function () {
+window.quickListBuildLinks = function() {
+	$("[data-scroll-to]").click(function() {
 		let $this = $(this),
 			$toElement = $this.attr('data-scroll-to');
 		// note the * 1 enforces $offset to be an integer, without
@@ -43,31 +43,31 @@ window.quickListBuildLinks = function () {
 	});
 };
 
-window.sortIncubatorPossiblesByName = function () {
+window.sortIncubatorPossiblesByName = function() {
 	let $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
 	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-name');
 	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
 };
 
-window.sortIncubatorPossiblesByPregnancyWeek = function () {
+window.sortIncubatorPossiblesByPregnancyWeek = function() {
 	let $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
 	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-preg-week');
 	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
 };
 
-window.sortIncubatorPossiblesByPregnancyCount = function () {
+window.sortIncubatorPossiblesByPregnancyCount = function() {
 	let $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
 	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-preg-count');
 	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
 };
 
-window.sortIncubatorPossiblesByReservedSpots = function () {
+window.sortIncubatorPossiblesByReservedSpots = function() {
 	let $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
 	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-reserved-spots');
 	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
 };
 
-window.sortIncubatorPossiblesByPreviousSort = function () {
+window.sortIncubatorPossiblesByPreviousSort = function() {
 	let sort = State.variables.sortIncubatorList;
 	if ('unsorted' !== sort) {
 		if ('Name' === sort) {
@@ -82,31 +82,31 @@ window.sortIncubatorPossiblesByPreviousSort = function () {
 	}
 };
 
-window.sortNurseryPossiblesByName = function () {
+window.sortNurseryPossiblesByName = function() {
 	let $sortedNurseryPossibles = $('#qlNursery div.possible').detach();
 	$sortedNurseryPossibles = sortDomObjects($sortedNurseryPossibles, 'data-name');
 	$($sortedNurseryPossibles).appendTo($('#qlNursery'));
 };
 
-window.sortNurseryPossiblesByPregnancyWeek = function () {
+window.sortNurseryPossiblesByPregnancyWeek = function() {
 	let $sortedNurseryPossibles = $('#qlNursery div.possible').detach();
 	$sortedNurseryPossibles = sortDomObjects($sortedNurseryPossibles, 'data-preg-week');
 	$($sortedNurseryPossibles).appendTo($('#qlNursery'));
 };
 
-window.sortNurseryPossiblesByPregnancyCount = function () {
+window.sortNurseryPossiblesByPregnancyCount = function() {
 	let $sortedNurseryPossibles = $('#qlNursery div.possible').detach();
 	$sortedNurseryPossibles = sortDomObjects($sortedNurseryPossibles, 'data-preg-count');
 	$($sortedNurseryPossibles).appendTo($('#qlNursery'));
 };
 
-window.sortNurseryPossiblesByReservedSpots = function () {
+window.sortNurseryPossiblesByReservedSpots = function() {
 	let $sortedNurseryPossibles = $('#qlNursery div.possible').detach();
 	$sortedNurseryPossibles = sortDomObjects($sortedNurseryPossibles, 'data-reserved-spots');
 	$($sortedNurseryPossibles).appendTo($('#qlNursery'));
 };
 
-window.sortNurseryPossiblesByPreviousSort = function () {
+window.sortNurseryPossiblesByPreviousSort = function() {
 	let sort = State.variables.sortNurseryList;
 	if ('unsorted' !== sort) {
 		if ('Name' === sort) {
diff --git a/src/js/rbuttonJS.js b/src/js/rbuttonJS.js
index 8ae69b6e7ba7200b3c0f415eb8105fa6491c1a87..71107a368d2aefc6426fde8e836b51e53bef2525 100644
--- a/src/js/rbuttonJS.js
+++ b/src/js/rbuttonJS.js
@@ -83,7 +83,7 @@ Macro.add('rbutton', {
 					}
 				}
 			})
-			.ready(function () {
+			.ready(function() {
 				// alert ("DOM finished");
 				if (el.checked && replaceID.length > 0 && replaceText.length > 0) {
 
diff --git a/src/js/removeActiveSlave.js b/src/js/removeActiveSlave.js
index 298bcba642b9718c8327f34894f77f21b4fcb8ac..45b14664e392d99eb35d05602acfb6b5b5abd4fa 100644
--- a/src/js/removeActiveSlave.js
+++ b/src/js/removeActiveSlave.js
@@ -125,7 +125,7 @@ window.removeActiveSlave = function removeActiveSlave() {
 		}
 
 		if (Array.isArray(V.personalAttention)) {
-			const _rasi = V.personalAttention.findIndex(function (s) {
+			const _rasi = V.personalAttention.findIndex(function(s) {
 				return s.ID === AS_ID;
 			});
 			if (_rasi !== -1) {
@@ -197,7 +197,7 @@ window.removeActiveSlave = function removeActiveSlave() {
 			}
 		}
 
-		const _geneIndex = V.genePool.findIndex(function (s) {
+		const _geneIndex = V.genePool.findIndex(function(s) {
 			return s.ID === AS_ID;
 		});
 		if (_geneIndex !== -1) {
@@ -337,7 +337,7 @@ window.removeNonNGPSlave = function removeNonNGPSlave(removedSlave) {
 			}
 		});
 
-		const _geneIndex = V.genePool.findIndex(function (s) {
+		const _geneIndex = V.genePool.findIndex(function(s) {
 			return s.ID === ID;
 		});
 		if (_geneIndex !== -1) {
diff --git a/src/js/rulesAssistant.js b/src/js/rulesAssistant.js
index c22939624559459152bc795995eb3095a2bb4833..16814f68b090331e4a5e6ca0d75d02c8067f1329 100644
--- a/src/js/rulesAssistant.js
+++ b/src/js/rulesAssistant.js
@@ -3,7 +3,7 @@
  * @param {Object[]} rules
  * @returns {boolean}
  */
-window.hasSurgeryRule = function (slave, rules) {
+window.hasSurgeryRule = function(slave, rules) {
 	return rules.some(
 		rule => ruleApplied(slave, rule) && rule.set.autoSurgery > 0);
 };
@@ -14,7 +14,7 @@ window.hasSurgeryRule = function (slave, rules) {
  * @param {string} what
  * @returns {boolean}
  */
-window.hasRuleFor = function (slave, rules, what) {
+window.hasRuleFor = function(slave, rules, what) {
 	return rules.some(
 		rule => ruleApplied(slave, rule) && rule[what] !== "no default setting");
 };
@@ -24,7 +24,7 @@ window.hasRuleFor = function (slave, rules, what) {
  * @param {Object[]} rules
  * @returns {boolean}
  */
-window.hasHColorRule = function (slave, rules) {
+window.hasHColorRule = function(slave, rules) {
 	return hasRulefor(slave, rules, "hColor");
 };
 
@@ -33,7 +33,7 @@ window.hasHColorRule = function (slave, rules) {
  * @param {Object[]} rules
  * @returns {boolean}
  * */
-window.hasHStyleRule = function (slave, rules) {
+window.hasHStyleRule = function(slave, rules) {
 	return hasRulefor(slave, rules, "hStyle");
 };
 
@@ -42,7 +42,7 @@ window.hasHStyleRule = function (slave, rules) {
  * @param {Object[]} rules
  * @returns {boolean}
  * */
-window.hasEyeColorRule = function (slave, rules) {
+window.hasEyeColorRule = function(slave, rules) {
 	return hasRulefor(slave, rules, "eyeColor");
 };
 
@@ -52,7 +52,7 @@ window.hasEyeColorRule = function (slave, rules) {
  * @param {Object[]} rules
  * @returns {boolean}
  */
-window.lastPregRule = function (slave, rules) {
+window.lastPregRule = function(slave, rules) {
 	return rules.some(rule =>
 		ruleApplied(slave, rule) && rule.set.preg === -1);
 };
@@ -85,7 +85,7 @@ window.mergeRules = function mergeRules(rules) {
  * @param {Object} rule
  * @returns {boolean}
  */
-window.ruleApplied = function (slave, rule) {
+window.ruleApplied = function(slave, rule) {
 	return slave.currentRules.includes(rule.ID);
 };
 
diff --git a/src/js/rulesAssistantOptions.js b/src/js/rulesAssistantOptions.js
index a5b64fa2ae4bc049eadbba8d39d212b6d4ba8270..7c03767bba4222154cd5085765d76079629d8612 100644
--- a/src/js/rulesAssistantOptions.js
+++ b/src/js/rulesAssistantOptions.js
@@ -5,7 +5,7 @@
 // wrapped in a closure so as not to pollute the global namespace
 // the widgets are generic enough to be reusable; if similar user interfaces are ported to JS, we could move the classes to the global scope
 
-window.rulesAssistantOptions = (function () {
+window.rulesAssistantOptions = (function() {
 	"use strict";
 	let V, current_rule;
 
diff --git a/src/js/rulesAutosurgery.js b/src/js/rulesAutosurgery.js
index 4928ecd41878c35615403dd044cc8d5353236cce..6cc77c4bfc933687327546a1629a77fc70fe2e29 100644
--- a/src/js/rulesAutosurgery.js
+++ b/src/js/rulesAutosurgery.js
@@ -1,5 +1,5 @@
 /* eslint-disable camelcase */
-window.rulesAutosurgery = (function () {
+window.rulesAutosurgery = (function() {
 	"use strict";
 	let V;
 	let r;
diff --git a/src/js/slaveCostJS.js b/src/js/slaveCostJS.js
index 483607e358d68d45d00a63921c01dc180edb97d0..06506231439f99672d200d691fe141d5c96930c7 100644
--- a/src/js/slaveCostJS.js
+++ b/src/js/slaveCostJS.js
@@ -1,4 +1,4 @@
-window.Beauty = (function () {
+window.Beauty = (function() {
 	"use strict";
 	let V;
 	let arcology;
@@ -1419,7 +1419,7 @@ window.Beauty = (function () {
 // it has been wrapped in a closure so as not to pollute the global namespace
 // and so that nested functions are only evaluated once
 
-window.FResult = (function () {
+window.FResult = (function() {
 	"use strict";
 	// we can't initialize our global variables on load, because SugarCube.State isn't initialized
 	// instead, declare them and initialize on run time
@@ -1807,7 +1807,7 @@ window.FResult = (function () {
 	return FResult;
 })();
 
-window.slaveCost = (function () {
+window.slaveCost = (function() {
 	"use strict";
 	let V;
 	let arcology;
diff --git a/src/js/slaveGenerationJS.js b/src/js/slaveGenerationJS.js
index a36f74df1c2ff658096f684e5836f653e6babb4b..4bed7f0d77090ad0574725420b3a2a95abb3240c 100644
--- a/src/js/slaveGenerationJS.js
+++ b/src/js/slaveGenerationJS.js
@@ -1511,7 +1511,7 @@ window.generatePronouns = function generatePronouns(slave) {
 	}
 };
 
-window.generatePuberty = function (slave) {
+window.generatePuberty = function(slave) {
 	if ((slave.ovaries === 1 || slave.mpreg === 1) && slave.physicalAge >= slave.pubertyAgeXX) {
 		slave.pubertyXX = 1;
 	} else {
diff --git a/src/js/slaveStatsChecker.js b/src/js/slaveStatsChecker.js
index 7fb1b12bb37ed30554d5811f815064655a0b14ff..debd3a7aa58b5e49a2d9820dd02a59d102d83fb3 100644
--- a/src/js/slaveStatsChecker.js
+++ b/src/js/slaveStatsChecker.js
@@ -1,4 +1,4 @@
-window.SlaveStatsChecker = (function () {
+window.SlaveStatsChecker = (function() {
 	return {
 		checkForLisp: hasLisp,
 		isModded: isModded,
@@ -174,7 +174,7 @@ window.SlaveStatsChecker = (function () {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isSlim = function (slave) {
+window.isSlim = function(slave) {
 	let slim = false;
 	const ArcologyZero = State.variables.arcologies[0];
 
@@ -206,7 +206,7 @@ window.isSlim = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {number}
  */
-window.slimPass = function (slave) {
+window.slimPass = function(slave) {
 	let slimPass = 0;
 	const ArcologyZero = State.variables.arcologies[0];
 
@@ -235,7 +235,7 @@ window.slimPass = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isStacked = function (slave) {
+window.isStacked = function(slave) {
 	return (slave.butt > 4) && (slave.boobs > 800);
 };
 
@@ -243,7 +243,7 @@ window.isStacked = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isModded = function (slave) {
+window.isModded = function(slave) {
 	const tatScore = SlaveStatsChecker.tatScore(slave);
 	const piercingScore = SlaveStatsChecker.piercingScore(slave);
 	const modScore = piercingScore + tatScore;
@@ -255,7 +255,7 @@ window.isModded = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isUnmodded = function (slave) {
+window.isUnmodded = function(slave) {
 	return (!isModded(slave) && (slave.corsetPiercing === 0) && (SlaveStatsChecker.piercingScore(slave) < 3) && (SlaveStatsChecker.tatScore(slave) < 2));
 };
 
@@ -263,7 +263,7 @@ window.isUnmodded = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isXY = function (slave) {
+window.isXY = function(slave) {
 	return (slave.dick > 0);
 };
 
@@ -271,7 +271,7 @@ window.isXY = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isYoung = function (slave) {
+window.isYoung = function(slave) {
 	return (slave.visualAge < 30);
 };
 
@@ -279,7 +279,7 @@ window.isYoung = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isPreg = function (slave) {
+window.isPreg = function(slave) {
 	return ((slave.bellyPreg >= 5000) || (slave.bellyImplant >= 5000));
 };
 
@@ -287,7 +287,7 @@ window.isPreg = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isNotPreg = function (slave) {
+window.isNotPreg = function(slave) {
 	return (!isPreg(slave) && (slave.belly < 100) && (slave.weight < 30) && !setup.fakeBellies.includes(slave.bellyAccessory));
 };
 
@@ -295,7 +295,7 @@ window.isNotPreg = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isPure = function (slave) {
+window.isPure = function(slave) {
 	return ((slave.boobsImplant === 0) && (slave.buttImplant === 0) && (slave.waist >= -95) && (slave.lipsImplant === 0) && (slave.faceImplant < 30) && (slave.bellyImplant === -1) && (Math.abs(slave.shouldersImplant) < 2) && (Math.abs(slave.hipsImplant) < 2));
 };
 
@@ -303,7 +303,7 @@ window.isPure = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isSurgicallyImproved = function (slave) {
+window.isSurgicallyImproved = function(slave) {
 	return ((slave.boobsImplant > 0) && (slave.buttImplant > 0) && (slave.waist < -10) && (slave.lipsImplant > 0));
 };
 
@@ -311,7 +311,7 @@ window.isSurgicallyImproved = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isFullyPotent = function (slave) {
+window.isFullyPotent = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.dick > 0 && slave.balls > 0 && slave.ballType !== "sterile" && slave.hormoneBalance < 100 && slave.drugs !== "hormone blockers") {
@@ -324,7 +324,7 @@ window.isFullyPotent = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canGetPregnant = function (slave) {
+window.canGetPregnant = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.preg === -1) {
@@ -346,7 +346,7 @@ window.canGetPregnant = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isFertile = function (slave) {
+window.isFertile = function(slave) {
 	if (!slave) {
 		return null;
 	}
@@ -394,7 +394,7 @@ window.isFertile = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canAchieveErection = function (slave) {
+window.canAchieveErection = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.dick < 7 && slave.dick > 0 && slave.drugs !== "hormone blockers" && (slave.balls > 0 ? slave.hormoneBalance < 100 : slave.hormoneBalance <= -100) && slave.ballType !== "sterile") {
@@ -407,7 +407,7 @@ window.canAchieveErection = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canPenetrate = function (slave) {
+window.canPenetrate = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (!canAchieveErection(slave)) {
@@ -424,7 +424,7 @@ window.canPenetrate = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canSee = function (slave) {
+window.canSee = function(slave) {
 	if (!slave) {
 		return null;
 	}
@@ -435,7 +435,7 @@ window.canSee = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canHear = function (slave) {
+window.canHear = function(slave) {
 	if (!slave) {
 		return null;
 	}
@@ -446,7 +446,7 @@ window.canHear = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canSmell = function (slave) {
+window.canSmell = function(slave) {
 	if (!slave) {
 		return null;
 	}
@@ -457,7 +457,7 @@ window.canSmell = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canTaste = function (slave) {
+window.canTaste = function(slave) {
 	if (!slave) {
 		return null;
 	}
@@ -468,7 +468,7 @@ window.canTaste = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canWalk = function (slave) {
+window.canWalk = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.amp === 1) {
@@ -501,7 +501,7 @@ window.canWalk = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canTalk = function (slave) {
+window.canTalk = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.accent > 2) {
@@ -526,7 +526,7 @@ window.canTalk = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canDoAnal = function (slave) {
+window.canDoAnal = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.chastityAnus === 1) {
@@ -539,7 +539,7 @@ window.canDoAnal = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.canDoVaginal = function (slave) {
+window.canDoVaginal = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.vagina < 0) {
@@ -554,7 +554,7 @@ window.canDoVaginal = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.tooFatSlave = function (slave) {
+window.tooFatSlave = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.weight > 190 + (slave.muscles / 5) && slave.physicalAge >= 18) {
@@ -573,7 +573,7 @@ window.tooFatSlave = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.tooBigBreasts = function (slave) {
+window.tooBigBreasts = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.boobs > 30000 + (slave.muscles * 100) && slave.physicalAge >= 18) {
@@ -592,7 +592,7 @@ window.tooBigBreasts = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.tooBigBelly = function (slave) {
+window.tooBigBelly = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.belly >= 450000 + (slave.muscles * 2000) && slave.physicalAge >= 18) {
@@ -611,7 +611,7 @@ window.tooBigBelly = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.tooBigBalls = function (slave) {
+window.tooBigBalls = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.balls >= 30 + (slave.muscles * .3) && slave.physicalAge <= 3) {
@@ -628,7 +628,7 @@ window.tooBigBalls = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.tooBigDick = function (slave) {
+window.tooBigDick = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.dick >= 20 + (slave.muscles * .1) && slave.physicalAge <= 3 && slave.dick !== 0) {
@@ -645,7 +645,7 @@ window.tooBigDick = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.tooBigButt = function (slave) {
+window.tooBigButt = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.butt > 10 && slave.physicalAge <= 3) {
@@ -660,7 +660,7 @@ window.tooBigButt = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.isVegetable = function (slave) {
+window.isVegetable = function(slave) {
 	slave = slave || State.variables.activeSlave;
 	if (!slave) {
 		return false;
diff --git a/src/js/storyJS.js b/src/js/storyJS.js
index 3846430b59821e10a33cd325ad2800413603ea47..20fa7d554b6b47b442250d0ffd10c7308b0472eb 100644
--- a/src/js/storyJS.js
+++ b/src/js/storyJS.js
@@ -1,7 +1,7 @@
 /* config.history.tracking = false;*/
 // State.expired.disable;
 
-window.variableAsNumber = function (x, defaultValue, minValue, maxValue) {
+window.variableAsNumber = function(x, defaultValue, minValue, maxValue) {
 	x = Number(x);
 	if (x !== x) { // NaN
 		return defaultValue || 0; // In case the default value was not supplied.
@@ -19,7 +19,7 @@ window.variableAsNumber = function (x, defaultValue, minValue, maxValue) {
  * @param {App.Entity.SlaveState} slave
  * @return {boolean}
  */
-window.isSexuallyPure = function (slave) {
+window.isSexuallyPure = function(slave) {
 	if (!slave) {
 		return null;
 	}
@@ -27,7 +27,7 @@ window.isSexuallyPure = function (slave) {
 };
 
 if (typeof interpolate === "undefined") {
-	const interpolate = function (x0, y0, x1, y1, x) {
+	const interpolate = function(x0, y0, x1, y1, x) {
 		if (x <= x0) {
 			return y0;
 		} else if (x >= x1) {
@@ -39,7 +39,7 @@ if (typeof interpolate === "undefined") {
 	window.interpolate = interpolate;
 }
 
-window.removeFromArray = function (arr, val) {
+window.removeFromArray = function(arr, val) {
 	for (let i = 0; i < arr.length; i++) {
 		if (val === arr[i]) {
 			return arr.splice(i, 1);
@@ -48,10 +48,10 @@ window.removeFromArray = function (arr, val) {
 	return null;
 };
 
-window.filterInPlace = function (arr, callback, thisArg) {
+window.filterInPlace = function(arr, callback, thisArg) {
 	let j = 0;
 
-	arr.forEach(function (e, i) {
+	arr.forEach(function(e, i) {
 		if (callback.call(thisArg, e, i, arr)) {
 			arr[j++] = e;
 		}
@@ -66,7 +66,7 @@ window.filterInPlace = function (arr, callback, thisArg) {
  * @param {App.Entity.SlaveState} slave2
  * @returns {boolean}
  */
-window.canBreed = function (slave1, slave2) {
+window.canBreed = function(slave1, slave2) {
 	if (!slave1 || !slave2) {
 		return null;
 	}
@@ -80,7 +80,7 @@ window.canBreed = function (slave1, slave2) {
  * @param {App.Entity.SlaveState} slave2
  * @returns {boolean}
  */
-window.canImpreg = function (slave1, slave2) {
+window.canImpreg = function(slave1, slave2) {
 	if (!slave1 || !slave2) {
 		return null;
 	} else if (slave2.dick < 1) {
@@ -121,7 +121,7 @@ window.canImpreg = function (slave1, slave2) {
 	}
 };
 
-window.isPlayerFertile = function (PC) {
+window.isPlayerFertile = function(PC) {
 	if (!PC) {
 		return null;
 	} else if (PC.preg !== 0) {
@@ -141,7 +141,7 @@ window.isPlayerFertile = function (PC) {
  * @param {App.Entity.SlaveState} slave
  * @returns {null | string}
  */
-window.relationTargetWord = function (slave) {
+window.relationTargetWord = function(slave) {
 	if (!slave) {
 		return null;
 	} else if (slave.relation === "daughter") {
@@ -156,7 +156,7 @@ window.relationTargetWord = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {number}
  */
-window.milkAmount = function (slave) {
+window.milkAmount = function(slave) {
 	let milk;
 	let calcs;
 	if (!slave) {
@@ -206,7 +206,7 @@ window.milkAmount = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {number}
  */
-window.cumAmount = function (slave) {
+window.cumAmount = function(slave) {
 	let cum = 0;
 	let calcs = 0;
 	if (!slave) {
@@ -252,7 +252,7 @@ window.cumAmount = function (slave) {
 	return cum;
 };
 
-window.lispReplace = function (text) {
+window.lispReplace = function(text) {
 	text = text.replace(/Sh/g, "Th");
 	text = text.replace(/SS/g, "Th");
 	text = text.replace(/Ss/g, "Th");
@@ -340,7 +340,7 @@ window.lispReplace = function (text) {
  * @param {object} arcology		// I think
  * @returns {number}
  */
-window.repGainSacrifice = function (slave, arcology) {
+window.repGainSacrifice = function(slave, arcology) {
 	slave = slave || State.variables.activeSlave;
 	arcology = arcology || State.variables.arcologies[0];
 	if (!slave || !arcology || arcology.FSAztecRevivalist === "unset" || arcology.FSAztecRevivalist <= 0) {
@@ -355,33 +355,33 @@ window.repGainSacrifice = function (slave, arcology) {
  * @param {App.Entity.SlaveState} slave
  * @returns {boolean}
  */
-window.bodyguardSuccessorEligible = function (slave) {
+window.bodyguardSuccessorEligible = function(slave) {
 	if (!slave) {
 		return false;
 	}
 	return (slave.devotion > 50 && slave.muscles >= 0 && slave.weight < 100 && slave.boobs < 8000 && slave.butt < 10 && slave.belly < 5000 && slave.balls < 10 && slave.dick < 10 && slave.preg < 20 && slave.fuckdoll === 0 && slave.fetish !== "mindbroken" && canWalk(slave));
 };
 
-window.ngUpdateGenePool = function (genePool) {
+window.ngUpdateGenePool = function(genePool) {
 	const transferredSlaveIds = (State.variables.slaves || [])
-		.filter(function (s) {
+		.filter(function(s) {
 			return s.ID >= 1200000;
 		})
-		.map(function (s) {
+		.map(function(s) {
 			return s.ID - 1200000;
 		});
 	return (genePool || [])
-		.filter(function (s) {
+		.filter(function(s) {
 			return transferredSlaveIds.indexOf(s.ID) >= 0;
 		})
-		.map(function (s) {
+		.map(function(s) {
 			const result = jQuery.extend(true, {}, s);
 			result.ID += 1200000;
 			return result;
 		});
 };
 
-window.ngUpdateMissingTable = function (missingTable) {
+window.ngUpdateMissingTable = function(missingTable) {
 	const newTable = {};
 
 	(State.variables.slaves || [])
@@ -395,7 +395,7 @@ window.ngUpdateMissingTable = function (missingTable) {
 	return newTable;
 };
 
-window.toJson = function (obj) {
+window.toJson = function(obj) {
 	let jsontext = JSON.stringify(obj);
 	jsontext = jsontext.replace(/^{/, "");
 	jsontext = jsontext.replace(/}$/, "");
@@ -406,7 +406,7 @@ window.toJson = function (obj) {
  * @param {App.Entity.SlaveState} slave
  * @returns {string}
  */
-window.nippleColor = function (slave) {
+window.nippleColor = function(slave) {
 	slave = slave || State.variables.activeSlave;
 	if (skinToneLevel(slave.skin) < 8) {
 		if (slave.preg > slave.pregData.normalBirth / 4 || (slave.counter.birthsTotal > 0 && slave.lactation > 0)) {
@@ -440,7 +440,7 @@ window.nippleColor = function (slave) {
  * @param {object} PC
  * @returns {number}
  */
-window.overpowerCheck = function (slave, PC) {
+window.overpowerCheck = function(slave, PC) {
 	let strength;
 
 	if (State.variables.arcologies[0].FSPhysicalIdealist !== "unset") {
@@ -467,7 +467,7 @@ window.overpowerCheck = function (slave, PC) {
  * @param {App.Entity.SlaveState} slave
  * @returns {number[]}
  */
-window.impregnatedBy = function (slave) {
+window.impregnatedBy = function(slave) {
 	const IDArray = [];
 	if (!Array.isArray(slave.womb)) {
 		WombInit(slave);
@@ -484,15 +484,15 @@ window.impregnatedBy = function (slave) {
  * @param {App.Entity.SlaveState} father
  * @returns {boolean}
  */
-window.isImpregnatedBy = function (mother, father) {
+window.isImpregnatedBy = function(mother, father) {
 	return impregnatedBy(mother).includes(father.ID);
 };
 
-window.jsAlert = function (obj) {
+window.jsAlert = function(obj) {
 	alert(obj);
 };
 
-window.jsConsoleInfo = function (obj) {
+window.jsConsoleInfo = function(obj) {
 	// eslint-disable-next-line no-console
 	console.info(obj);
 };
@@ -573,7 +573,7 @@ window.SoftenSexualFlaw = function SoftenSexualFlaw(slave) {
 	slave.sexualFlaw = "none";
 };
 
-window.generatePlayerPronouns = function (PC) {
+window.generatePlayerPronouns = function(PC) {
 	if (PC.title === 0) {
 		PC.pronoun = "she";
 		PC.possessivePronoun = "hers";
@@ -591,7 +591,7 @@ window.generatePlayerPronouns = function (PC) {
 	}
 };
 
-window.generateAssistantPronouns = function () {
+window.generateAssistantPronouns = function() {
 	const V = State.variables;
 	if (V.assistant === 0) {
 		V.assistantPronouns.pronoun = "it";
diff --git a/src/js/textboxJS.js b/src/js/textboxJS.js
index 76ddd8b9b8f9386466f6fc6b6c43e106692e4984..52adb138876e93d22bae1b08bc7cba80e03c86c2 100644
--- a/src/js/textboxJS.js
+++ b/src/js/textboxJS.js
@@ -1,5 +1,5 @@
 /* Nicked off greyelf, works for replace textboxes */
-window.setReplaceTextboxMaxLength = function (storyVarName, maxLength) {
+window.setReplaceTextboxMaxLength = function(storyVarName, maxLength) {
 	const textboxId = `#textbox-${ Util.slugify(storyVarName)}`;
 	$(textboxId)
 		.attr("maxlength", maxLength)
@@ -11,9 +11,9 @@ window.setReplaceTextboxMaxLength = function (storyVarName, maxLength) {
 };
 
 /* Nicked off TheMadExile, works for non-replace textboxes */
-window.setTextboxMaxLength = function (storyVarName, maxLength) {
+window.setTextboxMaxLength = function(storyVarName, maxLength) {
 	const textboxId = `#textbox-${ Util.slugify(storyVarName)}`;
-	postdisplay[`${textboxId }-maxlength`] = function (taskName) {
+	postdisplay[`${textboxId }-maxlength`] = function(taskName) {
 		delete postdisplay[taskName];
 		$(textboxId)
 			.attr("maxlength", maxLength)
diff --git a/src/js/utilJS.js b/src/js/utilJS.js
index 50402dca1afb4cb09cb5b5b52a5d70d3476bf478..a32c2dc4a633d4f3984a2314a611ee28b867b2d5 100644
--- a/src/js/utilJS.js
+++ b/src/js/utilJS.js
@@ -52,7 +52,7 @@
  *
  * There's also limitHeight which you're not using. It's basically limitMult in different units.
  */
-window.Height = (function () {
+window.Height = (function() {
 	"use strict";
 
 	// Global configuration (for different game modes/options/types)
@@ -64,7 +64,7 @@ window.Height = (function () {
 	let maxHeight = 999;
 
 	// Configuration method for the above values
-	const _config = function (conf) {
+	const _config = function(conf) {
 		if (_.isUndefined(conf)) {
 			return {
 				limitMult: [minMult, maxMult],
@@ -538,13 +538,13 @@ window.Height = (function () {
 	};
 
 	// Helper method - table lookup for nationality/race combinations
-	const nationalityMeanHeight = function (table, nationality, race, def) {
+	const nationalityMeanHeight = function(table, nationality, race, def) {
 		return table[`${nationality }.${ race}`] || table[nationality] || table[`.${ race}`] || table[""] || def;
 	};
 
 	// Helper method: Generate a skewed normal random variable with the skew s
 	// Reference: http://azzalini.stat.unipd.it/SN/faq-r.html
-	const skewedGaussian = function (s) {
+	const skewedGaussian = function(s) {
 		let randoms = gaussianPair();
 		if (s === 0) {
 			// Don't bother, return an unskewed normal distribution
@@ -556,7 +556,7 @@ window.Height = (function () {
 	};
 
 	// Height multiplier generator; skewed gaussian according to global parameters
-	const multGenerator = function () {
+	const multGenerator = function() {
 		let result = skewedGaussian(skew);
 		while (result < minMult || result > maxMult) {
 			result = skewedGaussian(skew);
@@ -565,7 +565,7 @@ window.Height = (function () {
 	};
 
 	// Helper method: Generate a height based on the mean one and limited according to config.
-	const heightGenerator = function (mean) {
+	const heightGenerator = function(mean) {
 		let result = mean * (1 + multGenerator() * spread);
 		while (result < minHeight || result > maxHeight) {
 			result = mean * (1 + multGenerator() * spread);
@@ -574,7 +574,7 @@ window.Height = (function () {
 	};
 
 	// Helper method - apply age and genes to the adult height
-	const applyAge = function (height, age, genes) {
+	const applyAge = function(height, age, genes) {
 		if (!_.isFinite(age) || age < 2 || age >= 20) {
 			return height;
 		}
@@ -616,7 +616,7 @@ window.Height = (function () {
 		}
 	};
 
-	const _meanHeight = function (nationality, race, genes, age) {
+	const _meanHeight = function(nationality, race, genes, age) {
 		if (_.isObject(nationality)) {
 			// We got called with a single slave as the argument
 			return _meanHeight(nationality.nationality, nationality.race, nationality.genes, nationality.physicalAge + nationality.birthWeek / 52.0);
@@ -659,7 +659,7 @@ window.Height = (function () {
 		return applyAge(result, age, genes);
 	};
 
-	const _randomHeight = function (nationality, race, genes, age) {
+	const _randomHeight = function(nationality, race, genes, age) {
 		const mean = _meanHeight(nationality, race, genes, age);
 		// If we got called with a slave object and options, temporarily modify
 		// our configuration.
@@ -673,7 +673,7 @@ window.Height = (function () {
 		return heightGenerator(mean);
 	};
 
-	const _forAge = function (height, age, genes) {
+	const _forAge = function(height, age, genes) {
 		if (_.isObject(age)) {
 			// We got called with a slave as a second argument
 			return applyAge(height, age.physicalAge + age.birthWeek / 52.0, age.genes);
@@ -721,7 +721,7 @@ window.Height = (function () {
  *
  *  This was modeled using the Height generator above. For some more information, see the comments for that.
  */
-window.Intelligence = (function () {
+window.Intelligence = (function() {
 	"use strict";
 
 	// Global configuration (for different game modes/options/types)
@@ -734,7 +734,7 @@ window.Intelligence = (function () {
 	let maxIntelligence = 100;
 
 	// Configuration method for the above values
-	const _config = function (conf) {
+	const _config = function(conf) {
 		if (_.isUndefined(conf)) {
 			return {
 				mean: mean,
@@ -773,7 +773,7 @@ window.Intelligence = (function () {
 
 	// Helper method: Generate a skewed normal random variable with the skew s
 	// Reference: http://azzalini.stat.unipd.it/SN/faq-r.html
-	const skewedGaussian = function (s) {
+	const skewedGaussian = function(s) {
 		let randoms = gaussianPair();
 		if (s === 0) {
 			// Don't bother, return an unskewed normal distribution
@@ -785,7 +785,7 @@ window.Intelligence = (function () {
 	};
 
 	// Intelligence multiplier generator; skewed gaussian according to global parameters
-	const multGenerator = function () {
+	const multGenerator = function() {
 		let result = skewedGaussian(skew);
 		while (result < minMult || result > maxMult) {
 			result = skewedGaussian(skew);
@@ -794,7 +794,7 @@ window.Intelligence = (function () {
 	};
 
 	// Helper method: Transform the values from multGenerator to have the appropriate mean and standard deviation.
-	const intelligenceGenerator = function () {
+	const intelligenceGenerator = function() {
 		let result = multGenerator() * spread + mean;
 		while (result < minIntelligence || result > maxIntelligence) {
 			result = multGenerator() * spread + mean;
@@ -802,7 +802,7 @@ window.Intelligence = (function () {
 		return Math.ceil(result);
 	};
 
-	const _randomIntelligence = function (settings) {
+	const _randomIntelligence = function(settings) {
 		if (settings) {
 			const currentConfig = _config();
 			_config(settings);
@@ -820,7 +820,7 @@ window.Intelligence = (function () {
 })();
 
 // Helper method - generate two independent Gaussian numbers using Box-Muller transform
-window.gaussianPair = function () {
+window.gaussianPair = function() {
 	let r = Math.sqrt(-2.0 * Math.log(1 - Math.random()));
 	let sigma = 2.0 * Math.PI * (1 - Math.random());
 	return [r * Math.cos(sigma), r * Math.sin(sigma)];
@@ -859,23 +859,23 @@ As a categorizer
 <<print $cats.muscleCat.cat(_Slave.muscles)>>
 */
 
-window.Categorizer = function () {
+window.Categorizer = function() {
 	this.cats = Array.prototype.slice.call(arguments)
-		.filter(function (e, i, a) {
+		.filter(function(e, i, a) {
 			return e instanceof Array && e.length === 2 && typeof e[0] === "number" && !isNaN(e[0]) &&
-				a.findIndex(function (val) {
+				a.findIndex(function(val) {
 					return e[0] === val[0];
 				}) === i; /* uniqueness test */
 		})
-		.sort(function (a, b) {
+		.sort(function(a, b) {
 			return b[0] - a[0]; /* reverse sort */
 		});
 };
 
-window.Categorizer.prototype.cat = function (val, def) {
+window.Categorizer.prototype.cat = function(val, def) {
 	let result = def;
 	if (typeof val === "number" && !isNaN(val)) {
-		let foundCat = this.cats.find(function (e) {
+		let foundCat = this.cats.find(function(e) {
 			return val >= e[0];
 		});
 		if (foundCat) {
@@ -890,7 +890,7 @@ window.Categorizer.prototype.cat = function (val, def) {
 	return result;
 };
 
-window.num = function (x) {
+window.num = function(x) {
 	const V = State.variables;
 	const max = V.showNumbersMax;
 
@@ -1009,7 +1009,7 @@ window.num = function (x) {
 	}
 };
 
-window.cashFormat = function (s) {
+window.cashFormat = function(s) {
 	if (!s) {
 		s = 0;
 	} else {
@@ -1022,7 +1022,7 @@ window.cashFormat = function (s) {
 	}
 };
 
-window.repFormat = function (s) {
+window.repFormat = function(s) {
 	const V = State.variables;
 	/* if (!s) { s = 0; }*/
 	if (V.cheatMode === 1 || V.debugMode === 1) {
@@ -1063,7 +1063,7 @@ window.repFormat = function (s) {
 	}
 };
 
-window.massFormat = function (s) {
+window.massFormat = function(s) {
 	if (!s) {
 		s = 0;
 	}
@@ -1079,7 +1079,7 @@ window.massFormat = function (s) {
 	}
 };
 
-window.budgetLine = function (category, title) {
+window.budgetLine = function(category, title) {
 	let income;
 	let expenses;
 	let profits;
@@ -1130,15 +1130,15 @@ window.budgetLine = function (category, title) {
 	}
 };
 
-window.isFloat = function (n) {
+window.isFloat = function(n) {
 	return Number.isFinite(n) && Math.floor(n) !== n;
 };
 
-window.jsRandom = function (min, max) {
+window.jsRandom = function(min, max) {
 	return Math.floor(Math.random() * (max - min + 1) + min);
 };
 
-window.jsRandomMany = function (arr, count) {
+window.jsRandomMany = function(arr, count) {
 	let result = [];
 	let _tmp = arr.slice();
 	for (let i = 0; i < count; i++) {
@@ -1149,7 +1149,7 @@ window.jsRandomMany = function (arr, count) {
 };
 
 // This function wants an array - which explains why it works like array.random(). Give it one or you'll face a NaN
-window.jsEither = function (choices) {
+window.jsEither = function(choices) {
 	let index = Math.floor(Math.random() * choices.length);
 	return choices[index];
 };
@@ -1225,7 +1225,7 @@ window.between = function between(a, low, high) {
 // generate a random, almost unique ID that is compliant (possibly) with RFC 4122
 window.generateNewID = function generateNewID() {
 	let date = Date.now(); // high-precision timer
-	let uuid = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) {
+	let uuid = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(c) {
 		let r = (date + Math.random() * 16) % 16 | 0;
 		date = Math.floor(date / 16);
 		return (c === "x" ? r : (r & 0x3 | 0x8)).toString(16);
@@ -1251,7 +1251,7 @@ window.html5passage = function html5passage(passageFunction) {
 };
 
 // If you want to include a SugarCube passage in a JS function use this. The result must be printed using the <<print>> macro. passageTitle must be a string.
-window.jsInclude = function (passageTitle) {
+window.jsInclude = function(passageTitle) {
 	if (Story.has(passageTitle)) {
 		return Story.get(passageTitle).processText();
 	} else {
@@ -1267,7 +1267,7 @@ window.capFirstChar = function capFirstChar(string) {
  * @param {App.Entity.SlaveState} slave
  * @returns {string}
  */
-window.getSlaveDevotionClass = function (slave) {
+window.getSlaveDevotionClass = function(slave) {
 	if ((!slave) || (!State)) {
 		return undefined;
 	}
@@ -1295,7 +1295,7 @@ window.getSlaveDevotionClass = function (slave) {
  * @param {App.Entity.SlaveState} slave
  * @returns {string}
  */
-window.getSlaveTrustClass = function (slave) {
+window.getSlaveTrustClass = function(slave) {
 	if ((!slave) || (!State)) {
 		return undefined;
 	}
@@ -1325,7 +1325,7 @@ window.getSlaveTrustClass = function (slave) {
 };
 
 // takes an integer e.g. $activeSlave.hLength, returns a string in the format 10 inches
-window.cmToInchString = function (s) {
+window.cmToInchString = function(s) {
 	let inches = Math.round(s / 2.54);
 	if (inches === 0) {
 		if (s === 0) {
@@ -1342,7 +1342,7 @@ window.cmToInchString = function (s) {
 };
 
 // takes an integer e.g. $activeSlave.height, returns a string in the format 6'5"
-window.cmToFootInchString = function (s) {
+window.cmToFootInchString = function(s) {
 	if (Math.round(s / 2.54) < 12) {
 		return cmToInchString(s);
 	}
@@ -1350,12 +1350,12 @@ window.cmToFootInchString = function (s) {
 };
 
 // takes a dick value e.g. $activeSlave.dick, returns a string in the format 6 inches
-window.dickToInchString = function (s) {
+window.dickToInchString = function(s) {
 	return cmToInchString(dickToCM(s));
 };
 
 // takes a dick value e.g. $activeSlave.dick, returns an int of the dick length in cm
-window.dickToCM = function (s) {
+window.dickToCM = function(s) {
 	if (s < 9) {
 		return s * 5;
 	} else if (s === 9) {
@@ -1365,12 +1365,12 @@ window.dickToCM = function (s) {
 };
 
 // takes a ball value e.g. $activeSlave.balls, returns a string in the format 3 inches
-window.ballsToInchString = function (s) {
+window.ballsToInchString = function(s) {
 	return cmToInchString(ballsToCM(s));
 };
 
 // takes a ball value e.g. $activeSlave.balls, returns an int of the ball size in cm
-window.ballsToCM = function (s) {
+window.ballsToCM = function(s) {
 	if (s < 2) {
 		return 0;
 	}
@@ -1378,7 +1378,7 @@ window.ballsToCM = function (s) {
 };
 
 // takes a dick value e.g. $activeSlave.dick, returns a string in the format of either `20cm (8 inches)`, `8 inches`, or `20cm`
-window.dickToEitherUnit = function (s) {
+window.dickToEitherUnit = function(s) {
 	if (State.variables.showInches === 1) {
 		return `${dickToCM(s) }cm (${ dickToInchString(s) })`;
 	}
@@ -1389,7 +1389,7 @@ window.dickToEitherUnit = function (s) {
 };
 
 // takes a ball value e.g. $activeSlave.balls, returns a string in the format of either `20cm (8 inches)`, `8 inches`, or `20cm`
-window.ballsToEitherUnit = function (s) {
+window.ballsToEitherUnit = function(s) {
 	if (State.variables.showInches === 1) {
 		return `${ballsToCM(s) }cm (${ ballsToInchString(s) })`;
 	}
@@ -1400,7 +1400,7 @@ window.ballsToEitherUnit = function (s) {
 };
 
 // takes an int in centimeters e.g. $activeSlave.height, returns a string in the format of either `200cm (6'7")`, `6'7"`, or `200cm`
-window.heightToEitherUnit = function (s) {
+window.heightToEitherUnit = function(s) {
 	if (State.variables.showInches === 1) {
 		return `${s }cm (${ cmToFootInchString(s) })`;
 	}
@@ -1411,7 +1411,7 @@ window.heightToEitherUnit = function (s) {
 };
 
 // takes an int in centimeters e.g. $activeSlave.hLength, returns a string in the format of either `30cm (12 inches)`, `12 inches`, or `30cm`
-window.lengthToEitherUnit = function (s) {
+window.lengthToEitherUnit = function(s) {
 	if (State.variables.showInches === 1) {
 		return `${s }cm (${ cmToInchString(s) })`;
 	}
@@ -1459,7 +1459,7 @@ window.induceLactation = function induceLactation(slave) {
 	return r;
 };
 
-window.ResearchLabStockPile = function () {
+window.ResearchLabStockPile = function() {
 	const V = State.variables;
 	return `__Prosthetics__
 	Prosthetics interfaces: ${num(V.prosthetics.interfaceP1.amount + V.prosthetics.interfaceP2.amount)}
@@ -1487,7 +1487,7 @@ window.ResearchLabStockPile = function () {
  * @param {App.Entity.SlaveState} slave
  * @returns {string}
  */
-window.originPronounReplace = function (slave) {
+window.originPronounReplace = function(slave) {
 	let r = slave.origin;
 	switch (r) {
 		case "She was the result of unprotected sex with a client. Her mother tracked you down years after her birth to force her upon you.":
@@ -1564,7 +1564,7 @@ window.originPronounReplace = function (slave) {
 	}
 };
 
-window.HackingSkillMultiplier = function () {
+window.HackingSkillMultiplier = function() {
 	const V = State.variables;
 	if (V.PC.hacking <= -100) {
 		return 1.5;
@@ -1593,7 +1593,7 @@ window.HackingSkillMultiplier = function () {
 	}
 };
 
-window.opentab = function (evt, tabName) {
+window.opentab = function(evt, tabName) {
 	const V = State.variables;
 	/* var passage = passage().trim().replace(/ /g,"+");*/
 	const tabcontent = document.getElementsByClassName("tabcontent");
@@ -1625,7 +1625,7 @@ window.opentab = function (evt, tabName) {
  * // equal to [[Go to town|Town]]
  * App.UI.passageLink("Go to town", "Town")
  */
-App.UI.passageLink = function (linkText, passage, setter, elementType) {
+App.UI.passageLink = function(linkText, passage, setter, elementType) {
 	if (!elementType) elementType = "a";
 
 	let res = `<${elementType} data-passage="${passage}"`;
@@ -1636,7 +1636,7 @@ App.UI.passageLink = function (linkText, passage, setter, elementType) {
 	return res;
 };
 
-window.SkillIncrease = (function () {
+window.SkillIncrease = (function() {
 	return {
 		Oral: OralSkillIncrease,
 		Vaginal: VaginalSkillIncrease,
@@ -1804,7 +1804,7 @@ window.SkillIncrease = (function () {
 	}
 })();
 
-window.upgradeMultiplierArcology = function () {
+window.upgradeMultiplierArcology = function() {
 	const V = State.variables;
 	if (V.PC.career === "engineer" || (V.arcologies[0].FSRestartDecoration >= 100 && V.eugenicsFullControl === 0)) {
 		return 0.6;
@@ -1835,7 +1835,7 @@ window.upgradeMultiplierArcology = function () {
 	}
 };
 
-window.upgradeMultiplierMedicine = function () {
+window.upgradeMultiplierMedicine = function() {
 	const V = State.variables;
 	if (V.PC.career === "medicine" || (V.arcologies[0].FSRestartDecoration >= 100 && V.eugenicsFullControl === 0)) {
 		return 0.6;
@@ -1866,7 +1866,7 @@ window.upgradeMultiplierMedicine = function () {
 	}
 };
 
-window.upgradeMultiplierTrade = function () {
+window.upgradeMultiplierTrade = function() {
 	const V = State.variables;
 	if (V.PC.trading <= -100) {
 		return 1.5;
@@ -1895,12 +1895,12 @@ window.upgradeMultiplierTrade = function () {
 	}
 };
 
-window.jsNdef = function (input) {
+window.jsNdef = function(input) {
 	if (typeof input === "undefined") return true;
 	else return false;
 };
 
-window.jsDef = function (input) {
+window.jsDef = function(input) {
 	if (typeof input !== "undefined") return true;
 	else return false;
 };
@@ -1909,7 +1909,7 @@ window.jsDef = function (input) {
 
 	Currently only considers their age
  */
-window.randomCareer = function (slave) {
+window.randomCareer = function(slave) {
 	if (slave.actualAge < 16) {
 		return setup.veryYoungCareers.random();
 	} else if (slave.actualAge <= 24) {
@@ -1921,7 +1921,7 @@ window.randomCareer = function (slave) {
 	}
 };
 
-window.resyncSlaveToAge = function (slave) {
+window.resyncSlaveToAge = function(slave) {
 	slave.height = Height.random(slave);
 	slave.pubertyXX = slave.actualAge < slave.pubertyAgeXX ? 0 : 1;
 	slave.pubertyXY = slave.actualAge < slave.pubertyAgeXY ? 0 : 1;
@@ -1962,7 +1962,7 @@ window.resyncSlaveToAge = function (slave) {
 	slave.career = randomCareer(slave);
 };
 
-window.IncreasePCSkills = function (input, increase = 1) {
+window.IncreasePCSkills = function(input, increase = 1) {
 	const player = State.variables.PC,
 		oldSkill = player[input];
 	player[input] += increase;
@@ -1985,7 +1985,7 @@ window.IncreasePCSkills = function (input, increase = 1) {
 	}
 };
 
-window.randomRaceSkin = function (raceName) {
+window.randomRaceSkin = function(raceName) {
 	let skin;
 	switch (raceName) {
 		case "asian":
@@ -2018,7 +2018,7 @@ window.randomRaceSkin = function (raceName) {
 	return skin;
 };
 
-window.randomRaceEye = function (raceName) {
+window.randomRaceEye = function(raceName) {
 	let eye;
 	switch (raceName) {
 		case "asian":
@@ -2047,7 +2047,7 @@ window.randomRaceEye = function (raceName) {
 	return eye;
 };
 
-window.randomRaceHair = function (raceName) {
+window.randomRaceHair = function(raceName) {
 	let hair;
 	switch (raceName) {
 		case "asian":
@@ -2074,7 +2074,7 @@ window.randomRaceHair = function (raceName) {
 	return hair;
 };
 
-window.skinToneLevel = function (skinTone) {
+window.skinToneLevel = function(skinTone) {
 	if (!setup.naturalSkins.includes(skinTone)) {
 		return undefined;
 	}
@@ -2108,7 +2108,7 @@ window.skinToneLevel = function (skinTone) {
 	return skinToMelanin[skinTone];
 };
 
-window.changeSkinTone = function (skin, value) {
+window.changeSkinTone = function(skin, value) {
 	if (!setup.naturalSkins.includes(skin)) {
 		return skin;
 	}
diff --git a/src/js/walkPastJS.js b/src/js/walkPastJS.js
index 54e126c2f748fabde4f80860c6b4c85208d658cd..b45ceed56fd7336a7e74e3153d7e44d32c05935d 100644
--- a/src/js/walkPastJS.js
+++ b/src/js/walkPastJS.js
@@ -1,7 +1,7 @@
 /* eslint-disable no-unused-vars */
 /* temporary container until the entire thing is complete. No point in not deploying the working functions, you know? */
 
-window.primeSlave = function (activeSlave, seed) {
+window.primeSlave = function(activeSlave, seed) {
 
 	/* will be moved up once this becomes a single, contained function. */
 	const V = State.variables;
@@ -28,7 +28,7 @@ window.primeSlave = function (activeSlave, seed) {
 	return t;
 };
 
-window.rivalSlave = function (activeSlave, seed) {
+window.rivalSlave = function(activeSlave, seed) {
 	const V = State.variables;
 	const pronouns = getPronouns(activeSlave);
 	const he = pronouns.pronoun,
@@ -64,7 +64,7 @@ window.rivalSlave = function (activeSlave, seed) {
 	return t;
 };
 
-window.loverSlave = function (activeSlave) {
+window.loverSlave = function(activeSlave) {
 
 	/* will be moved up once this becomes a single, contained function. */
 	let _target = "";
@@ -1273,7 +1273,7 @@ window.loverSlave = function (activeSlave) {
 	return t;
 };
 
-window.relatedSlave = function (activeSlave) {
+window.relatedSlave = function(activeSlave) {
 	const V = State.variables;
 	const pronouns = getPronouns(activeSlave);
 	const he = pronouns.pronoun,
@@ -1325,7 +1325,7 @@ window.relatedSlave = function (activeSlave) {
 	return t;
 };
 
-window.walkPasts = function (slave, _seed) {
+window.walkPasts = function(slave, _seed) {
 
 	/* will be moved up once this becomes a single, contained function. */
 	const V = State.variables;
@@ -1918,7 +1918,7 @@ window.walkPasts = function (slave, _seed) {
 	return t;
 };
 
-window.boobWatch = function (slave) {
+window.boobWatch = function(slave) {
 
 	/* will be moved up once this becomes a single, contained function. */
 	let t = "";
@@ -2342,7 +2342,7 @@ window.boobWatch = function (slave) {
 	return t;
 };
 
-window.buttWatch = function (slave) {
+window.buttWatch = function(slave) {
 
 	/* will be moved up once this becomes a single, contained function. */
 	let t = "";
@@ -2685,7 +2685,7 @@ window.buttWatch = function (slave) {
 	return t;
 };
 
-window.anusWatch = function (slave) {
+window.anusWatch = function(slave) {
 
 	/* will be moved up once this becomes a single, contained function. */
 	let t = "";
@@ -3000,7 +3000,7 @@ window.anusWatch = function (slave) {
 };
 
 
-window.lipWatch = function (slave) {
+window.lipWatch = function(slave) {
 
 	/* will be moved up once this becomes a single, contained function. */
 	let t = "";
diff --git a/src/js/wombJS.js b/src/js/wombJS.js
index 94d6ad3e75b600e2aa6918e1eadc231fca0c6dd0..8c59bc22dab2981dea568dfdb56713045327ee45 100644
--- a/src/js/wombJS.js
+++ b/src/js/wombJS.js
@@ -24,7 +24,7 @@ $slave.bellyPreg = WombGetWolume($slave) - return double, with current womb volu
 */
 
 // Init womb system.
-window.WombInit = function (actor) {
+window.WombInit = function(actor) {
 	let i;
 
 	if (!Array.isArray(actor.womb)) {
@@ -52,7 +52,7 @@ window.WombInit = function (actor) {
 	// backward compatibility setup. Fully accurate for normal pregnancy only.
 	if (actor.womb.length > 0 && actor.womb[0].genetics === undefined && actor.eggType === "human") {
 		i = 0;
-		actor.womb.forEach(function (ft) {
+		actor.womb.forEach(function(ft) {
 			ft.genetics = generateGenetics(actor, actor.pregSource, i);
 			i++;
 		});
@@ -79,7 +79,7 @@ window.WombInit = function (actor) {
 	}
 };
 
-window.WombImpregnate = function (actor, fCount, fatherID, age, surrogate) {
+window.WombImpregnate = function(actor, fCount, fatherID, age, surrogate) {
 	let i;
 	let tf;
 	for (i = 0; i < fCount; i++) {
@@ -120,11 +120,11 @@ window.WombImpregnate = function (actor, fCount, fatherID, age, surrogate) {
 	MissingParentIDCorrection(actor);
 };
 
-window.WombSurrogate = function (actor, fCount, mother, fatherID, age) {
+window.WombSurrogate = function(actor, fCount, mother, fatherID, age) {
 	WombImpregnate(actor, fCount, fatherID, age, mother);
 };
 
-window.WombImpregnateClone = function (actor, fCount, mother, motherOriginal, age) {
+window.WombImpregnateClone = function(actor, fCount, mother, motherOriginal, age) {
 	let i;
 	let tf;
 	for (i = 0; i < fCount; i++) {
@@ -189,7 +189,7 @@ window.WombImpregnateClone = function (actor, fCount, mother, motherOriginal, ag
 };
 
 // Should be used to set biological age for fetus (ageToAdd), AND chronological (realAgeToAdd). Speed up or slow down gestation drugs should affect ONLY biological.
-window.WombProgress = function (actor, ageToAdd, realAgeToAdd = ageToAdd) {
+window.WombProgress = function(actor, ageToAdd, realAgeToAdd = ageToAdd) {
 	ageToAdd = Math.ceil(ageToAdd * 10) / 10;
 	realAgeToAdd = Math.ceil(realAgeToAdd * 10) / 10;
 	try {
@@ -203,7 +203,7 @@ window.WombProgress = function (actor, ageToAdd, realAgeToAdd = ageToAdd) {
 	}
 };
 
-window.WombBirth = function (actor, readyAge) {
+window.WombBirth = function(actor, readyAge) {
 	try {
 		WombSort(actor); // For normal processing fetuses that more old should be first. Now - they are.
 	} catch (err) {
@@ -222,11 +222,11 @@ window.WombBirth = function (actor, readyAge) {
 	return birthed;
 };
 
-window.WombFlush = function (actor) {
+window.WombFlush = function(actor) {
 	actor.womb = [];
 };
 
-window.WombBirthReady = function (actor, readyAge) {
+window.WombBirthReady = function(actor, readyAge) {
 	let readyCnt = 0;
 	try {
 		readyCnt += actor.womb.filter(ft => ft.age >= readyAge).length;
@@ -239,7 +239,7 @@ window.WombBirthReady = function (actor, readyAge) {
 	return readyCnt;
 };
 
-window.WombGetVolume = function (actor) { // most legacy code from pregJS.tw with minor adaptation.
+window.WombGetVolume = function(actor) { // most legacy code from pregJS.tw with minor adaptation.
 
 
 	if (actor.pregData.sizeType === 0)
@@ -380,7 +380,7 @@ window.WombGetVolume = function (actor) { // most legacy code from pregJS.tw wit
 
 };
 
-window.WombUpdatePregVars = function (actor) {
+window.WombUpdatePregVars = function(actor) {
 	WombSort(actor);
 	if (actor.womb.length > 0) {
 		if (actor.preg > 0 && actor.womb[0].age > 0) {
@@ -391,7 +391,7 @@ window.WombUpdatePregVars = function (actor) {
 	}
 };
 
-window.WombMinPreg = function (actor) {
+window.WombMinPreg = function(actor) {
 	WombSort(actor);
 	if (actor.womb.length > 0)
 		return actor.womb[actor.womb.length - 1].age;
@@ -399,7 +399,7 @@ window.WombMinPreg = function (actor) {
 		return 0;
 };
 
-window.WombMaxPreg = function (actor) {
+window.WombMaxPreg = function(actor) {
 	WombSort(actor);
 	if (actor.womb.length > 0)
 		return actor.womb[0].age;
@@ -407,7 +407,7 @@ window.WombMaxPreg = function (actor) {
 		return 0;
 };
 
-window.WombNormalizePreg = function (actor) {
+window.WombNormalizePreg = function(actor) {
 	// console.log("New actor: " + actor.slaveName + " ===============" + actor.name);
 	WombInit(actor);
 
@@ -468,7 +468,7 @@ window.WombNormalizePreg = function (actor) {
 	actor.bellyPreg = WombGetVolume(actor);
 };
 
-window.WombZeroID = function (actor, id) {
+window.WombZeroID = function(actor, id) {
 	WombInit(actor);
 	actor.womb
 		.filter(ft => ft.fatherID === id)
@@ -476,7 +476,7 @@ window.WombZeroID = function (actor, id) {
 	WombNormalizePreg(actor);
 };
 
-window.WombChangeID = function (actor, fromID, toID) {
+window.WombChangeID = function(actor, fromID, toID) {
 	WombInit(actor);
 	actor.womb
 		.filter(ft => ft.fatherID === fromID)
@@ -484,7 +484,7 @@ window.WombChangeID = function (actor, fromID, toID) {
 	WombNormalizePreg(actor);
 };
 
-window.WombChangeGeneID = function (actor, fromID, toID) {
+window.WombChangeGeneID = function(actor, fromID, toID) {
 	WombInit(actor);
 	actor.womb
 		.filter(ft => ft.genetics.father === fromID)
@@ -496,17 +496,17 @@ window.WombChangeGeneID = function (actor, fromID, toID) {
 };
 
 /* Sorts the womb object by age with oldest and thus soonest to be born, first. This will be needed in the future once individual fertilization is a possibility.*/
-window.WombSort = function (actor) {
+window.WombSort = function(actor) {
 	actor.womb.sort((a, b) => {
 		return b.age - a.age;
 	});
 };
 
 // now function work with chance. Literary we give it "one from X" as chance.
-window.fetalSplit = function (actor, chance) {
+window.fetalSplit = function(actor, chance) {
 	let nft;
 
-	actor.womb.forEach(function (s) {
+	actor.womb.forEach(function(s) {
 		if ((jsRandom(1, chance) >= chance) && s.splitted !== 1) {
 			nft = {};
 			nft.age = s.age;
@@ -533,13 +533,13 @@ window.fetalSplit = function (actor, chance) {
 };
 
 // safe alternative to .womb.length.
-window.WombFetusCount = function (actor) {
+window.WombFetusCount = function(actor) {
 	WombInit(actor);
 	return actor.womb.length;
 };
 
 // give reference to fetus object, but not remove fetus, use for manipulation in the womb.
-window.WombGetFetus = function (actor, fetusNum) {
+window.WombGetFetus = function(actor, fetusNum) {
 	WombInit(actor);
 	if (actor.womb.length >= fetusNum)
 		return actor.womb[fetusNum];
@@ -548,7 +548,7 @@ window.WombGetFetus = function (actor, fetusNum) {
 };
 
 // give reference to fetus object, and remove it form the womb.
-window.WombRemoveFetus = function (actor, fetusNum) {
+window.WombRemoveFetus = function(actor, fetusNum) {
 	WombInit(actor);
 	if (actor.womb.length >= fetusNum) {
 		let ft = actor.womb[fetusNum];
@@ -561,26 +561,26 @@ window.WombRemoveFetus = function (actor, fetusNum) {
 };
 
 /* to add fetus object in the womb. Be warned - you can add one single fetus to many wombs, or even add it many times to one womb. It will not show error, but behavior becomes strange, as fetus object will be the same - it's reference, not full copies. If this is not desired - use clone() on fetus before adding.*/
-window.WombAddFetus = function (actor, fetus) {
+window.WombAddFetus = function(actor, fetus) {
 	WombInit(actor);
 	actor.womb.push(fetus);
 	WombSort(actor);
 };
 
 // change property for all fetuses. Like fetus.age = X.
-window.WombChangeFetus = function (actor, propName, newValue) {
+window.WombChangeFetus = function(actor, propName, newValue) {
 	WombInit(actor);
 	actor.womb.forEach(ft => ft[propName] = newValue);
 };
 
 // change genetic property of all fetuses. Like fetus.genetic.intelligence = X
-window.WombChangeGene = function (actor, geneName, newValue) {
+window.WombChangeGene = function(actor, geneName, newValue) {
 	WombInit(actor);
 	actor.womb.forEach(ft => ft.genetics[geneName] = newValue);
 };
 
 // change genetic property of all fetuses based on race
-window.WombFatherRace = function (actor, raceName) {
+window.WombFatherRace = function(actor, raceName) {
 	let skinColor = randomRaceSkin(raceName);
 	let eyeColor = randomRaceEye(raceName);
 	let hairColor = randomRaceHair(raceName);
@@ -591,7 +591,7 @@ window.WombFatherRace = function (actor, raceName) {
 };
 
 // replaces untraceable fatherIDs with missingParentID. Required for concurrent pregnancy to differentiate between siblings.
-window.MissingParentIDCorrection = function (actor) {
+window.MissingParentIDCorrection = function(actor) {
 	WombInit(actor);
 	actor.womb
 		.filter(ft => (ft.genetics.father === 0 || (ft.genetics.father < -1 && ft.genetics.father >= -20 && ft.genetics.father !== -3)))
@@ -599,7 +599,7 @@ window.MissingParentIDCorrection = function (actor) {
 	State.variables.missingParentID--;
 };
 
-window.WombCleanYYFetuses = function (actor) {
+window.WombCleanYYFetuses = function(actor) {
 	let reserved = [];
 
 	let i = actor.womb.length - 1;
@@ -620,21 +620,21 @@ window.WombCleanYYFetuses = function (actor) {
 	return reserved;
 };
 
-window.FetusGlobalReserveCount = function (reserveType) {
+window.FetusGlobalReserveCount = function(reserveType) {
 	let cnt = 0;
 	let SV = State.variables;
 
 	if (typeof reserveType !== 'string')
 		return 0;
 
-	SV.slaves.forEach(function (slave) {
-		slave.womb.forEach(function (ft) {
+	SV.slaves.forEach(function(slave) {
+		slave.womb.forEach(function(ft) {
 			if (ft.reserve === reserveType)
 				cnt++;
 		});
 	});
 
-	SV.PC.womb.forEach(function (ft) {
+	SV.PC.womb.forEach(function(ft) {
 		if (ft.reserve === reserveType)
 			cnt++;
 	});
@@ -642,9 +642,9 @@ window.FetusGlobalReserveCount = function (reserveType) {
 	return cnt;
 };
 
-window.WombSetGenericReserve = function (actor, type, count) {
+window.WombSetGenericReserve = function(actor, type, count) {
 	// console.log ("actor: " + actor + "  type: " + type + "  typeof: " + typeof type + "  count: " + count);
-	actor.womb.forEach(function (ft) {
+	actor.womb.forEach(function(ft) {
 		// console.log ("  type: " + ft.reserve + "  typeof: " + typeof ft.reserve);
 		if ((ft.reserve === "" || ft.reserve === type) && count > 0) {
 			// console.log ("!trigger");
@@ -655,15 +655,15 @@ window.WombSetGenericReserve = function (actor, type, count) {
 	});
 };
 
-window.WombAddToGenericReserve = function (actor, type, count) {
+window.WombAddToGenericReserve = function(actor, type, count) {
 	WombSetGenericReserve(actor, type, (WombReserveCount(actor, type) + count));
 
 };
 
-window.WombChangeReserveType = function (actor, oldType, newType) {
+window.WombChangeReserveType = function(actor, oldType, newType) {
 	let count = 0;
 
-	actor.womb.forEach(function (ft) {
+	actor.womb.forEach(function(ft) {
 		if (ft.reserve === oldType) {
 			ft.reserve = newType;
 			count++;
@@ -673,8 +673,8 @@ window.WombChangeReserveType = function (actor, oldType, newType) {
 	return count;
 };
 
-window.WombCleanGenericReserve = function (actor, type, count) {
-	actor.womb.forEach(function (ft) {
+window.WombCleanGenericReserve = function(actor, type, count) {
+	actor.womb.forEach(function(ft) {
 
 		if (ft.reserve === type && count > 0) {
 			ft.reserve = "";
@@ -684,11 +684,11 @@ window.WombCleanGenericReserve = function (actor, type, count) {
 	});
 };
 
-window.WombReserveCount = function (actor, type) {
+window.WombReserveCount = function(actor, type) {
 
 	let cnt = 0;
 
-	actor.womb.forEach(function (ft) {
+	actor.womb.forEach(function(ft) {
 
 		if (ft.reserve === type) /* the lazy equality will catch "" case */ {
 			cnt++;
@@ -699,10 +699,10 @@ window.WombReserveCount = function (actor, type) {
 	return cnt;
 };
 
-window.WombGetReservedFetuses = function (actor, type) {
+window.WombGetReservedFetuses = function(actor, type) {
 	let reserved = [];
 
-	actor.womb.forEach(function (ft) {
+	actor.womb.forEach(function(ft) {
 
 		if (ft.reserve === type) {
 			reserved.push(ft);
@@ -713,7 +713,7 @@ window.WombGetReservedFetuses = function (actor, type) {
 	return reserved;
 };
 
-window.WombRemoveReservedFetuses = function (actor, type) {
+window.WombRemoveReservedFetuses = function(actor, type) {
 	let reserved = [];
 
 	let i = actor.womb.length - 1;
@@ -733,9 +733,9 @@ window.WombRemoveReservedFetuses = function (actor, type) {
 	return reserved;
 };
 
-window.WombCleanAllReserve = function (actor) {
+window.WombCleanAllReserve = function(actor) {
 
-	actor.womb.forEach(function (ft) {
+	actor.womb.forEach(function(ft) {
 		ft.reserve = "";
 	});
 
@@ -757,7 +757,7 @@ She is _wd.litters[0] weeks pregnant with her first set of _wd.countLitter[0] ch
 In summary she carry _wd.litters.length separate sets of children. Her most progressed fetus of second pregnancy is already reached _wd.litterData[1][0].age biological week of gestation.
 ---
 */
-window.WombGetLittersData = function (actor) {
+window.WombGetLittersData = function(actor) {
 	let data = {};
 	let unicLiters = []; // array with realAges of separate litters.
 	let countLitter = [];
@@ -765,14 +765,14 @@ window.WombGetLittersData = function (actor) {
 	let tmp;
 
 	// in first place we need to know how many litters here (Assuming that unique litter is have similar .realAge). Also we will know their ages.
-	actor.womb.forEach(function (ft) {
+	actor.womb.forEach(function(ft) {
 		if (!unicLiters.includes(Math.ceil(ft.realAge)))
 			unicLiters.push(Math.ceil(ft.realAge));
 
 	});
 
 	// now we should find and store separate litters data (count of fetuses):
-	unicLiters.forEach(function (litter) {
+	unicLiters.forEach(function(litter) {
 		tmp = actor.womb.filter(ft => Math.ceil(ft.realAge) === litter);
 		countLitter.push(tmp.length);
 		litterData.push(tmp);
@@ -785,11 +785,11 @@ window.WombGetLittersData = function (actor) {
 	return data;
 };
 
-window.BCReserveInit = function () {
+window.BCReserveInit = function() {
 	let SV = State.variables;
 
-	SV.slaves.forEach(function (slave) {
-		slave.womb.forEach(function (ft) {
+	SV.slaves.forEach(function(slave) {
+		slave.womb.forEach(function(ft) {
 			if (typeof ft.reserve !== 'string')
 				ft.reserve = "";
 			if (typeof ft.motherID !== 'number') // setting missing biological mother ID for fetus.
@@ -801,7 +801,7 @@ window.BCReserveInit = function () {
 		});
 	});
 
-	SV.PC.womb.forEach(function (ft) {
+	SV.PC.womb.forEach(function(ft) {
 		if (typeof ft.reserve !== 'string')
 			ft.reserve = "";
 		if (typeof ft.motherID !== 'number')
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 773bdd0de9664163889a7af819d59e5ee5dc561c..26e2efdf8bb52788510f79f982f3ac711a203e9e 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -3799,7 +3799,7 @@ Done!
 <<if ndef $prosthetics>>
 	<<if ndef $stockpile>>
 		<<set $prosthetics = {}>>
-		<<run setup.prostheticIDs.forEach(function (id) {
+		<<run setup.prostheticIDs.forEach(function(id) {
 			$prosthetics[id] = {amount: 0, research: 0};
 		})>>
 	<<else>>
diff --git a/src/uncategorized/slaveSummary.tw b/src/uncategorized/slaveSummary.tw
index 3264fbbead5df3a1047ccceff7770912e09efe57..8a44cf7adebb039456ac43659b3fde964399ee12 100644
--- a/src/uncategorized/slaveSummary.tw
+++ b/src/uncategorized/slaveSummary.tw
@@ -3,7 +3,7 @@
 <<print App.UI.slaveSummaryList(passage())>>
 
 <<run $(document).one(':passagedisplay', function() {
-	$("[data-quick-index]").click(function () {
+	$("[data-quick-index]").click(function() {
 		let which = this.attributes["data-quick-index"].value;
 		let quick = $("div#list_index" + which);
 		quick.toggleClass("hidden");