diff --git a/code/__defines/misc.dm b/code/__defines/misc.dm
index 2345d895fa..0f7d1825e8 100644
--- a/code/__defines/misc.dm
+++ b/code/__defines/misc.dm
@@ -63,24 +63,24 @@
#define LIFE_HUD 10 // STATUS_HUD that only reports dead or alive
//some colors
-#define COLOR_WHITE "#FFFFFF"
-#define COLOR_SILVER "#C0C0C0"
-#define COLOR_GRAY "#808080"
-#define COLOR_BLACK "#000000"
-#define COLOR_RED "#FF0000"
-#define COLOR_MAROON "#800000"
-#define COLOR_YELLOW "#FFFF00"
-#define COLOR_OLIVE "#808000"
-#define COLOR_LIME "#00FF00"
-#define COLOR_GREEN "#008000"
-#define COLOR_CYAN "#00FFFF"
-#define COLOR_TEAL "#008080"
-#define COLOR_BLUE "#0000FF"
-#define COLOR_NAVY "#000080"
-#define COLOR_PINK "#FF00FF"
-#define COLOR_PURPLE "#800080"
-#define COLOR_ORANGE "#FF9900"
-
+#define COLOR_WHITE "#FFFFFF"
+#define COLOR_SILVER "#C0C0C0"
+#define COLOR_GRAY "#808080"
+#define COLOR_BLACK "#000000"
+#define COLOR_RED "#FF0000"
+#define COLOR_MAROON "#800000"
+#define COLOR_YELLOW "#FFFF00"
+#define COLOR_OLIVE "#808000"
+#define COLOR_LIME "#00FF00"
+#define COLOR_GREEN "#008000"
+#define COLOR_CYAN "#00FFFF"
+#define COLOR_TEAL "#008080"
+#define COLOR_BLUE "#0000FF"
+#define COLOR_NAVY "#000080"
+#define COLOR_PINK "#FF00FF"
+#define COLOR_PURPLE "#800080"
+#define COLOR_ORANGE "#FF9900"
+#define COLOR_LUMINOL "#66FFFF"
// Shuttles.
// These define the time taken for the shuttle to get to the space station, and the time before it leaves again.
diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm
index 59b183975c..ea7a4d3f75 100644
--- a/code/datums/supplypacks.dm
+++ b/code/datums/supplypacks.dm
@@ -43,6 +43,20 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee
group = "Security"
hidden = 1
+/datum/supply_packs/forensics
+ name = "Auxiliary forensic tools"
+ contains = list(/obj/item/weapon/forensics/sample_kit,
+ /obj/item/weapon/forensics/sample_kit/powder,
+ /obj/item/weapon/storage/box/swabs,
+ /obj/item/weapon/storage/box/swabs,
+ /obj/item/weapon/storage/box/swabs,
+ /obj/item/weapon/storage/box/slides,
+ /obj/item/weapon/reagent_containers/spray/luminol)
+ cost = 30
+ containertype = /obj/structure/closet/crate
+ containername = "Auxiliary forensic tools"
+ group = "Security"
+
/datum/supply_packs/food
name = "Kitchen supply crate"
contains = list(/obj/item/weapon/reagent_containers/food/condiment/flour,
@@ -1627,8 +1641,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee
/datum/supply_packs/detectivegear
name = "Forensic investigation equipment"
- contains = list(/obj/item/device/detective_scanner,
- /obj/item/weapon/storage/box/evidence,
+ contains = list(/obj/item/weapon/storage/box/evidence,
/obj/item/weapon/storage/box/evidence,
/obj/item/clothing/suit/storage/vest/detective,
/obj/item/weapon/cartridge/detective,
diff --git a/code/game/atoms.dm b/code/game/atoms.dm
index 77279ab117..1a9d246215 100644
--- a/code/game/atoms.dm
+++ b/code/game/atoms.dm
@@ -6,12 +6,14 @@
var/list/fingerprintshidden
var/fingerprintslast = null
var/list/blood_DNA
+ var/was_bloodied
var/blood_color
var/last_bumped = 0
var/pass_flags = 0
var/throwpass = 0
var/germ_level = GERM_LEVEL_AMBIENT // The higher the germ level, the more germ on the atom.
var/simulated = 1 //filter for actions - used by lighting overlays
+ var/fluorescent // Shows up under a UV light.
///Chemistry.
var/datum/reagents/reagents = null
@@ -23,6 +25,9 @@
//Detective Work, used for the duplicate data points kept in the scanners
var/list/original_atom
+/atom/proc/reveal_blood()
+ return
+
/atom/proc/assume_air(datum/gas_mixture/giver)
return null
@@ -304,7 +309,7 @@ its easier to just keep the beam vertical.
fingerprints = list()
//Hash this shit.
- var/full_print = md5(H.dna.uni_identity)
+ var/full_print = H.get_full_print()
// Add the fingerprints
//
@@ -387,6 +392,7 @@ its easier to just keep the beam vertical.
if(!blood_DNA || !istype(blood_DNA, /list)) //if our list of DNA doesn't exist yet (or isn't a list) initialise it.
blood_DNA = list()
+ was_bloodied = 1
blood_color = "#A10808"
if(istype(M))
if (!istype(M.dna, /datum/dna))
@@ -406,16 +412,15 @@ its easier to just keep the beam vertical.
if(toxvomit)
this.icon_state = "vomittox_[pick(1,4)]"
-
/atom/proc/clean_blood()
if(!simulated)
return
+ fluorescent = 0
src.germ_level = 0
if(istype(blood_DNA, /list))
blood_DNA = null
return 1
-
/atom/proc/get_global_map_pos()
if(!islist(global_map) || isemptylist(global_map)) return
var/cur_x = null
diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm
index 20f4ab73bc..4bf3fd442a 100644
--- a/code/game/jobs/job/security.dm
+++ b/code/game/jobs/job/security.dm
@@ -111,12 +111,11 @@
H.equip_to_slot_or_del(new /obj/item/weapon/flame/lighter/zippo(H), slot_l_store)
if(H.backbag == 1)//Why cant some of these things spawn in his office?
H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/evidence(H), slot_l_hand)
- H.equip_to_slot_or_del(new /obj/item/device/detective_scanner(H), slot_r_store)
else
H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/evidence(H), slot_in_backpack)
- H.equip_to_slot_or_del(new /obj/item/device/detective_scanner(H), slot_in_backpack)
if(H.mind.role_alt_title && H.mind.role_alt_title == "Forensic Technician")
H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/forensics/blue(H), slot_wear_suit)
+ H.equip_to_slot_or_del(new /obj/item/weapon/storage/briefcase/crimekit, slot_r_hand)
else
H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/det_trench(H), slot_wear_suit)
H.equip_to_slot_or_del(new /obj/item/clothing/head/det(H), slot_head)
diff --git a/code/game/machinery/buttons.dm b/code/game/machinery/buttons.dm
index ec844b6004..70557a2e18 100644
--- a/code/game/machinery/buttons.dm
+++ b/code/game/machinery/buttons.dm
@@ -15,6 +15,4 @@
return src.attack_hand(user)
/obj/machinery/button/attackby(obj/item/weapon/W, mob/user as mob)
- if(istype(W, /obj/item/device/detective_scanner))
- return
return src.attack_hand(user)
\ No newline at end of file
diff --git a/code/game/machinery/door_control.dm b/code/game/machinery/door_control.dm
index 6662b20b67..b51d72ccd8 100644
--- a/code/game/machinery/door_control.dm
+++ b/code/game/machinery/door_control.dm
@@ -24,22 +24,6 @@
user << "Error, no route to host."
/obj/machinery/button/remote/attackby(obj/item/weapon/W, mob/user as mob)
- /* For later implementation
- if (istype(W, /obj/item/weapon/screwdriver))
- {
- if(wiresexposed)
- icon_state = "doorctrl0"
- wiresexposed = 0
-
- else
- icon_state = "doorctrl-open"
- wiresexposed = 1
-
- return
- }
- */
- if(istype(W, /obj/item/device/detective_scanner))
- return
return src.attack_hand(user)
/obj/machinery/button/remote/emag_act(var/remaining_charges, var/mob/user)
diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm
index 121331f126..d32c7e45ee 100644
--- a/code/game/machinery/doors/airlock.dm
+++ b/code/game/machinery/doors/airlock.dm
@@ -750,7 +750,7 @@ About the new airlock wires panel:
if(src.isElectrified())
if(src.shock(user, 75))
return
- if(istype(C, /obj/item/device/detective_scanner) || istype(C, /obj/item/taperoll))
+ if(istype(C, /obj/item/taperoll))
return
src.add_fingerprint(user)
diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm
index 2d1680aa7d..f583b620a4 100644
--- a/code/game/machinery/doors/door.dm
+++ b/code/game/machinery/doors/door.dm
@@ -202,8 +202,6 @@
..()
/obj/machinery/door/attackby(obj/item/I as obj, mob/user as mob)
- if(istype(I, /obj/item/device/detective_scanner))
- return
src.add_fingerprint(user)
if(istype(I, /obj/item/stack/material) && I.get_material_name() == src.get_material_name())
diff --git a/code/game/machinery/igniter.dm b/code/game/machinery/igniter.dm
index fa385a0115..5fd791843d 100755
--- a/code/game/machinery/igniter.dm
+++ b/code/game/machinery/igniter.dm
@@ -72,8 +72,6 @@
// src.sd_SetLuminosity(0)
/obj/machinery/sparker/attackby(obj/item/weapon/W as obj, mob/user as mob)
- if(istype(W, /obj/item/device/detective_scanner))
- return
if (istype(W, /obj/item/weapon/screwdriver))
add_fingerprint(user)
src.disable = !src.disable
diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm
index 6d3d7cd1df..3a0395636e 100644
--- a/code/game/objects/effects/decals/Cleanable/humans.dm
+++ b/code/game/objects/effects/decals/Cleanable/humans.dm
@@ -22,6 +22,20 @@ var/global/list/image/splatter_cache=list()
var/amount = 5
var/drytime
+/obj/effect/decal/cleanable/blood/reveal_blood()
+ if(!fluorescent)
+ fluorescent = 1
+ basecolor = COLOR_LUMINOL
+ update_icon()
+
+/obj/effect/decal/cleanable/blood/clean_blood()
+ fluorescent = 0
+ if(invisibility != 100)
+ invisibility = 100
+ amount = 0
+ processing_objects -= src
+ ..(ignore=1)
+
/obj/effect/decal/cleanable/blood/Destroy()
for(var/datum/disease/D in viruses)
D.cure(0)
diff --git a/code/game/objects/effects/decals/Cleanable/tracks.dm b/code/game/objects/effects/decals/Cleanable/tracks.dm
index ae05e0e4cc..f104b77fd7 100644
--- a/code/game/objects/effects/decals/Cleanable/tracks.dm
+++ b/code/game/objects/effects/decals/Cleanable/tracks.dm
@@ -29,6 +29,13 @@ var/global/list/image/fluidtrack_cache=list()
src.basecolor=_color
src.wet=_wet
+/obj/effect/decal/cleanable/blood/tracks/reveal_blood()
+ if(!fluorescent)
+ if(stack && stack.len)
+ for(var/datum/fluidtrack/track in stack)
+ track.basecolor = COLOR_LUMINOL
+ ..()
+
// Footprints, tire trails...
/obj/effect/decal/cleanable/blood/tracks
amount = 0
@@ -114,7 +121,8 @@ var/global/list/image/fluidtrack_cache=list()
updated=1
dirs |= comingdir|realgoing
- blood_DNA |= DNA.Copy()
+ if(islist(blood_DNA))
+ blood_DNA |= DNA.Copy()
if(updated)
update_icon()
diff --git a/code/game/objects/effects/decals/cleanable.dm b/code/game/objects/effects/decals/cleanable.dm
index dc5e6c57e8..2db1e5e948 100644
--- a/code/game/objects/effects/decals/cleanable.dm
+++ b/code/game/objects/effects/decals/cleanable.dm
@@ -1,6 +1,12 @@
/obj/effect/decal/cleanable
var/list/random_icon_states = list()
+/obj/effect/decal/cleanable/clean_blood(var/ignore = 0)
+ if(!ignore)
+ qdel(src)
+ return
+ ..()
+
/obj/effect/decal/cleanable/New()
if (random_icon_states && length(src.random_icon_states) > 0)
src.icon_state = pick(src.random_icon_states)
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index e62b4c47db..25320136b9 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -493,6 +493,12 @@ var/list/global/slot_flags_enumeration = list(
var/obj/item/clothing/gloves/G = src
G.transfer_blood = 0
+/obj/item/reveal_blood()
+ if(was_bloodied && !fluorescent)
+ fluorescent = 1
+ blood_color = COLOR_LUMINOL
+ blood_overlay.color = COLOR_LUMINOL
+ update_icon()
/obj/item/add_blood(mob/living/carbon/human/M as mob)
if (!..())
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm
index fbd9441feb..21022bceaa 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm
@@ -281,7 +281,6 @@
new /obj/item/weapon/storage/box/evidence(src)
new /obj/item/device/radio/headset/headset_sec(src)
new /obj/item/device/radio/headset/headset_sec/alt(src)
- new /obj/item/device/detective_scanner(src)
new /obj/item/clothing/suit/storage/vest/detective(src)
new /obj/item/ammo_magazine/c45m/rubber(src)
new /obj/item/ammo_magazine/c45m/rubber(src)
diff --git a/code/game/turfs/simulated.dm b/code/game/turfs/simulated.dm
index 8336a52569..47e9e30951 100644
--- a/code/game/turfs/simulated.dm
+++ b/code/game/turfs/simulated.dm
@@ -14,6 +14,11 @@
var/max_fire_temperature_sustained = 0 //The max temperature of the fire which it was subjected to
var/dirt = 0
+/turf/simulated/clean_blood()
+ for(var/obj/effect/decal/cleanable/blood/B in contents)
+ B.clean_blood()
+ ..()
+
/turf/simulated/New()
..()
if(istype(loc, /area/chapel))
@@ -127,6 +132,8 @@
if(istype(M))
for(var/obj/effect/decal/cleanable/blood/B in contents)
+ if(!B.blood_DNA)
+ B.blood_DNA = list()
if(!B.blood_DNA[M.dna.unique_enzymes])
B.blood_DNA[M.dna.unique_enzymes] = M.dna.b_type
B.virus2 = virus_copylist(M.virus2)
diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm
index e6612a867f..3eb48aa0e7 100644
--- a/code/game/turfs/turf.dm
+++ b/code/game/turfs/turf.dm
@@ -216,3 +216,6 @@ var/const/enterloopsanity = 100
if(A.density && !(A.flags & ON_BORDER))
return 1
return 0
+
+/turf/proc/update_blood_overlays()
+ return
diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm
index a88ba411c2..319c2a2c48 100644
--- a/code/modules/clothing/clothing.dm
+++ b/code/modules/clothing/clothing.dm
@@ -2,6 +2,7 @@
name = "clothing"
siemens_coefficient = 0.9
var/list/species_restricted = null //Only these species can wear this kit.
+ var/gunshot_residue //Used by forensics.
/*
Sprites used when the clothing item is refit. This is done by setting icon_override.
@@ -15,6 +16,11 @@
/obj/item/clothing/proc/update_clothing_icon()
return
+// Aurora forensics port.
+/obj/item/clothing/clean_blood()
+ ..()
+ gunshot_residue = null
+
//BS12: Species-restricted clothing check.
/obj/item/clothing/mob_can_equip(M as mob, slot)
diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm
index 8c89c0a411..e7ba59a5ef 100644
--- a/code/modules/clothing/suits/armor.dm
+++ b/code/modules/clothing/suits/armor.dm
@@ -91,7 +91,7 @@
/obj/item/clothing/suit/armor/laserproof/handle_shield(mob/user, var/damage, atom/damage_source = null, mob/attacker = null, var/def_zone = null, var/attack_text = "the attack")
if(istype(damage_source, /obj/item/projectile/energy) || istype(damage_source, /obj/item/projectile/beam))
var/obj/item/projectile/P = damage_source
-
+
var/reflectchance = 40 - round(damage/3)
if(!(def_zone in list("chest", "groin")))
reflectchance /= 2
@@ -171,12 +171,12 @@
if(!turfs.len) turfs += pick(/turf in orange(6))
var/turf/picked = pick(turfs)
if(!isturf(picked)) return
-
+
var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread()
spark_system.set_up(5, 0, user.loc)
spark_system.start()
playsound(user.loc, "sparks", 50, 1)
-
+
user.loc = picked
return PROJECTILE_FORCE_MISS
return 0
@@ -275,7 +275,7 @@
icon_state = "kvest"
item_state = "kvest"
armor = list(melee = 50, bullet = 15, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0)
- allowed = list(/obj/item/weapon/gun,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/device/detective_scanner)
+ allowed = list(/obj/item/weapon/gun,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
/obj/item/clothing/suit/storage/vest/officer
name = "officer armor vest"
diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm
index c06198b287..88112918a3 100644
--- a/code/modules/clothing/suits/jobs.dm
+++ b/code/modules/clothing/suits/jobs.dm
@@ -96,7 +96,7 @@
item_state = "det_suit"
blood_overlay_type = "coat"
body_parts_covered = UPPER_TORSO|ARMS
- allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter,/obj/item/device/detective_scanner,/obj/item/device/taperecorder)
+ allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter,/obj/item/device/taperecorder)
armor = list(melee = 50, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0)
/obj/item/clothing/suit/storage/det_trench/grey
@@ -109,7 +109,7 @@
desc = "A forensics technician jacket."
item_state = "det_suit"
body_parts_covered = UPPER_TORSO|ARMS
- allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/device/detective_scanner,/obj/item/device/taperecorder)
+ allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/device/taperecorder)
armor = list(melee = 10, bullet = 10, laser = 15, energy = 10, bomb = 0, bio = 0, rad = 0)
/obj/item/clothing/suit/storage/forensics/red
diff --git a/code/modules/detectivework/footprints.dm b/code/modules/detectivework/footprints.dm
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/code/modules/detectivework/forensics.dm b/code/modules/detectivework/forensics.dm
index bca3090c3f..27e2231d24 100644
--- a/code/modules/detectivework/forensics.dm
+++ b/code/modules/detectivework/forensics.dm
@@ -1,3 +1,7 @@
+/obj/item/weapon/forensics
+ icon = 'icons/obj/forensics.dmi'
+ w_class = 1
+
//This is the output of the stringpercent(print) proc, and means about 80% of
//the print must be there for it to be complete. (Prints are 32 digits)
var/const/FINGERPRINT_COMPLETE = 6
diff --git a/code/modules/detectivework/microscope/dnascanner.dm b/code/modules/detectivework/microscope/dnascanner.dm
new file mode 100644
index 0000000000..4b3cafea50
--- /dev/null
+++ b/code/modules/detectivework/microscope/dnascanner.dm
@@ -0,0 +1,153 @@
+//DNA machine
+/obj/machinery/dnaforensics
+ name = "DNA analyzer"
+ desc = "A high tech machine that is designed to read DNA samples properly."
+ icon = 'icons/obj/forensics.dmi'
+ icon_state = "dnaopen"
+ anchored = 1
+ density = 1
+
+ var/obj/item/weapon/forensics/swab/bloodsamp = null
+ var/closed = 0
+ var/scanning = 0
+ var/scanner_progress = 0
+ var/scanner_rate = 2.50
+ var/last_process_worldtime = 0
+ var/report_num = 0
+
+/obj/machinery/dnaforensics/attackby(var/obj/item/W, mob/user as mob)
+
+ if(bloodsamp)
+ user << "There is already a sample in the machine."
+ return
+
+ if(closed)
+ user << "Open the cover before inserting the sample."
+ return
+
+ var/obj/item/weapon/forensics/swab/swab = W
+ if(istype(swab) && swab.is_used())
+ user.unEquip(W)
+ src.bloodsamp = swab
+ swab.loc = src
+ user << "You insert \the [W] into \the [src]."
+ else
+ user << "\The [src] only accepts used swabs."
+ return
+
+/obj/machinery/dnaforensics/ui_interact(mob/user, ui_key = "main",var/datum/nanoui/ui = null)
+ if(stat & (NOPOWER)) return
+ if(user.stat || user.restrained()) return
+ var/list/data = list()
+ data["scan_progress"] = round(scanner_progress)
+ data["scanning"] = scanning
+ data["bloodsamp"] = (bloodsamp ? bloodsamp.name : "")
+ data["bloodsamp_desc"] = (bloodsamp ? (bloodsamp.desc ? bloodsamp.desc : "No information on record.") : "")
+ data["lidstate"] = closed
+
+ ui = nanomanager.try_update_ui(user, src, ui_key, ui, data)
+ if (!ui)
+ ui = new(user, src, ui_key, "dnaforensics.tmpl", "QuikScan DNA Analyzer", 540, 326)
+ ui.set_initial_data(data)
+ ui.open()
+ ui.set_auto_update(1)
+
+/obj/machinery/dnaforensics/Topic(href, href_list)
+
+ if(..()) return 1
+
+ if(stat & (NOPOWER))
+ return 0 // don't update UIs attached to this object
+
+ if(href_list["scanItem"])
+ if(scanning)
+ scanning = 0
+ else
+ if(bloodsamp)
+ if(closed == 1)
+ scanner_progress = 0
+ scanning = 1
+ usr << "Scan initiated."
+ update_icon()
+ else
+ usr << "Please close sample lid before initiating scan."
+ else
+ usr << "Insert an item to scan."
+
+ if(href_list["ejectItem"])
+ if(bloodsamp)
+ bloodsamp.forceMove(src.loc)
+ bloodsamp = null
+
+ if(href_list["toggleLid"])
+ toggle_lid()
+
+ return 1
+
+/obj/machinery/dnaforensics/process()
+ if(scanning)
+ if(!bloodsamp || bloodsamp.loc != src)
+ bloodsamp = null
+ scanning = 0
+ else if(scanner_progress >= 100)
+ complete_scan()
+ return
+ else
+ //calculate time difference
+ var/deltaT = (world.time - last_process_worldtime) * 0.1
+ scanner_progress = min(100, scanner_progress + scanner_rate * deltaT)
+ last_process_worldtime = world.time
+
+/obj/machinery/dnaforensics/proc/complete_scan()
+ src.visible_message("\icon[src] makes an insistent chime.", 2)
+ update_icon()
+ if(bloodsamp)
+ var/obj/item/weapon/paper/P = new(src)
+ P.name = "[src] report #[++report_num]: [bloodsamp.name]"
+ P.stamped = list(/obj/item/weapon/stamp)
+ P.overlays = list("paper_stamped")
+ //dna data itself
+ var/data = "No scan information available."
+ if(bloodsamp.dna != null)
+ data = "Spectometric analysis on provided sample has determined the presence of [bloodsamp.dna.len] strings of DNA.
"
+ for(var/blood in bloodsamp.dna)
+ data += "\blue Blood type: [bloodsamp.dna[blood]]
\nDNA: [blood]
"
+ else
+ data += "No DNA found.
"
+ P.info = "[src] analysis report #[report_num]
"
+ P.info += "Scanned item:
[bloodsamp.name]
[bloodsamp.desc]
" + data
+ P.forceMove(src.loc)
+ P.update_icon()
+ scanning = 0
+ update_icon()
+ return
+
+/obj/machinery/dnaforensics/attack_ai(mob/user as mob)
+ ui_interact(user)
+
+/obj/machinery/dnaforensics/attack_hand(mob/user as mob)
+ ui_interact(user)
+
+/obj/machinery/dnaforensics/verb/toggle_lid()
+ set category = "Object"
+ set name = "Toggle Lid"
+ set src in oview(1)
+
+ if(usr.stat || !isliving(usr))
+ return
+
+ if(scanning)
+ usr << "You can't do that while [src] is scanning!"
+ return
+
+ closed = !closed
+ src.update_icon()
+
+/obj/machinery/dnaforensics/update_icon()
+ ..()
+ if(!(stat & NOPOWER) && scanning)
+ icon_state = "dnaworking"
+ else if(closed)
+ icon_state = "dnaclosed"
+ else
+ icon_state = "dnaopen"
diff --git a/code/modules/detectivework/microscope/microscope.dm b/code/modules/detectivework/microscope/microscope.dm
new file mode 100644
index 0000000000..5fd31a555c
--- /dev/null
+++ b/code/modules/detectivework/microscope/microscope.dm
@@ -0,0 +1,116 @@
+//microscope code itself
+/obj/machinery/microscope
+ name = "high powered electron microscope"
+ desc = "A highly advanced microscope capable of zooming up to 3000x."
+ icon = 'icons/obj/forensics.dmi'
+ icon_state = "microscope"
+ anchored = 1
+ density = 1
+
+ var/obj/item/weapon/sample = null
+ var/report_num = 0
+
+/obj/machinery/microscope/attackby(obj/item/weapon/W as obj, mob/user as mob)
+
+ if(sample)
+ user << "There is already a slide in the microscope."
+ return
+
+ if(istype(W, /obj/item/weapon/forensics/slide) || istype(W, /obj/item/weapon/sample/print))
+ user << "You insert \the [W] into the microscope."
+ user.unEquip(W)
+ W.forceMove(src)
+ sample = W
+ update_icon()
+ return
+
+/obj/machinery/microscope/attack_hand(mob/user)
+
+ if(!sample)
+ user << "The microscope has no sample to examine."
+ return
+
+ user << "The microscope whirrs as you examine \the [sample]."
+
+ if(!do_after(user, 25) || !sample)
+ return
+
+ user << "Printing findings now..."
+ var/obj/item/weapon/paper/report = new(get_turf(src))
+ report.stamped = list(/obj/item/weapon/stamp)
+ report.overlays = list("paper_stamped")
+ report_num++
+
+ if(istype(sample, /obj/item/weapon/forensics/slide))
+ var/obj/item/weapon/forensics/slide/slide = sample
+ if(slide.has_swab)
+ var/obj/item/weapon/forensics/swab/swab = slide.has_swab
+
+ report.name = "GSR report #[++report_num]: [swab.name]"
+ report.info = "Scanned item:
[swab.name]
"
+
+ if(swab.gsr)
+ report.info += "Residue from a [swab.gsr] bullet detected."
+ else
+ report.info += "No gunpowder residue found."
+
+ else if(slide.has_sample)
+ var/obj/item/weapon/sample/fibers/fibers = slide.has_sample
+ report.name = "Fiber report #[++report_num]: [fibers.name]"
+ report.info = "Scanned item:
[fibers.name]
"
+ if(fibers.evidence)
+ report.info = "Molecular analysis on provided sample has determined the presence of unique fiber strings.
"
+ for(var/fiber in fibers.evidence)
+ report.info += "Most likely match for fibers: [fiber]
"
+ else
+ report.info += "No fibers found."
+ else
+ report.name = "Empty slide report #[report_num]"
+ report.info = "Evidence suggests that there's nothing in this slide."
+ else if(istype(sample, /obj/item/weapon/sample/print))
+ report.name = "Fingerprint report #[report_num]: [sample.name]"
+ report.info = "Fingerprint analysis report #[report_num]: [sample.name]
"
+ var/obj/item/weapon/sample/print/card = sample
+ if(card.evidence && card.evidence.len)
+ report.info += "Surface analysis has determined unique fingerprint strings:
"
+ for(var/prints in card.evidence)
+ report.info += "Fingerprint string: "
+ if(!is_complete_print(prints))
+ report.info += "INCOMPLETE PRINT"
+ else
+ report.info += "[prints]"
+ report.info += "
"
+ else
+ report.info += "No information available."
+
+ if(report)
+ report.update_icon()
+ if(report.info)
+ user << report.info
+ return
+
+/obj/machinery/microscope/proc/remove_sample(var/mob/living/remover)
+ if(!istype(remover) || remover.incapacitated() || !Adjacent(remover))
+ return ..()
+ if(!sample)
+ remover << "\The [src] does not have a sample in it."
+ return
+ remover << "You remove \the [sample] from \the [src]."
+ sample.forceMove(get_turf(src))
+ remover.put_in_hands(sample)
+ sample = null
+ update_icon()
+
+/obj/machinery/microscope/AltClick()
+ remove_sample(usr)
+
+/obj/machinery/microscope/MouseDrop(var/atom/other)
+ if(usr == other)
+ remove_sample(usr)
+ else
+ return ..()
+
+/obj/machinery/microscope/update_icon()
+ icon_state = "microscope"
+ if(sample)
+ icon_state += "slide"
diff --git a/code/modules/detectivework/microscope/slides.dm b/code/modules/detectivework/microscope/slides.dm
new file mode 100644
index 0000000000..8226e6a51e
--- /dev/null
+++ b/code/modules/detectivework/microscope/slides.dm
@@ -0,0 +1,42 @@
+/obj/item/weapon/forensics/slide
+ name = "microscope slide"
+ desc = "A pair of thin glass panes used in the examination of samples beneath a microscope."
+ icon_state = "slide"
+ var/obj/item/weapon/forensics/swab/has_swab
+ var/obj/item/weapon/sample/fibers/has_sample
+
+/obj/item/weapon/forensics/slide/attackby(var/obj/item/weapon/W, var/mob/user)
+ if(has_swab || has_sample)
+ user << "There is already a sample in the slide."
+ return
+ if(istype (W, /obj/item/weapon/forensics/swab))
+ has_swab = W
+ else if(istype(W, /obj/item/weapon/sample/fibers))
+ has_sample = W
+ else
+ user << "You don't think this will fit."
+ return
+ user << "You insert the sample into the slide."
+ user.unEquip(W)
+ W.forceMove(src)
+ update_icon()
+
+/obj/item/weapon/forensics/slide/attack_self(var/mob/user)
+ if(has_swab || has_sample)
+ user << "You remove \the sample from \the [src]."
+ if(has_swab)
+ has_swab.loc = get_turf(src)
+ has_swab = null
+ if(has_sample)
+ has_sample.forceMove(get_turf(src))
+ has_sample = null
+ update_icon()
+ return
+
+/obj/item/weapon/forensics/slide/update_icon()
+ if(!has_swab && !has_sample)
+ icon_state = "slide"
+ else if(has_swab)
+ icon_state = "slideswab"
+ else if(has_sample)
+ icon_state = "slidefiber"
diff --git a/code/modules/detectivework/scanner.dm b/code/modules/detectivework/scanner.dm
deleted file mode 100644
index dc372e2356..0000000000
--- a/code/modules/detectivework/scanner.dm
+++ /dev/null
@@ -1,115 +0,0 @@
-/obj/item/device/detective_scanner
- name = "forensic scanner"
- desc = "Used to scan objects for DNA and fingerprints."
- icon_state = "forensic1"
- var/list/stored = list()
- w_class = 3.0
- item_state = "electronic"
- flags = CONDUCT | NOBLUDGEON
- slot_flags = SLOT_BELT
-
-/obj/item/device/detective_scanner/attack(mob/living/carbon/human/M as mob, mob/user as mob)
- if (!ishuman(M))
- user << "[M] is not human and cannot have the fingerprints."
- flick("forensic0",src)
- return 0
- if (( !( istype(M.dna, /datum/dna) ) || M.gloves) )
- user << "No fingerprints found on [M]"
- flick("forensic0",src)
- return 0
- else
- var/obj/item/weapon/f_card/F = new /obj/item/weapon/f_card( user.loc )
- F.amount = 1
- F.add_fingerprint(M)
- F.icon_state = "fingerprint1"
- F.name = text("FPrintC- '[M.name]'")
- user << "Done printing."
- user << "[M]'s Fingerprints: [md5(M.dna.uni_identity)]"
- if ( M.blood_DNA && M.blood_DNA.len )
- user << "Blood found on [M]. Analysing..."
- spawn(15)
- for(var/blood in M.blood_DNA)
- user << "Blood type: [M.blood_DNA[blood]]\nDNA: [blood]"
- return
-
-/obj/item/device/detective_scanner/afterattack(atom/A as obj|turf, mob/user, proximity)
- if(!proximity) return
- if(ismob(A))
- return
- if(istype(A,/obj/machinery/computer/forensic_scanning))
- user.visible_message("[user] takes a cord out of [src] and hooks its end into [A]" ,\
- "You download data from [src] to [A]")
- var/obj/machinery/computer/forensic_scanning/F = A
- F.sync_data(stored)
- return
-
- if(istype(A,/obj/item/weapon/f_card))
- user << "The scanner displays on the screen: \"ERROR 43: Object on Excluded Object List.\""
- flick("forensic0",src)
- return
-
- add_fingerprint(user)
-
- //General
- if ((!A.fingerprints || !A.fingerprints.len) && !A.suit_fibers && !A.blood_DNA)
- user.visible_message("\The [user] scans \the [A] with \a [src], the air around [user.gender == MALE ? "him" : "her"] humming[prob(70) ? " gently." : "."]" ,\
- "Unable to locate any fingerprints, materials, fibers, or blood on [A]!",\
- "You hear a faint hum of electrical equipment.")
- flick("forensic0",src)
- return 0
-
- if(add_data(A))
- user << "Object already in internal memory. Consolidating data..."
- flick("forensic2",src)
- return
-
- //PRINTS
- if(A.fingerprints && A.fingerprints.len)
- user << "Isolated [A.fingerprints.len] fingerprints:"
- user << "Data Stored: Scan with Hi-Res Forensic Scanner to retrieve."
- var/list/complete_prints = list()
- for(var/i in A.fingerprints)
- var/print = A.fingerprints[i]
- if(stringpercent(print) <= FINGERPRINT_COMPLETE)
- complete_prints += print
- if(complete_prints.len < 1)
- user << "No intact prints found"
- else
- user << "Found [complete_prints.len] intact prints"
- for(var/i in complete_prints)
- user << " [i]"
-
- //FIBERS
- if(A.suit_fibers && A.suit_fibers.len)
- user << "Fibers/Materials Data Stored: Scan with Hi-Res Forensic Scanner to retrieve."
- flick("forensic2",src)
-
- //Blood
- if (A.blood_DNA && A.blood_DNA.len)
- user << "Blood detected. Analysing..."
- spawn(15)
- for(var/blood in A.blood_DNA)
- user << "Blood type: \red [A.blood_DNA[blood]] \t \black DNA: \red [blood]"
-
- user.visible_message("\The [user] scans \the [A] with \a [src], the air around [user.gender == MALE ? "him" : "her"] humming[prob(70) ? " gently." : "."]" ,\
- "You finish scanning \the [A].",\
- "You hear a faint hum of electrical equipment.")
- flick("forensic2",src)
- return 0
-
-/obj/item/device/detective_scanner/proc/add_data(atom/A as mob|obj|turf|area)
- var/datum/data/record/forensic/old = stored["\ref [A]"]
- var/datum/data/record/forensic/fresh = new(A)
-
- if(old)
- fresh.merge(old)
- . = 1
- stored["\ref [A]"] = fresh
-
-/obj/item/device/detective_scanner/verb/wipe()
- set name = "Wipe Forensic Data"
- set category = "Object"
- set src in view(1)
- if (alert("Are you sure you want to wipe all data from [src]?",,"Yes","No") == "Yes")
- stored = list()
- usr << "Forensic data erase complete."
diff --git a/code/modules/detectivework/scanning_console.dm b/code/modules/detectivework/scanning_console.dm
deleted file mode 100644
index 25658a06f0..0000000000
--- a/code/modules/detectivework/scanning_console.dm
+++ /dev/null
@@ -1,313 +0,0 @@
-/obj/machinery/computer/forensic_scanning
- name = "high-res forensic scanning computer"
- icon_keyboard = "security_key"
- icon_screen = "forensic"
-
- var/screen = "database"
- var/authenticated = 0
- req_access = list(access_forensics_lockers)
- var/scan_progress = -1
- var/obj/item/scanning
- var/datum/data/record/forensic/current
-
- var/list/filters = list()
- var/list/current_list = list()
-
- var/list/files = list()
-
-/obj/machinery/computer/forensic_scanning/proc/get_printable_data(var/datum/data/record/forensic/fresh)
- . += "[fresh.fields["name"]]
"
- . += "Scanned in [fresh.fields["area"]] at [worldtime2text(fresh.fields["time"])]
"
- var/list/prints = fresh.fields["fprints"]
- if(prints.len)
- . += "Fingerprints:
"
- var/incomplete = 0
- for(var/fullprint in prints)
- var/print = prints[fullprint]
- if(is_complete_print(print))
- . += "[print]
"
- else
- incomplete++
- if(incomplete)
- . += "[incomplete] incomplete fingerprints."
- else
- . += "
No fingerprints recorded.
"
-
- var/list/fibers = fresh.fields["fibers"]
- if(fibers.len)
- . += "Fibers:
"
- . += ""
- for(var/fiber in fibers)
- . += "- [fiber]
"
- . += "
"
- else
- . += "
No fibers recorded."
-
- var/list/bloods = fresh.fields["blood"]
- if(bloods.len)
- . += "Blood:
"
- . += ""
- for(var/blood in bloods)
- . += "- DNA: [blood] Type: [bloods[blood]]
"
- . += "
"
- else
- . += "
No blood recorded."
-
-/obj/machinery/computer/forensic_scanning/proc/add_record(var/datum/data/record/forensic/fresh)
- var/datum/data/record/forensic/old = files[fresh.uid]
- if(old)
- fresh.merge(old)
- fresh.fields["label"] = old.fields["label"]
- files[fresh.uid] = fresh
-
- //updating partial prints on other things
- var/list/fprints = fresh.fields["fprints"]
- if(fprints.len)
- for(var/id in files)
- var/datum/data/record/forensic/rec = files[id]
- if(rec.update_prints(fprints))
- files[id] = rec
-
-/obj/machinery/computer/forensic_scanning/proc/process_card(var/obj/item/weapon/f_card/card)
- if(card.fingerprints)
- usr << "\The [src] sucks in \the [card] and whirrs, scanning it."
- var/found = 0
- for(var/id in files)
- var/datum/data/record/forensic/rec = files[id]
- found = rec.update_prints(card.fingerprints)
- if (found)
- files[id] = rec
- if(found)
- usr << "Complete match found."
- else
- usr << "No match found."
- return 1
- else
- usr << "No fingerprints detected on [card]."
- return 0
-
-//Takes a list of forensic records, with key being reference to object, and updates internal database.
-/obj/machinery/computer/forensic_scanning/proc/sync_data(var/list/newdata)
- for(var/id in newdata)
- var/datum/data/record/forensic/fresh = newdata[id]
- add_record(fresh)
-
-/obj/machinery/computer/forensic_scanning/proc/get_filtered_set()
- .= list()
- for(var/id in files)
- var/datum/data/record/forensic/cur = files[id]
- var/add = 1
- if(filters["name"])
- add = 0
- for(var/filter in filters["name"])
- if(findtext(cur.fields["name"], filter))
- add = 1
- break
-
- if(filters["area"])
- add = 0
- for(var/filter in filters["area"])
- if(findtext(cur.fields["area"], filter))
- add = 1
- break
-
- if(filters["fprints"])
- add = 0
- var/list/prints = cur.fields["fprints"]
- for(var/pid in prints)
- var/print = prints[pid]
- if (is_complete_print(print))
- for(var/filter in filters["fprints"])
- if(findtext(print, filter))
- add = 1
- break
-
- if(filters["fibers"])
- add = 0
- for(var/fiber in cur.fields["fibers"])
- for(var/filter in filters["fibers"])
- if(findtext(fiber, filter))
- add = 1
- break
-
- if(filters["blood"])
- add = 0
- for(var/DNA in cur.fields["blood"])
- for(var/filter in filters["blood"])
- if(findtext(DNA, filter))
- add = 1
- break
-
- if(filters["label"])
- add = 0
- for(var/filter in filters["label"])
- if(cur.fields["label"] && findtext(cur.fields["label"], filter))
- add = 1
- break
- if (add)
- .+=cur
-
-/obj/machinery/computer/forensic_scanning/attack_hand(mob/user)
- if(..())
- return
- user.set_machine(src)
-
- var/dat
- if(!authenticated)
- dat += "{Log In}"
- else
- dat += "{Log Out}"
- dat += " | "
- dat += "Database"
- dat += " | "
- dat += "Record details"
- dat += " | "
- dat += "Scanning"
- dat +="
"
- switch(screen)
- if("database") //Database screen
- dat += "Search filters:
"
- var/list/filternames = list("Object"="name", "Area"="area", "Fingerprints"="fprints", "Fibers"="fibers", "DNA"="blood", "Label"="label")
- for(var/filter in filternames)
- var/fname = filternames[filter]
- dat += "
[filter]: [filters[fname] ? list2text(filters[fname], ",") : "All"]"
-
- current_list = get_filtered_set()
- dat+= "
"
- if(current_list.len < 1)
- dat += "No data matching your request found."
- else
- dat += ""
- dat += "| Object | Area | Fingerprints | Fibers | Blood | Label |
"
- for(var/datum/data/record/forensic/record in current_list)
- dat += "| [record.fields["name"]] | "
- dat += "[record.fields["area"]] | "
- for(var/criteria in list("fprints", "fibers", "blood"))
- var/list/data = record.fields[criteria]
- dat += "[data.len ? data.len : "None"] | "
- dat += "[record.fields["label"] ? record.fields["label"] : ""] | "
- dat += "Delete | "
- dat += "
"
- dat += "
"
- dat += "Print all listed
"
-
- if("details") //Details screen
- if(!current)
- dat += "
NO RECORD SELECTED"
- else
- dat += get_printable_data(current)
- dat += "
Labels: "
- dat += "[current.fields["label"] ? current.fields["label"] : "None"]
"
- dat += "Print record
"
-
- if("scan") //Scanning screen
- dat += "Object: [scanning ? scanning.name : "-----"]
"
- if (scanning)
- if (scan_progress > 0)
- dat += "Scan in progress."
- dat += " Cancel
"
- else
- dat += "Scan
"
- dat += "Insert fingerprint card here: -----"
-
- user << browse(dat,"window=fscanner")
- onclose(user,"fscanner")
-
-/obj/machinery/computer/forensic_scanning/Topic(href,href_list)
- if(..()) return 1
- switch(href_list["operation"])
- if("login")
- var/mob/M = usr
- if(istype(M,/mob/living/silicon) || allowed(M))
- authenticated = 1
- if("logout")
- authenticated = 0
- if("filter")
- var/filterstr = sanitize(input("Input the search criteria. Multiple values can be input, separated by a comma.", "Filter setting") as text|null)
- if(filterstr)
- filters[href_list["filter"]] = text2list(filterstr,",")
- else
- filters[href_list["filter"]] = null
- if("screen")
- screen = href_list["screen"]
- if("details")
- if(href_list["identifier"])
- screen = "details"
- current = files[href_list["identifier"]]
- else
- usr << "No record found."
- if("delete")
- if(href_list["identifier"])
- if(alert("Are you sure you want to delete this record?","Record deletion", "Yes", "No") == "Yes")
- files.Remove(href_list["identifier"])
- if(current && current.uid == href_list["identifier"])
- current = null
- if("label")
- if(current)
- var/label = sanitize(input(usr,"Input the label for this record. Multiple values can be input, separated by a comma.", "Labeling record", current.fields["label"]) as text|null)
- current.fields["label"] = label
- if("object")
- if(scanning)
- scanning.loc = get_turf(src)
- scan_progress = -1
- scanning = null
- else
- var/mob/M = usr
- var/obj/item/I = M.get_active_hand()
- if(I && istype(I))
- if(istype(I, /obj/item/weapon/evidencebag))
- scanning = I.contents[1]
- scanning.loc = src
- I.overlays.Cut()
- I.w_class = 1
- I.icon_state = "evidenceobj"
- else
- scanning = I
- M.drop_item()
- I.loc = src
- else
- usr << "Invalid object, rejected."
- if("scan")
- if(scanning)
- scan_progress = 10
- if("cancel")
- scan_progress = -1
- if("card")
- var/mob/M = usr
- var/obj/item/I = M.get_active_hand()
- if(istype(I, /obj/item/weapon/f_card))
- if(process_card(I))
- M.drop_item()
- qdel(I)
- else
- usr << "Invalid fingerprint card, rejected."
- if("print")
- if(current)
- var/obj/item/weapon/paper/P = new(loc)
- P.name = "\improper Forensics Data ([current.fields["name"]])"
- P.icon_state = "paper_words"
- P.info = "Forensics Database - [worldtime2text(world.time)]
"
- P.info += get_printable_data(current)
- if("printall")
- var/obj/item/weapon/paper/P = new(loc)
- P.name = "\improper Forensics Data"
- P.icon_state = "paper_words"
- P.info = "Forensics Database - [worldtime2text(world.time)]
"
- for(var/datum/data/record/forensic/cur in current_list)
- P.info += get_printable_data(cur)
-
- updateUsrDialog()
-
-/obj/machinery/computer/forensic_scanning/process()
- if (!..())
- return
- if(scanning)
- if(scan_progress > 0)
- scan_progress--
- updateUsrDialog()
- if(scan_progress == 0)
- scan_progress = -1
- ping("Scan complete.")
- var/datum/data/record/forensic/fresh = new(scanning)
- add_record(fresh)
- updateUsrDialog()
diff --git a/code/modules/detectivework/tools/crimekit.dm b/code/modules/detectivework/tools/crimekit.dm
new file mode 100644
index 0000000000..8b12203b21
--- /dev/null
+++ b/code/modules/detectivework/tools/crimekit.dm
@@ -0,0 +1,17 @@
+//crime scene kit
+/obj/item/weapon/storage/briefcase/crimekit
+ name = "crime scene kit"
+ desc = "A stainless steel-plated carrycase for all your forensic needs. Feels heavy."
+ icon = 'icons/obj/forensics.dmi'
+ icon_state = "case"
+ item_state = "case"
+ storage_slots = 14
+
+/obj/item/weapon/storage/briefcase/crimekit/New()
+ ..()
+ new /obj/item/weapon/storage/box/swabs(src)
+ new /obj/item/weapon/storage/box/fingerprints(src)
+ new /obj/item/weapon/reagent_containers/spray/luminol(src)
+ new /obj/item/device/uv_light(src)
+ new /obj/item/weapon/forensics/sample_kit(src)
+ new /obj/item/weapon/forensics/sample_kit/powder(src)
\ No newline at end of file
diff --git a/code/modules/detectivework/evidence.dm b/code/modules/detectivework/tools/evidencebag.dm
similarity index 65%
rename from code/modules/detectivework/evidence.dm
rename to code/modules/detectivework/tools/evidencebag.dm
index fa2feaca63..31c5b6a358 100644
--- a/code/modules/detectivework/evidence.dm
+++ b/code/modules/detectivework/tools/evidencebag.dm
@@ -96,56 +96,3 @@
/obj/item/weapon/evidencebag/examine(mob/user)
..(user)
if (stored_item) user.examinate(stored_item)
-
-/obj/item/weapon/storage/box/evidence
- name = "evidence bag box"
- desc = "A box claiming to contain evidence bags. Also holds fingerprint cards."
- icon = 'icons/obj/storage.dmi'
- icon_state = "box"
- storage_slots= 14
- max_w_class = 3
- max_storage_space = 38
- can_hold = list(/obj/item/weapon/f_card, /obj/item/weapon/evidencebag)
- use_to_pickup = 1
- New()
- new /obj/item/weapon/evidencebag(src)
- new /obj/item/weapon/evidencebag(src)
- new /obj/item/weapon/evidencebag(src)
- new /obj/item/weapon/evidencebag(src)
- new /obj/item/weapon/evidencebag(src)
- new /obj/item/weapon/evidencebag(src)
- ..()
- return
-
-/obj/item/weapon/f_card
- name = "finger print card"
- desc = "Used to take fingerprints."
- icon = 'icons/obj/card.dmi'
- icon_state = "fingerprint0"
- var/amount = 10.0
- item_state = "paper"
- throwforce = 1
- w_class = 1.0
- slot_flags = SLOT_EARS
- throw_speed = 3
- throw_range = 5
-
-/obj/item/weapon/f_card/add_fingerprint(mob/living/M as mob, ignoregloves = 0)
- if(..())
- var/mob/living/carbon/human/H = M
- var/full_print = md5(H.dna.uni_identity)
- fingerprints[full_print] = full_print
-
-/obj/item/weapon/f_card/examine(mob/user)
- ..()
- if(fingerprints.len)
- user << "Fingerprints on this card:"
- for(var/print in fingerprints)
- user << "\t[fingerprints[print]]"
-
-/obj/item/weapon/fcardholder
- name = "fingerprint card case"
- desc = "Apply finger print card."
- icon = 'icons/obj/items.dmi'
- icon_state = "fcardholder0"
- item_state = "clipboard"
diff --git a/code/modules/detectivework/tools/luminol.dm b/code/modules/detectivework/tools/luminol.dm
new file mode 100644
index 0000000000..ddf00a628a
--- /dev/null
+++ b/code/modules/detectivework/tools/luminol.dm
@@ -0,0 +1,13 @@
+/obj/item/weapon/reagent_containers/spray/luminol
+ name = "luminol bottle"
+ desc = "A bottle containing an odourless, colorless liquid."
+ icon = 'icons/obj/forensics.dmi'
+ icon_state = "luminol"
+ item_state = "cleaner"
+ amount_per_transfer_from_this = 10
+ possible_transfer_amounts = list(5,10)
+ volume = 250
+
+/obj/item/weapon/reagent_containers/spray/luminol/New()
+ ..()
+ reagents.add_reagent("luminol", 250)
\ No newline at end of file
diff --git a/code/modules/detectivework/footprints_and_rag.dm b/code/modules/detectivework/tools/rag.dm
similarity index 99%
rename from code/modules/detectivework/footprints_and_rag.dm
rename to code/modules/detectivework/tools/rag.dm
index e94611bf10..816a228a9c 100644
--- a/code/modules/detectivework/footprints_and_rag.dm
+++ b/code/modules/detectivework/tools/rag.dm
@@ -71,7 +71,7 @@
icon_state = "raglit"
else
icon_state = "rag"
-
+
var/obj/item/weapon/reagent_containers/food/drinks/bottle/B = loc
if(istype(B))
B.update_icon()
@@ -83,7 +83,7 @@
if(reagents.total_volume)
var/target_text = trans_dest? "\the [trans_dest]" : "\the [user.loc]"
user.visible_message("\The [user] begins to wring out [src] over [target_text].", "You begin to wring out [src] over [target_text].")
-
+
if(do_after(user, reagents.total_volume*5)) //50 for a fully soaked rag
if(trans_dest)
reagents.trans_to(trans_dest, reagents.total_volume)
@@ -114,29 +114,29 @@
if(user.zone_sel.selecting == "mouth")
user.do_attack_animation(src)
user.visible_message(
- "\The [user] smothers [target] with [src]!",
- "You smother [target] with [src]!",
+ "\The [user] smothers [target] with [src]!",
+ "You smother [target] with [src]!",
"You hear some struggling and muffled cries of surprise"
)
-
+
//it's inhaled, so... maybe CHEM_BLOOD doesn't make a whole lot of sense but it's the best we can do for now
reagents.trans_to_mob(target, amount_per_transfer_from_this, CHEM_BLOOD)
update_name()
else
wipe_down(target, user)
return
-
+
return ..()
-
+
/obj/item/weapon/reagent_containers/glass/rag/afterattack(atom/A as obj|turf|area, mob/user as mob, proximity)
- if(!proximity)
+ if(!proximity)
return
if(istype(A, /obj/structure/reagent_dispensers))
if(!reagents.get_free_space())
user << "\The [src] is already soaked."
return
-
+
if(A.reagents && A.reagents.trans_to_obj(src, reagents.maximum_volume))
user.visible_message("\The [user] soaks [src] using [A].", "You soak [src] using [A].")
update_name()
@@ -167,7 +167,7 @@
return
if(!can_ignite())
return
-
+
//also copied from matches
if(reagents.get_reagent_amount("phoron")) // the phoron explodes when exposed to fire
visible_message("\The [src] conflagrates violently!")
@@ -176,7 +176,7 @@
e.start()
qdel(src)
return
-
+
processing_objects += src
set_light(2, null, "#E38F46")
on_fire = 1
@@ -187,7 +187,7 @@
processing_objects -= src
set_light(0)
on_fire = 0
-
+
//rags sitting around with 1 second of burn time left is dumb.
//ensures players always have a few seconds of burn time left when they light their rag
if(burn_time <= 5)
@@ -209,7 +209,7 @@
var/turf/location = get_turf(src)
if(location)
location.hotspot_expose(700, 5)
-
+
if(burn_time <= 0)
processing_objects -= src
new /obj/effect/decal/cleanable/ash(location)
diff --git a/code/modules/detectivework/tools/sample_kits.dm b/code/modules/detectivework/tools/sample_kits.dm
new file mode 100644
index 0000000000..fa5c7312a8
--- /dev/null
+++ b/code/modules/detectivework/tools/sample_kits.dm
@@ -0,0 +1,158 @@
+/obj/item/weapon/sample
+ name = "forensic sample"
+ icon = 'icons/obj/forensics.dmi'
+ w_class = 1
+ var/list/evidence = list()
+
+/obj/item/weapon/sample/New(var/newloc, var/atom/supplied)
+ ..(newloc)
+ if(supplied)
+ copy_evidence(supplied)
+ name = "[initial(name)] (\the [supplied])"
+
+/obj/item/weapon/sample/print/New(var/newloc, var/atom/supplied)
+ ..(newloc, supplied)
+ if(evidence && evidence.len)
+ icon_state = "fingerprint1"
+
+/obj/item/weapon/sample/proc/copy_evidence(var/atom/supplied)
+ if(supplied.suit_fibers && supplied.suit_fibers.len)
+ evidence = supplied.suit_fibers.Copy()
+ supplied.suit_fibers.Cut()
+
+/obj/item/weapon/sample/proc/merge_evidence(var/obj/item/weapon/sample/supplied, var/mob/user)
+ if(!supplied.evidence || !supplied.evidence.len)
+ return 0
+ evidence |= supplied.evidence
+ name = "[initial(name)] (combined)"
+ user << "You transfer the contents of \the [supplied] into \the [src]."
+ return 1
+
+/obj/item/weapon/sample/print/merge_evidence(var/obj/item/weapon/sample/supplied, var/mob/user)
+ if(!supplied.evidence || !supplied.evidence.len)
+ return 0
+ for(var/print in supplied.evidence)
+ if(evidence[print])
+ evidence[print] = stringmerge(evidence[print],supplied.evidence[print])
+ else
+ evidence[print] = supplied.evidence[print]
+ name = "[initial(name)] (combined)"
+ user << "You overlay \the [src] and \the [supplied], combining the print records."
+ return 1
+
+/obj/item/weapon/sample/attackby(var/obj/O, var/mob/user)
+ if(O.type == src.type)
+ user.unEquip(O)
+ if(merge_evidence(O, user))
+ qdel(O)
+ return 1
+ return ..()
+
+/obj/item/weapon/sample/fibers
+ name = "fiber bag"
+ desc = "Used to hold fiber evidence for the detective."
+ icon_state = "fiberbag"
+
+/obj/item/weapon/sample/print
+ name = "fingerprint card"
+ desc = "Records a set of fingerprints."
+ icon = 'icons/obj/card.dmi'
+ icon_state = "fingerprint0"
+ item_state = "paper"
+
+/obj/item/weapon/sample/print/attack_self(var/mob/user)
+ if(evidence && evidence.len)
+ return
+ if(!ishuman(user))
+ return
+ var/mob/living/carbon/human/H = user
+ if(H.gloves)
+ user << "Take \the [H.gloves] off first."
+ return
+
+ user << "You firmly press your fingertips onto the card."
+ var/fullprint = H.get_full_print()
+ evidence[fullprint] = fullprint
+ name = "[initial(name)] (\the [H])"
+ icon_state = "fingerprint1"
+
+/obj/item/weapon/sample/print/attack(var/mob/living/M, var/mob/user)
+
+ if(!ishuman(M))
+ return ..()
+
+ if(evidence && evidence.len)
+ return 0
+
+ var/mob/living/carbon/human/H = M
+
+ if(H.gloves)
+ user << "\The [H] is wearing gloves."
+ return 1
+
+ if(user != H && H.a_intent != "help" && !H.lying)
+ user.visible_message("\The [user] tries to take prints from \the [H], but they move away.")
+ return 1
+
+ if(user.zone_sel.selecting == "r_hand" || user.zone_sel.selecting == "l_hand")
+ var/has_hand
+ var/obj/item/organ/external/O = H.organs_by_name["r_hand"]
+ if(istype(O) && !O.is_stump())
+ has_hand = 1
+ else
+ O = H.organs_by_name["l_hand"]
+ if(istype(O) && !O.is_stump())
+ has_hand = 1
+ if(!has_hand)
+ user << "They don't have any hands."
+ return 1
+ user.visible_message("[user] takes a copy of \the [H]'s fingerprints.")
+ var/fullprint = H.get_full_print()
+ evidence[fullprint] = fullprint
+ copy_evidence(src)
+ name = "[initial(name)] (\the [H])"
+ icon_state = "fingerprint1"
+ return 1
+ return 0
+
+/obj/item/weapon/sample/print/copy_evidence(var/atom/supplied)
+ if(supplied.fingerprints && supplied.fingerprints.len)
+ for(var/print in supplied.fingerprints)
+ evidence[print] = supplied.fingerprints[print]
+ supplied.fingerprints.Cut()
+
+/obj/item/weapon/forensics/sample_kit
+ name = "fiber collection kit"
+ desc = "A magnifying glass and tweezers. Used to lift suit fibers."
+ icon_state = "m_glass"
+ w_class = 2
+ var/evidence_type = "fiber"
+ var/evidence_path = /obj/item/weapon/sample/fibers
+
+/obj/item/weapon/forensics/sample_kit/proc/can_take_sample(var/mob/user, var/atom/supplied)
+ return (supplied.suit_fibers && supplied.suit_fibers.len)
+
+/obj/item/weapon/forensics/sample_kit/proc/take_sample(var/mob/user, var/atom/supplied)
+ var/obj/item/weapon/sample/S = new evidence_path(get_turf(user), supplied)
+ user << "You transfer [S.evidence.len] [S.evidence.len > 1 ? "[evidence_type]s" : "[evidence_type]"] to \the [S]."
+
+/obj/item/weapon/forensics/sample_kit/afterattack(var/atom/A, var/mob/user, var/proximity)
+ if(!proximity)
+ return
+ add_fingerprint(user)
+ if(can_take_sample(user, A))
+ take_sample(user,A)
+ return 1
+ else
+ user << "You are unable to locate any [evidence_type]s on \the [A]."
+ return ..()
+
+/obj/item/weapon/forensics/sample_kit/powder
+ name = "fingerprint powder"
+ desc = "A jar containing aluminum powder and a specialized brush."
+ icon_state = "dust"
+ evidence_type = "fingerprint"
+ evidence_path = /obj/item/weapon/sample/print
+
+/obj/item/weapon/forensics/sample_kit/powder/can_take_sample(var/mob/user, var/atom/supplied)
+ return (supplied.fingerprints && supplied.fingerprints.len)
diff --git a/code/modules/detectivework/tools/storage.dm b/code/modules/detectivework/tools/storage.dm
new file mode 100644
index 0000000000..1555124cc9
--- /dev/null
+++ b/code/modules/detectivework/tools/storage.dm
@@ -0,0 +1,44 @@
+/obj/item/weapon/storage/box/swabs
+ name = "box of swab kits"
+ desc = "Sterilized equipment within. Do not contaminate."
+ icon = 'icons/obj/forensics.dmi'
+ icon_state = "dnakit"
+ can_hold = list(/obj/item/weapon/forensics/swab)
+ storage_slots = 14
+
+/obj/item/weapon/storage/box/swabs/New()
+ ..()
+ for(var/i=0;i\The [H] is wearing a mask."
+ return
+
+ if(!H.dna || !H.dna.unique_enzymes)
+ user << "They don't seem to have DNA!"
+ return
+
+ if(user != H && H.a_intent != "help" && !H.lying)
+ user.visible_message("\The [user] tries to take a swab sample from \the [H], but they move away.")
+ return
+
+ if(user.zone_sel.selecting == "mouth")
+ if(!H.organs_by_name["head"])
+ user << "They don't have a head."
+ return
+ if(!H.check_has_mouth())
+ user << "They don't have a mouth."
+ return
+ user.visible_message("[user] swabs \the [H]'s mouth for a saliva sample.")
+ dna = list(H.dna.unique_enzymes)
+ sample_type = "DNA"
+
+ else if(user.zone_sel.selecting == "r_hand" || user.zone_sel.selecting == "l_hand")
+ var/has_hand
+ var/obj/item/organ/external/O = H.organs_by_name["r_hand"]
+ if(istype(O) && !O.is_stump())
+ has_hand = 1
+ else
+ O = H.organs_by_name["l_hand"]
+ if(istype(O) && !O.is_stump())
+ has_hand = 1
+ if(!has_hand)
+ user << "They don't have any hands."
+ return
+ user.visible_message("[user] swabs [H]'s palm for a sample.")
+ sample_type = "GSR"
+ gsr = H.gunshot_residue
+ else
+ return
+
+ if(sample_type)
+ set_used(sample_type, H)
+ return
+ return 1
+
+/obj/item/weapon/forensics/swab/afterattack(var/atom/A, var/mob/user, var/proximity)
+
+ if(!proximity || istype(A, /obj/item/weapon/forensics/slide) || istype(A, /obj/machinery/dnaforensics))
+ return
+
+ if(is_used())
+ user << "This swab has already been used."
+ return
+
+ add_fingerprint(user)
+
+ var/list/choices = list()
+ if(A.blood_DNA)
+ choices |= "Blood"
+ if(istype(A, /obj/item/clothing))
+ choices |= "Gunshot Residue"
+
+ var/choice
+ if(!choices.len)
+ user << "There is no evidence on \the [A]."
+ return
+ else if(choices.len == 1)
+ choice = choices[1]
+ else
+ choice = input("What kind of evidence are you looking for?","Evidence Collection") as null|anything in choices
+
+ if(!choice)
+ return
+
+ var/sample_type
+ if(choice == "Blood")
+ if(!A.blood_DNA || !A.blood_DNA.len) return
+ dna = A.blood_DNA.Copy()
+ sample_type = "blood"
+
+ else if(choice == "Gunshot Residue")
+ var/obj/item/clothing/B = A
+ if(!istype(B) || !B.gunshot_residue)
+ user << "There is no residue on \the [A]."
+ return
+ gsr = B.gunshot_residue
+ sample_type = "residue"
+
+ if(sample_type)
+ user.visible_message("\The [user] swabs \the [A] for a sample.", "You swab \the [A] for a sample.")
+ set_used(sample_type, A)
+
+/obj/item/weapon/forensics/swab/proc/set_used(var/sample_str, var/atom/source)
+ name = "[initial(name)] ([sample_str] - [source])"
+ desc = "[initial(desc)] The label on the vial reads 'Sample of [sample_str] from [source].'."
+ icon_state = "swab_used"
+ used = 1
diff --git a/code/modules/detectivework/tools/uvlight.dm b/code/modules/detectivework/tools/uvlight.dm
new file mode 100644
index 0000000000..b4e77c0ff2
--- /dev/null
+++ b/code/modules/detectivework/tools/uvlight.dm
@@ -0,0 +1,69 @@
+/obj/item/device/uv_light
+ name = "\improper UV light"
+ desc = "A small handheld black light."
+ icon_state = "uv_off"
+ slot_flags = SLOT_BELT
+ w_class = 2
+ item_state = "electronic"
+ matter = list(DEFAULT_WALL_MATERIAL = 150)
+ origin_tech = list(TECH_MAGNET = 1, TECH_ENGINEERING = 1)
+
+ var/list/scanned = list()
+ var/list/stored_alpha = list()
+ var/list/reset_objects = list()
+
+ var/range = 3
+ var/on = 0
+ var/step_alpha = 50
+
+/obj/item/device/uv_light/attack_self(var/mob/user)
+ on = !on
+ if(on)
+ set_light(range, 2, "#007fff")
+ processing_objects |= src
+ icon_state = "uv_on"
+ else
+ set_light(0)
+ clear_last_scan()
+ processing_objects -= src
+ icon_state = "uv_off"
+
+/obj/item/device/uv_light/proc/clear_last_scan()
+ if(scanned.len)
+ for(var/atom/O in scanned)
+ O.invisibility = scanned[O]
+ if(O.fluorescent == 2) O.fluorescent = 1
+ scanned.Cut()
+ if(stored_alpha.len)
+ for(var/atom/O in stored_alpha)
+ O.alpha = stored_alpha[O]
+ if(O.fluorescent == 2) O.fluorescent = 1
+ stored_alpha.Cut()
+ if(reset_objects.len)
+ for(var/obj/item/I in reset_objects)
+ I.overlays -= I.blood_overlay
+ if(I.fluorescent == 2) I.fluorescent = 1
+ reset_objects.Cut()
+
+/obj/item/device/uv_light/process()
+ clear_last_scan()
+ if(on)
+ step_alpha = round(255/range)
+ var/turf/origin = get_turf(src)
+ if(!origin)
+ return
+ for(var/turf/T in range(range, origin))
+ var/use_alpha = 255 - (step_alpha * get_dist(origin, T))
+ for(var/atom/A in T.contents)
+ if(A.fluorescent == 1)
+ A.fluorescent = 2 //To prevent light crosstalk.
+ if(A.invisibility)
+ scanned[A] = A.invisibility
+ A.invisibility = 0
+ stored_alpha[A] = A.alpha
+ A.alpha = use_alpha
+ if(istype(A, /obj/item))
+ var/obj/item/O = A
+ if(O.was_bloodied && !(O.blood_overlay in O.overlays))
+ O.overlays |= O.blood_overlay
+ reset_objects |= O
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm
index a12f25cfd4..fd6fd0f658 100644
--- a/code/modules/mob/living/carbon/carbon.dm
+++ b/code/modules/mob/living/carbon/carbon.dm
@@ -318,9 +318,7 @@
H.germ_level = 0
update_icons() //apply the now updated overlays to the mob
-
//Throwing stuff
-
/mob/proc/throw_item(atom/target)
return
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index 781c8049f9..2e3fc00722 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -1018,8 +1018,14 @@
verbs += /mob/living/carbon/human/proc/bloody_doodle
return 1 //we applied blood to the item
+/mob/living/carbon/human/proc/get_full_print()
+ if(!dna ||!dna.uni_identity)
+ return
+ return md5(dna.uni_identity)
+
/mob/living/carbon/human/clean_blood(var/clean_feet)
.=..()
+ gunshot_residue = null
if(clean_feet && !shoes && istype(feet_blood_DNA, /list) && feet_blood_DNA.len)
feet_blood_color = null
qdel(feet_blood_DNA)
diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm
index 0ff79e2aa2..bde26ceb60 100644
--- a/code/modules/mob/living/carbon/human/human_defines.dm
+++ b/code/modules/mob/living/carbon/human/human_defines.dm
@@ -81,6 +81,7 @@
var/hand_blood_color
var/list/flavor_texts = list()
+ var/gunshot_residue
mob_bump_flag = HUMAN
mob_push_flags = ~HEAVY
diff --git a/code/modules/organs/blood.dm b/code/modules/organs/blood.dm
index 4c756ace0c..ebc490601d 100644
--- a/code/modules/organs/blood.dm
+++ b/code/modules/organs/blood.dm
@@ -316,4 +316,6 @@ proc/blood_splatter(var/target,var/datum/reagent/blood/source,var/large)
if(source.data["virus2"])
B.virus2 = virus_copylist(source.data["virus2"])
+ B.fluorescent = 0
+ B.invisibility = 0
return B
diff --git a/code/modules/projectiles/ammunition.dm b/code/modules/projectiles/ammunition.dm
index bb23b9c3ee..219ebff141 100644
--- a/code/modules/projectiles/ammunition.dm
+++ b/code/modules/projectiles/ammunition.dm
@@ -7,6 +7,8 @@
slot_flags = SLOT_BELT | SLOT_EARS
throwforce = 1
w_class = 1
+
+ var/leaves_residue = 1
var/caliber = "" //Which kind of guns it can be loaded into
var/projectile_type //The bullet type to create when New() is called
var/obj/item/projectile/BB = null //The loaded bullet - make it so that the projectiles are created only when needed?
diff --git a/code/modules/projectiles/guns/projectile.dm b/code/modules/projectiles/guns/projectile.dm
index 2f48fcaf13..d032cb3848 100644
--- a/code/modules/projectiles/guns/projectile.dm
+++ b/code/modules/projectiles/guns/projectile.dm
@@ -68,6 +68,16 @@
/obj/item/weapon/gun/projectile/proc/process_chambered()
if (!chambered) return
+ // Aurora forensics port, gunpowder residue.
+ if(chambered.leaves_residue)
+ var/mob/living/carbon/human/H = loc
+ if(istype(H))
+ if(!H.gloves)
+ H.gunshot_residue = chambered.caliber
+ else
+ var/obj/item/clothing/G = H.gloves
+ G.gunshot_residue = chambered.caliber
+
switch(handle_casings)
if(EJECT_CASINGS) //eject casing onto ground.
chambered.loc = get_turf(src)
diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm
index 0df72664fd..9330c8cdf5 100644
--- a/code/modules/reagents/Chemistry-Reagents.dm
+++ b/code/modules/reagents/Chemistry-Reagents.dm
@@ -115,10 +115,3 @@
/datum/reagent/proc/reaction_mob(var/mob/target)
touch_mob(target)
-
-/datum/reagent/woodpulp
- name = "Wood Pulp"
- id = "woodpulp"
- description = "A mass of wood fibers."
- reagent_state = LIQUID
- color = "#B97A57"
diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm
index b2cd248b25..18e31ddc02 100644
--- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm
@@ -375,19 +375,27 @@
/datum/reagent/sterilizine
name = "Sterilizine"
id = "sterilizine"
- description = "Sterilizes wounds in preparation for surgery."
+ description = "Sterilizes wounds in preparation for surgery and thoroughly removes blood."
reagent_state = LIQUID
color = "#C8A5DC"
touch_met = 5
/datum/reagent/sterilizine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed)
M.germ_level -= min(removed*20, M.germ_level)
+ for(var/obj/item/I in M.contents)
+ I.was_bloodied = null
+ M.was_bloodied = null
/datum/reagent/sterilizine/touch_obj(var/obj/O)
O.germ_level -= min(volume*20, O.germ_level)
+ O.was_bloodied = null
/datum/reagent/sterilizine/touch_turf(var/turf/T)
T.germ_level -= min(volume*20, T.germ_level)
+ for(var/obj/item/I in T.contents)
+ I.was_bloodied = null
+ for(var/obj/effect/decal/cleanable/blood/B in T)
+ qdel(B)
/datum/reagent/leporazine
name = "Leporazine"
diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm
index 63cfb46235..aecbf766b9 100644
--- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm
@@ -278,10 +278,7 @@
touch_met = 50
/datum/reagent/space_cleaner/touch_obj(var/obj/O)
- if(istype(O, /obj/effect/decal/cleanable))
- qdel(O)
- else
- O.clean_blood()
+ O.clean_blood()
/datum/reagent/space_cleaner/touch_turf(var/turf/T)
if(volume >= 1)
@@ -382,3 +379,23 @@
id = "glue"
description = "An extremely powerful bonding agent."
color = "#FFFFCC"
+
+/datum/reagent/woodpulp
+ name = "Wood Pulp"
+ id = "woodpulp"
+ description = "A mass of wood fibers."
+ reagent_state = LIQUID
+ color = "#B97A57"
+
+/datum/reagent/luminol
+ name = "Luminol"
+ id = "luminol"
+ description = "A compound that interacts with blood on the molecular level."
+ reagent_state = LIQUID
+ color = "#F2F3F4"
+
+/datum/reagent/luminol/touch_obj(var/obj/O)
+ O.reveal_blood()
+
+/datum/reagent/luminol/touch_mob(var/mob/living/L)
+ L.reveal_blood()
diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm
index f5c44ecaa6..7c19f42565 100644
--- a/code/modules/reagents/Chemistry-Recipes.dm
+++ b/code/modules/reagents/Chemistry-Recipes.dm
@@ -2051,30 +2051,10 @@
required_reagents = list("space_up" = 1, "bluecuracao" = 1, "melonliquor" = 1)
result_amount = 3
-/* Removed xenoarcheology stuff
-datum
- chemical_reaction
- lithiumsodiumtungstate //LiNa2WO4, not the easiest chem to mix
- name = "Lithium Sodium Tungstate"
- id = "lithiumsodiumtungstate"
- result = "lithiumsodiumtungstate"
- required_reagents = list("lithium" = 1, "sodium" = 2, "tungsten" = 1, "oxygen" = 4)
- result_amount = 8
+/datum/chemical_reaction/luminol
+ name = "Luminol"
+ id = "luminol"
+ result = "luminol"
+ required_reagents = list("hydrogen" = 2, "carbon" = 2, "ammonia" = 2)
+ result_amount = 6
- density_separated_liquid
- name = "Density separated sample"
- id = "density_separated_sample"
- result = "density_separated_sample"
- secondary_results = list("chemical_waste" = 1)
- required_reagents = list("ground_rock" = 1, "lithiumsodiumtungstate" = 2)
- result_amount = 2
-
- analysis_liquid
- name = "Analysis sample"
- id = "analysis_sample"
- result = "analysis_sample"
- secondary_results = list("chemical_waste" = 1)
- required_reagents = list("density_separated_sample" = 5)
- result_amount = 4
- requires_heating = 1
-*/
diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm
index 15059ee327..efc8d9c2b8 100644
--- a/code/modules/reagents/reagent_containers/spray.dm
+++ b/code/modules/reagents/reagent_containers/spray.dm
@@ -55,7 +55,7 @@
/obj/item/weapon/reagent_containers/spray/proc/Spray_at(atom/A as mob|obj, mob/user as mob, proximity)
if (A.density && proximity)
- A.visible_message("[usr] sprays [A] with [src].")
+ A.visible_message("[usr] sprays [A] with [src].")
reagents.splash(A, amount_per_transfer_from_this)
else
spawn(0)
@@ -107,6 +107,14 @@
..()
reagents.add_reagent("cleaner", volume)
+/obj/item/weapon/reagent_containers/spray/sterilizine
+ name = "sterilizine"
+ desc = "Great for hiding incriminating bloodstains and sterilizing scalpels."
+
+/obj/item/weapon/reagent_containers/spray/sterilizine/New()
+ ..()
+ reagents.add_reagent("sterilizine", volume)
+
/obj/item/weapon/reagent_containers/spray/pepper
name = "pepperspray"
desc = "Manufactured by UhangInc, used to blind and down an opponent quickly."
@@ -161,12 +169,12 @@
volume = 600
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_ENGINEERING = 3)
-/obj/item/weapon/reagent_containers/spray/chemsprayer/Spray_at(atom/A as mob|obj)
+/obj/item/weapon/reagent_containers/spray/chemsprayer/Spray_at(atom/A as mob|obj)
var/direction = get_dir(src, A)
var/turf/T = get_turf(A)
var/turf/T1 = get_step(T,turn(direction, 90))
- var/turf/T2 = get_step(T,turn(direction, -90))
- var/list/the_targets = list(T, T1, T2)
+ var/turf/T2 = get_step(T,turn(direction, -90))
+ var/list/the_targets = list(T, T1, T2)
for(var/a = 1 to 3)
spawn(0)
diff --git a/html/changelogs/Zuhayr-forensics.yml b/html/changelogs/Zuhayr-forensics.yml
new file mode 100644
index 0000000000..83705dc362
--- /dev/null
+++ b/html/changelogs/Zuhayr-forensics.yml
@@ -0,0 +1,5 @@
+author: Zuhayr
+delete-after: True
+changes:
+ - rscdel: "Removed the detective scanner and associated machinery."
+ - rscadd: "Added a microscope, machine forensic scanner, etc. from Aurora forensics."
\ No newline at end of file
diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi
index c8d94e2dcb..dfade93ae9 100644
Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ
diff --git a/icons/obj/forensics.dmi b/icons/obj/forensics.dmi
new file mode 100644
index 0000000000..63225c3012
Binary files /dev/null and b/icons/obj/forensics.dmi differ
diff --git a/maps/exodus-1.dmm b/maps/exodus-1.dmm
index 08114ec930..035564fc82 100644
--- a/maps/exodus-1.dmm
+++ b/maps/exodus-1.dmm
@@ -209,7 +209,7 @@
"aea" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/main)
"aeb" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/security/main)
"aec" = (/obj/structure/closet/crate/secure{name = "FOR DISPOSAL"; req_access = list(58)},/obj/item/clothing/glasses/sunglasses/blindfold,/obj/item/clothing/mask/balaclava,/obj/item/clothing/mask/muzzle,/obj/item/weapon/reagent_containers/syringe/ld50_syringe/choral,/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/security_port)
-"aed" = (/obj/structure/table/rack,/obj/item/weapon/secbot_assembly,/turf/simulated/floor/plating,/area/maintenance/security_port)
+"aed" = (/obj/structure/closet/crate,/obj/item/clothing/shoes/combat,/obj/item/weapon/tank/air,/obj/item/weapon/tank/air,/obj/item/weapon/tank/air,/obj/item/clothing/mask/gas,/turf/simulated/floor/plating,/area/maintenance/security_port)
"aee" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'INTERNALS REQUIRED'."; name = "INTERNALS REQUIRED"; pixel_x = 32; pixel_y = 32},/turf/simulated/floor/plating,/area/maintenance/security_starboard)
"aef" = (/obj/structure/table/rack,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/item/clothing/suit/armor/laserproof{pixel_x = 2; pixel_y = 2},/obj/item/clothing/suit/armor/laserproof{pixel_x = -2; pixel_y = -2},/obj/machinery/door/window/brigdoor/northleft{name = "Weapons locker"; req_access = list(3)},/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/security/armoury)
"aeg" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/security_port)
@@ -251,10 +251,10 @@
"aeQ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/security_starboard)
"aeR" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/security_starboard)
"aeS" = (/turf/simulated/wall/r_wall,/area/maintenance/security_starboard)
-"aeT" = (/obj/structure/closet/crate,/obj/item/clothing/shoes/combat,/obj/item/weapon/tank/air,/obj/item/weapon/tank/air,/obj/item/weapon/tank/air,/obj/item/clothing/mask/gas,/turf/simulated/floor/plating,/area/maintenance/security_port)
+"aeT" = (/obj/structure/table/rack,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor/plating,/area/maintenance/security_port)
"aeU" = (/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/security_port)
"aeV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/security_port)
-"aeW" = (/obj/structure/table/rack,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor/plating,/area/maintenance/security_port)
+"aeW" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/security_port)
"aeX" = (/obj/structure/closet/secure_closet/security,/obj/item/device/flashlight/flare,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/tiled,/area/security/main)
"aeY" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/tiled,/area/security/main)
"aeZ" = (/obj/structure/disposalpipe/segment,/obj/structure/closet/secure_closet/security,/obj/item/device/flashlight/flare,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/tiled,/area/security/main)
@@ -274,8 +274,8 @@
"afn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/corner/red{dir = 10},/turf/simulated/floor/tiled,/area/security/main)
"afo" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/camera/network/security{c_tag = "Security - Equipment North"; dir = 4},/obj/item/device/radio/intercom{dir = 8; pixel_x = -22},/turf/simulated/floor/tiled,/area/security/main)
"afp" = (/obj/effect/floor_decal/corner/red{dir = 10},/turf/simulated/floor/tiled,/area/security/main)
-"afq" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/security_port)
-"afr" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plating,/area/maintenance/security_port)
+"afq" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plating,/area/maintenance/security_port)
+"afr" = (/obj/structure/table/rack,/obj/item/weapon/secbot_assembly,/obj/effect/decal/cleanable/dirt,/obj/item/weapon/reagent_containers/spray/sterilizine,/turf/simulated/floor/plating,/area/maintenance/security_port)
"afs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/plating,/area/maintenance/security_starboard)
"aft" = (/obj/structure/disposalpipe/sortjunction/flipped{dir = 1; name = "Security"; sortType = "Security"},/obj/effect/floor_decal/corner/red{dir = 10},/turf/simulated/floor/tiled,/area/security/main)
"afu" = (/obj/structure/table/standard,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/storage/box/donut,/obj/effect/floor_decal/corner/red,/turf/simulated/floor/tiled,/area/security/main)
@@ -815,7 +815,7 @@
"apI" = (/turf/simulated/floor/tiled/dark,/area/lawoffice)
"apJ" = (/obj/machinery/newscaster{pixel_x = 30},/obj/machinery/papershredder,/turf/simulated/floor/tiled/dark,/area/lawoffice)
"apK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/evahallway)
-"apL" = (/obj/machinery/computer/forensic_scanning,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"apL" = (/obj/structure/table/steel_reinforced,/obj/machinery/microscope,/obj/item/weapon/storage/box/slides,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
"apM" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/plating,/area/security/brig)
"apN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
"apO" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
@@ -864,7 +864,7 @@
"aqF" = (/obj/structure/urinal{pixel_y = 32},/turf/simulated/floor/tiled/freezer,/area/security/prison)
"aqG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
"aqH" = (/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "lawyer_blast"; name = "Privacy Shutters"; opacity = 0},/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/window/eastright{base_state = "left"; dir = 4; icon_state = "left"; name = "Internal Affairs Desk"; req_access = list(38)},/turf/simulated/floor,/area/lawoffice)
-"aqI" = (/obj/structure/bed/chair/office/light,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"aqI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
"aqJ" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "dorm_pump"},/obj/machinery/light/small{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/plating,/area/maintenance/dormitory)
"aqK" = (/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "dorm_sensor"; pixel_x = 25; pixel_y = -8},/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/plating,/area/maintenance/dormitory)
"aqL" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "arrivals_inner"; locked = 1; name = "Engineering External Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/arrivals)
@@ -894,12 +894,12 @@
"arj" = (/obj/structure/bed/chair/office/dark,/obj/effect/landmark/start{name = "Internal Affairs Agent"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled/dark,/area/lawoffice)
"ark" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/evahallway)
"arl" = (/obj/machinery/computer/secure_data,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"arm" = (/obj/structure/closet{name = "Evidence Closet"},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/evidence,/obj/item/device/radio/intercom/department/security{pixel_y = -22},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"arn" = (/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom{dir = 2; pixel_y = -22},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"aro" = (/obj/machinery/newscaster{pixel_y = -32},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/obj/structure/table/glass,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"arp" = (/obj/machinery/light,/obj/item/device/mass_spectrometer,/obj/item/device/reagent_scanner,/obj/machinery/camera/network/security{c_tag = "Security - Forensic Office Aft"; dir = 1},/obj/structure/table/glass,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"arm" = (/obj/machinery/dnaforensics,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"arn" = (/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom/department/security{pixel_y = -22},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"aro" = (/obj/machinery/newscaster{pixel_y = -32},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/obj/structure/table/glass,/obj/item/weapon/reagent_containers/spray/sterilizine,/obj/item/weapon/pen/blue{pixel_x = 4; pixel_y = 4},/obj/item/weapon/folder/blue,/obj/item/weapon/folder/red,/obj/item/weapon/forensics/sample_kit,/obj/item/weapon/reagent_containers/spray/sterilizine,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"arp" = (/obj/machinery/light,/obj/item/device/mass_spectrometer,/obj/item/device/reagent_scanner,/obj/machinery/camera/network/security{c_tag = "Security - Forensic Office Aft"; dir = 1},/obj/structure/table/glass,/obj/item/weapon/forensics/sample_kit/powder,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
"arq" = (/obj/machinery/computer/security,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"arr" = (/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/weapon/folder/blue,/obj/item/weapon/pen/blue{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red,/obj/structure/table/glass,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"arr" = (/obj/structure/closet{name = "Evidence Closet"},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/evidence,/obj/item/weapon/storage/box/swabs,/obj/item/weapon/storage/box/slides,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
"ars" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "dorm_pump"},/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor/plating,/area/maintenance/dormitory)
"art" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1379; id_tag = "dorm_airlock"; name = "Dormitory Airlock Console"; pixel_x = 25; pixel_y = 0; req_one_access = list(1,5,11,18,24); tag_airpump = "dorm_pump"; tag_chamber_sensor = "dorm_sensor"; tag_exterior_door = "dorm_outer"; tag_interior_door = "dorm_inner"},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/plating,/area/maintenance/dormitory)
"aru" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/corner/red{dir = 9},/turf/simulated/floor/tiled,/area/security/brig)
@@ -1004,7 +1004,7 @@
"atp" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 4},/area/shuttle/escape_pod2/station)
"atq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/arrivals)
"atr" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 2},/area/shuttle/escape_pod2/station)
-"ats" = (/obj/structure/table/rack,/obj/item/weapon/flame/lighter/random,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/turf/simulated/floor/plating,/area/maintenance/evahallway)
+"ats" = (/obj/structure/table/rack,/obj/item/weapon/flame/lighter/random,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/obj/item/weapon/reagent_containers/spray/sterilizine,/turf/simulated/floor/plating,/area/maintenance/evahallway)
"att" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/evahallway)
"atu" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/floor,/area/shuttle/escape_pod2/station)
"atv" = (/obj/effect/floor_decal/industrial/warning/cee{tag = "icon-warningcee (NORTH)"; icon_state = "warningcee"; dir = 1},/turf/simulated/floor/plating,/area/maintenance/arrivals)
@@ -1407,7 +1407,7 @@
"aBc" = (/obj/structure/closet/wardrobe/pjs,/obj/effect/floor_decal/corner/grey/full{dir = 4},/turf/simulated/floor/tiled/dark,/area/crew_quarters/sleep)
"aBd" = (/obj/machinery/door/airlock{name = "Unisex Showers"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet)
"aBe" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"; name = "Clothing Storage"},/obj/effect/floor_decal/corner/grey{dir = 10},/turf/simulated/floor/tiled,/area/crew_quarters/fitness)
-"aBf" = (/obj/structure/table/reinforced,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/flamethrower/full,/turf/simulated/floor/lino,/area/crew_quarters/bar)
+"aBf" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/button/remote/blast_door{id = "bar"; name = "Bar Shutters"; pixel_y = 25; req_access = list(25)},/turf/simulated/floor/lino,/area/crew_quarters/bar)
"aBg" = (/obj/machinery/light,/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"; name = "Clothing Storage"},/obj/effect/floor_decal/corner/grey/full,/turf/simulated/floor/tiled,/area/crew_quarters/fitness)
"aBh" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/flora/pottedplant{tag = "icon-plant-06"; icon_state = "plant-06"},/obj/effect/floor_decal/corner/grey{dir = 10},/turf/simulated/floor/tiled,/area/crew_quarters/fitness)
"aBi" = (/obj/machinery/light_switch{pixel_y = -25},/obj/structure/closet/athletic_mixed,/obj/effect/floor_decal/corner/grey{dir = 10},/turf/simulated/floor/tiled,/area/crew_quarters/fitness)
@@ -1433,12 +1433,12 @@
"aBC" = (/obj/machinery/camera/network/exodus{c_tag = "Arrivals North"; dir = 1},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"aBD" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aBE" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/corner/white{dir = 4},/obj/effect/floor_decal/corner/blue,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
-"aBF" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/button/remote/blast_door{id = "bar"; name = "Bar Shutters"; pixel_y = 25; req_access = list(25)},/turf/simulated/floor/lino,/area/crew_quarters/bar)
+"aBF" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "nuke_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -28; pixel_y = 26; req_one_access = list(13)},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aBG" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/entry/fore)
"aBH" = (/obj/item/weapon/stool,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plating,/area/maintenance/auxsolarport)
"aBI" = (/turf/simulated/wall/r_wall,/area/hallway/secondary/entry/port)
"aBJ" = (/obj/machinery/gateway{dir = 8},/turf/simulated/floor/tiled/dark,/area/gateway)
-"aBK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/flamethrower/full,/turf/simulated/floor/lino,/area/crew_quarters/bar)
+"aBK" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "nuke_shuttle_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port)
"aBL" = (/turf/simulated/wall,/area/hallway/secondary/entry/port)
"aBM" = (/turf/simulated/floor/tiled/dark,/area/gateway)
"aBN" = (/obj/machinery/gateway{dir = 4},/turf/simulated/floor/tiled/dark,/area/gateway)
@@ -1447,27 +1447,27 @@
"aBQ" = (/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva)
"aBR" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green,/turf/simulated/floor/plating,/area/ai_monitored/storage/eva)
"aBS" = (/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport)
-"aBT" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "nuke_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -28; pixel_y = 26; req_one_access = list(13)},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aBT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aBU" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/evahallway)
-"aBV" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "nuke_shuttle_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port)
-"aBW" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
-"aBX" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aBV" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aBW" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aBX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aBY" = (/turf/simulated/wall/r_wall,/area/security/nuke_storage)
"aBZ" = (/obj/machinery/requests_console{department = "EVA"; pixel_x = -32; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/device/multitool,/obj/machinery/camera/network/security{c_tag = "EVA Northwest"; dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva)
"aCa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva)
"aCb" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva)
"aCc" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/table/reinforced,/obj/machinery/camera/network/security{c_tag = "EVA Northeast"; dir = 8},/obj/item/stack/material/glass/reinforced{amount = 50},/obj/item/stack/rods{amount = 50},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva)
"aCd" = (/obj/machinery/light/small{dir = 4},/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/evahallway)
-"aCe" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aCe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aCf" = (/obj/machinery/suit_cycler/security,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva)
"aCg" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/floor_decal/corner/blue,/turf/simulated/floor/tiled,/area/hallway/primary/fore)
"aCh" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/mime,/obj/item/device/radio/intercom{dir = 8; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/curtain/open/bed,/turf/simulated/floor/wood,/area/crew_quarters/sleep/bedrooms)
-"aCi" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aCi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aCj" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/fitness)
"aCk" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/mime,/obj/machinery/light/small{dir = 4},/obj/machinery/light_switch{pixel_x = 22; pixel_y = 10},/obj/structure/curtain/open/bed,/turf/simulated/floor/wood,/area/crew_quarters/sleep/bedrooms)
"aCl" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet)
"aCm" = (/turf/simulated/wall/r_wall,/area/maintenance/substation/civilian_east)
-"aCn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aCn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aCo" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; pixel_x = 5; pixel_y = 0},/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet)
"aCp" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/machinery/camera/network/civilian_east{c_tag = "Dormitory Holodeck South"; dir = 1; pixel_y = 6},/turf/simulated/floor/plating,/area/crew_quarters/fitness)
"aCq" = (/obj/machinery/shower{dir = 8; icon_state = "shower"; pixel_x = -5; pixel_y = 0},/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet)
@@ -1522,7 +1522,7 @@
"aDn" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aDo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/exodus{c_tag = "Arrivals East"; dir = 8},/obj/effect/floor_decal/corner/white{dir = 4},/obj/effect/floor_decal/corner/blue,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aDp" = (/turf/simulated/wall,/area/crew_quarters/bar)
-"aDq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aDq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aDr" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/corner/red{dir = 5},/turf/simulated/floor/tiled/dark,/area/security/checkpoint2)
"aDs" = (/turf/simulated/wall,/area/maintenance/bar)
"aDt" = (/obj/structure/closet/secure_closet/security,/obj/machinery/light{dir = 1},/obj/item/device/flashlight/flare,/obj/effect/floor_decal/corner/red/full{dir = 8},/turf/simulated/floor/tiled/dark,/area/security/checkpoint2)
@@ -1532,7 +1532,7 @@
"aDx" = (/obj/machinery/computer/security,/obj/structure/reagent_dispensers/peppertank{pixel_x = 0; pixel_y = 30},/obj/effect/floor_decal/corner/red{dir = 5},/turf/simulated/floor/tiled/dark,/area/security/checkpoint2)
"aDy" = (/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/crew_quarters/fitness)
"aDz" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/corner/red/full{dir = 1},/turf/simulated/floor/tiled/dark,/area/security/checkpoint2)
-"aDA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aDA" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aDB" = (/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard)
"aDC" = (/turf/simulated/wall,/area/maintenance/library)
"aDD" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/library)
@@ -1583,7 +1583,7 @@
"aEw" = (/obj/machinery/door/airlock{name = "Unisex Showers"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet)
"aEx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet)
"aEy" = (/obj/machinery/light/small,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet)
-"aEz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aEz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aEA" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/ai_monitored/storage/eva)
"aEB" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet)
"aEC" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/plating,/area/maintenance/library)
@@ -1605,10 +1605,10 @@
"aES" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/dark,/area/security/checkpoint2)
"aET" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j1s"; sortType = "Bar"; name = "Bar"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/bar)
"aEU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/effect/floor_decal/corner/red{dir = 6},/turf/simulated/floor/tiled/dark,/area/security/checkpoint2)
-"aEV" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aEV" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aEW" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/library)
"aEX" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard)
-"aEY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aEY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aEZ" = (/turf/simulated/floor/plating,/area/maintenance/library)
"aFa" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/bar)
"aFb" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/bar)
@@ -1618,8 +1618,8 @@
"aFf" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/plating,/area/maintenance/library)
"aFg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/library)
"aFh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/effect/floor_decal/industrial/warning,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/maintenance/arrivals)
-"aFi" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
-"aFj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
+"aFi" = (/obj/item/weapon/material/shard{icon_state = "small"},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aFj" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/locker)
"aFk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary)
"aFl" = (/turf/simulated/shuttle/floor,/area/shuttle/arrival/station)
"aFm" = (/obj/machinery/computer/arcade,/turf/simulated/shuttle/floor,/area/shuttle/arrival/station)
@@ -1630,7 +1630,7 @@
"aFr" = (/obj/item/weapon/stool,/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/tiled,/area/storage/primary)
"aFs" = (/obj/effect/landmark/start{name = "Assistant"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/storage/primary)
"aFt" = (/obj/structure/closet/crate,/obj/item/stack/material/gold,/obj/item/weapon/storage/belt/champion,/obj/machinery/camera/network/command{c_tag = "Vault"; dir = 4},/turf/simulated/floor/tiled/dark,/area/security/nuke_storage)
-"aFu" = (/obj/item/weapon/material/shard{icon_state = "small"},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aFu" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "escape_dock_north_airlock"; name = "interior access button"; pixel_x = 26; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
"aFv" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/dark,/area/security/nuke_storage)
"aFw" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/library)
"aFx" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/arrivals)
@@ -1672,7 +1672,7 @@
"aGh" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/effect/floor_decal/corner/red{dir = 10},/turf/simulated/floor/tiled/dark,/area/security/checkpoint2)
"aGi" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/entry/port)
"aGj" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/obj/effect/floor_decal/corner/red{dir = 10},/turf/simulated/floor/tiled/dark,/area/security/checkpoint2)
-"aGk" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aGk" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_north_inner"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_north_mech"; pixel_y = -19},/turf/simulated/floor/plating,/area/hallway/secondary/exit)
"aGl" = (/obj/item/weapon/crowbar,/obj/item/device/flash,/obj/effect/floor_decal/corner/red/full{dir = 4},/obj/item/device/radio/intercom{dir = 2; pixel_y = -22},/turf/simulated/floor/tiled/dark,/area/security/checkpoint2)
"aGm" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table/reinforced,/obj/effect/floor_decal/corner/red{dir = 10},/turf/simulated/floor/tiled/dark,/area/security/checkpoint2)
"aGn" = (/obj/structure/sign/poster{pixel_x = 0; pixel_y = 0},/turf/simulated/wall,/area/crew_quarters/toilet)
@@ -1684,15 +1684,15 @@
"aGt" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/bar)
"aGu" = (/obj/structure/table/standard,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor/tiled,/area/storage/primary)
"aGv" = (/mob/living/simple_animal/mouse/brown/Tom,/turf/simulated/floor/tiled/dark,/area/security/nuke_storage)
-"aGw" = (/obj/item/weapon/flamethrower/full,/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
+"aGw" = (/obj/structure/closet/crate,/obj/item/clothing/mask/gas,/obj/item/device/flashlight,/obj/item/device/flashlight,/turf/simulated/floor/plating,/area/maintenance/locker)
"aGx" = (/obj/structure/closet/wardrobe/grey,/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station)
"aGy" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/simulated/wall/r_wall,/area/maintenance/auxsolarstarboard)
"aGz" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/dark,/area/security/nuke_storage)
-"aGA" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "escape_dock_north_airlock"; name = "interior access button"; pixel_x = 26; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
-"aGB" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_north_inner"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_north_mech"; pixel_y = -19},/turf/simulated/floor/plating,/area/hallway/secondary/exit)
+"aGA" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/locker)
+"aGB" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "centcom_shuttle_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
"aGC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/library)
"aGD" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/dark,/area/security/nuke_storage)
-"aGE" = (/obj/structure/closet/crate,/obj/item/clothing/mask/gas,/obj/item/device/flashlight,/obj/item/device/flashlight,/turf/simulated/floor/plating,/area/maintenance/locker)
+"aGE" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/quartermaster/storage)
"aGF" = (/turf/simulated/wall,/area/chapel/office)
"aGG" = (/turf/simulated/wall,/area/chapel/main)
"aGH" = (/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station)
@@ -1709,7 +1709,7 @@
"aGS" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/closet/wardrobe/black,/turf/simulated/floor/tiled/dark,/area/gateway)
"aGT" = (/obj/machinery/suit_cycler/medical,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva)
"aGU" = (/obj/structure/table/reinforced,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva)
-"aGV" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/locker)
+"aGV" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/bluegrid,/area/turret_protected/ai)
"aGW" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva)
"aGX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/entry/starboard)
"aGY" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva)
@@ -1718,7 +1718,7 @@
"aHb" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/effect/floor_decal/corner/blue,/turf/simulated/floor/tiled,/area/hallway/primary/fore)
"aHc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/airlock/engineering{name = "Civilian East Substation"; req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/substation/civilian_east)
"aHd" = (/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/storage/primary)
-"aHe" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "centcom_shuttle_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
+"aHe" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "escape_dock_south_airlock"; name = "interior access button"; pixel_x = 26; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
"aHf" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/substation/civilian_east)
"aHg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/substation/civilian_east)
"aHh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/engineering{name = "Civilian East Substation"; req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/substation/civilian_east)
@@ -1734,7 +1734,7 @@
"aHr" = (/obj/machinery/light/small{dir = 8},/obj/machinery/recharge_station,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet)
"aHs" = (/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green,/turf/simulated/floor/plating,/area/ai_monitored/storage/eva)
"aHt" = (/obj/structure/window/reinforced,/obj/structure/closet/secure_closet/bar{req_access = list(25)},/obj/item/device/radio/intercom{dir = 4; pixel_x = 22},/turf/simulated/floor/wood,/area/crew_quarters/bar)
-"aHu" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/quartermaster/storage)
+"aHu" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_south_inner"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_south_mech"; pixel_y = 19},/turf/simulated/floor/plating,/area/hallway/secondary/exit)
"aHv" = (/obj/structure/closet/wardrobe/chaplain_black,/obj/item/device/radio/intercom{dir = 1; pixel_y = 22},/turf/simulated/floor/lino,/area/chapel/office)
"aHw" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera/network/civilian_east{c_tag = "Chapel Office"},/turf/simulated/floor/lino,/area/chapel/office)
"aHx" = (/obj/machinery/light/small{dir = 1},/obj/machinery/requests_console{department = "Chapel"; departmentType = 2; pixel_y = 30},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/lino,/area/chapel/office)
@@ -1752,20 +1752,20 @@
"aHJ" = (/obj/machinery/door/airlock/security{name = "Security Checkpoint"; req_access = list(1)},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/starboard)
"aHK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/bar)
"aHL" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/bar)
-"aHM" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/bluegrid,/area/turret_protected/ai)
-"aHN" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "escape_dock_south_airlock"; name = "interior access button"; pixel_x = 26; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
+"aHM" = (/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
+"aHN" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
"aHO" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/effect/decal/cleanable/flour,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/bar)
"aHP" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = "Kitchen"; name = "Kitchen"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/bar)
"aHQ" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/bar)
"aHR" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/window/brigdoor/northleft{name = "Security Checkpoint"; req_access = list(63)},/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/starboard)
"aHS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/meter,/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/plating,/area/maintenance/substation/civilian_west)
-"aHT" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_south_inner"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_south_mech"; pixel_y = 19},/turf/simulated/floor/plating,/area/hallway/secondary/exit)
+"aHT" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'MOVING PARTS'."; name = "\improper MOVING PARTS"; pixel_x = 0; pixel_y = -32},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/plating,/area/maintenance/locker)
"aHU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/terminal,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/substation/civilian_west)
-"aHV" = (/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
+"aHV" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/locker)
"aHW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/bar)
"aHX" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = "Hydroponics"; name = "Hydroponics"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/bar)
"aHY" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor/tiled,/area/storage/primary)
-"aHZ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
+"aHZ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/maintenance/locker)
"aIa" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plating,/area/maintenance/bar)
"aIb" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/library)
"aIc" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/storage/primary)
@@ -1839,7 +1839,7 @@
"aJs" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{icon_state = "swall_c"; dir = 2},/area/shuttle/arrival/station)
"aJt" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/starboard)
"aJu" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/simulated/wall/r_wall,/area/maintenance/substation/command)
-"aJv" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'MOVING PARTS'."; name = "\improper MOVING PARTS"; pixel_x = 0; pixel_y = -32},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/plating,/area/maintenance/locker)
+"aJv" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/locker)
"aJw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating,/area/maintenance/bar)
"aJx" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/hallway/primary/port)
"aJy" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/bar)
@@ -1917,7 +1917,7 @@
"aKS" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen)
"aKT" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 2; icon_state = "left"; name = "Kitchen Delivery"; req_access = list(28)},/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled,/area/crew_quarters/kitchen)
"aKU" = (/obj/machinery/chem_master/condimaster{name = "CondiMaster Neo"; pixel_x = -5},/obj/structure/window/reinforced{dir = 4},/obj/machinery/camera/network/civilian_east{c_tag = "Kitchen Cold Room"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen)
-"aKV" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aKV" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
"aKW" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Hydroponics"},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/industrial/loading,/turf/simulated/floor/tiled,/area/hydroponics)
"aKX" = (/obj/structure/disposalpipe/segment,/obj/machinery/button/crematorium{pixel_x = 25},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/dark,/area/chapel/office)
"aKY" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/office)
@@ -2082,13 +2082,13 @@
"aOb" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/central_two)
"aOc" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/hallway/primary/central_two)
"aOd" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/external{name = "Arrival Airlock"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port)
-"aOe" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aOe" = (/obj/structure/table/reinforced,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/flamethrower/full,/turf/simulated/floor/lino,/area/crew_quarters/bar)
"aOf" = (/obj/structure/bed/chair/office/dark{dir = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/library)
"aOg" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/chips,/obj/random/single{icon = 'icons/obj/drinks.dmi'; icon_state = "cola"; name = "randomly spawned cola"; spawn_nothing_percentage = 50; spawn_object = /obj/item/weapon/reagent_containers/food/drinks/cans/cola},/turf/simulated/floor/carpet,/area/hallway/secondary/entry/starboard)
-"aOh" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/locker)
+"aOh" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/locker)
"aOi" = (/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/primary/central_one)
"aOj" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/lino,/area/crew_quarters/bar)
-"aOk" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aOk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/flamethrower/full,/turf/simulated/floor/lino,/area/crew_quarters/bar)
"aOl" = (/turf/simulated/floor/lino,/area/crew_quarters/bar)
"aOm" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/flame/lighter/zippo,/turf/simulated/floor/lino,/area/crew_quarters/bar)
"aOn" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/obj/structure/kitchenspike,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen)
@@ -2319,24 +2319,24 @@
"aSE" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport)
"aSF" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 8; id = "office_shutter"; layer = 3.1; name = "Office Shutters"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
"aSG" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/plating,/area/maintenance/library)
-"aSH" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/locker)
-"aSI" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aSH" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aSI" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/turf/simulated/floor/plating,/area/maintenance/locker)
"aSJ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/blast/regular/open{dir = 4; id = "bridge blast"; name = "Bridge Blast Doors"},/turf/simulated/floor/plating,/area/hallway/primary/central_one)
"aSK" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/primary/central_two)
"aSL" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/primary/central_two)
"aSM" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/primary/central_two)
-"aSN" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/turf/simulated/floor/plating,/area/maintenance/locker)
-"aSO" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aSN" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aSO" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/locker)
"aSP" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar)
"aSQ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/crew_quarters/bar)
"aSR" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/bar)
"aSS" = (/turf/simulated/floor/wood,/area/crew_quarters/bar)
"aST" = (/obj/machinery/newscaster{pixel_y = 32},/turf/simulated/floor/wood,/area/crew_quarters/bar)
-"aSU" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aSU" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/locker)
"aSV" = (/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/primary/port)
-"aSW" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/locker)
+"aSW" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor/plating,/area/maintenance/locker)
"aSX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/kitchen)
-"aSY" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aSY" = (/obj/machinery/light,/obj/effect/floor_decal/corner/white{dir = 8},/obj/effect/floor_decal/corner/red,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
"aSZ" = (/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/hallway/primary/port)
"aTa" = (/obj/machinery/smartfridge,/turf/simulated/wall,/area/crew_quarters/kitchen)
"aTb" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/primary/central_two)
@@ -2344,17 +2344,17 @@
"aTd" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/crew_quarters/kitchen)
"aTe" = (/turf/simulated/wall,/area/hydroponics/garden)
"aTf" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/crew_quarters/kitchen)
-"aTg" = (/obj/machinery/light,/obj/effect/floor_decal/corner/white{dir = 8},/obj/effect/floor_decal/corner/red,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
+"aTg" = (/obj/machinery/embedded_controller/radio/docking_port_multi{child_names_txt = "Airlock One;Airlock Two"; child_tags_txt = "escape_dock_north_airlock;escape_dock_south_airlock"; frequency = 1380; id_tag = "escape_dock"; pixel_x = 0; pixel_y = -25; req_one_access = list(13)},/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
"aTh" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/wood,/area/library)
"aTi" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/wood,/area/library)
-"aTj" = (/obj/machinery/embedded_controller/radio/docking_port_multi{child_names_txt = "Airlock One;Airlock Two"; child_tags_txt = "escape_dock_north_airlock;escape_dock_south_airlock"; frequency = 1380; id_tag = "escape_dock"; pixel_x = 0; pixel_y = -25; req_one_access = list(13)},/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
+"aTj" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "specops_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
"aTk" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar)
-"aTl" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "specops_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
-"aTm" = (/obj/machinery/conveyor{dir = 10; id = "garbage"},/turf/simulated/floor/plating,/area/maintenance/disposal)
-"aTn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aTl" = (/obj/machinery/conveyor{dir = 10; id = "garbage"},/turf/simulated/floor/plating,/area/maintenance/disposal)
+"aTm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aTn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor/plating,/area/maintenance/locker)
"aTo" = (/turf/simulated/floor/carpet,/area/chapel/main)
-"aTp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor/plating,/area/maintenance/locker)
-"aTq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aTp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aTq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
"aTr" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/starboard)
"aTs" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/bed/chair/wood/wings,/turf/simulated/floor/wood,/area/crew_quarters/bar)
"aTt" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
@@ -2380,8 +2380,8 @@
"aTN" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"aTO" = (/obj/structure/table/standard,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/storage/art)
"aTP" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/tiled,/area/storage/art)
-"aTQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
-"aTR" = (/obj/item/weapon/screwdriver,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aTQ" = (/obj/item/weapon/screwdriver,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aTR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/item/stack/material/glass/reinforced,/turf/simulated/floor/plating,/area/maintenance/locker)
"aTS" = (/turf/simulated/wall,/area/crew_quarters/locker)
"aTT" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/tiled,/area/storage/art)
"aTU" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Auxiliary Tool Storage"; req_access = list(12)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/port)
@@ -2449,7 +2449,7 @@
"aVe" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "nuke_shuttle_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port)
"aVf" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1331; id_tag = "nuke_shuttle_dock_airlock"; pixel_x = 0; pixel_y = 30; req_access = list(0); req_one_access = list(13); tag_airpump = "nuke_shuttle_dock_pump"; tag_chamber_sensor = "nuke_shuttle_dock_sensor"; tag_exterior_door = "nuke_shuttle_dock_outer"; tag_interior_door = "nuke_shuttle_dock_inner"},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1; icon_state = "map"; tag = "icon-manifold-f (NORTH)"},/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port)
"aVg" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1331; id_tag = "nuke_shuttle_dock_pump"},/obj/machinery/light/small{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port)
-"aVh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/item/stack/material/glass/reinforced,/turf/simulated/floor/plating,/area/maintenance/locker)
+"aVh" = (/obj/item/device/flashlight,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
"aVi" = (/obj/structure/table/woodentable,/turf/simulated/floor/carpet,/area/chapel/main)
"aVj" = (/obj/effect/floor_decal/corner/blue,/obj/effect/floor_decal/corner/white{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aVk" = (/obj/effect/floor_decal/corner/blue,/obj/effect/floor_decal/corner/white{dir = 8},/obj/item/device/radio/intercom{dir = 2; pixel_y = -22},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
@@ -2459,7 +2459,7 @@
"aVo" = (/obj/effect/floor_decal/corner/white{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aVp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"aVq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/primary/central_two)
-"aVr" = (/obj/item/device/flashlight,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aVr" = (/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plating,/area/maintenance/disposal)
"aVs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/starboard)
"aVt" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/firealarm{dir = 2; pixel_y = -24},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/starboard)
"aVu" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -30},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/starboard)
@@ -2532,7 +2532,7 @@
"aWJ" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/closet/wardrobe/white,/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"aWK" = (/obj/item/weapon/stool,/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"aWL" = (/obj/structure/table/standard{name = "plastic table frame"},/turf/simulated/floor/tiled,/area/crew_quarters/locker)
-"aWM" = (/obj/item/weapon/flamethrower/full,/turf/simulated/floor/tiled/white,/area/medical/chemistry)
+"aWM" = (/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/plating,/area/maintenance/disposal)
"aWN" = (/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/structure/table/standard{name = "plastic table frame"},/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"aWO" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"aWP" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 8; id = "office_shutter"; layer = 3.1; name = "Office Shutters"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/starboard)
@@ -2551,7 +2551,7 @@
"aXc" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 1; id = "office_shutter"; layer = 3.1; name = "Office Shutters"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/starboard)
"aXd" = (/obj/structure/extinguisher_cabinet{pixel_x = -24},/turf/simulated/floor/tiled,/area/storage/tools)
"aXe" = (/turf/simulated/floor/plating,/area/maintenance/locker)
-"aXf" = (/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plating,/area/maintenance/disposal)
+"aXf" = (/obj/item/weapon/material/shard{icon_state = "medium"},/turf/simulated/floor/plating,/area/maintenance/locker)
"aXg" = (/turf/simulated/floor/tiled,/area/storage/tools)
"aXh" = (/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table/steel,/turf/simulated/floor/tiled,/area/storage/tools)
"aXi" = (/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/cell_charger,/obj/structure/table/steel,/turf/simulated/floor/tiled,/area/storage/tools)
@@ -2575,7 +2575,7 @@
"aXA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
"aXB" = (/obj/item/weapon/reagent_containers/food/snacks/mint,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
"aXC" = (/obj/item/weapon/material/kitchen/rollingpin,/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
-"aXD" = (/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/plating,/area/maintenance/disposal)
+"aXD" = (/obj/item/weapon/flamethrower/full,/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
"aXE" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
"aXF" = (/obj/item/weapon/book/manual/chef_recipes,/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
"aXG" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/door/window/westright{name = "Library Desk Door"},/turf/simulated/floor/wood,/area/library)
@@ -2602,7 +2602,7 @@
"aYb" = (/obj/structure/bed/chair{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/floor_decal/corner/white{dir = 8},/obj/effect/floor_decal/corner/red{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
"aYc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/hydroponics/garden)
"aYd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
-"aYe" = (/obj/item/weapon/material/shard{icon_state = "medium"},/turf/simulated/floor/plating,/area/maintenance/locker)
+"aYe" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "chemcounter"; name = "Pharmacy Counter Shutters"; opacity = 0},/obj/structure/table/reinforced,/obj/machinery/door/window/westright{name = "Chemistry Desk"; req_access = list(33)},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"aYf" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
"aYg" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "nuke_shuttle_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "nuke_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port)
"aYh" = (/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/grass,/area/hydroponics/garden)
@@ -2639,7 +2639,7 @@
"aYM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 1},/turf/simulated/floor/tiled,/area/bridge)
"aYN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/bridge)
"aYO" = (/turf/simulated/wall,/area/security/vacantoffice)
-"aYP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "chemcounter"; name = "Pharmacy Counter Shutters"; opacity = 0},/obj/structure/table/reinforced,/obj/machinery/door/window/westright{name = "Chemistry Desk"; req_access = list(33)},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
+"aYP" = (/turf/simulated/floor/plating,/area/maintenance/disposal)
"aYQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/locker)
"aYR" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/locker)
"aYS" = (/obj/structure/bed/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled,/area/bridge)
@@ -2722,7 +2722,7 @@
"bar" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/tiled,/area/storage/tools)
"bas" = (/obj/structure/closet/toolcloset,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/storage/tools)
"bat" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/machinery/light,/obj/random/tech_supply,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/item/device/radio/intercom{dir = 2; pixel_y = -22},/turf/simulated/floor/tiled,/area/storage/tools)
-"bau" = (/turf/simulated/floor/plating,/area/maintenance/disposal)
+"bau" = (/obj/machinery/button/remote/blast_door{id = "Disposal Exit"; name = "Disposal Vent Control"; pixel_x = -25; pixel_y = 4; req_access = list(12)},/obj/machinery/button/remote/driver{id = "trash"; pixel_x = -26; pixel_y = -6},/obj/item/weapon/stool/padded,/turf/simulated/floor/plating,/area/maintenance/disposal)
"bav" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/locker)
"baw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/locker)
"bax" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/locker)
@@ -2777,7 +2777,7 @@
"bbu" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
"bbv" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
"bbw" = (/obj/machinery/light/small,/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{frequency = 1380; id_tag = "escape_dock_north_airlock"; master_tag = "escape_dock"; pixel_y = 30; req_one_access = list(13); tag_airlock_mech_sensor = "escape_dock_north_mech"; tag_airpump = "escape_dock_north_pump"; tag_chamber_sensor = "escape_dock_north_sensor"; tag_exterior_door = "escape_dock_north_outer"; tag_interior_door = "escape_dock_north_inner"; tag_shuttle_mech_sensor = "shuttle_dock_north_mech"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1380; id_tag = "escape_dock_north_pump"},/turf/simulated/floor/plating,/area/hallway/secondary/exit)
-"bbx" = (/obj/machinery/button/remote/blast_door{id = "Disposal Exit"; name = "Disposal Vent Control"; pixel_x = -25; pixel_y = 4; req_access = list(12)},/obj/machinery/button/remote/driver{id = "trash"; pixel_x = -26; pixel_y = -6},/obj/item/weapon/stool/padded,/turf/simulated/floor/plating,/area/maintenance/disposal)
+"bbx" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/locker)
"bby" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/hydroponics/garden)
"bbz" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "centcom_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -28; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
"bbA" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_dock_north_outer"; locked = 1; name = "Escape Airlock"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "escape_dock_north_mech"; pixel_y = -19},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "escape_dock_north_airlock"; name = "exterior access button"; pixel_x = 4; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/exit)
@@ -2882,7 +2882,7 @@
"bdv" = (/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/white/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"bdw" = (/obj/structure/table/standard,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/white/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"bdx" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/closet/wardrobe/suit,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/white/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/locker)
-"bdy" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/locker)
+"bdy" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "admin_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -8; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
"bdz" = (/obj/machinery/portable_atmospherics/powered/scrubber,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"bdA" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"bdB" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/disposalpipe/segment,/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/tiled,/area/crew_quarters/locker)
@@ -2948,7 +2948,7 @@
"beJ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/white/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"beK" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"beL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/loading{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel,/area/quartermaster/storage)
-"beM" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "admin_shuttle_dock_airlock"; name = "interior access button"; pixel_x = -8; pixel_y = 26; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
+"beM" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "admin_shuttle_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
"beN" = (/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled/steel,/area/quartermaster/storage)
"beO" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
"beP" = (/obj/machinery/light/small{dir = 1},/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled/steel,/area/quartermaster/storage)
@@ -3036,7 +3036,7 @@
"bgt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/central_one)
"bgu" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/central_one)
"bgv" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/papershredder,/turf/simulated/floor/wood,/area/bridge/meeting_room)
-"bgw" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "admin_shuttle_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
+"bgw" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
"bgx" = (/obj/structure/cable/cyan{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/dark,/area/turret_protected/ai)
"bgy" = (/turf/simulated/floor/tiled/dark,/area/turret_protected/ai)
"bgz" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/flora/pottedplant{tag = "icon-plant-01"; icon_state = "plant-01"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
@@ -3080,17 +3080,17 @@
"bhl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bhm" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bhn" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/effect/floor_decal/corner/white{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
-"bho" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
+"bho" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
"bhp" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/turf/simulated/floor/tiled,/area/hallway/secondary/exit)
"bhq" = (/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "escape_dock_north_sensor"; pixel_x = 0; pixel_y = -25},/turf/simulated/floor/plating,/area/hallway/secondary/exit)
"bhr" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "centcom_shuttle_dock_airlock"; pixel_x = 0; pixel_y = 30; req_one_access = list(13); tag_airpump = "centcom_shuttle_dock_pump"; tag_chamber_sensor = "centcom_shuttle_dock_sensor"; tag_exterior_door = "centcom_shuttle_dock_outer"; tag_interior_door = "centcom_shuttle_dock_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "centcom_shuttle_dock_sensor"; pixel_x = 0; pixel_y = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "centcom_shuttle_dock_pump"},/obj/effect/floor_decal/industrial/warning/full,/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
"bhs" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "centcom_shuttle_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "centcom_shuttle_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
-"bht" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
+"bht" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
"bhu" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
-"bhv" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
-"bhw" = (/obj/machinery/camera/network/civilian_west{c_tag = "Waste Disposal"; dir = 8},/obj/item/weapon/material/ashtray/plastic{pixel_x = 5; pixel_y = -5},/obj/item/weapon/cigbutt/cigarbutt,/turf/simulated/floor/plating,/area/maintenance/disposal)
-"bhx" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/plating,/area/storage/emergency)
-"bhy" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_mining{name = "Delivery Office"; req_access = list(50)},/turf/simulated/floor/tiled,/area/quartermaster/office)
+"bhv" = (/obj/machinery/camera/network/civilian_west{c_tag = "Waste Disposal"; dir = 8},/obj/item/weapon/material/ashtray/plastic{pixel_x = 5; pixel_y = -5},/obj/item/weapon/cigbutt/cigarbutt,/turf/simulated/floor/plating,/area/maintenance/disposal)
+"bhw" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/plating,/area/storage/emergency)
+"bhx" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_mining{name = "Delivery Office"; req_access = list(50)},/turf/simulated/floor/tiled,/area/quartermaster/office)
+"bhy" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/visible/supply,/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/turf/simulated/floor/plating,/area/crew_quarters/captain)
"bhz" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker/locker_toilet)
"bhA" = (/obj/machinery/portable_atmospherics/powered/scrubber,/obj/machinery/light,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled,/area/crew_quarters/locker)
"bhB" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/civilian_west{c_tag = "Locker Room South"; dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/locker)
@@ -3107,7 +3107,7 @@
"bhM" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = -32; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/central_one)
"bhN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "heads_meeting"; name = "Meeting Room Window Shutters"; opacity = 0},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/bridge/meeting_room)
"bhO" = (/turf/space,/area/shuttle/specops/station)
-"bhP" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/visible/supply,/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/turf/simulated/floor/plating,/area/crew_quarters/captain)
+"bhP" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/visible/supply,/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/turf/simulated/floor/plating,/area/crew_quarters/captain)
"bhQ" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/dark,/area/turret_protected/ai)
"bhR" = (/obj/machinery/ai_slipper{icon_state = "motion0"},/obj/machinery/camera/all/command{c_tag = "AI Chamber"; dir = 1},/obj/machinery/power/smes/buildable{charge = 5e+006; input_attempt = 1; input_level = 200000; output_level = 200000},/obj/structure/cable/cyan{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/bluegrid,/area/turret_protected/ai)
"bhS" = (/obj/machinery/power/sensor{name = "Powernet Sensor - AI Subgrid"; name_tag = "AI Subgrid"},/obj/structure/cable/cyan{d2 = 8; icon_state = "0-8"},/obj/structure/cable/cyan{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/bluegrid,/area/turret_protected/ai)
@@ -3117,12 +3117,12 @@
"bhW" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/central_two)
"bhX" = (/obj/structure/disposalpipe/segment,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = -32; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/floor_decal/corner/blue{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/central_two)
"bhY" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/tiled,/area/hallway/primary/central_two)
-"bhZ" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/visible/supply,/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/turf/simulated/floor/plating,/area/crew_quarters/captain)
+"bhZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/docking)
"bia" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/tiled,/area/hallway/primary/central_two)
"bib" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bic" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bid" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
-"bie" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/docking)
+"bie" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor/tiled/white,/area/rnd/docking)
"bif" = (/obj/structure/disposalpipe/sortjunction/wildcard,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/locker)
"big" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bih" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
@@ -3134,7 +3134,7 @@
"bin" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bio" = (/obj/item/weapon/hand_labeler,/obj/item/device/assembly/timer,/obj/item/device/eftpos{eftpos_name = "Bridge EFTPOS scanner"},/obj/structure/table/woodentable,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/bridge/meeting_room)
"bip" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/bridge/meeting_room)
-"biq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor/tiled/white,/area/rnd/docking)
+"biq" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/rnd/docking)
"bir" = (/obj/item/weapon/folder/red,/obj/structure/table/woodentable,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/bridge/meeting_room)
"bis" = (/obj/item/weapon/book/manual/security_space_law,/obj/structure/table/woodentable,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/bridge/meeting_room)
"bit" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
@@ -3175,7 +3175,7 @@
"bjc" = (/obj/effect/landmark{name = "tripai"},/obj/structure/cable/cyan{d2 = 4; icon_state = "0-4"},/obj/item/device/radio/intercom/private{dir = 1; pixel_y = 22},/obj/item/device/radio/intercom{dir = 8; pixel_x = -22},/obj/item/device/radio/intercom/custom{dir = 2; pixel_y = -22},/turf/simulated/floor/bluegrid,/area/turret_protected/ai)
"bjd" = (/obj/machinery/light/small{dir = 1},/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{frequency = 1380; id_tag = "escape_dock_south_airlock"; master_tag = "escape_dock"; pixel_y = -30; req_one_access = list(13); tag_airlock_mech_sensor = "escape_dock_south_mech"; tag_airpump = "escape_dock_south_pump"; tag_chamber_sensor = "escape_dock_south_sensor"; tag_exterior_door = "escape_dock_south_outer"; tag_interior_door = "escape_dock_south_inner"; tag_shuttle_mech_sensor = "shuttle_dock_south_mech"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1380; id_tag = "escape_dock_south_pump"},/turf/simulated/floor/plating,/area/hallway/secondary/exit)
"bje" = (/obj/effect/landmark/start{name = "AI"},/obj/machinery/newscaster/security_unit{pixel_x = 32; pixel_y = 32},/obj/machinery/requests_console{department = "AI"; departmentType = 5; pixel_x = -32; pixel_y = 32},/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the AI core maintenance door."; id = "AICore"; name = "AI Maintenance Hatch"; pixel_x = 17; pixel_y = 25; req_access = list(109)},/obj/item/device/radio/intercom/custom{dir = 1; pixel_x = -28; pixel_y = 4},/obj/item/device/radio/intercom{dir = 1; pixel_y = 22},/obj/item/device/radio/intercom/private{dir = 1; pixel_x = 28; pixel_y = 4},/turf/simulated/floor/bluegrid,/area/turret_protected/ai)
-"bjf" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/rnd/docking)
+"bjf" = (/obj/machinery/door/airlock/research{name = "Research Shuttle Dock"; req_access = list(65)},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/docking)
"bjg" = (/obj/effect/landmark{name = "tripai"},/obj/structure/cable/cyan{d2 = 8; icon_state = "0-8"},/obj/item/device/radio/intercom/private{dir = 2; pixel_y = -22},/obj/item/device/radio/intercom{dir = 4; pixel_x = 22},/obj/item/device/radio/intercom/custom{dir = 1; pixel_y = 22},/turf/simulated/floor/bluegrid,/area/turret_protected/ai)
"bjh" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/exit)
"bji" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Stbd"; location = "HOP"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/central_two)
@@ -3187,22 +3187,22 @@
"bjo" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjp" = (/turf/simulated/wall,/area/maintenance/disposal)
"bjq" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
-"bjr" = (/obj/machinery/door/airlock/research{name = "Research Shuttle Dock"; req_access = list(65)},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/docking)
+"bjr" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable,/obj/machinery/power/apc/critical{name = "south bump"; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/docking)
"bjs" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
-"bju" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable,/obj/machinery/power/apc/critical{name = "south bump"; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/docking)
+"bju" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/docking)
"bjv" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{dir = 2; pixel_y = -22},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjx" = (/obj/structure/disposalpipe/tagger/partial{name = "Sorting Office"; sort_tag = "Sorting Office"},/turf/simulated/floor/plating,/area/maintenance/locker)
"bjy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjz" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Starboard - West"; dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
-"bjA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/docking)
-"bjB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor/tiled/white,/area/rnd/docking)
+"bjA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor/tiled/white,/area/rnd/docking)
+"bjB" = (/obj/item/frame/apc,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/medical/genetics)
"bjC" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjD" = (/obj/machinery/light,/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjE" = (/obj/item/device/radio/intercom{dir = 2; pixel_y = -22},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjF" = (/obj/machinery/door/blast/regular{id = "chapelgun"; name = "Chapel Launcher Door"},/turf/simulated/floor/plating,/area/chapel/main)
-"bjG" = (/obj/item/frame/apc,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/medical/genetics)
+"bjG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/medical/genetics)
"bjH" = (/obj/machinery/light,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjI" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/structure/table/woodentable,/turf/simulated/floor/carpet,/area/bridge/meeting_room)
"bjJ" = (/obj/item/weapon/folder/blue,/obj/structure/table/woodentable,/turf/simulated/floor/carpet,/area/bridge/meeting_room)
@@ -3210,7 +3210,7 @@
"bjL" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/bridge/meeting_room)
"bjM" = (/obj/structure/reagent_dispensers/water_cooler,/turf/simulated/floor/wood,/area/bridge/meeting_room)
"bjN" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
-"bjO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/medical/genetics)
+"bjO" = (/obj/item/weapon/flamethrower/full,/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"bjP" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/corner/white,/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjQ" = (/obj/machinery/light,/obj/effect/floor_decal/corner/white{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"bjR" = (/obj/effect/floor_decal/corner/white{tag = "icon-corner_white (SOUTHWEST)"; icon_state = "corner_white"; dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
@@ -3320,7 +3320,7 @@
"blR" = (/obj/structure/cable/cyan{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/dark,/area/turret_protected/ai)
"blS" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "specops_dock_airlock"; pixel_x = 0; pixel_y = 30; req_one_access = list(13); tag_airpump = "specops_dock_pump"; tag_chamber_sensor = "specops_dock_sensor"; tag_exterior_door = "specops_dock_outer"; tag_interior_door = "specops_dock_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "specops_dock_sensor"; pixel_x = 0; pixel_y = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "specops_dock_pump"},/obj/effect/floor_decal/industrial/warning/full,/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
"blT" = (/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/turret_protected/ai)
-"blU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/medical/genetics)
+"blU" = (/obj/structure/lamarr,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/hor)
"blV" = (/obj/item/weapon/reagent_containers/dropper,/obj/machinery/light{dir = 8},/obj/structure/table/glass,/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"blW" = (/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/structure/table/glass,/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"blX" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = 30},/obj/machinery/chem_master,/obj/machinery/camera/network/medbay{c_tag = "Medbay - Chemistry"},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
@@ -3329,7 +3329,7 @@
"bma" = (/obj/structure/reagent_dispensers/water_cooler,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/obj/effect/floor_decal/corner/paleblue/full{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/reception)
"bmb" = (/obj/machinery/light{dir = 1},/obj/item/weapon/stool/padded,/obj/effect/floor_decal/corner/paleblue{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/reception)
"bmc" = (/turf/simulated/wall/r_wall,/area/hallway/secondary/exit)
-"bmd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/medical/genetics)
+"bmd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/medical/genetics)
"bme" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "specops_dock_outer"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "specops_dock_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = -26; req_one_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
"bmf" = (/obj/machinery/camera/network/medbay{c_tag = "Medbay Lobby Port"},/obj/item/weapon/stool/padded,/obj/effect/floor_decal/corner/paleblue{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/reception)
"bmg" = (/obj/machinery/conveyor{dir = 1; id = "garbage"},/turf/simulated/floor/plating,/area/maintenance/disposal)
@@ -3341,15 +3341,15 @@
"bmm" = (/obj/effect/floor_decal/corner/paleblue{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/reception)
"bmn" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/corner/paleblue{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/reception)
"bmo" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/locker)
-"bmp" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/server)
-"bmq" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/dark,/area/server)
+"bmp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/medical/genetics)
+"bmq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/server)
"bmr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/locker)
"bms" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/locker)
"bmt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/locker)
"bmu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/locker)
"bmv" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/locker)
"bmw" = (/obj/machinery/camera/network/medbay{c_tag = "Medbay Lobby Starboard"},/obj/item/weapon/stool/padded,/obj/effect/floor_decal/corner/paleblue{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/reception)
-"bmx" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/dark,/area/server)
+"bmx" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/dark,/area/server)
"bmy" = (/obj/machinery/newscaster{pixel_x = 30},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/obj/structure/flora/pottedplant{tag = "icon-plant-10"; icon_state = "plant-10"},/obj/effect/floor_decal/corner/paleblue/full{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/reception)
"bmz" = (/obj/machinery/alarm{pixel_y = 22},/obj/item/weapon/stool/padded,/obj/effect/floor_decal/corner/paleblue{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/reception)
"bmA" = (/obj/machinery/light{dir = 1},/obj/structure/closet/secure_closet/medical1,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/exam_room)
@@ -3372,10 +3372,10 @@
"bmR" = (/obj/structure/table/woodentable,/obj/item/device/eftpos{eftpos_name = "Captain EFTPOS scanner"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"bmS" = (/obj/structure/table/woodentable,/obj/item/weapon/melee/chainofcommand,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/crew_quarters/captain)
"bmT" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_one_access = list(5,12,47)},/turf/simulated/floor/plating,/area/hallway/primary/starboard)
-"bmU" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_port)
+"bmU" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/dark,/area/server)
"bmV" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/locker)
"bmW" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/locker)
-"bmX" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/device/flashlight,/obj/item/clothing/mask/gas,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/research_port)
+"bmX" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_port)
"bmY" = (/obj/structure/sign/chemistry,/turf/simulated/wall/r_wall,/area/medical/chemistry)
"bmZ" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/camera/network/medbay{c_tag = "Medbay Morgue"},/turf/simulated/floor/tiled/dark,/area/medical/morgue)
"bna" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/turf/simulated/floor/tiled/dark,/area/medical/morgue)
@@ -3419,7 +3419,7 @@
"bnM" = (/turf/simulated/wall,/area/storage/emergency)
"bnN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"bnO" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
-"bnP" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/tiled/dark,/area/server)
+"bnP" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/device/flashlight,/obj/item/clothing/mask/gas,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/research_port)
"bnQ" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Chemist"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"bnR" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/white,/area/medical/reception)
"bnS" = (/obj/effect/floor_decal/corner/paleblue{dir = 9},/turf/simulated/floor/tiled/white,/area/medical/reception)
@@ -3433,8 +3433,8 @@
"boa" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/locker)
"bob" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/locker)
"boc" = (/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/locker)
-"bod" = (/obj/structure/table/rack,/obj/item/weapon/extinguisher,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/mask/gas,/turf/simulated/floor/plating,/area/maintenance/research_shuttle)
-"boe" = (/obj/structure/table/rack,/obj/item/weapon/rig/medical,/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/cmo)
+"bod" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/tiled/dark,/area/server)
+"boe" = (/obj/structure/table/rack,/obj/item/weapon/extinguisher,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/mask/gas,/turf/simulated/floor/plating,/area/maintenance/research_shuttle)
"bof" = (/obj/item/weapon/stool/padded,/obj/effect/floor_decal/corner/paleblue{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/reception)
"bog" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/quartermaster/storage)
"boh" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/quartermaster/office)
@@ -3446,7 +3446,7 @@
"bon" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/medical/exam_room)
"boo" = (/obj/structure/filingcabinet/medical,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/tiled/white,/area/medical/exam_room)
"bop" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/dark,/area/medical/morgue)
-"boq" = (/obj/structure/table/standard,/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/turf/simulated/floor/tiled/dark,/area/medical/morgue)
+"boq" = (/obj/structure/table/standard,/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/obj/item/weapon/reagent_containers/spray/sterilizine,/turf/simulated/floor/tiled/dark,/area/medical/morgue)
"bor" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/plating,/area/maintenance/substation/command)
"bos" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/dark,/area/medical/morgue)
"bot" = (/turf/simulated/wall,/area/maintenance/substation/command)
@@ -3496,14 +3496,14 @@
"bpl" = (/turf/simulated/floor,/area/assembly/chargebay)
"bpm" = (/obj/item/trash/candy,/obj/item/trash/popcorn,/turf/simulated/floor/plating,/area/maintenance/disposal)
"bpn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/quartermaster/storage)
-"bpo" = (/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_port)
+"bpo" = (/obj/structure/table/rack,/obj/item/weapon/rig/medical,/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/cmo)
"bpp" = (/turf/simulated/wall,/area/assembly/robotics)
"bpq" = (/obj/machinery/photocopier,/turf/simulated/floor/tiled,/area/quartermaster/office)
-"bpr" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/research_port)
+"bpr" = (/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_port)
"bps" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/locker)
"bpt" = (/obj/structure/disposalpipe/sortjunction{dir = 1; name = "Sorting Office"; sortType = "Sorting Office"},/obj/machinery/papershredder,/turf/simulated/floor/tiled,/area/quartermaster/office)
"bpu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/quartermaster/office)
-"bpv" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/server)
+"bpv" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/research_port)
"bpw" = (/obj/machinery/conveyor_switch/oneway{convdir = -1; id = "packageExternal"},/turf/simulated/floor/tiled,/area/quartermaster/office)
"bpx" = (/obj/structure/sign/securearea,/turf/simulated/wall,/area/hallway/primary/starboard)
"bpy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/central_one)
@@ -3531,8 +3531,8 @@
"bpU" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor,/turf/simulated/floor/plating,/area/maintenance/locker)
"bpV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plating,/area/maintenance/locker)
"bpW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/locker)
-"bpX" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/tiled/dark,/area/server)
-"bpY" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating,/area/maintenance/research_shuttle)
+"bpX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/server)
+"bpY" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/tiled/dark,/area/server)
"bpZ" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"bqa" = (/obj/item/weapon/packageWrap,/obj/item/weapon/hand_labeler,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the 'Space' from Space Cleaner and written in Chemistry. Scrawled on the back is, 'Okay, whoever filled this with polytrinic acid, it was only funny the first time. It was hard enough replacing the CMO's first cat!'"; name = "Chemistry Cleaner"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table/glass,/obj/item/device/radio/intercom{dir = 4; pixel_x = 22},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"bqb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/reception)
@@ -3558,10 +3558,10 @@
"bqv" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_research{name = "Robotics Lab"; req_access = list(29)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/assembly/robotics)
"bqw" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet,/area/crew_quarters/captain)
"bqx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled/white,/area/assembly/robotics)
-"bqy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_shuttle)
+"bqy" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating,/area/maintenance/research_shuttle)
"bqz" = (/obj/structure/table/rack,/obj/item/weapon/tank/jetpack/oxygen,/obj/item/clothing/mask/gas,/obj/item/clothing/suit/armor/captain,/obj/item/clothing/head/helmet/space/capspace,/obj/machinery/newscaster/security_unit{pixel_x = -32; pixel_y = 0},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"bqA" = (/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"bqB" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/research_shuttle)
+"bqB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_shuttle)
"bqC" = (/obj/machinery/light,/turf/simulated/floor/wood,/area/crew_quarters/captain)
"bqD" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"bqE" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled/white,/area/assembly/robotics)
@@ -3582,12 +3582,12 @@
"bqT" = (/obj/structure/extinguisher_cabinet{pixel_x = 25; pixel_y = 0},/turf/simulated/floor/tiled/white,/area/rnd/lab)
"bqU" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/binary/pump/on{dir = 1; target_pressure = 200},/turf/simulated/floor/plating,/area/storage/emergency)
"bqV" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/storage/emergency)
-"bqW" = (/obj/machinery/light/small{dir = 4; pixel_y = 8},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "mining_dock_airlock"; pixel_x = 25; pixel_y = -5; req_one_access = list(13,48); tag_airpump = "mining_dock_pump"; tag_chamber_sensor = "mining_dock_sensor"; tag_exterior_door = "mining_dock_outer"; tag_interior_door = "mining_dock_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "mining_dock_sensor"; pixel_x = 25; pixel_y = 8},/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor,/area/quartermaster/miningdock)
+"bqW" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/research_shuttle)
"bqX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/storage/emergency)
-"bqY" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/cargo)
+"bqY" = (/obj/machinery/light/small{dir = 4; pixel_y = 8},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "mining_dock_airlock"; pixel_x = 25; pixel_y = -5; req_one_access = list(13,48); tag_airpump = "mining_dock_pump"; tag_chamber_sensor = "mining_dock_sensor"; tag_exterior_door = "mining_dock_outer"; tag_interior_door = "mining_dock_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "mining_dock_sensor"; pixel_x = 25; pixel_y = 8},/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor,/area/quartermaster/miningdock)
"bqZ" = (/turf/simulated/floor/bluegrid,/area/assembly/chargebay)
-"bra" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/engineering)
-"brb" = (/obj/machinery/light,/turf/simulated/floor/plating,/area/medical/genetics)
+"bra" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/cargo)
+"brb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/engineering)
"brc" = (/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
"brd" = (/turf/simulated/floor/tiled,/area/quartermaster/storage)
"bre" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/quartermaster/storage)
@@ -3655,7 +3655,7 @@
"bso" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/assembly/robotics)
"bsp" = (/turf/simulated/wall,/area/crew_quarters/captain)
"bsq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/disposal)
-"bsr" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "mining_dock_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = 25; req_one_access = list(13,48)},/obj/effect/floor_decal/corner/brown{dir = 9},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
+"bsr" = (/obj/machinery/light,/turf/simulated/floor/plating,/area/medical/genetics)
"bss" = (/obj/structure/closet/firecloset,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/research)
"bst" = (/obj/machinery/shower{icon_state = "shower"; dir = 8},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/research)
"bsu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/rnd/research)
@@ -3673,8 +3673,8 @@
"bsG" = (/obj/structure/table/standard,/obj/item/weapon/hand_labeler,/obj/item/weapon/pen,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/device/radio/intercom{dir = 4; pixel_x = 22},/turf/simulated/floor/tiled/white,/area/rnd/lab)
"bsH" = (/obj/machinery/alarm{pixel_y = 23},/obj/machinery/porta_turret,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload)
"bsI" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/oxygen,/obj/item/weapon/aiModule/oneHuman,/obj/machinery/door/window{base_state = "left"; dir = 8; icon_state = "left"; name = "High-Risk Modules"; req_access = list(20)},/obj/item/weapon/aiModule/purge,/obj/structure/window/reinforced,/obj/item/weapon/aiModule/antimov,/obj/item/weapon/aiModule/teleporterOffline,/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload)
-"bsJ" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_dock_inner"; locked = 1; name = "Mining Dock Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/quartermaster/miningdock)
-"bsK" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
+"bsJ" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "mining_dock_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = 25; req_one_access = list(13,48)},/obj/effect/floor_decal/corner/brown{dir = 9},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
+"bsK" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_dock_inner"; locked = 1; name = "Mining Dock Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/quartermaster/miningdock)
"bsL" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/aft)
"bsM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor/plating,/area/storage/emergency)
"bsN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/assembly/robotics)
@@ -3737,7 +3737,7 @@
"btS" = (/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor/carpet,/area/crew_quarters/captain)
"btT" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/exam_room)
"btU" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/medical/exam_room)
-"btV" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
+"btV" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
"btW" = (/obj/machinery/computer/med_data/laptop,/obj/item/device/radio/intercom{dir = 2; pixel_y = -22},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/table/standard{name = "plastic table frame"},/turf/simulated/floor/tiled/white,/area/medical/exam_room)
"btX" = (/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled/dark,/area/medical/morgue)
"btY" = (/obj/item/device/radio/intercom{dir = 2; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/dark,/area/medical/morgue)
@@ -3756,7 +3756,7 @@
"bul" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/assembly/robotics)
"bum" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor/tiled/white,/area/rnd/research)
"bun" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/tiled/white,/area/rnd/research)
-"buo" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/maintenance/cargo)
+"buo" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
"bup" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/quartermaster/office)
"buq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/white,/area/rnd/research)
"bur" = (/obj/machinery/computer/rdconsole/core,/turf/simulated/floor/tiled,/area/rnd/lab)
@@ -3765,7 +3765,7 @@
"buu" = (/obj/structure/table/standard,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/micro_laser,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/tiled/white,/area/rnd/lab)
"buv" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "admin_shuttle_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/entry/aft)
"buw" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/storage/emergency)
-"bux" = (/obj/structure/grille/broken,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/engineering)
+"bux" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/maintenance/cargo)
"buy" = (/obj/machinery/door/blast/regular{id = "trash"; name = "disposal mass driver"},/turf/simulated/floor/airless,/area/maintenance/disposal)
"buz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/assembly/robotics)
"buA" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/quartermaster/storage)
@@ -3838,7 +3838,7 @@
"bvP" = (/obj/structure/grille,/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/window/reinforced/polarized{dir = 4},/obj/structure/window/reinforced/polarized{dir = 1},/obj/structure/window/reinforced/polarized{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/heads/hop)
"bvQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/carpet,/area/crew_quarters/captain)
"bvR" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 4},/area/shuttle/research/station)
-"bvS" = (/obj/structure/table/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/turf/simulated/floor/plating,/area/maintenance/engineering)
+"bvS" = (/obj/structure/grille/broken,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/engineering)
"bvT" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 2},/area/shuttle/research/station)
"bvU" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/quartermaster/storage)
"bvV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/chemistry)
@@ -3968,7 +3968,7 @@
"byp" = (/obj/machinery/door/airlock/maintenance{name = "Teleporter Maintenance"; req_access = list(17)},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/visible/supply,/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/turf/simulated/floor/tiled,/area/teleporter)
"byq" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/hallway/primary/central_two)
"byr" = (/turf/simulated/floor/tiled/white,/area/medical/chemistry)
-"bys" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/bottle/stoxin{pixel_x = -6; pixel_y = 10},/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline{pixel_x = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/random/medical,/obj/effect/floor_decal/corner/beige{dir = 9},/obj/item/device/radio/intercom{dir = 8; pixel_x = -22},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
+"bys" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/bottle/stoxin{pixel_x = -6; pixel_y = 10},/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline{pixel_x = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/random/medical,/obj/effect/floor_decal/corner/beige{dir = 9},/obj/item/device/radio/intercom{dir = 8; pixel_x = -22},/obj/item/weapon/reagent_containers/spray/sterilizine,/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = -5},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"byt" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"byu" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/chemistry)
"byv" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/paleblue{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/medbay)
@@ -4179,12 +4179,12 @@
"bCs" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/rnd/research)
"bCt" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/rnd/research)
"bCu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled/white,/area/rnd/docking)
-"bCv" = (/turf/simulated/floor/tiled,/area/rnd/storage)
-"bCw" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/machinery/camera/network/civilian_west{c_tag = "Cargo Mining Dock Airlock"; dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor,/area/quartermaster/miningdock)
-"bCx" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
-"bCy" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = "QM Office"; name = "QM Office"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
+"bCv" = (/obj/structure/table/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/turf/simulated/floor/plating,/area/maintenance/engineering)
+"bCw" = (/turf/simulated/floor/tiled,/area/rnd/storage)
+"bCx" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/machinery/camera/network/civilian_west{c_tag = "Cargo Mining Dock Airlock"; dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor,/area/quartermaster/miningdock)
+"bCy" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
"bCz" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/quartermaster/storage)
-"bCA" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
+"bCA" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = "QM Office"; name = "QM Office"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
"bCB" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/floor_decal/corner/blue{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/docking)
"bCC" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 1},/area/shuttle/research/station)
"bCD" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/shuttle/research/station)
@@ -4253,7 +4253,7 @@
"bDO" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/medical/genetics)
"bDP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/research)
"bDQ" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "research_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/turf/simulated/shuttle/floor,/area/shuttle/research/station)
-"bDR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/cargo)
+"bDR" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
"bDS" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "cmooffice"; name = "CMO Office Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/medbay2)
"bDT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/purple{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/research)
"bDU" = (/obj/structure/sign/securearea,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/rnd/research)
@@ -4266,7 +4266,7 @@
"bEb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled/white,/area/rnd/research)
"bEc" = (/obj/machinery/hologram/holopad,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/research)
"bEd" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/camera/network/research{c_tag = "Research Shuttle Dock"; dir = 8},/obj/effect/floor_decal/corner/blue{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/docking)
-"bEe" = (/obj/machinery/door/airlock/maintenance{name = "Mining Maintenance"; req_access = list(48)},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/miningdock)
+"bEe" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/cargo)
"bEf" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/effect/floor_decal/industrial/warning/cee,/turf/simulated/floor/plating,/area/quartermaster/storage)
"bEg" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/light,/obj/item/device/radio/intercom{dir = 2; pixel_y = -22},/turf/simulated/floor/tiled,/area/quartermaster/storage)
"bEh" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/status_display/supply_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/quartermaster/storage)
@@ -4308,7 +4308,7 @@
"bER" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/medbay)
"bES" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{name = "Medical Equipment"; req_access = list(66)},/turf/simulated/floor/tiled/white,/area/medical/medbay3)
"bET" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/medbay2)
-"bEU" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor/plating,/area/maintenance/cargo)
+"bEU" = (/obj/machinery/door/airlock/maintenance{name = "Mining Maintenance"; req_access = list(48)},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"bEV" = (/obj/structure/table,/turf/simulated/floor/plating,/area/medical/genetics)
"bEW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/effect/floor_decal/corner/paleblue{dir = 9},/turf/simulated/floor/tiled/white,/area/medical/medbay2)
"bEX" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/cryo)
@@ -4344,14 +4344,14 @@
"bFB" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/medical/genetics)
"bFC" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/plating,/area/medical/genetics)
"bFD" = (/turf/simulated/floor/plating,/area/medical/genetics)
-"bFE" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/cargo)
+"bFE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"},/turf/simulated/floor/plating,/area/maintenance/cargo)
"bFF" = (/obj/structure/table/standard,/obj/item/weapon/folder/white,/obj/item/weapon/stamp/rd{pixel_x = 3; pixel_y = -2},/obj/item/weapon/paper/monitorkey,/obj/item/device/megaphone,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/effect/floor_decal/corner/grey/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/hor)
"bFG" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 0; external_pressure_bound_default = 0; icon_state = "map_vent_in"; initialize_directions = 1; internal_pressure_bound = 4000; internal_pressure_bound_default = 4000; use_power = 1; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0},/turf/simulated/floor/bluegrid{name = "Server Base"; nitrogen = 500; oxygen = 0; temperature = 80},/area/server)
"bFH" = (/obj/machinery/computer/aifixer,/obj/machinery/requests_console{announcementConsole = 1; department = "Research Director's Desk"; departmentType = 5; name = "Research Director RC"; pixel_x = -2; pixel_y = 30},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/grey/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/hor)
"bFI" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced,/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "cmooffice"; name = "CMO Office Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/medbay)
"bFJ" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized{dir = 4},/turf/simulated/floor/plating,/area/rnd/research)
"bFK" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/grey/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/hor)
-"bFL" = (/obj/structure/lamarr,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/hor)
+"bFL" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/cargo)
"bFM" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/hor)
"bFN" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/papershredder,/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/hor)
"bFO" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/turf/simulated/floor/plating,/area/maintenance/cargo)
@@ -4858,7 +4858,7 @@
"bPv" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/janitor)
"bPw" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/engineering)
"bPx" = (/turf/simulated/floor/plating,/area/maintenance/engineering)
-"bPy" = (/obj/machinery/light,/obj/structure/table/standard,/obj/item/weapon/flamethrower/full,/obj/effect/floor_decal/corner/white/diagonal,/turf/simulated/floor/tiled,/area/engineering/break_room)
+"bPy" = (/obj/machinery/door/airlock/engineering{name = "Aft Starboard Solar Access"; req_access = list(11)},/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar)
"bPz" = (/obj/item/weapon/reagent_containers/glass/bucket,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/janitor)
"bPA" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/janitor)
"bPB" = (/obj/structure/mopbucket,/obj/item/weapon/mop,/turf/simulated/floor/tiled,/area/janitor)
@@ -4882,7 +4882,7 @@
"bPT" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/turf/simulated/floor/reinforced,/area/rnd/misc_lab)
"bPU" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 4; frequency = 1441; icon_state = "map_injector"; id = "n2_in"; use_power = 1},/turf/simulated/floor/reinforced,/area/rnd/misc_lab)
"bPV" = (/obj/structure/table/standard,/obj/structure/table/standard,/obj/item/stack/cable_coil,/obj/item/device/multitool,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/reinforced,/area/rnd/misc_lab)
-"bPW" = (/obj/machinery/door/airlock/engineering{name = "Aft Starboard Solar Access"; req_access = list(11)},/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar)
+"bPW" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar)
"bPX" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/simulated/floor/tiled/dark,/area/rnd/storage)
"bPY" = (/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bPZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(7,12)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_shuttle)
@@ -4890,7 +4890,7 @@
"bQb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bQc" = (/obj/machinery/atmospherics/binary/pump{dir = 8; name = "Waste to Scrubbers"},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bQd" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
-"bQe" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar)
+"bQe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel,/area/maintenance/atmos_control)
"bQf" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bQg" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold4w/visible,/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bQh" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
@@ -4905,8 +4905,8 @@
"bQq" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/simulated/wall,/area/quartermaster/miningdock)
"bQr" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/airless,/area/rnd/test_area)
"bQs" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled/airless,/area/rnd/test_area)
-"bQt" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel,/area/maintenance/atmos_control)
-"bQu" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/research_port)
+"bQt" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/research_port)
+"bQu" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar)
"bQv" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/cargo)
"bQw" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = "HoP Office"; name = "HoP Office"},/turf/simulated/floor/plating,/area/maintenance/cargo)
"bQx" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/cargo)
@@ -4915,22 +4915,22 @@
"bQA" = (/obj/item/weapon/ore/silver,/obj/item/weapon/ore/silver,/obj/item/weapon/ore/iron,/obj/structure/closet/crate,/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "mining_dock_pump"},/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor,/area/quartermaster/miningdock)
"bQB" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = -32},/obj/structure/reagent_dispensers/fueltank,/obj/effect/floor_decal/corner/brown/full,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/quartermaster/miningdock)
"bQC" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall/r_wall,/area/storage/tech)
-"bQD" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar)
+"bQD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/medbay)
"bQE" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/pandemic{pixel_x = -3; pixel_y = 3},/obj/item/weapon/circuitboard/rdconsole,/obj/item/weapon/circuitboard/destructive_analyzer,/obj/item/weapon/circuitboard/protolathe,/obj/item/weapon/circuitboard/rdserver{pixel_x = 3; pixel_y = -3},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/storage/tech)
"bQF" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/arcade,/obj/item/weapon/circuitboard/message_monitor{pixel_x = 3; pixel_y = -3},/turf/simulated/floor/plating,/area/storage/tech)
"bQG" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/security/mining,/obj/item/weapon/circuitboard/autolathe{pixel_x = 3; pixel_y = -3},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/storage/tech)
-"bQH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/medbay)
+"bQH" = (/obj/item/weapon/wirecutters,/turf/simulated/floor,/area/construction)
"bQI" = (/obj/machinery/camera/network/security{c_tag = "Engineering - Secure Technical Storage"},/turf/simulated/floor/plating,/area/storage/tech)
"bQJ" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/borgupload{pixel_x = -1; pixel_y = 1},/obj/item/weapon/circuitboard/aiupload{pixel_x = 2; pixel_y = -2},/turf/simulated/floor/plating,/area/storage/tech)
"bQK" = (/obj/item/device/radio/intercom{dir = 4; pixel_x = 22},/turf/simulated/floor/plating,/area/storage/tech)
"bQL" = (/turf/simulated/floor/tiled,/area/hallway/primary/aft)
"bQM" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/corner/yellow{dir = 8},/obj/item/device/radio/intercom{dir = 8; pixel_x = -22},/turf/simulated/floor/tiled,/area/hallway/primary/aft)
"bQN" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/corner/yellow,/turf/simulated/floor/tiled,/area/hallway/primary/aft)
-"bQO" = (/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/table/steel,/turf/simulated/floor/tiled,/area/janitor)
+"bQO" = (/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/table/steel,/obj/item/weapon/reagent_containers/spray/sterilizine,/turf/simulated/floor/tiled,/area/janitor)
"bQP" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/structure/table/steel,/turf/simulated/floor/tiled,/area/janitor)
"bQQ" = (/obj/structure/janitorialcart,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/janitor)
"bQR" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled,/area/janitor)
-"bQS" = (/obj/item/weapon/wirecutters,/turf/simulated/floor,/area/construction)
+"bQS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/maintenance/engineering)
"bQT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/engineering)
"bQU" = (/obj/structure/closet,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/engineering)
"bQV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/janitor)
@@ -4954,7 +4954,7 @@
"bRn" = (/turf/simulated/wall,/area/medical/patient_b)
"bRo" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/reinforced,/area/rnd/misc_lab)
"bRp" = (/obj/structure/table/standard,/obj/item/device/assembly/igniter,/turf/simulated/floor/reinforced,/area/rnd/misc_lab)
-"bRq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/maintenance/engineering)
+"bRq" = (/obj/machinery/door/window/eastright{name = "Engineering Delivery"; req_one_access = list(11,24)},/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 6; icon_state = "intact"},/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled,/area/engineering/foyer)
"bRr" = (/obj/machinery/portable_atmospherics/canister/phoron,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled/dark,/area/rnd/storage)
"bRs" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner/purple,/turf/simulated/floor/tiled/white,/area/rnd/research)
"bRt" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/white,/area/rnd/research)
@@ -4981,7 +4981,7 @@
"bRO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/rnd/mixing)
"bRP" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/rnd/mixing)
"bRQ" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/airless,/area/rnd/test_area)
-"bRR" = (/obj/machinery/door/window/eastright{name = "Engineering Delivery"; req_one_access = list(11,24)},/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 6; icon_state = "intact"},/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled,/area/engineering/foyer)
+"bRR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/engineering)
"bRS" = (/turf/simulated/floor/plating,/area/maintenance/cargo)
"bRT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"bRU" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/airless,/area/shuttle/mining/station)
@@ -4996,7 +4996,7 @@
"bSd" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/hallway/primary/aft)
"bSe" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/yellow{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/aft)
"bSf" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/camera/network/exodus{c_tag = "Primary Hallway Aft"; dir = 8},/obj/effect/floor_decal/corner/yellow,/turf/simulated/floor/tiled,/area/hallway/primary/aft)
-"bSg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/engineering)
+"bSg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/maintenance/engineering)
"bSh" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/maintenance/engineering)
"bSi" = (/obj/item/device/radio/intercom{dir = 8; pixel_x = -22},/obj/machinery/sleeper{dir = 4},/obj/effect/floor_decal/corner/pink{dir = 9},/turf/simulated/floor/tiled/white,/area/medical/sleeper)
"bSj" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/engineering)
@@ -5040,7 +5040,7 @@
"bSV" = (/obj/item/weapon/wrench,/obj/item/weapon/screwdriver{pixel_y = 10},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bSW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/sign/securearea{pixel_x = -32},/turf/simulated/floor/tiled,/area/rnd/mixing)
"bSX" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/camera/network/research{c_tag = "Research - Toxins Launch Room Access"; dir = 1},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/rnd/mixing)
-"bSY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/maintenance/engineering)
+"bSY" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/airless,/area/rnd/xenobiology/xenoflora)
"bSZ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/rnd/mixing)
"bTa" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"bTb" = (/obj/machinery/disposal,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -30; pixel_y = 0},/obj/structure/disposalpipe/trunk,/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/rnd/mixing)
@@ -5052,11 +5052,11 @@
"bTh" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"bTi" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/robotics{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/mecha_control{pixel_x = 1; pixel_y = -1},/turf/simulated/floor/plating,/area/storage/tech)
"bTj" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/aft)
-"bTk" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/airless,/area/rnd/xenobiology/xenoflora)
-"bTl" = (/obj/item/weapon/cigbutt,/turf/simulated/wall,/area/medical/surgery2)
-"bTm" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/medbay)
+"bTk" = (/obj/item/weapon/cigbutt,/turf/simulated/wall,/area/medical/surgery2)
+"bTl" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/medbay)
+"bTm" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 1},/turf/simulated/floor/tiled,/area/engineering/atmos)
"bTn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/cargo)
-"bTo" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 1},/turf/simulated/floor/tiled,/area/engineering/atmos)
+"bTo" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/engineering/storage)
"bTp" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = -24},/obj/effect/floor_decal/corner/yellow{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/aft)
"bTq" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/effect/floor_decal/corner/yellow,/turf/simulated/floor/tiled,/area/hallway/primary/aft)
"bTr" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/storage/tech)
@@ -5069,7 +5069,7 @@
"bTy" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/corner/paleblue{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/medbay4)
"bTz" = (/obj/machinery/door/firedoor,/turf/simulated/floor/tiled/white,/area/medical/medbay4)
"bTA" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/white,/area/medical/medbay4)
-"bTB" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/engineering/storage)
+"bTB" = (/obj/machinery/atmospherics/binary/pump{name = "Air Mix to Port"},/turf/simulated/floor/tiled,/area/engineering/atmos)
"bTC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/engineering)
"bTD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/engineering)
"bTE" = (/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/plating,/area/maintenance/engineering)
@@ -5097,7 +5097,7 @@
"bUa" = (/obj/structure/sign/nosmoking_2{pixel_x = -32},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/research{c_tag = "Research - Toxins Lab"; dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/visible{icon_state = "intact"; dir = 6},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bUb" = (/obj/structure/closet/crate,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/mining/station)
"bUc" = (/obj/machinery/atmospherics/binary/passive_gate{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
-"bUd" = (/obj/machinery/atmospherics/binary/pump{name = "Air Mix to Port"},/turf/simulated/floor/tiled,/area/engineering/atmos)
+"bUd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/engineering/storage)
"bUe" = (/obj/structure/disposaloutlet,/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/trunk{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/airless,/area/rnd/mixing)
"bUf" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled/airless,/area/rnd/test_area)
"bUg" = (/turf/simulated/wall,/area/rnd/misc_lab)
@@ -5169,11 +5169,11 @@
"bVu" = (/obj/machinery/airlock_sensor{id_tag = "tox_airlock_sensor"; master_tag = "tox_airlock_control"; pixel_y = 24},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/binary/pump{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/reinforced,/area/rnd/mixing)
"bVv" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "tox_airlock_pump"; tag_exterior_door = "tox_airlock_exterior"; id_tag = "tox_airlock_control"; tag_interior_door = "tox_airlock_interior"; pixel_x = -24; pixel_y = 0; tag_chamber_sensor = "tox_airlock_sensor"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/tvalve/bypass{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bVw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/rnd/research)
-"bVx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/engineering/storage)
+"bVx" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/maintenance/medbay)
"bVy" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/machinery/meter,/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bVz" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/airlock_sensor{pixel_y = -25},/turf/simulated/floor/airless,/area/rnd/mixing)
"bVA" = (/obj/machinery/mass_driver{dir = 4; id = "toxinsdriver"},/turf/simulated/floor/airless,/area/rnd/mixing)
-"bVB" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/maintenance/medbay)
+"bVB" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4},/turf/simulated/floor/tiled,/area/engineering/atmos)
"bVC" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/engineering_guide{pixel_x = 3; pixel_y = 2},/obj/item/weapon/book/manual/atmospipes,/obj/machinery/light{dir = 1},/turf/simulated/floor/carpet,/area/engineering/break_room)
"bVD" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/engineering_construction,/obj/item/weapon/book/manual/evaguide{pixel_x = -2; pixel_y = 7},/turf/simulated/floor/carpet,/area/engineering/break_room)
"bVE" = (/obj/structure/bookcase/manuals/engineering,/turf/simulated/floor/carpet,/area/engineering/break_room)
@@ -5255,7 +5255,7 @@
"bXc" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/hallway/primary/aft)
"bXd" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/corner/yellow,/turf/simulated/floor/tiled,/area/hallway/primary/aft)
"bXe" = (/obj/structure/closet/wardrobe/engineering_yellow,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/sleep/engi_wash)
-"bXf" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4},/turf/simulated/floor/tiled,/area/engineering/atmos)
+"bXf" = (/obj/machinery/portable_atmospherics/canister/phoron,/turf/simulated/floor/plating,/area/engineering/storage)
"bXg" = (/obj/structure/table/standard,/obj/item/bodybag/cryobag{pixel_x = 6},/obj/item/stack/medical/bruise_pack{pixel_x = -4; pixel_y = 3},/obj/item/stack/medical/bruise_pack{pixel_x = -4; pixel_y = 3},/obj/item/stack/medical/ointment{pixel_y = 10},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/sleep/engi_wash)
"bXh" = (/obj/structure/closet/wardrobe/atmospherics_yellow,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/sleep/engi_wash)
"bXi" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/wall/r_wall,/area/rnd/mixing)
@@ -5267,17 +5267,17 @@
"bXo" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/medical/sleeper)
"bXp" = (/obj/machinery/body_scanconsole,/turf/simulated/floor/tiled,/area/medical/sleeper)
"bXq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_one_access = list(7,12)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/research_starboard)
-"bXr" = (/obj/machinery/portable_atmospherics/canister/phoron,/turf/simulated/floor/plating,/area/engineering/storage)
-"bXs" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/plating,/area/engineering/storage)
+"bXr" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/plating,/area/engineering/storage)
+"bXs" = (/obj/machinery/atmospherics/pipe/tank/oxygen{dir = 2; volume = 3200},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/maintenance/incinerator)
"bXt" = (/obj/machinery/door/firedoor,/obj/machinery/door/blast/shutters{density = 0; dir = 4; icon_state = "shutter0"; id = "scanhideside"; name = "Diagnostics Room Privacy Shutters"; opacity = 0},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner/pink{dir = 9},/turf/simulated/floor/tiled/white,/area/medical/medbay4)
"bXu" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/structure/bed/chair/comfy/brown,/turf/simulated/floor/carpet,/area/engineering/break_room)
-"bXv" = (/obj/machinery/atmospherics/pipe/tank/oxygen{dir = 2; volume = 3200},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/maintenance/incinerator)
+"bXv" = (/obj/machinery/atmospherics/pipe/tank/phoron{dir = 2; volume = 3200},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/maintenance/incinerator)
"bXw" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/medical/sleeper)
"bXx" = (/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/structure/table/steel,/turf/simulated/floor/plating,/area/storage/tech)
"bXy" = (/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j1"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/white,/area/medical/medbay4)
"bXz" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/medbay4)
"bXA" = (/obj/machinery/newscaster{pixel_y = -32},/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = "CMO Office"; name = "CMO Office"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/medical/medbay4)
-"bXB" = (/obj/machinery/atmospherics/pipe/tank/phoron{dir = 2; volume = 3200},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/maintenance/incinerator)
+"bXB" = (/obj/structure/closet/emcloset,/turf/simulated/floor/tiled,/area/maintenance/incinerator)
"bXC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/tiled/white,/area/medical/medbay4)
"bXD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/white,/area/medical/medbay4)
"bXE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/medical/medbay4)
@@ -5330,14 +5330,14 @@
"bYz" = (/obj/machinery/button/remote/blast_door{id = "mixvent"; name = "Mixing Room Vent Control"; pixel_x = -25; pixel_y = 5; req_access = list(7)},/obj/machinery/button/ignition{id = "mixingsparker"; pixel_x = -25; pixel_y = -5},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/green,/obj/machinery/atmospherics/valve{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bYA" = (/obj/machinery/light,/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/machinery/meter,/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/mixing)
"bYB" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/research_starboard)
-"bYC" = (/obj/structure/closet/emcloset,/turf/simulated/floor/tiled,/area/maintenance/incinerator)
+"bYC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -7; pixel_y = -32; req_access = newlist()},/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 7; pixel_y = -32},/obj/effect/floor_decal/corner/purple{dir = 10},/turf/simulated/floor/tiled/white,/area/rnd/xenobiology)
"bYD" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 1},/area/shuttle/escape_pod5/station)
"bYE" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor/plating,/area/maintenance/cargo)
"bYF" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/rnd/research)
-"bYG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -7; pixel_y = -32; req_access = newlist()},/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 7; pixel_y = -32},/obj/effect/floor_decal/corner/purple{dir = 10},/turf/simulated/floor/tiled/white,/area/rnd/xenobiology)
+"bYG" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/turf/simulated/floor/plating,/area/engineering/storage)
"bYH" = (/obj/machinery/computer/atmos_alert,/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
"bYI" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/chief)
-"bYJ" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/turf/simulated/floor/plating,/area/engineering/storage)
+"bYJ" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/simulated/floor/tiled,/area/maintenance/incinerator)
"bYK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/crew_quarters/heads/chief)
"bYL" = (/obj/structure/table/reinforced,/obj/machinery/light{dir = 1},/obj/machinery/light_switch{pixel_x = 0; pixel_y = 27},/obj/machinery/computer/skills,/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
"bYM" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/crew_quarters/heads/chief)
@@ -5356,12 +5356,12 @@
"bYZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/sleep/engi_wash)
"bZa" = (/obj/structure/grille,/obj/structure/window/reinforced/polarized{id = "isoC_window_tint"},/obj/structure/window/reinforced/polarized{dir = 4; id = "isoC_window_tint"},/obj/structure/window/reinforced/polarized{dir = 1; id = "isoC_window_tint"},/obj/structure/window/reinforced/polarized{dir = 8; id = "isoC_window_tint"},/turf/simulated/floor/plating,/area/medical/patient_c)
"bZb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = -20; pixel_y = 22},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/sleep/engi_wash)
-"bZc" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/simulated/floor/tiled,/area/maintenance/incinerator)
+"bZc" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/structure/sign/deathsposal{pixel_x = 32},/obj/effect/floor_decal/industrial/warning/full,/turf/simulated/floor/plating,/area/maintenance/incinerator)
"bZd" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/sleep/engi_wash)
"bZe" = (/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -24},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/sleep/engi_wash)
"bZf" = (/turf/simulated/wall/r_wall,/area/maintenance/atmos_control)
"bZg" = (/turf/simulated/wall,/area/maintenance/atmos_control)
-"bZh" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/structure/sign/deathsposal{pixel_x = 32},/obj/effect/floor_decal/industrial/warning/full,/turf/simulated/floor/plating,/area/maintenance/incinerator)
+"bZh" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/wall/r_wall,/area/engineering/atmos/storage)
"bZi" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/medical/sleeper)
"bZj" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/tiled,/area/medical/sleeper)
"bZk" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/medical/sleeper)
@@ -5387,7 +5387,7 @@
"bZE" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Sub-Acute C"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/medical/patient_c)
"bZF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_port)
"bZG" = (/obj/machinery/door/airlock/glass_medical{name = "Hygiene Facilities"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor,/turf/simulated/floor/tiled/freezer,/area/medical/patient_wing)
-"bZH" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/wall/r_wall,/area/engineering/atmos/storage)
+"bZH" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle)
"bZI" = (/obj/machinery/light,/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled/white,/area/rnd/misc_lab)
"bZJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/misc_lab)
"bZK" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled/white,/area/rnd/misc_lab)
@@ -5402,8 +5402,8 @@
"bZT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/obj/machinery/meter,/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor/plating,/area/maintenance/research_starboard)
"bZU" = (/obj/item/weapon/wrench,/turf/simulated/floor/plating,/area/maintenance/research_starboard)
"bZV" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod{frequency = 1380; id_tag = "escape_pod_5"; pixel_x = 0; pixel_y = -25; tag_door = "escape_pod_5_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod5/station)
-"bZW" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle)
-"bZX" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/incinerator)
+"bZW" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/incinerator)
+"bZX" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/incinerator)
"bZY" = (/obj/structure/table/reinforced,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd,/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
"bZZ" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
"caa" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_5_hatch"; locked = 1; name = "Escape Pod Hatch"; req_access = list(13)},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod5/station)
@@ -5423,7 +5423,7 @@
"cao" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/engineering/foyer)
"cap" = (/obj/effect/floor_decal/corner/yellow,/turf/simulated/floor/tiled,/area/engineering/foyer)
"caq" = (/turf/simulated/wall,/area/crew_quarters/sleep/engi_wash)
-"car" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/incinerator)
+"car" = (/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = -30},/turf/simulated/floor/plating,/area/maintenance/incinerator)
"cas" = (/obj/structure/disposalpipe/sortjunction{sortType = "CE Office"; name = "CE Office"},/turf/simulated/floor/tiled,/area/engineering/foyer)
"cat" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = 0; pixel_y = -22},/turf/simulated/floor/tiled,/area/medical/sleeper)
"cau" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/medical/sleeper)
@@ -5453,7 +5453,7 @@
"caS" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/device/flashlight,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/research_port)
"caT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/meter,/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/plating,/area/maintenance/research_port)
"caU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/research_port)
-"caV" = (/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = -30},/turf/simulated/floor/plating,/area/maintenance/incinerator)
+"caV" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/incinerator)
"caW" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/biostorage)
"caX" = (/obj/structure/table/standard,/obj/machinery/computer/med_data/laptop,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/corner/pink/full{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/patient_c)
"caY" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/research_starboard)
@@ -5462,10 +5462,10 @@
"cbb" = (/obj/machinery/iv_drip,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/effect/floor_decal/corner/pink/full{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/patient_c)
"cbc" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/research_starboard)
"cbd" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/effect/floor_decal/corner/pink{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/patient_c)
-"cbe" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/incinerator)
+"cbe" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/maintenance/incinerator)
"cbf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/freezer,/area/medical/patient_wing)
-"cbg" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/maintenance/incinerator)
-"cbh" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/meter,/obj/machinery/button/remote/blast_door{id = "disvent"; name = "Incinerator Vent Control"; pixel_x = 0; pixel_y = -24; req_one_access = list(12,5)},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/maintenance/incinerator)
+"cbg" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/meter,/obj/machinery/button/remote/blast_door{id = "disvent"; name = "Incinerator Vent Control"; pixel_x = 0; pixel_y = -24; req_one_access = list(12,5)},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/maintenance/incinerator)
+"cbh" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/plating,/area/maintenance/incinerator)
"cbi" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/research{name = "Xenobiology Research"; req_access = list(47)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/rnd/research)
"cbj" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized{dir = 4},/obj/structure/window/reinforced/polarized{dir = 1},/turf/simulated/floor/plating,/area/crew_quarters/heads/chief)
"cbk" = (/obj/effect/landmark/start{name = "Atmospheric Technician"},/obj/structure/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/carpet,/area/engineering/break_room)
@@ -5474,13 +5474,13 @@
"cbn" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{name = "Medbay Diagnostics Maintenance Access"; req_access = list(5)},/turf/simulated/floor/plating,/area/medical/sleeper)
"cbo" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "eng_eva_outer"; locked = 1; name = "Engineering EVA External Access"; req_access = list(13)},/turf/simulated/floor/airless,/area/maintenance/atmos_control)
"cbp" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "eng_eva_airlock"; name = "exterior access button"; pixel_x = 0; pixel_y = 25; req_access = list(13)},/turf/simulated/floor/airless,/area/maintenance/atmos_control)
-"cbq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/plating,/area/maintenance/incinerator)
+"cbq" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 6; icon_state = "intact"},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/engineering)
"cbr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/cargo)
-"cbs" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 6; icon_state = "intact"},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/engineering)
+"cbs" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 5; icon_state = "intact"},/turf/simulated/floor/plating,/area/maintenance/engineering)
"cbt" = (/obj/structure/grille,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "psych"; name = "Mental Health Privacy Shutters"; opacity = 0},/obj/structure/window/reinforced/polarized,/obj/structure/window/reinforced/polarized{dir = 8},/obj/structure/window/reinforced/polarized{dir = 1},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/medical/psych)
"cbu" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "eng_eva_inner"; locked = 1; name = "Engineering EVA Internal Access"; req_access = list(13)},/turf/simulated/floor,/area/maintenance/atmos_control)
"cbv" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/tiled/steel,/area/maintenance/atmos_control)
-"cbw" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 5; icon_state = "intact"},/turf/simulated/floor/plating,/area/maintenance/engineering)
+"cbw" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/effect/decal/remains/robot,/turf/simulated/floor/plating,/area/engineering/drone_fabrication)
"cbx" = (/obj/structure/closet/secure_closet/engineering_chief,/obj/item/weapon/tank/emergency_oxygen/engi,/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
"cby" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
"cbz" = (/obj/machinery/keycard_auth{pixel_x = -24; pixel_y = 0},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for engine core."; id = "EngineVent"; name = "Engine Ventillatory Control"; pixel_x = -24; pixel_y = 10; req_access = list(10)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/button/remote/airlock{desc = "A remote control-switch for the engine core airlock hatch bolts."; id = "engine_access_hatch"; name = "Engine Hatch Bolt Control"; pixel_x = -24; pixel_y = -10; req_access = list(10); specialfunctions = 4},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
@@ -5493,8 +5493,8 @@
"cbG" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/corner/yellow,/turf/simulated/floor/tiled,/area/engineering/foyer)
"cbH" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_engineering{name = "Engineering Break Room"; req_one_access = list(10)},/turf/simulated/floor/tiled,/area/engineering/break_room)
"cbI" = (/turf/simulated/wall,/area/medical/surgeryobs)
-"cbJ" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/effect/decal/remains/robot,/turf/simulated/floor/plating,/area/engineering/drone_fabrication)
-"cbK" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle)
+"cbJ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle)
+"cbK" = (/obj/machinery/embedded_controller/radio/airlock/advanced_airlock_controller{id_tag = "engine_room_airlock"; name = "Engine Room Airlock"; pixel_x = -24; tag_airpump = "engine_airlock_pump"; tag_chamber_sensor = "eng_al_c_snsr"; tag_exterior_door = "engine_airlock_exterior"; tag_exterior_sensor = "eng_al_ext_snsr"; tag_interior_door = "engine_airlock_interior"; tag_interior_sensor = "eng_al_int_snsr"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/plating,/area/engineering/engine_airlock)
"cbL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/research_starboard)
"cbM" = (/obj/structure/urinal{pixel_y = 32},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/engi_wash)
"cbN" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/extinguisher_cabinet{pixel_x = 25; pixel_y = 0},/turf/simulated/floor/tiled/white,/area/medical/medbay4)
@@ -5545,7 +5545,7 @@
"ccG" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/extinguisher,/obj/item/device/flashlight,/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/plating,/area/maintenance/research_starboard)
"ccH" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
"ccI" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
-"ccJ" = (/obj/machinery/embedded_controller/radio/airlock/advanced_airlock_controller{id_tag = "engine_room_airlock"; name = "Engine Room Airlock"; pixel_x = -24; tag_airpump = "engine_airlock_pump"; tag_chamber_sensor = "eng_al_c_snsr"; tag_exterior_door = "engine_airlock_exterior"; tag_exterior_sensor = "eng_al_ext_snsr"; tag_interior_door = "engine_airlock_interior"; tag_interior_sensor = "eng_al_int_snsr"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/plating,/area/engineering/engine_airlock)
+"ccJ" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/plating,/area/engineering/engine_airlock)
"ccK" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_command{name = "Chief Engineer"; req_access = list(56)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
"ccL" = (/obj/item/device/radio/intercom{dir = 2; pixel_y = -22},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/engineering{c_tag = "Engineering - CE's Office"; dir = 1},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief)
"ccM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/research_starboard)
@@ -5619,7 +5619,7 @@
"cec" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora)
"ced" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/yellow,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora)
"cee" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/engineering/break_room)
-"cef" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/plating,/area/engineering/engine_airlock)
+"cef" = (/obj/machinery/atmospherics/pipe/simple/visible/black{dir = 10},/turf/simulated/floor/plating,/area/engineering/engine_waste)
"ceg" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "toxin_test_pump"; tag_exterior_door = "toxin_test_outer"; frequency = 1379; id_tag = "toxin_test_airlock"; tag_interior_door = "toxin_test_inner"; pixel_x = 0; pixel_y = 25; req_access = list(13); tag_chamber_sensor = "toxin_test_sensor"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/floor_decal/industrial/warning/cee{icon_state = "warningcee"; dir = 4},/turf/simulated/floor/plating,/area/maintenance/research_starboard)
"ceh" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "toxin_test_pump"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "toxin_test_sensor"; pixel_x = 0; pixel_y = 16},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/floor_decal/industrial/warning/cee{icon_state = "warningcee"; dir = 8},/turf/simulated/floor/plating,/area/maintenance/research_starboard)
"cei" = (/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/medical/psych)
@@ -5687,12 +5687,13 @@
"cfs" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora)
"cft" = (/obj/machinery/botany/extractor,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora)
"cfu" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/smartfridge,/obj/effect/floor_decal/corner/purple{dir = 9},/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora)
-"cfv" = (/obj/machinery/atmospherics/pipe/simple/visible/black{dir = 10},/turf/simulated/floor/plating,/area/engineering/engine_waste)
+"cfv" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "robotics_solar_inner"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/portsolar)
"cfw" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/plating,/area/maintenance/research_starboard)
-"cfx" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "robotics_solar_inner"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/portsolar)
+"cfx" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/storage/toolbox/emergency,/obj/item/weapon/reagent_containers/spray/sterilizine,/turf/simulated/floor/plating,/area/maintenance/engineering)
"cfy" = (/obj/item/clothing/mask/smokable/cigarette,/turf/simulated/floor/airless,/area/rnd/test_area)
"cfz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/airless,/area/rnd/test_area)
"cfA" = (/obj/machinery/light/small,/turf/simulated/floor/airless,/area/rnd/test_area)
+"cfB" = (/obj/machinery/light,/obj/structure/table/standard,/obj/item/weapon/flamethrower/full,/obj/effect/floor_decal/corner/white/diagonal,/turf/simulated/floor/tiled,/area/engineering/break_room)
"cfD" = (/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/structure/table/steel,/turf/simulated/floor/tiled,/area/construction)
"cfE" = (/obj/item/weapon/tank/emergency_oxygen/engi,/obj/random/tech_supply,/obj/effect/landmark{name = "blobstart"},/obj/structure/table/steel,/turf/simulated/floor,/area/construction)
"cfF" = (/obj/structure/sign/pods,/turf/simulated/wall/r_wall,/area/engineering/engine_eva)
@@ -5840,7 +5841,6 @@
"ciw" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/red,/turf/simulated/floor/tiled,/area/engineering/engine_eva)
"cix" = (/turf/simulated/floor/tiled,/area/engineering/engine_eva)
"ciy" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled,/area/engineering/engine_eva)
-"ciz" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor/plating,/area/maintenance/engineering)
"ciA" = (/turf/simulated/wall,/area/maintenance/substation/engineering)
"ciB" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/extinguisher,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/medbay)
"ciD" = (/obj/structure/table/rack,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/maintenance/engineering)
@@ -5927,12 +5927,12 @@
"ckh" = (/obj/machinery/light{dir = 1},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/sensor{name = "Powernet Sensor - Engineering Subgrid"; name_tag = "Engineering Subgrid"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/substation/engineering)
"cki" = (/obj/structure/table/standard,/obj/item/weapon/FixOVein,/obj/item/device/radio/intercom{dir = 8; pixel_x = -22},/obj/item/weapon/surgicaldrill,/turf/simulated/floor/tiled/white,/area/medical/surgery)
"ckj" = (/obj/machinery/computer/operating,/turf/simulated/floor/tiled/white,/area/medical/surgery)
-"ckk" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back."; name = "Surgery Cleaner"},/obj/effect/floor_decal/corner/pink{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/surgery)
+"ckk" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/pink{dir = 6},/obj/item/weapon/reagent_containers/spray/sterilizine,/turf/simulated/floor/tiled/white,/area/medical/surgery)
"ckl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/surgery)
"ckm" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue{dir = 9},/obj/item/device/radio/phone/medbay{name = "surgery emergency phone"},/turf/simulated/floor/tiled,/area/medical/surgeryprep)
"ckn" = (/obj/structure/disposalpipe/segment,/obj/item/roller,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/simulated/floor/tiled,/area/medical/surgeryprep)
"cko" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/medical/surgeryprep)
-"ckp" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back."; name = "Surgery Cleaner"},/obj/effect/floor_decal/corner/pink{dir = 9},/turf/simulated/floor/tiled/white,/area/medical/surgery2)
+"ckp" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/pink{dir = 9},/obj/item/weapon/reagent_containers/spray/sterilizine,/turf/simulated/floor/tiled/white,/area/medical/surgery2)
"ckq" = (/obj/machinery/computer/operating,/turf/simulated/floor/tiled/white,/area/medical/surgery2)
"ckr" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/surgery2)
"cks" = (/obj/structure/table/standard,/obj/item/weapon/FixOVein,/obj/item/device/radio/intercom{dir = 4; pixel_x = 22},/obj/item/weapon/surgicaldrill,/turf/simulated/floor/tiled/white,/area/medical/surgery2)
@@ -6492,7 +6492,7 @@
"cvn" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/engineering/workshop)
"cvo" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/airless,/area/solar/starboard)
"cvp" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/tiled,/area/engineering/atmos)
-"cvq" = (/obj/machinery/atmospherics/unary/freezer{dir = 2; icon_state = "freezer"},/turf/simulated/floor/tiled,/area/engineering/atmos)
+"cvq" = (/obj/machinery/bodyscanner{dir = 4},/turf/simulated/floor/tiled,/area/medical/sleeper)
"cvr" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled,/area/engineering/atmos)
"cvs" = (/obj/machinery/constructable_frame/machine_frame,/turf/simulated/floor/tiled,/area/engineering/atmos)
"cvt" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/steel_reinforced,/obj/item/stack/material/plasteel{amount = 10},/obj/item/stack/material/plasteel{amount = 10},/obj/item/stack/material/plasteel{amount = 10},/obj/item/stack/material/plastic{amount = 50},/obj/item/stack/material/plastic{amount = 50},/obj/item/stack/material/glass/phoronrglass{amount = 20},/turf/simulated/floor,/area/engineering/workshop)
@@ -7326,7 +7326,7 @@
"cMf" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; layer = 3.3; master_tag = "robotics_solar_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access = list(11,13)},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/plating,/area/maintenance/portsolar)
"cMg" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/turf/simulated/floor/plating,/area/maintenance/portsolar)
"cMh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/engi_engine)
-"cMi" = (/obj/machinery/bodyscanner{dir = 4},/turf/simulated/floor/tiled,/area/medical/sleeper)
+"cMi" = (/obj/machinery/atmospherics/unary/freezer{dir = 2; icon_state = "freezer"},/turf/simulated/floor/tiled,/area/engineering/atmos)
(1,1,1) = {"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -7404,8 +7404,8 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaauaauaauaauaauaauaauaauaauaauaauaauaauaauaauaauaauaauaauaauaauaaaaaaaaaaaaaaaaaqaafaasaeraavaaaaasaeraavaaaaasaeraavaafaaaaafaafaafaaaaaaaaaaaaaaaaaaadTaegacpacpacpacpacpacpaesacpacpacpaeuaetaezaevaeBaeAaeDaeCaeGaeEaeHaeEaeKaeIacradBaeRabbaaaaafaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaauaauaauaauaauaauaauaauaauaauaauaauaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaaaaafaaaaaaaaaaafaafaafaaaaaaaafaafaaaaaaaafaafaaaaaaaaaaaaaaaaafaaaaewadeadQaeyaecaaTaeMaeLaeOaeNaePaeFaeYaeXaeZaeXadpaeoaeJafaafbafbafcafbafeafdaexaeQaflabbaeSaeSaeSaeSaeSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaauaauaauaauaauaauaauaauaauaauaauaauaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamaaIafmaamaamaamaamaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaafaafabfadeaeUaeVafyaaTafgaeMafiafhafjaeFafoafnaftafpadpafuaffafvadhadhafwadhafzafxacrafkafAabbafLafBafCafCafDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaacaaaaaaaaaaaaaauaauaauaauaauaauaauaauaauaauaauaauaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfabfabfabfabfabfabfabfabfabfabfabfabfadeagbaedaeTaaTafFafEafHafGafGafIafMafKafNafKagdafOadxageagfaeoaggagfagjagiagkafJaglagqadlagragmaghafPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaauaauaauaauaauaauaauaauaauaauaauaauaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfafQafRafSabfafTafUaeWafqagBafZafZafZafZafZafZafZafragnagnaguaaTagtagsaeOagxagyaeFagEagzagLagHagOagMagoagpahaagKagPahbahkagpagvagwafsabbadlagRafCafCagSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaacaaaaaaaaaaaaaauaauaauaauaauaauaauaauaauaauaauaauaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfabfabfabfabfabfabfabfabfabfabfabfabfadeagbafraedaaTafFafEafHafGafGafIafMafKafNafKagdafOadxageagfaeoaggagfagjagiagkafJaglagqadlagragmaghafPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaauaauaauaauaauaauaauaauaauaauaauaauaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfafQafRafSabfafTafUaeTaeWagBafZafZafZafZafZafZafZafqagnagnaguaaTagtagsaeOagxagyaeFagEagzagLagHagOagMagoagpahaagKagPahbahkagpagvagwafsabbadlagRafCafCagSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauaauaauaauaauaauaauaauaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaabfafVagBafZafZafZafZafZafZafWagDagDagDagDagDagDagDagDagDagDahmaaTagFagGagXagIagJaeFagZagYagYagYadpahcagNahdaheaheahfaheaheahhagvagTadlabbabbaeSaeSaeSaeSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaaaaeaaeaaeaaeaaeaaaaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauaauaauaauaauaauaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfagUadEagWagWagWagWagWagWagWagDahiahlahjagWahnahpahoahqahrahsahgahuahtahwahvahCahzahFahDahDahDadpahGahMahHahJahIahNahLahQahOagvahxafXaboaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahPaaaaaaahPaaaaaaaaaahPaaaaaaaaaaaaaaaahPaaaaaaaaaahPaaaaaaahPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaaaaeaaeaaeaaeaaeaaaaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfafQafRahAabfaiDadEagWahSahRahEahTahVahUagDahjahWahTahYahXahXahXaiaahZaimaibaigaigaihaigaikaiiadhadhadhaenadpailaioainaipaiRairaiqaitaisagvahxadlabOaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahPahPahPahPaaaaaaaaaahPahPahPahPahPahPahPaaaaaaaaaahPahPahPahPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -7442,88 +7442,88 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaT
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaIwaFlaFlaDKaFlaFMaFlaFMaIxaFMaIyaFMaFlaGbaEIaGcaDnaHIaIAaIAaHJaGXaHRaGXaIAaIAaIEaIFaFCaGQaHSaHUayNaFCaHYaIhaIcaFnaFnaIiaFnaImaIjaKPaCMaaaaBYaBYaIQaIoaIQaBYaBYaaaazJazOazPaIqaIpaItaIsaBMazIaIWaIXayLaIBazyaICaElaBQaIGaEmaAIaIHaHsazyaIIaJeaILaIJaIMaMbaIOaCuaCuaCuaCuaCuaISaIPaJlaITaIUaBjaIYaBjaIZaBjaJaaBjaJraGpaJcaJbaGsaGsavOaAzaDsaDsaLdaDsaDsaJdaDsaGsaJyaGsaGsaGsaJzaAKaHXaHWaIaaLeaIraIbaIbaIbaIRaINaIgaJIaJJaLiaJkaJMaJNaIgaJgaJfaGFaJhaJmaJjaJnaHyaJoaHAaJqaJpaGGaGGaGGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaEJaJsaIDaGaaFlaFMaFlaFMaFlaFMaFlaFMaFlaGbaEIaGcaDnaJAaJtaJFaJEaJHaJHaJLaJKaJPaJOaJQaLwaJZaJSaJGaKaaFCaHYaJUaJTaJXaJVaHYaJYaKiaKdaKtaKuaaaaafaaaaJxaKjaJxaaaaafaaaaKuazOazPaKmaKlaKoaKnaKpazPaKCaKDayLaKqazyaAXaKsaKraGWazyaKxaKwaKvaKyaKzaJeaKBaKAaKFaKEaKGaKJaaaaaaaJlaKHaKKaKIaJlaKLaIUaIUaIUaKMaIUaIUaIUaBjaDpaKNaDpaDpaDpaDpaMEaDpaKZaKOaKSaKQaKUaKTaLfaKWaLhaLfaLfaLfaLfaLfaNcaLfaLfaLfaLfaLfaLfaLfaLfaJRaIgaLjaJWaLlaEFaKbaLoaIgaKYaKXaGFaLaaLcaLbaJnaLgaJoaHAaJqaHAaLmaLkaKRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaLnaLpaDgaEHaGqaFlaFlaLqaFlaFlaNPaFlaGHaEJaEIaLraDnaLtaLsaLyaLuaLyaLyaLyaLyaLyaLzaLAaFCaFCaFCaFCaFCaFCaLLaLBaLNaLOaLOaLOaLOaLPaLCaLRaKuaLFaLxaLxaLSaLEaLTaLxaLxaLUaKuaNXaKuaKuaLWaLGaLWaJeaJeaMbaOiaJeaJeaJeaJeaLZaLXaLIaLHaMeaMdaJeaJeaJeaJeaLJaKAaLMaLMaLQaMhaMmaMiaJlaLVaMaaLYaJlaJlaJlaJlaJlaJlaJlaJlaBjaBjaMjaMcaMlaMkaMpaLvaMyaMfaKZaMraMtaMsaMsaMuaLfaMvaMxaMwaMAaMzaMCaMBaMDaMnaMFaMAaMCaMzaMAaMGaLfaJRaIgaMPaMgaMRaMSaMqaMUaIgaMIaMHaMKaMJaMNaMLaMOaGFaGGaMQaJqaHAaLmaMTaMoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaLnaDgaDKaDgaDgaDiaDjaDgaDgaDKaLpaMVaBIaMWaLtaMMaMXaMXaMYaMXaNaaIAaNbaLzaNfaNeaNhaNgaNkaNiaNlaNkaNmaNkaNkaNkaNnaNkaNkaNoaNqaNpaNraNraNtaNsaNuaNraNraNraNraNvaNxaNwaNyaNkaNAaNzaNCaNBaNEaNDaNEaNFaNHaNGaNIaNIaNKaNJaNLaNJaNNaNMaNQaNOaLMaKAaLMaLMaLMaLMaLMaLMaNRaLYaNTaNSaNWaNVaNZaNYaObaOaaOcaJlaBFaBfaBKaOjaOlaOlaOmaMZaOwaNdaKZaOnaOpaOoaOoaOqaLfaOraOtaOsaOsaOsaOsaOuaOxaOvaOzaOyaOAaOAaOCaOBaLfaJRaIgaONaOOaNjaOfaONaONaIgaOEaODaGFaOFaOHaOGaOIaGFaHAaHAaJqaHAaGGaGGaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaLnaDgaDKaDgaDgaDiaDjaDgaDgaDKaLpaMVaBIaMWaLtaMMaMXaMXaMYaMXaNaaIAaNbaLzaNfaNeaNhaNgaNkaNiaNlaNkaNmaNkaNkaNkaNnaNkaNkaNoaNqaNpaNraNraNtaNsaNuaNraNraNraNraNvaNxaNwaNyaNkaNAaNzaNCaNBaNEaNDaNEaNFaNHaNGaNIaNIaNKaNJaNLaNJaNNaNMaNQaNOaLMaKAaLMaLMaLMaLMaLMaLMaNRaLYaNTaNSaNWaNVaNZaNYaObaOaaOcaJlaBfaOeaOkaOjaOlaOlaOmaMZaOwaNdaKZaOnaOpaOoaOoaOqaLfaOraOtaOsaOsaOsaOsaOuaOxaOvaOzaOyaOAaOAaOCaOBaLfaJRaIgaONaOOaNjaOfaONaONaIgaOEaODaGFaOFaOHaOGaOIaGFaHAaHAaJqaHAaGGaGGaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNUaOdaOZaPaaPaaPaaPaaPbaOdaNUaaaaBIaOJaOKaOXaOLaOgaPhaPhaOMaIAaOPaLzaORaOQaOTaOSaOVaOUaOWaOWaPcaOYaOYaOYaPeaPdaPdaPfaPgaNzaOWaOWaPjaPiaPlaPkaPmaPmaPnaPmaPoaPiaPiaPiaPqaPpaPsaPraLMaPtaPuaPuaPuaPuaPuaPuaPuaPuaPvaPuaPxaPwaPyaPuaPAaPzaPBaPuaPuaPuaPCaPuaPEaPDaPFaPDaPDaPDaPDaPDaPDaPGaPHaRsaPIaPIaPIaPJaPIaPIaPKaQeaQfaRxaKZaPMaMsaPNaPPaPOaLfaPQaPSaPRaPRaPRaPRaPRaPTaPLaPWaPUaPRaPRaPYaPXaLfaJRaIgaQuaONaONaQvaONaQwaIgaGFaGFaGFaGFaGFaGFaPZaGFaHAaHAaJqaHAaQbaQaaGGaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaafaBIawqaBIaPVaQCaGOaQdaQcaQhaQgaGOaQCaQBaQpaBIaQiaLtaOXaQjaQLaPhaPhaOMaIAaQkaLzaNfaLsaNhaPpaQlaNkaNkaQmaQoaQnaQqaNkaQsaQraQtaQraQyaQxaQraQraQzaQraQraQAaQDaQraQEaQraQFaNkaNkaNkaQGaPpaPsaPraLMaQHaLMaQIaQIaQIaQIaQIaQIaQIaQIaQJaILaQIaQKaQIaQIaQMaQIaQIaQIaQIaQPaQNaQRaQQaQQaQQaQQaQQaQQaQQaLYaQSaLYaJlaQUaQTaQTaQTaQTaQTaQVaRuaRvaRwaKZaKZaKZaKZaKZaQWaLfaQXaPSaPRaRaaQZaRcaRbaRdaQOaReaPUaRgaRfaRjaRhaLfaJRaIgaRKaRKaRLaRMaRNaRNaROaIgaRkaRmaRlaGGaRoaRqaRpaRraRraRzaRyaGGaRAaGGaRZaRZaRZaRiaQYaRnaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaGeaGgaGgaGiaRBaRCaREaOdaLDaDnaRDaRDaRFaLDaOdaLDaRGaRIaRHaLtaSaaRJaRJaMYaRJaNaaIAaRPaLzaRQaIAaLKaLKaSVaLKaLKaLKaLKaLKaLKaPpaRRaLKaLKaLKaLKaLKaLKaSraRSaSraLKaSZaLKaNkaQlaRTaRVaRUaRWaNkaQGaRXaMbaMbaLMaRYaKFaScaMmaMmaSdaSdaSdaSdaSkaJeaSqaSpaSBaSAaSAaSCaSAaSAaSBaSpaSJaJeaSLaSKaSKaSKaSKaSMaSMaTbaSbaQSaLYaJlaUxaUlaUlaUlaUlaUlaUlaSQaSRaSSaSTaUJaSfaSeaSXaSgaKZaKZaShaTaaTdaTcaTfaTeaTeaTeaTxaSiaTxaTeaTeaTeaTeaJRaIgaThaONaRLaRMaONaONaTiaIgaSjaSmaSlaGGaHAaSoaSnaToaSsaStaHAaSvaSuaGGaSwaSxaRZaSzaSyaTIaafaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVeaVgaVfaBVaBTaBXaBWaCiaCeaCnaCiaDAaDqaEVaEzaFiaEYaEzaFjaTtaTraTvaTuaLyaLyaLyaTwaLyaLzaTyaIAaFuaXeaVAaTSaTAaTzaTCaTBaTEaTzaTJaTFaTLaTKaTNaTMaUeaTOaTTaTPaUeaUiaLKaLKaVIaLKaLKaLKaLKaUkaTUaLKaUmaMbaTVaRYaKFaUAaaaaaaaaaaaaaaaaaaaaaaUpaTXaTWaTZaTYaUbaUaaUdaUcaUgaUfaUhaUpaaaaaaaaaaaaaaaaaaaaaaVqaSbaQSaUjaUCaUDaUEaUFaUFaUFaUFaUGaUHaUIaUFaUFaUFaUoaUnaULaUqaUsaUraUuaUtaUwaUvaUyaTxaUBaUzaUMaUKaUNaUZaVaaVbaTeaJRaIgaVcaVcaRLaRMaVdaVdaWyaIgaIgaUOaIgaGGaUPaUQaViaViaViaUSaURaGGaGGaGGaUTaUVaUUaUYaUXaVvaafaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaVeaVgaVfaBKaBFaBVaBTaBXaBWaCeaBXaCnaCiaDAaDqaEVaEzaDqaEYaTtaTraTvaTuaLyaLyaLyaTwaLyaLzaTyaIAaFiaXeaVAaTSaTAaTzaTCaTBaTEaTzaTJaTFaTLaTKaTNaTMaUeaTOaTTaTPaUeaUiaLKaLKaVIaLKaLKaLKaLKaUkaTUaLKaUmaMbaTVaRYaKFaUAaaaaaaaaaaaaaaaaaaaaaaUpaTXaTWaTZaTYaUbaUaaUdaUcaUgaUfaUhaUpaaaaaaaaaaaaaaaaaaaaaaVqaSbaQSaUjaUCaUDaUEaUFaUFaUFaUFaUGaUHaUIaUFaUFaUFaUoaUnaULaUqaUsaUraUuaUtaUwaUvaUyaTxaUBaUzaUMaUKaUNaUZaVaaVbaTeaJRaIgaVcaVcaRLaRMaVdaVdaWyaIgaIgaUOaIgaGGaUPaUQaViaViaViaUSaURaGGaGGaGGaUTaUVaUUaUYaUXaVvaafaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaYgaYkaYiaYmaDnaVkaVjaVlaVjaVjaVjaVmaVjaVjaVlaVjaVjaVoaVnaVpaLsaLyaLyaLyaLyaLyaVsaVuaVtaVwaIAaXeaXeaVAaTSaVxaTzaTzaTzaTzaTzaTJaVyaTzaTzaTzaTMaUeaVzaVCaVBaUeaUiaVGaVHaKeaKcaVKaUmaVEaVDaVLaVFaVMaVQaLMaRYaKFaUAaaaaaaaaaaaaaUpaUpaUpaUpaVOaVNaVRaVPaVUaVTaVPaVUaVRaVNaVVaUpaUpaUpaUpaaaaaaaaaaaaaVqaSbaQSaLYaWcaSSaSPaWeaTkaSSaTsaUWaWiaVSaXnaVWaWmaVXaPIaVZaVYaWbaWaaWfaWdaWdaWgaWkaWjaWoaWnaWqaWpaWraWCaWDaWEaTeaJRaIgaThaONaRLaRMaONaONaONaXGaWGaONaWHaGGaWsaWtaToaToaToaStaHAaHAaGGaWvaWuaWxaWwaUYaWAaWUaWTaWTaWVaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWWaTHaTHaTHaTHaTHaTHaTHaWXaBIaBLaWBaWFaIAaXcaXbaXbaXbaYraWIaIAaIAaIAaIAaXeaXeaGkaTSaWJaTzaTzaWKaWNaWLaWQaWOaTzaTzaTzaWRaUeaWSaWZaWYaUeaUiaVGaXpaKfaXraXsaUmaXdaVMaXhaXgaXiaXxaLMaRYaKFaMhaSkaMbaXyaUpaUpaXjaXlaXkaXmaVRaVRaVPaVUaXoaVPaVUaVRaVRaVRaXtaXvaXuaUpaUpaXyaJlaXLaXwaSbaQSaLYaJlaYyaSPaYAaTkaSSaXPaXQaSSaWhaXSaTkaSSaXzaOlaXUaXAaUtaXBaGwaXCaXFaXEaXHaYcaXIaUzaXNaXJaWraYhaWDaXOaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaXRaGGaHAaXVaXTaToaXWaXYaXXaXZbaOaYbaYaaYdaUYaYfaGAaGBbbwbhqbbAaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaXMaYoaYnaYpaWPaYqaYqaYuaYsaYwaYvaYzaYxaYOaGEaYQaYRaYCaTSaYDaTzaTzaWKaWLaYEaYFaWKaTzaTzaYGaTMaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYHaXgaYIaXgaXgaXxaLMaRYaKFaNJaNJaYJaYLaYKaUpaYMaYSaYNaYUaYTaYWaYVaYYaYXaZaaYZaZdaZcaZeaYNaZgaZfaUpaZhaZbaZiaZkaZjaSbaQSaLYaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaXzaOlaZqaXAaUtaZlaZnaZmaZraXEaUtaZwaXIaUzaXNaXJaWraYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZsaZuaZtaToaZvaZtaHAaHAaXaaZJaUYaZLaUYaZNaZMaZPaZRaWTaZSaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbaMaZTaZUaZOaZQaSFaYqaZVaZXaZWaZZaZYbabbaaaYObagbahbaibajaTSbadbacbafbaebalbakbanbambambambapbaoaTSaGVbavbawbaxaKgbajbnZaKhbajbbLaUmbarbaqbatbasbaBbaIaLMbaCbaDaLMbaFbaEbaHbaGbaKbaJbaNbaLbaPaUpaUpaUpaUpaUpbcDaUpaUpaUpbaRbaQbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaJlaUDaSPbboaTkaSSaZAaZEbbraZKaYAaTkaSSaXzbbdaULaXAbbgbbebbhaUtaUtaXEbbibbybbkbbjbblaXJaWrbbCaWDbcPaZzbbmbbnbbnbcwbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbpaXVaXTaToaXWaXTaHAbbqaGGbbtaUYaZLaUYaZNbbubbvbcyaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbhsbhraHebbzbbBaSFaZXaZXaZXaZXaZXbbDbbGbbFaYObbXbbYbaibbZbbZbbZbbZbbJbbZbbKaTzbbNbbMbbObbObbQbbPaTSaXebchbcibbSbbRbbTblcaKkbcobcobcpbcpbcpbcpbcpbcqaMbbbVbbUbcabbWbccbcbbcebcdaUpbcfbcjbcgaUpaUpaaaaaabckbckbclaaaaaaaUpaUpbcnbcrbcfaUpbcdbcxbcsbcubctbczbcvaLYaWcaSSaSSaSSaSSaSSaGpbcMaSSbcNaSSaSSaSSaSSaSSbcBbcAbcEbcCaUtaUtaUtbcFbcGaTebcIbcHbcJaXJaWraYhaWDbcYaZzbcKbcQbcLbdubddbdebddbddbddbddbddbdfbdgbcSbcRbcUbcTbdlbcVbcXbcWbdabcZbdbaUYaZLbdcaZNaUYbdhbcyaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTGaGgaTHaGiaBIaBIaBIaWWaTHaTHaTHaTHaTHaTHaTHaWXaBIaBLaWBaWFaIAaXcaXbaXbaXbaYraWIaIAaIAaIAaIAaXeaXeaFjaTSaWJaTzaTzaWKaWNaWLaWQaWOaTzaTzaTzaWRaUeaWSaWZaWYaUeaUiaVGaXpaKfaXraXsaUmaXdaVMaXhaXgaXiaXxaLMaRYaKFaMhaSkaMbaXyaUpaUpaXjaXlaXkaXmaVRaVRaVPaVUaXoaVPaVUaVRaVRaVRaXtaXvaXuaUpaUpaXyaJlaXLaXwaSbaQSaLYaJlaYyaSPaYAaTkaSSaXPaXQaSSaWhaXSaTkaSSaXzaOlaXUaXAaUtaXBaXDaXCaXFaXEaXHaYcaXIaUzaXNaXJaWraYhaWDaXOaTeaJRaIgaYjaYjaRLaRMaWlaONaONaYlaONaWzaXRaGGaHAaXVaXTaToaXWaXYaXXaXZbaOaYbaYaaYdaUYaYfaFuaGkbbwbhqbbAaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafaXMaYoaYnaYpaWPaYqaYqaYuaYsaYwaYvaYzaYxaYOaGwaYQaYRaYCaTSaYDaTzaTzaWKaWLaYEaYFaWKaTzaTzaYGaTMaUeaUeaUeaUeaUeaUiaVGaVGaVGaVGaVGaUmaYHaXgaYIaXgaXgaXxaLMaRYaKFaNJaNJaYJaYLaYKaUpaYMaYSaYNaYUaYTaYWaYVaYYaYXaZaaYZaZdaZcaZeaYNaZgaZfaUpaZhaZbaZiaZkaZjaSbaQSaLYaWcaSSaSSaSSaSSaSSaXPaZoaSSaWhaZpaTkaSSaXzaOlaZqaXAaUtaZlaZnaZmaZraXEaUtaZwaXIaUzaXNaXJaWraYhaZxaZyaZzbbfaZzaZzaZzaZBaZCaZDaYtaOOaZFaZGaZHaZIaGGaZsaZuaZtaToaZvaZtaHAaHAaXaaZJaUYaZLaUYaZNaZMaZPaZRaWTaZSaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbaMaZTaZUaZOaZQaSFaYqaZVaZXaZWaZZaZYbabbaaaYObagbahbaibajaTSbadbacbafbaebalbakbanbambambambapbaoaTSaGAbavbawbaxaKgbajbnZaKhbajbbLaUmbarbaqbatbasbaBbaIaLMbaCbaDaLMbaFbaEbaHbaGbaKbaJbaNbaLbaPaUpaUpaUpaUpaUpbcDaUpaUpaUpbaRbaQbaTbaSbaVbaUbaXbaWbaZbaYbbbbbabbcaJlaUDaSPbboaTkaSSaZAaZEbbraZKaYAaTkaSSaXzbbdaULaXAbbgbbebbhaUtaUtaXEbbibbybbkbbjbblaXJaWrbbCaWDbcPaZzbbmbbnbbnbcwbbHbbIaRLaRLaRLaRLaRLaRLaRLaGGbbpaXVaXTaToaXWaXTaHAbbqaGGbbtaUYaZLaUYaZNbbubbvbcyaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbhsbhraGBbbzbbBaSFaZXaZXaZXaZXaZXbbDbbGbbFaYObbXbbYbaibbZbbZbbZbbZbbJbbZbbKaTzbbNbbMbbObbObbQbbPaTSaXebchbcibbSbbRbbTblcaKkbcobcobcpbcpbcpbcpbcpbcqaMbbbVbbUbcabbWbccbcbbcebcdaUpbcfbcjbcgaUpaUpaaaaaabckbckbclaaaaaaaUpaUpbcnbcrbcfaUpbcdbcxbcsbcubctbczbcvaLYaWcaSSaSSaSSaSSaSSaGpbcMaSSbcNaSSaSSaSSaSSaSSbcBbcAbcEbcCaUtaUtaUtbcFbcGaTebcIbcHbcJaXJaWraYhaWDbcYaZzbcKbcQbcLbdubddbdebddbddbddbddbddbdfbdgbcSbcRbcUbcTbdlbcVbcXbcWbdabcZbdbaUYaZLbdcaZNaUYbdhbcyaafaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBbdXbdWaZUbdibdjaSFaYqbdkaZXaZWbdmbbDbbGbdnaYObdobdpbaibbZbdqbdsbdrbdtbbZbdwbdvbdxaTSbdAbdzbdCbdBaTSaXebdObdPbdPbfebdPbdPbdPbdPbdDbdSbdSbdSbdTbdSbdUaMbbdFbdEaIMbdYbdYbdYbdYbdYbdYbdZbfobdZbdYbebbebbebbebbebbecbebbebbebbedbedbdGbedaUpaUpaUpaJiaJiaJibczbcvaLYaJlbefbegaDmbehaSSbeibcMbejbfwbdHaSSaSSbembcOaZzaZzaZzbdIbdJbdJbdJaZzaZzaZzbdLbdKbdNbdMaWraYhaYhbeuaZzbdQbdVbdRaZzbeybbsbeAaYtbfybbEbeDbcmaONaGGaHAbeebeaaTobeebekaHAaHAaGGbelaUYaZLaUYaZNbenbeobcyaafaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafbeObeqbepberaRtaYqbesbevbetbdmbbDbezbewaYObeBbeFbaibbZbbZbbZbeGbeHbbZbeIbdvbeJaTSbdAbdzbdCbeKaTSaXebdObdPaHubeLbePbeNbeNbdPbfibeQbeSbeRbfmbfmbfmaMbaLMbbUbcabdYbfnbgMbfpbgNbfrbfsbftbfubdYbebbfvbgUbfvbgWbgXbfvaHMbebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibeUbeTbeVaJlaZzaZzaZzaZzbeWbfObeXbfQaZzaZzbfRaZzaZzaZzaZzbeYbfabeZbfcbfbbffbfdbfgaZzbfYbfhbfkbgbbgcbgcbgcbgdaZzbdQbdVbflaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbfqbgibfxbgfbggaZzaRZbfAaUYaZLaUYaZNaZMbglbgmaWTaZSaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaabgnbgobgpbgqaZUbgrbgrbgrbgrbgrbgrbfKbfLbgraYOaYOaYOaYOaYObhCaYOaYOaYObfMbfMbaibbZbdqbfNbeGbfPbbZbfTbfSbfTaTSbdAbdzbdCbeKaTSaXebdObdPbfVbfUbfWbfWbfXbdPbfibfZbghbgabgkbgjbgsaMbbgubgtbcabhNbivbgObgPbexbexbgRbgSbgvbdYbebbmIbgxbhSbhRbfzbgybhTbebbedbgzbhbbhcbeCbhUbeEbhgbhhaJibgBbgAaLYbgCbgEbgDbdVbdVbgFbdVbgGbdVbdVbdVbdVbgHbdVbdVbdVbdVbgIbdVbdVbdVbdVbdVbdVbgDbdVbdVbgKbgJbgJbfabgJbgJbgTbgLbdVbgIbgYbgVbgHbdVbhabdVbdVbdVbhibhebhkbhjbdVbhlbdVbhmbdVbdVbgDbhnaWuaUYaZLaUYbhpaHNaHTbjdbklbkjaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaafbhGbeqbhuaHZaHVaKVaJvaOhaOeaKVaOkaSIaSHbajaSNaSObaibbZbbZbbZbhzbeHbbZaTSaTSaTSaTSbdAbhAbhDbhBaTSaSUbifbdPbhFbhEbhIbhHbhJbdPbfibhKbghbgabgabgabhLaMbbhMaRYbcabjVbiobipbfjbirbisbfBbiubjMbdYbebbiwbhQbiybjYbiybgybgebebbedbiAbiBbiCbgQbiEbgZbiGbhVaJibhXbhWbiabhYbicbibbidbidbihbigbijbiibiibiibikbiibiibiibiibiibimbilbilbilbinbidbidbibbidbidbitbilbilbixbiibiFbiIbiHbiibiJbidbidbidbidbidbidbidbidbidbidbidbidbidbiKbikbiLbiibiMbiObiNbiPbiPbiRbiQaZNaWAbjhaWTaWTaWVaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObaMaZTbjlaZObiSbgrbjpbjpbiTbjpbjpbjpaSWbjmbkeaSYaXebaibbZbdqbiVbiUbfPbbZbbLbbLbbLaTSaTSaTSaTSbkkaTSbjxbdObdPbiXbiWbhHbhJbiYbdPboibfmbiZbgabgabgabjaaMbbjbaRYbcabkAbkHbgObhdbjIbjJbhfbjLblybdYbjcbkKbknbiybjebiybgxbkMbjgbedbjTbjUbizbjWbjWbjWbjXbkNaJibjjbjibjnbjkbjqbjobbnbjsbjvbjtbjybjwbjzbbnbjCbdVbdVbjDbdVbdVbdVbdVbdVbjEbjNbjHbdVbjPbjRbjQbjSbdVbjEbjZbkbbkabgDbdVbdVbkdbdVbdVbkfbjDbdVbjEbdVbdVbdVbdVbdVbdVbdVbdVbdVbgIbdVbdVbgDbkgbkibkhbkpaTgaTjbkmblMaafaaaaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObmeblSaTlbkqbksbgraTmbkQbkRbkRbkSbkTaTpaTnaTQaTqbmlbmobbZbbZbbZbeGbkubbZbajbajbajbajblaaXeaXeblbblcbldbleblfbkwbkvbkybkxbkzbdPbohbfmbkBbgabkCbgabkDblpbkEaRYbcabdYbmEblsbltbkFbkIbkGbkJbdYbdYbebblzblAbmHbmFblDblAbiDbebbedbedbkLblGbkOblIbiCblJblKaJibkPbeTbeVaJiblOblOblOblOblOblOaZzaZzblPblQbkXbkVblQblPaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbkYaZzaZzaZzaZzaZzaZzbmTaZzbdVbdVbkZblhblgblOblOblOblOblObliblibliblkbljbdVbllblkblnblibliblObmcbmcbmcbnsaRZaRZaRZaRZaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdXbdWbjlaZOblobgrbmgbjpbmhbmibjpbjpbjpbmVbmjbmkbmkbmWbbZbdqblqbeGblrbbZaVhaTRaVrbmrbmsbmtbmtbmubmtbmtbmvbdPblvblublwbhJblxblfblmblBblCbgabgablEblHblFbkEaRYblLbmGbmGbmGbmGbmGbmGbmGblNbmGaafbebbmIblRbmKbnJbmKblTbjKbebaafbedbmObnwbmQbmRbiCbiGbmSaJibczaQSaLYaJiblVaWMblXblWblYbmYbmablZbmfbmbbmnbmmbmbbmwbmzbmybnibmAbmCbmBbmDbnnbmLbmJbmNbmMbmZbmPbmPbnabYfaVJblOblObnbblObndbndblObnebnhbngblObnjbnkbnjblObnlblibnmblObnobnpbnoblObnqbnrbnIbpEboDbpJbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaaboJbnubntbnvbgrbnxboWbpmbnTaXDaXfbjpbpsaYebnYbnZbmWbbZbbZbbZbbZbbZbbZboabobbocaXebdObdPbdPbdPbdPbdPbdPbdPbnybdPbdPbdPbogbdPbfmbnzblCbgabgabgabnAblpbkEaRYbnBbmGbombnCbncbnDbvGbotbnEbotaafbebboubowbowboxboyboybnfbebaafbedbnFboCbpHbpGbiCbiGboFaJibnHbnGaLYbXHbnLbnKbnObnNbnQaYPbnSbnRbnUbnUbnWbnVbnXbnXbojbofboXbokbonbolboobnnboqbopbosbmPbnabovbmPbnabYfaVJbpjbozboEboBboGboEbppboHboKboIboMboLboOboNblOaZzboPbpxblOboQboSboRboUboTboVbnIbqUbpLbpJbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaabgnbgobgpbgqbdWbpObpObpObrsbpObrCboZboYbpabgrbpbbjpbbxbaubpcbpRbqHbqGbqKbqKbqKbqMbkWbpUbkWbkWbkWbkWbpVbpWbpWbpWbdybdPbpebpdbpgbpfbpibphbpnbpkbqhbpqbptbqkbqkcKDbpubgabgabpwbfmaMbbpzbpybpAaJubqqbpBbpDbpCborbrobpIbotaafbebbebbpKbebbrubebbpMbebbebaafbedbqzboCbqAbrvbqCbqDbpNaJibpPaQSaLYaJibpSbpQbpZbpTbqabqLbnSbqbbnXbnXbnXbnXbnXbnXbqdbqcbqebokbqgbqfbqibnnbqmbqjbqobqnbnabovbmPbqpbYfaVJbpjbqrboEboEbqtbqsbqvbqubqubqubqEbqxbqIbqFbrhbqJbqObqNbnIbqPbqRbqQbqSboTbqTbnIbqXbqVbrrbnMaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabsybsibrqbgwbeMbhobhobhvbhtbrcbgrbtkbsqbsvbhwbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbsxbdPbrebrdbrdbrdbrdbrdbpnbrfbrLbribrkbrjbrmbrlbrpbrnbrtbrtbrxbrwbrzbrybrAaHBbsbbrBbsabrDbsAbotbrIbotaafbtDbsEbsBbrJbsmbsHbsBbsIbtDaafbedbspbsObspbedbedbedbtbaJibrKaQSaLYbXHbnLbnKbrNbrMbrObqLbrPbqbbrRbrQbrTbrSbrVbrUbqdbrWbnibrXbrZbrYbscbnnbsdbqjbosbmPbnabovbmPbnabYfaVJbpjbsebplbqZbsfboEbsNbsgbsjbshbslbskbsobsnbrhbssbsubstbnIbswbsCbszbsFbsDbsGbnIbsMbhxbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaacaaaaaaaaaaaaaaaaaaaaabsybtFbtEbuvbsLbsPbsPbsQbsPbsPbgrbsSbsRboAbaubjpaaaaaaaaaaafaafbtnbtnbtnbtnbtnbtnbtnaaaaaabtJbsUbsTbsWbsVbsYbsXbsXbsXbsXbsXbtabsZbtdbtcbtgbtfbtzbupbfmbfmbhybfmbfmbtCbtibthbtjbmGbtHbmGbmGbmGbmGbmGbtlbmGaafbvbbuGbtLbtmbtNbtmbtLbuNbvcaafbspbtQbtRbtSbtobtpbspbhPaJlbtqbbabtraJibtsaWMbtubttbtvbucbtxbtwbtAbtybtIbtBbtMbtKbtPbtObnibokbtUbtTbtWbnnbovbtXbtZbtYbuabuabubbnabYfaXqbpjbudboEboEbsfbuebuzbufbuhbugbujbuibulbukbrhbumbuqbunbnIburbutbusbsFboTbuubnIbuwbpFbvFbnMaaaaaaaaaaaacHOaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeObyebvYbvZbpObwEbgnbgobwMbwEbgrbuybjpbwObwNbjpaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaabxIbuAbrdbuCbuBbuEbuDbuDbuDbuHbuFbuDbuIbuKbuJbuMbuLbuPbuObfmbuQbgabuSbuTbvsbuVbuUbuWbmGbmGbmGbuYbuXbvabuZbvdbvwaafbydbwnbvHbvfbvebvgbvNbwxbydaafbspbwCbvQbxnbedbvhbspbhZaJlbvibcvbvjaJibvVbvWbvXbwDbvkbucbvmbvlbvobvnbvpbvpbvrbvqbvubvtbvvbwkbvxbwmbwkbwkbwkbwkbvybwkbwkaXKaXKaXKaXKaVJbpjbsebplbqZbvAbvzbwqbvBbsjbsjbsjbskbvDbvCbwvbwwbvEbwybnIbvIbvKbvJbvLboTbvMbnIbzDbwFbnMbnMaaaaaaaaaaaaaafbvObvRbuRbvRbuRbvRbvTaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbyAbyPbyFbwbbvUbwdbwcbwfbwebwebwebwgbrfbrdbrdbrLbwhbwjbwibwobwlbwrbwpbgabgabwsbxcbuVbuUbwzbwtbwBbwAbwGbxibxjbxkbwKbvwaafbxrbwPbtLbtmbwQbwRbxobwSbxraafbspbqwbwTbwUbedbwVbspbhPaJlbwWbcvaLYaJibwYbwXbxabwZbxbbxCbxebxdbxCbxFbxGbxfbxFbwkbxhbxgbwkbwkbxmbxlbxqbxpbxtbxsbxvbxubxwaXKbaybxxaXKbxybpjbxzboEboEbxBbxAbppbxDbsjbsjbsjbskbvDbxEbwwbxHbxKbxJbwwbxLbxNbxMbxOboTbxPbnIbAVbykbnMaaaaaaaaaaaaaaaaafbxQbwHbrgbzNbwJbzObxQaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaYBaafbeObeqbepberaRtaYqbesbevbetbdmbbDbezbewaYObeBbeFbaibbZbbZbbZbeGbeHbbZbeIbdvbeJaTSbdAbdzbdCbeKaTSaXebdObdPaGEbeLbePbeNbeNbdPbfibeQbeSbeRbfmbfmbfmaMbaLMbbUbcabdYbfnbgMbfpbgNbfrbfsbftbfubdYbebbfvbgUbfvbgWbgXbfvaGVbebbedbfCbfDbfEbfFbfGbfHbfIbfJaJibeUbeTbeVaJlaZzaZzaZzaZzbeWbfObeXbfQaZzaZzbfRaZzaZzaZzaZzbeYbfabeZbfcbfbbffbfdbfgaZzbfYbfhbfkbgbbgcbgcbgcbgdaZzbdQbdVbflaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbgfbggbfqbgibfxbgfbggaZzaRZbfAaUYaZLaUYaZNaZMbglbgmaWTaZSaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaabgnbgobgpbgqaZUbgrbgrbgrbgrbgrbgrbfKbfLbgraYOaYOaYOaYOaYObhCaYOaYOaYObfMbfMbaibbZbdqbfNbeGbfPbbZbfTbfSbfTaTSbdAbdzbdCbeKaTSaXebdObdPbfVbfUbfWbfWbfXbdPbfibfZbghbgabgkbgjbgsaMbbgubgtbcabhNbivbgObgPbexbexbgRbgSbgvbdYbebbmIbgxbhSbhRbfzbgybhTbebbedbgzbhbbhcbeCbhUbeEbhgbhhaJibgBbgAaLYbgCbgEbgDbdVbdVbgFbdVbgGbdVbdVbdVbdVbgHbdVbdVbdVbdVbgIbdVbdVbdVbdVbdVbdVbgDbdVbdVbgKbgJbgJbfabgJbgJbgTbgLbdVbgIbgYbgVbgHbdVbhabdVbdVbdVbhibhebhkbhjbdVbhlbdVbhmbdVbdVbgDbhnaWuaUYaZLaUYbhpaHeaHubjdbklbkjaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaafbhGbeqbhuaHNaHMaHVaHTaJvaHZaHVaKVaSHaOhbajaSIaSNbaibbZbbZbbZbhzbeHbbZaTSaTSaTSaTSbdAbhAbhDbhBaTSaSObifbdPbhFbhEbhIbhHbhJbdPbfibhKbghbgabgabgabhLaMbbhMaRYbcabjVbiobipbfjbirbisbfBbiubjMbdYbebbiwbhQbiybjYbiybgybgebebbedbiAbiBbiCbgQbiEbgZbiGbhVaJibhXbhWbiabhYbicbibbidbidbihbigbijbiibiibiibikbiibiibiibiibiibimbilbilbilbinbidbidbibbidbidbitbilbilbixbiibiFbiIbiHbiibiJbidbidbidbidbidbidbidbidbidbidbidbidbidbiKbikbiLbiibiMbiObiNbiPbiPbiRbiQaZNaWAbjhaWTaWTaWVaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObaMaZTbjlaZObiSbgrbjpbjpbiTbjpbjpbjpaSUbjmbkeaSWaXebaibbZbdqbiVbiUbfPbbZbbLbbLbbLaTSaTSaTSaTSbkkaTSbjxbdObdPbiXbiWbhHbhJbiYbdPboibfmbiZbgabgabgabjaaMbbjbaRYbcabkAbkHbgObhdbjIbjJbhfbjLblybdYbjcbkKbknbiybjebiybgxbkMbjgbedbjTbjUbizbjWbjWbjWbjXbkNaJibjjbjibjnbjkbjqbjobbnbjsbjvbjtbjybjwbjzbbnbjCbdVbdVbjDbdVbdVbdVbdVbdVbjEbjNbjHbdVbjPbjRbjQbjSbdVbjEbjZbkbbkabgDbdVbdVbkdbdVbdVbkfbjDbdVbjEbdVbdVbdVbdVbdVbdVbdVbdVbdVbgIbdVbdVbgDbkgbkibkhbkpaSYaTgbkmblMaafaaaaafaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObmeblSaTjbkqbksbgraTlbkQbkRbkRbkSbkTaTnaTmaTqaTpbmlbmobbZbbZbbZbeGbkubbZbajbajbajbajblaaXeaXeblbblcbldbleblfbkwbkvbkybkxbkzbdPbohbfmbkBbgabkCbgabkDblpbkEaRYbcabdYbmEblsbltbkFbkIbkGbkJbdYbdYbebblzblAbmHbmFblDblAbiDbebbedbedbkLblGbkOblIbiCblJblKaJibkPbeTbeVaJiblOblOblOblOblOblOaZzaZzblPblQbkXbkVblQblPaZzaZzaZzaZzaZzaZzaZzaZzaZzaZzbkYaZzaZzaZzaZzaZzaZzbmTaZzbdVbdVbkZblhblgblOblOblOblOblObliblibliblkbljbdVbllblkblnblibliblObmcbmcbmcbnsaRZaRZaRZaRZaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhObhObdXbdWbjlaZOblobgrbmgbjpbmhbmibjpbjpbjpbmVbmjbmkbmkbmWbbZbdqblqbeGblrbbZaTRaTQaVhbmrbmsbmtbmtbmubmtbmtbmvbdPblvblublwbhJblxblfblmblBblCbgabgablEblHblFbkEaRYblLbmGbmGbmGbmGbmGbmGbmGblNbmGaafbebbmIblRbmKbnJbmKblTbjKbebaafbedbmObnwbmQbmRbiCbiGbmSaJibczaQSaLYaJiblVbjOblXblWblYbmYbmablZbmfbmbbmnbmmbmbbmwbmzbmybnibmAbmCbmBbmDbnnbmLbmJbmNbmMbmZbmPbmPbnabYfaVJblOblObnbblObndbndblObnebnhbngblObnjbnkbnjblObnlblibnmblObnobnpbnoblObnqbnrbnIbpEboDbpJbnMaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaTDaaaaaaaaabhObhObhObhObhObhObhObhObhObhOaaaaaaboJbnubntbnvbgrbnxboWbpmbnTaWMaVrbjpbpsaXfbnYbnZbmWbbZbbZbbZbbZbbZbbZboabobbocaXebdObdPbdPbdPbdPbdPbdPbdPbnybdPbdPbdPbogbdPbfmbnzblCbgabgabgabnAblpbkEaRYbnBbmGbombnCbncbnDbvGbotbnEbotaafbebboubowbowboxboyboybnfbebaafbedbnFboCbpHbpGbiCbiGboFaJibnHbnGaLYbXHbnLbnKbnObnNbnQaYebnSbnRbnUbnUbnWbnVbnXbnXbojbofboXbokbonbolboobnnboqbopbosbmPbnabovbmPbnabYfaVJbpjbozboEboBboGboEbppboHboKboIboMboLboOboNblOaZzboPbpxblOboQboSboRboUboTboVbnIbqUbpLbpJbnMaaaaaaaaaaacaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaabgnbgobgpbgqbdWbpObpObpObrsbpObrCboZboYbpabgrbpbbjpbauaYPbpcbpRbqHbqGbqKbqKbqKbqMbkWbpUbkWbkWbkWbkWbpVbpWbpWbpWbbxbdPbpebpdbpgbpfbpibphbpnbpkbqhbpqbptbqkbqkcKDbpubgabgabpwbfmaMbbpzbpybpAaJubqqbpBbpDbpCborbrobpIbotaafbebbebbpKbebbrubebbpMbebbebaafbedbqzboCbqAbrvbqCbqDbpNaJibpPaQSaLYaJibpSbpQbpZbpTbqabqLbnSbqbbnXbnXbnXbnXbnXbnXbqdbqcbqebokbqgbqfbqibnnbqmbqjbqobqnbnabovbmPbqpbYfaVJbpjbqrboEboEbqtbqsbqvbqubqubqubqEbqxbqIbqFbrhbqJbqObqNbnIbqPbqRbqQbqSboTbqTbnIbqXbqVbrrbnMaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaaaaaabsybsibrqbeMbdybgwbgwbhtbhobrcbgrbtkbsqbsvbhvbjpbjpbjpbajbrEbrFbrGbrHbrGbrGbrGbrHbrGbajbajbdPbdPbdPbsxbdPbrebrdbrdbrdbrdbrdbpnbrfbrLbribrkbrjbrmbrlbrpbrnbrtbrtbrxbrwbrzbrybrAaHBbsbbrBbsabrDbsAbotbrIbotaafbtDbsEbsBbrJbsmbsHbsBbsIbtDaafbedbspbsObspbedbedbedbtbaJibrKaQSaLYbXHbnLbnKbrNbrMbrObqLbrPbqbbrRbrQbrTbrSbrVbrUbqdbrWbnibrXbrZbrYbscbnnbsdbqjbosbmPbnabovbmPbnabYfaVJbpjbsebplbqZbsfboEbsNbsgbsjbshbslbskbsobsnbrhbssbsubstbnIbswbsCbszbsFbsDbsGbnIbsMbhwbtebnMaaaaaaaaaaaaaaaaaaaaaaaaaIuaIuaIuaIuaIuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaaaaaaaaaaaaaaaaaaaTDaTDaTDaTDaTDaaaaacaaaaaaaaaaaaaaaaaaaaabsybtFbtEbuvbsLbsPbsPbsQbsPbsPbgrbsSbsRboAaYPbjpaaaaaaaaaaafaafbtnbtnbtnbtnbtnbtnbtnaaaaaabtJbsUbsTbsWbsVbsYbsXbsXbsXbsXbsXbtabsZbtdbtcbtgbtfbtzbupbfmbfmbhxbfmbfmbtCbtibthbtjbmGbtHbmGbmGbmGbmGbmGbtlbmGaafbvbbuGbtLbtmbtNbtmbtLbuNbvcaafbspbtQbtRbtSbtobtpbspbhyaJlbtqbbabtraJibtsbjObtubttbtvbucbtxbtwbtAbtybtIbtBbtMbtKbtPbtObnibokbtUbtTbtWbnnbovbtXbtZbtYbuabuabubbnabYfaXqbpjbudboEboEbsfbuebuzbufbuhbugbujbuibulbukbrhbumbuqbunbnIburbutbusbsFboTbuubnIbuwbpFbvFbnMaaaaaaaaaaaacHOaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeObyebvYbvZbpObwEbgnbgobwMbwEbgrbuybjpbwObwNbjpaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaabxIbuAbrdbuCbuBbuEbuDbuDbuDbuHbuFbuDbuIbuKbuJbuMbuLbuPbuObfmbuQbgabuSbuTbvsbuVbuUbuWbmGbmGbmGbuYbuXbvabuZbvdbvwaafbydbwnbvHbvfbvebvgbvNbwxbydaafbspbwCbvQbxnbedbvhbspbhPaJlbvibcvbvjaJibvVbvWbvXbwDbvkbucbvmbvlbvobvnbvpbvpbvrbvqbvubvtbvvbwkbvxbwmbwkbwkbwkbwkbvybwkbwkaXKaXKaXKaXKaVJbpjbsebplbqZbvAbvzbwqbvBbsjbsjbsjbskbvDbvCbwvbwwbvEbwybnIbvIbvKbvJbvLboTbvMbnIbzDbwFbnMbnMaaaaaaaaaaaaaafbvObvRbuRbvRbuRbvRbvTaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbyAbyPbyFbwbbvUbwdbwcbwfbwebwebwebwgbrfbrdbrdbrLbwhbwjbwibwobwlbwrbwpbgabgabwsbxcbuVbuUbwzbwtbwBbwAbwGbxibxjbxkbwKbvwaafbxrbwPbtLbtmbwQbwRbxobwSbxraafbspbqwbwTbwUbedbwVbspbhyaJlbwWbcvaLYaJibwYbwXbxabwZbxbbxCbxebxdbxCbxFbxGbxfbxFbwkbxhbxgbwkbwkbxmbxlbxqbxpbxtbxsbxvbxubxwaXKbaybxxaXKbxybpjbxzboEboEbxBbxAbppbxDbsjbsjbsjbskbvDbxEbwwbxHbxKbxJbwwbxLbxNbxMbxOboTbxPbnIbAVbykbnMaaaaaaaaaaaaaaaaafbxQbwHbrgbzNbwJbzObxQaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbzKbxRbzKbxSbxSbxTbwcbwfbrdbrdbxUbxWbrfbxXbdPbdPbxYbgabrkbwobxZbywbyabybbybbyfbycbyhbygbyibvsbyjbvPbylbxkbyHbyIbymbvwaafbxrbxrbxrbxrbyobxrbxrbxrbxraafbyNbyNbyNbyNbyNbyNbyNbypaJibyqbeTbeVaJibysbyrbyrbytbyubxCbyxbyvbyWbyybyBbyzbyCbwmbyEbyDbyJbyGbyLbyKbyKbyMbyObyKbyRbyQbySbaAbwubyTbAsbyUbyXbyVbyZbyYbzbbzabppbzcboIboIbzdbskbvDbzebzAbzfbzhbzgbzAbzEbzFbzGbzibzIbwwbwwbBdbnMbnMbBobBpbBpbBpbBrbCJbzjbzkbrgbwJbrgbynbuRaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaacaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBubzlbBubznbzmbzpbzobzrbzqbzqbzqbzsbrfbzubztbdPbzvbgabrkbzxbzwbzXbzybgabkCbgabzzbzCbzBbzHbAdbyjbwIbzJbxkbxkbxkbzLbvwbAhbAhbzMbAhbzQbzPbzRbAjbzSbAjbAjbyNbzUbzTbzWbzVbzZbzYbAaaJibAbaQSaLYaJibAebAcbAgbAfbAkbAibAmbAlbAobAnbAqbApbAtbArbAvbAubAxbAwbAybAxbAAbAzbABbAxbACbAxbADbBJbAFbAEbaAbAGbpjbAHbAJbAIbAKbAKbppbALbANbAMbppbAObAQbAPbBgbARbATbASbAWbAUbAUbAXbAZbAYbBbbBabCubBcbBfbBebBibBhbBkbBjbBDbxQbwJbrgbwJbwJbCrbxQaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbCobyPbCzbBlbrdbBmbrdbrdbrdbrdbrdbxWbrfbzubBnbdPbBqbgabBsbBtbgabBvbghbgabgabBwbvsbBxbzBbzHbAdbyjbvwbBzbBybBAbBybBBbvwbCKbCIbBEbBCbBGbBFbBIbBHbBKbDbbBVbyNbBMbBLbBObBNbBQbBQbBSbBRbAbaQSaLYaJibBWbBUbBUbytbBXbxCbBZbBYbxCbCabyzbyzbCbbwkbCdbCcbwkbwkbwkbwkbwkbwkbCebwkbwkbwmbCfaXKaXKaXKaXKbDibpjbwwbzAbzAbzAbzAbzAbzAbzAbzAbzAbzIbCgbCsbCtbARbCibChbCkbCjbCjbCjbCmbClbCqbCnbiqbiebjrbjfbjAbjubjBbCBbDubCCbvRbuRbDQbuRbvRbCDaafaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBubCEbBubwbbCGbCHbvUbvUbvUbCGbvUbxWbrfbzubCLbdPbCMbgabrkbwobgabqlbCNbgabgabCObxcbBxbzBbCPbxcbCQbvwbCSbCRbCUbCTbwKbvwbCWbCVbCXbAhbErbErbErbAjbCZbCYbDabyNbDdbDcbDcbDebDgbDfbDhaJibDkbDjbDlaJibDtbDmbDvbDnbDxbDybDpbDobyWbDqbDrbyzbDsbwmbDzbDwbwmbDAbDAbDBbDJbDCbDEbDDbCpbjGbDObBTbEVbFDbCpbDFbDGbDUbDIbDHbDKbDKbDMbDLbDPbDNbDXbDTbDZbDYbEbbEabEcbChbEvbDWbFabwwbwwbwwbwwbwwbFybFrbEnbBobBrbCJbHsbEdbCJbBobBpbBrbFQbCJbFUaafcHOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbFbbEfbFbbEhbEgbEibEibEibEibEibEjbElbEkbzubEmbdPbEobEqbEpbEtbEsbGibGhbGkbGjbGvbtCbEubzBbExbEwbyjbvwbEzbEybEAbBybEBbvwbBPbGCbECbAhaaaaaaaaabAjbEDbGEbFcbyNbEFbEEbEHbEGbDgbDfbEIaJibwWaQSaLYbEJbELbEKbENbEMbEPbEObERbEQbxCbxFbxFbESbxFbwkbEWbETbEYbEXbFdbEZbDJbFebDEbFfbFAbFBbDObFCbFDbjObFhbFgbFkbFjbDIbFlbDKbFmbFobFnbFqbFpbFtbFsbFvbFubFxbFwbFzbChbFJbFFbFKbFHbFMbFLbFNbGabGbbGcbGdaafaafbCJbkobkcbktbkrbkUbFWbFYbFTaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbFVbGmbGlbdPbdPbGnbyPbyPbyPbGobdPbdPbGpbGrbGqbdPbGtbGtbGtbFZbGtbGvbGebGgbGfbGsbtCbBxbzBbGubGBbtCbtGbtGbtGbtGbtGbHVbtGbtGbtGbGwbtGbtGbtGbtGbtGbGxbtGbtGbtGbtGbtGbtGbtGaJiaJiaJiaJibwWaQSaLYbEJbGybEKbGAbGzbGFbGDbGIbGGbGKbGJbGLbyzbGNbGMbGPbGObGRbGQbGTbGSbGVbGUbGXbGWbGYbHbbHcbGZblUbHabCpbHdbHfbwwbwwbwwbwwbwwbHibwwbwwbwwbzAbHGbzAbzAbHjbARbHkbChbFJbHlbHnbHmbHpbHobHqbGabGbbGcbHraaaaaabCJbNlbBkbHwbHvbHybHxbHzbCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaafaaaaaaaaabHuaafaaaaaaaaaaaabGtbHBbHAbHDbHCbLrbHEbHHbHFbHJbtCbBxbzBbzHbzCbHLbHKbHNbHMbHPbHObHRbHQbHTbHSbHWbHUbHXbzCbzCbHYbIbbHZbzCbIcbzCbzzbHPbzzbIebIdbIgbIfbwWaQSbDlaJlbDtbIBbDtbIhbIibxCbIkbIjbImbIlbIobInbIrbIpbIubItbwmbIvbICbIAbDJbIDbIHbIGbIqbKfbFDbmdbFDbEVbCpbKhbIwbIxbIybNnbmqbmpbmxbIMbIObIFbIQbIPbIRbIJbzAbITbHkbChbILbIUbIWbIVbIYbIXbIZbGabGbbISbEnbEnbEnbCJbCJbCJbJjbJhbCJbCJbHIbCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaabLaaaaaaaaaaaaaaaaaaaaaaaaaaaabGtbJbbJabJdbJccLYbJebJgbJfbJibtCbBxbJkbJmbJlbJlbJnbJpbJobJqbJobJpbJnbJlbJlbJsbJrbJubJtbJwbJvbJxbJlbJlbJybJpbJobJqbJobJCbJAbJDbJAbJHbJGbvjaJlbJJbJIbJKbELbJLbGHbDpbJMbFibDVbxFbJObCFbDSbDzbJSbwkbJTbJVbJUbDJbJWbJYbJXbJNbFDbFDbJPbFDbFDbCpbmUbmXbIxbKabJZbKcbKbbKebKdbnPbIFbKkbKjbKobKobzAbKpbKrbKqbKwbKvbKzbKybKCbKBbKDbGabGbbKlbEnbKmbMIbodbEnaafaafaafaafaafaafaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbKFbKEbKEbKGbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaaaaaabKIbKHbKxbKHbKJaaaaaaaaabGtbGtbKLbKKbJdbKKbMPbKMbKObKNbKPbtCbKQbBxbKSbKRbzCbKTbzCbzzbHPbzzbzCbKWbKYbKXbLbbKZbzHbzCbLdbLcbHTbLebHTbHTbLgbLfbLhbLfbLjbLibcvbLkaLYaLYaLYaJlbLnbENbEPbLpbLxbLtbLzbLybFIbLAboebLBbLDbHgbDzbItbIabIzbHhbDJbDJbLobLobLobCpbLEbLqbLFbLsbLGbCpbpobprbIxbLwbFGbmqbpvbpXbLHbLJbIFbLLbLKbKobKobzAbLQbLSbLRbwwbLUbLWbLVbMabLYbMbbGabpYbLNbqybqybqybqBbGdaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbMcbLTbMdbLTbKsbKtbKtbMebPCbMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbCobyPbCzbBlbrdbBmbrdbrdbrdbrdbrdbxWbrfbzubBnbdPbBqbgabBsbBtbgabBvbghbgabgabBwbvsbBxbzBbzHbAdbyjbvwbBzbBybBAbBybBBbvwbCKbCIbBEbBCbBGbBFbBIbBHbBKbDbbBVbyNbBMbBLbBObBNbBQbBQbBSbBRbAbaQSaLYaJibBWbBUbBUbytbBXbxCbBZbBYbxCbCabyzbyzbCbbwkbCdbCcbwkbwkbwkbwkbwkbwkbCebwkbwkbwmbCfaXKaXKaXKaXKbDibpjbwwbzAbzAbzAbzAbzAbzAbzAbzAbzAbzIbCgbCsbCtbARbCibChbCkbCjbCjbCjbCmbClbCqbCnbiebhZbjfbiqbjubjrbjAbCBbDubCCbvRbuRbDQbuRbvRbCDaafaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbBubCEbBubwbbCGbCHbvUbvUbvUbCGbvUbxWbrfbzubCLbdPbCMbgabrkbwobgabqlbCNbgabgabCObxcbBxbzBbCPbxcbCQbvwbCSbCRbCUbCTbwKbvwbCWbCVbCXbAhbErbErbErbAjbCZbCYbDabyNbDdbDcbDcbDebDgbDfbDhaJibDkbDjbDlaJibDtbDmbDvbDnbDxbDybDpbDobyWbDqbDrbyzbDsbwmbDzbDwbwmbDAbDAbDBbDJbDCbDEbDDbCpbjBbDObBTbEVbFDbCpbDFbDGbDUbDIbDHbDKbDKbDMbDLbDPbDNbDXbDTbDZbDYbEbbEabEcbChbEvbDWbFabwwbwwbwwbwwbwwbFybFrbEnbBobBrbCJbHsbEdbCJbBobBpbBrbFQbCJbFUaafcHOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbFbbEfbFbbEhbEgbEibEibEibEibEibEjbElbEkbzubEmbdPbEobEqbEpbEtbEsbGibGhbGkbGjbGvbtCbEubzBbExbEwbyjbvwbEzbEybEAbBybEBbvwbBPbGCbECbAhaaaaaaaaabAjbEDbGEbFcbyNbEFbEEbEHbEGbDgbDfbEIaJibwWaQSaLYbEJbELbEKbENbEMbEPbEObERbEQbxCbxFbxFbESbxFbwkbEWbETbEYbEXbFdbEZbDJbFebDEbFfbFAbFBbDObFCbFDbjGbFhbFgbFkbFjbDIbFlbDKbFmbFobFnbFqbFpbFtbFsbFvbFubFxbFwbFzbChbFJbFFbFKbFHbFMblUbFNbGabGbbGcbGdaafaafbCJbkobkcbktbkrbkUbFWbFYbFTaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnbFVbGmbGlbdPbdPbGnbyPbyPbyPbGobdPbdPbGpbGrbGqbdPbGtbGtbGtbFZbGtbGvbGebGgbGfbGsbtCbBxbzBbGubGBbtCbtGbtGbtGbtGbtGbHVbtGbtGbtGbGwbtGbtGbtGbtGbtGbGxbtGbtGbtGbtGbtGbtGbtGaJiaJiaJiaJibwWaQSaLYbEJbGybEKbGAbGzbGFbGDbGIbGGbGKbGJbGLbyzbGNbGMbGPbGObGRbGQbGTbGSbGVbGUbGXbGWbGYbHbbHcbGZbmdbHabCpbHdbHfbwwbwwbwwbwwbwwbHibwwbwwbwwbzAbHGbzAbzAbHjbARbHkbChbFJbHlbHnbHmbHpbHobHqbGabGbbGcbHraaaaaabCJbNlbBkbHwbHvbHybHxbHzbCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaafaaaaaaaaabHuaafaaaaaaaaaaaabGtbHBbHAbHDbHCbLrbHEbHHbHFbHJbtCbBxbzBbzHbzCbHLbHKbHNbHMbHPbHObHRbHQbHTbHSbHWbHUbHXbzCbzCbHYbIbbHZbzCbIcbzCbzzbHPbzzbIebIdbIgbIfbwWaQSbDlaJlbDtbIBbDtbIhbIibxCbIkbIjbImbIlbIobInbIrbIpbIubItbwmbIvbICbIAbDJbIDbIHbIGbIqbKfbFDbmpbFDbEVbCpbKhbIwbIxbIybNnbmxbmqbmUbIMbIObIFbIQbIPbIRbIJbzAbITbHkbChbILbIUbIWbIVbIYbIXbIZbGabGbbISbEnbEnbEnbCJbCJbCJbJjbJhbCJbCJbHIbCJaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaabLaaaaaaaaaaaaaaaaaaaaaaaaaaaabGtbJbbJabJdbJccLYbJebJgbJfbJibtCbBxbJkbJmbJlbJlbJnbJpbJobJqbJobJpbJnbJlbJlbJsbJrbJubJtbJwbJvbJxbJlbJlbJybJpbJobJqbJobJCbJAbJDbJAbJHbJGbvjaJlbJJbJIbJKbELbJLbGHbDpbJMbFibDVbxFbJObCFbDSbDzbJSbwkbJTbJVbJUbDJbJWbJYbJXbJNbFDbFDbJPbFDbFDbCpbmXbnPbIxbKabJZbKcbKbbKebKdbodbIFbKkbKjbKobKobzAbKpbKrbKqbKwbKvbKzbKybKCbKBbKDbGabGbbKlbEnbKmbMIboebEnaafaafaafaafaafaafaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbKFbKEbKEbKGbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtnbtnbtnbtnbtnaaaaaaaaaaaaaaaaaaaaaaaabKIbKHbKxbKHbKJaaaaaaaaabGtbGtbKLbKKbJdbKKbMPbKMbKObKNbKPbtCbKQbBxbKSbKRbzCbKTbzCbzzbHPbzzbzCbKWbKYbKXbLbbKZbzHbzCbLdbLcbHTbLebHTbHTbLgbLfbLhbLfbLjbLibcvbLkaLYaLYaLYaJlbLnbENbEPbLpbLxbLtbLzbLybFIbLAbpobLBbLDbHgbDzbItbIabIzbHhbDJbDJbLobLobLobCpbLEbLqbLFbLsbLGbCpbprbpvbIxbLwbFGbmxbpXbpYbLHbLJbIFbLLbLKbKobKobzAbLQbLSbLRbwwbLUbLWbLVbMabLYbMbbGabqybLNbqBbqBbqBbqWbGdaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbMcbLTbMdbLTbKsbKtbKtbMebPCbMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabMgbNAbLXbNBbMgbKUbLZbKVbGtbMhbMjbMibMlbMkbMnbMmbMobMobMpbtCbtCbtCbNQbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbtCbMrbMqbMubtCbtCbtCbtCbtCbMvbtCbtCbtCaJlaJlbObaJlaKHaLVbMwaJlbMybMxbMzbELbMAbxCbDpbMBbxCbMCbLCbMDbMFbwkbMHbMGbMEbMJbMMbMLbMRbMQbMKbFDbFDbFDbFDbFDbMTbFDbCpbPObMObMObMObMObMObMObMObMObMObMObMXbMWbMYbMYbzAbMZbNdbNcbwwbMVbMVbMVbNfbNebNhbMVbMVbMVbMVbMVbMVbGbbNbaapaapaapaapaapaapaapaapaapaapaapaapaapaapaapaapaapaapaapaapaapaapaapbNjbLTbLTbNkbKtbKtbMebMebNmbMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbNgbMsbNgbKxbMtbNobqWbGtbNubNrbKKbNtbNsbGvbNzbNHbNGbNIbGvbqYbNvbOXbNxaaaaaaaaaaaabNybOLbONbOMbNDbNCbNEbNFbNJbNJbNKbNFbNMbNLbNObNNbNRbNPbNXbNWbNYbPxbrabNUbNUbNUbNUbDtbDtbDtbDtbNZbNZbxCbOcbOabOdbLCbOfbOebOhbOgbOjbOibOlbOkbOnbOmbOqbOpbMKbrbbFDbFDbNVbFDbFDbrbbCpbPObMObOrbOtbOsbOvbOubOxbOwbOybMObOAbOzbOBbOBbzAbOEbOFbChbzIbOGbOIbOHbOKbOJbORbOQbOUbOTbOWbOVbMVbPZbEnbOObOObOObOObOOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabOPbKtbNjbKtbKtbMebMebMebMebMebMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabMgbNgbNgbNgbPbbPabKAbPcbsJbsrbtVbsKbPmbPibGvbGvbGvbGvbGvbGvbuobOYbOZbMUaaabNibOCbOCbODbQjbPfbPgbPhbPfbPnbNFbPpbPobPqbNFbPsbPrbPvbPubPAbPzbPBbPtbPtbPxbuxbQpbPwbPxbvSbDtbSibELbPDbELbELbPEbDpbPFbxCbPGbPIbPHbPJbwkbPLbPKbwkbPMbPPbPNbPRbPQbMKbCpbCpbCpbCpbCpbCpbCpbCpbPObMObPSbPUbPTbOsbOsbOsbOsbPVbMObCvbLKbPXbPXbzAbARbLSbChbQabPYbPYbQbbQdbQcbQgbQfbQhbQhbQhbQibMVbQkbQlbOObQnbQmbQobPdaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbQsbQrbQrbMebMebMebMebMebMebMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbMsbMsbMsbKxbPjbQAbCwbQqbQBbKKbCxbCAbCybEebDRbEUbQvbQvbQvbVTbQwbQxbPkaaabPlbQJbQIbQCbSlbPfbQEbQGbQFbQKbNFbQMbQLbQNbNFbQPbQObQRbQQbQWbQVbQXbPtbPxbPxbQTbNUbPxbPxbQUbDtbQYbELbRabQZbELbRbbDpbDobRCbLCbRdbRcbRebRGbDzbItbSpbPMbPNbPNbPRbRfbMKbRgbRibRhbRjbRkbRmbRlbRnbPObMObOsbOsbRobOsbOsbOsbOsbRpbMObCvbLKbRrbRrbzAbLQbRtbRsbRvbRubRxbRwbRzbRybRBbRAbREbRDbRHbRFbRJbRIbRMbRLbRObRNbQobQyaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRQbMebMebMebMebMebMebMebMebMebMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaabMgbUbbRUbUkbMgbQzbLZbKVbGtbGtbRVbRVbRVbGtbGtbNxbFObFEbFEbFEbYEbRSbNwbPkaaabRKbRWbRXbUobRXbRYbRZbSabSbbSbbScbSebSdbSfbNFbPtbPtbPtbPtbPtbUAbPtbPtbShbUGbSjbNUbPxbSkbUObDtbXkbELbRabSmbSnbRbbSobEQbJBbSqbSsbSrbStbJzbEWbSubIEbSvbSxbSwbSzbSybMKbSAbSCbSBbRjbSDbSGbSEbRnbPObMObMObMObRobOsbOsbOsbMObMObMObSIbSHbRrbRrbzAbSJbLSbChbzIbSKbSMbSLbSObSNbSQbSPbSSbSRbSVbSTbMVbSWbSXbOObTbbSZbTcbRPaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbMebMebMebMebMebMebTdbMebMebMebMebMebMebMebKtbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbNgbMsbNgbKxbMtbNobqYbGtbNubNrbKKbNtbNsbGvbNzbNHbNGbNIbGvbrabNvbOXbNxaaaaaaaaaaaabNybOLbONbOMbNDbNCbNEbNFbNJbNJbNKbNFbNMbNLbNObNNbNRbNPbNXbNWbNYbPxbrbbNUbNUbNUbNUbDtbDtbDtbDtbNZbNZbxCbOcbOabOdbLCbOfbOebOhbOgbOjbOibOlbOkbOnbOmbOqbOpbMKbsrbFDbFDbNVbFDbFDbsrbCpbPObMObOrbOtbOsbOvbOubOxbOwbOybMObOAbOzbOBbOBbzAbOEbOFbChbzIbOGbOIbOHbOKbOJbORbOQbOUbOTbOWbOVbMVbPZbEnbOObOObOObOObOOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabOPbKtbNjbKtbKtbMebMebMebMebMebMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabMgbNgbNgbNgbPbbPabKAbPcbsKbsJbuobtVbPmbPibGvbGvbGvbGvbGvbGvbuxbOYbOZbMUaaabNibOCbOCbODbQjbPfbPgbPhbPfbPnbNFbPpbPobPqbNFbPsbPrbPvbPubPAbPzbPBbPtbPtbPxbvSbQpbPwbPxbCvbDtbSibELbPDbELbELbPEbDpbPFbxCbPGbPIbPHbPJbwkbPLbPKbwkbPMbPPbPNbPRbPQbMKbCpbCpbCpbCpbCpbCpbCpbCpbPObMObPSbPUbPTbOsbOsbOsbOsbPVbMObCwbLKbPXbPXbzAbARbLSbChbQabPYbPYbQbbQdbQcbQgbQfbQhbQhbQhbQibMVbQkbQlbOObQnbQmbQobPdaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbQsbQrbQrbMebMebMebMebMebMebMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKxbMsbMsbMsbKxbPjbQAbCxbQqbQBbKKbCybDRbCAbEUbEebFEbQvbQvbQvbVTbQwbQxbPkaaabPlbQJbQIbQCbSlbPfbQEbQGbQFbQKbNFbQMbQLbQNbNFbQPbQObQRbQQbQWbQVbQXbPtbPxbPxbQTbNUbPxbPxbQUbDtbQYbELbRabQZbELbRbbDpbDobRCbLCbRdbRcbRebRGbDzbItbSpbPMbPNbPNbPRbRfbMKbRgbRibRhbRjbRkbRmbRlbRnbPObMObOsbOsbRobOsbOsbOsbOsbRpbMObCwbLKbRrbRrbzAbLQbRtbRsbRvbRubRxbRwbRzbRybRBbRAbREbRDbRHbRFbRJbRIbRMbRLbRObRNbQobQyaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRQbMebMebMebMebMebMebMebMebMebMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLbwLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaabMgbUbbRUbUkbMgbQzbLZbKVbGtbGtbRVbRVbRVbGtbGtbNxbFObFLbFLbFLbYEbRSbNwbPkaaabRKbRWbRXbUobRXbRYbRZbSabSbbSbbScbSebSdbSfbNFbPtbPtbPtbPtbPtbUAbPtbPtbShbUGbSjbNUbPxbSkbUObDtbXkbELbRabSmbSnbRbbSobEQbJBbSqbSsbSrbStbJzbEWbSubIEbSvbSxbSwbSzbSybMKbSAbSCbSBbRjbSDbSGbSEbRnbPObMObMObMObRobOsbOsbOsbMObMObMObSIbSHbRrbRrbzAbSJbLSbChbzIbSKbSMbSLbSObSNbSQbSPbSSbSRbSVbSTbMVbSWbSXbOObTbbSZbTcbRPaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbMebMebMebMebMebMebTdbMebMebMebMebMebMebMebKtbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabTfbKHbTebKHbTgbWoaafaaaaaabGtbTabRTbThbGtaaabNxcxKbFPbFRbTncbrbTncctbPkaaabPlbTibPfbTrbWIbPfbTtbTvbWMbTwbNFbTpbTjbTqbWVbTCbTCbTCbTCbTCbTDbTEbULbPxbPxbTFbNUbNUbNUbNUbDtbDtbTsbTxbTubDtbTJbTzbTybJFbJEbTJbOdbLlbLmbTGbTAbTJbMKbMKbMKbMKbMKbMKbTHbTKbTIbRjbTLbTNbTMbRnbPObMObTPbTRbTQbTUbTSbTWbTVbTPbUgbTYbTXbIRbIJbzAbITbLSbTZbwwbMVbMVbXibXnbMVbMVbMVbMVbUabUcbSSbMVbXqbUnbOObUebFSbTObOOaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbUfbUfbUfbUfbUfbUfbUibMebUjbUfbMebMebMebMebMebKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbUvbNxbNxbNxbNxccvbRSbNwbTTaaabUhbOCbOCbUpbXxbPfbPfbUBbPfbSFbNFbUrbUqbUsbNFbSUbSUbSUbSUbSUbSUbSUbSUbUHbUIbUJbUKbUKbUMbNUbDtbUubUtbUxbUwbUzbwabUEbUDbUNbUFbUPbUEbURbUQbUTbUSbUVbUUbUYbUWbVabUZbVibUlbVbbUmbRjbUCbVdbUCbRnbPObMObVebVhbVgbVkbVjbVmbVlbVnbUgbzAbVobzAbzAbVpbARbLSbChbUyaafbVrbVqbVtbVsbFXbVubHebVvbVybSSbMVbVHbVIbOObVAbVzbVGbVFaapaapaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabVJbLTbLTbLTbLTbLTbLTbLTbVKbMfbMebMebMebMebVLbPCbKuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabVNbVMbVMbVObVSbNxcczbRSbVUbNxaaaaaaaaaaaabNybZrbVWbVXbVZbVYbPfbNFbVQbVPbVRbNFbSUbUXbVfbVcbVDbVCbVEbSUcaqcaqcaqcaqcaqbTFbWabVVbWcbWbbWebWdbWgbWfbWibWhbWkbWjbWkbWlbWkbWmbWqbWpbWsbWrbWtbWrbWvbWubWwbWvbWybWxbWzbWxbWBbWAbZzbxVbMObWCbWEbWDbWGbWFbWHbWGbWGbWKbWNbWLbWPbWObCjbARbLSbChbVwaafbVrbWQbWQbWSbWUbWTbWXbWWbWZbWYbMVbVHbZUbOObOObOObOObOOaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbQrbQrbQrbQrbQrbQrbXabMebQsbQrbMebMebMebMebMebKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabXmbZVbXbcaabRSbHtbIsbFEbIIbNxaaKaaaaaaaaabNybNybNybNybNybNybNybNFbUrbXcbXdbNFbSUbWnbWJbXubXubWJbWRbSUbXgbXebXebXhcaqbIKbDtbDtbXlbXocMibXpbXwbXtbXzbXybXCbXAbXEbXDbXGbXFbXJbXIbXLbXKbXNbXMbXPbXObXQbXPbXRbXPbXSbXPbXUbXTbYfbYgbIwbXVbXXbXWbYebYabYibYhbYmbYjbYobYnbAUbYpbYrbYqbYtbYsbYFaafbVrbYubYwbYvbFXbYybINbYzbYAbSSbMVbVHbJQbYBbUnaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbMebMebMebMebMebMebTdbMebMebMebMebMebMebMebKtbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabXmbZVbXbcaabRSbHtbIsbFLbIIbNxaaKaaaaaaaaabNybNybNybNybNybNybNybNFbUrbXcbXdbNFbSUbWnbWJbXubXubWJbWRbSUbXgbXebXebXhcaqbIKbDtbDtbXlbXocvqbXpbXwbXtbXzbXybXCbXAbXEbXDbXGbXFbXJbXIbXLbXKbXNbXMbXPbXObXQbXPbXRbXPbXSbXPbXUbXTbYfbYgbIwbXVbXXbXWbYebYabYibYhbYmbYjbYobYnbAUbYpbYrbYqbYtbYsbYFaafbVrbYubYwbYvbFXbYybINbYzbYAbSSbMVbVHbJQbYBbUnaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKtbMebMebMebMebMebMebTdbMebMebMebMebMebMebMebKtbKtaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYDbVMbVMbVObJRbNxcxKbNxbKgbNxbYIbYKbYMbYIbYIbYHbYNbYLbYPbYObZnbYSbYVbYUbYXbYWbZCbWJbYQbYxbYRcbkbYTbYYbZbbYZbZebZdcaqbKibPxcbnbZjbZibZkbZkbZmbZlbZpbZobTJbTJbZqbZsbTJbTJbZtcbtcbAcaIbZvbZubZxbZybZBbZybZAbZabZEbZabZAbZGbYfbPObIwbZIbZKbZJbZMbZLbZObZNbMObMObwwbwwbwwbwwbwwbZPbZRbZQbwwbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVbMVcbLbZTbZSbUnaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabKtbKtbRQbMebMebMebMebMebMebMebMebMebMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamcbOaamaamaamaamaamaaaaaaaaaaaaaaaaaaaafaafaaabZfbZgbZgbZgbZgbZgbZgbLubKnbYIbZYbZZbYIcaccabcaecadcagcafcamcahcaocancascapcaibWJbYQcajcakcbkcalbSUcaqcaqcaqcaqcaqbTFbPxbDtcaucatcaxcawcazcaycaCcaBbTJcaDcaLcaKcaMcaEcaFcaGcaHcaIcaNbZucaObZycaWcaPbZAcaXcbdcbbbZAcbfbYfbPObIwbXYcaJbXZbXYbXYbIwbIwbIwcaRcaScaTcaUchBbwwbwwcbibwwbwwccGcaYcblcaAcavbLvcaZcbacbcccQccMccYccSbLIbUnbUnbUnaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbKsbKtbUjbUfbUfbMebMebMebMebMebMebMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcbmcbpcbobLObLMbMNbLPbMScbvbYIcbxcbybYIbYIcbzcbCcbBcbEcbDcbjcbFbYVbYUbYXcbGcbHbWJbWJcdYcdZbWJcebbSUbNpbNacaqcbMcaqbTFcbIcbIcbIcbIcbIcbIcbIbTJcbQcbNbTJcbRcbTcbScbUcaEcbPceicelcaIcaNbZucbVbZycbXcbWbZAcbYccbcbZbZAcccbYfbYbbYdbYccceccsccAbYccepbYkbYlcktbZDbZwbZFcktcerccfcchccgccncckccrccqcexcevceHceCcevceIceZceKcfeccwccyccxcAlbUnbUnbUnbUnaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaaaaaabOPbKtbNjbKtbKtbMebMebMebMebMebMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafccuccucbobNSbNqcbuccBccDccCbYIccEccHccFccKccIccNccLccPccOcdTccRccUccTccWccVccXcdycdQcdFcekceecemccZcdbcdacddcdccaqbTFcbIcdecdgcdfcdicdhcdkcdjcdmcdlcdocdncdqcdpcdrcaEcdtcdscducaIcaNbZucdvbZycdxcdwbZAcdzcdBcdAbZAcdEbYfbYfcaQbYccdHcdGcdMbYcchBccacjfcdLcdLcdNcdPcdLcdOcdRcdVcdUcdOcdSceacdWceccdScdScdScdScedcdWceccdScdSbXjcdXcDEcfIcehcegcfUcenceoceoceoceoceoceoceoceoceoceoceoceoceoceoceoceocesceqceqcetbKtbKtbMebMeceubMebMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacejcejcejcejcejcejcejceycewbYIbYIbYIbYIbYIcgjcgocgmcgmcgmcgucezbYVbYUbYXceAbZCceBceEceDceGceFceJbSUceMceLceNceLcaqbTFcbIceOcePcePcePceRceSbTJceUceTbTJcbRcbSceVcbUcaEceWcdsceXcaIcaNbZuceYbZycfbcfabZAbZAbZAbZAbZAcfccfgbYfcaQbYcccdcgRbYcbYcchBcgVcjfcdLcficfhcfhcfjcdOcfdcfkcffcdOcflcfmcfmcfmcfncfpcfocfrcfqcftcfscfucdScfwbNTbOobUnbUnbUnbUnaaaaafaaaaaaaaaaahaahaahaafaaaaaaaafaaaaaaaafaafaafcfzcfycfAbNkbKsbKtbKtbMebPCbMebKtbKtaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcejbPebOScfEcfDcfGcejcfJcfHcfFcfKcfMcfLcfNcfNcgAcfOcfOcfPcfQcbFbYVbYUbYXcfRcaicfTcfWcfVcfZbPycgabSUceLceLcaqcgbcaqbTFcbIcgccgdcgdcgdcgecbIcfYcggcgfcfYcghcgkcgicglcaEcgncdscgpcaIcgrcgqcgtbZycgxcgwbZycgybYfcgzcgCcgBcgDbYfccjccicgGcgFcgHcclcclcclccmcdLcgJcgIcgIcgKcgScgLcgOcgMciicgQcgTcgTcgTcgWcgYcgXchacgZchachbchccdScgNbPWcgPcgNaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafchdbKEbKEbKGbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEaaaaaacimcgUcgUcgUchfchgcejchichhchkchjchmchlchochnchqchpchschrchuchtchxchvchzchybSUbSUbSUbSUbSUbSUbSUbSUchCchAcaqchDcaqbTFcbIcbIctpctqctrcbIcbIchEchHchFcfYcaEcaEcaEcaEcaEcaIchIchJcaIchwchKchwbZychMchLbZybYfbYfbVibVicgBchNbYfccobYfbYfccpcdCcdCcdCcdDbYfcdLchPchOchOchQchSchRchUchTchXchVchYchYchYchYcidcicchYciechYcigcihcdSchZbQechGcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEcijcikcijcgEcilcincilcgEciocipciocgEaaaaaacjlcgUcgUchfchfcircejbQtcischWciuciwcivciycixciIciHciHciJciHcbFbYVciKbYXciLcjrciMciOciNciOciPciQciqciqciAciAciAciAbTFciGciRciSciSciVciTciXciWciZciYcjbcjacjdcjccjccjeciUcaIcaIcaIcjhcjgcjibZybZybZybZybQubprbVicjkcjjcjmbYfccobYfaaaaaaaaaaaaaaaaaaaaacdLcjocjncjqcjpcjtcjscjvcjucjzcjycjAcjycjycjBcjDcjCcjFcjEcjFcjGcjHcdScmpbQDcjxcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEcijcjIcijcgEcilcjJcilcgEciocjKciocgEaaaaaacjlcgUchfchfchfcjLcmmcjNcjMchWcjOcjQcjPcjScjRcmocjTcjVcjUcjWcbFbYVcjXchzcjYckacjZckbckbckbckcckeckdckfcmRckhckgciAbTFciGckiciSckjcklckkcubckmckockncngckpckrckqcjccksciUbQHcnwcnuckvckuckwcnEcdIcdIcdJcdIcdKbVibVibVibVibYfccobYfaaaaaaaaaaaaaaaaaaaaacdLckyckxckAckzckEcdOckBcdOckGckCckFckDckDckFckIckHckDckJckDckLckNcdSckPckOckQcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEckRckTckScgEckUckWckVcgEckYclackZcgEaaaaafcjlbQScgUchfchfchfcejckMckKchWchWclcchWchWchWchWcldciHcleclfcbFclhclgcljcliclmclkclnclnclnclpclrclrcluciAcllclvclwbRqciGclyciSclzclBclAclDclCclFclEclHclGclJclIcjcclKciUcnVcnXclNclPclOclQclNclRclSclTbYfceQcdIcdIcdIcdIcdIcltbYfaaaaaaaaaaaaaaaaaaaaacdLclYclVcmaclZcdOcmbcmdcmccdScmecmfcmfcmfcmgcmicmhcmlcmkcmfcmfcmncdScmzcobcmqcmraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafcgEclXcmDcmjcgEcmtcmDcEgcgEcmtcmDcEgcgEaaaaafcmQcgUcgUchfchfcmscejcmvcmucmxbRRcmAcmycmBcmBcmEcmCcmBcmFcIycbFcmIcmHcmKcmJcjrcmLcmLcmMclrcmNcmPcmOcmOciAcibcmScoybSgciGcmUciScmVcmXcmWciGcmYcnacmZciUcnbcndcnccjccneciUclLclMclNcnlcnfcnlclNaaaaaaaaabYfbYfbYfcnnclSclSclTbYfbYfaaaaaaaaaaaacdOcdOcdOcdOcdOcdOcdOcdOcdOcnhcnjcnicdScdScnHcntcnNcdScdScdScdScoucntcnNcdScdScnvcnocnvaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbOaafaafaafaaaaafcnxaafcnxaafcKAaafcpfaafcKAaafcpfaafaafaaacejcnqcnpchfchfcnrcnDcowcovcnycnmcnscnzcnzcnAcnzcnGcnBcoxcnGcnJcnFcnCcnIcnMcnOcnOcnOcnOcnLcnKcnRcnRcnRcgscgscgscgsbSYciGcnQcnScmVcnUcnTciGcmYcnacnWciUcnYcnZcnccoccoaciUclLclMclNcoecodcofclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaacdOcogcojcohcwlcokconcolcomcoocoqcopcdOaapaafaafaafaafaaaaaaaaabTkaaaaaaaaaaafcoscqscosaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafcejbPebOScfEcfDcfGcejcfJcfHcfFcfKcfMcfLcfNcfNcgAcfOcfOcfPcfQcbFbYVbYUbYXcfRcaicfTcfWcfVcfZcfBcgabSUceLceLcaqcgbcaqbTFcbIcgccgdcgdcgdcgecbIcfYcggcgfcfYcghcgkcgicglcaEcgncdscgpcaIcgrcgqcgtbZycgxcgwbZycgybYfcgzcgCcgBcgDbYfccjccicgGcgFcgHcclcclcclccmcdLcgJcgIcgIcgKcgScgLcgOcgMciicgQcgTcgTcgTcgWcgYcgXchacgZchachbchccdScgNbPycgPcgNaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafchdbKEbKEbKGbKsbKsbKtbKtbKtbKtbKuaafaafaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEaaaaaacimcgUcgUcgUchfchgcejchichhchkchjchmchlchochnchqchpchschrchuchtchxchvchzchybSUbSUbSUbSUbSUbSUbSUbSUchCchAcaqchDcaqbTFcbIcbIctpctqctrcbIcbIchEchHchFcfYcaEcaEcaEcaEcaEcaIchIchJcaIchwchKchwbZychMchLbZybYfbYfbVibVicgBchNbYfccobYfbYfccpcdCcdCcdCcdDbYfcdLchPchOchOchQchSchRchUchTchXchVchYchYchYchYcidcicchYciechYcigcihcdSchZbPWchGcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEcijcikcijcgEcilcincilcgEciocipciocgEaaaaaacjlcgUcgUchfchfcircejbQecischWciuciwcivciycixciIciHciHciJciHcbFbYVciKbYXciLcjrciMciOciNciOciPciQciqciqciAciAciAciAbTFciGciRciSciSciVciTciXciWciZciYcjbcjacjdcjccjccjeciUcaIcaIcaIcjhcjgcjibZybZybZybZybQtbpvbVicjkcjjcjmbYfccobYfaaaaaaaaaaaaaaaaaaaaacdLcjocjncjqcjpcjtcjscjvcjucjzcjycjAcjycjycjBcjDcjCcjFcjEcjFcjGcjHcdScmpbQucjxcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEcijcjIcijcgEcilcjJcilcgEciocjKciocgEaaaaaacjlcgUchfchfchfcjLcmmcjNcjMchWcjOcjQcjPcjScjRcmocjTcjVcjUcjWcbFbYVcjXchzcjYckacjZckbckbckbckcckeckdckfcmRckhckgciAbTFciGckiciSckjcklckkcubckmckockncngckpckrckqcjccksciUbQDcnwcnuckvckuckwcnEcdIcdIcdJcdIcdKbVibVibVibVibYfccobYfaaaaaaaaaaaaaaaaaaaaacdLckyckxckAckzckEcdOckBcdOckGckCckFckDckDckFckIckHckDckJckDckLckNcdSckPckOckQcgNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacgEckRckTckScgEckUckWckVcgEckYclackZcgEaaaaafcjlbQHcgUchfchfchfcejckMckKchWchWclcchWchWchWchWcldciHcleclfcbFclhclgcljcliclmclkclnclnclnclpclrclrcluciAcllclvclwbQSciGclyciSclzclBclAclDclCclFclEclHclGclJclIcjcclKciUcnVcnXclNclPclOclQclNclRclSclTbYfceQcdIcdIcdIcdIcdIcltbYfaaaaaaaaaaaaaaaaaaaaacdLclYclVcmaclZcdOcmbcmdcmccdScmecmfcmfcmfcmgcmicmhcmlcmkcmfcmfcmncdScmzcobcmqcmraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafaafcgEclXcmDcmjcgEcmtcmDcEgcgEcmtcmDcEgcgEaaaaafcmQcgUcgUchfchfcmscejcmvcmucmxbRqcmAcmycmBcmBcmEcmCcmBcmFcIycbFcmIcmHcmKcmJcjrcmLcmLcmMclrcmNcmPcmOcmOciAcibcmScoybRRciGcmUciScmVcmXcmWciGcmYcnacmZciUcnbcndcnccjccneciUclLclMclNcnlcnfcnlclNaaaaaaaaabYfbYfbYfcnnclSclSclTbYfbYfaaaaaaaaaaaacdOcdOcdOcdOcdOcdOcdOcdOcdOcnhcnjcnicdScdScnHcntcnNcdScdScdScdScoucntcnNcdScdScnvcnocnvaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbOaafaafaafaaaaafcnxaafcnxaafcKAaafcpfaafcKAaafcpfaafaafaaacejcnqcnpchfchfcnrcnDcowcovcnycnmcnscnzcnzcnAcnzcnGcnBcoxcnGcnJcnFcnCcnIcnMcnOcnOcnOcnOcnLcnKcnRcnRcnRcgscgscgscgsbSgciGcnQcnScmVcnUcnTciGcmYcnacnWciUcnYcnZcnccoccoaciUclLclMclNcoecodcofclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaacdOcogcojcohcwlcokconcolcomcoocoqcopcdOaapaafaafaafaafaaaaaaaaabSYaaaaaaaaaaafcoscqscosaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaafcptcpBcpAcpGcpCcpIcpHcpGcpScpZcpHcqtcqdcqxcqwcnycnycnycnycnycnycnycnycozcotcoBcoAcoCcqycoEcoDcJkcnGcoHcoGcoIcnGcoKcoJcoLcnOcoNcoMcoPcoOcoRcoQcpjcpbcpbcpkcpncpncpjcrvciGciGcpccoSciGciGciGcoTcnacoUciUciUciUcoVcphciUciUclLcpiclNcoXcoWcoXclNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaafaafcdOcoYcoZcoYcpdcpacpgcpecomcomcplcomcdOcdOaaaaaaaaaaafaafaaaaacaaaaaaaaaaaaaafaaacpmaaaaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaaaaaaaaaaafcqDcppcpocprcpqcpucpscpwcpvcpycpxcpDcpzcpEcpucpJcpFcpLcpKcpNcpMcpPcpOcpRcpQcpUcpTcpVcqLcpXcpWcpYcqNcqbcqacqccqOcoKcqecqfcnOcoRcoRcoRcoRcoRcqgcpjcqPcqPcqPcpncpncpjbTFbPxciGcqicqhcqkcqjciGcqlcnacqmciUcqncqpcqocqqciUclMclLcpiclNcqucqrcqzclNaaaaaaaaaaaaaaaaaacqvcqRcrkcrgcqvaafaaaaaaaaaaaacdOcoYcoYcoYcoicqAcqCcqBcqFcqEcqHcqGcqIcdOaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaafaaacqJaaaaafaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaafcrUcqMcqKcqScqQcpucqTcpucqUcqMcqTcpucqUcqMcpucpucpucpucpucqVcpucpucpucqXcqWcqZcqYcracqLcrccrbcrdcrVcrfcrecrhcsgcoKcqecricnOcrjcoRcoRcrlcoRcrmcpjcrIcrKcrJcrKcrLcpjbTFcrqciGcrocrncrrcrpcrtcrscrwcrucrycrxcrAcrzcrBciUcrEcrFcrGcrHcqvcrCcqvcrHaaaaaaaafaaaaaaaaacqvcrDcrNcrMcqvaafaafaaaaaaaaacdOcomcomcomcomcrOcpgcrQcrQcrQcnjcrQcrRcdOaaaaaaaaaaaaaaacrPcrPcrPcbOaafaafaafaafcrSaafaafaafaafaafaaqcrPcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcqDcpucqYcpucqYcpucqTcpucrTcrXcrWcrXcrZcrXcrXcsbcsacpucpucsdcsccsccsccsfcsecshcshcsicqLcskcsjcsmcnGcsocsncspcnGcsscsrcstcsqcsvcsucszcswcoRcsAcpjcsxcrKcsycrKcsBcpjbTFcizciGcsDcsCcsFcsEciGcfYcufcfYciUcsGcsJcsHcsKbTlcsIcrGcrGcqvcsMcsLcsNcqvcqvcqvcqvcqvcqvcqvcqvcsOcsQcsPcqvcqvcqvcrHaaaaaacdOcogcojcohcslcsRcqCcrQcrQcrQcnjcrQcsScdOaaaaaaaaaaaaaaacrPaaaaafaaaaafaaaaaaaaacsTaaaaafaafaaaaaaaaaaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaacqDcpucqYcpucsUcsWcsVcsZcsYctacrWcrXctbcrXcrXctdctcctfctecticthctkctjctjctlcqYcqYctmctgctnctocnzcnGctscnGcnGcnGctucttcstcvnctxcvtctBctycoRctCcpjcvOcrKcsycrKcvRcpjctvctwciGciGctDciGciGciGciBclMbTmciUciUciUctEciUciUcsIcrGaaacqvctHctGctIctFctKctJctMctLctOctNcqvcuVctPcuVcqvctQctRcqvaafaafcdOcoYcoYcoYctScpactUctTctWctVctXcrQctZcdOcdOcdOcdOaaaaaacrPaaacuacuacuacuacuaaafcsTaafcuacuacuacuacuaaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacqDcpucsUcsWcsWcsWcsVcsWcsWcsWcsVcsWcsWcsWcsWcsWcuccudcsWcuebTocugcsWcsWcsWcuicuhcukcujcpuculcuncumcupcuocurcuqcuocuscuucutcuwcuvcuvcuxcuvcuycwObTBcuAcuzcuBcuBcpjcuCcuDcwXcuFcuFcuGcuEcuHcuJcuJcuJcuJcwPcuJcuJcuJcuKcrFcrGaaactFcuLcuIcuMctFcuOcuNcuPcuPcuRcuQcuUcuPcuXcuPcuVcuYcuPcqvaaaaaacdOcoYcoYcoYcslcuZcvbcvacvdcvccvecrQcrQcvfcvhcvgcdOaafaafcrPaafcvicvjcvjcvjcvjcvkcsTcvmcvlcvlcvlcvlcvoaafcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacqDcpucpucpucpucpucqTcpucpucpucqTcpucpucpucpucpucqUcpucpucrabUdcvpcpucvrcvqcvucvscvwcvvcvxcvvcvzcvycvBcvAcvCcvycvycvDcvEcnLcvFcoRcvHcvGcoRcoRcwWcrKcrKbVxcuBcuBcpjbPxcAscvNcvNcvNcvNcxFcvNcvNcvNcvNclMbVBcrGcrGcrGcrGcrGcrGaaactFctFcvIctFctFcvKcvJcvPcvLcvScvQcvUcvTcvWcvVcvYcvXcvZcqvaaaaaacdOcomcomcomcomcwacpgcvacwccwbcwdcrQcrQcrQcrQcwecdOaaaaaacrPaafcwfcwfcwfcwfcwfaaacsTaaacwfcwfcwfcwfcwfaafcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaacbOaaaaaaaaaaaacqDcpucpucpucpucpucqTcpucpucpucqTcpucpucpucpucpucqUcpucpucracysbXfcpucpucwhcwhcwicpucpucwkcwjcwgcwgcwgcwgcygcwmcoKcwncwocsqcwpcoRcoRcvGcoRcwrcpjbXrcrKbXscwxcwwcpjbPxcvMcvNbXBbXvcwvcwucwzcwybYCcvNclMcxvcrGaaaaaaaaaaaaaaaaaacqvcwCcwBcwEcwDcwGcwFcwIcwHcwKcwJcwLcwScwNcwMcuWcuPcwQcqvaaaaaacdOcogcojcohckXcsRcvbcwRcwTcwTcwYcwVcxabYGcxccxbcdOaaaaaacrPaaaaafaaaaafaafaafaaacsTaaaaafaaaaafaaaaafaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacqDcpucpucpucpucpucxdcpucpucpucxdcpucpucpucpucpucqUcpucpucxfcxecxhcxgcxgcxhcxicxhcxkcxjcxmcxlcxocxncxqcxpcxrcwmcoKcxucoKcxRcxwcoRcoRcxxcoRcxycpjbYJbYJcxDcwxcwwcpjbPxcvMcvNcxAcxzcxGcxBcxHcxBcxIcvNcKUcJBcrGaaaaaaaaaaaaaaaaaacqvcxMcxLcxOcxNcxQcxPcxScxZcuTcxTcuScxEcuTcxUcqvcqvcqvcqvaaaaaacdOcoYcoZcoYcxVcpacpgcrQcrQcxWcxXcrQcxYcomcomcomcdOaaaaaacrPaaacuacuacuacuacuaaafcsTaafcuacuacuacuacuaaafcrPaaaczLaaaaaaczLaaaaaaaaaczLaaaaaaaaaaaaaaaczLaaaaaaaaaczLaaaaaaczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacqDcpucyacybcybcydcyccybcydcybcyecyfcsccsccyjcsccykcsccsccsfcylcwhcpucpucyncypcyocyrcyqcytcyscxocxncyucyucywcyvcoKcxucyxcnOcyycoRcyzcoRcoRcyAcpjcpjcpjcpjcpjcpjcpjbPxcvMcvNbZccyDcxzcyFcxzcxBbZhcvNcrGczfcrGaaaaaaaaaaaaaaaaaacqvcuVcyHctFctFcyJcyIcyKcyWcsOcsQcsPcyBcsOcuXcyLcqvaaaaaaaaaaaacdOcoYcoYcoYckXcyMcyNcrQcrQcrQcxXcrQcyOcrQcyPcrQczlaafaafcrPaafcvicvjcvjcvjcvjcvkcsTcvmcvlcvlcvlcvlcvoaafcrPaaaczLczLczLczLaaaaaaaaaczLczLczLczLczLczLczLaaaaaaaaaczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacqDcpucqTcpucpucpucxdcpucpucpucxdcpucpucpucyQcpucqUcpucpucpucyRcwhcpucpucyscxicyScyTcwgcAUcwgcwgcyUcyXcyVbZHcyvcoKcxucoKcnOcyZcyYczbczaczccoRcnObZWcBzcBzczhcBAcBDczNczOcvNcxBczdczgcxBczibZXcarcvNcKWcKVcrGaaaaaaaaaaaaaaaaaacqvcznczmczocuVczrczpczsctFczucztczvcyBcznczwczxcqvaaaaaaaaaaaackEcdOcAfcAgcAgczzczCczBczHczFczJczIczMczKczPconcAhaaaaaacrPaafcwfcwfcwfcwfcwfaaacsTaafcwfcwfcwfcwfcwfaaacrPaaaczLczLczLczLaaaaaaczLczLczLczLczLczLczLczLczLaaaaaaczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaIaaaaaacArcpucqTcpuczQcrXcrWcrXczRcrXcrWcrXczRcrXczScrXczTczVczUcxgczWcySczXczZczYcAbcAacAccwgcAdczycwgcwgcwgcwgcwgczAcnFcAecnFcnOcnOcnOcnOcnOcnOcnOcnOczDcBzcBzczEcANcAObPxcAPcvNcbecaVcAjcbgcbhcAVcbqcvNcKZcKYcrGaaaaaaaaaaaaaaaaaacqvcAocAnczxctFcBacBbcBcctFcAqcApcAtczGcAucApcAvcqvaafaafaaaaaaaaaaaacAwaaacdOcAxcAzcAycABcAAcAzcACcADcAAcAzcAEcdOaaaaaacbOaaaaafaaaaafaaaaafaaacsTaaaaafaaaaafaafaafaafcrPaaaczLczLczLczLaaaaaaczLczLczLczLczLczLczLczLczLaaaaaaczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaafaafcqDcpucqYcpucqYcpucqTcpucrTcrXcrWcrXcrZcrXcrXcsbcsacpucpucsdcsccsccsccsfcsecshcshcsicqLcskcsjcsmcnGcsocsncspcnGcsscsrcstcsqcsvcsucszcswcoRcsAcpjcsxcrKcsycrKcsBcpjbTFcfxciGcsDcsCcsFcsEciGcfYcufcfYciUcsGcsJcsHcsKbTkcsIcrGcrGcqvcsMcsLcsNcqvcqvcqvcqvcqvcqvcqvcqvcsOcsQcsPcqvcqvcqvcrHaaaaaacdOcogcojcohcslcsRcqCcrQcrQcrQcnjcrQcsScdOaaaaaaaaaaaaaaacrPaaaaafaaaaafaaaaaaaaacsTaaaaafaafaaaaaaaaaaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaafaaaaaacqDcpucqYcpucsUcsWcsVcsZcsYctacrWcrXctbcrXcrXctdctcctfctecticthctkctjctjctlcqYcqYctmctgctnctocnzcnGctscnGcnGcnGctucttcstcvnctxcvtctBctycoRctCcpjcvOcrKcsycrKcvRcpjctvctwciGciGctDciGciGciGciBclMbTlciUciUciUctEciUciUcsIcrGaaacqvctHctGctIctFctKctJctMctLctOctNcqvcuVctPcuVcqvctQctRcqvaafaafcdOcoYcoYcoYctScpactUctTctWctVctXcrQctZcdOcdOcdOcdOaaaaaacrPaaacuacuacuacuacuaaafcsTaafcuacuacuacuacuaaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacqDcpucsUcsWcsWcsWcsVcsWcsWcsWcsVcsWcsWcsWcsWcsWcuccudcsWcuebTmcugcsWcsWcsWcuicuhcukcujcpuculcuncumcupcuocurcuqcuocuscuucutcuwcuvcuvcuxcuvcuycwObTocuAcuzcuBcuBcpjcuCcuDcwXcuFcuFcuGcuEcuHcuJcuJcuJcuJcwPcuJcuJcuJcuKcrFcrGaaactFcuLcuIcuMctFcuOcuNcuPcuPcuRcuQcuUcuPcuXcuPcuVcuYcuPcqvaaaaaacdOcoYcoYcoYcslcuZcvbcvacvdcvccvecrQcrQcvfcvhcvgcdOaafaafcrPaafcvicvjcvjcvjcvjcvkcsTcvmcvlcvlcvlcvlcvoaafcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacqDcpucpucpucpucpucqTcpucpucpucqTcpucpucpucpucpucqUcpucpucrabTBcvpcpucvrcMicvucvscvwcvvcvxcvvcvzcvycvBcvAcvCcvycvycvDcvEcnLcvFcoRcvHcvGcoRcoRcwWcrKcrKbUdcuBcuBcpjbPxcAscvNcvNcvNcvNcxFcvNcvNcvNcvNclMbVxcrGcrGcrGcrGcrGcrGaaactFctFcvIctFctFcvKcvJcvPcvLcvScvQcvUcvTcvWcvVcvYcvXcvZcqvaaaaaacdOcomcomcomcomcwacpgcvacwccwbcwdcrQcrQcrQcrQcwecdOaaaaaacrPaafcwfcwfcwfcwfcwfaaacsTaaacwfcwfcwfcwfcwfaafcrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaacbOaaaaaaaaaaaacqDcpucpucpucpucpucqTcpucpucpucqTcpucpucpucpucpucqUcpucpucracysbVBcpucpucwhcwhcwicpucpucwkcwjcwgcwgcwgcwgcygcwmcoKcwncwocsqcwpcoRcoRcvGcoRcwrcpjbXfcrKbXrcwxcwwcpjbPxcvMcvNbXvbXscwvcwucwzcwybXBcvNclMcxvcrGaaaaaaaaaaaaaaaaaacqvcwCcwBcwEcwDcwGcwFcwIcwHcwKcwJcwLcwScwNcwMcuWcuPcwQcqvaaaaaacdOcogcojcohckXcsRcvbcwRcwTcwTcwYcwVcxabYCcxccxbcdOaaaaaacrPaaaaafaaaaafaafaafaaacsTaaaaafaaaaafaaaaafaaacrPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaacqDcpucpucpucpucpucxdcpucpucpucxdcpucpucpucpucpucqUcpucpucxfcxecxhcxgcxgcxhcxicxhcxkcxjcxmcxlcxocxncxqcxpcxrcwmcoKcxucoKcxRcxwcoRcoRcxxcoRcxycpjbYGbYGcxDcwxcwwcpjbPxcvMcvNcxAcxzcxGcxBcxHcxBcxIcvNcKUcJBcrGaaaaaaaaaaaaaaaaaacqvcxMcxLcxOcxNcxQcxPcxScxZcuTcxTcuScxEcuTcxUcqvcqvcqvcqvaaaaaacdOcoYcoZcoYcxVcpacpgcrQcrQcxWcxXcrQcxYcomcomcomcdOaaaaaacrPaaacuacuacuacuacuaaafcsTaafcuacuacuacuacuaaafcrPaaaczLaaaaaaczLaaaaaaaaaczLaaaaaaaaaaaaaaaczLaaaaaaaaaczLaaaaaaczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacqDcpucyacybcybcydcyccybcydcybcyecyfcsccsccyjcsccykcsccsccsfcylcwhcpucpucyncypcyocyrcyqcytcyscxocxncyucyucywcyvcoKcxucyxcnOcyycoRcyzcoRcoRcyAcpjcpjcpjcpjcpjcpjcpjbPxcvMcvNbYJcyDcxzcyFcxzcxBbZccvNcrGczfcrGaaaaaaaaaaaaaaaaaacqvcuVcyHctFctFcyJcyIcyKcyWcsOcsQcsPcyBcsOcuXcyLcqvaaaaaaaaaaaacdOcoYcoYcoYckXcyMcyNcrQcrQcrQcxXcrQcyOcrQcyPcrQczlaafaafcrPaafcvicvjcvjcvjcvjcvkcsTcvmcvlcvlcvlcvlcvoaafcrPaaaczLczLczLczLaaaaaaaaaczLczLczLczLczLczLczLaaaaaaaaaczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafaaaaaaaaacqDcpucqTcpucpucpucxdcpucpucpucxdcpucpucpucyQcpucqUcpucpucpucyRcwhcpucpucyscxicyScyTcwgcAUcwgcwgcyUcyXcyVbZhcyvcoKcxucoKcnOcyZcyYczbczaczccoRcnObZHcBzcBzczhcBAcBDczNczOcvNcxBczdczgcxBczibZWbZXcvNcKWcKVcrGaaaaaaaaaaaaaaaaaacqvcznczmczocuVczrczpczsctFczucztczvcyBcznczwczxcqvaaaaaaaaaaaackEcdOcAfcAgcAgczzczCczBczHczFczJczIczMczKczPconcAhaaaaaacrPaafcwfcwfcwfcwfcwfaaacsTaafcwfcwfcwfcwfcwfaaacrPaaaczLczLczLczLaaaaaaczLczLczLczLczLczLczLczLczLaaaaaaczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaIaaaaaacArcpucqTcpuczQcrXcrWcrXczRcrXcrWcrXczRcrXczScrXczTczVczUcxgczWcySczXczZczYcAbcAacAccwgcAdczycwgcwgcwgcwgcwgczAcnFcAecnFcnOcnOcnOcnOcnOcnOcnOcnOczDcBzcBzczEcANcAObPxcAPcvNcaVcarcAjcbecbgcAVcbhcvNcKZcKYcrGaaaaaaaaaaaaaaaaaacqvcAocAnczxctFcBacBbcBcctFcAqcApcAtczGcAucApcAvcqvaafaafaaaaaaaaaaaacAwaaacdOcAxcAzcAycABcAAcAzcACcADcAAcAzcAEcdOaaaaaacbOaaaaafaaaaafaaaaafaaacsTaaaaafaaaaafaafaafaafcrPaaaczLczLczLczLaaaaaaczLczLczLczLczLczLczLczLczLaaaaaaczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIvaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbOaaaaaaaaaaaIaaaaaacBKcpucqTcpucAFcAHcqTcpucAIcAHcqTcpucAJcAHcpucpucAKcpucALcAHcAMcARcAQcATcAScAXcAWcAYcwgcBdcAZcBfcBecBgcuocBicBhcuocBjcuocBlcuqcBmcBocBncBncBpcBqcBVcBWcBWcBXcBYcAObPxcBZcvNcvNcCacCbcDFcCbcCacCdcvNcrGcDIcrGaaaaaaaaaaaaaaaaaacqvctFcBrcuVctFcBtcBscBvctFcCjcCecrgcgvcCkcCecCmcrHaaaaaaaaaaaaaaaaaacBxaafcdOcBycBBclUcomclscBCclqcomclocBEclWcdOaaaaaacrPaaacuacuacuacuacuaaafcsTaafcuacuacuacuacuaaafcrPaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaafaafaafaaIaafaafcBKcpucBFcBJcBGcBMcBLcBPcBOcBRcBQcBTcBScBUcpucChcCccClcCicCpcCocnycnycnycnycnycnycnycnycEJcBNczAcCqcCscoKcCtcoKcoKcxucoKcoKcCucoKcCscCwcCycCxcCrcCzcCBcCAcCCcFCcAObPwcCRcbscCTcCacAGcAVcBwcCacCLcCJcCOcCNcCPaaaaaaaaaaaaaaaaaacqvcCScCQcCVcCUcCWcuPcCYcCXcCDaafaaacCZcDbcDacLMaaaaaaaaaaacaaaaaaaaaaaaaaacdOcDdcoYcoYcomcDfcoYcoYcomcDfcoYcoYcdOaafaafcrPaafcvicvjcvjcvjcvjcvkcsTcvmcvlcvlcvlcvlcvoaafcrPaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPcDgaaaaaaaaIaaaaaacCEcCHcCGcCKcCIcDncDecDqcCIcDncDecDqcCIcDncDXcDXcEbcDqcCIcDncEccnyaaacCMcDhcDmcDicDtcDpcDjcDucDkcDkcDvcDlcDocFPcFWcDwcFPcFWcDocDrcDxcDscDrczAczAcAOcGEcGAcDPcDQcAObNUcbwcDBcDCcCacCbcGMcCbcCacDGcLRcDHaafaaaaaaaaaaaaaaaaaaaaacqvcCScDKcDMcDLcDLcDMczvcDNcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdOcDOcoYcoYcomcDScoYcoYcomcDScoYcoYcdOaaaaaacrPaafcwfcwfcwfcwfcwfaaacsTaaacwfcwfcwfcwfcwfaaacrPaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaafaafaafaaIaafaafcBKcpucBFcBJcBGcBMcBLcBPcBOcBRcBQcBTcBScBUcpucChcCccClcCicCpcCocnycnycnycnycnycnycnycnycEJcBNczAcCqcCscoKcCtcoKcoKcxucoKcoKcCucoKcCscCwcCycCxcCrcCzcCBcCAcCCcFCcAObPwcCRcbqcCTcCacAGcAVcBwcCacCLcCJcCOcCNcCPaaaaaaaaaaaaaaaaaacqvcCScCQcCVcCUcCWcuPcCYcCXcCDaafaaacCZcDbcDacLMaaaaaaaaaaacaaaaaaaaaaaaaaacdOcDdcoYcoYcomcDfcoYcoYcomcDfcoYcoYcdOaafaafcrPaafcvicvjcvjcvjcvjcvkcsTcvmcvlcvlcvlcvlcvoaafcrPaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPcDgaaaaaaaaIaaaaaacCEcCHcCGcCKcCIcDncDecDqcCIcDncDecDqcCIcDncDXcDXcEbcDqcCIcDncEccnyaaacCMcDhcDmcDicDtcDpcDjcDucDkcDkcDvcDlcDocFPcFWcDwcFPcFWcDocDrcDxcDscDrczAczAcAOcGEcGAcDPcDQcAObNUcbscDBcDCcCacCbcGMcCbcCacDGcLRcDHaafaaaaaaaaaaaaaaaaaaaaacqvcCScDKcDMcDLcDLcDMczvcDNcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdOcDOcoYcoYcomcDScoYcoYcomcDScoYcoYcdOaaaaaacrPaafcwfcwfcwfcwfcwfaaacsTaaacwfcwfcwfcwfcwfaaacrPaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPcDTcHjcHjcHCcHjcHjcHjcHjcHVcHjcIAcHjcHVcHjcIAcHjcHVcHjcIAcHjcHjcHjcIAcHjcIAcHjcIMaafaaacDzcDycDUcDAcDDcDVcDjcDWcDkcDYcEacDZcDJcEdcEfcEecEjcEicDJcElcEqcEmcDraaaaafcAOcEscErcEDaafaaabNUbPxbPxbSkcCacEucEtcEvcCaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqvcEwcuYcEycExcExcEycuPcEzcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdOcoYcoYcoYcomcEAcoYcoYcomcEAcoYcoYcdOaacaaacrPaaaaaaaafaafaafaaaaaacEBaafaaaaaaaafaafaaaaaacrPaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaafaafaaaaaqaaaaaaaafcgEcmtcmDcEgcgEcmtcmDcEgcgEcmtcmDcEhcgEaaacgEcEgcmDcEhcgEaaaaafaaacDzcJCcbJcEkcEncEEcEpcEocDkcEFcEHcEGcDJcEIcELcEKcENcEMcDJcEOcEQcEPcDraaaaaacAOcEScbKcFiaaaaaabNUbPxbPxbNUcCacETcETcETcCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqvcEWcEUcEZcEXcuPcuPcuPcFbcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackEcdOcdOcdOcdOcdOcdOcdOcdOcFccFccFcckEaaaaaacrPcrPcrPcrPcrPaaaaaaaaacqJaaaaaaaaacrPcrPcrPcbOcrPaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaafaafaaaaaqaaaaaaaafcgEcmtcmDcEgcgEcmtcmDcEgcgEcmtcmDcEhcgEaaacgEcEgcmDcEhcgEaaaaafaaacDzcJCcbwcEkcEncEEcEpcEocDkcEFcEHcEGcDJcEIcELcEKcENcEMcDJcEOcEQcEPcDraaaaaacAOcEScbJcFiaaaaaabNUbPxbPxbNUcCacETcETcETcCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqvcEWcEUcEZcEXcuPcuPcuPcFbcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackEcdOcdOcdOcdOcdOcdOcdOcdOcFccFccFcckEaaaaaacrPcrPcrPcrPcrPaaaaaaaaacqJaaaaaaaaacrPcrPcrPcbOcrPaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaaaaafaafaaIaaaaaaaafcgEcFdcFfcFecgEcFgcFjcFhcgEcFkcFncFlcgEaafcgEcFocFscFrcgEaaaaafaaacDzcEVcDUcEncEncFtcEYcFucFacFvcFxcFwcFzcFycFDcFBcFFcFEcFpcFmcFGcFqcDraafaaacFJcKGcKFcAOcKHaaabNUbPxcKIcFNcFOaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrHcqvcqvcGgcFHcEycEycEycFIcGgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFKcFKcFKaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaafcFLaafcrPaaaaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaIaaaaafaafcgEcFQcFRcFQcgEcFScFUcFScgEcFVcFZcFVcgEaaacgEcGacGacGbcgEaaaaafaaacDzcDhcGccEkcEncDVcFAcDWcDkcGecGicGfcDJcGkcGncGmcGncGocDJccJcFTcefcDraapcGvcGucKPcKOcGucGucGBbNUciEciDcGjaafaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGhcGDcGKcGKcGKcGNcGhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaaaaafaaacrPaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaIaaaaafaafcgEcFQcFRcFQcgEcFScFUcFScgEcFVcFZcFVcgEaaacgEcGacGacGbcgEaaaaafaaacDzcDhcGccEkcEncDVcFAcDWcDkcGecGicGfcDJcGkcGncGmcGncGocDJcbKcFTccJcDraapcGvcGucKPcKOcGucGucGBbNUciEciDcGjaafaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGhcGDcGKcGKcGKcGNcGhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaaaaafaaacrPaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaIaafaafaaacgEcFQcGOcFQcgEcFScGPcFScgEcFVcGTcFVcgEaafcgEcGacGYcGacgEaafaafaafcFYcFXcHacGZcHgcHfcGdcDWcDkcHhcHmcHlcDJcHncHpcHocHscHrcDJcHzcGrcHAcDraaacHBcKXcHGcHEcLccLbcHHcGFcGGcGHbNUaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqvcGlcrkcrkcrkcCmcqvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPcrPcrPcrPcrPaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbOaaaaaacgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEcgEaaacGscgEcgEcgEcgEaaaaaaaaaaaacBNcBNcBNcBNcBNcLecGtcGtcGtcGtcLfcGtcGwcGycGxcGycGzcGtcGtcLgcGtcGtcGtcHBcKXcHQcHIcLkcLjcLlaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaaaaaaaafaafaaaaafaafaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaafaaacGQcGRcGRcGRcGScHRcfvcGCcGIcHTcHUcGJcHXcGLcIdcIbcIfcIecGVcGUcGXcGWcLpcIgcHbcLqcIgcGtcHBcKXcIicIhcLucLtcIkaafaaacGQcHccGQcHccGQcHcaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrPaaaaaaaafaafaaaaafaafaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaafaaacGQcGRcGRcGRcGScHRcefcGCcGIcHTcHUcGJcHXcGLcIdcIbcIfcIecGVcGUcGXcGWcLpcIgcHbcLqcIgcGtcHBcKXcIicIhcLucLtcIkaafaaacGQcHccGQcHccGQcHcaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaafcIucIwcIvaaacIucIwcIvaaacIucIwcIvaafaafaaaaafaafaafaafaafcHqcGRcGRcGRcGScHRcIxcHecIzcLScIBcHicICcHkcIGcIDcINcIJcHucHtcHucHucHucHvcHucHwcHxcGtcIRcGucGucGucGucGucITaafaafcHycHycHycHycHycHyaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaacIucIUcIvaaacIucIUcIvaaacIucIUcIvaafaafaaaaafaaaaaacHKaafcGQcGRcGRcGRcGScHRcIxcIVcIXcLZcIYcHicIZcHDcHFcHbcHbcHbcJdcJbcJhcHbcHbcHDcHLcHJcHMcGtcGtcGtcHNaaaaaaaaaaaacHOaaacHPcHPcHPcHPcHPcHPaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafcIucIUcIvaaacIucIUcIvaafcIucIUcIvaafaaaaaaaafaafcIcaaaaafcHqcGRcGRcGRcGScHRcJjcJicJlcMacJrcJpcJscHWcHZcHYcHYcHYcJtcIacJucHYcHYcJvcJxcJwcJzcJycJAcIjcImcIlcIlcIlcIlcIlcIlcIncIocIncIocIncHyaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaacIucIUcIvaafcIucIUcIvaaacIucIUcIvaaaaaaaaaaaaaafaafaaaaafaaaaaaaaaaaaaafcIpcIrcIqcIscMbcJDcGJcHbcHbcHbcHbcJFcJEcJJcJHcJMcJLcJPcJOcIFcIEcIHcJQcJRcIIcImcIOcIPcIOcIPcIOcIPcIOcIPcIOcIPcIOcHyaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamaaIaafaaacIucIUcIvaafcIucIUcIvaaacIucIUcIvaafaaaaaaaaaaaaaafaafcJScIKcIKcIKcIKcILcILcILcILcILcItcILcGtcIQcHbcHbcHbcJUcGtcLEcIScLFcGtcKacJVcKdcKccKfcKecKkcGtaaacHPcHPcHPcHPcJmcHPcHPcHPcHPcHPcHPcHPaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczLczLczLczLczLczLczLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaaaaafaafcKmaafaafaafcKmaafaaaaafcKmaafaaaaaaaaaaaaaaacKocKqcKpcKscKrcJncJacKtcJcciFcJecJfcJgcJecGtcLIcJocHbcHbcKucJqcKwcKvcKBcJNcKEcKCcJxcJwcKKcKJcKLcGtaafcHycHycHycHycHycHycHycHycHycHycHycHyaafaanaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafcKNcKMcKRcKQcKQcKQcKQcKQcKQcKQcKQcKQcKQcKQcKScKMcKMcKMcKTcLKcMdcfxcMfcMecMgcJGcMhcJIcJIcJIcLJcLCcJKcGtcLacLacHbcHbcKucKbcLhcLdcLicLVcKEcKucIFcJZcIHcLmcLncGtaafcHycHycHycHycHycHycHycHycHycHycHycHyaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIaafcKNcKMcKRcKQcKQcKQcKQcKQcKQcKQcKQcKQcKQcKQcKScKMcKMcKMcKTcLKcMdcfvcMfcMecMgcJGcMhcJIcJIcJIcLJcLCcJKcGtcLacLacHbcHbcKucKbcLhcLdcLicLVcKEcKucIFcJZcIHcLmcLncGtaafcHycHycHycHycHycHycHycHycHycHycHycHyaafcHdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYaaactYctYctYctYctYaaactYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaafaaaaafaafcLoaafaaaaafcLoaafaaaaafcLoaafaaaaaaaaaaaaaaacKocKqcLrcLscJTcLQcIKcLvcJWcJecJecJXcJXcJYcGtcLacLacHbcHbcKucLWcLhcLwcLxcLXcLzcLycLBcLAcLGcLDcLHcGtaaacHPcHPcHPcHPcJmcHPcHPcHPcHPcHPcHPcHPaafaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYaaactYctYctYctYctYaaactYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaamaaIaafaafcIucLLcIvaaacIucLLcIvaaacIucLLcIvaafaaaaaaaaaaaaaafaafcLNcIKcIKcIKcIKcKgcKhcKicKicKjcKgcKgcGtcGtcGJcGtcGtcGtcGtcGtcLOcGtcGtcGtcGtcGtcGJcGtcGtcGtcGtaafcHycHycHycHycHycHycHycHycHycHycHycHyaafaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYaaaaaaaaaaaaaaaaaaaaactYctYctYctYctYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacIucLLcIvaafcIucLLcIvaaacIucLLcIvaaaaaaaaaaafaaaaafaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaafaaacKxaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaacHqcKycHqcKycKzcKycHqcKycHqcKycHqcKyaafaamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacKlcKlcKlcKlcKlcKlcKlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
diff --git a/maps/polaris-1.dmm b/maps/polaris-1.dmm
index d528273012..104f2a0452 100644
--- a/maps/polaris-1.dmm
+++ b/maps/polaris-1.dmm
@@ -769,12 +769,12 @@
"aoO" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/carpet,/area/security/detectives_office)
"aoP" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/table/woodentable,/obj/item/device/taperecorder{pixel_x = -4; pixel_y = 2},/turf/simulated/floor/carpet,/area/security/detectives_office)
"aoQ" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Detective"},/turf/simulated/floor/carpet,/area/security/detectives_office)
-"aoR" = (/obj/machinery/photocopier,/obj/structure/window/basic{dir = 8},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"aoS" = (/obj/structure/closet{name = "Evidence Closet"},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/evidence,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"aoT" = (/obj/structure/filingcabinet/security{desc = "A large cabinet with hard copy security records."; name = "Security Records"},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"aoU" = (/obj/structure/filingcabinet/medical{desc = "A large cabinet with hard copy medical records."; name = "Medical Records"},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"aoV" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"aoW" = (/obj/machinery/newscaster{pixel_y = 32},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/obj/structure/table/glass,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"aoR" = (/obj/structure/table/woodentable,/obj/item/clothing/glasses/sunglasses,/obj/item/weapon/paper_bin,/turf/simulated/floor/carpet,/area/security/detectives_office)
+"aoS" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/carpet,/area/security/detectives_office)
+"aoT" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"aoU" = (/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/table/reinforced,/obj/machinery/microscope,/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"aoV" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/spray/luminol,/obj/item/device/uv_light,/obj/item/clothing/gloves/latex,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"aoW" = (/obj/structure/table/reinforced,/obj/machinery/computer/med_data/laptop,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
"aoX" = (/obj/machinery/light/small{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/plating,/area/hallway/secondary/escape/fore_escape_pod_hallway)
"aoY" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/hallway/secondary/escape/fore_escape_pod_hallway)
"aoZ" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/plating,/area/hallway/secondary/escape/fore_escape_pod_hallway)
@@ -812,12 +812,12 @@
"apF" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "chapel_maint_airlock"; name = "exterior access button"; pixel_x = 0; pixel_y = -25; req_access = list(13)},/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/maintenance/chapel)
"apG" = (/obj/structure/closet/secure_closet/detective,/obj/item/weapon/reagent_containers/food/drinks/flask/detflask,/turf/simulated/floor/lino,/area/security/detectives_office)
"apH" = (/turf/simulated/floor/carpet,/area/security/detectives_office)
-"apI" = (/obj/structure/table/woodentable,/obj/item/clothing/glasses/sunglasses,/turf/simulated/floor/carpet,/area/security/detectives_office)
+"apI" = (/obj/machinery/computer/secure_data/detective_computer,/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
"apJ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/turf/simulated/floor/carpet,/area/security/detectives_office)
-"apK" = (/obj/structure/window/basic{dir = 8},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"apK" = (/obj/structure/table/woodentable,/obj/item/device/flash,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/obj/item/device/radio/intercom{broadcasting = 0; dir = 8; frequency = 1475; icon_state = "secintercom"; listening = 1; name = "Station Intercom (Security)"; pixel_x = 21; pixel_y = 0},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/lino,/area/security/detectives_office)
"apL" = (/turf/simulated/floor/tiled/white,/area/security/detectives_office)
"apM" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"apN" = (/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/weapon/folder/blue,/obj/item/weapon/pen/blue{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red,/obj/structure/table/glass,/obj/machinery/requests_console{pixel_x = 30},/obj/machinery/camera/network/security{c_tag = "SEC - Forensic Office"; dir = 8},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"apN" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/obj/machinery/light{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/lino,/area/security/detectives_office)
"apO" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_1_berth_hatch"; locked = 1; name = "Escape Pod 1"; req_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/escape/fore_escape_pod_hallway)
"apP" = (/obj/structure/sign/pods,/turf/simulated/wall,/area/hallway/secondary/escape/fore_escape_pod_hallway)
"apQ" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_2_berth_hatch"; locked = 1; name = "Escape Pod 2"; req_access = list(13)},/turf/simulated/floor/plating,/area/hallway/secondary/escape/fore_escape_pod_hallway)
@@ -850,13 +850,13 @@
"aqr" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/dark,/area/chapel/main)
"aqs" = (/obj/machinery/door/airlock/maintenance{name = "Chapel Maintenance"; req_one_access = list(12,22)},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/chapel)
"aqt" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/lino,/area/security/detectives_office)
-"aqu" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet,/area/security/detectives_office)
-"aqv" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/carpet,/area/security/detectives_office)
-"aqw" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet,/area/security/detectives_office)
-"aqx" = (/obj/structure/filingcabinet/chestdrawer,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/lino,/area/security/detectives_office)
-"aqy" = (/obj/structure/window/basic{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"aqz" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"aqA" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"aqu" = (/obj/structure/table/reinforced,/obj/item/weapon/forensics/sample_kit,/obj/item/device/radio/intercom{broadcasting = 0; dir = 8; frequency = 1475; icon_state = "secintercom"; listening = 1; name = "Station Intercom (Security)"; pixel_x = 21; pixel_y = 0},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"aqv" = (/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"aqw" = (/obj/structure/table/reinforced,/obj/item/weapon/forensics/sample_kit/powder,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"aqx" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/swabs{layer = 5},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/item/weapon/folder/red,/obj/item/weapon/folder/blue{pixel_y = -3},/obj/item/weapon/folder/yellow{pixel_y = -5},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"aqy" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/wall/r_wall,/area/security/detectives_office)
+"aqz" = (/obj/structure/table/rack,/obj/item/weapon/storage/briefcase/crimekit,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"aqA" = (/obj/machinery/dnaforensics,/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
"aqB" = (/obj/machinery/door/airlock/maintenance{name = "Detective Maintenance"; req_access = list(4)},/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
"aqC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/escape/fore_escape_pod_hallway)
"aqD" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth{frequency = 1380; id_tag = "escape_pod_1_berth"; pixel_x = -25; pixel_y = 30; tag_door = "escape_pod_1_berth_hatch"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/escape/fore_escape_pod_hallway)
@@ -900,21 +900,21 @@
"arp" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/main)
"arq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/chapel)
"arr" = (/turf/simulated/floor,/area/maintenance/chapel)
-"ars" = (/obj/structure/table/woodentable,/obj/item/device/flash,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/obj/item/device/radio/intercom{broadcasting = 0; dir = 8; frequency = 1475; icon_state = "secintercom"; listening = 1; name = "Station Intercom (Security)"; pixel_x = 21; pixel_y = 0},/turf/simulated/floor/lino,/area/security/detectives_office)
+"ars" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/cable/green,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/detectives_office)
"art" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor/lino,/area/security/detectives_office)
"aru" = (/obj/structure/table/rack,/obj/item/weapon/storage/briefcase{pixel_x = -2; pixel_y = -5},/obj/item/weapon/storage/briefcase{pixel_x = 3; pixel_y = 0},/obj/machinery/light,/turf/simulated/floor/lino,/area/security/detectives_office)
"arv" = (/obj/structure/closet{name = "Evidence Closet"},/turf/simulated/floor/lino,/area/security/detectives_office)
-"arw" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/lino,/area/security/detectives_office)
+"arw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/detectives_office)
"arx" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/security{c_tag = "SEC - Detective Office"; dir = 1},/obj/structure/disposalpipe/segment,/obj/structure/flora/pottedplant{tag = "icon-plant-10"; icon_state = "plant-10"},/turf/simulated/floor/lino,/area/security/detectives_office)
"ary" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light,/turf/simulated/floor/lino,/area/security/detectives_office)
"arz" = (/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 12; pixel_y = -24},/turf/simulated/floor/lino,/area/security/detectives_office)
"arA" = (/obj/structure/noticeboard{pixel_y = -30},/turf/simulated/floor/lino,/area/security/detectives_office)
"arB" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/structure/closet/wardrobe/detective,/turf/simulated/floor/lino,/area/security/detectives_office)
-"arC" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/door/window/westleft{name = "Forensics Area"; req_access = list(4)},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"arD" = (/obj/machinery/computer/forensic_scanning,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"arE" = (/obj/machinery/computer/med_data,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"arF" = (/obj/machinery/computer/secure_data,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
-"arG" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"arC" = (/obj/structure/table/reinforced,/obj/item/device/mass_spectrometer/adv,/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/item/weapon/reagent_containers/syringe,/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"arD" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/detectives_office)
+"arE" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/detectives_office)
+"arF" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/detectives_office)
+"arG" = (/obj/machinery/camera/network/security{c_tag = "EVA Northeast"; dir = 8},/obj/machinery/photocopier,/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
"arH" = (/obj/machinery/newscaster{pixel_x = 0; pixel_y = -28},/turf/simulated/floor/tiled,/area/hallway/secondary/escape/fore_escape_pod_hallway)
"arI" = (/obj/machinery/light,/turf/simulated/floor/tiled,/area/hallway/secondary/escape/fore_escape_pod_hallway)
"arJ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled,/area/hallway/secondary/escape/fore_escape_pod_hallway)
@@ -948,7 +948,7 @@
"asl" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "security_lockdown"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/brig)
"asm" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "security_lockdown"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/brig)
"asn" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "security_lockdown"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/brig)
-"aso" = (/obj/item/device/mass_spectrometer,/obj/item/device/reagent_scanner,/obj/structure/table/glass,/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -26},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"aso" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
"asp" = (/turf/simulated/wall,/area/security/detectives_office)
"asq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/detectives_office)
"asr" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/detectives_office)
@@ -1023,7 +1023,7 @@
"atI" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/hallway/secondary/civilian_hallway_mid)
"atJ" = (/obj/effect/floor_decal/chapel{tag = "icon-chapel (WEST)"; icon_state = "chapel"; dir = 8},/obj/item/weapon/stool/padded,/turf/simulated/floor/tiled/dark,/area/chapel/main)
"atK" = (/obj/effect/floor_decal/chapel,/obj/item/weapon/stool/padded,/turf/simulated/floor/tiled/dark,/area/chapel/main)
-"atL" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/item/weapon/soap,/obj/item/clothing/glasses/hud/security/prescription,/obj/item/clothing/glasses/hud/security/prescription,/turf/simulated/floor/tiled/freezer,/area/security/security_bathroom)
+"atL" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/item/weapon/soap,/turf/simulated/floor/tiled/freezer,/area/security/security_bathroom)
"atM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled,/area/security/interrogation)
"atN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/security{name = "Interrogation Observation"; req_access = list(63)},/turf/simulated/floor/tiled,/area/security/interrogation)
"atO" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled,/area/security/brig)
@@ -3122,7 +3122,7 @@
"bib" = (/obj/machinery/vending/wallmed1{pixel_y = -32},/obj/machinery/camera/network/medbay{c_tag = "MED - Operating Theatre 2"; dir = 1},/turf/simulated/floor/tiled/white,/area/medical/surgery2)
"bic" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/light_switch{pixel_x = 32; pixel_y = 2},/obj/effect/floor_decal/corner/pink/full{dir = 4},/obj/machinery/button/holosign{pixel_x = 24; pixel_y = 2},/turf/simulated/floor/tiled/white,/area/medical/surgery2)
"bid" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/simulated/floor/tiled/white,/area/medical/surgery_hallway)
-"bie" = (/obj/structure/table/standard,/obj/item/weapon/cane,/obj/item/weapon/cane{pixel_x = -3; pixel_y = 2},/obj/item/weapon/storage/box/rxglasses,/obj/effect/floor_decal/corner/pink{dir = 9},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/item/clothing/glasses/hud/health/prescription,/obj/item/clothing/glasses/hud/health/prescription,/turf/simulated/floor/tiled/white,/area/medical/exam_room)
+"bie" = (/obj/structure/table/standard,/obj/item/weapon/cane,/obj/item/weapon/cane{pixel_x = -3; pixel_y = 2},/obj/item/weapon/storage/box/rxglasses,/obj/effect/floor_decal/corner/pink{dir = 9},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/turf/simulated/floor/tiled/white,/area/medical/exam_room)
"bif" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/exam_room)
"big" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/exam_room)
"bih" = (/obj/effect/floor_decal/corner/pink{dir = 6},/obj/machinery/light{dir = 4; icon_state = "tube1"; pixel_x = 0},/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_x = 25; pixel_y = 16},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/exam_room)
@@ -7141,7 +7141,7 @@
"cHq" = (/obj/machinery/status_display/supply_display,/turf/simulated/wall,/area/quartermaster/warehouse)
"cHr" = (/obj/structure/closet/crate/medical,/obj/effect/floor_decal/corner/brown/full,/turf/simulated/floor/tiled,/area/quartermaster/warehouse)
"cHs" = (/turf/simulated/floor/tiled/steel,/area/quartermaster/warehouse)
-"cHt" = (/obj/structure/closet/crate/internals,/obj/machinery/light/small,/turf/simulated/floor/tiled/steel,/area/quartermaster/warehouse)
+"cHt" = (/obj/machinery/light/small{brightness_color = "#DA0205"; brightness_power = 1; brightness_range = 5},/obj/structure/closet/crate/internals,/turf/simulated/floor/tiled/steel,/area/quartermaster/warehouse)
"cHu" = (/obj/structure/closet/crate/freezer,/obj/effect/floor_decal/corner/brown/full{dir = 4},/turf/simulated/floor/tiled/steel,/area/quartermaster/warehouse)
"cHv" = (/turf/simulated/floor/reinforced/airless,/area/engineering/atmos)
"cHw" = (/obj/machinery/camera/network/engineering{c_tag = "Atmos Tank - Gas Mixing"; dir = 2},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/reinforced/airless,/area/engineering/atmos)
@@ -7262,7 +7262,7 @@
"cJH" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 2; frequency = 1441; icon_state = "map_injector"; id = "waste_in"; pixel_y = 1; use_power = 1},/turf/simulated/floor/reinforced/airless,/area/engineering/atmos)
"cJI" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "waste_sensor"; output = 63},/turf/simulated/floor/reinforced/airless,/area/engineering/atmos)
"cJJ" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; external_pressure_bound = 0; external_pressure_bound_default = 0; frequency = 1441; icon_state = "map_vent_in"; id_tag = "waste_out"; initialize_directions = 1; internal_pressure_bound = 4000; internal_pressure_bound_default = 4000; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0; use_power = 1},/turf/simulated/floor/reinforced/airless,/area/engineering/atmos)
-"cJK" = (/obj/machinery/power/smes/buildable{charge = 2e+006; input_attempt = 1; RCon_tag = "Substation - Atmospherics"},/obj/structure/cable/cyan{d2 = 4; icon_state = "0-4"},/turf/simulated/floor,/area/engineering/atmos/storage)
+"cJK" = (/obj/machinery/power/smes/buildable{charge = 2e+006; RCon_tag = "Substation - Atmospherics"},/obj/structure/cable/cyan{d2 = 4; icon_state = "0-4"},/turf/simulated/floor,/area/engineering/atmos/storage)
"cJL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor,/area/engineering/atmos/storage)
"cJM" = (/obj/structure/cable/cyan{d2 = 8; icon_state = "0-8"},/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/obj/machinery/power/sensor{name = "Powernet Sensor - Atmospherics Subgrid"; name_tag = "Atmospherics Subgrid"},/obj/structure/cable/cyan,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor,/area/engineering/atmos/storage)
"cJN" = (/obj/machinery/computer/general_air_control{frequency = 1443; level = 3; name = "Distribution and Waste Monitor"; sensors = list("mair_in_meter" = "Mixed Air In", "air_sensor" = "Mixed Air Supply Tank", "mair_out_meter" = "Mixed Air Out", "dloop_atm_meter" = "Distribution Loop", "wloop_atm_meter" = "Engine Waste")},/turf/simulated/floor/tiled,/area/engineering/atmos/monitoring)
@@ -9117,7 +9117,7 @@
"dtq" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor,/area/engineering/engine_waste)
"dtr" = (/obj/machinery/atmospherics/pipe/simple/visible/black,/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; icon_state = "intact"; tag = "icon-intact (EAST)"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor,/area/engineering/engine_waste)
"dts" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor,/area/engineering/engine_waste)
-"dtt" = (/obj/machinery/power/smes/buildable{charge = 1.5e+007; cur_coils = 4; input_attempt = 1; input_level = 500000; output_level = 700000; RCon_tag = "Engine - Main"},/obj/structure/cable,/turf/simulated/floor/plating,/area/engineering/engine_smes)
+"dtt" = (/obj/machinery/power/smes/buildable{charge = 1e+007; cur_coils = 4; input_attempt = 1; input_level = 500000; output_level = 500000; RCon_tag = "Engine - Main"},/obj/structure/cable,/turf/simulated/floor/plating,/area/engineering/engine_smes)
"dtu" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/power/terminal{dir = 8},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/button/remote/airlock{id = "engine_electrical_maintenance"; name = "Door Bolt Control"; pixel_x = 26; pixel_y = 0; req_access = list(10); specialfunctions = 4},/turf/simulated/floor/tiled,/area/engineering/engine_smes)
"dtv" = (/obj/machinery/computer/general_air_control/supermatter_core{frequency = 1438; input_tag = "cooling_in"; name = "Engine Cooling Control"; output_tag = "cooling_out"; pressure_setting = 100; sensors = list("engine_sensor" = "Engine Core")},/turf/simulated/floor/tiled,/area/engineering/engine_monitoring)
"dtw" = (/obj/machinery/computer/rcon,/turf/simulated/floor/tiled,/area/engineering/engine_monitoring)
@@ -9486,6 +9486,22 @@
"dAv" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "d1a2_dock_airlock"; name = "interior access button"; pixel_x = -28; pixel_y = 26; req_one_access = list(13)},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1)
"dAw" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "d1a2_dock_inner"; locked = 1; name = "Docking Port Airlock"; req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1)
"dAx" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "d1a4_dock_pump"},/obj/machinery/light/small,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1)
+"dAy" = (/obj/machinery/light,/obj/machinery/chem_master,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"dAz" = (/obj/machinery/light,/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -25},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"dAA" = (/obj/machinery/status_display{pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"dAB" = (/obj/machinery/door/window/westleft{name = "Forensics Area"; req_access = list(4)},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"dAC" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/lino,/area/security/detectives_office)
+"dAD" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/carpet,/area/security/detectives_office)
+"dAE" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/carpet,/area/security/detectives_office)
+"dAF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/security/detectives_office)
+"dAG" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/carpet,/area/security/detectives_office)
+"dAH" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"dAI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"dAJ" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"dAK" = (/obj/structure/filingcabinet/chestdrawer,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/lino,/area/security/detectives_office)
+"dAL" = (/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/table/reinforced,/obj/item/weapon/storage/box/slides,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/freezer,/area/security/detectives_office)
+"dAM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
+"dAN" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/white,/area/security/detectives_office)
(1,1,1) = {"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -9570,13 +9586,13 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuaahaahaahaahalkallalmalnalkaddaddaloalpalqaddaddaddaddaddaddaddaddaddalralsaltahqahqahqahqahqahqahqahqahqahqaluahqalvalwalxahqaahaahaahaahaahaahaahaahaktalyaktalzakualAalBalCalDalEakualFalGaiTalHalIalJalKalLalMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalNalOalPaaaalQalRalSahuahuaahaahaahaahaahalkanOalUalValkalWaiaakLaddaddaddaahaahaahaahaahaahaahahqahqahqahqahqaahaahaahaahaahaahaahahuahuahualXahralYahHahqaahaahaahaahaahaahaahaahaktalZamaalZambamcamdameamfamgakuamhamiaiTaiTamjamkamlammamnahuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamoampamqampamramsamtamsamraahaahaahaahaahaahalkamuamvamwalkamxairadTaddaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahahuahuahUahralYamyahqaahaahaahaahaahaahaahaahaktalZalZalZamzamfamAamBamCamDakuabqamEamFaiTajBamGamHammamIahuahuahuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamoampamJampamramsamKamsamraahaahaahaahaahaahalkamLamMalkalkaddairamNaddaahaahaahaahamOamOamOamOamOamOamOamOamOamOamPamPamPamPamPamPamPamPahuahuahUamQamRahHahqaahaahaahaahaahaahaahaahaktamSalZalZakuamTamUamVamTamUakuaktaaSamWaiTaiTamXaiTaiTaiTaahahuahuahuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamoamYamZamoamoamoanaanbamoaaaaaaaaaaaaaaaaaaamoampancampamramsandamsamraahaahaahaahaahaahaneanfanganeanhaddairadTaddaahaahaahamOamOanianjankanlanjanmanmanjannamPanoanpanqanransantamPamPahuahUahSanuanvahqaahaahaahaahaahaahaahaahaktanwanxanyanzanAanBanCanDanEanFaktanGanHanIanJanKanLanLanManManManManNahuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuamoamoanTanPanQanRanSanParsamoamoamoamoamoamoamoamoanUanVanWamranXanYanZamraahaahaahaahaahaahaneaoaaobaneaddaddaocaddaddaahaahaahamOaodaoeaofanmanmanmanmaogaoganjamPaohaoiaojaokaojaojaolaomahuaonahralYahHahqaahaahaahaahaahaahaahaahaktaooaopaoqaoraosaotaouaovaowaoxaoyaozaozaoAaoBaoCaoDaoEaoFaoGaoHaoIaoJahuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuamoaoKaoLaoMaoNaoOaoNaoPaoQaoKaoRaoSaoTaoUaoVaoWamoaoXaoYaoZamrapaaoYapbamraneaneaneaahaahaahaneapcanganeapdapeapfapgaphaphaphaphaphapiapjapkapkaplanmapmaogaoganmamPapnaojaojapoaojaojappamPaomahqahralYapqahqaahaahaahaahaahaahaahaahaktapralZalZapsaptapuapvalZalZapwaktapxanGapyapzapAanGapBapCapDapEaoIapFahuahuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuahuamoapGapHapIapHapJapHapIapHapGapKapLapLapMapLapNamoaneapOapPamraneapQapPamrapRapRaneaneaneaneaneanfapSapTapUapVapWapeaphapXapYapZaqaanmanmaqbaqbaqbanmapmapmanmanmamPaqcaojaqdaqeaqdaqfaqgaqhaqiakpaqjaqkaqlahqaahaahaahaahaahaahaahaahaktaqmaqnaqoaqpaqqaqraqnaqoaqmaktaktanManManManMaqsanManManManManManManMahuahuaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuahuahuahuahuahuahuahuahuahuamoaqtapHapHapHaquaqvaqwaqwaqxaqyaqzaqzaqzaqzaqAaqBaqCaqDaqEaqFaqGaqHaqIaqJaqKaqKaqLaqKaqKaqKaqKaqKaqMaqKaqNaqOaqPaqQaqRaqSaqTaqUaphaqVanmanmanmanmanmanmanmanmaqVamPaqWaojaqdaqXaqYaqZaraarbarcardarearfargahqaahaahaahaahaahaahaahaahaktarhariarjarkarlarmarnaroarpaktaahaahaahaahanMarqarranMaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuahuahuahuahuahuahuahuahuahuahuamoarBartaruarvarwarxaryarzarAarCasoarDarEarFarGamoanfarHarIarJarKarLarKarKarMarNarOarNarParNarQarNarRarKarSarTarUapeapharVarWarXapharYarZasaasbascasdanmanmanmarYamPaseaojaojasfaojasgashamPaomahqahralYahHahqaahaahaahaahaahaahaahaahaktaqmaqmaqmaqpaqqaqraqmaqmaqmaktaahaahaahaahanMasiarranMaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarDarEarEarFaaaamoampamJampamramsamKamsamraahaahaahaahaahaahalkamLamMalkalkaddairamNaddaahaahaahaahamOamOamOamOamOamOamOamOamOamOamPamPamPamPamPamPamPamPahuahuahUamQamRahHahqaahaahaahaahaahaahaahaahaktamSalZalZakuamTamUamVamTamUakuaktaaSamWaiTaiTamXaiTaiTaiTaahahuahuahuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamoamYamZamoamoamoanaanbamoamoarwarCaqAarsamoamoampancampamramsandamsamraahaahaahaahaahaahaneanfanganeanhaddairadTaddaahaahaahamOamOanianjankanlanjanmanmanjannamPanoanpanqanransantamPamPahuahUahSanuanvahqaahaahaahaahaahaahaahaahaktanwanxanyanzanAanBanCanDanEanFaktanGanHanIanJanKanLanLanManManManManNahuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuamoamoanTanPanQanRanSapNapKaqyaqzaqxaqvaqvaqwaquamoanUanVanWamranXanYanZamraahaahaahaahaahaahaneaoaaobaneaddaddaocaddaddaahaahaahamOaodaoeaofanmanmanmanmaogaoganjamPaohaoiaojaokaojaojaolaomahuaonahralYahHahqaahaahaahaahaahaahaahaahaktaooaopaoqaoraosaotaouaovaowaoxaoyaozaozaoAaoBaoCaoDaoEaoFaoGaoHaoIaoJahuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuamoaoKaoLaoMaoNaoOaoNaoPaoQaoKaoWapLapLapLaoTapIamoaoXaoYaoZamrapaaoYapbamraneaneaneaahaahaahaneapcanganeapdapeapfapgaphaphaphaphaphapiapjapkapkaplanmapmaogaoganmamPapnaojaojapoaojaojappamPaomahqahralYapqahqaahaahaahaahaahaahaahaahaktapralZalZapsaptapuapvalZalZapwaktapxanGapyapzapAanGapBapCapDapEaoIapFahuahuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuahuamoapGapHaoRapHapJaoSaoRapHapGaoUaoTapMapLapLaoVamoaneapOapPamraneapQapPamrapRapRaneaneaneaneaneanfapSapTapUapVapWapeaphapXapYapZaqaanmanmaqbaqbaqbanmapmapmanmanmamPaqcaojaqdaqeaqdaqfaqgaqhaqiakpaqjaqkaqlahqaahaahaahaahaahaahaahaahaktaqmaqnaqoaqpaqqaqraqnaqoaqmaktaktanManManManMaqsanManManManManManManMahuahuaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuahuahuahuahuahuahuahuahuahuamoaqtapHapHdAGdAEdADdAFdAFdAKdALdAMdANdAHdAIdAJaqBaqCaqDaqEaqFaqGaqHaqIaqJaqKaqKaqLaqKaqKaqKaqKaqKaqMaqKaqNaqOaqPaqQaqRaqSaqTaqUaphaqVanmanmanmanmanmanmanmanmaqVamPaqWaojaqdaqXaqYaqZaraarbarcardarearfargahqaahaahaahaahaahaahaahaahaktarhariarjarkarlarmarnaroarpaktaahaahaahaahanMarqarranMaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuahuahuahuahuahuahuahuahuahuahuamoarBartaruarvdACarxaryarzarAdABdAzdAAasodAyarGamoanfarHarIarJarKarLarKarKarMarNarOarNarParNarQarNarRarKarSarTarUapeapharVarWarXapharYarZasaasbascasdanmanmanmarYamPaseaojaojasfaojasgashamPaomahqahralYahHahqaahaahaahaahaahaahaahaahaktaqmaqmaqmaqpaqqaqraqmaqmaqmaktaahaahaahaahanMasiarranMaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuahuahuasjasjasjaskaslasmaslasnasjasjamoaspaspasqasrassastasraspaspamoamoamoamoamoamoaspasuasvasvasvasvasvaneapeaswapeaneaneaneaneaneaneaneaneasxasyaszasAaphaphaphaphaphasBanmasCasDanmanmanmanmasCasEamPaohaojaojasFaojasgasGaomahualuasHasIasJahqaahaahaahaahaahaahaahaahaktalZasKanDaqpaqqaqrasKanDasLaktaahaahaahaahanMarqanManMaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuasMasMasMasMasNasOasPasQasRasSasTasUasVasWasXasYasZataatbatcatdateatfatgathatiatkatjatpatlasuatnatoatLatqasvaneatratsatraneaahaahaahaahaahaahaneattatuatvaneaneaahaahaahamOamOatwatxatyanmatzatAatBatCatDamPatEatFaojaojatGatHamPamPaahahqahrahsatIahqaahaahaahaahaahaahaahaahaktaqmatJatKaqpaqqaqratJatKaqmaktaahaahaahaahanMarqanMaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahuahuasMasMauAatMatNatOatPatQatRatSatTatUatVatWatXatYatZauaaubaucaudaueaufaueaugauhauiaujaukaujaulasuaumaunauoaupasvaahatrauqatraahaahaahaahaahaahaahaneasxaurarUaneaahaahaahaahaahamOamOamOausamOamOamOamOamOamOamPamPamPautauuamPamPamPaahaahahqahralYahHahqaahaahaahaahaahaahaahaahaktauvauwaktauxauyauzaktauvauwaktahuaahaahanManMarqanMaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
diff --git a/nano/templates/dnaforensics.tmpl b/nano/templates/dnaforensics.tmpl
new file mode 100644
index 0000000000..efe69e6158
--- /dev/null
+++ b/nano/templates/dnaforensics.tmpl
@@ -0,0 +1,45 @@
+
Machine Status
+
+
+ {{:helper.link(data.scanning ? 'Halt Scan' : 'Begin Scan', 'signal-diag', {'scanItem' : 1}, null)}}
+
+
+ {{:helper.link((data.lidstate ? 'Open Lid' : 'Close Lid'), (data.lidstate ? 'unlocked' : 'locked'), {'toggleLid' : 1}, null)}}
+
+
+ {{:helper.link('Eject item', 'eject', {'ejectItem' : 1}, (data.bloodsamp && !data.scanning) ? null : 'disabled')}}
+
+
+Scanner
+
+
Scan progress:
+
+ {{:helper.displayBar(data.scan_progress, 0, 100, 'good')}}
+ {{:data.scan_progress}} %
+
+
+ {{if data.scan_progress >= 100}}
+ Scan completed successfully.
+ {{/if}}
+
+
+
+
+
Item:
+
+ {{if data.bloodsamp}}
+ {{:data.bloodsamp}}
+ {{else}}
+ No item inserted
+ {{/if}}
+
+
+
+
Heuristic analysis:
+
+ {{if data.bloodsamp_desc}}
+ {{:data.bloodsamp_desc}}
+ {{/if}}
+
+
+
\ No newline at end of file
diff --git a/polaris.dme b/polaris.dme
index 16f869bee9..b621b7ddcb 100644
--- a/polaris.dme
+++ b/polaris.dme
@@ -1102,11 +1102,19 @@
#include "code\modules\clothing\under\jobs\security.dm"
#include "code\modules\clothing\under\xenos\resomi.dm"
#include "code\modules\customitems\item_spawning.dm"
-#include "code\modules\detectivework\evidence.dm"
-#include "code\modules\detectivework\footprints_and_rag.dm"
+#include "code\modules\detectivework\footprints.dm"
#include "code\modules\detectivework\forensics.dm"
-#include "code\modules\detectivework\scanner.dm"
-#include "code\modules\detectivework\scanning_console.dm"
+#include "code\modules\detectivework\microscope\dnascanner.dm"
+#include "code\modules\detectivework\microscope\microscope.dm"
+#include "code\modules\detectivework\microscope\slides.dm"
+#include "code\modules\detectivework\tools\crimekit.dm"
+#include "code\modules\detectivework\tools\evidencebag.dm"
+#include "code\modules\detectivework\tools\luminol.dm"
+#include "code\modules\detectivework\tools\rag.dm"
+#include "code\modules\detectivework\tools\sample_kits.dm"
+#include "code\modules\detectivework\tools\storage.dm"
+#include "code\modules\detectivework\tools\swabs.dm"
+#include "code\modules\detectivework\tools\uvlight.dm"
#include "code\modules\economy\Accounts.dm"
#include "code\modules\economy\Accounts_DB.dm"
#include "code\modules\economy\ATM.dm"