diff --git a/src/004-base/facility.js b/src/004-base/facility.js
index f5bc2c16b88d8e7d20cda830c9ee74678b4d6de9..be67be3c9701de0b13ca434cd07eb2028bb3d4c3 100644
--- a/src/004-base/facility.js
+++ b/src/004-base/facility.js
@@ -279,11 +279,13 @@ App.Entity.Facilities.Facility = class {
 		return res !== undefined ? res : 'the ' + this.genericName;
 	}
 
+	/** @returns {string} */
 	get nameCaps() {
 		const res = V[this.desc.baseName + "NameCaps"];
 		return res ? res : this.name.replace("the ", "The ");
 	}
 
+	/** @returns {string} */
 	get UIName() {
 		const nameCaps = this.nameCaps;
 		return nameCaps === "The " + this.genericName ? this.genericName : nameCaps;
diff --git a/src/arcologyBuilding/base.js b/src/arcologyBuilding/base.js
index 8f1e33500bb6a3c598bf8d6eb0cf54eaed64ddc6..4100bda35e4855c8f9136b4c983256d6a679fea3 100644
--- a/src/arcologyBuilding/base.js
+++ b/src/arcologyBuilding/base.js
@@ -58,18 +58,18 @@ App.Arcology.sectionOrder = ["fountain", "penthouse", "spire", "shops", "ravine-
  * @param {App.Entity.Facilities.Facility} facility
  * @param {string} [passageName]
  * @param {string} [statsStr]
- * @return {Node}
+ * @returns {Node}
  */
 App.Arcology.facilityCellContent = function(facility, passageName, statsStr) {
 	const res = document.createDocumentFragment();
 	res.append(App.UI.DOM.passageLink(facility.UIName, passageName || facility.genericName));
-	const stats = document.createElement("span");
-	stats.style.whiteSpace = "nowrap";
-	stats.textContent = statsStr ? statsStr : ` (${facility.employeesIDs().size}/${facility.capacity})`;
-	if (facility.manager && facility.manager.currentEmployee) {
-		stats.textContent += ", L";
+	const report = facility.occupancyReport(false);
+	if (report !== "") {
+		const stats = document.createElement("span");
+		stats.style.whiteSpace = "nowrap";
+		stats.textContent = ` (${report})`;
+		res.append(stats);
 	}
-	res.append(stats);
 	return res;
 };
 
diff --git a/src/arcologyBuilding/manufacturing.js b/src/arcologyBuilding/manufacturing.js
index 2130b2e24cc081d3c6ac92f4c0e42634cdaa5bbe..82b17cfa7871d3e633f7a21330118da2e455dbdb 100644
--- a/src/arcologyBuilding/manufacturing.js
+++ b/src/arcologyBuilding/manufacturing.js
@@ -49,8 +49,7 @@ App.Arcology.Cell.Manufacturing = class extends App.Arcology.Cell.BaseCell {
 	 */
 	cellContent(path) {
 		if (this.type === "Dairy") {
-			return App.Arcology.facilityCellContent(App.Entity.facilities.dairy, null,
-				` (${App.Entity.facilities.dairy.employeesIDs().size}${V.bioreactorsXY + V.bioreactorsXX + V.bioreactorsHerm + V.bioreactorsBarren > 0 ? "+" : ""}/${App.Entity.facilities.dairy.capacity})`);
+			return App.Arcology.facilityCellContent(App.Entity.facilities.dairy);
 		}
 		if (this.type === "Farmyard") {
 			return App.Arcology.facilityCellContent(App.Entity.facilities.farmyard);
diff --git a/src/arcologyBuilding/markets.js b/src/arcologyBuilding/markets.js
index 0210f6ff8b62d4b6cb56881d2e9158a8918b613a..e93f11c3b8c68b1db212f02c80389e2ca1b9ca24 100644
--- a/src/arcologyBuilding/markets.js
+++ b/src/arcologyBuilding/markets.js
@@ -41,17 +41,11 @@ App.Arcology.Cell.Market = class extends App.Arcology.Cell.BaseCell {
 	 * @returns {Node}
 	 */
 	cellContent(path) {
-		if (this.type === "Arcade") {
-			return App.Arcology.facilityCellContent(App.Entity.facilities.arcade);
-		}
-		if (this.type === "Pit") {
-			const pit = App.Entity.facilities.pit;
-			const fragment = document.createDocumentFragment();
-			fragment.append(App.UI.DOM.passageLink(pit.UIName, "Pit"),
-				`(${pit.employeesIDs().size})`);
-			return fragment;
-		}
 		switch (this.type) {
+			case "Arcade":
+				return App.Arcology.facilityCellContent(App.Entity.facilities.arcade);
+			case "Pit":
+				return App.Arcology.facilityCellContent(App.Entity.facilities.pit);
 			case "Markets":
 				return App.Arcology.getCellLink(path, "Markets");
 			case "Transport Hub":
diff --git a/src/arcologyBuilding/penthouse.js b/src/arcologyBuilding/penthouse.js
index 945dad029aad83ee2d3f5043e0de247dfc0370b0..455991f5b298c7850cfd389da9386e59e5d3998e 100644
--- a/src/arcologyBuilding/penthouse.js
+++ b/src/arcologyBuilding/penthouse.js
@@ -41,46 +41,24 @@ App.Arcology.Cell.Penthouse = class extends App.Arcology.Cell.BaseCell {
 		/**
 		 * @param {App.Entity.Facilities.Facility} facility
 		 * @param {string} [passageName]
-		 * @param {string} [leaderAbbr]
 		 */
-		function addFacility(facility, passageName, leaderAbbr = 'L') {
+		function addFacility(facility, passageName) {
 			if (facility.established) {
-				wrapper.append(createFacilityDiv(App.UI.DOM.passageLink(facility.UIName, passageName || facility.genericName),
-					`(${facility.employeesIDs().size}/${facility.capacity}${facility.manager.employeesIDs().size > 0 ? `, ${leaderAbbr}` : ""})`));
-			}
-		}
-
-		addFacility(fcs.masterSuite, fcs.masterSuite.genericName, "C");
-
-		if (fcs.headGirlSuite.established) {
-			const link = App.UI.DOM.passageLink(fcs.headGirlSuite.UIName, "Head Girl Suite");
-
-			if (V.HeadGirl !== 0) {
-				wrapper.append(createFacilityDiv(link, `(HG${fcs.headGirlSuite.employeesIDs().size > 0 ? ", 1" : ""})`));
-			} else {
-				wrapper.append(createFacilityDiv(link));
-			}
-		}
-
-		if (V.dojo > 1) {
-			const link = App.UI.DOM.passageLink("Armory", "BG Select");
-
-			if (V.Bodyguard !== 0) {
-				wrapper.append(createFacilityDiv(link, "BG"));
-			} else {
-				wrapper.append(createFacilityDiv(link));
+				wrapper.append(createFacilityDiv(
+					App.UI.DOM.passageLink(facility.UIName, passageName || facility.genericName)));
+				const report = facility.occupancyReport(false);
+				if (report !== "") {
+					wrapper.append(`(${report})`);
+				}
 			}
 		}
 
+		addFacility(fcs.masterSuite);
+		addFacility(fcs.headGirlSuite, "Head Girl Suite");
+		addFacility(fcs.armory, "BG Select");
 		addFacility(fcs.servantsQuarters);
 		addFacility(fcs.spa);
-
-		if (fcs.nursery.established) {
-			const n = fcs.nursery;
-			wrapper.append(createFacilityDiv(App.UI.DOM.passageLink(n.UIName, "Nursery"),
-				`(${numberWithPluralOne(n.capacity - V.nurseryBabies, "empty room")}, ${n.employeesIDs().size}/${V.nurseryNannies}${V.Matron ? ", L" : ""})`));
-		}
-
+		addFacility(fcs.nursery);
 		addFacility(fcs.clinic);
 		addFacility(fcs.schoolroom);
 		addFacility(fcs.cellblock);
@@ -119,7 +97,7 @@ App.Arcology.Cell.Penthouse = class extends App.Arcology.Cell.BaseCell {
 		/**
 		 *
 		 * @param {HTMLElement} link
-		 * @param {(Node|string)[]} content
+		 * @param {(Node|string)} content
 		 * @returns {HTMLDivElement}
 		 */
 		function createFacilityDiv(link, ...content) {
diff --git a/src/facilities/armory/armoryFramework.js b/src/facilities/armory/armoryFramework.js
index a219e606db73243e667199cc4dca544cd9c793fc..ac077b9815b7b0b0617e224f3e181fa685bac713 100644
--- a/src/facilities/armory/armoryFramework.js
+++ b/src/facilities/armory/armoryFramework.js
@@ -1,6 +1,6 @@
 App.Data.Facilities.armory = {
 	baseName: "dojo",
-	genericName: "armory",
+	genericName: "Armory",
 	jobs: {	},
 	defaultJob: null,
 	manager: {