diff --git a/js/003-data/gameVariableData.js b/js/003-data/gameVariableData.js
index 4dd263d3482ca5208cc9329ca92f3492669d45b7..0b86a930b6c4bbcf6d8d05ccf8cabebfe3c1c747 100644
--- a/js/003-data/gameVariableData.js
+++ b/js/003-data/gameVariableData.js
@@ -1,176 +1,172 @@
 // A whitelist for ingame variables.  Used to init the game or fill in gaps.  Also used as a whitelist.  Anything not on this list will be removed on BC.
 App.Data.defaultGameStateVariables = {
+	// Page
 	returnTo: "init",
 	nextButton: "Continue",
 	nextLink: "Alpha disclaimer",
 	storedLink: "",
+
+	// Version
 	ver: 0,
 	pmodVer: 0,
 	releaseID: 0,
+
+	// Slaves
 	slaveIndices: 0,
 	genePool: [],
 	geneMods: {NCS: 0, rapidCellGrowth: 0},
 	missingTable: {},
 	slaves: [],
-	showMissingSlaves: false,
-	showMissingSlavesSD: false,
-	marrying: [],
-	// array of slave being married this week
-	organs: [],
-	ArcadeiIDs: [],
-	BrothiIDs: [],
-	CellBiIDs: [],
-	CliniciIDs: [],
-	ClubiIDs: [],
-	DairyiIDs: [],
-	FarmyardiIDs: [],
-	HGSuiteiIDs: [],
-	MastSiIDs: [],
-	SchlRiIDs: [],
-	ServQiIDs: [],
-	SpaiIDs: [],
-	NurseryiIDs: [],
-	saveImported: 0,
+
+	// PC
 	PC: {},
 	freshPC: 0,
+	IsInPrimePC: 3,
+	IsPastPrimePC: 5000,
+	PCTitle: "",
+
+	// Save
+	saveImported: 0,
+
+	// Other
 	cheater: 0,
 	cash: 0,
 	cashLastWeek: 0,
-	autosave: 1,
-	useFSNames: 1,
+
+	// UI content
 	FSNamePref: 0,
-	seeDetails: 1,
-	seeDesk: 1,
+	HGFormality: 1,
+	HGSeverity: 0,
+	abbreviateClothes: 2,
+	abbreviateDevotion: 2,
+	abbreviateDiet: 2,
+	abbreviateDrugs: 2,
+	abbreviateGenitalia: 2,
+	abbreviateHealth: 2,
+	abbreviateMental: 2,
+	abbreviateNationality: 2,
+	abbreviateOrigins: 2,
+	abbreviatePhysicals: 2,
+	abbreviateRace: 2,
+	abbreviateRules: 2,
+	abbreviateRulesets: 2,
+	abbreviateSidebar: 2,
+	abbreviateSkills: 2,
+	adamPrinciple: 0,
+	allowFamilyTitles: 0,
+	allowMaleSlaveNames: false,
+	autosave: 1,
+	baseDifficulty: 3,
+	dangerousPregnancy: 0,
+	debugMode: 0,
+	debugModeCustomFunction: 0,
+	difficultySwitch: 0,
+	disableLisping: 0,
+	displayAssignments: 1,
+	economy: 100,
+	expansionRequestsAllowed: 1,
+	extremeUnderage: 0,
+	familyTesting: 0,
+	formatNumbers: 1,
+	fucktoyInteractionsPosition: 1,
+	headGirlSoftensFlaws: 1,
+	headGirlTrainsFlaws: 1,
+	headGirlTrainsHealth: 1,
+	headGirlTrainsObedience: 1,
+	headGirlTrainsParaphilias: 1,
+	headGirlTrainsSkills: 1,
+	imageChoice: 1,
+	inbreeding: 1,
+	killChoice: -1,
+	lineSeparations: 1,
+	makeDicks: 0,
+	modRequestsAllowed: 1,
+	neighboringArcologies: 3,
+	newDescriptions: 0,
 	newModelUI: 1,
+	nicknamesAllowed: 1,
+	positionMainLinks: -1,
+	profiler: 0,
+	realRoyalties: 0,
+	retainCareer: 1,
+	rulesAssistantAuto: 0,
+	rulesAssistantMain: 1,
+	seeAge: 1,
 	seeArcology: 1,
-	seeFCNN: 1,
-	seeExtreme: 0,
+	seeAvatar: 1,
 	seeBestiality: 0,
-	seePee: 1,
-	seeIncest: 1,
-	extremeUnderage: 0,
-	seeHyperPreg: 0,
-	seePreg: 1,
-	dangerousPregnancy: 0,
-	adamPrinciple: 0,
 	seeCircumcision: 1,
-	seeAge: 1,
+	seeDesk: 1,
+	seeDetails: 1,
 	seeDicks: 25,
 	seeDicksAffectsPregnancy: 1,
-	seeRace: 1,
-	seeNationality: 1,
-	realRoyalties: 0,
-	seeIllness: 1,
-	seeImages: 0,
+	seeExtreme: 0,
+	seeFCNN: 1,
 	seeFaces: 1,
-	seeAvatar: 1,
 	seeHeight: 0,
-	imageChoice: 1,
-	seeVectorArtHighlights: 1,
+	seeHyperPreg: 0,
+	seeIllness: 1,
+	seeImages: 0,
+	seeIncest: 1,
 	seeMainFetishes: 0,
-	seeSummaryImages: 1,
+	seeNationality: 1,
+	seePee: 1,
+	seePreg: 1,
+	seeRace: 1,
 	seeReportImages: 1,
-	lineSeparations: 1,
-	slavePanelStyle: 1,
-	showSexualHistory: 1,
-	showBodyMods: 1,
-	showImplantEffects: 1,
-	showClothing: 1,
+	seeSummaryImages: 1,
+	seeVectorArtHighlights: 1,
 	showAgeDetail: 1,
+	showAppraisal: 1,
+	showAssignToScenes: 1,
+	showBodyMods: 1,
 	showBoobCCs: 1,
-	showHeightCMs: 1,
+	showClothing: 1,
 	showDickCMs: 1,
+	showDistantRelatives: 0,
+	showEWD: 1,
+	showEWM: 1,
+	showEconomicDetails: 0,
+	showHeightCMs: 1,
+	showImplantEffects: 1,
 	showInches: 1,
+	showMissingSlaves: false,
+	showMissingSlavesSD: false,
+	showNeighborDetails: 1,
 	showNumbers: 2,
 	showNumbersMax: 20,
 	showScores: 1,
-	showAssignToScenes: 1,
-	showEWD: 1,
-	showEWM: 1,
-	showVignettes: 1,
-	showAppraisal: 1,
-	verticalizeArcologyLinks: 0,
-	positionMainLinks: -1,
+	showSexualHistory: 1,
 	showTipsFromEncy: 1,
-	displayAssignments: 1,
+	showVignettes: 1,
+	slavePanelStyle: 1,
 	sortSlavesBy: "devotion",
-	sortSlavesOrder: "descending",
 	sortSlavesMain: 1,
-	HGSeverity: 0,
-	HGFormality: 1,
+	sortSlavesOrder: "descending",
+	summaryStats: 0,
+	surnameOrder: 0,
+	tabChoice: {Main: "all"},
+	universalRulesAssignsSelfFacility: 0,
+	universalRulesBirthing: 0,
+	universalRulesCSec: 0,
+	universalRulesChildrenBecomeBreeders: 0,
 	universalRulesConsent: 0,
-	universalRulesRest: 0,
 	universalRulesFacilityWork: 1,
+	universalRulesImmobileSlavesMaintainMuscles: 0,
 	universalRulesImpregnation: "none",
-	universalRulesBirthing: 0,
-	universalRulesCSec: 0,
 	universalRulesNewSlavesRA: 1,
-	universalRulesAssignsSelfFacility: 0,
-	universalRulesImmobileSlavesMaintainMuscles: 0,
-	universalRulesChildrenBecomeBreeders: 0,
-	slaveDead: 0,
-	rulesAssistantMain: 1,
-	rulesAssistantAuto: 0,
-	abbreviateDevotion: 2,
-	abbreviateRules: 2,
-	abbreviateClothes: 2,
-	abbreviateOrigins: 2,
-	abbreviateRulesets: 2,
-	abbreviateNationality: 2,
-	abbreviateHealth: 2,
-	abbreviateDiet: 2,
-	abbreviateDrugs: 2,
-	abbreviateRace: 2,
-	abbreviateGenitalia: 2,
-	abbreviatePhysicals: 2,
-	abbreviateSkills: 2,
-	abbreviateMental: 2,
-	abbreviateSidebar: 2,
-	summaryStats: 0,
-	nicknamesAllowed: 1,
-	modRequestsAllowed: 1,
-	expansionRequestsAllowed: 1,
-	plot: 1,
-	continent: "North America",
-	terrain: "rural",
-	language: "English",
-	headGirlTrainsSkills: 1,
-	headGirlTrainsHealth: 1,
-	headGirlTrainsObedience: 1,
-	headGirlTrainsFlaws: 1,
-	headGirlSoftensFlaws: 1,
-	headGirlTrainsParaphilias: 1,
-	retainCareer: 1,
-	useSlaveSummaryTabs: 0,
-	useSlaveSummaryOverviewTab: 0,
-	useSlaveListInPageJSNavigation: 0,
-	fucktoyInteractionsPosition: 1,
-	killChoice: -1,
-	assignmentRecords: {},
-	verboseDescriptions: 0,
+	universalRulesRest: 0,
 	useAccordion: 0,
-	debugMode: 0,
-	showNeighborDetails: 1,
+	useFSNames: 1,
+	useSlaveListInPageJSNavigation: 0,
+	useSlaveSummaryOverviewTab: 0,
+	useSlaveSummaryTabs: 0,
 	useTabs: 0,
-	tabChoice: {Main: "all"},
-	formatNumbers: 1,
-	makeDicks: 0,
-	showEconomicDetails: 0,
-	allowMaleSlaveNames: false,
-	profiler: 0,
-	economy: 100,
-	baseDifficulty: 3,
-	difficultySwitch: 0,
-	neighboringArcologies: 3,
-	newDescriptions: 0,
-	familyTesting: 0,
-	showDistantRelatives: 0,
-	inbreeding: 1,
-	allowFamilyTitles: 0,
-	surnameOrder: 0,
-	disableLisping: 0,
+	verboseDescriptions: 0,
+	verticalizeArcologyLinks: 0,
 	weightAffectsAssets: 1,
 	curativeSideEffects: 1,
+
 	// eslint-disable-next-line camelcase
 	pedo_mode: 0,
 	minimumSlaveAge: 16,
@@ -182,33 +178,53 @@ App.Data.defaultGameStateVariables = {
 	retirementAge: 45,
 	customRetirementAge: 45,
 	customMenialRetirementAge: 65,
-	FSCreditCount: 5,
-	corp: {},
-	dividendTimer: 0,
-	personalShares: 0,
-	publicShares: 0,
-
 	sortIncubatorList: "Unsorted",
-	SF: {},
-	// Misc mod variables
 	AgeEffectOnTrainerPricingPC: 1,
 	AgeEffectOnTrainerEffectivenessPC: 1,
 	AgeTrainingUpperBoundPC: 14,
 	AgeTrainingLowerBoundPC: 12,
-	IsInPrimePC: 3,
-	IsPastPrimePC: 5000,
+	childSex: 0,
+	showClothingErection: true,
+	masturbationAllowed: 0,
 
-	// END OLD INIT VARIABLES SECTION, after this, variables were being created in other places in the game
+	// Default location
+	continent: "North America",
+	terrain: "rural",
+	language: "English",
 
-	shelterGirlsIDs: [], // Only needed in endweek loop
 	AProsperityCapModified: 0,
-	PCTitle: "",
-	Sweatshops: 0,
-	thisWeeksFSWares: 0,
-	thisWeeksIllegalWares: 0,
-	milkTap: 0,
-	debugModeCustomFunction: 0,
-	active: 0,
+	secExpEnabled: 0,
+};
+
+// The other half of the above whitelist.  However, entries in this array will be forced to the values set here upon starting NG+.
+App.Data.resetOnNGPlus = {
+	targetArcology: {type: "New"},
+	readySlaves: 0,
+
+	slaveDead: 0,
+	plot: 1,
+	assignmentRecords: {},
+	marrying: [], // array of slave being married this week
+	organs: [],
+	ArcadeiIDs: [],
+	BrothiIDs: [],
+	CellBiIDs: [],
+	CliniciIDs: [],
+	ClubiIDs: [],
+	DairyiIDs: [],
+	FarmyardiIDs: [],
+	HGSuiteiIDs: [],
+	MastSiIDs: [],
+	SchlRiIDs: [],
+	ServQiIDs: [],
+	SpaiIDs: [],
+	NurseryiIDs: [],
+	corp: {},
+	dividendTimer: 0,
+	personalShares: 0,
+	publicShares: 0,
+	SF: {},
+	shelterGirlsIDs: [], // Only needed in endweek loop
 	recuriterOffice: 0,
 	campaign: 0,
 	miniTruth: 0,
@@ -218,7 +234,11 @@ App.Data.defaultGameStateVariables = {
 	marketInfiltration: 0,
 	blackOps: 0,
 	focus: "social engineering",
+	thisWeeksFSWares: 0,
+	thisWeeksIllegalWares: 0,
+	Sweatshops: 0,
 
+	milkTap: 0,
 	militiaRecruitmen: 0,
 	rivalID: 0,
 	eventDescription: 0,
@@ -227,7 +247,6 @@ App.Data.defaultGameStateVariables = {
 	subSlaves: 0,
 
 	PopCap: 0,
-	masturbationAllowed: 0,
 	HGtraining: "",
 	mercenariesTitle: "",
 	milk: 0,
@@ -250,7 +269,6 @@ App.Data.defaultGameStateVariables = {
 	PCvictoryStreak: 0,
 	PClossStreak: 0,
 	foughtThisWeek: 0,
-
 	/* edicts */
 	alternativeRents: 0,
 	enslavementRights: 0,
@@ -512,8 +530,6 @@ App.Data.defaultGameStateVariables = {
 	DJignoresFlaws: 0,
 	slaveFightingBG: 0,
 	SecExp: {},
-	secExpEnabled: 0,
-	childSex: 0,
 	HGSlaveSuccess: 0,
 	unMadam: 0,
 	madamCashBonus: 0,
@@ -531,7 +547,6 @@ App.Data.defaultGameStateVariables = {
 
 	fluid: 0,
 	cumSale: 0,
-	showClothingErection: true,
 	revivalistLanguage: 0,
 	assistant: {},
 	localEcon: 0,
@@ -555,13 +570,6 @@ App.Data.defaultGameStateVariables = {
 	enduringTrust: 0,
 	enduringDevotion: 0,
 	defaultRules: [],
-};
-
-// The other half of the above whitelist.  However, entries in this array will be forced to the values set here upon starting NG+.
-App.Data.resetOnNGPlus = {
-	targetArcology: {type: "New"},
-	readySlaves: 0,
-
 
 	REFeminizationCheckinIDs: [],
 	REMILFCheckinIDs: [],
@@ -828,6 +836,7 @@ App.Data.resetOnNGPlus = {
 	FSAnnounced: 0,
 	FSCredits: 0,
 	FSGotRepCredits: 0,
+	FSCreditCount: 5,
 	FSSingleSlaveRep: 10,
 	FSSpending: 0,
 	FSLockinLevel: 100,