diff --git a/_maps/map_files/Delta/delta.dmm b/_maps/map_files/Delta/delta.dmm index 907e5991f6d..a9eae7dbd1d 100644 --- a/_maps/map_files/Delta/delta.dmm +++ b/_maps/map_files/Delta/delta.dmm @@ -1842,8 +1842,8 @@ "aJv" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/quartermaster/storage) "aJw" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/security/prison) "aJx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/seed_extractor,/turf/simulated/floor/plasteel,/area/security/prison) -"aJy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) -"aJz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aJy" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/heat_exchanging,/turf/simulated/floor/plating/airless/catwalk,/area/space) +"aJz" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow,/turf/simulated/floor/plating/airless/catwalk,/area/space) "aJA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel,/area/security/prison) "aJB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/biogenerator,/turf/simulated/floor/plasteel,/area/security/prison) "aJC" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/prison) @@ -1853,7 +1853,7 @@ "aJG" = (/obj/structure/table/reinforced,/obj/machinery/light/small,/obj/effect/decal/warning_stripes/yellow/hollow,/obj/item/multitool,/obj/item/multitool{pixel_x = 4; pixel_y = -4},/turf/simulated/floor/plasteel,/area/engine/controlroom) "aJH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/decal/warning_stripes/southwestcorner,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/engine/controlroom) "aJI" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) -"aJJ" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/heat_exchanging,/turf/simulated/floor/plating/airless/catwalk,/area/space) +"aJJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "aJK" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_tool_outer"; locked = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "32"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel,/area/maintenance/auxsolarport) "aJL" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "solar_tool_pump"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1379; id_tag = "solar_tool_airlock"; pixel_x = 0; pixel_y = 25; req_access_txt = "32"; tag_airpump = "solar_tool_pump"; tag_chamber_sensor = "solar_tool_sensor"; tag_exterior_door = "solar_tool_outer"; tag_interior_door = "solar_tool_inner"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "solar_tool_sensor"; pixel_x = 0; pixel_y = 32},/obj/effect/decal/warning_stripes/yellow,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel,/area/maintenance/auxsolarport) "aJM" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plating,/area/maintenance/auxsolarport) @@ -1915,7 +1915,7 @@ "aKQ" = (/turf/simulated/shuttle/wall{tag = "icon-swall11"; icon_state = "swall11"; dir = 2},/area/shuttle/supply) "aKR" = (/obj/machinery/hydroponics/constructable,/obj/item/seeds/glowshroom,/turf/simulated/floor/plasteel,/area/security/prison) "aKS" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/reagent_containers/glass/bucket,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/security/prison) -"aKT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aKT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "aKU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/plant_analyzer,/turf/simulated/floor/plasteel,/area/security/prison) "aKV" = (/obj/machinery/hydroponics/constructable,/obj/item/seeds/ambrosia,/turf/simulated/floor/plating,/area/security/prison) "aKW" = (/turf/simulated/wall,/area/security/execution) @@ -1964,10 +1964,10 @@ "aLN" = (/obj/machinery/light,/obj/structure/closet/gmcloset,/obj/item/wrench,/obj/item/stack/sheet/glass/fifty,/obj/item/stack/sheet/metal/fifty,/obj/item/stack/cable_coil/random{pixel_x = 2; pixel_y = 3},/obj/item/stack/cable_coil/random,/turf/simulated/floor/plasteel{dir = 5; icon_state = "dark"; tag = "icon-vault (NORTHEAST)"},/area/crew_quarters/bar) "aLO" = (/obj/structure/table/wood,/obj/machinery/reagentgrinder,/turf/simulated/floor/plasteel{dir = 5; icon_state = "dark"; tag = "icon-vault (NORTHEAST)"},/area/crew_quarters/bar) "aLP" = (/obj/structure/table/wood,/obj/item/stack/packageWrap,/obj/item/hand_labeler,/turf/simulated/floor/plasteel{dir = 5; icon_state = "dark"; tag = "icon-vault (NORTHEAST)"},/area/crew_quarters/bar) -"aLQ" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow,/turf/simulated/floor/plating/airless/catwalk,/area/space) +"aLQ" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = -25; req_access_txt = "32"},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/auxsolarport) "aLR" = (/obj/structure/chair/stool,/turf/simulated/floor/plasteel{icon_state = "redyellowfull"},/area/crew_quarters/bar/atrium) "aLS" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Civilian"},/turf/simulated/floor/plasteel{icon_state = "redyellowfull"},/area/crew_quarters/bar/atrium) -"aLT" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = -25; req_access_txt = "32"},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/auxsolarport) +"aLT" = (/turf/space,/obj/item/wrench,/turf/simulated/floor/plating/airless/catwalk,/area/space) "aLU" = (/turf/simulated/wall,/area/crew_quarters/bar/atrium) "aLV" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=4"; dir = 4; location = "QM #4"},/obj/machinery/camera{c_tag = "Cargo Office SouthWest"; dir = 4; network = list("SS13")},/obj/effect/decal/warning_stripes/yellow,/mob/living/simple_animal/bot/mulebot{home_destination = "QM #4"; suffix = "#4"},/turf/simulated/floor/plasteel,/area/quartermaster/storage) "aLW" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Cargo Technician"},/turf/simulated/floor/plasteel{dir = 9; icon_state = "brown"},/area/quartermaster/office) @@ -2054,7 +2054,7 @@ "aNz" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l"; icon_state = "burst_l"},/turf/space,/area/shuttle/supply) "aNA" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/shuttle/supply) "aNB" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_r"; icon_state = "burst_r"},/turf/space,/area/shuttle/supply) -"aNC" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/item/soap/nanotrasen,/obj/machinery/shower{icon_state = "shower"; dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aNC" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/item/soap/nanotrasen,/obj/machinery/shower{icon_state = "shower"; dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "aND" = (/obj/structure/sign/electricshock{pixel_y = 32},/obj/structure/table,/obj/effect/decal/cleanable/cobweb,/obj/item/storage/fancy/crayons,/obj/item/storage/fancy/crayons,/turf/simulated/floor/plating,/area/security/prison) "aNE" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/table,/turf/simulated/floor/plating,/area/security/prison) "aNF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/light/small{dir = 1},/obj/machinery/computer/security/telescreen/entertainment{pixel_y = 32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 1; icon_state = "redcorner"},/area/security/prison) @@ -2124,15 +2124,15 @@ "aOR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/quartermaster/storage) "aOS" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/quartermaster/storage) "aOT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5; level = 1},/obj/machinery/light/small{dir = 8},/obj/structure/toilet{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/security/prison) -"aOU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/obj/structure/sign/poster/official/cleanliness{pixel_y = 32},/obj/machinery/door/airlock{name = "Bathroom"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aOU" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 5},/turf/simulated/floor/plating/airless/catwalk,/area/space) "aOV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating,/area/security/prison) -"aOW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1},/mob/living/simple_animal/mouse,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) -"aOX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aOW" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"aOX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/obj/structure/sign/poster/official/cleanliness{pixel_y = 32},/obj/machinery/door/airlock{name = "Bathroom"},/turf/simulated/floor/plasteel,/area/security/prison) "aOY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table,/obj/item/storage/pill_bottle/dice,/turf/simulated/floor/plating,/area/security/prison) "aOZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/table,/obj/item/paper,/obj/item/pen,/turf/simulated/floor/plasteel,/area/security/prison) "aPa" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/chair/stool,/turf/simulated/floor/plasteel,/area/security/prison) -"aPb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) -"aPc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aPb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1},/obj/effect/decal/cleanable/dirt,/mob/living/simple_animal/mouse,/turf/simulated/floor/plasteel,/area/security/prison) +"aPc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "aPd" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 100; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 4},/area/security/prison) "aPe" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/security/prison) "aPf" = (/obj/machinery/alarm{dir = 8; pixel_x = 25; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/security/prison) @@ -2208,7 +2208,7 @@ "aQx" = (/obj/structure/table,/obj/item/book/manual/chef_recipes,/obj/item/storage/box/donkpockets,/obj/item/clothing/head/chefhat,/turf/simulated/floor/plasteel,/area/security/prison) "aQy" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel,/area/security/prison) "aQz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/security/prison) -"aQA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/chair/stool,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aQA" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "aQB" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/table,/turf/simulated/floor/plating,/area/security/prison) "aQC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/table,/obj/item/toy/cards/deck,/turf/simulated/floor/plasteel,/area/security/prison) "aQD" = (/obj/structure/chair/stool,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/security/prison) @@ -2299,7 +2299,7 @@ "aSk" = (/obj/structure/table,/obj/machinery/kitchen_machine/microwave,/turf/simulated/floor/plating,/area/security/prison) "aSl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/security/prison) "aSm" = (/obj/machinery/light/small,/obj/item/twohanded/required/kirbyplants,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) -"aSn" = (/obj/machinery/newscaster{pixel_y = -32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aSn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/chair/stool,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "aSo" = (/obj/machinery/camera{c_tag = "Perma-Brig General Population"; dir = 1; network = list("SS13","Security")},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/security/prison) "aSp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "aSq" = (/obj/structure/disposalpipe/segment,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/quartermaster/storage) @@ -2533,11 +2533,11 @@ "aWK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table/glass,/obj/item/storage/firstaid/regular,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitered"},/area/security/prison) "aWL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/bed/roller,/obj/machinery/iv_drip,/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitered"},/area/security/prison) "aWM" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1},/obj/machinery/flasher{pixel_x = -22},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 8; icon_state = "red"},/area/security/prison) -"aWN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aWN" = (/obj/machinery/newscaster{pixel_y = -32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "aWO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; level = 1},/obj/structure/table,/obj/item/paper,/obj/item/pen,/turf/simulated/floor/plasteel{dir = 4; icon_state = "red"},/area/security/prison) "aWP" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1},/obj/machinery/flasher{pixel_x = -22},/turf/simulated/floor/plating,/area/security/prison) "aWQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 1},/area/security/prison) -"aWR" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aWR" = (/turf/space,/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/disposaloutlet{dir = 8},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/incinerator) "aWS" = (/obj/structure/table/reinforced,/obj/item/flashlight/lamp,/obj/item/radio/intercom{dir = 8; name = "station intercom (General)"; pixel_x = -28},/turf/simulated/floor/plasteel{dir = 10; icon_state = "darkred"},/area/security/execution) "aWT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "darkred"},/area/security/execution) "aWU" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 100; on = 1; pressure_checks = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/plasteel{dir = 2; icon_state = "darkred"},/area/security/execution) @@ -2700,9 +2700,9 @@ "aZV" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "perma_inner"; locked = 1; name = "Perma Brig Exterior Access"; req_access = null; req_access_txt = "67"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plating,/area/security/prison) "aZW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/door/airlock/security/glass{name = "Prison Wing"; req_access_txt = "2"},/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/security/prison) "aZX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/security/prison) -"aZY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"aZY" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area/space) "aZZ" = (/obj/item/radio/intercom{dir = 4; name = "station intercom (General)"; pixel_x = 28},/obj/structure/chair/stool/bar,/turf/simulated/floor/plasteel{icon_state = "redyellowfull"},/area/crew_quarters/bar/atrium) -"baa" = (/obj/machinery/camera{c_tag = "Perma-Brig Escape Pod"; network = list("SS13","Security")},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/unary/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"baa" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bab" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/security/prison) "bac" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/security/prison) "bad" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/security/prison) @@ -2741,12 +2741,12 @@ "baK" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/obj/machinery/door/firedoor,/obj/item/radio/intercom{dir = 0; name = "station intercom (General)"; pixel_x = -28},/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep) "baL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep) "baM" = (/obj/structure/kitchenspike,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/crew_quarters/kitchen) -"baN" = (/turf/space,/obj/item/wrench,/turf/simulated/floor/plating/airless/catwalk,/area/space) +"baN" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; level = 2},/turf/simulated/floor/plating/airless/catwalk,/area/atmos) "baO" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "perma_airlock"; name = "exterior access button"; pixel_x = 20; pixel_y = -20; req_access_txt = "67"},/turf/space,/area/space) -"baP" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 5},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"baP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 1},/area/security/prison) "baQ" = (/obj/structure/sink/kitchen{pixel_y = 30},/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/crew_quarters/kitchen) "baR" = (/obj/machinery/newscaster{pixel_x = -32; pixel_y = 0},/obj/item/twohanded/required/kirbyplants,/turf/simulated/floor/plasteel{icon_state = "redyellowfull"},/area/crew_quarters/bar/atrium) -"baS" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"baS" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 1},/area/security/prison) "baT" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal,/turf/simulated/floor/plasteel{icon_state = "redyellowfull"},/area/crew_quarters/bar/atrium) "baU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = -25; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/fore) "baV" = (/obj/machinery/light{dir = 8},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/autolathe,/obj/machinery/light_switch{pixel_x = -22},/obj/machinery/firealarm{dir = 1; pixel_x = -24; pixel_y = -24},/turf/simulated/floor/plasteel{dir = 10; icon_state = "brown"},/area/quartermaster/office) @@ -2785,7 +2785,7 @@ "bbC" = (/obj/effect/decal/warning_stripes/arrow{icon_state = "4"; dir = 4},/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "brown"},/area/hallway/primary/fore) "bbD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/light/small,/obj/structure/sign/securearea{pixel_y = -32},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/security/prison) "bbE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/security/prison) -"bbF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 100; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison) +"bbF" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4; level = 2},/turf/simulated/floor/plating/airless/catwalk,/area/atmos) "bbG" = (/turf/simulated/floor/plating,/area/security/prison) "bbH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/security/prison) "bbI" = (/obj/docking_port/mobile/pod{dir = 4; id = "pod3"; name = "escape pod 3"},/obj/machinery/door/airlock/shuttle{id_tag = "s_docking_airlock"; name = "Escape Pod Hatch"},/turf/simulated/shuttle/floor,/area/shuttle/pod_3) @@ -2858,7 +2858,7 @@ "bcX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security/glass{name = "Prison Wing"; req_access_txt = "2"},/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/security/prison) "bcY" = (/obj/structure/table/reinforced,/obj/machinery/light/small{dir = 8},/obj/structure/reagent_dispensers/peppertank{pixel_y = -32},/turf/simulated/floor/plasteel{icon_state = "vault"},/area/security/prison) "bcZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "vault"},/area/security/prison) -"bda" = (/turf/space,/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/disposaloutlet{dir = 8},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/incinerator) +"bda" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "bdb" = (/obj/machinery/light/small{dir = 8},/obj/structure/closet/secure_closet/brig,/turf/simulated/floor/plasteel{icon_state = "vault"},/area/security/prison) "bdc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/closet/secure_closet/brig,/turf/simulated/floor/plasteel{icon_state = "vault"},/area/security/prison) "bdd" = (/obj/structure/closet/secure_closet/brig,/turf/simulated/floor/plasteel{icon_state = "vault"},/area/security/prison) @@ -3006,7 +3006,7 @@ "bfP" = (/turf/simulated/shuttle/floor,/area/shuttle/mining) "bfQ" = (/obj/structure/chair{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/mining) "bfR" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/table/glass,/turf/simulated/floor/plasteel{dir = 9; icon_state = "whitered"},/area/security/medbay) -"bfS" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bfS" = (/obj/machinery/camera{c_tag = "Perma-Brig Escape Pod"; network = list("SS13","Security")},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/unary/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/canister/air,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "bfT" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -32},/obj/structure/closet/secure_closet/brig,/turf/simulated/floor/plasteel{icon_state = "vault"},/area/security/prison) "bfU" = (/obj/machinery/light/small{dir = 1},/obj/effect/landmark{name = "blobstart"},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/security/prison) "bfV" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11; level = 1},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/security/prison) @@ -3499,7 +3499,7 @@ "bpo" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway) "bpp" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway) "bpq" = (/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway) -"bpr" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bpr" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/shuttle/pod_3) "bps" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway) "bpt" = (/obj/structure/window/reinforced{dir = 1; layer = 2.9},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway) "bpu" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/turf/space,/area/space) @@ -3791,7 +3791,7 @@ "buU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/central) "buV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/central) "buW" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central) -"buX" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; level = 2},/turf/simulated/floor/plating/airless/catwalk,/area/atmos) +"buX" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 4; level = 2},/turf/simulated/floor/plating/airless/catwalk,/area/atmos) "buY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/maintenance/starboard) "buZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/central) "bva" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/central) @@ -3821,7 +3821,7 @@ "bvy" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/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/security/hos) "bvz" = (/obj/machinery/ai_status_display,/turf/simulated/wall/r_wall,/area/turret_protected/ai) "bvA" = (/obj/item/twohanded/required/kirbyplants,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/ai) -"bvB" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4; level = 2},/turf/simulated/floor/plating/airless/catwalk,/area/atmos) +"bvB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 100; on = 1; pressure_checks = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prison) "bvC" = (/obj/item/twohanded/required/kirbyplants,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/sign/nosmoking_2{pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/ai) "bvD" = (/obj/machinery/atmospherics/unary/heat_reservoir/heater{dir = 1; on = 1},/turf/simulated/floor/plasteel{icon_state = "arrival"; dir = 10},/area/atmos) "bvE" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 5; level = 2},/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/atmos) @@ -3886,7 +3886,7 @@ "bwL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/ai) "bwM" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/camera{c_tag = "AI Minisatellite NorthWest"; dir = 8; network = list("SS13","Minisat")},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway) "bwN" = (/turf/simulated/wall/r_wall,/area/engine/gravitygenerator) -"bwO" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/shuttle/pod_3) +"bwO" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_3) "bwP" = (/turf/simulated/wall/r_wall,/area/engine/break_room) "bwQ" = (/obj/machinery/ai_status_display,/turf/simulated/wall/r_wall,/area/engine/break_room) "bwR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/wall/r_wall,/area/engine/break_room) @@ -4950,7 +4950,7 @@ "bRj" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel,/area/security/brig) "bRk" = (/obj/structure/table/reinforced,/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/light{dir = 8},/obj/item/clipboard,/obj/item/toy/figure/warden,/turf/simulated/floor/plasteel{dir = 8; icon_state = "red"},/area/security/warden) "bRl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel,/area/security/warden) -"bRm" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 4; level = 2},/turf/simulated/floor/plating/airless/catwalk,/area/atmos) +"bRm" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 9},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bRn" = (/obj/structure/rack,/obj/item/ammo_box/shotgun/rubbershot,/obj/item/ammo_box/shotgun/rubbershot,/obj/item/ammo_box/shotgun/rubbershot,/obj/item/ammo_box/shotgun/rubbershot,/obj/item/ammo_box/shotgun/rubbershot,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/security/armoury) "bRo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/rack,/obj/item/gun/energy/laser{pixel_x = -3; pixel_y = 3},/obj/item/gun/energy/laser,/obj/item/gun/energy/laser{pixel_x = 3; pixel_y = -3},/turf/simulated/floor/plasteel,/area/security/armoury) "bRp" = (/obj/structure/rack,/obj/item/clothing/suit/armor/bulletproof,/obj/item/clothing/suit/armor/bulletproof,/obj/item/clothing/suit/armor/bulletproof,/obj/item/clothing/head/helmet/alt,/obj/item/clothing/head/helmet/alt,/obj/item/clothing/head/helmet/alt,/obj/item/storage/secure/safe{pixel_x = 32},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/security/armoury) @@ -4970,7 +4970,7 @@ "bRD" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/turret_protected/aisat) "bRE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/showcase{density = 0; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/aisat) "bRF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/wall/r_wall,/area/turret_protected/aisat) -"bRG" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_3) +"bRG" = (/turf/space,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bRH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/aisat) "bRI" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/aisat) "bRJ" = (/obj/structure/window/reinforced{dir = 1; layer = 2.9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway) @@ -5095,7 +5095,7 @@ "bTY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/door/firedoor,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/port) "bTZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/port) "bUa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/port) -"bUb" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 9},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bUb" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "atmo_tank_airlock"; name = "exterior access button"; pixel_x = 20; pixel_y = -20; req_access_txt = "32"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bUc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/engine/break_room) "bUd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/engine/break_room) "bUe" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/engine/break_room) @@ -5129,7 +5129,7 @@ "bUG" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/port) "bUH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/port) "bUI" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/port) -"bUJ" = (/turf/space,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bUJ" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bUK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=engi1"; location = "hall3"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/central) "bUL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=hall5"; location = "hall4"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/central) "bUM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central) @@ -5151,7 +5151,7 @@ "bVc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{dir = 8},/obj/machinery/camera{c_tag = "Central Ring Hallway East"; dir = 4; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/central) "bVd" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=hall13"; location = "hall12"},/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/central) "bVe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=hall11"; location = "hall10"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/central) -"bVf" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "atmo_tank_airlock"; name = "exterior access button"; pixel_x = 20; pixel_y = -20; req_access_txt = "32"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bVf" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bVg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/starboard) "bVh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/starboard) "bVi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/starboard) @@ -5164,7 +5164,7 @@ "bVp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=hall12"; location = "hall11"},/obj/item/radio/beacon,/mob/living/simple_animal/bot/secbot/beepsky,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/starboard) "bVq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j1s"; name = "Security Junction"; sortType = 13},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5; level = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "redcorner"},/area/hallway/primary/starboard) "bVr" = (/obj/structure/closet/secure_closet/engineering_chief,/obj/machinery/camera{c_tag = "Chief Engineer's Quarters"; network = list("Engineering","SS13")},/obj/machinery/light_switch{pixel_x = 26; pixel_y = 26},/obj/machinery/door_control{id = "ceprivacy"; name = "Privacy Shutters"; pixel_x = 24},/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/crew_quarters/chief) -"bVs" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bVs" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bVt" = (/obj/structure/sign/vacuum{pixel_x = -32; pixel_y = 0},/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/engine/break_room) "bVu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel,/area/security/brig) "bVv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/security/brig) @@ -5281,8 +5281,8 @@ "bXC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor,/obj/effect/decal/warning_stripes/yellow,/obj/machinery/door/airlock/public/glass,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 4},/area/hallway/primary/starboard) "bXD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/camera{c_tag = "Primary Security Hallway"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 4},/area/hallway/primary/starboard) "bXE" = (/obj/machinery/camera{c_tag = "Engineering Security Checkpoint"; dir = 8; network = list("SS13","Security")},/obj/item/radio/intercom{dir = 4; name = "station intercom (General)"; pixel_x = 28},/obj/structure/closet/secure_closet/security/engine,/turf/simulated/floor/plasteel{dir = 5; icon_state = "red"},/area/security/checkpoint/engineering) -"bXF" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating/airless/catwalk,/area/space) -"bXG" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bXF" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "station_ai_airlock"; name = "exterior access button"; pixel_x = 20; pixel_y = 20; req_access_txt = "10;13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bXG" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating/airless/catwalk,/area/space) "bXH" = (/obj/item/twohanded/required/kirbyplants,/obj/machinery/light,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/aisat) "bXI" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/aisat) "bXJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/turret_protected/aisat) @@ -5302,7 +5302,7 @@ "bXX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/security/glass{name = "Armoury"; req_access_txt = "3"},/obj/effect/decal/warning_stripes/east,/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/security/armoury) "bXY" = (/obj/structure/table/reinforced,/obj/item/storage/firstaid/fire,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/engine/engineering) "bXZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/sign/securearea,/turf/simulated/wall,/area/engine/engineering) -"bYa" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "station_ai_airlock"; name = "exterior access button"; pixel_x = 20; pixel_y = 20; req_access_txt = "10;13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bYa" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating/airless/catwalk,/area/space) "bYb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/turf/simulated/wall,/area/engine/engineering) "bYc" = (/obj/structure/disposalpipe/trunk,/obj/machinery/disposal,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/engine/engineering) "bYd" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/turf/simulated/floor/plating,/area/security/checkpoint/engineering) @@ -5313,8 +5313,8 @@ "bYi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/maintenance,/turf/simulated/floor/plasteel,/area/maintenance/fpmaint2) "bYj" = (/turf/simulated/wall,/area/library) "bYk" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/library) -"bYl" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating/airless/catwalk,/area/space) -"bYm" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bYl" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5; level = 1},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bYm" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bYn" = (/obj/structure/sign/directions/evac{pixel_y = -8},/obj/structure/sign/directions/medical{dir = 2},/obj/structure/sign/directions/security{dir = 2; pixel_y = 8},/turf/simulated/wall,/area/library) "bYo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/engine/engineering) "bYp" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "hopprivacy"; name = "HoP Privacy Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/crew_quarters/heads/hop) @@ -5337,7 +5337,7 @@ "bYG" = (/obj/structure/sign/directions/evac{pixel_y = -8},/obj/structure/sign/directions/medical{dir = 2},/obj/structure/sign/directions/security{dir = 4; pixel_y = 8},/turf/simulated/wall,/area/crew_quarters/courtroom) "bYH" = (/turf/simulated/wall,/area/crew_quarters/courtroom) "bYI" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/crew_quarters/courtroom) -"bYJ" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5; level = 1},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bYJ" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bYK" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/courtroom) "bYL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/door/firedoor,/obj/effect/decal/warning_stripes/yellow,/obj/machinery/door/airlock/public/glass,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/primary/starboard) "bYM" = (/turf/simulated/wall,/area/lawoffice) @@ -5359,7 +5359,7 @@ "bZc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/recharger,/obj/structure/table/reinforced,/obj/item/key/security,/obj/machinery/door_control{id = "Secure Armory"; name = "Secure Armory Shutter Control"; pixel_x = 7; pixel_y = -28; req_access_txt = "3"},/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/security/armoury) "bZd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel,/area/security/armoury) "bZe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; level = 1},/obj/structure/chair/office/dark,/turf/simulated/floor/plasteel,/area/security/armoury) -"bZf" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bZf" = (/turf/space,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bZg" = (/obj/structure/table/reinforced,/obj/structure/reagent_dispensers/peppertank{pixel_x = 32; pixel_y = 0},/obj/item/clothing/mask/gas/sechailer,/obj/item/clothing/mask/gas/sechailer,/obj/item/clothing/mask/gas/sechailer,/obj/item/flashlight/seclite,/obj/item/flashlight/seclite,/obj/item/flashlight/seclite,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/security/armoury) "bZh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/flasher{id = null; pixel_x = -24; pixel_y = 0},/obj/machinery/door/airlock/highsecurity{name = "AI Upload Access"; req_access_txt = "16"},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/turret_protected/aisat) "bZi" = (/obj/machinery/door/airlock/public/glass,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/courtroom) @@ -5376,7 +5376,7 @@ "bZt" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/engine/engineering) "bZu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/engine/engineering) "bZv" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/engine/engineering) -"bZw" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"bZw" = (/turf/space,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plating/airless/catwalk,/area/space) "bZx" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/engine/engineering) "bZy" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/sortjunction{name = "Engineering Junction"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/engine/engineering) "bZz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/engine/engineering) @@ -5792,7 +5792,7 @@ "cht" = (/turf/simulated/wall/r_wall,/area/teleporter) "chu" = (/obj/machinery/light,/obj/machinery/computer/monitor,/obj/structure/cable,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plating,/area/turret_protected/aisat) "chv" = (/turf/simulated/wall/rust,/area/teleporter) -"chw" = (/turf/space,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"chw" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plating/airless/catwalk,/area/space) "chx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/teleporter) "chy" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/teleporter) "chz" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/teleporter) @@ -5885,7 +5885,7 @@ "cji" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "blue"},/area/crew_quarters/courtroom) "cjj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall,/area/lawoffice) "cjk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/maintenance{name = "Internal Affairs Maintenance"; req_access_txt = "38"},/turf/simulated/floor/plating,/area/lawoffice) -"cjl" = (/turf/space,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cjl" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube{tag = "icon-D-NE"; icon_state = "D-NE"},/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cjm" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/starboard) "cjn" = (/obj/structure/girder,/turf/simulated/floor/plating,/area/maintenance/starboard) "cjo" = (/obj/structure/rack,/obj/item/book/manual/security_space_law,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -6115,7 +6115,7 @@ "cnE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/teleporter) "cnF" = (/obj/machinery/light/small{dir = 4; pixel_y = 0},/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plating,/area/security/range) "cnG" = (/obj/machinery/computer/teleporter,/turf/simulated/floor/plasteel,/area/teleporter) -"cnH" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cnH" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube{tag = "icon-E-SW-NW"; icon_state = "E-SW-NW"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cnI" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/twohanded/required/kirbyplants,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/courtroom) "cnJ" = (/obj/item/twohanded/required/kirbyplants,/turf/simulated/floor/plasteel{icon_state = "neutral"},/area/crew_quarters/courtroom) "cnK" = (/obj/structure/filingcabinet/chestdrawer,/turf/simulated/floor/plasteel{icon_state = "neutral"},/area/crew_quarters/courtroom) @@ -6142,7 +6142,7 @@ "cof" = (/obj/machinery/particle_accelerator/control_box,/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/engine/engineering) "cog" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/the_singularitygen,/turf/simulated/floor/plating,/area/engine/engineering) "coh" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes{charge = 2e+006},/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/engine/engineering) -"coi" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube{tag = "icon-D-NE"; icon_state = "D-NE"},/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"coi" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube{icon_state = "E-W-Pass"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "coj" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/engine/engineering) "cok" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/warning_stripes/northwestcorner,/turf/simulated/floor/plasteel,/area/engine/engineering) "col" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/warning_stripes/northeastcorner,/turf/simulated/floor/plasteel,/area/engine/engineering) @@ -6359,14 +6359,14 @@ "cso" = (/obj/machinery/pipedispenser/disposal,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/engine/engine_smes) "csp" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plating,/area/engine/engineering) "csq" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plating,/area/engine/engineering) -"csr" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube{tag = "icon-E-SW-NW"; icon_state = "E-SW-NW"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"csr" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube,/turf/simulated/floor/plating/airless/catwalk,/area/space) "css" = (/obj/structure/table/reinforced,/obj/machinery/cell_charger,/obj/item/stock_parts/cell/high,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/engine/engineering) "cst" = (/obj/machinery/portable_atmospherics/canister/toxins,/obj/machinery/light/small{dir = 8},/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/engine/engine_smes) "csu" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plating,/area/engine/engineering) "csv" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plating,/area/engine/engineering) "csw" = (/obj/item/twohanded/required/kirbyplants,/obj/effect/decal/cleanable/dirt,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/engine/engine_smes) "csx" = (/obj/machinery/power/emitter,/turf/simulated/floor/plating,/area/engine/engine_smes) -"csy" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube{icon_state = "E-W-Pass"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"csy" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube{tag = "icon-W-SE"; icon_state = "W-SE"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "csz" = (/obj/structure/closet/crate{name = "solar pack crate"},/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/engine/engine_smes) "csA" = (/obj/structure/rack,/obj/item/crowbar/red,/obj/item/wrench,/obj/item/tank/emergency_oxygen/engi,/obj/item/stack/sheet/mineral/plasma{amount = 5},/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/engine/engine_smes) "csB" = (/obj/structure/table/reinforced,/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/obj/item/clipboard,/obj/item/folder/blue,/obj/item/firelock_electronics,/obj/item/stock_parts/console_screen,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/engine/engine_smes) @@ -6428,8 +6428,8 @@ "ctF" = (/obj/structure/table/reinforced,/obj/structure/extinguisher_cabinet{pixel_x = -28; pixel_y = 0},/obj/item/tank/plasma,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel{dir = 5; icon_state = "yellow"},/area/engine/engineering) "ctG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/status_display{pixel_x = 32},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/engine/engineering) "ctH" = (/obj/item/twohanded/required/kirbyplants,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/library) -"ctI" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube,/turf/simulated/floor/plating/airless/catwalk,/area/space) -"ctJ" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube{tag = "icon-W-SE"; icon_state = "W-SE"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"ctI" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube{tag = "icon-D-SW"; icon_state = "D-SW"},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"ctJ" = (/turf/space,/obj/structure/transit_tube{tag = "icon-E-NW"; icon_state = "E-NW"},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area/space) "ctK" = (/obj/structure/table/wood,/obj/item/storage/fancy/crayons,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/library) "ctL" = (/obj/structure/table/wood,/obj/item/storage/fancy/candle_box,/obj/item/storage/fancy/candle_box,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/library) "ctM" = (/obj/structure/dresser,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/library) @@ -6444,7 +6444,7 @@ "ctV" = (/obj/machinery/camera{c_tag = "Courtroom East"; dir = 8; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/crew_quarters/courtroom) "ctW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/public/glass{name = "Library"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/library) "ctX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command/glass{name = "E.V.A."; req_access_txt = "0"; req_one_access_txt = "18"},/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/ai_monitored/storage/eva) -"ctY" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/transit_tube{tag = "icon-D-SW"; icon_state = "D-SW"},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"ctY" = (/turf/space,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "ctZ" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/bridge/meeting_room) "cua" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/bridge/meeting_room) "cub" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/table/wood,/obj/item/paper_bin,/turf/simulated/floor/plasteel{dir = 2; icon_state = "bluecorner"},/area/bridge/meeting_room) @@ -6728,7 +6728,7 @@ "czt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark{name = "blobstart"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/maintenance/fpmaint2) "czu" = (/obj/machinery/hologram/holopad,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/engine/engine_smes) "czv" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellow"},/area/maintenance/fpmaint2) -"czw" = (/turf/space,/obj/structure/transit_tube{tag = "icon-E-NW"; icon_state = "E-NW"},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"czw" = (/turf/space,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "czx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 4},/area/maintenance/fpmaint2) "czy" = (/obj/structure/table/wood,/obj/machinery/status_display{pixel_x = -32; pixel_y = 0},/obj/item/newspaper,/obj/item/newspaper,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/library) "czz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5; level = 1},/obj/structure/chair/office/dark{dir = 1},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/library) @@ -6856,7 +6856,7 @@ "cBR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/crew_quarters/locker) "cBS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/crew_quarters/locker) "cBT" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/crew_quarters/locker) -"cBU" = (/turf/space,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cBU" = (/turf/space,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cBV" = (/obj/structure/chair/office/dark,/obj/machinery/newscaster{pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/sleep) "cBW" = (/obj/item/twohanded/required/kirbyplants,/turf/simulated/floor/plasteel{icon_state = "wood"},/area/crew_quarters/sleep) "cBX" = (/obj/structure/bed,/obj/item/bedsheet/brown,/turf/simulated/floor/plasteel{icon_state = "wood"},/area/crew_quarters/sleep) @@ -7141,7 +7141,7 @@ "cHq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/maintenance/fpmaint2) "cHr" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/maintenance/fpmaint2) "cHs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/maintenance/fpmaint2) -"cHt" = (/turf/space,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cHt" = (/turf/space,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cHu" = (/obj/effect/decal/cleanable/cobweb,/obj/effect/decal/cleanable/dirt,/obj/machinery/vending/artvend,/turf/simulated/floor/plasteel,/area/maintenance/starboard) "cHv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall/r_wall,/area/maintenance/fpmaint2) "cHw" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/fpmaint2) @@ -7230,7 +7230,7 @@ "cJb" = (/obj/structure/sign/directions/engineering{dir = 8; pixel_y = 8},/obj/structure/sign/directions/science{dir = 8; pixel_y = 1},/obj/structure/sign/directions/evac{pixel_y = -8},/turf/simulated/wall,/area/medical/research) "cJc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/airlock/public/glass,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/crew_quarters/locker) "cJd" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "Singularity SouthWest"; dir = 4; network = list("SS13","Singularity","Engineering")},/turf/space,/area/engine/engineering) -"cJe" = (/turf/space,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cJe" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cJf" = (/obj/structure/sign/directions/evac{pixel_y = -8},/obj/structure/sign/directions/medical{dir = 4},/obj/structure/sign/directions/security{dir = 4; pixel_y = 8},/turf/simulated/wall,/area/medical/medbay) "cJg" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/medical/medbay) "cJh" = (/obj/machinery/door/firedoor,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/medical/medbay) @@ -7287,9 +7287,9 @@ "cKg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/rack,/obj/item/book/manual/engineering_guide,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plasteel,/area/maintenance/fpmaint2) "cKh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel,/area/maintenance/fpmaint2) "cKi" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/maintenance/fpmaint2) -"cKj" = (/turf/space,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cKj" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cKk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/toxins/xenobiology) -"cKl" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cKl" = (/turf/space,/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless/catwalk,/area/space) "cKm" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/landmark{name = "blobstart"},/obj/effect/decal/warning_stripes/north,/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{icon_state = "map"; dir = 8},/turf/simulated/floor/plasteel,/area/toxins/xenobiology) "cKn" = (/mob/living/carbon/slime,/turf/simulated/floor/greengrid,/area/toxins/xenobiology) "cKo" = (/turf/simulated/floor/greengrid,/area/toxins/xenobiology) @@ -7447,7 +7447,7 @@ "cNk" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/shieldwallgen,/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plating,/area/toxins/xenobiology) "cNl" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/obj/structure/window/reinforced{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = 26; pixel_y = 32},/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/toxins/xenobiology) "cNm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/toxins/xenobiology) -"cNn" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cNn" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cNo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Xenobiology Lab"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/hidden/cyan,/turf/simulated/floor/plasteel,/area/toxins/xenobiology) "cNp" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/toxins/xenobiology) "cNq" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "xeno4"; name = "Creature Cell #4"; opacity = 0},/obj/machinery/door/window/brigdoor{dir = 1; name = "Creature Pen"; req_access_txt = "47"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/toxins/xenobiology) @@ -7485,7 +7485,7 @@ "cNW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"; tag = "icon-whitebluecorner"},/area/medical/medbay) "cNX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical/glass{id_tag = "medbayfoyer"; name = "Medbay Entrance"; req_access_txt = "5"},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay) "cNY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel{tag = "icon-whitebluefull"; icon_state = "whitebluefull"},/area/medical/medbay) -"cNZ" = (/turf/space,/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cNZ" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cOa" = (/obj/structure/table/reinforced,/obj/item/book/manual/security_space_law,/obj/item/radio,/obj/machinery/status_display{pixel_y = 32},/obj/machinery/door_control{id = "medbayfoyer"; name = "Medbay Front Doors"; pixel_x = -25; pixel_y = 25},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 9},/area/security/checkpoint/medical) "cOb" = (/obj/structure/table/reinforced,/obj/machinery/light{dir = 1},/obj/machinery/recharger,/obj/item/radio/intercom{dir = 1; name = "station intercom (General)"; pixel_y = 25},/turf/simulated/floor/plasteel{dir = 1; icon_state = "red"},/area/security/checkpoint/medical) "cOc" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/closet/secure_closet/security/med,/obj/machinery/ai_status_display{pixel_y = 32},/obj/structure/extinguisher_cabinet{pixel_x = 28; pixel_y = 30},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 5},/area/security/checkpoint/medical) @@ -7498,7 +7498,7 @@ "cOj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "cmo"},/area/medical/medbay2) "cOk" = (/obj/structure/table/glass,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/storage/firstaid/toxin{pixel_x = 6; pixel_y = 6},/obj/item/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/item/storage/firstaid/regular,/obj/item/storage/firstaid/toxin{pixel_x = -3; pixel_y = -3},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutral"},/area/medical/medbay2) "cOl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall,/area/medical/medbay) -"cOm" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cOm" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cOn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; level = 1},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/maintenance/starboard) "cOo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/starboard) "cOp" = (/obj/structure/table/wood,/obj/machinery/newscaster{pixel_x = -32; pixel_y = 0},/obj/item/paper_bin,/obj/item/pen,/turf/simulated/floor/plasteel{icon_state = "wood"},/area/crew_quarters/sleep) @@ -7574,7 +7574,7 @@ "cPH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitebluecorner"; tag = "icon-whitebluecorner"},/area/medical/medbay) "cPI" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitebluecorner"; tag = "icon-whitebluecorner"},/area/medical/medbay) "cPJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitebluecorner"; tag = "icon-whitebluecorner"},/area/medical/medbay) -"cPK" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cPK" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cPL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/plasteel{tag = "icon-whitebluecorner (WEST)"; icon_state = "whitebluecorner"; dir = 8},/area/medical/medbay) "cPM" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay) "cPN" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"; tag = "icon-whitebluecorner"},/area/medical/medbay) @@ -7587,8 +7587,8 @@ "cPU" = (/obj/structure/table/glass,/obj/item/storage/firstaid/brute{pixel_x = 6; pixel_y = 6},/obj/item/storage/firstaid/brute{pixel_x = 3; pixel_y = 3},/obj/item/storage/firstaid/regular,/obj/item/storage/firstaid/brute{pixel_x = -3; pixel_y = -3},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/medical/medbay2) "cPV" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "cmo"},/area/medical/medbay2) "cPW" = (/obj/structure/table/glass,/obj/machinery/requests_console{department = "Medbay"; departmentType = 1; name = "Medbay Requests Console"; pixel_x = 30; pixel_y = 0; pixel_z = 0},/obj/item/storage/firstaid/o2{pixel_x = 6; pixel_y = 6},/obj/item/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/storage/firstaid/regular,/obj/item/storage/firstaid/o2{pixel_x = -3; pixel_y = -3},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutral"},/area/medical/medbay2) -"cPX" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) -"cPY" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cPX" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cPY" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "sw_maint_airlock"; name = "exterior access button"; pixel_x = 24; pixel_y = 24; req_access_txt = "0"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cPZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall,/area/medical/medbay3) "cQa" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/maintenance{name = "Medbay Maintenance"; req_access_txt = "5"},/turf/simulated/floor/plasteel,/area/medical/medbay3) "cQb" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical/glass{id_tag = "medbayfoyer"; name = "Medbay Entrance"; req_access_txt = "5"},/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"},/area/medical/medbay) @@ -8188,12 +8188,12 @@ "dbx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutral"},/area/maintenance/starboard) "dby" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/maintenance/starboard) "dbz" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/gambling_den) -"dbA" = (/turf/space,/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"dbA" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_xeno_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = 25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/auxsolarstarboard) "dbB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating,/area/maintenance/gambling_den) "dbC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/maintenance/gambling_den) "dbD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating,/area/maintenance/gambling_den) "dbE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/maintenance/gambling_den) -"dbF" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "sw_maint_airlock"; name = "exterior access button"; pixel_x = 24; pixel_y = 24; req_access_txt = "0"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"dbF" = (/turf/space,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/auxsolarstarboard) "dbG" = (/obj/item/twohanded/required/kirbyplants,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/maintenance/gambling_den) "dbH" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/maintenance/gambling_den) "dbI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/maintenance/gambling_den) @@ -9227,7 +9227,7 @@ "dvw" = (/obj/structure/morgue,/obj/effect/landmark{name = "revenantspawn"},/turf/simulated/floor/plating,/area/medical/morgue) "dvx" = (/obj/structure/morgue,/obj/effect/landmark{name = "revenantspawn"},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/medical/morgue) "dvy" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/medical/morgue) -"dvz" = (/obj/structure/filingcabinet/chestdrawer,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/medical/morgue) +"dvz" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/filingcabinet/chestdrawer/autopsy,/turf/simulated/floor/plating,/area/medical/morgue) "dvA" = (/obj/structure/bed/roller,/obj/effect/decal/cleanable/cobweb,/obj/machinery/iv_drip,/turf/simulated/floor/plasteel,/area/medical/morgue) "dvB" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/medical/morgue) "dvC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/medical/morgue) @@ -10255,8 +10255,8 @@ "dPk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; initialize_directions = 10; level = 1},/obj/structure/table,/obj/item/crowbar,/obj/item/wrench,/obj/item/restraints/handcuffs/cable,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitegreen"; tag = "icon-whitehall (WEST)"},/area/medical/virology) "dPl" = (/obj/structure/table,/obj/item/storage/box/masks,/obj/item/storage/box/gloves,/obj/structure/sign/vacuum{pixel_y = -32},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitegreencorner"},/area/medical/virology) "dPm" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/medical/virology) -"dPn" = (/obj/structure/bed/roller,/obj/effect/decal/warning_stripes/yellow/hollow,/mob/living/carbon/human/monkey,/turf/simulated/floor/plasteel,/area/medical/virology) -"dPo" = (/obj/effect/landmark{name = "revenantspawn"},/obj/effect/decal/warning_stripes/yellow,/mob/living/carbon/human/monkey,/turf/simulated/floor/plasteel,/area/medical/virology) +"dPn" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "sw_maint2_airlock"; name = "exterior access button"; pixel_x = 24; pixel_y = 24; req_access_txt = "0"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"dPo" = (/obj/structure/bed/roller,/obj/effect/decal/warning_stripes/yellow/hollow,/mob/living/carbon/human/monkey,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitegreencorner"},/area/medical/virology) "dPp" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/portsolar) "dPq" = (/turf/simulated/wall/r_wall,/area/maintenance/portsolar) "dPr" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/spawner/random_spawners/blood_maybe,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutral"},/area/maintenance/fpmaint2) @@ -10326,7 +10326,7 @@ "dQD" = (/obj/machinery/field/generator{anchored = 1; state = 2},/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plating/airless,/area/space) "dQE" = (/obj/effect/decal/warning_stripes/southwestcorner,/turf/simulated/floor/plating/airless,/area/space) "dQF" = (/obj/structure/table,/obj/item/storage/firstaid/regular,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/hallway/secondary/exit) -"dQG" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/door/airlock/medical/glass{id_tag = null; name = "Monkey Pen"; req_access_txt = "39"},/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 1},/obj/effect/decal/warning_stripes/arrow{icon_state = "4"; dir = 1},/turf/simulated/floor/plasteel,/area/medical/virology) +"dQG" = (/obj/effect/landmark{name = "revenantspawn"},/obj/effect/decal/warning_stripes/yellow,/mob/living/carbon/human/monkey,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitegreen"; tag = "icon-whitehall (WEST)"},/area/medical/virology) "dQH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/table/glass,/obj/item/reagent_containers/spray/cleaner,/obj/item/reagent_containers/dropper,/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/medical/virology) "dQI" = (/obj/machinery/door/airlock/external{aiControlDisabled = 0; hackProof = 1; id_tag = "emergency_home"; name = "Escape Airlock"},/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/security/checkpoint) "dQJ" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/portsolar) @@ -10740,22 +10740,21 @@ "dYB" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/greengrid,/area/medical/research) "dYC" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/medical/research) "dYD" = (/obj/item/robot_parts/robot_suit,/obj/effect/decal/warning_stripes/yellow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/medical/research) -"dYE" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_xeno_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = 25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/auxsolarstarboard) -"dYF" = (/turf/space,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/auxsolarstarboard) +"dYE" = (/obj/structure/bed/roller,/obj/effect/decal/warning_stripes/yellow/hollow,/mob/living/carbon/human/monkey,/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitegreencorner"},/area/medical/virology) +"dYF" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/door/airlock/medical/glass{id_tag = null; name = "Monkey Pen"; req_access_txt = "39"},/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 1},/obj/effect/decal/warning_stripes/arrow{icon_state = "4"; dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/virology) "dYG" = (/obj/item/twohanded/required/kirbyplants,/obj/effect/decal/warning_stripes/yellow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/medical/research) "dYH" = (/obj/item/twohanded/required/kirbyplants,/obj/structure/sign/poster/random{pixel_y = -32},/obj/effect/decal/warning_stripes/yellow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/medical/research) -"dYI" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "sw_maint2_airlock"; name = "exterior access button"; pixel_x = 24; pixel_y = 24; req_access_txt = "0"},/turf/simulated/floor/plating/airless/catwalk,/area/space) -"dYJ" = (/turf/space,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) -"dYK" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) -"dYL" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "robotics_solar_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) -"dYM" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) -"dYN" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) -"dYO" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) -"dYP" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) -"dYQ" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) -"dYR" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "arrival_south_airlock"; name = "exterior access button"; pixel_x = 24; pixel_y = 24; req_access_txt = "10;13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) -"dYS" = (/turf/space,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) -"dYT" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) +"dYI" = (/turf/space,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) +"dYJ" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) +"dYK" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "robotics_solar_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) +"dYL" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) +"dYM" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) +"dYN" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) +"dYO" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) +"dYP" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) +"dYQ" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "arrival_south_airlock"; name = "exterior access button"; pixel_x = 24; pixel_y = 24; req_access_txt = "10;13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"dYR" = (/turf/space,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) +"dYS" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/portsolar) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10837,36 +10836,36 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjatYatYatYatYatYabjaEbabjatYatYatYatYatYabjabjabjaaaabjaAeaAiaAiaAiaEaatdaBhaCiaAgaCSazTazXaCgazZaAaaAbaChaAdaBfaCUaAgaCWaBlaCkabjalIawZaClaClaClaClaClaClaClaClaClaCmaClaClalIaCnaCoambauRalZayiaxbaCpaCqaxbaCraCsaxbaxbaCtaxeaCuaxeaEOaxeaFQaAzaCxaxeaBCaCyaCzayAaCAayAaAKaCBaCCaCDaCEaCFaCGaCHayAaCJaCKaDiaCLaCMaCNaCNaBSaBSaBSaFaaCOaBaaCPaCQaCRaCaaCbaCbaCbaCbaCbaCaacFaaaaaaabjaaaabjaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaabjaaaaaaabjaEcabjaaaaaaabjaaaaaaaaaabiabjaaaaaaaBVayGaAiayGaDCauKaCdaDeaCVaDhayPayMaCXaCYaCZaDaaDbayMayLaEeaDdaElaCeaDgaFzamhalZaClaDkaDlaDmaDnaDoaDpaDqaDraEkaFmaClaDsaDtaDuaDvaDwaDuaDxaDyaDzaDDaDBaEwaECaDEaDFaDGaDHaDHaDHaDHaDHaDHaDIaDHaDHaDJaCyaCzayAaDKayAaAKaBYaBIaCfaDNaCIaDjaDQaDSaDTaDWaDUaCNaDVaBSaEQaEXaEYaEZaFaaDXaDYaGPaGfaIgaHVaCbaCbaCbaCbaCbaCaacFaaaaaaabjaaaabjaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabjabiabiabjabjabjaEcabjabjabiabiabiabjabiabiabjabiabjaAeazRaAiayGaEaauKaCdaFdaEdaFlaCjaCjaEgaEhaAaaEiaEgaCTaDcaFVaEmaGhaEoauKaEpamhambaClaEqaEraEqaEqaEraEraEqaEsaEtaEraClaEuawXalIalIalIalIalIalIaEvaEJaExauVauVaEyaEyaEzaEAatNatNaprapravUapraHWaHXaEDaEEaEFayAaEGaDLaEIaDMaEKaDOaDPaDRaEHaEPayAaFpaDWaERaESaETaESaESaEUaEUaEVaFaaEWaFMaFNaFOaFPaFbaCbaCbaCbaCbaCbaCaacFabjabjabjabjabjabjacFacFacFacFaaaaaaaaaabiabiabiaaaaaaaaaaaaaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEcabjaaaaaaabjaaaaaaabjabjabjaaaabjaJJaITaDCaITaDCauKaCdaFdaFcaHcaDfaEfaFgaFhaCZaFhayMaEjaEjaFVaFjaGhaFkauKaLQamhambaClaGeaEraEqaEqaEraFnaEraEqaFoaHbaClaFqaFraFsaFtaFuaFvaFwaFxaFyaGMaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFBaCyaFCayAaFDayAaFEaFFaFGaFHaFIaFJaFKaFLayAaLVaGQaGRaCNaDVaCNaHzaIeaEQaEZaFaaEWaIfaFRaFSaBZaCaaFTaCbaCbaCbaFUaCaacFaaaaaaabjaaaaaaabjaaaabjaaaabjaaaaaaaaaabiabjabjabjaaaaaaaaaabjabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEcabjaaaaaaabjaaaaaaabjabjabjaaaabjaJyaITaDCaITaDCauKaCdaFdaFcaHcaDfaEfaFgaFhaCZaFhayMaEjaEjaFVaFjaGhaFkauKaJzamhambaClaGeaEraEqaEqaEraFnaEraEqaFoaHbaClaFqaFraFsaFtaFuaFvaFwaFxaFyaGMaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFAaFBaCyaFCayAaFDayAaFEaFFaFGaFHaFIaFJaFKaFLayAaLVaGQaGRaCNaDVaCNaHzaIeaEQaEZaFaaEWaIfaFRaFSaBZaCaaFTaCbaCbaCbaFUaCaacFaaaaaaabjaaaaaaabjaaaabjaaaabjaaaaaaaaaabiabjabjabjaaaaaaaaaabjabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatcabjabjabjabjabjabjabjabjabjacFabjaBVaEaaBVaEaaBVaxHaxGaHoaFWaEnaFeaFfaFeaFiaFXaFYaFZaGaaFiaGbaGgaHpaGcatdaEpalIaqFaClaEraEraGjaGkaGkaGlaGmaEraFoaGnaClaEuaFraGoaGpaGqaGraGraGsaGtaGuaFAaGvaGwaGxaGyaGzaFAaGAaGBaGCaGDaGEaGFaGGaFAaGHaGIaGJaGKaGKaGKaGLaELaGNaGLaGOaGOaGOaGOaGOaJmaKbaDiaBSaDVaCNaCNaCNaCNaBSaKIaDXaKJaFNaKKaFPaFbaCbaCbaCbaCbaCbaGSacFabjabjabjabjabjabjabjabjaaaabjaaaaaaaaaabjabjaGTaGUaGVaGTaGVaGTaGTabjaaaabiabiaaaaaaaaaaaaaaaaGWabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatZabjabjabjaGXaGYaGYaGYaGYaGZaHaaGZaGZaGZaHaaHaaGZatdaGdaJFaJHaHeaHfaHgaHhaHiaGiaHkaHhaHlaHmaHnaMEaJDaJGatdaLQalIambaClaHdaHjaHqaHraHsaHtaHuaHvaHwaHdaClaEuaFraHAaHBaHCaHDaHEaHFaHGaHHaHIaHJaHKaHLaHMaHNaHOaHNaHNaHNaHPaHNaHQaHRaFAaBCaCyaJcaHTaHUaIhaEMaJgaKvaHZaGOaIaaIbaIcaGOaIdaBSaDUaEQaKLaBSaEXaEQaMfaEZaKIaDXaIiaIkaIjaJsaJraCbaCbaCbaCbaCbaCaacFaaaaaaabjaaaaaaabjaaaabjabjabiabiabiabjabjabjaGTaIlaImaInaIoaIpaGTabjabjabjabjabjacFacFacFabjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatZabjaGXaGXaGXaIqaIraIsaGYaItaIuaIvaIwaIxaIyaIzaIAaGZaGZaGZaIBaICaIDaIEaIFaIGaIHaIIaIDaIJaIKaILaJDatdatdatdaEpalIalZaClaClaIMaClaClaClaHxaHyaClaIPaClaClaIQaFraFxaFxaFxaFxaFxaFxaIRaHSaHYaISaIVaIWaIXaIYaFAaIZaJaaIZaIZaJaaIZaJbaFAaBCaCyaKwaJdaJdaENaENaJfaKxaJhaJiaJjaJkaJlaMwaJnaJoaJpaJoaJqaBSaBSaBSaBSaBSaKIaNkaJEaJtaJuaJvaCaaCbaCbaCbaCbaCbaCaacFaaaaaaabjaaaaaaabjaaaabiaaaaaaabjaaaaaaaaaabjaJwaJxaJyaJzaJAaJBaJCaaaabjaaaabjaaaabjaaaabjaaaabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatZaLTaJKaJLaKoaLlaJIaJMaLraMOaJNaJOaJOaJOaJPaJQaJRaJSaJUaGZaJTaJWaCkatdatdaJVaJZaJXatdatdaJYaKXauKatdabjaaaaLQalIaKaambauRauRalZalZauRaINaKcaKdaKeaKfaKfaKgaFraKhaKiaKjaKkaKlaFxaKmaIUaFAaKnaIXaIXaIXaKpaKqaKraKsaKsaKsaKsaKsaKsaFAaKtaKuaKwaJdaMaaNxaNpaKyaKxaKzaKAaKBaKCaKDaKEaKFaKGaKHaNwaOQaBSaOSaQnaEQaNwaKIaDXaJEaBZabjaaaaKMaKNaCbaKOaCbaKPaKQacFaaaaaaabjabjabjabjabjabiabjabjabjabjabjabjabjaGTaKRaKSaKTaKUaKVaGTabjabjabjabjaKWabjaaaabjaKWabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatZabjabjabjaGXaGYaGYaGYaGYaGZaHaaGZaGZaGZaHaaHaaGZatdaGdaJFaJHaHeaHfaHgaHhaHiaGiaHkaHhaHlaHmaHnaMEaJDaJGatdaJzalIambaClaHdaHjaHqaHraHsaHtaHuaHvaHwaHdaClaEuaFraHAaHBaHCaHDaHEaHFaHGaHHaHIaHJaHKaHLaHMaHNaHOaHNaHNaHNaHPaHNaHQaHRaFAaBCaCyaJcaHTaHUaIhaEMaJgaKvaHZaGOaIaaIbaIcaGOaIdaBSaDUaEQaKLaBSaEXaEQaMfaEZaKIaDXaIiaIkaIjaJsaJraCbaCbaCbaCbaCbaCaacFaaaaaaabjaaaaaaabjaaaabjabjabiabiabiabjabjabjaGTaIlaImaInaIoaIpaGTabjabjabjabjabjacFacFacFabjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatZabjaGXaGXaGXaIqaIraIsaGYaItaIuaIvaIwaIxaIyaIzaIAaGZaGZaGZaIBaICaIDaIEaIFaIGaIHaIIaIDaIJaIKaILaJDatdatdatdaEpalIalZaClaClaIMaClaClaClaHxaHyaClaIPaClaClaIQaFraFxaFxaFxaFxaFxaFxaIRaHSaHYaISaIVaIWaIXaIYaFAaIZaJaaIZaIZaJaaIZaJbaFAaBCaCyaKwaJdaJdaENaENaJfaKxaJhaJiaJjaJkaJlaMwaJnaJoaJpaJoaJqaBSaBSaBSaBSaBSaKIaNkaJEaJtaJuaJvaCaaCbaCbaCbaCbaCbaCaacFaaaaaaabjaaaaaaabjaaaabiaaaaaaabjaaaaaaaaaabjaJwaJxaJJaKTaJAaJBaJCaaaabjaaaabjaaaabjaaaabjaaaabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatZaLQaJKaJLaKoaLlaJIaJMaLraMOaJNaJOaJOaJOaJPaJQaJRaJSaJUaGZaJTaJWaCkatdatdaJVaJZaJXatdatdaJYaKXauKatdabjaaaaJzalIaKaambauRauRalZalZauRaINaKcaKdaKeaKfaKfaKgaFraKhaKiaKjaKkaKlaFxaKmaIUaFAaKnaIXaIXaIXaKpaKqaKraKsaKsaKsaKsaKsaKsaFAaKtaKuaKwaJdaMaaNxaNpaKyaKxaKzaKAaKBaKCaKDaKEaKFaKGaKHaNwaOQaBSaOSaQnaEQaNwaKIaDXaJEaBZabjaaaaKMaKNaCbaKOaCbaKPaKQacFaaaaaaabjabjabjabjabjabiabjabjabjabjabjabjabjaGTaKRaKSaSpaKUaKVaGTabjabjabjabjaKWabjaaaabjaKWabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjaGXaGXaGXaKYaKZaLcaLaaLbaLkaLdaLeaLfaLgaLhaLiaLjaPsaLmaLnaLoaLqaLpaPEaLsaLtaLuaLqatdaLvaLwaMxatdabjabjaEpalIalJaLxasqaqlambaqlaLyaLzaLAalZaLBaLCalZaLDaFraLEaLFaLGaLHaLHaLIaLJaLKaFAaLLaLMaLNaLOaLPaFAaQtaTpaTpaTpaVQaTpaZZaLUaBCaCyaJcaQpaLWaLXaLYaLZaNyaJhaMbaMcaMdaMeaQoaMgaESaMhaBSaMiaMjaMkaMkaMjaMlaKIaDXaJEaBZabjaaaaMmaMnaMoaMoaMoaMnaMpaaaaaaaaaabjaaZaaaabjaaaabiaaaabjaGTaGTaGTaGTaGVaGTaMqaMraMsaMtaMqaGUaGTaMuaJCaGTaMvaIOaIOaIOaMvabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFbaNacFacFaMyaMyaMyaMyaMzaMAaLkaMBaMCaMDaMIaMFaMGaMHaMKaMJaMLaMMaMNatdaRaaMPaMQaMRaNZatdaMSaMTaMUatdabjaaaaLQalIalIalIalIalIaqFaMVaMVaMWaMWaMWaMXaMYaMWaMZaFraNaaNbaNcaNdaNeaHFaNfaNgaFAaFAaFAaFAaFAaFAaFAaNhaNiaNiaNiaNiaNiaNjaLUaBCaCyaRHaJdaNlaNmaNnaNoaTiaJhaGOaNqaNraNsaGOaNtaCNaNuaEYaQqaBSaOSaQraEXaEZaKIaSwaQsaBZabjaaaaaaaNzaNAaNAaNAaNBaaaaaaaaaaaaabjaaaaaaabjaaaabjaaaabjaGUaNCaMqaNDaNEaNFaNGaNHaNIaNJaNKaNLaNMaNNaNOaNPaMvaNQaNRaNSaMvabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFabjaNTaMyaMyaNUaNVaNWaNXaNYaOdaOaaObaOcaOhaObaObaOeaOfaOgaOgaOjaOgaOgaOgaOiaOmaOkaOgaOgaOgaOgaOgaOlabjabjbaPbaSaOobaSaFzalIambaMVaOpaOqaOraOsaOtaOuaMWaOvaOwaOxaOxaOxaOxaOxaOxaOyaOzaLUaOAaOBaOCaODaOEaOFaNiaOGaLRaLRaLRaNiaNiaOHaBCaCyaOIaGKaOJaOKaOLaNoaOMaONaGOaOOaOPaKEaGOaQuaBSaNuaCNaORaCNaCNaCNaBSaBSaKIaQvaQvaBZabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaaaaabjaaaabjabjabjaGUaOTaOUaOVaOWaOXaOVaOYaOZaPaaOVaPbaPcaPdaPeaPfaMvaPgaPhaPiaPjabjabiaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFaaaaPkaPlaPmaPnaPoaPpaPqaPraPtaPBaPuaPvaPwaPwaPwaPxaPyaPzaPAaTraPAaPCaPAaPDaTTaPFaPGaPHaPHaPHaPIaOgabjaaaabjaaaabjaaaaLQalIambaMWaPJaPKaPLaPMaPNaPOaMVaOvaOwaPPaPQaPRaPSaPTaOxaOyaOzaLUaPUaPVaPWaPXaPYaPZaNiaQaaQbaQcaQdaLRaNiaOHaBCaCyaCzaGKaQeaQfaQgaQhaQiaJhaQjaQkaQlaQmaJiaSqaKKaTVaUjaUoaWuaWzaKKaWCaWGaXUaYtaYtaQwabjabjabjabjabjabjabjabjabjabjabiabiabiabiabiabiabjabjaGTaGTaGTaGTaGTaQxaQyaQzaQAaQBaQCaQDaQEaNOaQFaQGaQHaQIaMvaQJaQKaQLaMvabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFabjaNTaMyaMyaQMaQNaQOaQNaQPaQQaQRaObaQSaQTaQUaQVaQWaQXaQYaQZaUMaQZaRbaRcaRdaTTaReaRfaRgaRhaRiaPHaOgabjabjabjabjabjabjaEpalIawZaMYaRjaRkaRlaRmaRnaRoaMWaMZaOwaRpaRqaRraRqaOnaRsaRtaRvaLUaRwaRxaPWaRyaRzaRAaNiaRBaRCaRDaREaRFaRGaXRaRIaRJaRKaGKaRLaRMaRNaROaGKaRPaMbaRQaRRaRSaRTaRUaRVazLaRWaRXaRVazLazLaRYaRZaSaaSaaSaaSbaScaSdaSeaSbaSfaSgaSgaSgabjaaaabjaaaaaaaaaaaaaaaaaaabjaGTaShaSiaSjaGTaSkaSlaSmaSnaSoaSpaQEaTbaSraQFaSsaPjaMvaMvaStaSuaSvaMvaMvaMvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFacFbdaaSxaMyaSyaMyaMyaMyaGZaSzaGZaOgaSAaSBaSCaSDaSEaSDaSFaSDaSDaSDaSGaSDaSDaSHaSIaSDaSDaSJaSKaSLaOgaSMaSNaSNaSNaSNaSNaLQalIawZaSOaSPaSPaRmaSQaSRaRmaSOaRuaSSaSUaSTaSWaSXaSVaSYaSZaTaaTcaTdaTeaTfaTgaRzaRAaNiaNiaNiaThaNiaNiaNiaZfaBCaTjaCzaGKaGKaJdaJeaTlaGKaTmaTnaToaNvaTqaTnaZtaTsaTtaDUaTuaBSaTvaTwaTxaSaaTyaTzaTAaTBaTCaTDaTEaSbaSfaSgaSgaSgabjabjabjabjabjabjabiabiabiabjaGTaTFaTGaTHaGTaMqaTIaMqaMqaMqaTJaMqaMqaMqaTKaMqaMvaTLaTMaTNaTOaTPaTQaTRaMvbaOabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaTSbfSaTUbfSaTUbfSaTUbprabjaOgaTWaTXaTYaTZaUaaTZaUbaTZaTZaTZaUcaTZaTZaUdaUeaTZaTZaUfaUgaUhaUibuXaUkaUlaUmaUnaSNaEpamhalZaXeaUpaRmaUqaUraUsaUtaUuaUvaUwaUxaUyaUzaUyaUAaUBaUCaUDaUEaUFaUGaPXaUHaRzaRAaNiaLRaUIaUJaUIaUKaULbcwaDJaCyaCzaGKaUNaUOaUPaUQaURaUSaUTaUUaUVaUWayDaUXaUYaUZaDUaTuaBSaUZaVaaVbaVcaVdaVeaVfaVgaVhaViaVjaSbaSfaSfaSgaSfaaaabjaaaaaaabjaaaaaaaaaabjaaaaGTaVkaTGaVlaGUaVmaVnaVoaMqaVmaVpaVqaMqaVraVsaVtaMvaVuaVvaVwaVxaVyaVzaVAaPjaVBaMqaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjabiaaaabiabjaSNaSNaSNaSNaSNaSMaOgaVCaVDaVEaVFaVGaVFaVHaVIaVJaVIaVKaVIaVLaVMaVNaVOaVFaVPbcyaPHaObaSMaVRaVSaVTaVUaSNaLQamhalZaMWaOsaVVaRoaVWaVXaOsaMWaOvaOwaVYaVZaWaaWbaWcaOxaOyaWdaLUaWeaWfaPXaPXaRzaPZaNiaLSaWgaWhaWiaWjaNiaOHaBCaWkaTkaWmaWnaWoaWpaWqaWraWraWsaWraWsaWtbaiaWvaWwaWxaWybbhaWAaWAaWAaWBbbjaWDaWEaWFbbkaWHaWIaWJaSbaSfaSfaSgaSfaaaabjaaaaaaabjaaaaaaaaaabjaaaaGTaWKaTGaWLaGTaWMaWNaWOaMqaWPaWQaWOaMqaWPaWRaWOaMvaWSaWTaWUaWVaWWaWXaWYaPjaWZaMqabjabjabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjabjabiabjaSNaXaaXbaXcaXdbvBaXfaXgaXhaXiaXjaXkaXlaXmaXnaXoaObaXpaObaXoaXqaXraXsaXtaXuaXvaXwaUibuXaUkaXxaUnaUnaSNaEpamhambaMWaMYaMWaMWaMWaMXaMWaMWaXyaOwaOxaOxaOxaOxaOxaOxaXzaXAaLUaXBaXCaXDaXEaXFaXGaXHaNiaLRaLRaLRaXIaNiaOHaBCaXJaWlaXKaXLaXNaXOaXPaXQaXMaXSaXQaXQaXTbcIaXVaXWaXXaXYaXZaYaaYbaYcaYdaYeaYfaYgaYgaYhaYiaViaYjaSbaSfaSgaSgaSgabjabjabjabjabjabjabjaGTaGTaGTaGTaYkaYlaYmaGTaYnaYoaMqaMqaYnaYpaMqaMqaYnaYqaMqaGTaGTaYraYsaGTaGTaGTaGTaGTaZVaMqaMqaMqaMqaMqaGTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaabjaaaabiaaaaSNaYuaYvaYwaVRaSMaObaTWaYxaYyaYzaYAaYBaYCaYDaYEaYFaYGaYHaXoaYIaYJaXsaYKaYLaYMaYNaYOaSMaSNaSNaSNaSNaSNaLQalIambaBoaqlaYPaCoaYQaYRawgaYSaYTaYUavOalLaEyauVaYVaYWaYXaYYaYZaZaaYZaYZaYZaYZaYZaZbaNiaNiaNiaNiaNiaZcaLUaZdaZeaEFaJdaZgaZhaZiaZjaZjaZjaZkaZjaZjaZlaZmaZnaZoaZpaZqbcJbcKbcLaZuaZvaZwaZxaZyaZzaZAaZBaZCaZDaSbaSfaSgaSgaSgabjaaaaaaaaaabjaaaaaaaGVaZEaZFaZGaZHaZIaZJaZKaZLaZMaZKaZNaZOaZPaZQaZKaZRaZSaZKaZKaZTaZPaZUaZWaZXbadaZWaZYbrzbaababbacbwObaebaebafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjaSNaXaaXabagbahbRmbajbakbalaYybamaYAbanbaobapaObbaqbarbasaObbatbaubavbawaXubaxbayaXfbvBaXdbazbaAbaBaSNaEpamhaqFbaCbaDalZalZaOvbaEbaFbaGbaHbaIbaJbaJbaJbaJbaJaHFbaKbaLaYZbaMbaQbcsbctbcuaYZbaRaTpaTpaNiaVQbRqbaTaLUbaUaCyaCzaGKbaVbaWbaXbaYbaZbaYbbabbbbbcbbdbbebbfbbgbcObbibbebbebbebelbeyaSbbblaSaaSbaSbaScbbmaSeaSbabjabjabjabjabjaaaaaaaaaabjaaaaaabbnbbobbpbbqbbrbbsbbtbbubbubbvbbubbwbbxbbvbbybbubbsbbvbbzbbubbsbbvbbAbbBbbDbbHbbBbbEbbFbbGbcWbbGbbIbbJbbKbbLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiabjaSNaSNaSNaSNaSNaSMaYObbMbbNaYybambbObbPbbQbapaObbbRbbSbbTaObbbUaYJbbVaYKbbWbbXaPHaObaSMaVRbbYbbZbcaaSNaLQamhaqFbcbanyanyalZaOvbaEbccbcdbcebcfbcgbchbcibcjbckaFxbclbcmbcnbcobcpbcqbcrbcvaYZaZabcxbdTaYZbflbfoaZaaYZbfpbgwbgxaGKaGKbcAaZsaJdaGKaJdaJdaJdaZraGKbbebcDbcEbcFbcGbcHbbebfwbfCbfMbfNbfNbfNbgMbgVbgWbcPabjaaaaaabcQbcRbcSbcRbcTacFabjabjaaaaaaaGTbcUbcVaGTbcXaGVbdiaGTaGTaGTaGUbcYbcZbfTaMqbdbbdcbddaGTaJwbdeaJCaGTaGTaGTaGUaGTbdfbdgbdhbabbbGbRGbaebaebdjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabjabjaSNbdkbdlbdmaXdbvBaXfaXgbdnbdobamaYAbanbdpbapaObbdqbdrbdsaObbataYJaXsaYKbbWbdtbdubajbRmbahbdvbaBbaBaSNaEpamhaqFalZambaqlalZaMZbaEbdwbdxbdybdzbdAbdBbdCbdDbdEbdFbdGbdHbdIbdJbdKbdLbdMbczaYZbdNbdPbdQbdRbdQbdSbdOaYZaBCaCyaCzbdUbdVbdWbdXbdYbbCbcBbcBbcBbcCbcMbbibedbeebefbegbehbbibeibejbekbhZbifbhZbembenbeobepbeqberbesbetbeubevbewbetacFaaaabjabjbexbexbexbexaGTbezbeAbeBaGTbfUbeCaGTaGTbeDaGTaGTaGTbeDaGUaGTaaaabjaaaabjabjabjabjaMqaMqbeDaMqaMqaMqaMqaMqaGTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaaSNbeEbeFbeGaVRaSMaObaTWbeHaYybeIbeJbanbeJbeKaXobeLbeMbeNaXobeOaYJaXsaYKbePbeQbeRaYOaSMaSNaSNaSNaSNaSNaLQalIambambbeSalIawZaMZbaEbeTbeUbeVbeWbeXbeYbeZbeUbfabfbbfcbfdaYZbfebffbfgbfhbfiaYZbfjbdQbfkbgvbfmbfnbdSbgIaBCaCybhMbfqbfrbfsbftbfubfubfvbfubfubfubcCbinbfxbfybfzbfAbfBbiobfDbfEbfFbfGbfHbfIbfJbfKbfLbbiblCblDbfObcSbfPbfQbfPbcSacFaaaabjaaabexbfRbhcbisaGTbfVbfWbfXbfYbhebfZaJCaaaabjaaaabjaaaabjaaaabjabjabjabjabjaaaaaaaaaabjaaaaaaaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjaSNbdkbdkbgabahbRmbajbakbgbaYyaYJbgcbanbgdaXqaXobgebgfaObaXoaXnaXraXsbggbghbgibgjaXfbvBaXdbgkbglbgmaSNaEpamhalZbgnbgoareawZaOvbaEbaFbgpbaFbgqbaEbaFbaFbaFbaFaFxbgrbgsaYZbgtaYZbguaYZaYZaYZbgybdPbgAbgBbhNbdSbfnbgIaBCbgzbhYbjzbgCbgDbcNbdZbgGbeabdZbgGbgGbebbgJbgKbgLblEbgNbgObgJbgPbgQbgRbfAbgSbgSbgSbgTbgUblGblHblIblGbgYbfPbfPbfPbgZacFabjabjaaabhabhbblpbhdbexbhgbhfbkgbhhbhhbhibhhbhhbhhbhibhhbhhbhhbhhabjaaaabjaaaabjabjabjabjabjabjabjabjabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabiabjaSNaSNaSNaSNaSNaSMaYOaVCbbNaYyaYJaXkbhjaYAbhkbhlbhmbhnbhkbhobhkaYJaXsbanbhpbhqbhraObaSMaVRbhsbhtbhuaSNaLQamhawZbgnanyaqpambaMZbaEbhvbhwbhxbhybhzbhAbhBbhCbhDbhEbhFbhGbhHbhIbdQbhJbdQbdPbhKbhLbdQbhQbhRblibfnbdSbgIbhObhPblqblrbhSbhTbecbgEbhWbgFbgHbhWbhWbgHblJbiabibbicbidbieblKbigbihbiibijbikbilbilbilbimbbiblLblMbipbcSbfQbfQbfQbcSacFaaaabjaaabiqbirbqwbtGbitbiubivbiwbhhbixbiybizbiAbiBbiCbiDbiEbiFbiGbiGbiHbiIbiJbiGbiGaaaaaaabjaaaaaaaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabjabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjaSNbiKbiLbiMaXdbvBaXfaXgbiNbdoaYJbiObiPbiQbanbiRaYJbiSbiTbiTbiUbiVbiWbiXbiYbiZbjabajbRmbahbjbbgmbgmaSNaEpamhaqFambanybjcaqFbjdbaEbjebjfbdxbjgbjhbjibjjbjkbjlbjmbjnbjobjpbjqbjrbjsbjtbjubjvbjubjvbjubjwbjubjxbjybnbbjAbjBbhMbfqbjCbfubjDbjEbfubftbfubfubfubjFbbibjGbjHbfybjIbjJbbibjKbjLbjMbjNbjObjPbjQbjRbjSbjTbeqberbjUbetbjVbjWbjXbetacFaaaabjaaabjYbjZbkabkbbkcbkdbkebkfbhibmObkhbkibkibkjbkkbklbkmbknbiGbkobkpbkqbkrbksbiGbiGbiGbiGbiGbiGaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabktbkubktbkubktaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaaSNbkvbkwbkxaVRaSMaObaTWbkybkzbkAbkBbkBbkCbkDbkEbkFbkGbkHbkIbkJbkKbkLbkMbkNbkObkPaOgbkQaSNaSNaSNaSNaSNaLQalIbkRaCoaqlambambbjdbaEbkSbkTbkUbkVbkWbkXbkYbkZblablbblcbldbleblfblgblhbljblkbllblmbloblnbncbnebQybQyaYZaBCaCybSBbdUblsbltblublvblwblxblublyblzblAbbeblBblNbnfbnhblFbbebniboDboFbsCbbebxybHGbJsbMnblOabjaaaaaablPbcRblQbcRblRaaaabjabjabjbexblSblTblUbjYblVblWblXblYblZbmabmbbmcbmdbmebklbkmbmfbmgbmhbmhbmibmhbmhbmjbmkbmlbmmbmnbiGabjabjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjabiabiabiabjabiabibmobmpbmqbmqbmqbmrbmsabiabiabjabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabjabjaSNbiKbiKbmtbahbRmbajbakbmubmvbmwbmxbmybmzbmAbmBbmCbmDbmEbmFbmGbmHbmIbmJbmKbmLbmMbmNbaSbaSaOobaSaOobaSbUbalIaqlalZaqpbmPaqFaEubaEbmQbkTbmRbkUbmSbmTbmUbmVbaFbmWbmXbmYaYZaYZaYZaYZaYZaYZbmZbmZbmZaZabmZbmZbmZaYZbnabyNbMabMbbndbfqbfqbhUbhVbdUbhXbhUbfqbfqbdUbbebbebbibNBbbibbebbebngbNCbQabngbngbngbngbngbnjbnkabjaaaaaaaaaaaaaaaaaaaaaabjbnlbnmbnnbnobnobnobnobnobnpbnqbnrbnsbntbnubnvbnwbnxbnybnzbnAbnBbnCbnDbnEbnFbnGbnHbnIbnJbnHbnKbnLbmgaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFaLTacFacFaMyaMyaMyaMyaMzaMAaLkaMBaMCaMDaMIaMFaMGaMHaMKaMJaMLaMMaMNatdaRaaMPaMQaMRaNZatdaMSaMTaMUatdabjaaaaJzalIalIalIalIalIaqFaMVaMVaMWaMWaMWaMXaMYaMWaMZaFraNaaNbaNcaNdaNeaHFaNfaNgaFAaFAaFAaFAaFAaFAaFAaNhaNiaNiaNiaNiaNiaNjaLUaBCaCyaRHaJdaNlaNmaNnaNoaTiaJhaGOaNqaNraNsaGOaNtaCNaNuaEYaQqaBSaOSaQraEXaEZaKIaSwaQsaBZabjaaaaaaaNzaNAaNAaNAaNBaaaaaaaaaaaaabjaaaaaaabjaaaabjaaaabjaGUaNCaMqaNDaNEaNFaNGaNHaNIaNJaNKaNLaNMaNNaNOaNPaMvaNQaNRaNSaMvabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFabjaNTaMyaMyaNUaNVaNWaNXaNYaOdaOaaObaOcaOhaObaObaOeaOfaOgaOgaOjaOgaOgaOgaOiaOmaOkaOgaOgaOgaOgaOgaOlabjabjaOUaOWaOoaOWaFzalIambaMVaOpaOqaOraOsaOtaOuaMWaOvaOwaOxaOxaOxaOxaOxaOxaOyaOzaLUaOAaOBaOCaODaOEaOFaNiaOGaLRaLRaLRaNiaNiaOHaBCaCyaOIaGKaOJaOKaOLaNoaOMaONaGOaOOaOPaKEaGOaQuaBSaNuaCNaORaCNaCNaCNaBSaBSaKIaQvaQvaBZabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaaaaabjaaaabjabjabjaGUaOTaOXaOVaPbaPcaOVaOYaOZaPaaOVaPcaQAaPdaPeaPfaMvaPgaPhaPiaPjabjabiaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFaaaaPkaPlaPmaPnaPoaPpaPqaPraPtaPBaPuaPvaPwaPwaPwaPxaPyaPzaPAaTraPAaPCaPAaPDaTTaPFaPGaPHaPHaPHaPIaOgabjaaaabjaaaabjaaaaJzalIambaMWaPJaPKaPLaPMaPNaPOaMVaOvaOwaPPaPQaPRaPSaPTaOxaOyaOzaLUaPUaPVaPWaPXaPYaPZaNiaQaaQbaQcaQdaLRaNiaOHaBCaCyaCzaGKaQeaQfaQgaQhaQiaJhaQjaQkaQlaQmaJiaSqaKKaTVaUjaUoaWuaWzaKKaWCaWGaXUaYtaYtaQwabjabjabjabjabjabjabjabjabjabjabiabiabiabiabiabiabjabjaGTaGTaGTaGTaGTaQxaQyaQzaSnaQBaQCaQDaQEaNOaQFaQGaQHaQIaMvaQJaQKaQLaMvabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFabjaNTaMyaMyaQMaQNaQOaQNaQPaQQaQRaObaQSaQTaQUaQVaQWaQXaQYaQZaUMaQZaRbaRcaRdaTTaReaRfaRgaRhaRiaPHaOgabjabjabjabjabjabjaEpalIawZaMYaRjaRkaRlaRmaRnaRoaMWaMZaOwaRpaRqaRraRqaOnaRsaRtaRvaLUaRwaRxaPWaRyaRzaRAaNiaRBaRCaRDaREaRFaRGaXRaRIaRJaRKaGKaRLaRMaRNaROaGKaRPaMbaRQaRRaRSaRTaRUaRVazLaRWaRXaRVazLazLaRYaRZaSaaSaaSaaSbaScaSdaSeaSbaSfaSgaSgaSgabjaaaabjaaaaaaaaaaaaaaaaaaabjaGTaShaSiaSjaGTaSkaSlaSmaWNaSoaSpaQEaTbaSraQFaSsaPjaMvaMvaStaSuaSvaMvaMvaMvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFacFaWRaSxaMyaSyaMyaMyaMyaGZaSzaGZaOgaSAaSBaSCaSDaSEaSDaSFaSDaSDaSDaSGaSDaSDaSHaSIaSDaSDaSJaSKaSLaOgaSMaSNaSNaSNaSNaSNaJzalIawZaSOaSPaSPaRmaSQaSRaRmaSOaRuaSSaSUaSTaSWaSXaSVaSYaSZaTaaTcaTdaTeaTfaTgaRzaRAaNiaNiaNiaThaNiaNiaNiaZfaBCaTjaCzaGKaGKaJdaJeaTlaGKaTmaTnaToaNvaTqaTnaZtaTsaTtaDUaTuaBSaTvaTwaTxaSaaTyaTzaTAaTBaTCaTDaTEaSbaSfaSgaSgaSgabjabjabjabjabjabjabiabiabiabjaGTaTFaTGaTHaGTaMqaTIaMqaMqaMqaTJaMqaMqaMqaTKaMqaMvaTLaTMaTNaTOaTPaTQaTRaMvbaOabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaTSaZYaTUaZYaTUaZYaTUbaaabjaOgaTWaTXaTYaTZaUaaTZaUbaTZaTZaTZaUcaTZaTZaUdaUeaTZaTZaUfaUgaUhaUibaNaUkaUlaUmaUnaSNaEpamhalZaXeaUpaRmaUqaUraUsaUtaUuaUvaUwaUxaUyaUzaUyaUAaUBaUCaUDaUEaUFaUGaPXaUHaRzaRAaNiaLRaUIaUJaUIaUKaULbcwaDJaCyaCzaGKaUNaUOaUPaUQaURaUSaUTaUUaUVaUWayDaUXaUYaUZaDUaTuaBSaUZaVaaVbaVcaVdaVeaVfaVgaVhaViaVjaSbaSfaSfaSgaSfaaaabjaaaaaaabjaaaaaaaaaabjaaaaGTaVkaTGaVlaGUaVmaVnaVoaMqaVmaVpaVqaMqaVraVsaVtaMvaVuaVvaVwaVxaVyaVzaVAaPjaVBaMqaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjabiaaaabiabjaSNaSNaSNaSNaSNaSMaOgaVCaVDaVEaVFaVGaVFaVHaVIaVJaVIaVKaVIaVLaVMaVNaVOaVFaVPbcyaPHaObaSMaVRaVSaVTaVUaSNaJzamhalZaMWaOsaVVaRoaVWaVXaOsaMWaOvaOwaVYaVZaWaaWbaWcaOxaOyaWdaLUaWeaWfaPXaPXaRzaPZaNiaLSaWgaWhaWiaWjaNiaOHaBCaWkaTkaWmaWnaWoaWpaWqaWraWraWsaWraWsaWtbaiaWvaWwaWxaWybbhaWAaWAaWAaWBbbjaWDaWEaWFbbkaWHaWIaWJaSbaSfaSfaSgaSfaaaabjaaaaaaabjaaaaaaaaaabjaaaaGTaWKaTGaWLaGTaWMbaPaWOaMqaWPaWQaWOaMqaWPbaSaWOaMvaWSaWTaWUaWVaWWaWXaWYaPjaWZaMqabjabjabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjabjabiabjaSNaXaaXbaXcaXdbbFaXfaXgaXhaXiaXjaXkaXlaXmaXnaXoaObaXpaObaXoaXqaXraXsaXtaXuaXvaXwaUibaNaUkaXxaUnaUnaSNaEpamhambaMWaMYaMWaMWaMWaMXaMWaMWaXyaOwaOxaOxaOxaOxaOxaOxaXzaXAaLUaXBaXCaXDaXEaXFaXGaXHaNiaLRaLRaLRaXIaNiaOHaBCaXJaWlaXKaXLaXNaXOaXPaXQaXMaXSaXQaXQaXTbcIaXVaXWaXXaXYaXZaYaaYbaYcaYdaYeaYfaYgaYgaYhaYiaViaYjaSbaSfaSgaSgaSgabjabjabjabjabjabjabjaGTaGTaGTaGTaYkaYlaYmaGTaYnaYoaMqaMqaYnaYpaMqaMqaYnaYqaMqaGTaGTaYraYsaGTaGTaGTaGTaGTaZVaMqaMqaMqaMqaMqaGTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaabjaaaabiaaaaSNaYuaYvaYwaVRaSMaObaTWaYxaYyaYzaYAaYBaYCaYDaYEaYFaYGaYHaXoaYIaYJaXsaYKaYLaYMaYNaYOaSMaSNaSNaSNaSNaSNaJzalIambaBoaqlaYPaCoaYQaYRawgaYSaYTaYUavOalLaEyauVaYVaYWaYXaYYaYZaZaaYZaYZaYZaYZaYZaZbaNiaNiaNiaNiaNiaZcaLUaZdaZeaEFaJdaZgaZhaZiaZjaZjaZjaZkaZjaZjaZlaZmaZnaZoaZpaZqbcJbcKbcLaZuaZvaZwaZxaZyaZzaZAaZBaZCaZDaSbaSfaSgaSgaSgabjaaaaaaaaaabjaaaaaaaGVaZEaZFaZGaZHaZIaZJaZKaZLaZMaZKaZNaZOaZPaZQaZKaZRaZSaZKaZKaZTaZPaZUaZWaZXbadaZWbdabrzbfSbabbacbprbaebaebafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjaSNaXaaXabagbahbuXbajbakbalaYybamaYAbanbaobapaObbaqbarbasaObbatbaubavbawaXubaxbayaXfbbFaXdbazbaAbaBaSNaEpamhaqFbaCbaDalZalZaOvbaEbaFbaGbaHbaIbaJbaJbaJbaJbaJaHFbaKbaLaYZbaMbaQbcsbctbcuaYZbaRaTpaTpaNiaVQbRqbaTaLUbaUaCyaCzaGKbaVbaWbaXbaYbaZbaYbbabbbbbcbbdbbebbfbbgbcObbibbebbebbebelbeyaSbbblaSaaSbaSbaScbbmaSeaSbabjabjabjabjabjaaaaaaaaaabjaaaaaabbnbbobbpbbqbbrbbsbbtbbubbubbvbbubbwbbxbbvbbybbubbsbbvbbzbbubbsbbvbbAbbBbbDbbHbbBbbEbvBbbGbcWbbGbbIbbJbbKbbLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiabjaSNaSNaSNaSNaSNaSMaYObbMbbNaYybambbObbPbbQbapaObbbRbbSbbTaObbbUaYJbbVaYKbbWbbXaPHaObaSMaVRbbYbbZbcaaSNaJzamhaqFbcbanyanyalZaOvbaEbccbcdbcebcfbcgbchbcibcjbckaFxbclbcmbcnbcobcpbcqbcrbcvaYZaZabcxbdTaYZbflbfoaZaaYZbfpbgwbgxaGKaGKbcAaZsaJdaGKaJdaJdaJdaZraGKbbebcDbcEbcFbcGbcHbbebfwbfCbfMbfNbfNbfNbgMbgVbgWbcPabjaaaaaabcQbcRbcSbcRbcTacFabjabjaaaaaaaGTbcUbcVaGTbcXaGVbdiaGTaGTaGTaGUbcYbcZbfTaMqbdbbdcbddaGTaJwbdeaJCaGTaGTaGTaGUaGTbdfbdgbdhbabbbGbwObaebaebdjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabjabjaSNbdkbdlbdmaXdbbFaXfaXgbdnbdobamaYAbanbdpbapaObbdqbdrbdsaObbataYJaXsaYKbbWbdtbdubajbuXbahbdvbaBbaBaSNaEpamhaqFalZambaqlalZaMZbaEbdwbdxbdybdzbdAbdBbdCbdDbdEbdFbdGbdHbdIbdJbdKbdLbdMbczaYZbdNbdPbdQbdRbdQbdSbdOaYZaBCaCyaCzbdUbdVbdWbdXbdYbbCbcBbcBbcBbcCbcMbbibedbeebefbegbehbbibeibejbekbhZbifbhZbembenbeobepbeqberbesbetbeubevbewbetacFaaaabjabjbexbexbexbexaGTbezbeAbeBaGTbfUbeCaGTaGTbeDaGTaGTaGTbeDaGUaGTaaaabjaaaabjabjabjabjaMqaMqbeDaMqaMqaMqaMqaMqaGTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaaSNbeEbeFbeGaVRaSMaObaTWbeHaYybeIbeJbanbeJbeKaXobeLbeMbeNaXobeOaYJaXsaYKbePbeQbeRaYOaSMaSNaSNaSNaSNaSNaJzalIambambbeSalIawZaMZbaEbeTbeUbeVbeWbeXbeYbeZbeUbfabfbbfcbfdaYZbfebffbfgbfhbfiaYZbfjbdQbfkbgvbfmbfnbdSbgIaBCaCybhMbfqbfrbfsbftbfubfubfvbfubfubfubcCbinbfxbfybfzbfAbfBbiobfDbfEbfFbfGbfHbfIbfJbfKbfLbbiblCblDbfObcSbfPbfQbfPbcSacFaaaabjaaabexbfRbhcbisaGTbfVbfWbfXbfYbhebfZaJCaaaabjaaaabjaaaabjaaaabjabjabjabjabjaaaaaaaaaabjaaaaaaaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjaSNbdkbdkbgabahbuXbajbakbgbaYyaYJbgcbanbgdaXqaXobgebgfaObaXoaXnaXraXsbggbghbgibgjaXfbbFaXdbgkbglbgmaSNaEpamhalZbgnbgoareawZaOvbaEbaFbgpbaFbgqbaEbaFbaFbaFbaFaFxbgrbgsaYZbgtaYZbguaYZaYZaYZbgybdPbgAbgBbhNbdSbfnbgIaBCbgzbhYbjzbgCbgDbcNbdZbgGbeabdZbgGbgGbebbgJbgKbgLblEbgNbgObgJbgPbgQbgRbfAbgSbgSbgSbgTbgUblGblHblIblGbgYbfPbfPbfPbgZacFabjabjaaabhabhbblpbhdbexbhgbhfbkgbhhbhhbhibhhbhhbhhbhibhhbhhbhhbhhabjaaaabjaaaabjabjabjabjabjabjabjabjabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabiabjaSNaSNaSNaSNaSNaSMaYOaVCbbNaYyaYJaXkbhjaYAbhkbhlbhmbhnbhkbhobhkaYJaXsbanbhpbhqbhraObaSMaVRbhsbhtbhuaSNaJzamhawZbgnanyaqpambaMZbaEbhvbhwbhxbhybhzbhAbhBbhCbhDbhEbhFbhGbhHbhIbdQbhJbdQbdPbhKbhLbdQbhQbhRblibfnbdSbgIbhObhPblqblrbhSbhTbecbgEbhWbgFbgHbhWbhWbgHblJbiabibbicbidbieblKbigbihbiibijbikbilbilbilbimbbiblLblMbipbcSbfQbfQbfQbcSacFaaaabjaaabiqbirbqwbtGbitbiubivbiwbhhbixbiybizbiAbiBbiCbiDbiEbiFbiGbiGbiHbiIbiJbiGbiGaaaaaaabjaaaaaaaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabjabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjaSNbiKbiLbiMaXdbbFaXfaXgbiNbdoaYJbiObiPbiQbanbiRaYJbiSbiTbiTbiUbiVbiWbiXbiYbiZbjabajbuXbahbjbbgmbgmaSNaEpamhaqFambanybjcaqFbjdbaEbjebjfbdxbjgbjhbjibjjbjkbjlbjmbjnbjobjpbjqbjrbjsbjtbjubjvbjubjvbjubjwbjubjxbjybnbbjAbjBbhMbfqbjCbfubjDbjEbfubftbfubfubfubjFbbibjGbjHbfybjIbjJbbibjKbjLbjMbjNbjObjPbjQbjRbjSbjTbeqberbjUbetbjVbjWbjXbetacFaaaabjaaabjYbjZbkabkbbkcbkdbkebkfbhibmObkhbkibkibkjbkkbklbkmbknbiGbkobkpbkqbkrbksbiGbiGbiGbiGbiGbiGaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabktbkubktbkubktaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaaSNbkvbkwbkxaVRaSMaObaTWbkybkzbkAbkBbkBbkCbkDbkEbkFbkGbkHbkIbkJbkKbkLbkMbkNbkObkPaOgbkQaSNaSNaSNaSNaSNaJzalIbkRaCoaqlambambbjdbaEbkSbkTbkUbkVbkWbkXbkYbkZblablbblcbldbleblfblgblhbljblkbllblmbloblnbncbnebQybQyaYZaBCaCybSBbdUblsbltblublvblwblxblublyblzblAbbeblBblNbnfbnhblFbbebniboDboFbsCbbebxybHGbJsbMnblOabjaaaaaablPbcRblQbcRblRaaaabjabjabjbexblSblTblUbjYblVblWblXblYblZbmabmbbmcbmdbmebklbkmbmfbmgbmhbmhbmibmhbmhbmjbmkbmlbmmbmnbiGabjabjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjabiabiabiabjabiabibmobmpbmqbmqbmqbmrbmsabiabiabjabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabjabjaSNbiKbiKbmtbahbuXbajbakbmubmvbmwbmxbmybmzbmAbmBbmCbmDbmEbmFbmGbmHbmIbmJbmKbmLbmMbmNaOWaOWaOoaOWaOoaOWbRmalIaqlalZaqpbmPaqFaEubaEbmQbkTbmRbkUbmSbmTbmUbmVbaFbmWbmXbmYaYZaYZaYZaYZaYZaYZbmZbmZbmZaZabmZbmZbmZaYZbnabyNbMabMbbndbfqbfqbhUbhVbdUbhXbhUbfqbfqbdUbbebbebbibNBbbibbebbebngbNCbQabngbngbngbngbngbnjbnkabjaaaaaaaaaaaaaaaaaaaaaabjbnlbnmbnnbnobnobnobnobnobnpbnqbnrbnsbntbnubnvbnwbnxbnybnzbnAbnBbnCbnDbnEbnFbnGbnHbnIbnJbnHbnKbnLbmgaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabkubktbktbkubktbkubnMbnNbnObnPbnObnQbnRbkubktbktbktbktbkuaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiabjaSNaSNaSNaSNaSNaSMaOgbnSbnTaUibnUaUibnVbnWaObbnXaYKbnYbnZboabobbocbodboeaOgaOgaOgaOgaOgalIalIalIalIalIalIalIaqFalZarealIaqFaMZbaEbofbkTbkUbogbohboibmUbojbokbolbombonbooboobooboobopboobooboqbooborboobooboobooboobosbotboubovbovbovbovbowbgXbouboxbovbovboybozboybovboAbovboBboCboKboEbQgboGboGboHboIbngabjabjabjaaaaaaaaaaaaaaaaaaaaaabjboJboWboLboMboNboOboPboQboRboSbkfbhiboTboUboVbmdbqJboXboYboZbpabpbbpcbpdbpebpfbpgbphbpibpjbpjbpkbplabjabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbpnbpobpobpobpobpobpobppbpqbvvbpqbpsbpobpobpobpobpobpobptbpuabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjaSNbpvbpwbpxbahbRmbajbpybpzbpAbpBbpCbpDbpEbpFbpGbpHbpIbpJbpKbpLbpMbpNbpObpPbpQbpRbpSbpTbpUbpVbpWbpXbpYbpZbqabqbbqcbqdbqebqfbqgbaEbqhbkTbkUbqibqjbkUbmUbqkbqlbqmbqnbqobqpbqpbqpbqpbqpbqpbqpbqqbqpbqrbqpbqpbqpbqpbqpbqsbqtbqubqubqubqubqubqvdxVbqubqxbqubqubqubqubqubqubqvbqybqzbqAbngbngbngbqBbqCbqCbngbngaaaaaaabjaaabqDbqEbqFbqGbqHaaabqIbnobqLbqKbqMbqNbrubqObqPbqQbqRbqSbqTbqUbqVbqWbqXbqYbqZbrabrbbrcbrdbrebrfbrgbrhbribrjbrkbrlbrmbrnbroaaaabiabjabjaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobrpbrqbrrbrsbrsbrrbrsbrtbrsbUJbrsbrvbrsbrrbrsbrsbrrbrwbrpbmsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabiaaaaSNbrxbpvbryaVRaSMaObbvUbrAbrBbrCbrDbrEbrFaObbrGbrHbrIbrJbrKbmGbrLbrMbrNbrObrPbrQbrRbrSbrTbrUbrVbrWbrWbrWbrWbrXbrWbrWbrWbrYbrZbaEbsabkTbkUbsbbscbkUbmUbqkbsdbqmbsebsfbsgbshbshbshbshbsibshbshbshbsjbshbshbshbshbsibskbslbsmbsnbsobsobsobspbMLbsobsobsobsqbsobsobsobsobsrbssbstbsubsvaaaaaaabjaaaaaaaaaabjaaaaaaabjacFbswbsxbsybszbswbsAbsBbsBbsZbsDbsEbsEbsFbsGbsHbsIbsJbsKbsLbsMbsNbsObsPbsQbsRbsSbsTbsUbrobsVbmhbsWbmhbsXbsYbmkbtabtbbtRbiGabjabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobrpbpuabjabjaaaabjaaabtcbtdbtdbtdbteaaaabjaaaabjalWbpmbrpbmsabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabjabiabiabiabjabiabjabiabjaSNbpvbpvbtfaXdbvBaXfbtgbthaTZbtibtjbtkbtlaOgbtmaYKbrIbtnbtobtpbtqbtrbtsbttbtubtvbtwbtxbtybtzbtAbrWaaaaaaaaaaaaaaaaaaaaabrWaEubaEbmQbkTbkUbtBbtCbmRbmUbtDbgpbSgbtEcqmbsvbsvbtHbtHbtHbsvbtHbtHbtHbsvbtHbtHbtHbtHbsvbtHbtHbtHbsvbtHbtHbtHbtHbsvbtHbtHbtHbsvbtHbtHbtHbsvbsvcoEbSibSVbsvabjbtLbtLbtLbtLbtLbtLbtLaaaabjacFbtMbtNbtObtPbtQbtSbtTbtSbtVbtUbtWbtXbvlbtYbtZbuabubbkfbucbkjbudbuebuebufbugbklbuhbuibiGbujbukbulbumbunbiGbiGbiGbiGbiGbiGaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbpnbpobpobpobpobpobpobppbpqbvvbpqbpsbpobpobpobpobpobpobptbpuabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjaSNbpvbpwbpxbahbuXbajbpybpzbpAbpBbpCbpDbpEbpFbpGbpHbpIbpJbpKbpLbpMbpNbpObpPbpQbpRbpSbpTbpUbpVbpWbpXbpYbpZbqabqbbqcbqdbqebqfbqgbaEbqhbkTbkUbqibqjbkUbmUbqkbqlbqmbqnbqobqpbqpbqpbqpbqpbqpbqpbqqbqpbqrbqpbqpbqpbqpbqpbqsbqtbqubqubqubqubqubqvdxVbqubqxbqubqubqubqubqubqubqvbqybqzbqAbngbngbngbqBbqCbqCbngbngaaaaaaabjaaabqDbqEbqFbqGbqHaaabqIbnobqLbqKbqMbqNbrubqObqPbqQbqRbqSbqTbqUbqVbqWbqXbqYbqZbrabrbbrcbrdbrebrfbrgbrhbribrjbrkbrlbrmbrnbroaaaabiabjabjaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobrpbrqbrrbrsbrsbrrbrsbrtbrsbRGbrsbrvbrsbrrbrsbrsbrrbrwbrpbmsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabiaaaaSNbrxbpvbryaVRaSMaObbvUbrAbrBbrCbrDbrEbrFaObbrGbrHbrIbrJbrKbmGbrLbrMbrNbrObrPbrQbrRbrSbrTbrUbrVbrWbrWbrWbrWbrXbrWbrWbrWbrYbrZbaEbsabkTbkUbsbbscbkUbmUbqkbsdbqmbsebsfbsgbshbshbshbshbsibshbshbshbsjbshbshbshbshbsibskbslbsmbsnbsobsobsobspbMLbsobsobsobsqbsobsobsobsobsrbssbstbsubsvaaaaaaabjaaaaaaaaaabjaaaaaaabjacFbswbsxbsybszbswbsAbsBbsBbsZbsDbsEbsEbsFbsGbsHbsIbsJbsKbsLbsMbsNbsObsPbsQbsRbsSbsTbsUbrobsVbmhbsWbmhbsXbsYbmkbtabtbbtRbiGabjabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobrpbpuabjabjaaaabjaaabtcbtdbtdbtdbteaaaabjaaaabjalWbpmbrpbmsabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabjabiabiabiabjabiabjabiabjaSNbpvbpvbtfaXdbbFaXfbtgbthaTZbtibtjbtkbtlaOgbtmaYKbrIbtnbtobtpbtqbtrbtsbttbtubtvbtwbtxbtybtzbtAbrWaaaaaaaaaaaaaaaaaaaaabrWaEubaEbmQbkTbkUbtBbtCbmRbmUbtDbgpbSgbtEcqmbsvbsvbtHbtHbtHbsvbtHbtHbtHbsvbtHbtHbtHbtHbsvbtHbtHbtHbsvbtHbtHbtHbtHbsvbtHbtHbtHbsvbtHbtHbtHbsvbsvcoEbSibSVbsvabjbtLbtLbtLbtLbtLbtLbtLaaaabjacFbtMbtNbtObtPbtQbtSbtTbtSbtVbtUbtWbtXbvlbtYbtZbuabubbkfbucbkjbudbuebuebufbugbklbuhbuibiGbujbukbulbumbunbiGbiGbiGbiGbiGbiGaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbrpbmsabjabjbtdbtdbtdbtcbtdbtdbtdbtebtdbtdbtdabjabjbmobrpbpuabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaabiaaaabjaaaaaaabjaaaabjaaaabjaaaabiabjaSNaSNaSNaSNaSNaSMaOgbuobupbeIbuqburbusbutaOgbuubuvbuwbuxbuybuzbuAbuBbuCbuDbuEbuFbuGbuHbuIbuJbuKbrWaaabuLbuMbuNbuObuLaaabrWaEubaEbuPbuQbeUbeUbeUbeUbuRbuSbuTbuUbuVbuWbvVbtHaaaaaaaaaabjaaaaaaaaaabjaaaaaaaaaaaaabjaaaaaaaaaabjaaaaaaaaaaaaabjaaaaaaaaaabjaaaaaaaaabtHbtIbuZbvabvbbtHaaabtLbvcbvdbvebvfbvgbtLabjbvhacFbswbvibvjbvkbswbsAbsBbsBbxJbvmbvnbvobvpbvqboJboRbubbkfbhhbvrbvsbvtbvubxNbvwbvtbvxbsUbiGbiGbiHbvybiJbiGbiGaaaabjaaaabjaaaaaaabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbmobrpbmsabjbtdbtdbtdbvzbtcbvAbwFbvCbtebvzbtdbtdbtdabjbmobrpbmsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabiabiabiabiabjabiabiabiaaaabjabjabjabjabjacFbVfacFaOgbvDbvEbvFbvGbvHbvIbvJaOgaOgaOgbvKaOgbvLbvMaOkaOgbvNbvObvPbvQbvRbvSbvTbNSbuKbrXaaabuMbvWbvXbvYbuOaaabrXaOvbaEbvZbwabwabwabwabwabwabwbbaFbuUbuVbuWbxibtHabjabjabjabjabjabjabjabjbwcbwdbwdbwebwfbwgbwhbwibwfbwjbwkbwkbwlabjabjabjabjabjabjabjabjbtHbtIbwmbwnbwobwpbwpbwqbwrbwsbwtbwubwvbtLaaabvhacFbswbwwbwwbwxbswaaaaaabnobnobwybwzbnoboJbnobnoboRbubbwAbhhbhhbhhbwBbhhbhhbhhbwCbwDbwEbhhaaaabjaaaabjaaaaaaaaaabjabjabjabjabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbmobrpbmsabjbtdbtdbtdbvzbtcbvAbwFbvCbtebvzbtdbtdbtdabjbmobrpbmsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabiabiabiabiabjabiabiabiaaaabjabjabjabjabjacFbUbacFaOgbvDbvEbvFbvGbvHbvIbvJaOgaOgaOgbvKaOgbvLbvMaOkaOgbvNbvObvPbvQbvRbvSbvTbNSbuKbrXaaabuMbvWbvXbvYbuOaaabrXaOvbaEbvZbwabwabwabwabwabwabwbbaFbuUbuVbuWbxibtHabjabjabjabjabjabjabjabjbwcbwdbwdbwebwfbwgbwhbwibwfbwjbwkbwkbwlabjabjabjabjabjabjabjabjbtHbtIbwmbwnbwobwpbwpbwqbwrbwsbwtbwubwvbtLaaabvhacFbswbwwbwwbwxbswaaaaaabnobnobwybwzbnoboJbnobnoboRbubbwAbhhbhhbhhbwBbhhbhhbhhbwCbwDbwEbhhaaaabjaaaabjaaaaaaaaaabjabjabjabjabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobwMbmsbtdbtdbtdbwGbwHbwIbwJbwKbwJbwLbwHbwGbtdbtdbtdbmobxMbmsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjabjabjabjabjabjabjabjabjabjabjabjbwNbwNbyjbwNbwPbwPbwQbwRbwPbwSbwTbwUbwPbwVbwWbwXbwPbwYbwZbxaaOgbxbbanaXsaYJbxcbxdbxebxfbxgbrWaaabxhbxjbAjbxkbxhaaabrWaIQbaEbaFbaFbaFbaFbaFbaFbaFbaFbaFbxlbuVbuWbxibtHaaaaaaaaaabjaaaaaaaaaabjaszbxmbxnbxobxpbxqbxrbxsbxtbxubxvbxwaszabjaaaaaaaaaabjaaaaaaaaabtHbtJbuZbtKbxzbxAbxAbxBbxCbxDbxEbxFbxGbtLabjbvhacFbtMbxHbwwbxIbswbsAbsBbsBbzibxKbxLbztbCNbxObnobxPbubbxQbxRbmfbxSbxSbxTbxSbwCbxUbxVbmfbhhaaaabiabjabjabjabjabjabjaaaaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbxWbpubtdbtdbxXbxYbxZbyabybbycbydbyebyfbygbyhbtdbtdbpmbxWbpuabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaabjbwNbwNbwNbwNbwNbwNbwNbwNbwNbwNbwNbwNbyibzMbykbylbymbynbyobypbyqbyrbysbylbytbyubyvbwPbywbyxbyyaOgbyzbyAbyBbyCbyDbyEbyFbyGbyHbrWbxhbxhbuMbyIbuObxhbxhbxhbyJaYRawgaxwaxubyKbyLbyMapratNbtFbyObyPbyQbwfbwfbwfbwfbwfbwfbwfbwfbwgbwebwfbyRbySbyTbyUbyVbyWbyVbyUbyTbyXbyYbwfbyZbwibwfbwfbwfbwfbwfbwfbwfbwfbzabvabzbbtHbtHbzcbwvbwubzdbwubwvbtLaaabvhacFbswbzebwwbwwbzfbtSbtTbtSbtVbzgbHSbCKbzhbzjbzkbzlbzmbnrbznbnBbzobzpbzqbxSbwCbzrbzsbIabhhabjabiaaaabiaaaabjaaaaaaabjabjabiabiabiabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbmobzubmsbtdbzvbzwbzxbzybzzbzzbLPbzzbzAbzBbzCbzDbzvbtdbmobzubmsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjbwNbzEbzEbzEbzEbzFbzGbzHbzIbzJbzKbwNbzLbBsbzLbylbzNbzNbzObzNbzPbzQbzRbylbzSbBmbzTbwPbzUbzVbzWaOgbzXbzYbzZbAabAbbAcbAdbAebAfbrWbAgbAhbAibAjbAibApbAkbxhbAlbAmbAnbAnbAnbAobBWbAnbAnbAnbAnbAqbuVbuWaotbArbAsaotbAtbAubAvaosbAwbAxbAybyUbyUbAzbyUbyUbyWbyUbyUbAAbyUbABbACbADbAEaosbAFbAGbAtaotbAsbAraotbAHbvabvbbtHaaabtLbvcbAIbAJbAKbvcbtLabjbvhacFbswbALbALbALbswbsAbsBbsBbsZbAMbANbANbAObAPbAQbARbASbATbAUbAVbAWbAXbAYbAVbAZbBabBbbBcbhhaaaabjaaaabiabjabiabiabiabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10876,36 +10875,36 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobz aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabjabibpmbzubmsbtdbvzbzwbBfbBebBfbtdbtdbtdbwLbBhbBfbGqbvzbtdbmobzubpuabiabiabjabiaaaaaaaaaaaaaaaabjaaaaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaabiabjabjabjbwNbzEbGBbzEbzEbGrbGsbGubGvbGwbGxbwNbGybIpbGzbGzbGzbGzbGzbGzbGzbGzbylbGAbQpbGCbGDbGEbGFbGGbGHbGIbGIbGJbGKbGMbGLbGNbGObGQbGRbrWbGSbGTbGUbGPbGWbGXbGYbxhayibBVbGVbFnbHabGZbHbbHdbHebHcbHfbHgbvabHibHjbHjbHjbHjbHkbHkbHkbHlbHmbHkbHkbHnbHobHpbHqbHrbHsbHtbHubHvbHwbHnbHxbHybHxbHzbHxbHxbHxbHxbHxbHxbHxbHAbHBbHCbHDbHEbHFbuYbHHbHFbHFbHIbFSbHJbHKbHLbHMbHNbHObHPbFSbHQbHRbFSbMcbHTbHUbGabHVbHWbHXbHYbHZbNmbExbIbbIcbEybNVbIebLYbECbExabjabjabjabiabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabktbkubnMbzubpubtdbtdbzDbIgbIhbBfbIibIjbIkbIlbImbInbIobtdbtdbpmbzubnRbkubktaaaabiabjabjabjabjabjabjabjabjabjabjabjabjabjaaaaaaabjaaaaaaabjaaaabjaaaabiabjbwNbwNbwNbwNbwNbwNbwNbwNbwNbwNbwNbwNbLXbwTbGzbIqbIrbIsbItbIubIvbIwbKibKjbIzbEWbIAbEXbIBbICbHhbIEbIFbIGbIDbIHbIIbIKbILbIMbFhbrWbINbDFbIJbIPbIObBTbIRbxhapUbBVbIQbFnbFobHbbISbFobIUbITbIVcusbvabIXbHjbIYbIZbJabJbbJcbJdbJebJfbJgbHjbJhbJhbJhbJhbJhbJibJhbJhbJhbJhbJhbHxbJjbJkbJlbJmbJnbJobJpbJqbJrbHxbuZbvabvbbngbngbngbxxbngbqCbqCbJtbJubJvbJwbJxbJybJxbJzbJAbJBbJCbJDbFSbJEbJFbHUbGabJGbJHbJIbEubJJbJKbExbJLbJMbGpbJNbJNbJNbJNbJNbJNbJNabjabjabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobJObJPbJPbJQbmsbtdbzvbJRbBfbJSbJTbJTbJUbJVbJTbJWbBfbzwbzvbtdbmobJXbJPbJPbJYbnRbkuaaaaaaabjaaaaaaabjaaaaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaZabiabjabiabjabjabjabjabjabjabjabjabjbwPbJZbylbKabKbbKcbGzbKdbKebKfbKfbKgbKhbKkbKCbLWbKlbKmbKnbKobKpbKqbEWbIAbKrbKsbKtbIWbKvbKwbKxbIMbFhbrWbKybDFbKubIPbKzbBTbKBbxhapUbBVbKAbFnbFobKDbFobFobFqbFrbDQbDRbvabIXbKEbKFbKGbKHbKIbKJbKKbKLbKMbKNbKObJhbKPbKQbKRbKSbKTbKUbKVbKQbKWbJhbKXbKYbKZbLabLbbLcbLdbLebLfbLgbHxbuZbvabvbbLhbLibLjbLkbLlbLmbLnbLnbFSbLobLpbLqbLrbLsbLtbLubLvbLwbLxbFSbLybJFbLzbLAbLBbCSbLBbLCbubbLDbJLbLEbLFbLGbJNbLHbLIbLJbLKbLLbJNabjabiabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbzubLMbrrbrsaaabtdbtdbtdbwGbLNbLObNLbCUbwLbBfbLQbwGbtdbtdbtdaaabrsbLRbLSbLTbLUbLVbVsbVsbVsbVsbVsbVsbVsbVsbVsbXFabjabjabjabjabjabjabjabjabjabjabjaaaabiabiabjabiabiabjabiabjbXGbYabPDbPEbPFbMdbMebMfbGzbMgbMhbMibMjbMkbMlbMmbIxbNTbMobMpbMqbMrbMsbMtbMubMvbMwbMxbMybMzbMAbMBbILbIMbFhbrWbMCbDFbMDbIPbBRbBTbMEbxhbMFbBVbLZbMHbMIbMJbIUbMIbMKbMGbDQbDRbvabIXbKEbMMbMNbMObMPbMQbMRbMSbMTbMUbMVbJhbMWbMXbMXbMYbMZbMYbMXbMXbNabJhbNbbKYbLbbNcbNdbNebNfbNgbLfbNhbHxbuZbvabvbbLhbNibNjbNkbNlbTdbLnbNnbNobLpbNpbNqbNrbNsbNtbNubFSbNvbNwbFSbJEbNxbHUbGabNybNzbGdbNAbNHbLDbNIbNDbNEbNFbNGbLHbNJbPybPAbNKbJNabjabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbmobRubmsbNMbNMbNMbNMbNMbNMbNMbNNbNMbNObNPbNQbNMbNRbNMbNMbNMbNMbNMbNMbNMbmobRvbLMbrraaaaaaabjaaaaaaabjaaaaaaaaabYlaaaaaaabjaaaaaaabjaaaaaaabjaaaabjaaaabjaaaabjaaaaaaabjaaaaaabYmabjbRwbVtbVzbNWbNXbNYbGzbNZbOabObbOcbOdbOebOfbGzbGzbGzbGzbGzbGzbOgbNUbOibylbOhbMxbOkbOlbOmbMBbOnbOobOpbrWbOqbOjbOrbOsbOtbOubOwbxhbOvbBVbOxbOybOzbOAbOBbFrbPYbPZbOCbODbvabIXbKEbOEbKGbOFbOGbOHbOIbOJbOKbOLbOMbONbOObOPbMXbMYbOQbMYbMXbORbOSbOTbOUbOVbOWbOXbOYbOZbLcbPabLcbPbbHxbuZbvabPcbLhbPdbPebPfbPgbPhbLnbPibPjbPkbPlbPmbPnbPobPpbPqbFSbPrbPsbFSbJEbJFbHUbGabHVblXbPtbHYbHZbLDbJLbPubPvbPwbPxbLHbQnbPzbQobPBbJNabjabiabjabiaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbzubPCbNMbPGbPHbPObPPbPQbNMbPIbPJbSobPLbPMbPJbPIbNMbPNbQCbQDbRtbPNbNMbPRbzubPCbkubkubkubPSbPTbPUbPVbPWbPXabjbYJbVsbVsbVsbVsbVsbZfbZfbZfbZfbZfbZfbZfbZfbZfbZfbZfbZfbZfbZfbZfbZwabjbwPbwPbwPbQbbQcbQdbGzbQebQfbUqbQhbMkbMlbQibQjbQkbQlbQmbVrbGzbQqbQAbRSbQrbQsbKsbQtbQubQvbMBbILbIMbQwbrWbrWbrWbQxbUrbrWbrWbrWbxhbUtbBVbCebDQbDQbSebIVbDQbDQbOCbQBbSgbSibSzbHjbQEbQFbQGbKNbQHbQIbQJbKMbHjbHjbJhbQKbMYbMXbQLbQMbQLbMXbMYbQNbJhbHxbHxbQObQPbQQbQRbQSbHxbQTbQUbHxcoEbSibSVbQVbLhbQWbQXbQYbLhbLnbLnbLnbFSbFSbQZbRabRbbRcbFSbFSbFSbFSbFSbRdbJFbHUbGabRebRfbRgbRhbRibRjbExbRkbRlbWhbJNbRnbQnbRobQobRpbJNbWCabiabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobRrbRsbNMbRxbSrbTcbUDbXmbNMbRybRzbRAbRBbRCbRDbREbRFbVjbRHbRHbRIbREbRFbRJbRKbRLbRLbRLbRLbRMbRNbROabjbRPbRQbRRabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjabjabjchwbRTbNXbRUbNYbGzbRVbOabRWbRXbRYbRZbSabSbbScbSdbScbTVbSfbTWbShbTXbSjbSkbSlbSmbSnbXEbMBbILbSpbSqbVCbStbStbSubSvbStbStbSsbSwbSxbSybTYbStbStbTZbUabSAbStbSsbXybyObSCbSDbSEbSEbSEbSEbSEbSEbSFbSEbSGbSEaaabJhbSHbSIbMXbSJbSKbSLbMXbSMbSNbJhaaabHxbSObSPbSQbSRbSSbSTbSTbSTbSTbwmbwnbSUbXCbSWbSXbSYbSZbTabTbbQzbXDbTbbTbbTebTfbTbbTgbThbThbTibTbbQzbTjbTkbTlbLAbLBbLBbLBbTmbubbLDbExbTnbNEbTobNGbTpbQnbTqbQobTrbJNabjabjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbRrbTsbTtbTubTvbTwbTxbTybTzbTAbTBbTCbTDbTEbTFbTGbTHbTIbTJbTKbTLbTGbTMbTNbTObTPbTQbTRbTSbTTbTUcjlcnHcnHcoicsrcsyctIctIcsyctIctIcsyctIctIcsyctIctIcsyctIctIcsyctIctIcsyctIctIctIctIctJctYbUcbUdbUebUfbGzbUgbUhbUibUjbUkbUlbUmbUnbUobUpbUobWIbGzbWKbUsbWNbUubUvbUwbUxbUybUzbMBbUAbUBbUCcjAbUEbUEbUFbUGbUEbUEbUEbUHbUEbUFbWObUEbUEbUEbUEbUIbUEbUEbYBbUKbULbUMbUNbUObSEbUPbUQbURbUSbUTbUUbSEabjbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhabjbHxbUVbUWbUXbUYbUZbSTbVabVbbSTbVcbVdbVebYLbVgbVgbVgbVhbVgbVibVBbVgbVgbVgbVkbVlbVgbVmbVnbVobVgbVgbVBbVhbVpbVqbWebWrbWsbWebVubVvbVwbVxbVycsMbVAbXbbXobXqbVEbXrbVGbJNaaaabiabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbmobLTbVHbVIbVJbVKbVLbVMbVNbVIbVObVPbVQbVRbVSbVPbVTbVIbVUbVKbVMbVMbVTbVIbVVbVWbpqbpqbpqbpqbVXbVYbVZabjbWabWbbWcabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjabjbWdczwbWfbWgcgDbWibGzbWjbWkbWlbWmbWnbIqbGzbOfbWobWpbWqbOfbGzbYocbRcfBbWtbWubWvbWwbWxbWybMBbWzbWAbWBcpPbWDbWEbWFbWGbWDbWDbWEbWHbWDbWFcgCbWDbWDbWDbWJbWDbWDbWDchbbWLbvabWMcgEcgFbWPbWQbWRbWSbWTbWUbWVbSEaaaaaaabjaaaaaaaaaabjaaaaaaaaaabjaaaaaabHxbHxbWWbHxbWXbHxbSTbWYbWZbSTbuZbvabXaciAbXcbXdbXcbXebXcbXfbVDbXcbXcbXcbXhbXebXibXjbXkbXlbXkcazbVDbXnbXBbXpbGabXVbXWbXsbEublWbXtbXubXvbXwbXxbXXbXzbXzbXAbYCbNKbJNaaaabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbzubLMbrrbrsaaabtdbtdbtdbwGbLNbLObNLbCUbwLbBfbLQbwGbtdbtdbtdaaabrsbLRbLSbLTbLUbLVbUJbUJbUJbUJbUJbUJbUJbUJbUJbVfabjabjabjabjabjabjabjabjabjabjabjaaaabiabiabjabiabiabjabiabjbVsbXFbPDbPEbPFbMdbMebMfbGzbMgbMhbMibMjbMkbMlbMmbIxbNTbMobMpbMqbMrbMsbMtbMubMvbMwbMxbMybMzbMAbMBbILbIMbFhbrWbMCbDFbMDbIPbBRbBTbMEbxhbMFbBVbLZbMHbMIbMJbIUbMIbMKbMGbDQbDRbvabIXbKEbMMbMNbMObMPbMQbMRbMSbMTbMUbMVbJhbMWbMXbMXbMYbMZbMYbMXbMXbNabJhbNbbKYbLbbNcbNdbNebNfbNgbLfbNhbHxbuZbvabvbbLhbNibNjbNkbNlbTdbLnbNnbNobLpbNpbNqbNrbNsbNtbNubFSbNvbNwbFSbJEbNxbHUbGabNybNzbGdbNAbNHbLDbNIbNDbNEbNFbNGbLHbNJbPybPAbNKbJNabjabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbmobRubmsbNMbNMbNMbNMbNMbNMbNMbNNbNMbNObNPbNQbNMbNRbNMbNMbNMbNMbNMbNMbNMbmobRvbLMbrraaaaaaabjaaaaaaabjaaaaaaaaabXGaaaaaaabjaaaaaaabjaaaaaaabjaaaabjaaaabjaaaabjaaaaaaabjaaaaaabYaabjbRwbVtbVzbNWbNXbNYbGzbNZbOabObbOcbOdbOebOfbGzbGzbGzbGzbGzbGzbOgbNUbOibylbOhbMxbOkbOlbOmbMBbOnbOobOpbrWbOqbOjbOrbOsbOtbOubOwbxhbOvbBVbOxbOybOzbOAbOBbFrbPYbPZbOCbODbvabIXbKEbOEbKGbOFbOGbOHbOIbOJbOKbOLbOMbONbOObOPbMXbMYbOQbMYbMXbORbOSbOTbOUbOVbOWbOXbOYbOZbLcbPabLcbPbbHxbuZbvabPcbLhbPdbPebPfbPgbPhbLnbPibPjbPkbPlbPmbPnbPobPpbPqbFSbPrbPsbFSbJEbJFbHUbGabHVblXbPtbHYbHZbLDbJLbPubPvbPwbPxbLHbQnbPzbQobPBbJNabjabiabjabiaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbzubPCbNMbPGbPHbPObPPbPQbNMbPIbPJbSobPLbPMbPJbPIbNMbPNbQCbQDbRtbPNbNMbPRbzubPCbkubkubkubPSbPTbPUbPVbPWbPXabjbYlbUJbUJbUJbUJbUJbYmbYmbYmbYmbYmbYmbYmbYmbYmbYmbYmbYmbYmbYmbYmbYJabjbwPbwPbwPbQbbQcbQdbGzbQebQfbUqbQhbMkbMlbQibQjbQkbQlbQmbVrbGzbQqbQAbRSbQrbQsbKsbQtbQubQvbMBbILbIMbQwbrWbrWbrWbQxbUrbrWbrWbrWbxhbUtbBVbCebDQbDQbSebIVbDQbDQbOCbQBbSgbSibSzbHjbQEbQFbQGbKNbQHbQIbQJbKMbHjbHjbJhbQKbMYbMXbQLbQMbQLbMXbMYbQNbJhbHxbHxbQObQPbQQbQRbQSbHxbQTbQUbHxcoEbSibSVbQVbLhbQWbQXbQYbLhbLnbLnbLnbFSbFSbQZbRabRbbRcbFSbFSbFSbFSbFSbRdbJFbHUbGabRebRfbRgbRhbRibRjbExbRkbRlbWhbJNbRnbQnbRobQobRpbJNbWCabiabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobRrbRsbNMbRxbSrbTcbUDbXmbNMbRybRzbRAbRBbRCbRDbREbRFbVjbRHbRHbRIbREbRFbRJbRKbRLbRLbRLbRLbRMbRNbROabjbRPbRQbRRabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjabjabjbZfbRTbNXbRUbNYbGzbRVbOabRWbRXbRYbRZbSabSbbScbSdbScbTVbSfbTWbShbTXbSjbSkbSlbSmbSnbXEbMBbILbSpbSqbVCbStbStbSubSvbStbStbSsbSwbSxbSybTYbStbStbTZbUabSAbStbSsbXybyObSCbSDbSEbSEbSEbSEbSEbSEbSFbSEbSGbSEaaabJhbSHbSIbMXbSJbSKbSLbMXbSMbSNbJhaaabHxbSObSPbSQbSRbSSbSTbSTbSTbSTbwmbwnbSUbXCbSWbSXbSYbSZbTabTbbQzbXDbTbbTbbTebTfbTbbTgbThbThbTibTbbQzbTjbTkbTlbLAbLBbLBbLBbTmbubbLDbExbTnbNEbTobNGbTpbQnbTqbQobTrbJNabjabjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbRrbTsbTtbTubTvbTwbTxbTybTzbTAbTBbTCbTDbTEbTFbTGbTHbTIbTJbTKbTLbTGbTMbTNbTObTPbTQbTRbTSbTTbTUbZwchwchwcjlcnHcoicsrcsrcoicsrcsrcoicsrcsrcoicsrcsrcoicsrcsrcoicsrcsrcoicsrcsrcsrcsrcsyctIbUcbUdbUebUfbGzbUgbUhbUibUjbUkbUlbUmbUnbUobUpbUobWIbGzbWKbUsbWNbUubUvbUwbUxbUybUzbMBbUAbUBbUCcjAbUEbUEbUFbUGbUEbUEbUEbUHbUEbUFbWObUEbUEbUEbUEbUIbUEbUEbYBbUKbULbUMbUNbUObSEbUPbUQbURbUSbUTbUUbSEabjbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhabjbHxbUVbUWbUXbUYbUZbSTbVabVbbSTbVcbVdbVebYLbVgbVgbVgbVhbVgbVibVBbVgbVgbVgbVkbVlbVgbVmbVnbVobVgbVgbVBbVhbVpbVqbWebWrbWsbWebVubVvbVwbVxbVycsMbVAbXbbXobXqbVEbXrbVGbJNaaaabiabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbmobLTbVHbVIbVJbVKbVLbVMbVNbVIbVObVPbVQbVRbVSbVPbVTbVIbVUbVKbVMbVMbVTbVIbVVbVWbpqbpqbpqbpqbVXbVYbVZabjbWabWbbWcabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjabjbWdctJbWfbWgcgDbWibGzbWjbWkbWlbWmbWnbIqbGzbOfbWobWpbWqbOfbGzbYocbRcfBbWtbWubWvbWwbWxbWybMBbWzbWAbWBcpPbWDbWEbWFbWGbWDbWDbWEbWHbWDbWFcgCbWDbWDbWDbWJbWDbWDbWDchbbWLbvabWMcgEcgFbWPbWQbWRbWSbWTbWUbWVbSEaaaaaaabjaaaaaaaaaabjaaaaaaaaaabjaaaaaabHxbHxbWWbHxbWXbHxbSTbWYbWZbSTbuZbvabXaciAbXcbXdbXcbXebXcbXfbVDbXcbXcbXcbXhbXebXibXjbXkbXlbXkcazbVDbXnbXBbXpbGabXVbXWbXsbEublWbXtbXubXvbXwbXxbXXbXzbXzbXAbYCbNKbJNaaaabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbzubrqbNMccxcgIchuchEcmxbNMbPIbXHbXIbXJbPMbXKbXLbNMbPNbXMbXNbXObXPbNMbrwbzubrqbrrbrrbrrbPSbXQbXRbPVbXSbXTabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjaaaabjabjbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXYbYccxEcxEcxFbQrbXZciabYbbQrclobMBbMBbYdbMBbMBbYebYfbYgbYhbYhbYibYhbYjbYjbYkcqHcrsbYkbYjbYjbYjbYjbYjbYjbYjbYjbYjbYnbuZbvabWMbtHcnWbYpbYqbYrbYsbYtbWUbYubSEbYvbYvbYvbYvbYvbYwbYwbYwbYxbYxbYxbYxbYxbSTbYybYzbYAcbzcfabYDbYEbYFbSTbuZbvabuWbYGbYHbYIbZibYKbYHbYHbYHbYHbYHbYHbVFbYHbYMbYMbYNbYObYNbYMbYMbYPbYQbYRbYSbYTbYUbYSbYVbnqbYWbYXbYYbYZbZabZbbZcbZdbZecaPbZgbJNabjabiabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobzubmsbNMbNMbNMbNMbNMbNMbNMbNMbNMbNObZhbNQbNMbNMbNMbNMbNMbNMbNMbNMbNMbmobzubmsabiaaaaaaabjaaaaaaabjaaaaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaaaaaaaabjabjbXUbXUbXUbXUbZjbZjbZkbZlbZmbXUbXUbXUbZnbZlbZobZlcbcbXUbZpbZqbZrbZsbZtbZubZvbZvcbubZxbZybZzbZAbZBbZCbZDbZDbZEbXUbYhbZFbYhbYhbZGbZHbZIbYjbZJbZKbZLbZMbZNbZObYjbZPbZQbZRbYjbZSbZQbZRbYjbZTbZUbZVbtHcnWbZWbZXbWRbZYbZZbWUcaabSEcabcaccadcaebYvcafcagcahbYxcaicajcakcalbSTcamcancaocapcaqcarcascatbSTbwmbZUcaubYHcavcawcaxcayccObYKcaAcaBcaCcaDcaEcaFbYMcaGcaHcaIcaJcaKcaLbhfcaMbhfbLAbLBbLBbLBcaNcaOcgebExbJLcaQbGpbJNbJNcaRcaSbJNbJNbJNaaaabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbzubnRbktbktbktbkuaaabJhcaTcaUcaVcaWcaXcaYcaVcaZcaTbJhaaabkubktbktbkubnMbzubpuabiabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabiaaacbabXUcbacbbcbbcbbcbdcbbcbebZlbZlbZlcdbcbbcbdcbbcbfcbgcbhcbicbjcbkcblcbmcbncbocbncbpcbqcbrcbscbtcfgcbvcbwcbxbXUcbycdgcbAcbBcbCcbDcbEbYjcbFcbGbZLcbHcbIcbJbYjcbKcbLcbMbYjcbNcbOcbMbYjbuZbvacbPcbQcpfbYpcbSbYrbYscbTcbUcbVbSEcbWcbXcbYcbZbYvccaccbcccbYxccdcceccfccgbSTcchcciccjcckcclccmccnccobSTbuZbvabuWbYHccpcawccqccqccqbYKccrccscctccuccvccwbXgccycczccAccBccCcaLccDccEccFbLAccGccHbhfccIccJbGgccKccLccMccNcggccPccPccQccRccSbLAaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbmobJXbJPbJPbJPbJPbJYbpubJhccTbMYccUccVccWccXccYbMYccZbJhbpmbJObJPbJPbJPbJPbJQbmsabiaaaaaaabjaaaaaaabjaaaaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaaaaaaaabiabjcbabXUcbaabjcdccxGcxGcxGcxGcFLcbbdtIcxGcxGcxGcxGcgBbXUbXUcddbXUcdecdfcdhcdhcdhcdjcdicdkcdlcdmceTcdncdocdpcdqbXUcdrcdscdtcducdvbZHcdwbYjcdxcdycdzbZMcdAcdBbYjbYjcdCbYjbYjbYjcdCbYjbYjbuZbvabWMbtHcnWcdDcdEbWRbZYcdFcdGcdHbSEcdIcdJcdKcdLbYvcdMcdNcdObYxcdPcdQcdRcdSbSTcdTcdUcdVcdWcdXcdYcdZceabSTbuZbvabuWbYHcebceccedceeccqbYKcefcegcehceicejcekcelcemcenceocepceqcaLcercescetbGdceucevcewcexceycezceAceBceCceDceEceFceEceGceHbHWceIabjabjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabrsbrrbrsbrrbLSbzubmsceJceKceLceMceNceOcePceQceLceRceSbmobzubLMbrrbrsbrrbrsaaaabjaaaaaaabjaaaaaaabjaaaaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjabjabiaaacbabXUcbaaaaaaaabjaaaabjaaaacFabjacFaaaabjaaaabjaaacdcbXUceUceVceWceXceYceYceZcfccfbcfecfdceYcgHcffciXcfhcficfjcfkcflcfmcfncfobZHcfpbYjcfqcfrbZLbZMcfscftcfucfvcfwcfxcfycfzcfwcfAbYkbuZbvabWMctEcnWbYpcfCcfDbYsbYtbWUcfEbSEcfFcfGcfHcfIbYvcfJcfKcfLbYxcfMcfNcfOcfPbSTbSTbSTbSTcfQcfRbSTbSTbSTbSTbuZbvacfSbYHcayceccedcedcedcfTcfUcfVcfWcfXcfYcfZbYMcgacgbcgccgdcgScaLcgfchKcghcgicgjcgkbRgcglcgmbRjbLAcgncgocgpcgqcgrcgscgrcgoccSbLAaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabjabiabibmobzubmscgtcaUcgucgvcgwcgxcgycgzcgAcaUcgtbmobzubmsabiabiabiabjabiabiaaaaaaabjaaaaaaabjaaaaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabiaaaabjabjbXUbXUbXUcmCcBUcHtcHtcJecHtcHtcJecHtcHtcJecHtcHtcKjabjcgGcibciccidcgJcigcihcgMcfccgNcfecgOcgPcikbXUbXUbXUbXUbXUcbCcgRctScgTcEFctTcgVbYjcgWcgXbZLcbHcgYcgYcgYcgYcgZcgYcgYcgYcgZchactUchcbEpbSDchdchebSEchfchgchhchibWUchjbSEchkcfGchlchmbYvchnchochpbYxchqchrcfOchschtcgQcgQchvcsLchxchychzchAchtbuZbvachBcfTchCchDcaxcaxcaxcgKchFcgLchHchIcttctVbYMchLchMchNchOchPcaLbLAbLAbLAbLAbLAbLAbLAbGachQchRbLAbLAbLAbLAbLAbJIbLAbJIbLAbLAbLAaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmchSbpubJhchTchUchVccUchWccUchXchYchZbJhbpmchSbpuabiaaaaaaabjaaaabjabjabiabiabiabjabiabiabiabiabjabiabiabiabiabjabiabiabiabiabiabjabiaaaabiaaaciebXUcieaaacKlcjHcjIcjJcjIcjIcjJcjIcjIcjJcjIcjIcjKcifcgGcibcjLcjMciicbncbncijcfccfbcjNcilcimcjObXUcincbAcipciqcdvcirciscdtcbCcbDcitbYjcgXciucivciwcixciycixcixcixcixcixcixcixcizctWbWLbvabHibSEbSEbSEciBciCciDbZZbWUciEbSEciFciGciHciIciJciKciLciMciNciOciPciQciRchtcgQcgQciSciSciTciUciSciSchtciVbwnciWcuiciYciZcjacjbcjacjccjdcjecjfcjgcjhcjibYMbYMbYMcjjcjkbYMbYMcHucjmcjncjocjpcjqcjrcjscjtcjucjvcjwcjxcjycjzcjBcjzckEcjraaaaaaaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobrpbmsbJhbJhcjCcjDbMYcjEbMYcjFcjGbJhbJhbmobrpbmsabjaaaaaaabjaaaabjaaaabjaaaabjaaaaaaabjaaaabjaaaabjaaaaaaabjaaaabjaaaaaaabjaaaaaaabiabjabiabjciebXUcieaaacKlclpcnZabjabjcoaaaaacFabjabjcqNcifcobcdacgGcibcjPcjQcjRcjScjTcjUcfccgNcfecltcmMcmNbXUcjVciocjWcjXcjZckackbckbckcckdckeckfckgckgckhckickjckjckjckjckjckjckjckjckkcklbYkbuZbvackmbSEcknckociBckpckqckrbWUcksbSEbYvcktbYvckubYvciKciLckvbYxckwbYxckxbYxchtckyckzckAckBckCcjYckDckFckGckHckIckJbYKcaxcawckKckLccqbYKckMckNckOckPckQchJbYHckRckSckTckUckVckWckXckWckWckYckWckZclaclbclccldcleclfclfclgclgclhcliclfcljabjabjabjabjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmocujbmsabjbJhbJhclkcllclmcaUclnbJhbJhabjbmocvSbmsabiabjabjabjabjabiabiabiabiabiabiabjabiabiabiabiabiabjabiabiabiabiabjabiabiabjabjabiaaaabiaaaciebXUcieaaacNncuOabjaaaaaaacFabjacFaaaaaaabjaaacobcgGcgGcgGclqclrclsbXUbXUcmPcfccfbcfecluclvclvclvclvclvclwclvclvclvclvclvclvclxclyclzclAclAclBbZMclCclCckjclCclCclDclEclFclGclHbYjbuZbvabIXbSEclIclJclKclLclMclNclOclPbSEaaaabjbHjclQclRclSclTclRclUclVbHjabjaaachtclWclXclYclZcmacmbcmccmdchtbuZbvacmebYHcmfcawccqcmgccqbYKcmhcmicmjcmkcmlcmmbYHcmncmocmpcmqcmrcmrcmscmrcmscmtcmucmvcmwcmycmzcmFcmAcmBcutcmDcmEcmHcmGcnFcmIaaaabjaaaabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbrpbpuabjabjbJhcmJbJhcgtbJhcmKbJhabjabjbpmbrpbpuabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjabjbXUbXUbXUcmLcKlclpabjaaaacFacFacFacFacFaaaabjaaacobcgGcmQcmRcmScmTcmUcmWbXUcmOcfccgNcoccohcmVczHcopcmYcmZcnacIPcnccndcnecnfclwbZHcngbYjcnhcnicnjbZMckjckjckjckjckjcnkcnlcnmcnlcnnbYjbuZbvabIXbSEcnocnpciBbUTcnqcnrcnscntbSEaaaabjbHjcnucnvcnwcnxcnvcnvcnybHjabjaaachtcmXcnzcnAcnBcnCcnDcnEcnGchtbuZbvabuWbYHcvucawcaxcnIccqbYKcnJcnKcnLcnMcnMcnNbYHchGcnPcnPcnPcnPcnPcnPcnPcnPcnPcnQcnRcjrcnScnTcjrcjrcjrcjrcjrcjrcmIcnUcjrcmIaaaabiaaaabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobrpbPCbkubktbktcnVbktcNZbktcnXbktbktbkucnYbrpbmsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaciebXUcieaaacKlclpcuQacFacFcwtcjIcqOacFacFacFacFcobcgGcpicodcoecofcogcpkcppcojcokcfbcolcomconcoocqPcoscorcotcnbcndcoucphcovclvbZHcirbYjcowclCbZLbZMclCclCckjclCclCcoxcnlcnlcoycozbYjcoEbSibSzbSEbSEbSEbSEbSEcoAbSEcoBbSGbSEbHjcoCbHjcoDckvciKciLckvckvcoDbHjcoCbHjchtchtcoqchtcoFcoGchtcoHchtchtcoEbSicqmbYHcoIcawcaxcoJcoKbYHcoLcoMcoNcoOcoMcoPbYHcoQcoRcoRcoRcnPcoScoScoTcoTcnPcoUcoVcjncqicoXcoYboHcoZcpabngaaaabjaaaabjaaaaaaabjaaaabjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbpmcpbbpobpobpobpocpcbmqbmqbmqcpdbpobpobpobpocpebmsabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaabiabjabiabjciebXUcieaaacOmcuOaaaabjacFclpcpgcqQacFabjaaaaaacuPcpjcrdcplcpmcpncpocsmcpqcprcpscptcpucpvcpwcpxcpycpzcpzcpAcpzcpycpBcpCcpDcpEcpFcpGbYjcpHckjcivcpIcpJcpJcpJcpJcpKcpLcnlcnlcnlcpMbYjbuZcpNcpOcxOcpQcpQcpQcpQcpRcpQcpScpTcpUcpVcpWcpXcpYcpZcqacqbcqccqccqdcqecqfcqgcqccqccqhcqjcqkcqlcrecqccqccrQcqncqocqpbYHcqqcecchCcqrchCcqschCcqtcqtcqtcqtcqubYHcqvcqwcqwcqwcqxcqycqzcqAcqBcnPcqCcqDcqEcqEcqFcqGbHFcsbcqIcqJaaaabjaaaabjaaaaaaabjaaaabjaaaabjaaaaaaabjabjaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabrsbrrbrsbrrbLScqKcqLbnPcqLcqMbLMbrrbrsbrrbrsaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabiaaaciebXUcieaaacKlclpacFacFacFcwvdvUcwuacFacFczicifcobcgGcpicqRcqScqTcqUcsncppcqWcqXcqYcqVcqZcracrbcsocrfcrgcrgcnbcnbcnbcrhcswclvcricrjbYjclCclCbZLbZMclCclCcrkclCclCcrlcrmcrncrocrpbYjbwmcrqcrrcBgcrtcrtcrucrtcrvcrwcrxcrycrzcrtcrAcrBcrCcrDcrEcrFcrGcrHcrIcrJcrKcrLcrLcrMcrNcrLcrOcrPcrLcrLcrLcsXcrRcrScrTbYHbYHbYIbZicrUbYHbYHbYHbYHbYHbYHbYHbYHbYHcrVcrWcrWcrXcrWcrYcrWcrZcsacscctccoVbqCcsdcsecsfboHcsgcshbngabjcsicsicsjcsjcsjcsjcsjcsjcsjcsjcsjcsjcsiabjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabjabibpmcskbpqbpqbpqcslbpuabiabiabiabjabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabjabjbXUbXUbXUcmLcKlclpabjaaaacFacFacFacFacFaaaabjaaacobcgGcspcsqcsqcDGcsucsvbXUctFcfccgNcrccsscmVcstcuRcINcrgcsxcszcsAcuTcsBcsCclvcsDcsEbYjbYjbYkcsFcsGbYkbYjcsHbYjbYjbYjbYjcsIcsHcsJbYjbuZbvabqAcsKcsKcsKctXcsKcsKcsKcupcsKcsKcsKcsNbHjcsOcsPcsQcsRcsScsTcsUbHjcsNcsVcsVcsWcsYcsVcsVcsVcsZctactkcsVbuUbvactbcBhctdctectfctgcthcthcnOcthcthctjcthcthcwactlctmctnctoctpctqctrctscoWcnPctuctvbqBcjnbngbqCbngbngbngbngcqJcsictwctxctxctyctzctActBctBctBctCctDcsjabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabrrbrsbrrbrsbrraaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaciebXUcieaaacPKcuOabjaaaaaaacFabjacFaaaaaaabjaaacobcgGcgGcgGclqclrclsbXUbXUcuWcfccfbctGbXUclvclvclvclvclvclvclvclvclvclvclvclvbZHcirbYjbZOctHbZLbZMctOctNctKctLbYjctMctNctOctHctPbYjbuZbvactQcsKctRcBicvvcvwcvxcvwcvycvzcDscsKabjctZcuacubcuccudcuecufcugcuhabjcsVcukculcumcuXcvJcsVcsVcsVcsVcsVcunbvacuocCYcuqcuqcurcuscuqcuqcticuqcuqcuucuqcuvcuwcuxcrWcrWcuycuzcuAcuBcuCcuDcnPcuEcuFckVckWcuGcuHcuHckXckWcuHcLmcuIcuKcuLcuMcuMcuMcuMcuMcuMctBctCcuNcsjabjaaaabjaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabjabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjciebXUcieaaacKlclpdExabjabjacFaaadQCabjabjdQDcifcobcdacgGcibciccuUcuScxLcjTczjcfccgNcuVclvcwycuYcuZcvacwBclvcvbcvccvdcvccvccvecvfcvgbYjcvhcrncvicvjcvkcvlcvmcvnbYjcvocvpcvqbZNcvrbYjcvsbvabqAcsKcvtcvAcwScwTcwUcwWcwXcxQcvBcvCabjcsNcvDcvEcvEcvFcvGcvGcvHcsNabjcvIcvKcvLcvMcvNcvYcvOcvPcvQcvRcsVbqmbwnbsfddkbshbshcvTcvUbshbshdWObsobsocvWbsocvXcJccvZcxdcwbcwccwccwccwdcwecwfcnPcwgcmscwhcwhcwicwjcmqcmrcmrcmscwkcwlcwmcwncwocwpcwpcwpcwqcwocwrctCcwscsjabjabjabjabjabjabjabjabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaciebXUcieaaacKldQEdvUdUEdvUdvUdUEdvUdvUdUEdvUdvUdUFcifcgGcibcjLcjMcwwcbncbncijcfccfbcrccwxcxHcwzcwAcwzcxIclvcdwbYhbYhbYhcfnbYhcwCcwDbYjcwEcwFcwGcwHcwIcwJcwKcwLbYjcwMcwNcwOcwPcbKbYjbuZbvacwQcsKcwRcyecyfcyqcwVczIcyfcBfcwYcsKcwZcxacxbcwZcxacxacxacwZcxccxacwZcsVcxecxgcxfcxhcxJcxicxjcxkcxlcsVcxmbvabuWcxncxncxncxncxncxncxocxncxncxncxncxncxncxncxpcrWcxqcxrcxscxtcxucxvcxwcnPaFxaFxaFxaFxaFxaFxaFxaFxaFxaFxaFxaFxctxcxxcxycxzcxAcxAcxBcxCcxDcsjcsjcsicsjcsjcsjcsjcsjcsicsjcsjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabjabjbXUbXUbXUcJdcPXcHtcHtcPYcHtcHtcPYcHtcHtcPYcHtcHtdbAabjcgGcibcjPcidcgJczpczrcgMcfccgNcABcxKcAAcxMcxNcpycxRclvcdwcxPcxScxTcznczocxUcsEbYjcxVcxWcxXcxYcxZctOcyacybbYjbYjcycbYjbYjbYjbYjbuZbvabqAcsKcydcyecyfcyqcBjczIcyfcBkcygcsKcyhcyicyjcykcylcymcyncykcyocyicypcsVcyrcytcyscyucyIcyvcywcyxcyycsVcyzbvacyAcxncyBcyCcyDcyEcyFcyGcyHczUczUczUcyJcyFcyEcyKcyLcyMcyNcyOcyPcyQcyRcyScnPcyTcyUcyVaFxaKhcyWcyXaFxcyYcyZczaaFxczbczcctCczdczeczeczfczgczhcsjaaaabjaaaaaaabjaaaaaaabjaaacsjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabjabiabibmobzubmscgtcaUcgucgvcgwcgxcgycgzcgAcaUcgtbmobzubmsabiabiabiabjabiabiaaaaaaabjaaaaaaabjaaaaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabiaaaabjabjbXUbXUbXUcmCctYczwczwcBUczwczwcBUczwczwcBUczwczwcHtabjcgGcibciccidcgJcigcihcgMcfccgNcfecgOcgPcikbXUbXUbXUbXUbXUcbCcgRctScgTcEFctTcgVbYjcgWcgXbZLcbHcgYcgYcgYcgYcgZcgYcgYcgYcgZchactUchcbEpbSDchdchebSEchfchgchhchibWUchjbSEchkcfGchlchmbYvchnchochpbYxchqchrcfOchschtcgQcgQchvcsLchxchychzchAchtbuZbvachBcfTchCchDcaxcaxcaxcgKchFcgLchHchIcttctVbYMchLchMchNchOchPcaLbLAbLAbLAbLAbLAbLAbLAbGachQchRbLAbLAbLAbLAbLAbJIbLAbJIbLAbLAbLAaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmchSbpubJhchTchUchVccUchWccUchXchYchZbJhbpmchSbpuabiaaaaaaabjaaaabjabjabiabiabiabjabiabiabiabiabjabiabiabiabiabjabiabiabiabiabiabjabiaaaabiaaaciebXUcieaaacJecjHcjIcjJcjIcjIcjJcjIcjIcjJcjIcjIcjKcifcgGcibcjLcjMciicbncbncijcfccfbcjNcilcimcjObXUcincbAcipciqcdvcirciscdtcbCcbDcitbYjcgXciucivciwcixciycixcixcixcixcixcixcixcizctWbWLbvabHibSEbSEbSEciBciCciDbZZbWUciEbSEciFciGciHciIciJciKciLciMciNciOciPciQciRchtcgQcgQciSciSciTciUciSciSchtciVbwnciWcuiciYciZcjacjbcjacjccjdcjecjfcjgcjhcjibYMbYMbYMcjjcjkbYMbYMcHucjmcjncjocjpcjqcjrcjscjtcjucjvcjwcjxcjycjzcjBcjzckEcjraaaaaaaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobrpbmsbJhbJhcjCcjDbMYcjEbMYcjFcjGbJhbJhbmobrpbmsabjaaaaaaabjaaaabjaaaabjaaaabjaaaaaaabjaaaabjaaaabjaaaaaaabjaaaabjaaaaaaabjaaaaaaabiabjabiabjciebXUcieaaacJeclpcnZabjabjcoaaaaacFabjabjcqNcifcobcdacgGcibcjPcjQcjRcjScjTcjUcfccgNcfecltcmMcmNbXUcjVciocjWcjXcjZckackbckbckcckdckeckfckgckgckhckickjckjckjckjckjckjckjckjckkcklbYkbuZbvackmbSEcknckociBckpckqckrbWUcksbSEbYvcktbYvckubYvciKciLckvbYxckwbYxckxbYxchtckyckzckAckBckCcjYckDckFckGckHckIckJbYKcaxcawckKckLccqbYKckMckNckOckPckQchJbYHckRckSckTckUckVckWckXckWckWckYckWckZclaclbclccldcleclfclfclgclgclhcliclfcljabjabjabjabjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmocujbmsabjbJhbJhclkcllclmcaUclnbJhbJhabjbmocvSbmsabiabjabjabjabjabiabiabiabiabiabiabjabiabiabiabiabiabjabiabiabiabiabjabiabiabjabjabiaaaabiaaaciebXUcieaaacKjcuOabjaaaaaaacFabjacFaaaaaaabjaaacobcgGcgGcgGclqclrclsbXUbXUcmPcfccfbcfecluclvclvclvclvclvclwclvclvclvclvclvclvclxclyclzclAclAclBbZMclCclCckjclCclCclDclEclFclGclHbYjbuZbvabIXbSEclIclJclKclLclMclNclOclPbSEaaaabjbHjclQclRclSclTclRclUclVbHjabjaaachtclWclXclYclZcmacmbcmccmdchtbuZbvacmebYHcmfcawccqcmgccqbYKcmhcmicmjcmkcmlcmmbYHcmncmocmpcmqcmrcmrcmscmrcmscmtcmucmvcmwcmycmzcmFcmAcmBcutcmDcmEcmHcmGcnFcmIaaaabjaaaabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibpmbrpbpuabjabjbJhcmJbJhcgtbJhcmKbJhabjabjbpmbrpbpuabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjabjbXUbXUbXUcmLcJeclpabjaaaacFacFacFacFacFaaaabjaaacobcgGcmQcmRcmScmTcmUcmWbXUcmOcfccgNcoccohcmVczHcopcmYcmZcnacIPcnccndcnecnfclwbZHcngbYjcnhcnicnjbZMckjckjckjckjckjcnkcnlcnmcnlcnnbYjbuZbvabIXbSEcnocnpciBbUTcnqcnrcnscntbSEaaaabjbHjcnucnvcnwcnxcnvcnvcnybHjabjaaachtcmXcnzcnAcnBcnCcnDcnEcnGchtbuZbvabuWbYHcvucawcaxcnIccqbYKcnJcnKcnLcnMcnMcnNbYHchGcnPcnPcnPcnPcnPcnPcnPcnPcnPcnQcnRcjrcnScnTcjrcjrcjrcjrcjrcjrcmIcnUcjrcmIaaaabiaaaabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibmobrpbPCbkubktbktcnVbktcKlbktcnXbktbktbkucnYbrpbmsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaciebXUcieaaacJeclpcuQacFacFcwtcjIcqOacFacFacFacFcobcgGcpicodcoecofcogcpkcppcojcokcfbcolcomconcoocqPcoscorcotcnbcndcoucphcovclvbZHcirbYjcowclCbZLbZMclCclCckjclCclCcoxcnlcnlcoycozbYjcoEbSibSzbSEbSEbSEbSEbSEcoAbSEcoBbSGbSEbHjcoCbHjcoDckvciKciLckvckvcoDbHjcoCbHjchtchtcoqchtcoFcoGchtcoHchtchtcoEbSicqmbYHcoIcawcaxcoJcoKbYHcoLcoMcoNcoOcoMcoPbYHcoQcoRcoRcoRcnPcoScoScoTcoTcnPcoUcoVcjncqicoXcoYboHcoZcpabngaaaabjaaaabjaaaaaaabjaaaabjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbpmcpbbpobpobpobpocpcbmqbmqbmqcpdbpobpobpobpocpebmsabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaabiabjabiabjciebXUcieaaacNncuOaaaabjacFclpcpgcqQacFabjaaaaaacuPcpjcrdcplcpmcpncpocsmcpqcprcpscptcpucpvcpwcpxcpycpzcpzcpAcpzcpycpBcpCcpDcpEcpFcpGbYjcpHckjcivcpIcpJcpJcpJcpJcpKcpLcnlcnlcnlcpMbYjbuZcpNcpOcxOcpQcpQcpQcpQcpRcpQcpScpTcpUcpVcpWcpXcpYcpZcqacqbcqccqccqdcqecqfcqgcqccqccqhcqjcqkcqlcrecqccqccrQcqncqocqpbYHcqqcecchCcqrchCcqschCcqtcqtcqtcqtcqubYHcqvcqwcqwcqwcqxcqycqzcqAcqBcnPcqCcqDcqEcqEcqFcqGbHFcsbcqIcqJaaaabjaaaabjaaaaaaabjaaaabjaaaabjaaaaaaabjabjaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabrsbrrbrsbrrbLScqKcqLbnPcqLcqMbLMbrrbrsbrrbrsaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabiaaaciebXUcieaaacJeclpacFacFacFcwvdvUcwuacFacFczicifcobcgGcpicqRcqScqTcqUcsncppcqWcqXcqYcqVcqZcracrbcsocrfcrgcrgcnbcnbcnbcrhcswclvcricrjbYjclCclCbZLbZMclCclCcrkclCclCcrlcrmcrncrocrpbYjbwmcrqcrrcBgcrtcrtcrucrtcrvcrwcrxcrycrzcrtcrAcrBcrCcrDcrEcrFcrGcrHcrIcrJcrKcrLcrLcrMcrNcrLcrOcrPcrLcrLcrLcsXcrRcrScrTbYHbYHbYIbZicrUbYHbYHbYHbYHbYHbYHbYHbYHbYHcrVcrWcrWcrXcrWcrYcrWcrZcsacscctccoVbqCcsdcsecsfboHcsgcshbngabjcsicsicsjcsjcsjcsjcsjcsjcsjcsjcsjcsjcsiabjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabjabibpmcskbpqbpqbpqcslbpuabiabiabiabjabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabjabjbXUbXUbXUcmLcJeclpabjaaaacFacFacFacFacFaaaabjaaacobcgGcspcsqcsqcDGcsucsvbXUctFcfccgNcrccsscmVcstcuRcINcrgcsxcszcsAcuTcsBcsCclvcsDcsEbYjbYjbYkcsFcsGbYkbYjcsHbYjbYjbYjbYjcsIcsHcsJbYjbuZbvabqAcsKcsKcsKctXcsKcsKcsKcupcsKcsKcsKcsNbHjcsOcsPcsQcsRcsScsTcsUbHjcsNcsVcsVcsWcsYcsVcsVcsVcsZctactkcsVbuUbvactbcBhctdctectfctgcthcthcnOcthcthctjcthcthcwactlctmctnctoctpctqctrctscoWcnPctuctvbqBcjnbngbqCbngbngbngbngcqJcsictwctxctxctyctzctActBctBctBctCctDcsjabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabrrbrsbrrbrsbrraaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaciebXUcieaaacNZcuOabjaaaaaaacFabjacFaaaaaaabjaaacobcgGcgGcgGclqclrclsbXUbXUcuWcfccfbctGbXUclvclvclvclvclvclvclvclvclvclvclvclvbZHcirbYjbZOctHbZLbZMctOctNctKctLbYjctMctNctOctHctPbYjbuZbvactQcsKctRcBicvvcvwcvxcvwcvycvzcDscsKabjctZcuacubcuccudcuecufcugcuhabjcsVcukculcumcuXcvJcsVcsVcsVcsVcsVcunbvacuocCYcuqcuqcurcuscuqcuqcticuqcuqcuucuqcuvcuwcuxcrWcrWcuycuzcuAcuBcuCcuDcnPcuEcuFckVckWcuGcuHcuHckXckWcuHcLmcuIcuKcuLcuMcuMcuMcuMcuMcuMctBctCcuNcsjabjaaaabjaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabjabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabiabjciebXUcieaaacJeclpdExabjabjacFaaadQCabjabjdQDcifcobcdacgGcibciccuUcuScxLcjTczjcfccgNcuVclvcwycuYcuZcvacwBclvcvbcvccvdcvccvccvecvfcvgbYjcvhcrncvicvjcvkcvlcvmcvnbYjcvocvpcvqbZNcvrbYjcvsbvabqAcsKcvtcvAcwScwTcwUcwWcwXcxQcvBcvCabjcsNcvDcvEcvEcvFcvGcvGcvHcsNabjcvIcvKcvLcvMcvNcvYcvOcvPcvQcvRcsVbqmbwnbsfddkbshbshcvTcvUbshbshdWObsobsocvWbsocvXcJccvZcxdcwbcwccwccwccwdcwecwfcnPcwgcmscwhcwhcwicwjcmqcmrcmrcmscwkcwlcwmcwncwocwpcwpcwpcwqcwocwrctCcwscsjabjabjabjabjabjabjabjabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaciebXUcieaaacJedQEdvUdUEdvUdvUdUEdvUdvUdUEdvUdvUdUFcifcgGcibcjLcjMcwwcbncbncijcfccfbcrccwxcxHcwzcwAcwzcxIclvcdwbYhbYhbYhcfnbYhcwCcwDbYjcwEcwFcwGcwHcwIcwJcwKcwLbYjcwMcwNcwOcwPcbKbYjbuZbvacwQcsKcwRcyecyfcyqcwVczIcyfcBfcwYcsKcwZcxacxbcwZcxacxacxacwZcxccxacwZcsVcxecxgcxfcxhcxJcxicxjcxkcxlcsVcxmbvabuWcxncxncxncxncxncxncxocxncxncxncxncxncxncxncxpcrWcxqcxrcxscxtcxucxvcxwcnPaFxaFxaFxaFxaFxaFxaFxaFxaFxaFxaFxaFxctxcxxcxycxzcxAcxAcxBcxCcxDcsjcsjcsicsjcsjcsjcsjcsjcsicsjcsjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabjabjbXUbXUbXUcJdcOmczwczwcPKczwczwcPKczwczwcPKczwczwcPXabjcgGcibcjPcidcgJczpczrcgMcfccgNcABcxKcAAcxMcxNcpycxRclvcdwcxPcxScxTcznczocxUcsEbYjcxVcxWcxXcxYcxZctOcyacybbYjbYjcycbYjbYjbYjbYjbuZbvabqAcsKcydcyecyfcyqcBjczIcyfcBkcygcsKcyhcyicyjcykcylcymcyncykcyocyicypcsVcyrcytcyscyucyIcyvcywcyxcyycsVcyzbvacyAcxncyBcyCcyDcyEcyFcyGcyHczUczUczUcyJcyFcyEcyKcyLcyMcyNcyOcyPcyQcyRcyScnPcyTcyUcyVaFxaKhcyWcyXaFxcyYcyZczaaFxczbczcctCczdczeczeczfczgczhcsjaaaabjaaaaaaabjaaaaaaabjaaacsjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaciebXUcieaaaaaaabjaaaabjaaaacFabjacFaaaabjaaaabjaaacCfbXUdWiceVcACczkczlczlczmcfccfbdWaczscCdczqczuczqdltclvcztcxPcAHcbCczvcAJcwCczxbYjczycrnczzczAcixczBczCcvlclzczDczEczFcbCczGbYhbuZbvabqAcsKdzRcyecyfcyqcBlczIcyfcBfcwYcsKczJczKczLczMczNczOczPczQczRczSczTcsVczWcytczVczXczZczYcAacAbcBvcsVbuUbvabuWcxncAccAdcAccAecAfcAgcAhcAfcAfcAicAfcAjcxncAkcrWcrWcrXcrXcrWcAlcxvcAmcnPaFvaFvcAnaFxcAocApcAqaFxcyYcArcAsbmWcAtczccuMcAucAucAucuMczgcAvcsjaaacAwcAxcAxcAycAxcAxcAzaaacsjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabiabjciebXUcieabjcdacCgcCgcCgcCgcbbcbbcbbcCgcCgcCgcCgdqQbXUbXUcddbXUcADcAEcAFcAFcAFcCecAGcANcAIcAOcAKcALcAMcARclvcitbYhcCicAPcAQcCqcCscASbYjbZKcATctHcAUcAVcAWcAXcAYcFMcBacgUcBbcBccBdbYhbuZbvabqAcsKcBecCDcCEcCFcCGcCHcCIcCJcBmcsKcBncBocyjcBpcBqcBrcBscBtcyocBocBucsVcBwcBxcBycBzcBBcBAcBCcBDcBHcsVbuUbvabuWcxncBEcBFcBFcBGcCUcBIcBJcBKcBKcBLcBMcBKcBNcBOcBPcBPcBPcBQcBRcBScBTcYhcnPcBVaFvaFwaFxcBWcAqcBXaFxcBYcArcAsbmWcBZczccuMcuMcuMcuMcuMczgcAvcsjabjcCacCbcCbcCccCbcCbcCaabjcsjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabiaaaciebXUciecbbcbbcbbcDtcbbcDucDvcDvcDvcDwcbbcDtcbbcChcCkcCjcbicClcDycCmcCncbncbocCocCpcCvcCrcDBcCtcCucCtcDCclvcCwcCxcCycCzcCAcbCcwCcsEbYjbYjbYjbYjbYjbYjbYjbYjbYjbYjcCBcgUcBccbCcgTbYhbuZbvabqAcsKcCCcDOcEbcEccEdcErcEscENcCKcsKcCLcCMcyjcCNcCOcCPcCQcCRcyocCScCTcsVcCVcCWcCXdtecDacCZcDbcDccDfcsVbuUcDdbuWcxncDecxncDecxncEjcDgcxncDhcxncDhcxncDhcxncDicDjcDkcDlcnPcDmcDncDocDpcnPcDqaFvaHAaFxcAqcAqaKkaFxcyYcArcAsaFxctxczccAucDrcDrcDrcAuczgcAvcsjaaacCacCbcCbcCbcCbcCbcCaaaacsjabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjabjbXUbXUbXUbXUcDxcDxdCxcDvdUGbXUbXUbXUdUHcDvdUIcDvdVybXUcDzdWbcDAcDEcdhcDFcDDduPcDHcDIcDJclvcDKcDLcDMcEDcGbclvcdwbYhcDNcEOcDPcDQcwCcDRcDScDTcDUcDScDScDScDTcDVcDScDTcDWcDXcDYcDZcEabYhbuZbvabqAcsKcsKcsKcsKcEPcEQcERcsKcsKcsKcsKcEecEfcxbcxacEgcEhcEicxacxccEfcEecsVcsVcsWcEkcsVcsVcsVcElcEpcEpcsVbuUbvabuWbngcEmcjpboGcxncEncDgcxncEocxncEqcxncFbcxncnPcnPcnPcnPcnPcnPcuJcuwcvVcnPaFxcEtaFxaFxaFxcEuaFxaFxbmWcEvbmWaFxctxczccEwcExcExcExcEyczgcxDcsjcsjcCacCbcCbcCbcCbcCbcCacsjcsjcsjcsicsjcsjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaabjcEzcEzbXUbXUbXUbXUbXUbXUcEAbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUbXUcEBcECdWhbXUbXUclvclvclvclvclvclvclvcitbYhcCxbYhbYhbYhcwCcEEcdtcgTcbCcbCcEFcgTdmybYhcgTcbCcEGcgUcbCcEHcEIcEJchccEKcELcFpcEMboycGYcHDcIfcITcIUcEScETcEUboyboycEVboyboycEWboqboocEXbooboocEYboocEZcFabooboocFfcGKcGKcGKcGLbosbEpcFcbngcFdboGcjncxncFecJlcxncxncxncDecDecFgcFgcFhcFicFjcFkaFxcFlcFmcFncFocFwcFqcFqcFqcFrcFqcFscFtcFucFvcFtcFtcFwcFxcFycFzczeczecFAcFBcFCcFDcFEcFFcFGcCbcCbcCbcCbcCbcFHcFFcFEcFIcFJcFKcsjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFacFacFacFacFdbFcGwcFNcIucFPcFQcbCcbCcFQcFRcFScFTcFUczDcFUcFVcFUcFWcFXcFYcFYcFZcGacGdcGccHlcGecGecGfcGgcGhcGicGicGicGjcGkcGicGlcGecGecGlcGmcGncGockcckbckbckbckbcGpcGqckcckbcGrcGscGtcGucGvcIzcGxcGybqudxVbqubqubqubqvbqubqubqxbqubqubqubqubqucGzbqubqucGAcGBbqubqubqubqubqubqubqvbqxbqubqubqubqubqubqudxVcGCcGDcGEcGFckWcGGcGHcGIcGJdzickVckWckWckWckWcLmcGFcLmcGMcGNcGOaFxcGPcGQcGRcGSbmWcGTcGUcGVcGWcGUcGUcGUcGUcGRcGUcGTbmWcGXcIscFzczeczeczecGZczgcHacsjcsicsjcCbcCbcCbcCbcCbcsjcsicsjcHbcHccHdcsjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFacFacFacFacFcPYcGwcFNcIucFPcFQcbCcbCcFQcFRcFScFTcFUczDcFUcFVcFUcFWcFXcFYcFYcFZcGacGdcGccHlcGecGecGfcGgcGhcGicGicGicGjcGkcGicGlcGecGecGlcGmcGncGockcckbckbckbckbcGpcGqckcckbcGrcGscGtcGucGvcIzcGxcGybqudxVbqubqubqubqvbqubqubqxbqubqubqubqubqucGzbqubqucGAcGBbqubqubqubqubqubqubqvbqxbqubqubqubqubqubqudxVcGCcGDcGEcGFckWcGGcGHcGIcGJdzickVckWckWckWckWcLmcGFcLmcGMcGNcGOaFxcGPcGQcGRcGSbmWcGTcGUcGVcGWcGUcGUcGUcGUcGRcGUcGTbmWcGXcIscFzczeczeczecGZczgcHacsjcsicsjcCbcCbcCbcCbcCbcsjcsicsjcHbcHccHdcsjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaabYhbYhbYhbYhcHecHfcHgcHhcHhcFOcHjcHkcHhcHhcHhcHgcHfdWgcHmcHncHocHpdrscHqcpFcHrcdtcdtcBccbCcHscHvcHvcHvcHvcHvcHvcHvcHvcHvcHvdencHvcHvcHvcHvcHvcHvcHvcHvcHvcHvcHvcHvcHwcHxcHycHzcHAcHBbsocHCddlbsocHEcHFcHGbsobsobsobsobsocHCbsobsobspcHHcHIcHJcHKcHLcHMcHMcHMcHMcHMcHNcHMcHMcHMcHOcHMcHMcHMdWOcHPbshcHQcHRcmtcHScHTcHUcHVcHWcmtcHXcHXcHXcHXcHXcHXcHXcmvcHYcHZcIacIbcIccIdcIecImcIgcIgcIhcIicIgcIjcIkcIkcIlcIkcIkcImcIncIocIpcIqczeczecGZczgcHacsjcsicsjcCbcCbcCbcCbcCbcsjcsicsjcIrcJmcItcsjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjabiabjbYhcjVcJLbYhcIvcducIwcIxcIycJMcIAcIxcIxcIxcIxcIBcICcHicIAcIxcIxcIxcIxcirbZHdtUcHgcIFcdtcbCcIGcEzcIIcIJcIKcILcIMcSicIMcILcIMcSlcIMcILcIMcSqcIMcILcIOcIOcSCcIOcIOcEzcIQcIRcdwcISbYhbvVddmddncIVcIWcIXcIYcIYcIWcIWcIZcIWcIWcIYcJacIWcIWcJbdEjdEldEmcJfcJgcJgcJhcJhcJgcJgcJicJgcJgcJjcJhcJgcJgcJkdWPdWQdWRbngcJnboGboGboGcJocJpboGcJqcJrcJscJtcJucJvcJqctvcJwcJxaFxaFxaFxaFxaFxaFxaFxcEuaFxaFxaFxcJyaFxaFxbmWcEvbmWaFxcJzczccJAcJBcJBcJBcJCczgcJDcJEcJFcJGcCbcCbcCbcCbcCbcJHcJFcJEcJIcJJcFKcsjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaacJKcJPcJQcjXcJNcJOcIxcKtcLxcJRcIDcJTcIxcJScJUcJVcJWcJXcJYcJZcKacKbcIxcKccKdcKecKfcKgcKhczDcKidgrcKkcKmcLQcILcIMcKncIMcILcIMcKocIMcILcIMcKncIMcILcIOcKpcKqcKpcIOcKrcKrcKscLBcKucKvcKvcKvcKvcKvcKwcKxcKycKycKzcKAcKBcKCcKDcKEcKFcKGcKHcKIcKJcKKcKLcJkcKMcKNcKOcKOcKPcKQcKRcKScKTcKUcKVcKWcKXcKYcKYcKYcKYbngcKZcLacLbcLcboGboGboGcJqcLdcLecLfcLfcLgcLhcLicLjcLkcLlcLmcGFcMEcLnaFxcAqcAqcLoaFxcLpcLpcLqaFxcyYcArcLraFxcLsczccLtcLucLucLucLtczgcLvcsjcsjcLwcCbcCbcCbcCbcCbcLwcsjcsjcsjcsicsjcsjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10932,8 +10931,8 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaMWdoudYvdYuaRmaSPaUpdYtaRmdYuaSPdowdcXdafdbMdpTdYwdYxdYxdeIdeIdeJdeIdeIdjedozdbLcLAdoAddidlPdoBdlPdlPdERdlPdlPdoDdlPdkIdIgdvedoGdoHdoOdkIdIhdkOdnidfidpQdoLdoMdoNdqcdffdfldoPdIidfndqjdqkdqodILdqodrDdrEdrFdfodoYdoZdpadrGdrHdpddpedYidYjdphdpidpjdpkdpldpmdpndpodppdpqdprdpsdpzdpudpvdpwdpxdpydqvdpAdpBdpCdfFdpDdpEdpFdfDdpGdpHdpIdpJdpKdfDdiPdbydfJdpLdiSdiSdiRdiRdpMdpNdfJdoqdsmdevdpOdordosbngabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjdbzdpRdcXdcXdcXaRmdYydYydYydYzdcXdcXdnHaUpdbMdpWdYAdYodYBdpVdeJdhJdkAdYrdfRdrgcZtdpXdbNddiddiddiddiddiddiddiddiddiddidkIdpYdwedqadqbdqgdkIdqddlXdqedffdqfdfidrvdqhdqfdffdrIdrNdsudqldqldqmdqmdqndqmdsHdqmdqpdqpdftdfBdsIdmidmidqrdqsdYkdYldsUdqwdqxdqydqzdqAdqBdqCdqDdqEdqFdkhdqGdqHdqIdqJdqKdqHdqGcYKcXxdgYdfDdqLdqMdqNdfDdqOdqPdLPdqRdqSdfDdiPcSWdfJdqTdoodtBdqVdtEdqXdqYdfJctudbyaeBaeBaeBaeBaeCabjabjabjabiabjabiabiabiabjabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjaMWaOsdkrdqZdraaRmdrbdrcdrddrcdredrfdcXaOscZtdhJcAZdrldpUdrhdfVdfVdYCdrjdjhdsodjidrndrocYecFYcGacGacGacFYcGacYedrpdrqdkIdrrdCNdrtdrudrwdkIdrxdkOdrydffdsvdrzdrAdrBdrCdffdfldoPdkXdqldsJdsKdsLdsMdsLduedufdrJdrKdrLcKKdrMdceduhdrOdrPdrQdrRdrSdrTdrUdrVdrWdrXdrYdrZdsadsbdkgdscdmtdsddsedsfdsgdshdmtcYKcVTdsidfDdfDdfDdfDdfDdfDdfDdfDdfDdfDdfDdsjcSWdfIdfIdskdmKdfIdsldfIdfIdskdbxdbyaeBdtFdtGdRxaeCaeCaeCaaaabjaaaabjaaaabjaaaabjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjaMWaMWdbzaMYdbzaUpaSPaUpaRmaUpdbzaMWdbzaMWcZtdsndeJdrldpUdspdkAdYDdfVdhJdfRdYodbMdsqdIfdsrcHhcHhdsscHhdsrcHfcHgdstcNhdkIcLydsydswdsxdsAdkIdszdsCdsBdffdXkdsDdsEdsFdsGdffdfldkWdkXdqldujdvkdvldvldvldvmdvrdwodcecVAcKKdnEdrKdsNdsOdsPdsQdsRdsSdsTdsVdsZdsWdsXdsYdtfdtadtbdtcdtddGaduldtgdthdtidtjdtkcYKcXxdgYcJgdtldtmdtndMidtpcKYdtqdtrdtsdttdtudtvdtwdtxdtsdtsdttdtydtxdtwdtzdtAduNdtCduOdtDdGqdGrdGsdGXdYEacgacpacpacpacpacpacpaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjabjabjabjdbzaUpdtJdtKdtLdlKdbzabjabjabjcZtdtMdhDdpSdfWdeJdfWdfWdrkdfWdYodtOcZtbYhbYhcJKcJKbYhcJKcJKbYhbYhcdvcirdtPdkIdrmdtRdtVdtTdtWdkIdtXdkOduYdffdvcdtYdtZduadubdffdfldoPducduddwqdwrdugdwsduidwsdxzdrJddJcVAcKKcSwdukdukdukdxGdukdumdundunduodundundundundundundupduqdukdmtdurdusdutduuduvdmtduwduxdgAdSdduzduzduAduBduCcKYdkoduDduEduFduGduHduIduIcqEduJduKdpOdpOduIduLduIduMaeBdGZdHZdIaaeCaeCaeCabjabjabjabjabjabjabjdYFabjabjabjabiabiabiabiabiaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjaMWaMWdbzaMYdbzaUpaSPaUpaRmaUpdbzaMWdbzaMWcZtdsndeJdrldpUdspdkAdYDdfVdhJdfRdYodbMdsqdIfdsrcHhcHhdsscHhdsrcHfcHgdstcNhdkIcLydsydswdsxdsAdkIdszdsCdsBdffdXkdsDdsEdsFdsGdffdfldkWdkXdqldujdvkdvldvldvldvmdvrdwodcecVAcKKdnEdrKdsNdsOdsPdsQdsRdsSdsTdsVdsZdsWdsXdsYdtfdtadtbdtcdtddGaduldtgdthdtidtjdtkcYKcXxdgYcJgdtldtmdtndMidtpcKYdtqdtrdtsdttdtudtvdtwdtxdtsdtsdttdtydtxdtwdtzdtAduNdtCduOdtDdGqdGrdGsdGXdbAacgacpacpacpacpacpacpaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjabjabjabjdbzaUpdtJdtKdtLdlKdbzabjabjabjcZtdtMdhDdpSdfWdeJdfWdfWdrkdfWdYodtOcZtbYhbYhcJKcJKbYhcJKcJKbYhbYhcdvcirdtPdkIdrmdtRdtVdtTdtWdkIdtXdkOduYdffdvcdtYdtZduadubdffdfldoPducduddwqdwrdugdwsduidwsdxzdrJddJcVAcKKcSwdukdukdukdxGdukdumdundunduodundundundundundundupduqdukdmtdurdusdutduuduvdmtduwduxdgAdSdduzduzduAduBduCcKYdkoduDduEduFduGduHduIduIcqEduJduKdpOdpOduIduLduIduMaeBdGZdHZdIaaeCaeCaeCabjabjabjabjabjabjabjdbFabjabjabjabiabiabiabiabiaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFaaaacFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabjaaadbzdbzaMWdbzaMWdbzdbzaaaabjaaacZtduQduRdtQdYodhJdYGduSduUduVdYHduXcZtaaaabjaaaabjaaaabjaaaabjbYhcbCcgRcNhdkIduWdvZdvadvbdwcdkIdvddwddvfdffdffdffdffdvgdffdffdvhdvidvjdxBdxCdxDdvndvodvpdvqdXrdqpdqpdgCcKKcTWdukdvsdvtdvudvvdvwdvtdvxdvtdvxdvydvzdukdvAdvBdvCdvDdvEdmtdvFdvGdvHdvIdvJdmtcYKcXxdludvKdvLdvMdAqdvOdvPcKYdvQcWbaOxaOxaOxaOxaOxdvRdvRdvSdvSaOxbLnbLndvTbLnbLnaeBaeBaeCaeBaeCabjabjabjaaaabjaaaabjaaaaaaabGaaaaaaabjaaaabjaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjaaaaaaaaaabjaaaabjaaaaaaaaaabjaaacZtcZtcZtcZtcZtcZtcZtcZtcZtcZtcZtcZtcZtabjdkIdkKdkKdkIdkKdkKdkIdkIdvVdvWdvXdkIdvYdwfdwadwbdwgdkIdwhdxkdxndxodxpdwidwjdwkdwldwmdihdoPdgvdwndyMdyNduidyOduidwsdyQdyTdqpcKJdwtdwudukdwvdwwdwxdwydvxdwwdvxdwzdvxdwAdwwdwBdwwdwCdwDdwEdwFdmtdwGdwHdwIdwJdwGdmtdwKcVTdgYcKYcKYcKYcKYcKYcKYcKYctudwLaOxdwMdwNdwOdwPdwQdwRdwSdwTdwUdwVdwWdwXdwYdwZdxabLnabjabjabjaaaabjaaaabWabWabWabWabWabjabGabjabWabWabWabWabWaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjaaaabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaabjabjabjabjacFacFacFacFabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjdkKdxbdxcdxddxedxfdxgdkIdxhdWndxjdkIdxidxqdvadxmdXudkIdyCdyDdyEdyEdyFdwidxsdxtdxudxvdxwdxxdxydqldzVdzWdzXdAadzXdzXdAbdBOdqpcKJcKKdxFdBSdxHdxIdxJdxKdxLdQddxLdxLdxLdxNdxOdAodxQdxRdxSdxTdxUdmtdUDdvGdxWdxXdxYdmtdgWdxZdgYcJgdtldtmdtndQudtpcKYdyacWbdvSdybdycdyddybdyedyfdygdybdyhbLndyidwXdyjdykdyldymabjabiaaaaaaabiabjaceacfacfacfacfacgabGaciacjacjacjacjacjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10943,8 +10942,8 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFabjabjdyodyodBEdBFdAHdBGdCAdyodyoabjabjacFabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjacFabjacFabjabjabjabjabjabjacFabjacFabjabjabjabjabjabjacFabjacFdkIdkKdBAdkKdBBdkKdAUdkIdBAdWndxjdkIdkIdkIdWodkIdkIdkIdCKdCKdCLdCMdCMcKrcKrcKrcKrcKrcKudBhcKscKrdBIdBidBKdBCcKhdBMcKhdBNdBHcPxdBPdBQdBJdQsdBLdBUdBVdBWdBWdBUdBXdBYdBUdBZdCadCbdCcdCddCedBVdBVdCfdBYdBWdCadCgdbodChdCidCjdbodCkdClcmtdCmdClcmtdCndCoaOxdCpdybdycdybdCqdCrdygdzodCsbLndCtdCudCvdwZdCwdymabjabiaaaabiabjacfacfacfacfacfacgacpachacpaciacjacjacjacjacjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadyndCydCzdAHdAHdAHdAHdAHdDPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadCBdCCdCDdCEdCEdCEdCFdkIdCGdEydCHdCIcFRcgTdbNcdtdCJcEzdDQdDRdCLdDSdEacKrdCOcZtdCPdCQdCRdCSdCTcZtdCUdCVdCWcGodBRdCYdBTdVjdCXdDbdDcdDddDadDfdDgdDhdDidDjdDkdDkdDldDhdDkdDmdDndDodDpdDkdDqdDmdDhdDidDmdDhdDrdDsdDtdDudDvdDwdDtdDxdDydDxdDzdDAdDxdDxdDBdDCdDDdDEdDFdDGdDHdDIdDJdDKdDLbLndDMdDNdDNdyjdDObLnabjabiabjabiaaaacoacoacoacoacoabjabjacpabjabjacoacoacoacoacoaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFabjabjdyodyodEcdEvdAHdEwdEKdyodyoabjabjacFabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjabjacFabjacFabjabjabjabjabjabjacFabjacFdkIdDTdkIdkIdDTdkIdkIdkIdDUdDVdDWdDXdDXdDXdDYdDXdDZcEzdDQdDQdFndEadDScKrdEbdFTdEddEedEfdEgdEhcZtdEiciraosaosdDedEkaosaosdfudIMdPudXjdfudfudEodEpdEpdEodEqdEodEodEqdEodEodEqdEodEodEqdEodEodEqdEodEodEqdEodEpcKYdErdgXdEscKYbngcqJbngbngbngcqJbngbqCdDCdDCdEtdEtaOxaOxaOxdEtdEtdDCbLnbLndymdymdymdEubLnabjabiabjabiaaaaaaaaaaaaabjaaaaaaabjacpabjaaaaaaabjaaaaaaaaaaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjdyndyodFUdAHdFVdyodynabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaaaaaaaaaaaaaaaaabjaaadYIdEAdEBdEEdEFdECdEDdWxdWydEGdEHcHhcHgcHfcHgcHgdEIdEJcEzdDQdDQdGOdDSdDScKrdELdEMdENdEOdEPdEQdXycZtdEScwDaosdETdEUdEVdEWaosdVwdEYdEZdFadFbdfuaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaaaaaaaabjcKYdFcdFddFecKYaaaabjaaaaaaabjaaaabjaaaabjaaaaaaabjabjabjabjaaaaaaabjabjabjabjabjabjabjabjabjabjaaaabiabjaaaabWabWabWabWabWabjacpabjabWabWabWabWabWaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjdyodyndFfdyndyoabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFacFacFacFaaaaaaaaaaaaaaaabjaaaacFbYhdFgdFgdFgdFhdFidFjdFhdFgdFgdFkdFgdFgdFgdFlcEGdEJcEzdFmdFmdFmdFmdFmcKrdGYcZtdFodFpdFqdFrdFscZtdCUdFtaosdFudFvdVxdFxaotdWIdFzcKKdFAdFBdFCabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjcTXdFDdTxdFFcTXaaaabjaaadFGdFGdFHdFGdFGdFGdFIdFJdFGdFGabjabjabjabjabjabiaaaabjabjabiabiabiaaaabjabjabjabjabjacfacfacfacfacfacgdYFaciacjacjacjacjacjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjdyndyodFUdAHdFVdyodynabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaaaaaaaaaaaaaaaaabjaaadPndEAdEBdEEdEFdECdEDdWxdWydEGdEHcHhcHgcHfcHgcHgdEIdEJcEzdDQdDQdGOdDSdDScKrdELdEMdENdEOdEPdEQdXycZtdEScwDaosdETdEUdEVdEWaosdVwdEYdEZdFadFbdfuaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaabjaaaaaaaaaaaaabjcKYdFcdFddFecKYaaaabjaaaaaaabjaaaabjaaaabjaaaaaaabjabjabjabjaaaaaaabjabjabjabjabjabjabjabjabjabjaaaabiabjaaaabWabWabWabWabWabjacpabjabWabWabWabWabWaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjdyodyndFfdyndyoabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFacFacFacFaaaaaaaaaaaaaaaabjaaaacFbYhdFgdFgdFgdFhdFidFjdFhdFgdFgdFkdFgdFgdFgdFlcEGdEJcEzdFmdFmdFmdFmdFmcKrdGYcZtdFodFpdFqdFrdFscZtdCUdFtaosdFudFvdVxdFxaotdWIdFzcKKdFAdFBdFCabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjcTXdFDdTxdFFcTXaaaabjaaadFGdFGdFHdFGdFGdFGdFIdFJdFGdFGabjabjabjabjabjabiaaaabjabjabiabiabiaaaabjabjabjabjabjacfacfacfacfacfacgdbFaciacjacjacjacjacjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjdyndyodynabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaaaaaaaaaaaaaabjaaaabjabjdFgdFKdFLdFMdFNdFOdFMdFPdFNdFQdFRdFSdFgcdvcEGdbNdHBdIbdIydFWdFXdFYcZtdFZcZtdICdGbdGcdGddGecZtdGfdGgaosdGhdGidGjdGkdGldGmdFzdWKdGodGpdFCaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadFGdLadLbdLcdFGdFGdFHdFHdFGdGtdGudGvdGwdGxdGydGzdGAdGwdFGdFHdFGdFGabjabiaaaabiaaaaaaabjabjaaaabjaaaaaaabiaaaacoacoacoacoacoabjabGabjacoacoacoacoacoaaaabiaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjaaaabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjabjabjabjabjabjabiaaaaaaabjdFgdGBdGCdGDdFNdFOdGEdGEdGFdGGdGHdGIdFgcbCcEGdGJdGKdGLdGMcdwdXlcfmdbMdbMcZtcKsdJycKucZtcZtdbMcgUcwDaosdGPdGQdGRdGSaszdWLdGUcKKdGodFBdFCabjabjaaaaaadYedYedYedGWdYedYedGWdYedYedGWdYedYedGWdYedYedYeaaaaaadFGdLddLQdLUdHadHbdHcdHddHedHfdHgdHhdHidHjdIjdHldHmdHndHodHpdHqdFGaaaabiabjabiabjabjabiabiabiabjabiabjabiaaaaaaaaaabjaaaaaaaaaabGaaaaaaaaaabjaaaaaaaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaaaaaaaaaaaaaabiabjabiabjdFgdHrdHsdHsdFNdFOdHtdHsdGFdHudHvdHwdFgdHxdHydHzdHAdHAdKXdHCdHDdHAdHEdHFdHGdHHdHIdHJcFYdHKcYedHLdHMaosdHNdHOdHPdHQaosdWMdHSdHTdHUdHVdfuaaaabjaaadHWdYfdYfdYfdGWdYfdYfdGWdYfdYfdGWdYfdYfdGWdYfdYfdYfdHYaaadFGdLYdMadMvdFGdFGdIcdIcdFGdIddIedIkdJadJbdOidJcdJddIldImdIndIodFGaaaabjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaabiabiabjabiabjabiabiaaaabGaaaabiabiabiabjabiabiabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10952,33 +10951,33 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaaaaaaaaaaabiaaaabiabjdFgdJldJmdJndJodJpdIqdIudJqdJqdJrdJsdJtdFgcEGcitdXDdJudJvdJwdIxdJxdJxdJxdJxdXadJzdJxdJxdJxdJxdEzdJBdJCdJDdJDdJDdJDdXCdJDdJFdJDdJFdJGdJAdIOabjaaadJIdLOdJKdJKdJKdJLdJKdJLdJKdJKdJKdLOdJIdTzdYgdYhdXtdJIaaaaaaabjaaaabjaaaaaaabjaaadFGdJPdJQdJRdGwdJSdJTdJUdJVdJWdJXdJYdJZdFGabjabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjabjabjabjabjabiaaaabiabjdFgdIqdHtdIudKadKbdKcdIudIqdIqdFgdFgdFgdFkdlMcfpdIxdKddJvdKedIxdKfdKgdKhdKidKjdKkdKhdKgdKldKmdEzdKndKodKodKodKodKodKpdKodKqdKodKqdMYdJHdIOabjaaadJIdKtdKudKudKudKudKudKudKudKudKudKvdKwdXBdJNdJNdXLdKyaaadKzdFJdFGdKAdKBdFGdFHdFGdFGdKCdIedKDdGwdGwdXEdIcdGwdGwdFGdIcdFGdFGabjabiaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaaaaaaaaaZabiabjabiabjdFgdKEdIudHsdFNdKbdIpdJrdIudHsdFgdKFdKGdFkdKHcgVdIxdJudKIdKJdKKdKLdKLdKLdKLdKMdKNdKLdKLdKLdKrdKsdKndKodKodKodKodKodKpdKodKqdKodKqdMYdKPdIOabjaaadKydOydKudOzdKTdOydKudOzdKTdOydKudOzdITdKUdKUdKUdXMdKWaaadIcdMAdMGdNidNWdNXdNYdXGdJWdLedLfdLgdGwdLhdLidLjdLkdLldFGaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFacFacFacFaaaaaaaaaabiaaaabjabjdFgdHtdIpdIudFNdKbdHsdIudIqdHtdFkdLmdIvdFgdLndLodIxdLpdLqdLrdKKdKLdLsdLtdLtdLudLvdLwdLxdLydKOdLAdLzdLCdLDdLEdLEdLEdLFdLGdLHdLIdLJdMYdLKdIOaaaaaadLLdOydKudOzdLMdOydKudOzdKwdOydKudKudOadXNdXNdXNdXOdKWaaadFGdOcdLRdLSdLjdLldLTdPgdLVdLWdIedLXdKBdPndLZdPodMbdPndFGabjabiabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaabiaaaabiaaaabiabjdFgdMcdHsdMddFNdKbdIudIudMedMedFgdMfdMgdFkcNgcfmdIxdJudJvdMhdIxdXxdMjdMkdMjdKMdMldMjdMmdMndKmdModMpdMqdKpdKodKodKodKodKodMrdLGdMsdMYdKPdIOaaaaaadJIdOydKudOzdMtdOydKudOzdMtdOydKudKudOadXPdXPdXPdXRdLLaaadFIdQvdMwdMxdMydMydMzdQwdMBdMCdMDdMEdGwdGwdMFdQGdMHdGwdFGabjabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFacFacFacFaaaaaaaaaabiaaaabjabjdFgdHtdIpdIudFNdKbdHsdIudIqdHtdFkdLmdIvdFgdLndLodIxdLpdLqdLrdKKdKLdLsdLtdLtdLudLvdLwdLxdLydKOdLAdLzdLCdLDdLEdLEdLEdLFdLGdLHdLIdLJdMYdLKdIOaaaaaadLLdOydKudOzdLMdOydKudOzdKwdOydKudKudOadXNdXNdXNdXOdKWaaadFGdOcdLRdLSdLjdLldLTdPgdLVdLWdIedLXdKBdPodLZdQGdMbdYEdFGabjabiabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaabiaaaabiaaaabiabjdFgdMcdHsdMddFNdKbdIudIudMedMedFgdMfdMgdFkcNgcfmdIxdJudJvdMhdIxdXxdMjdMkdMjdKMdMldMjdMmdMndKmdModMpdMqdKpdKodKodKodKodKodMrdLGdMsdMYdKPdIOaaaaaadJIdOydKudOzdMtdOydKudOzdMtdOydKudKudOadXPdXPdXPdXRdLLaaadFIdQvdMwdMxdMydMydMzdQwdMBdMCdMDdMEdGwdGwdMFdYFdMHdGwdFGabjabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaabiaaaabjaaaabiabjdFgdMIdMJdMgdMKdMLdMMdMNdMMdMNdMOdMPdGEdFkcsEcbCdIxdMQdMRdMSdIxdMTdMUdMTdMUdKMdMVdMUdMWdMXdJxdKsdMZdKodNadNbdNcdNbdOudNbdNcdNbdNddMYdKPdIOdIOdIOdJIdNedKudOzdNfdOydKudOzdNfdOydKudOzdITdNgdNgdNgdNhdJIaaadFGdQHdNjdNkdNldNmdNndLYdIcdNodNpdNqdNrdNsdNtdNudNvdNwdFGabjabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjacFacFacFabjabiaaaabiabjabiabjdFgdNxdNydNzdNAdMIdNBdNCdNDdNEdFgdNFdNGdFgcLPcdtdIxdJudNHdNIdIxdNJdNKdNJdNKdKMdNLdNKdNMdNKdKmdKsdMZdKodNadNNdNOdNPdNQdNNdNOdNPdNddMYdKPdKQdKPdKQdLBdNRdKudOzdKTdOydKudOzdKTdOydKudOzdNTdNUdJNdJNdNVdJIaaadFHdRfdRgdRhdRidWSdWTdWUdGwdOddOedOfdOgdOhdOidOjdOkdOldKBaaaabjaaaabjaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaabjabjaaaabiaaaaaaabjdFgdFgdFgdFgdFgdFgdFgdFgdFgdFgdFgdFgdFgdOmdOncgTdIxdIxdOodOpdIxdOqdMUdMTdOrdKMdOsdMUdMWdOtdJxdOvdMZdKodNadOwdXFdOwdOxdOwdPadOwdNddMYdKPdIOdIOdIOdJIdTLdKudKudKudKudKudKudKudKudKudWBdOAdIQdJJdJJdOCdIVaaadODdOEdFGdOFdKBdFGdIcdFGdFGdOGdOHdOIdHidOJdOKdOLdOMdONdFGabjabiaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaabjabjaaaabjabjabjabjabjbYhdOOcHgdOPcHgdOPcHncWocHfcWwcWncHfcWndOQcdtdORdOSdOTdOUdJxdOVdOWdOXdOWdOYdMldMjdMmdOZdJxdPbdPMdPcdPddPedPedPedPedPedPedPedPfdMYdKPdKQdKPdKQdNSdNRdKudOzdMtdOydKudOzdMtdOydKudOzdJIdKRdNRdNRdKSdJIaaaaaaabjabjaaaaaaabjaaaabjdFGdPjdPkdPldGwdPmdWVdGwdWWdPmdFGabjabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabjabiabiabjabjabjdPpdPqdPqdPqdPqdPrdPsdPtdXodPvdPwdPxdPydPzdPxdPAdPBdPCcbCcdtdOSdPDdPEdJxdPFdPGdPHdPIdPJdPKdOrdPLdOrdKmdPYdMZdNddKpdKodKodKodPNdKodKodKodKodMYdKPdIOdIOdIOdJIdNedKudOzdNfdOydKudOzdLMdOydKudOzdJIdLNdOBdPhdPidKyaaaaaaaaaabiabiabjabiabiabjdFGdPSdPTdFGdFGdPUdPVdGwdPWdPXdFGabjabiabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabjabjabjabjabjdPpdPpdPpdPZdQadXHdPqcNgcbCcEzdQbdQcdQedQfcEzdQgdQndQccEzcEzcgTcdtdOSdQhdQidJxdMkdQjdQkdQkdQldQmdQkdMmdMjdJxdQodMZdNddNadNbdQpdNbdQFdNbdNbdNbdKodMYdKPdIOabjaaadKydOydKudOzdKTdOydKudOzdKTdOydKudOzdJIdPOdPPdPQdPRdKWaaaaaaaaaaaaaaaabjabjabjabjabjdWXdWYdWZdFGdQxdQydGwdQzdQAdFGabjaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjdQBdQBdYJdYKdYLdQKdQLdQOdQQdQJdRbdRcdQMcgTcEzdQNcdtdRjdRjdQPdRkdRjcbCdQRdQSdXscbCdOSdQTdQUdJxdQVdQWdQXdKLdQYdKNdQXdQZdRadJxdRldMZdNddNadNNdNOdNPdNQdNNdNOdNPdRndMYdLKdIOabjaaadKWdOydKudOzdKwdOydKudOzdJIdOydKudNRdQtdNRdPPdPQdRddKWaaaaaaaaaaaaaaaabiabiaaaabiabjdXdabjdXedFGdXfdXgdGwdXgdXfdFGabjabiabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjdQBdQBdYIdYJdYKdQKdQLdQOdQQdQJdRbdRcdQMcgTcEzdQNcdtdRjdRjdQPdRkdRjcbCdQRdQSdXscbCdOSdQTdQUdJxdQVdQWdQXdKLdQYdKNdQXdQZdRadJxdRldMZdNddNadNNdNOdNPdNQdNNdNOdNPdRndMYdLKdIOabjaaadKWdOydKudOzdKwdOydKudOzdJIdOydKudNRdQtdNRdPPdPQdRddKWaaaaaaaaaaaaaaaabiabiaaaabiabjdXdabjdXedFGdXfdXgdGwdXgdXfdFGabjabiabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjdQBabjabjabjabjdPpdPpdPpdRodRpdRqdPqcdvcbCcEzdRmdRrdRBcbCdRCdREdRFcMTdRsdQScdtcisdOSdRtdRudJxdRvdRvdKLdRwdXIdRydLtdRzdRAdJxdEzdMZdNddNadOwdRGdOwdRHdOwdRGdOwdKodMYdKPdIOabjaaadLLdOydKudOzdMtdOydKudOzdMtdOydKudNRdQtdNRdPPdPQdRddKWaaaaaaaaaaaaaaaaaaaaaaaaabiabjabjabjabjdFGdFGdNrdFGdNrdFGdFGabjabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjdQBabjaaaaaaabjabjabjdPpdPqdPqdPqdPqcdtciscEzdRDdRKdRQdRZdSccdtdRQdRZdRIdRJdSndRLdIxdIxdRMdJxdRNdJxdJxdJxdJxdROdJxdRPdJxdJxdSodMpdRRdRSdRTdRTdRTdRTdRTdRTdRUdRVdMYdKPdIOdIOdIOdJIdKtdKudKudKudKudKudKudKudKudKudKvdJIdRedRWdRXdLOdLLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjabjaaaabjaaaabjabjabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjdQBabjaaaaaaaaaaaaabjabjabjabjabjcCxdSndSpcEzdSacdtdRQdRZdSbdRKdSqcdtdSacEzcJKcJKdIxdXVdSedJxdSfdKmdSgdShdSidSjdSkdSldSmdSrdKPdSsdStdSudStdStdSBdStdXJdStdSDdStdSEdKPdKQdKPdKQdLBdNRdSvdSvdSvdSvdSwdSvdSvdSvdSvdLOdJIdRYdSxdSxdSydJIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabjabiabjabiaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabjabjabiabiabjdQBabjabiabiabiabiabiabjabiaaaabjbYhcJKcJKcEzdSAdSFdSGdSOdSQdSWdTgdSHdSIcEzabjabjdIxdIxdRMdIxdIxdIxdIxdIxdSJdSKdSLdSMdSNdIxdThdSPdSPdTidSRdSSdSTdSUdSPdSRdSVdTkdSXdSYdSZdTadTadOAdIQdTbdIRdISdIQdIUdITdSzdSzdITdIUdTddIQdIQdIQdIQdIVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaabjaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaaaaaaaabjaaaaaaaaadQBaaaaaaaaaabjaaaaaaaaaaaaaaaabjabjabjabjdQSdTfdUidUldUScfndTjcitdVodTlcEzaaaabjdIxdTmdTndTodTpdTqdIxdTrdTsdTtdTudTvdTwdIxdXWdTydXKdTAdTBdTCdTDdTEdTadTFdTGdTHdTIdTJdQIdTKdQIdLBdTMdTMdTNdTNdTOdJIdTPdJKdJKdTQdJIdTcdTRdTSdTRdLOdITaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadTUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaadTVdTVdTVdTVdTVaaadQBaaadTVdTVdTVdTVdTVaaaabiaaaaaaabiabiabjcEzdQbdTWdTWdQSdQScEzdTWdTWdQbcEzaaaabjdTXdTYdTZdUadUbdUcdUddUcdUcdUedUfdUgdUhdIxdWzdSPdUjdUkdWAdUmdUndUodUpdUqdUrdUsdUtdUudUvdTadTadJIdUwdTMdTMdTMdTMdTbdUxdKudKudUydJIdUzdUAdUBdSvdUCdTTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjdYMdYNdYNdYNdYNdYOdQBdYJdYPdYPdYPdYPdYQabjabiabjabjabjabiabjabjabjabjabjabjabjabjabjabjabjabjabjabjdIxdUJdUKdULdUMdUNdIxdUOdSidUPdUQdUQdURdIxdWGdSPdUTdUUdUVdUWdUXdUYdTadUZdVadVbdVcdXQdVeabjaaadJIdUwdTMdTMdVfdVgdITdVhdKudKudVidOAdWCdVkdVldJKdVmdTTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjdYLdYMdYMdYMdYMdYNdQBdYIdYOdYOdYOdYOdYPabjabiabjabjabjabiabjabjabjabjabjabjabjabjabjabjabjabjabjabjdIxdUJdUKdULdUMdUNdIxdUOdSidUPdUQdUQdURdIxdWGdSPdUTdUUdUVdUWdUXdUYdTadUZdVadVbdVcdXQdVeabjaaadJIdUwdTMdTMdVfdVgdITdVhdKudKudVidOAdWCdVkdVldJKdVmdTTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaadVndVndVndVndVnabjdQBabjdVndVndVndVndVnaaaaaaaaaaaaaaaabjaaaabjabiabiabiabjabiabiabjabiabiabiaaaabjdIxdIxdTXdTXdTXdIxdIxdIxdTXdTXdTXdTXdIxdIxdWHdVpdVpdVqdVqdVqdVpdVpdVpdVpdVqdVqdVqdVpdVqaaaaaadJIdVrdVrdVsdVrdVgdJIdVtdVudVudUBdWDdWEdJIdWFdWFdWFdITaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaabjaaaaaaabjdQBabjaaaaaaabjaaaaaaaaaaaaabiabjabiabiabiabjaaaabjaaaaaaabjaaaaaaabjaaaabjaaaabjabjabjabjaaaabjabjabjabjabjaaaaaaabjabjabjdYRabjabjabjaaaabjabjabjabjabjabjaaaabjabjabjaaaaaadVzdIQdITdIUdIUdIQdVAdVBdWJdWJdVBdTddIQdVCdIUdITdIQdVDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaabjaaaaaaabjdQBabjaaaaaaabjaaaaaaaaaaaaabiabjabiabiabiabjaaaabjaaaaaaabjaaaaaaabjaaaabjaaaabjabjabjabjaaaabjabjabjabjabjaaaaaaabjabjabjdYQabjabjabjaaaabjabjabjabjabjabjaaaabjabjabjaaaaaadVzdIQdITdIUdIUdIQdVAdVBdWJdWJdVBdTddIQdVCdIUdITdIQdVDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaadTVdTVdTVdTVdTVabjabjdQBabjabjdTVdTVdTVdTVdTVaaaabiaaaaaaaaaaaaabjabiabiabiabjabiabiabiabiabjabjabjabjabiabiabiabjabiabiaaaabiabiabjabjabiabiabjacFabjabiabjabjabjabiabiabiabiabjabjabjabiabiaaaaaaaaaaaaaaadVzdIVdVEdVFdVGdVGdVGdVGdVFdVHdOAdVDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjdYMdYNdYNdYNdYNdYOdQBdQBdQBdYJdYPdYPdYPdYPdYQabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaaaaaaaaaaabjaaaaaaaaaabjaaaaaaaaaabjaaaaaaabjaaaaaaaaaabjaaaaaaaaaaaaaaaaaaaaadJIdVIdVJdVGdVGdVGdVKdVLdVMdJIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjabjdYLdYMdYMdYMdYMdYNdQBdQBdQBdYIdYOdYOdYOdYOdYPabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaabjaaaaaaaaaaaaabjaaaaaaaaaabjaaaaaaaaaabjaaaaaaabjaaaaaaaaaabjaaaaaaaaaaaaaaaaaaaaadJIdVIdVJdVGdVGdVGdVKdVLdVMdJIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaadVndVndVndVndVnabjabjdQBabjabjdVndVndVndVndVnaaaabiaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiabiabiabjabiabiabiabjabiabiabiabjabiabiabjabiabiabiabjabiabiaaaaaaaaaaaaaaaaaaaaadITdVNdVJdVOdVPdVQdVOdVLdVRdITaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaabjaaaaaaabjdQBabjaaaaaaabjaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadJIdVSdVTdVUdVVdVWdVXdVYdVZdJIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaadTVdTVdTVdTVdTVabjdQBabjdTVdTVdTVdTVdTVaaaabjabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadVzdIQdITdITdITdITdITdITdIQdVDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjdYMdYNdYNdYNdYNdYOdQBdYJdYPdYPdYPdYPdYQabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaabjaaadVndVndVndVndVnabjdYSabjdVndVndVndVndVnaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaabjaaaaaaaaadYTaaaaaaaaaabjaaaaaaaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabjabiabiabjabjaaadYTaaaabjabjabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjdYLdYMdYMdYMdYMdYNdQBdYIdYOdYOdYOdYOdYPabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaabjaaadVndVndVndVndVnabjdYRabjdVndVndVndVndVnaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaabjaaaaaaaaadYSaaaaaaaaaabjaaaaaaaaaabjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabjabiabiabjabjaaadYSaaaabjabjabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjdWcabjabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabjaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabjabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -11014,4 +11013,3 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} - diff --git a/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm b/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm index a7e94092d84..18303258cc1 100644 --- a/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm +++ b/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm @@ -1255,7 +1255,7 @@ "ayg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/crew_quarters/sleep) "ayh" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/carpet,/area/crew_quarters/sleep) "ayi" = (/turf/simulated/floor/carpet,/area/crew_quarters/sleep) -"ayj" = (/obj/machinery/door/poddoor{id_tag = "QMLoaddoor2"; name = "supply dock loading door"},/obj/machinery/conveyor/east{id = "QMLoad2"},/turf/simulated/shuttle/plating,/area/shuttle/supply) +"ayj" = (/obj/machinery/door/poddoor{id_tag = "QMLoaddoor2"; name = "supply dock loading door"},/obj/machinery/conveyor/east{id = "QMLoad2"},/obj/structure/plasticflaps/mining,/turf/simulated/shuttle/plating,/area/shuttle/supply) "ayk" = (/obj/structure/closet/crate/hydroponics,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/starboard) "ayl" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating,/area/maintenance/starboard) "aym" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -1576,7 +1576,7 @@ "aEp" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/junction{dir = 4; icon_state = "pipe-j2"; tag = "icon-pipe-j1 (WEST)"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep) "aEq" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/sleep) "aEr" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) -"aEs" = (/obj/item/ore/iron,/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock{name = "\improper Mining Office"}) +"aEs" = (/obj/item/stack/ore/iron,/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aEt" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge) "aEu" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) "aEv" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/spawner/lootdrop{loot = list(/obj/structure/grille,/obj/structure/grille,/obj/structure/grille,/obj/structure/grille,/obj/structure/grille,/obj/item/cigbutt,/obj/item/trash/cheesie,/obj/item/trash/candy,/obj/item/trash/chips,/obj/item/trash/pistachios,/obj/item/trash/plate,/obj/item/trash/popcorn,/obj/item/trash/raisins,/obj/item/trash/sosjerky,/obj/item/trash/syndi_cakes); name = "maint grille or trash spawner"},/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -1591,7 +1591,7 @@ "aEE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/engine/engineering) "aEF" = (/obj/item/multitool,/turf/simulated/floor/plating/airless,/area/engine/engineering) "aEG" = (/obj/item/radio/off,/turf/simulated/floor/plating/airless,/area/engine/engineering) -"aEH" = (/obj/structure/closet/crate,/obj/item/ore/glass,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"aEH" = (/obj/structure/closet/crate,/obj/item/stack/ore/glass,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aEI" = (/obj/machinery/door/airlock/shuttle{name = "Mining Shuttle Airlock"; req_access_txt = "0"},/obj/docking_port/mobile{dir = 8; dwidth = 3; height = 5; id = "mining"; name = "mining shuttle"; width = 7},/obj/docking_port/stationary{dir = 8; dwidth = 3; height = 5; id = "mining_home"; name = "mining shuttle bay"; width = 7},/turf/simulated/shuttle/plating,/area/shuttle/mining) "aEJ" = (/obj/machinery/door/airlock/external{name = "Mining Dock Airlock"; req_access = null; req_access_txt = "0"},/turf/simulated/floor/plating,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aEK" = (/turf/simulated/floor/plasteel,/area/quartermaster/miningdock{name = "\improper Mining Office"}) @@ -1712,7 +1712,7 @@ "aGV" = (/obj/item/clothing/glasses/meson,/obj/structure/closet/crate,/obj/item/poster/random_contraband,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/starboard) "aGW" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/starboard) "aGX" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/hardsuit/engineering,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/hardsuit/engineering,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/engine/engineering) -"aGY" = (/obj/item/ore/silver,/obj/item/ore/silver,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock{name = "\improper Mining Office"}) +"aGY" = (/obj/item/stack/ore/silver,/obj/item/stack/ore/silver,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aGZ" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/camera{c_tag = "Mining Dock"; dir = 8; network = list("SS13")},/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aHa" = (/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/engine/engineering) "aHb" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/construction/Storage{name = "Storage Wing"}) @@ -2135,7 +2135,7 @@ "aPc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 1},/area/security/brig) "aPd" = (/obj/machinery/the_singularitygen{anchored = 1},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plating/airless,/area/space) "aPe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"aPf" = (/obj/structure/plasticflaps,/obj/machinery/conveyor/east{id = "QMLoad2"},/turf/simulated/floor/plating,/area/quartermaster/storage) +"aPf" = (/obj/machinery/conveyor/east{id = "QMLoad2"},/obj/structure/plasticflaps/mining,/turf/simulated/floor/plating,/area/quartermaster/storage) "aPg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless,/area/space) "aPh" = (/obj/structure/table,/obj/item/hatchet,/obj/item/crowbar,/obj/machinery/light{dir = 1},/obj/item/plant_analyzer,/obj/item/reagent_containers/glass/bucket,/obj/item/cultivator,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) "aPi" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/grass,/area/hallway/secondary/construction{name = "\improper Garden"}) @@ -2163,7 +2163,7 @@ "aPE" = (/obj/machinery/conveyor/northeast/ccw{id = "QMLoad2"},/turf/simulated/floor/plating,/area/quartermaster/storage) "aPF" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "hop"; name = "privacy shutters"; opacity = 0},/turf/simulated/floor/plating,/area/crew_quarters/heads) "aPG" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "hop"; name = "privacy shutters"; opacity = 0},/turf/simulated/floor/plating,/area/crew_quarters/heads) -"aPH" = (/obj/machinery/door/poddoor{id_tag = "QMLoaddoor"; name = "supply dock loading door"},/obj/machinery/conveyor/west{id = "QMLoad"},/turf/simulated/shuttle/plating,/area/shuttle/supply) +"aPH" = (/obj/machinery/door/airlock/external{id_tag = "supply_home"; name = "Supply Dock Airlock"; req_access_txt = "31"},/turf/simulated/floor/plating,/area/quartermaster/storage) "aPI" = (/obj/machinery/seed_extractor,/obj/machinery/alarm{pixel_y = 23},/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) "aPJ" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/quartermaster/storage) "aPK" = (/obj/structure/table,/obj/machinery/computer/guestpass,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/engine/engineering) @@ -2171,7 +2171,7 @@ "aPM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/window/reinforced{dir = 1; pixel_y = 1},/obj/effect/decal/warning_stripes/arrow{icon_state = "4"; dir = 8},/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 8},/turf/simulated/floor/plasteel,/area/quartermaster/storage) "aPN" = (/obj/machinery/navbeacon{codes_txt = "delivery"; dir = 8; location = "QM #1"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/window/northleft,/obj/machinery/light{dir = 4},/obj/effect/decal/warning_stripes/yellow,/mob/living/simple_animal/bot/mulebot{home_destination = "QM #1"; suffix = "#1"},/turf/simulated/floor/plasteel,/area/quartermaster/storage) "aPO" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/quartermaster/storage) -"aPP" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/item/ore/glass,/obj/item/ore/iron,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"aPP" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/item/stack/ore/glass,/obj/item/stack/ore/iron,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "aPQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "aPR" = (/obj/machinery/door/window/northleft{dir = 8; name = "MuleBot Supply Access"; req_access_txt = "50"},/obj/structure/plasticflaps{opacity = 1},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aPS" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11},/obj/structure/mirror{pixel_x = 28},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) @@ -2245,7 +2245,7 @@ "aRi" = (/obj/machinery/pipedispenser,/turf/simulated/floor/plating,/area/construction) "aRj" = (/obj/machinery/door/airlock/command/glass{name = "Bridge Access"; req_access_txt = "19"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/bridge) "aRk" = (/obj/machinery/door/airlock/shuttle{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/turf/simulated/shuttle/plating,/area/shuttle/supply) -"aRl" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"; req_access_txt = "31"},/turf/simulated/floor/plating,/area/quartermaster/storage) +"aRl" = (/obj/machinery/door/poddoor{id_tag = "QMLoaddoor2"; name = "supply dock loading door"},/obj/machinery/conveyor/west{id = "QMLoad"},/obj/structure/plasticflaps/mining,/turf/simulated/shuttle/plating,/area/shuttle/supply) "aRm" = (/obj/machinery/light/small,/turf/simulated/floor/plating,/area/quartermaster/storage) "aRn" = (/obj/machinery/atmospherics/unary/portables_connector,/obj/machinery/portable_atmospherics/pump,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) "aRo" = (/turf/simulated/floor/plasteel,/area/quartermaster/storage) @@ -2443,7 +2443,7 @@ "aUY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/construction) "aUZ" = (/obj/structure/table,/obj/item/stack/cable_coil{amount = 5},/obj/item/flashlight,/turf/simulated/floor/plasteel,/area/construction) "aVa" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/quartermaster/storage) -"aVb" = (/obj/structure/plasticflaps,/obj/machinery/conveyor/west{id = "QMLoad"},/turf/simulated/floor/plating,/area/quartermaster/storage) +"aVb" = (/obj/machinery/conveyor/west{id = "QMLoad"},/obj/structure/plasticflaps/mining,/turf/simulated/floor/plating,/area/quartermaster/storage) "aVc" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/simulated/floor/plating,/area/hallway/secondary/construction{name = "\improper Garden"}) "aVd" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "aVe" = (/obj/machinery/conveyor/northwest/ccw{id = "QMLoad"},/turf/simulated/floor/plating,/area/quartermaster/storage) @@ -7386,7 +7386,7 @@ "cMb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/patient_b) "cMc" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 20; pixel_x = -3; pixel_y = 6},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/structure/extinguisher_cabinet{pixel_x = 27},/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/assembly/robotics) "cMd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue) -"cMe" = (/obj/structure/filingcabinet/chestdrawer{desc = "A large drawer filled with autopsy reports."; name = "Autopsy Reports"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue) +"cMe" = (/obj/structure/filingcabinet/chestdrawer/autopsy,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue) "cMf" = (/obj/machinery/camera{c_tag = "Morgue"; dir = 2; network = list("SS13","Medbay")},/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue) "cMg" = (/obj/structure/closet,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/hallway/primary/aft) "cMh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/aft) @@ -8606,10 +8606,10 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaaHkaMLaMLaMLaLBaLBaLBaLBaLBaLBaMLaMLaMMaHkaHvalLaaaaMNaMOaMOaMOaMOaMOaMNabqabqaKlavKaMVaMSaMTaMYaNbaMWaMZaNYaNcaOxaOfaNXaNaaRBaNeaNfaRGaNhaNiaNjaNkaNlcDtaRNbTqaKmaaaaaaaaaabqaaaaaaaaaabqaaaaaaaaaaKoaNraNsaNtaMkaNuaNvaNwaNxaRSaNzaNAaNBaNCaMkaSDaRWaNFaNGaJXaMnaAVaBIaSJaNKaJwaPSaBIaTgaBIaNMaBIaNNaNOaNPaNQaNQaNQaNQaNQaNQaNQaNQaNQbuCaNRaxhaNSaNTaNUaNVaCgaPKaIAaMFaOvaOgaPLaTlaTJaOcaOdaOeaTKaDLaLNarAaJWabqabqaOmaPdaOqabqaOjaaaarAaLNaWAaTOaCgaDoabqabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaaaaUUaUUaUUaUUaUUaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaHkaOkaLBaLBaLBaLBaLBaLBaLBaLBaMLaMLaMLaOlaPeapfaaaaMNaOnaMOaMOaMOaMOaMNaTUaKlaKlawbaxXaOraOraOsaOtaOuaOWaPMaPNapfaOyapfapfapfapfaOzaOAavxaOCaKnavxaOAaOAaOAaOAaOFaaaaaaaOGaOGaOGaOGaOGaOGaOGaaaaaaaMfaOHaOIaOJaOKaOLaNAaOMaUaaOOavBaOQaORaOSaMkaOTaOUaOVaNHaKVaMnbViaBIaBIaBIaOZaOZaBIaBIaBIaBIaBIbVmbWpbVoaNQaUfaPqaPhaPIaPzaPiaPjaNQaPkaGWaxhaNTaNTaPlaOdbXuaHaaPnaPoaPpaUhaCgaUFaPsaPtaPuaPvaRfaUKaUMarAaaaaaaabqaRhcspaSkabqaaaaaaaTMaPgaIfaLOaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaaaaaaaaaaaaaaabdabdabdabdabdabdabdaXHaXIaWBaXJaWBaXKaXOabdabdabdabdabdabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaabqaHkaPAaLBaLBaLBaLBaPBaLBaLBaLBaLBaMLaPDaHkaECapfaaaaMNaMOaMOaMOaMOaMOayjaPfaOpaPfaPEaSmaPJaPQaPPaQFaQEaPOaQGaQHaPRbwqaPTaPTaPTaPTaPVaOAaYOaPXaPYaPZaQaaQbaQcbeBaQeaQfaQgaQgaQhaUPaQjaQkaQlaQmaQmaQnaQoaQpaKGaNtaMkaQqaNAaQraNAaQsaNAaQtaNAaNAaMkaQubeLaOVaQwaQxaMnbXQaQzaQAaQBaQCaQDaRnaQIaVpaVmaVraQJaQKaQLaNQaQMaQNaQNaQNaQOaQPaQQaNQawvaGWaxhaQSaQSaQTaOdbXuaJLaQUaMFaSEaSnaPLbELaVsaRbaRcaRdaSoaDLaLNarAaaaaReabqaSpaTIaTGabqabqaJWarAaLNaWAaKpaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaaaaUUaUUaUUaUUaUVaXNbbXbbWbbYbbWbbZbgUaUVaUUaUUaUUaUUaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGwaLBaLBaLBaLBaLBaLBaLBaLBaLBaLBaRiaHkaHkatkapfabqaMNaMOaMOaMOaMOaMOaRkaRlaRmaRlaSbaSmaRoaRoaRpaRoaOuaRqaSjaSlapfapfapfapfapfapfazSaOAbgkaRuaRvaRwaRxaRxaRxbgyaOFaaaaOGaVwaRAaRAaRAaRAaRAaVAaOGaaaaMfaRCaMiaMjaMkaRDaREaRFaNAaSyaNAaRHaRIaNAaRJaRKaRLaRMaVBaROaMnbYFaQVaQVaQVaQVaQWaRTaRTaRUaRUaRVaVHaRXaRYaRZaSaaSBaSAaSBaScaSdaSeaNQaSfaGWaxhaQSaSgaShaSiaCgaSCaIAaMFaLsaVNaCgaWbaWgaTRaTRaTRaTVaDLaLNarAaaaaaaabqabqabqabqabqaaaaaaarAaLNaWAaKpaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbcbbcabcabcabcabcabzhbzhbdJbzhbzhbcabcabcabcabcaaXKaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGwaLBaLBaLBaLBaLBaLBaLBaLBaLBaLBaRiaHkaHkatkapfabqaMNaMOaMOaMOaMOaMOaRkaPHaRmaPHaSbaSmaRoaRoaRpaRoaOuaRqaSjaSlapfapfapfapfapfapfazSaOAbgkaRuaRvaRwaRxaRxaRxbgyaOFaaaaOGaVwaRAaRAaRAaRAaRAaVAaOGaaaaMfaRCaMiaMjaMkaRDaREaRFaNAaSyaNAaRHaRIaNAaRJaRKaRLaRMaVBaROaMnbYFaQVaQVaQVaQVaQWaRTaRTaRUaRUaRVaVHaRXaRYaRZaSaaSBaSAaSBaScaSdaSeaNQaSfaGWaxhaQSaSgaShaSiaCgaSCaIAaMFaLsaVNaCgaWbaWgaTRaTRaTRaTVaDLaLNarAaaaaaaabqabqabqabqabqaaaaaaarAaLNaWAaKpaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbcbbcabcabcabcabcabzhbzhbdJbzhbzhbcabcabcabcabcaaXKaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSqaSraSsaaaaGwaLBaLBaLBaLBaLBaLBaStaSuaSuaSvaSwaHkaqBatkapfabqaMNaMOaMOaMOaMOaSxaMNaTUaKlaKlaSFaSmaSzaSNaSGaUcaTLaTEaUdaUtaLKaSIaWhaSKbZaapfaSMaOAaUwaRuaSOaSPaSQaSQaSRaSSaOFaaaaMgaSUaRAaSVaSWaSXaRAaSYaMgaaaaMfaMhaMiaMjaMkaSZaTaaTbaTcaTdaTcbjbaTfaWiaMkaWkaUOaTjaTkaWlaMnaTmaToaToaTpaTqaTraTsaTtaTuaTvaTwaTxaTyaTzaTAaTBaTCaTDaQXaTFaUbaTHaNQasIaGWaxhaCgaCgaCgaCgaCgaFRaWnaQYaURaWpaCgaCgaPaaNdaCgaDLaDLaDLaLNarAaaaaaaaaaabqaaaaaaaaaaaaaaaaTMaPgaIfaKpaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbdKbdNbdNbdNbdNbdNbdNbdObdNbdNbdNbdNbdNbdNbdPbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGaTNaWraTNacJaHkaLBaLBaLBaLBaLBaLBaLBaLBaLBaTPaTQaHkauAaWsapfaaaaMNaMOaMOaMOaMOaMOaTSaRlaTTaRlaSbaSmaRoaRoaRpaRoaOuaOWaVaaVdaTWaTXaTYaTZaWtapfaVkaUTaUQaRuaRuaUebmJaRuaUgaWuaOFaaaaMPaUjaUkaUlaUmaUlaUkaUnaNpaaaaMfaMhaUpaUqaMkaNqaNqaNqaNqaUsaNqaNqaOoaNqaMkaMncjdaUvconaMnaMnaWyaToaTpaTqaUyaUzaTnaToaTqaTqaTpaUAaUBaUCaUDaUEaSBaSAaSBaScaUGaUHaNQaUIaGWaxhaWNaULaWXaSTaVgaVfaIAaMFaLsaVhaJZaViaXsaXoaLEaOaaDLaDLaLNarAaJWaaaaaaaJWaaaaaaaaaaaaaJWarAaLNaIfaKpaCgaNdabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbeXbeXbeXbeXbeXbdObeXbeXbeXbeXbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWDaTNaUWaTNaWDaHkaPAaMLaLBaLBaLBaLBaLBaLBaLBaUYaUZaHkaHvapdapfaaaaMNaMOaMOaMOaMOaMOaPHaVbaRzaVbaVeaSmaRoaXwaWSaYiaYhaVjaOuaVvaVlaXtaVnaVoaXBapfaVqaOAaYjaRuaRubmKaVtaVuaUgaRRaOFaaaaOGaXEaVxaUkaVyaRAaVzaXGaOGaaaaMfaXRaOIaOJaVCaVDaVEaVEaVEaNCaVEaVEaVFaVGaMkaXZaVIaVJaVKaVLcaHaVKcbeaVOaVOaVPaVQaVRaVSaVTaVUaVVaVSaVWaVXaNQaVYaVZaWaaWaaWcaWdaWeaNQasJaWfaxhaYEaYDaYGaUKaYQaYNaWmaYSaZcaYWaZeaZdaZhaZgaLEbMOaDLbeZaLNarAarAddZarAarAddZarAarAddZarAarAaLNaWAaLOaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaabdabdaXHbdMbeWbeXbeXbeXbeXaXLaXLaXMaXLaXLbeXbeXbeXbeXbeYbdMaXOabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGaTNaWraTNacJaHkaLBaLBaLBaLBaLBaLBaLBaLBaLBaTPaTQaHkauAaWsapfaaaaMNaMOaMOaMOaMOaMOaTSaPHaTTaPHaSbaSmaRoaRoaRpaRoaOuaOWaVaaVdaTWaTXaTYaTZaWtapfaVkaUTaUQaRuaRuaUebmJaRuaUgaWuaOFaaaaMPaUjaUkaUlaUmaUlaUkaUnaNpaaaaMfaMhaUpaUqaMkaNqaNqaNqaNqaUsaNqaNqaOoaNqaMkaMncjdaUvconaMnaMnaWyaToaTpaTqaUyaUzaTnaToaTqaTqaTpaUAaUBaUCaUDaUEaSBaSAaSBaScaUGaUHaNQaUIaGWaxhaWNaULaWXaSTaVgaVfaIAaMFaLsaVhaJZaViaXsaXoaLEaOaaDLaDLaLNarAaJWaaaaaaaJWaaaaaaaaaaaaaJWarAaLNaIfaKpaCgaNdabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbeXbeXbeXbeXbeXbdObeXbeXbeXbeXbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWDaTNaUWaTNaWDaHkaPAaMLaLBaLBaLBaLBaLBaLBaLBaUYaUZaHkaHvapdapfaaaaMNaMOaMOaMOaMOaMOaRlaVbaRzaVbaVeaSmaRoaXwaWSaYiaYhaVjaOuaVvaVlaXtaVnaVoaXBapfaVqaOAaYjaRuaRubmKaVtaVuaUgaRRaOFaaaaOGaXEaVxaUkaVyaRAaVzaXGaOGaaaaMfaXRaOIaOJaVCaVDaVEaVEaVEaNCaVEaVEaVFaVGaMkaXZaVIaVJaVKaVLcaHaVKcbeaVOaVOaVPaVQaVRaVSaVTaVUaVVaVSaVWaVXaNQaVYaVZaWaaWaaWcaWdaWeaNQasJaWfaxhaYEaYDaYGaUKaYQaYNaWmaYSaZcaYWaZeaZdaZhaZgaLEbMOaDLbeZaLNarAarAddZarAarAddZarAarAddZarAarAaLNaWAaLOaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaabdabdaXHbdMbeWbeXbeXbeXbeXaXLaXLaXMaXLaXLbeXbeXbeXbeXbeYbdMaXOabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaWDbkjaWFblyaWDaHkaLBaMLaWHaWIaWJaLBaLBaLBaLBaUYaWKaHkaHvapdalLaaaaMNaOnaMOaMOaMOaMOaMNaTUaKlaKlaWLaSmaRoaRoaRpaRoaOuaVjaWMaXnaVlaWOaWPaWQaWRapfazSaOAbanaWTaWTaWUaWVaRuaUgaWWaOFabqaOGaOGaOGaZxaWYaWZaOGaOGaOGabqaMfaOHaXaaMjaXbaXcaVEaVEaVEaXdaVEaVEaXeaNCaXbaQCaXfaXgaXhaToayuaToaTnaTpaToaXjaToaXkaTpaTqaToaTqaTpaXlaXmaNQaZAaXraXpaXvaXuaPiaQQaNQaZBaGWaxhaZIaXxaXFaZMaXQaXyaXzaXAcczccyccHccHbaoaZOaLEaOaaDLarAdeaaJtaJtbapaJtaJtbapaJtaJtbapaJtaJtdecaWAaKpaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaabdaaabgMbdMbeWbeXbeXaXLaXLaXLaXLbfabpvaXLaXLaXLbeXbeXbeYbdMbMnaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaWDayCaYaaYgaXSaHkaXTaMLaXUaXVaXWaMLaMLaMLaXXaXYbavaHkaYmaYbapfabqaYcaYdaMOaMOaMOaYeaYfabqabqaKlaWLaYoaPJaPQbarbaTbasaYkaYlbaFaYnaYnaYnaYnaYnapfaYXaYpaYqaYraYraYsaYtaYuaYvaYwaUoaaaaaaaaaaOGaOGaYyaOGaOGaaaaaaaaaaKoaNraYzaMjaYAaYBaYCbaObaLaNCaNCaYFbaSaNCaYAaQCaYHaYIaYJaYKcdPaYKaYMbbebmLaYPaYKaYKaYKaYKaYKaYKbbuaYRbbvaNQaNQaNQaNQaVcaNQaNQaNQaNQaoGaGWaxhaYVaYUaYUaSTaYZaYYaZwaZfbawbbwbaAaQUbbCbaBaHiccuaCgaaaabqaaaabqaaaaaaaaaaaaabqaaaaaaabqabqaWAbbIaESaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdclHbcbbfcbfbbgNaXLaXLbdIbdIbdIbgPbbJbdIbdIaXLaXLbgNbgQbgSbgRaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaWDaWDaZiaZjaWDaWDaWDaZkaWDaWDaZlaZmaWDaWDaWDaZnaWDaWDaWqapfapfabqaZpaZqaZraZraZraZqaZsabqabqaZtaZuaSmaRoaRoaRpaRoaOuaZvaOubaCaYnbbPaZyaZzbbTapfazSaOAbbVaZCaZDaZEaZFaZGaZHbcdaOFaZJaUraZJaZLbclaZNbcoaZLaZJaUraZJaMfaZPaZQaZRaZSaMkaMkaMkaMkaZTaZUaZVaNCaZWaMkaQCaZXaTraZYaZZaZZaZZaZZaoGaoGaoGbaababbacbadbaebafaZZbagbagaoGbahazyazybaDazyazyazybakazybalaxhbambambambambbMbaUbcrbbObctbcqbatbaEbcGbcCaCgaCgaCgabqabqaDibaGbaxaDiaDiaDiaDiaDiaDibaGaDibdpaESaCgaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaabdaXHbgTbicbeXbeXaXLbdIbidbifbdubihbdwbiibidbdIaXLbeXbeXbijbgTaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -8760,3 +8760,4 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} + diff --git a/_maps/map_files/MetaStation/z4.dmm b/_maps/map_files/MetaStation/z4.dmm index 51fc57cc738..e7e0eba3e75 100644 --- a/_maps/map_files/MetaStation/z4.dmm +++ b/_maps/map_files/MetaStation/z4.dmm @@ -164,14 +164,14 @@ "dh" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/simulated/wall,/area/derelict/bridge/access) "di" = (/turf/simulated/wall/r_wall,/area/derelict/gravity_generator) "dj" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel,/area/derelict/solar_control) -"dk" = (/obj/item/ore/iron,/obj/item/ore/iron,/obj/item/ore/iron,/turf/space,/area/space) +"dk" = (/obj/item/stack/ore/iron,/obj/item/stack/ore/iron,/obj/item/stack/ore/iron,/turf/space,/area/space) "dl" = (/turf/simulated/floor/plating/airless{icon_state = "damaged2"},/area/derelict/gravity_generator) "dm" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating/airless{icon_state = "damaged5"},/area/derelict/gravity_generator) "dn" = (/obj/machinery/door/airlock/maintenance,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/derelict/bridge/access) "do" = (/turf/simulated/wall,/area/derelict/bridge/access) "dp" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/derelict/bridge/access) "dq" = (/turf/simulated/floor/plating/airless{icon_state = "damaged4"},/area/derelict/gravity_generator) -"dr" = (/obj/item/ore/slag,/turf/simulated/floor/plating/airless{icon_state = "damaged4"},/area/derelict/gravity_generator) +"dr" = (/obj/item/stack/ore/slag,/turf/simulated/floor/plating/airless{icon_state = "damaged4"},/area/derelict/gravity_generator) "ds" = (/turf/simulated/floor/plating/airless{icon_state = "damaged5"},/area/derelict/gravity_generator) "dt" = (/turf/simulated/floor/plasteel,/area/derelict/bridge/access) "du" = (/obj/structure/rack,/obj/item/melee/classic_baton,/turf/simulated/floor/plasteel,/area/derelict/bridge/access) @@ -184,7 +184,7 @@ "dB" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/derelict/bridge/access) "dC" = (/obj/item/screwdriver,/turf/simulated/floor/plating/airless{icon_state = "damaged5"},/area/derelict/gravity_generator) "dD" = (/obj/machinery/gravity_generator/main/station{on = 0},/turf/simulated/floor/plating/airless,/area/derelict/gravity_generator) -"dE" = (/obj/item/ore/slag,/turf/space,/area/space) +"dE" = (/obj/item/stack/ore/slag,/turf/space,/area/space) "dF" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/simulated/wall,/area/derelict/bridge/access) "dG" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/simulated/floor/plasteel,/area/derelict/bridge/access) "dH" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/simulated/floor/plasteel,/area/derelict/bridge/access) @@ -355,7 +355,7 @@ "gQ" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary) "gR" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0;name = "Worn-out APC";pixel_y = -24},/turf/simulated/floor/plating/airless,/area/derelict/bridge/access) "gS" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating/airless,/area/derelict/bridge/access) -"gT" = (/obj/item/ore/slag,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine) +"gT" = (/obj/item/stack/ore/slag,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine) "gU" = (/obj/item/shard,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine) "gV" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine) "gW" = (/turf/simulated/wall/r_wall,/area/derelict/hallway/primary) diff --git a/_maps/map_files/RandomRuins/SpaceRuins/onehalf.dmm b/_maps/map_files/RandomRuins/SpaceRuins/onehalf.dmm index c95082eac76..982be66cace 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/onehalf.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/onehalf.dmm @@ -29,7 +29,7 @@ "aC" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/plasteel,/area/ruin/onehalf/dorms_med) "aD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/ruin/onehalf/drone_bay) "aE" = (/obj/structure/disposalpipe/trunk,/turf/simulated/floor/plating/airless,/area/ruin/onehalf/drone_bay) -"aF" = (/obj/structure/disposalpipe/trunk,/obj/item/ore/diamond,/turf/simulated/floor/plating/airless,/area/ruin/onehalf/drone_bay) +"aF" = (/obj/structure/disposalpipe/trunk,/obj/item/stack/ore/diamond,/turf/simulated/floor/plating/airless,/area/ruin/onehalf/drone_bay) "aG" = (/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plating/airless,/area/ruin/onehalf/drone_bay) "aH" = (/obj/item/stack/rods,/turf/space,/area/ruin/onehalf/hallway) "aI" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless,/area/ruin/onehalf/hallway) @@ -153,7 +153,7 @@ "cY" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id_tag = "onehalf bridge"; name = "bridge blast door"},/turf/simulated/floor/plating,/area/ruin/onehalf/bridge) "cZ" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/space,/area/space) "db" = (/obj/structure/table,/obj/item/flashlight,/turf/simulated/floor/plasteel,/area/ruin/onehalf/bridge) -"dc" = (/obj/structure/table,/obj/item/ore/bluespace_crystal,/obj/item/coin/plasma,/turf/simulated/floor/plasteel,/area/ruin/onehalf/bridge) +"dc" = (/obj/structure/table,/obj/item/stack/ore/bluespace_crystal,/obj/item/coin/plasma,/turf/simulated/floor/plasteel,/area/ruin/onehalf/bridge) "dd" = (/obj/structure/closet/firecloset/full,/turf/simulated/floor/plasteel,/area/ruin/onehalf/bridge) "de" = (/obj/machinery/light,/obj/structure/table,/obj/item/storage/firstaid,/turf/simulated/floor/plasteel,/area/ruin/onehalf/bridge) "df" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/space,/area/space) diff --git a/_maps/map_files/RandomZLevels/academy.dmm b/_maps/map_files/RandomZLevels/academy.dmm index 0f9a12fc6f3..4830397aea6 100644 --- a/_maps/map_files/RandomZLevels/academy.dmm +++ b/_maps/map_files/RandomZLevels/academy.dmm @@ -97,7 +97,7 @@ "bS" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster) "bT" = (/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster) "bU" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced{dir = 5},/turf/simulated/floor/plating,/area/awaymission/academy/headmaster) -"bV" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaymission/academy/classrooms) +"bV" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaymission/academy/classrooms) "bW" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/awaymission/academy/classrooms) "bX" = (/obj/effect/decal/cleanable/ash,/turf/simulated/floor/engine,/area/awaymission/academy/classrooms) "bY" = (/obj/structure/target_stake,/turf/simulated/floor/engine,/area/awaymission/academy/classrooms) @@ -114,7 +114,7 @@ "cj" = (/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) "ck" = (/obj/machinery/door/airlock/plasma,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster) "cl" = (/turf/simulated/floor/plasteel{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster) -"cm" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaymission/academy/classrooms) +"cm" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaymission/academy/classrooms) "cn" = (/obj/machinery/computer/area_atmos/area,/turf/simulated/floor/plasteel{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster) "co" = (/obj/machinery/portable_atmospherics/scrubber/huge/stationary,/turf/simulated/floor/plating,/area/awaymission/academy/headmaster) "cp" = (/obj/structure/chair/stool,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster) @@ -154,7 +154,7 @@ "cX" = (/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) "cY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/awaymission/academy/classrooms) "cZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel,/area/awaymission/academy/classrooms) -"da" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaymission/academy/classrooms) +"da" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaymission/academy/classrooms) "db" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/wood,/area/awaymission/academy/classrooms) "dc" = (/turf/simulated/floor/wood,/area/awaymission/academy/classrooms) "dd" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/wood,/area/awaymission/academy/classrooms) @@ -171,7 +171,7 @@ "do" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel,/area/awaymission/academy/classrooms) "dp" = (/turf/simulated/floor/mech_bay_recharge_floor,/area/awaymission/academy/classrooms) "dq" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms) -"dr" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaymission/academy/classrooms) +"dr" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaymission/academy/classrooms) "ds" = (/obj/structure/chair/wood/normal{dir = 1},/turf/simulated/floor/wood,/area/awaymission/academy/classrooms) "dt" = (/turf/simulated/floor/plasteel{icon_state = "green"; dir = 8},/area/awaymission/academy/classrooms) "du" = (/obj/structure/chair/stool,/turf/simulated/floor/plasteel,/area/awaymission/academy/classrooms) diff --git a/_maps/map_files/RandomZLevels/moonoutpost19.dmm b/_maps/map_files/RandomZLevels/moonoutpost19.dmm index 12e7ca4df90..870a6f075a8 100644 --- a/_maps/map_files/RandomZLevels/moonoutpost19.dmm +++ b/_maps/map_files/RandomZLevels/moonoutpost19.dmm @@ -41,7 +41,7 @@ "aO" = (/obj/machinery/gateway{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "vault"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "aP" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "aQ" = (/obj/machinery/gateway{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "vault"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) -"aR" = (/obj/item/ore/iron{pixel_x = 7; pixel_y = -6},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) +"aR" = (/obj/item/stack/ore/iron{pixel_x = 7; pixel_y = -6},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "aS" = (/obj/structure/alien/weeds,/mob/living/simple_animal/hostile/alien/queen/large{desc = "A gigantic alien who is in charge of the hive and all of its loyal servants."; name = "alien queen"; pixel_x = -16; plants_off = 1},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a5{always_unpowered = 1; has_gravity = 1; name = "The Hive"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "aT" = (/turf/simulated/wall,/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "aU" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"; tag = "icon-darkredcorners (WEST)"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) @@ -175,11 +175,11 @@ "ds" = (/obj/structure/closet/secure_closet{desc = "It's a secure locker for personnel. The first card swiped gains control."; icon_broken = "cabinetdetective_broken"; icon_closed = "cabinetdetective"; icon_locked = "cabinetdetective_locked"; icon_off = "cabinetdetective_broken"; icon_opened = "cabinetdetective_open"; icon_state = "cabinetdetective"; locked = 0; name = "personal closet"; req_access_txt = "150"},/obj/item/stack/spacecash/c50,/turf/simulated/floor/wood,/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "dt" = (/obj/structure/bed,/obj/item/bedsheet/syndie,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/wood,/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "du" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/plating/airless{name = "plating"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) -"dv" = (/obj/item/ore/iron,/obj/item/ore/iron{pixel_x = -7; pixel_y = -4},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) +"dv" = (/obj/item/stack/ore/iron,/obj/item/stack/ore/iron{pixel_x = -7; pixel_y = -4},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "dw" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating/airless{name = "plating"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "dx" = (/obj/effect/decal/warning_stripes/northwestcorner,/turf/simulated/floor/plasteel/airless{name = "floor"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "dy" = (/obj/structure/dispenser/oxygen{oxygentanks = 9},/obj/machinery/light/small{active_power_usage = 0; dir = 1; icon_state = "bulb-broken"; status = 2},/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plating/airless{name = "plating"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) -"dz" = (/obj/item/ore/iron{pixel_x = -3; pixel_y = 9},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) +"dz" = (/obj/item/stack/ore/iron{pixel_x = -3; pixel_y = 9},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "dA" = (/turf/simulated/mineral,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "dB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/awaycontent/a7) "dC" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate/orange,/obj/item/clothing/mask/gas,/obj/item/pickaxe/drill,/obj/item/clothing/head/helmet/space/syndicate/orange,/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plating/airless{name = "plating"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) @@ -192,7 +192,7 @@ "dJ" = (/obj/item/pickaxe/drill,/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "dK" = (/turf/simulated/floor/plasteel/airless{icon_plating = "asteroidplating"; icon_state = "asteroidplating"; name = "plating"},/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "dL" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel/airless{icon_plating = "asteroidplating"; icon_state = "asteroidplating"; name = "plating"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) -"dM" = (/obj/item/ore/iron{pixel_x = -7; pixel_y = -4},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) +"dM" = (/obj/item/stack/ore/iron{pixel_x = -7; pixel_y = -4},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "dN" = (/obj/structure/alien/weeds{icon_state = "weeds1"},/obj/structure/bed/nest,/obj/item/tank/oxygen,/obj/item/clothing/suit/space/syndicate/orange,/obj/item/clothing/mask/gas,/obj/item/clothing/head/helmet/space/syndicate/orange,/obj/item/clothing/mask/facehugger{icon_state = "facehugger_impregnated"; item_state = "facehugger_impregnated"; stat = 2},/obj/effect/decal/cleanable/blood/tracks{color = "red"; desc = "Your instincts say you shouldn't be following these."; dir = 4; icon = 'icons/effects/blood.dmi'; icon_state = "tracks"},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a5{always_unpowered = 1; has_gravity = 1; name = "The Hive"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "dO" = (/obj/structure/alien/weeds{icon_state = "weeds2"},/obj/effect/decal/cleanable/blood/tracks{color = "red"; desc = "Your instincts say you shouldn't be following these."; dir = 4; icon = 'icons/effects/blood.dmi'; icon_state = "tracks"},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a5{always_unpowered = 1; has_gravity = 1; name = "The Hive"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "dP" = (/obj/structure/alien/weeds/node,/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) @@ -462,15 +462,15 @@ "iT" = (/obj/structure/chair{dir = 1},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "iU" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 0},/turf/simulated/wall/rust,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "iV" = (/obj/machinery/vending/boozeomat{req_access_txt = "0"},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) -"iW" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) -"iX" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) +"iW" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/plating/airless,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) +"iX" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/effect/landmark/burnturf,/turf/simulated/floor/plating/airless,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "iY" = (/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "iZ" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "ja" = (/obj/structure/toilet{dir = 1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "jb" = (/obj/item/stack/rods,/obj/item/shard,/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "jc" = (/obj/structure/table,/obj/item/storage/secure/briefcase,/obj/item/taperecorder{pixel_x = -3},/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "jd" = (/obj/structure/sink{dir = 8; icon_state = "sink"; pixel_x = -12; pixel_y = 2},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) -"je" = (/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) +"je" = (/obj/machinery/vending/snack,/obj/structure/sign/poster/official/ue_no{pixel_y = 32},/turf/simulated/floor/plating/airless,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "jf" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "jg" = (/obj/machinery/vending/cola,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "jh" = (/obj/machinery/vending/coffee,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) @@ -486,7 +486,7 @@ "jr" = (/obj/structure/closet/secure_closet{icon_broken = "rdsecurebroken"; icon_closed = "rdsecure"; icon_locked = "rdsecure1"; icon_off = "rdsecureoff"; icon_opened = "rdsecureopen"; icon_state = "rdsecure1"; locked = 1; name = "research director's locker"; req_access_txt = "271"},/obj/item/storage/backpack/satchel_tox,/obj/item/clothing/gloves/color/latex,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "js" = (/obj/structure/chair/comfy/black{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "jt" = (/obj/structure/closet/crate/can,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) -"ju" = (/obj/machinery/vending/snack,/obj/structure/sign/poster/official/ue_no{pixel_y = 32},/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) +"ju" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating/airless,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "jv" = (/obj/structure/chair,/obj/effect/decal/cleanable/generic,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "jw" = (/obj/structure/chair,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "jx" = (/obj/structure/table,/obj/item/book/manual/detective,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) @@ -646,7 +646,7 @@ "mv" = (/obj/machinery/light/small{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "mw" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless{icon_state = "neutralcorner"; name = "floor"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "mx" = (/obj/structure/grille,/obj/structure/sign/vacuum{desc = "A warning sign which reads 'HOSTILE ATMOSPHERE AHEAD'"; name = "\improper HOSTILE ATMOSPHERE AHEAD"; pixel_x = 0},/obj/structure/window/full/reinforced,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) -"my" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"; name = "floor"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) +"my" = (/obj/effect/decal/cleanable/blood/tracks{color = "red"; desc = "Your instincts say you shouldn't be following these."; dir = 4; icon = 'icons/effects/blood.dmi'; icon_state = "tracks"},/turf/simulated/floor/plating/airless,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "mz" = (/obj/effect/decal/cleanable/generic,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "mA" = (/obj/structure/table/wood,/obj/machinery/door_control{id = "awaydorm2"; name = "Door Bolt Control"; normaldoorcontrol = 1; pixel_x = -25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/carpet,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "mB" = (/obj/structure/chair/wood/normal{dir = 8},/turf/simulated/floor/carpet,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) @@ -665,7 +665,7 @@ "mO" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "mP" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "mQ" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel/airless{icon_state = "neutralcorner"; name = "floor"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) -"mR" = (/obj/effect/decal/cleanable/blood/tracks{color = "red"; desc = "Your instincts say you shouldn't be following these."; dir = 4; icon = 'icons/effects/blood.dmi'; icon_state = "tracks"},/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"; name = "floor"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) +"mR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/camera{c_tag = "Dormitories"; dir = 4; network = list("MO19")},/turf/simulated/floor/plating/airless,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "mS" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "mT" = (/obj/effect/decal/cleanable/blood/tracks{color = "red"; desc = "Your instincts say you shouldn't be following these."; dir = 4; icon = 'icons/effects/blood.dmi'; icon_state = "tracks"},/turf/simulated/floor/carpet,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "mU" = (/obj/machinery/door/airlock{id_tag = "awaydorm2"; name = "Dorm 2"},/obj/effect/decal/cleanable/blood/tracks{color = "red"; desc = "Your instincts say you shouldn't be following these."; dir = 4; icon = 'icons/effects/blood.dmi'; icon_state = "tracks"},/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) @@ -727,7 +727,7 @@ "nY" = (/turf/simulated/floor/plasteel/airless{dir = 4; icon_state = "neutralcorner"; name = "floor"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "nZ" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel/airless{icon_plating = "asteroidplating"; icon_state = "asteroidplating"; name = "plating"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "oa" = (/turf/simulated/floor/plating/airless,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) -"ob" = (/obj/structure/chair/comfy/black{dir = 8},/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"; name = "floor"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) +"ob" = (/obj/structure/chair/comfy/black{dir = 8},/turf/simulated/floor/plating/airless,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "oc" = (/obj/machinery/light/small{dir = 4},/obj/effect/decal/cleanable/generic,/turf/simulated/floor/plasteel/airless{icon_state = "neutralcorner"; name = "floor"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "od" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel/airless{icon_plating = "asteroidplating"; icon_state = "asteroidplating"; name = "plating"},/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "oe" = (/obj/item/shard{icon_state = "small"},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a3{always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) @@ -776,7 +776,6 @@ "oY" = (/obj/effect/decal/cleanable/blood/tracks{color = "red"; desc = "Your instincts say you shouldn't be following these."; icon = 'icons/effects/blood.dmi'; icon_state = "tracks"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel/airless{dir = 8; icon_state = "neutralcorner"; name = "floor"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "oZ" = (/obj/structure/closet/secure_closet{desc = "It's a secure locker for personnel. The first card swiped gains control."; icon_broken = "cabinetdetective_broken"; icon_closed = "cabinetdetective"; icon_locked = "cabinetdetective_locked"; icon_off = "cabinetdetective_broken"; icon_opened = "cabinetdetective_open"; icon_state = "cabinetdetective"; locked = 0; name = "personal closet"; req_access_txt = "271"},/obj/item/clothing/under/assistantformal,/turf/simulated/floor/carpet,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "pa" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 5},/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) -"pb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/camera{c_tag = "Dormitories"; dir = 4; network = list("MO19")},/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"; name = "floor"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "pe" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "271"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "pg" = (/obj/structure/closet/secure_closet{desc = "It's a secure locker for personnel. The first card swiped gains control."; icon_broken = "cabinetdetective_broken"; icon_closed = "cabinetdetective"; icon_locked = "cabinetdetective_locked"; icon_off = "cabinetdetective_broken"; icon_opened = "cabinetdetective_open"; icon_state = "cabinetdetective"; locked = 0; name = "personal closet"; req_access_txt = "271"},/obj/item/clothing/under/suit_jacket/burgundy,/turf/simulated/floor/carpet,/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) @@ -845,19 +844,19 @@ aaaaaaaaaaaaaaabababababababababababababababababababababababababeTeUeTfafPhChChC aaaaaaaaaaaaaaabababababababababababababababababababababababababeUhukbfOfPhChDhNkfhxhxhxhxeJhOicideJflflhGhPeadAaZaZaZaZaZaZaZhJhQhShRhThJhVhUhJhJaZaZaZhWaZaZaZaZdAabababababababababababababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababababababababababeUfeiLhMeVhChYhZiaibieipiteaeakieadZigiiihijdZdAaZaZaZaZaZaZdAhKhKhJikilhJinimiohKisisishKdAdAdAdAdAabababdAdAdAdAdAabababababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababababababababababeUfOeVfPeVhCkjirhDhCiviuiwdZiMifiNeadZdZeaeaeaaZaZaZaZhWaZaZdAhKixiyimimiziAimiBhKiDiCiEhKhKhKhJhJhKhJhKdAdAaZaZaZdAdAababababababababababababababaaaaaaaaaaaaaa -aaaaaaaaaaaaaaabababababababababababababababababababababababababeTkkeViHiFhDhCiIiJiKiOiPjcdZjdifjneadAdAaZaZaZaZohaZhKhKisishKhKhKhKiAimhKiQiQhJhKiSiRiTiUhKiViXiWiYiZhKdAaZaZaZaZaZdAababababababababababababababaaaaaaaaaaaaaa -aaaaaaaaaaaaaaabababababababababababababababababababababababababeTfOfPjadZeadZeaeaeadZeaeaeaeJkieJeadAaZaZaZhWaZjbaZhJjsjxjijejgjhhJjfhKhJhJhJhJjjjkjkjljmjqiYjoiYiYjphJaZaZaZaZaZaZdAdAabababababababababababababaaaaaaaaaaaaaa -aaaaaaaaaaaaaaababababababababababababababababababababdAdAdAdAdAeTknfPfPeajEjIjvjMjwjIjUjuhKjykCjzhJhKkdkdkdhJkdkekdhJjGjFjFjHjFjFkDjFjLjVkgjKjOjljljljNjmjTiYjQjRjojSisaZaZaZaZaZaZaZdAdAababababababababababababaaaaaaaaaaaaaa -aaaaaaaaaaaaaaababababababababababababababababababdAdAdAdAdAdAdAeUkcfrgikhjWjWklkulikWkAkFlRlJmomnlJmpmykGkIkPkQkHkGkRnAkAlililikUnUnNnNoklhlhoqopopopoporotoskqkrkskthKaZaZaZaZaZaZaZaZdAababababababababababababaaaaaaaaaaaaaa +aaaaaaaaaaaaaaabababababababababababababababababababababababababeTkkeViHiFhDhCiIiJiKiOiPjcdZjdifjneadAdAaZaZaZaZohaZhKhKisishKhKhKhKiAimhKiQiQhJhKiSiRiTiUhKiViWiXiYiZhKdAaZaZaZaZaZdAababababababababababababababaaaaaaaaaaaaaa +aaaaaaaaaaaaaaabababababababababababababababababababababababababeTfOfPjadZeadZeaeaeadZeaeaeaeJkieJeadAaZaZaZhWaZjbaZhJjsjxjioajgjhhJjfhKhJhJhJhJjjjkjkjljmjqiYjoiYiYjphJaZaZaZaZaZaZdAdAabababababababababababababaaaaaaaaaaaaaa +aaaaaaaaaaaaaaababababababababababababababababababababdAdAdAdAdAeTknfPfPeajEjIjvjMjwjIjUjehKjykCjzhJhKkdkdkdhJkdkekdhJjGjFjFjHjFjFkDjFjLjVkgjKjOjljljljNjmjTiYjQjRjojSisaZaZaZaZaZaZaZdAdAababababababababababababaaaaaaaaaaaaaa +aaaaaaaaaaaaaaababababababababababababababababababdAdAdAdAdAdAdAeUkcfrgikhjWjWklkulikWkAkFlRlJmomnlJmpjukGkIkPkQkHkGkRnAkAlililikUnUnNnNoklhlhoqopopopoporotoskqkrkskthKaZaZaZaZaZaZaZaZdAababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababdAdAdAdAdAaZaZaZeTeTeUeUkmkwkvkwkxkwkvkvkwkzkyoujFlvkBlGkEkTlHjFlGlIkJmhjHhJhKhJhJmzkKjFoxjFjHkojljlkLkMjmjTiYiYkpiYkNhKaZaZaZaZaZdAdAdAdAababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababdAdAdAaZaZaZaZaZaZaZaZhJhJisisishJisisishJhJkOoymShKhJkdlllmhJhJhJhJhKozkShJkVoAhKkXhKkYoBlakZjOlbjNjljljmjTiYiYiYlchKhKhJhJhKaZdAdAabababababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababdAdAaZaZaZaZaZaZaZaZaZaZaZaZaZaZldlelfaZaZhJlgnanrhKdAaZaZlkljhKnbnbhKoDlElplolqhKlnhKhKhJhKhKhKlrlsjllthKhKluiYiYiYoElxlwlyhKdAdAababababababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababdAdAaZaZaZaZldlelelzlelAlBlClAlBlDlKlFaZaZisnvnFnGhKdAaZaZaZaZhJlOlOhKoGmihKlMlNhJlPlOlQlPlnlOkXjljkjljloHlSlSlTlSlUhKlxlxlVhKababababababababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababdAdAaZaZaZldlWlXlYlZmambmcmdmemdmflKmgaZaZisnvnHisisaZaZaZaZaZhJnBlOoJoGmihJhKhKhJlOmkhJhJhJhKhKmjmjjkmlhKlSlTlSlSmmhKoLoKoMhJababababababababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababdAdAaZaZaZlBmqmcmrlDmsmdmtmumtmdmcmvlDismxisnvnKisaZaZaZaZaZaZhKoOoQoPoRmQhJmAmBhKlOmMhKabababhKmCmCmDhJhKhKmEmFmGhJhJhKhKhJhJababababababababababababababababababaaaaaaaaaaaaaa -aaaaaaaaaaaaaaabababababababababababababababababdAdAaZaZaZlBmHmdmsmImsmsmJmKmJmsmsmsmLmNlPmOjHnXhJmPaZaZaZaZaZhKoTlOhJoUmRmUmTmVhKlOnbhJabababhKhKhJhJhKdAhKisisishJaZaZaZaZdAababababababababababababababababababaaaaaaaaaaaaaa +aaaaaaaaaaaaaaabababababababababababababababababdAdAaZaZaZlBmHmdmsmImsmsmJmKmJmsmsmsmLmNlPmOjHnXhJmPaZaZaZaZaZhKoTlOhJoUmymUmTmVhKlOnbhJabababhKhKhJhJhKdAhKisisishJaZaZaZaZdAababababababababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababdAdAaZaZaZlBmWmcmXmYmsmdmtmumtmdmcmZmYisisisnvooisaZaZaZaZaZaZhJoWoXhJoYlLhKncoZhKlQnlhJhJhJdKaZaZdAdAdAdAaZaZaZaZljaZaZaZdAdAababababababababababababababababababaaaaaaaaaaaaaa -aaaaaaaaaaaaaaabababababababababababababababababdAdAaZaZaZnenfnglYlZmanhmcmdnimdmflKlFaZaZisnvovisaZaZaZaZaZaZhJpaoXhKpbmwhKhKhKhJnnnmmOnpmOdKaZaZdAdAaZaZaZaZaZaZaZaZaZaZdAabababababababababababababababababababaaaaaaaaaaaaaa +aaaaaaaaaaaaaaabababababababababababababababababdAdAaZaZaZnenfnglYlZmanhmcmdnimdmflKlFaZaZisnvovisaZaZaZaZaZaZhJpaoXhKmRmwhKhKhKhJnnnmmOnpmOdKaZaZdAdAaZaZaZaZaZaZaZaZaZaZdAabababababababababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababdAdAaZaZaZaZnelelenolelAlBlClAlBmYlKmgaZaZisowovisaZaZaZaZdAdAhJhJhJhKndmikXlPlnlnnunthJlnhJnxaZdAdAdAaZaZaZaZaZaZaZaZaZdAdAabababababababababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababdAdAdAaZaZaZaZaZaZaZaZaZaZaZaZaZnelenwaZaZhJmOmOhJhJdAdAdAdAdAaZkdnznyoCnEhJhKhJhJhKpehJhJhJaZdAdAabdAdAdAaZaZaZaZaZdAdAdAababababababababababababababababababababaaaaaaaaaaaaaa aaaaaaaaaaaaaaabababababababababababababababababdAdAdAdAdAaZaZaZaZaZaZaZaZaZaZaZaZaZaZaZaZhJnBlPnChJdAdAaZaZaZnDnjnkoFoImQhKnInJhKlPlOnqhKaZaZdAdAabababdAdAaZaZaZdAdAababababababababababababababababababababababaaaaaaaaaaaaaa diff --git a/_maps/map_files/RandomZLevels/stationCollision.dmm b/_maps/map_files/RandomZLevels/stationCollision.dmm index f50207e42c3..72a1a9ac6af 100644 --- a/_maps/map_files/RandomZLevels/stationCollision.dmm +++ b/_maps/map_files/RandomZLevels/stationCollision.dmm @@ -25,13 +25,13 @@ "ay" = (/obj/structure/window/reinforced/tinted,/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) "az" = (/obj/structure/window/reinforced/tinted,/obj/machinery/portable_atmospherics/pump,/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) "aA" = (/obj/structure/window/reinforced/tinted,/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"; tag = ""},/obj/structure/closet/secure_closet/engineering_electrical,/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) -"aB" = (/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"aB" = (/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/awaymission/northblock) "aC" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/awaymission/syndishuttle) "aD" = (/turf/space,/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/awaymission/syndishuttle) "aE" = (/obj/machinery/door/airlock/engineering,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "aF" = (/obj/effect/landmark/burnturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "aG" = (/obj/effect/decal/remains/robot,/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) -"aH" = (/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"aH" = (/obj/machinery/door/airlock/engineering,/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "aI" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l (EAST)"; icon_state = "burst_l"; dir = 4},/turf/space,/area/awaymission/syndishuttle) "aJ" = (/turf/simulated/floor/plating/airless,/area/awaymission/syndishuttle) "aK" = (/turf/space,/area/awaymission/syndishuttle) @@ -46,7 +46,7 @@ "aT" = (/obj/structure/closet/secure_closet/engineering_welding,/obj/machinery/light,/turf/simulated/floor/plasteel,/area/awaymission/northblock) "aU" = (/obj/machinery/mech_bay_recharge_port,/turf/simulated/floor/plasteel,/area/awaymission/northblock) "aV" = (/obj/structure/chair/office/dark{dir = 4},/turf/simulated/floor/plasteel,/area/awaymission/northblock) -"aW" = (/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/awaymission/northblock) +"aW" = (/obj/structure/girder/reinforced,/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/awaymission/research) "aX" = (/obj/machinery/portable_atmospherics/canister/toxins{destroyed = 1},/turf/simulated/shuttle/plating,/area/awaymission/syndishuttle) "aY" = (/turf/simulated/shuttle/plating,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/awaymission/syndishuttle) "aZ" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/space) @@ -71,7 +71,7 @@ "bs" = (/obj/structure/lattice,/turf/space,/area/awaymission/syndishuttle) "bt" = (/obj/machinery/door/airlock/centcom,/turf/simulated/shuttle/plating,/area/awaymission/syndishuttle) "bu" = (/turf/simulated/floor/plasteel/airless{tag = "icon-blue (SOUTHEAST)"; icon_state = "blue"; dir = 6},/area/awaymission/northblock) -"bv" = (/obj/machinery/door/airlock/engineering,/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"bv" = (/obj/effect/decal/warning_stripes/northwest,/mob/living/simple_animal/hostile/alien/sentinel,/turf/simulated/floor/plasteel,/area/awaymission/research) "bw" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/awaymission/research) "bx" = (/turf/simulated/wall/r_wall,/area/awaymission/research) "by" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/shuttle/plating,/area/awaymission/syndishuttle) @@ -81,16 +81,16 @@ "bC" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plasteel/airless{icon_state = "blue"},/area/awaymission/northblock) "bD" = (/turf/simulated/floor/plasteel/airless{tag = "icon-blue (NORTH)"; icon_state = "blue"; dir = 1},/area/awaymission/northblock) "bE" = (/turf/space,/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/awaymission/syndishuttle) -"bF" = (/obj/structure/girder/reinforced,/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/research) +"bF" = (/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaymission/research) "bG" = (/obj/machinery/light{dir = 4},/obj/structure/window/reinforced,/obj/structure/sign/securearea{pixel_x = 32},/obj/item/clothing/under/rank/security,/obj/effect/decal/remains/human,/obj/item/gun/energy/laser/practice/sc_laser,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) -"bH" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaymission/research) +"bH" = (/obj/item/shard,/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/awaymission/research) "bI" = (/obj/structure/sign/securearea{pixel_x = 32},/obj/item/clothing/under/rank/security,/obj/effect/decal/remains/human,/obj/item/gun/energy/laser/practice/sc_laser,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaymission/research) "bJ" = (/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "bK" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) -"bL" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/awaymission/research) -"bM" = (/obj/machinery/door/window/eastleft,/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/awaymission/research) -"bN" = (/obj/machinery/door/window/westright,/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/awaymission/research) -"bO" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/awaymission/research) +"bL" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/awaymission/research) +"bM" = (/obj/machinery/door/window/eastleft,/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/awaymission/research) +"bN" = (/obj/machinery/door/window/westright,/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/awaymission/research) +"bO" = (/obj/structure/window/reinforced{dir = 4},/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/awaymission/research) "bP" = (/obj/structure/filingcabinet/filingcabinet,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "bQ" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/eastleft,/obj/machinery/door/window/westright,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "bR" = (/mob/living/simple_animal/lizard,/turf/simulated/floor/grass,/area/awaymission/research) @@ -100,26 +100,26 @@ "bV" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (NORTH)"; icon_state = "heater"; dir = 1},/turf/simulated/shuttle/plating,/area/awaymission/syndishuttle) "bW" = (/turf/simulated/shuttle/plating,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/awaymission/syndishuttle) "bX" = (/turf/simulated/floor/plasteel/airless{tag = "icon-blue (NORTHEAST)"; icon_state = "blue"; dir = 5},/area/awaymission/northblock) -"bY" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/research) -"bZ" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/awaymission/research) +"bY" = (/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/awaymission/research) +"bZ" = (/obj/structure/window/reinforced{dir = 4},/obj/effect/decal/warning_stripes/east,/mob/living/simple_animal/hostile/alien,/turf/simulated/floor/plasteel,/area/awaymission/research) "ca" = (/turf/simulated/floor/plasteel,/area/awaymission/research) -"cb" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/awaymission/research) +"cb" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/awaymission/research) "cc" = (/obj/structure/table/holotable,/obj/item/gun/energy/floragun{pixel_x = 2; pixel_y = 3},/obj/machinery/light,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) -"cd" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/awaymission/research) +"cd" = (/obj/structure/window/reinforced{dir = 4},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/awaymission/research) "ce" = (/mob/living/simple_animal/hostile/creature{name = "Experiment 35b"},/turf/simulated/floor/plasteel,/area/awaymission/research) "cf" = (/obj/machinery/dna_scannernew,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "cg" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/grass,/area/awaymission/research) "ch" = (/obj/machinery/power/emitter{anchored = 1; state = 2},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaymission/research) "ci" = (/obj/machinery/atmospherics/pipe/simple{dir = 4; icon_state = "intact"; level = 2},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) -"cj" = (/obj/machinery/door/window/southleft,/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/awaymission/research) +"cj" = (/obj/machinery/door/window/southleft,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/awaymission/research) "ck" = (/obj/item/clothing/suit/space/syndicate,/obj/item/clothing/under/syndicate,/obj/item/clothing/head/helmet/space/syndicate,/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/effect/decal/cleanable/blood/splatter,/obj/item/clothing/shoes/brown,/obj/item/toy/sword,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/awaymission/northblock) -"cl" = (/obj/item/shard{icon_state = "medium"},/obj/item/shard{icon_state = "small"},/obj/structure/alien/weeds/node,/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/awaymission/research) +"cl" = (/obj/item/shard{icon_state = "small"},/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/awaymission/research) "cm" = (/obj/structure/table,/obj/item/clipboard,/obj/item/paper,/obj/item/paper,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) -"cn" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/mob/living/simple_animal/hostile/hivebot,/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/awaymission/research) -"co" = (/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/awaymission/research) -"cp" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/awaymission/research) +"cn" = (/obj/item/shard{icon_state = "medium"},/obj/item/shard{icon_state = "small"},/obj/structure/alien/weeds/node,/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plasteel,/area/awaymission/research) +"co" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/effect/decal/warning_stripes/southwest,/mob/living/simple_animal/hostile/hivebot,/turf/simulated/floor/plasteel,/area/awaymission/research) +"cp" = (/obj/structure/window/reinforced,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/awaymission/research) "cq" = (/obj/machinery/door/window/southright,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) -"cr" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/awaymission/research) +"cr" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plasteel,/area/awaymission/research) "cs" = (/obj/structure/chair/office/light{dir = 4},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "ct" = (/obj/machinery/computer/scan_consolenew,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "cu" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/grass,/area/awaymission/research) @@ -132,7 +132,7 @@ "cB" = (/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaymission/research) "cC" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_l (EAST)"; icon_state = "propulsion_l"; dir = 4},/turf/space,/area/awaymission/syndishuttle) "cD" = (/turf/simulated/floor/plating/airless,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/awaymission/syndishuttle) -"cE" = (/obj/machinery/portable_atmospherics/canister/toxins{destroyed = 1},/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"cE" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/awaymission/research) "cF" = (/obj/machinery/door/window/eastleft,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "cG" = (/obj/machinery/power/emitter{anchored = 1; dir = 1; icon_state = "emitter"; state = 2},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "cH" = (/obj/structure/bed,/obj/item/bedsheet/captain,/obj/item/clothing/under/rank/captain,/obj/effect/decal/remains/human,/obj/effect/decal/cleanable/blood/splatter,/obj/item/gun/energy/laser/practice/sc_laser,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/awaymission/northblock) @@ -145,7 +145,7 @@ "cO" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaymission/research) "cP" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaymission/research) "cQ" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple,/turf/space,/area/awaymission/northblock) -"cR" = (/obj/machinery/atmospherics/pipe/simple{dir = 9; icon_state = "intact"; level = 2},/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"cR" = (/obj/machinery/portable_atmospherics/canister/toxins{destroyed = 1},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "cS" = (/obj/structure/closet/firecloset,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "cT" = (/obj/structure/alien/weeds/node,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "cU" = (/mob/living/carbon/alien/humanoid/hunter{fireloss = 200; stat = 2},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) @@ -156,8 +156,8 @@ "cZ" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaymission/research) "da" = (/obj/machinery/door/airlock/atmos{name = "Airlock"},/turf/simulated/floor/plasteel,/area/awaymission/northblock) "db" = (/obj/machinery/shower{tag = "icon-shower (EAST)"; icon_state = "shower"; dir = 4},/obj/structure/window/reinforced/tinted,/turf/simulated/floor/plasteel,/area/awaymission/research) -"dc" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/awaymission/research) -"dd" = (/obj/structure/closet/l3closet/scientist,/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/awaymission/research) +"dc" = (/obj/machinery/atmospherics/pipe/simple{dir = 9; icon_state = "intact"; level = 2},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) +"dd" = (/obj/machinery/light/small{dir = 1},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/awaymission/research) "de" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "df" = (/obj/machinery/door/window/northleft{name = "Windoor"},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "dg" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) @@ -170,9 +170,9 @@ "dn" = (/obj/machinery/power/emitter{anchored = 1; dir = 8; state = 2},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaymission/research) "do" = (/obj/machinery/atmospherics/pipe/simple,/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "dp" = (/obj/structure/closet/firecloset,/turf/simulated/floor/plasteel,/area/awaymission/northblock) -"dq" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"dq" = (/obj/structure/closet/l3closet/scientist,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/awaymission/research) "dr" = (/obj/machinery/door/airlock/highsecurity{name = "Security Airlock"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaymission/research) -"ds" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/awaymission/research) +"ds" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/effect/landmark/burnturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "dt" = (/obj/machinery/door/window/westright{name = "Windoor"},/obj/machinery/door/window/eastright{name = "Windoor"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "du" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "dv" = (/obj/machinery/door/airlock/hatch{name = "High-Security Airlock"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaymission/research) @@ -180,9 +180,9 @@ "dx" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) "dy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) "dz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel/airless{tag = "icon-blue (EAST)"; icon_state = "blue"; dir = 4},/area/awaymission/northblock) -"dA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"dA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/awaymission/research) "dB" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; pixel_y = -10; tag = "icon-shower (EAST)"},/obj/structure/window/reinforced/tinted{dir = 1},/turf/simulated/floor/plasteel,/area/awaymission/research) -"dC" = (/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/awaymission/research) +"dC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "dD" = (/obj/structure/window/reinforced,/obj/structure/cable,/obj/machinery/power/apc/noalarm{cell_type = 7500; dir = 8; name = "Research APC"; pixel_x = -28},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "dE" = (/obj/machinery/door/window/southright{name = "Windoor"},/obj/effect/decal/remains/human,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "dF" = (/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) @@ -200,7 +200,7 @@ "dR" = (/obj/structure/sign/goldenplaque{pixel_y = 31},/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) "dS" = (/obj/machinery/light/small{dir = 1},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) "dT" = (/obj/structure/sign/atmosplaque{pixel_y = 31},/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) -"dU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"dU" = (/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/awaymission/research) "dV" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "dW" = (/obj/structure/table,/obj/item/stack/cable_coil{amount = 5},/obj/item/screwdriver,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "dX" = (/obj/structure/computerframe{anchored = 1},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) @@ -215,7 +215,7 @@ "eg" = (/obj/structure/computerframe{anchored = 1},/turf/simulated/floor/plasteel/airless{dir = 1; icon_state = "bluecorner"},/area/awaymission/northblock) "eh" = (/obj/machinery/sleeper,/turf/simulated/shuttle/floor{icon_state = "floor4"; nitrogen = 0.01; oxygen = 0.01; temperature = 2.7},/area/awaymission/syndishuttle) "ei" = (/obj/machinery/vending/snack,/turf/simulated/shuttle/floor{icon_state = "floor4"; nitrogen = 0.01; oxygen = 0.01; temperature = 2.7},/area/awaymission/syndishuttle) -"ej" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"ej" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark/burnturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "ek" = (/obj/structure/window/reinforced,/obj/machinery/door/window/brigdoor/eastleft,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "el" = (/obj/machinery/atmospherics/unary/cold_sink/freezer{current_temperature = 80},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "em" = (/obj/machinery/atmospherics/unary/vent_pump,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) @@ -230,15 +230,15 @@ "ev" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) "ew" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/effect/landmark/burnturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "ex" = (/obj/machinery/vending/coffee,/turf/simulated/shuttle/floor{icon_state = "floor4"; nitrogen = 0.01; oxygen = 0.01; temperature = 2.7},/area/awaymission/syndishuttle) -"ey" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"ey" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "ez" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/northblock) "eA" = (/obj/structure/AIcore,/turf/simulated/floor/greengrid,/area/awaymission/research) "eB" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/greengrid,/area/awaymission/research) "eC" = (/turf/simulated/floor/greengrid,/area/awaymission/research) "eD" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/greengrid,/area/awaymission/research) -"eE" = (/obj/machinery/atmospherics/pipe/manifold{dir = 8; icon_state = "manifold"; level = 2},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) -"eF" = (/obj/machinery/atmospherics/pipe/simple{dir = 4; icon_state = "intact"; level = 2},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) -"eG" = (/obj/machinery/atmospherics/pipe/simple{dir = 9; icon_state = "intact"; level = 2},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) +"eE" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) +"eF" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) +"eG" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/visible{dir = 9},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "eH" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (WEST)"; icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless,/area/awaymission/research) "eI" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/item/shard{icon_state = "small"},/turf/simulated/floor/plating,/area/awaymission/northblock) "eJ" = (/obj/structure/closet/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor4"; nitrogen = 0.01; oxygen = 0.01; temperature = 2.7},/area/awaymission/syndishuttle) @@ -259,7 +259,7 @@ "eY" = (/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/midblock) "eZ" = (/turf/simulated/floor/plasteel,/area/awaymission/northblock) "fa" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/midblock) -"fb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/northblock) +"fb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "fc" = (/obj/structure/table,/obj/item/stock_parts/capacitor,/obj/item/stock_parts/capacitor{pixel_x = -3},/obj/item/stock_parts/scanning_module{pixel_x = 3; pixel_y = 3},/obj/item/stock_parts/scanning_module{pixel_y = -3},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "fd" = (/obj/structure/chair{dir = 1},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) "fe" = (/obj/structure/table,/obj/item/stock_parts/manipulator,/obj/item/stock_parts/manipulator{pixel_x = -3; pixel_y = 3},/obj/item/stock_parts/micro_laser{pixel_x = -3; pixel_y = -3},/obj/item/stock_parts/micro_laser{pixel_x = 3; pixel_y = 3},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) @@ -275,7 +275,7 @@ "fo" = (/obj/structure/closet/secure_closet/captains,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/awaymission/northblock) "fp" = (/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/awaymission/northblock) "fq" = (/turf/simulated/floor/plasteel/airless,/area/awaymission/midblock) -"fr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/midblock) +"fr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless,/area/awaymission/northblock) "fs" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/midblock) "ft" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/midblock) "fu" = (/obj/structure/table,/obj/item/storage/toolbox/mechanical,/obj/item/storage/toolbox/mechanical{pixel_y = 5},/obj/item/stock_parts/console_screen,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/awaymission/research) @@ -316,7 +316,7 @@ "gd" = (/obj/structure/chair/comfy/brown{dir = 1},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/awaymission/northblock) "ge" = (/obj/item/storage/secure/safe/sc_ssafe{pixel_x = 4; pixel_y = -26},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/awaymission/northblock) "gf" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/ammo_casing/c10mm,/obj/item/clothing/under/syndicate,/obj/effect/decal/cleanable/blood/splatter,/obj/item/gun/projectile/shotgun/toy/tommygun,/turf/simulated/floor/plasteel,/area/awaymission/midblock) -"gg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/midblock) +"gg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark/burnturf,/turf/simulated/floor/plating/airless,/area/awaymission/midblock) "gh" = (/obj/structure/closet/wardrobe/generic,/turf/simulated/floor/plasteel,/area/awaymission/midblock) "gi" = (/turf/simulated/floor/plasteel,/area/awaymission/midblock) "gj" = (/obj/structure/closet/wardrobe/pjs,/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"; tag = ""},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel,/area/awaymission/midblock) @@ -326,7 +326,7 @@ "gn" = (/obj/machinery/gibber,/turf/simulated/floor/plasteel,/area/awaymission/midblock) "go" = (/obj/machinery/vending/boozeomat,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel,/area/awaymission/midblock) "gp" = (/obj/structure/table,/obj/item/book/manual/barman_recipes,/obj/item/reagent_containers/food/drinks/shaker,/turf/simulated/floor/plasteel,/area/awaymission/midblock) -"gq" = (/mob/living/simple_animal/hostile/alien/sentinel,/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/awaymission/research) +"gq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless,/area/awaymission/midblock) "gr" = (/obj/structure/table,/turf/simulated/floor/plasteel,/area/awaymission/midblock) "gs" = (/obj/structure/chair/stool,/turf/simulated/floor/plasteel,/area/awaymission/midblock) "gt" = (/obj/structure/chair,/turf/simulated/floor/plasteel,/area/awaymission/midblock) @@ -339,9 +339,9 @@ "gA" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plasteel,/area/awaymission/midblock) "gB" = (/obj/machinery/door/window/eastleft{name = "Windoor"},/obj/machinery/door/window/westleft{name = "Windoor"},/turf/simulated/floor/plasteel,/area/awaymission/midblock) "gC" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel,/area/awaymission/midblock) -"gD" = (/obj/item/shard,/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/awaymission/research) -"gE" = (/obj/structure/window/reinforced{dir = 4},/mob/living/simple_animal/hostile/alien,/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/awaymission/research) -"gF" = (/obj/item/shard{icon_state = "small"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/awaymission/research) +"gD" = (/obj/structure/sign/vacuum{pixel_y = 32},/obj/effect/decal/remains/human,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) +"gE" = (/obj/effect/decal/remains/human,/obj/effect/decal/warning_stripes/southwestcorner,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) +"gF" = (/turf/simulated/floor/plating/airless,/area/awaymission/midblock) "gG" = (/obj/structure/table,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaymission/midblock) "gH" = (/obj/structure/chair/stool,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel,/area/awaymission/midblock) "gI" = (/obj/structure/chair{dir = 4},/turf/simulated/floor/plasteel,/area/awaymission/midblock) @@ -355,15 +355,15 @@ "gQ" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/awaymission/arrivalblock) "gR" = (/obj/machinery/door/unpowered/shuttle{name = "Shuttle Airlock"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/awaymission/arrivalblock) "gS" = (/obj/machinery/door/airlock/external{welded = 1},/turf/simulated/floor/plating,/area/awaymission/arrivalblock) -"gT" = (/obj/structure/sign/vacuum{pixel_y = 32},/obj/effect/decal/remains/human,/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/awaymission/arrivalblock) -"gU" = (/obj/effect/decal/remains/human,/turf/simulated/floor/plasteel{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/awaymission/arrivalblock) +"gT" = (/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) +"gU" = (/obj/structure/girder,/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/awaymission/arrivalblock) "gV" = (/obj/machinery/computer/security,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 9},/area/awaymission/arrivalblock) "gW" = (/obj/machinery/computer/secure_data,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/awaymission/arrivalblock) "gX" = (/obj/structure/table,/obj/item/melee/baton,/obj/item/clothing/head/warden,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/awaymission/arrivalblock) "gY" = (/obj/structure/closet/wardrobe/red,/obj/machinery/light{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/awaymission/arrivalblock) "gZ" = (/obj/structure/closet/secure_closet/security,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/awaymission/arrivalblock) "ha" = (/obj/structure/closet/secure_closet/security,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 5},/area/awaymission/arrivalblock) -"hb" = (/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/midblock) +"hb" = (/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "hc" = (/obj/structure/bed,/obj/item/bedsheet/blue,/obj/structure/window/reinforced/tinted{dir = 1},/turf/simulated/floor/plasteel,/area/awaymission/midblock) "hd" = (/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"; tag = ""},/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/turf/simulated/floor/plasteel,/area/awaymission/midblock) "he" = (/obj/structure/bed,/obj/item/bedsheet/purple,/obj/structure/window/reinforced/tinted{dir = 1},/obj/effect/decal/remains/human,/turf/simulated/floor/plasteel,/area/awaymission/midblock) @@ -379,7 +379,7 @@ "ho" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/plating,/area/awaymission/arrivalblock) "hp" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/awaymission/arrivalblock) "hq" = (/obj/effect/decal/remains/human,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) -"hr" = (/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/awaymission/arrivalblock) +"hr" = (/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "hs" = (/obj/structure/table/reinforced,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) "ht" = (/obj/structure/chair{dir = 1},/obj/effect/decal/remains/human,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/awaymission/arrivalblock) "hu" = (/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) @@ -437,7 +437,7 @@ "iu" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/simulated/floor/plasteel,/area/awaymission/midblock) "iv" = (/obj/machinery/door/window/eastright{name = "Windoor"},/turf/simulated/floor/plasteel,/area/awaymission/midblock) "iw" = (/obj/item/ammo_casing/c10mm,/turf/simulated/floor/plasteel,/area/awaymission/midblock) -"ix" = (/obj/structure/girder,/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/arrivalblock) +"ix" = (/obj/structure/chair/comfy/brown{dir = 4},/turf/simulated/floor/wood,/area/awaymission/southblock) "iy" = (/obj/item/ammo_casing/c10mm,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor/plasteel,/area/awaymission/midblock) "iz" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless,/area/awaymission/southblock) "iA" = (/obj/item/ammo_casing/c10mm,/obj/item/ammo_casing/c10mm,/turf/simulated/floor/plasteel,/area/awaymission/midblock) @@ -455,6 +455,8 @@ "iM" = (/obj/effect/decal/remains/human,/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) "iN" = (/obj/structure/toilet{dir = 4},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 9},/area/awaymission/arrivalblock) "iO" = (/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/awaymission/arrivalblock) +"iP" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) +"iQ" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "iR" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel/airless,/area/awaymission/southblock) "iS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel/airless,/area/awaymission/southblock) "iT" = (/turf/simulated/floor/plasteel/airless,/area/awaymission/southblock) @@ -467,7 +469,10 @@ "ja" = (/obj/structure/closet/wardrobe/orange,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 10},/area/awaymission/arrivalblock) "jb" = (/obj/structure/bed,/turf/simulated/floor/plasteel{icon_state = "red"},/area/awaymission/arrivalblock) "jc" = (/obj/structure/chair/stool,/obj/machinery/light/small,/turf/simulated/floor/plasteel{icon_state = "red"},/area/awaymission/arrivalblock) +"jd" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_r"; icon_state = "propulsion_r"},/obj/structure/shuttle/engine/propulsion,/turf/space,/area/awaymission/arrivalblock) "je" = (/turf/space,/area/awaymission/arrivalblock) +"jf" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/awaymission/arrivalblock) +"jg" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_l"; icon_state = "propulsion_l"},/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l"; icon_state = "burst_l"},/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_l"; icon_state = "propulsion_l"},/obj/structure/shuttle/engine/propulsion,/turf/space,/area/awaymission/arrivalblock) "jh" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel/airless,/area/awaymission/southblock) "ji" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel/airless,/area/awaymission/southblock) "jj" = (/obj/item/ammo_casing/c10mm{pixel_y = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel/airless,/area/awaymission/southblock) @@ -498,11 +503,11 @@ "jI" = (/obj/structure/table,/obj/item/pen,/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 1},/area/awaymission/southblock) "jJ" = (/obj/structure/noticeboard{dir = 1; pixel_y = 32},/obj/structure/chair{dir = 8},/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaymission/southblock) "jK" = (/turf/simulated/floor/plasteel,/area/awaymission/southblock) -"jL" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/awaymission/gateroom) +"jL" = (/obj/structure/table,/obj/item/paper/pamphlet{pixel_x = 2; pixel_y = 2},/obj/item/paper/pamphlet{pixel_x = -2; pixel_y = -2},/obj/effect/decal/warning_stripes/northeastcorner,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "jM" = (/obj/machinery/gateway{dir = 9},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "jN" = (/obj/machinery/gateway{dir = 1},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "jO" = (/obj/machinery/gateway{dir = 5},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) -"jP" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/awaymission/gateroom) +"jP" = (/obj/effect/landmark{name = "awaystart"},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "jQ" = (/turf/simulated/floor/wood,/area/awaymission/southblock) "jR" = (/obj/structure/bookcase,/turf/simulated/floor/wood,/area/awaymission/southblock) "jS" = (/obj/structure/chair/comfy/brown{dir = 1},/turf/simulated/floor/wood,/area/awaymission/southblock) @@ -523,50 +528,49 @@ "kh" = (/obj/machinery/gateway{dir = 8},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "ki" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/gateway/centeraway{calibrated = 0},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "kj" = (/obj/machinery/gateway{dir = 4},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) -"kk" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair_brown (EAST)"; icon_state = "comfychair_brown"; dir = 4},/turf/simulated/floor/wood,/area/awaymission/southblock) +"kk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark{name = "awaystart"},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "kl" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/awaymission/arrivalblock) "km" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/arrivalblock) "kn" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/arrivalblock) "ko" = (/obj/machinery/door/airlock/external{welded = 1},/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) "kp" = (/obj/machinery/door/airlock/medical,/turf/simulated/floor/plasteel,/area/awaymission/southblock) -"kq" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/awaymission/gateroom) +"kq" = (/obj/structure/table,/obj/item/camera,/obj/effect/decal/warning_stripes/northwestcorner,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "kr" = (/obj/machinery/gateway{dir = 10},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "ks" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/gateway,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "kt" = (/obj/machinery/gateway{dir = 6},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) -"ku" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/awaymission/gateroom) +"ku" = (/obj/structure/chair/comfy/brown{dir = 8},/turf/simulated/floor/wood,/area/awaymission/southblock) "kv" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/wood,/area/awaymission/southblock) "kw" = (/obj/structure/chair/comfy/brown,/turf/simulated/floor/wood,/area/awaymission/southblock) -"kx" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_r"; icon_state = "propulsion_r"},/obj/structure/shuttle/engine/propulsion,/turf/simulated/shuttle/plating,/area/awaymission/arrivalblock) -"ky" = (/obj/structure/shuttle/engine/propulsion,/turf/simulated/shuttle/plating,/area/awaymission/arrivalblock) -"kz" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_l"; icon_state = "propulsion_l"},/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l"; icon_state = "burst_l"},/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_l"; icon_state = "propulsion_l"},/obj/structure/shuttle/engine/propulsion,/turf/simulated/shuttle/plating,/area/awaymission/arrivalblock) +"kx" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) +"ky" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) +"kz" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "kA" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_l (NORTH)"; icon_state = "propulsion_l"; dir = 1},/obj/structure/window/reinforced,/turf/space,/area/awaymission/arrivalblock) "kB" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_r (NORTH)"; icon_state = "propulsion_r"; dir = 1},/obj/structure/window/reinforced,/turf/space,/area/awaymission/arrivalblock) +"kC" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "kD" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) "kE" = (/obj/machinery/vending/hydroseeds,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) "kF" = (/obj/structure/sink/kitchen{pixel_y = 32},/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) "kG" = (/obj/item/clothing/shoes/syndigaloshes,/obj/item/clothing/under/syndicate,/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/paper/sc_safehint_paper_hydro,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) "kH" = (/obj/machinery/vending/medical,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaymission/southblock) "kI" = (/obj/structure/bed/roller,/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 1},/area/awaymission/southblock) -"kJ" = (/obj/structure/table,/obj/item/paper/pamphlet{pixel_x = 2; pixel_y = 2},/obj/item/paper/pamphlet{pixel_x = -2; pixel_y = -2},/turf/simulated/floor/plasteel{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/awaymission/gateroom) -"kK" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaymission/gateroom) -"kL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaymission/gateroom) -"kM" = (/obj/structure/table,/obj/item/camera,/turf/simulated/floor/plasteel{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/awaymission/gateroom) -"kN" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair_brown (WEST)"; icon_state = "comfychair_brown"; dir = 8},/turf/simulated/floor/wood,/area/awaymission/southblock) +"kJ" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) +"kK" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) +"kL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaymission/southblock) +"kM" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaymission/southblock) +"kN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/awaymission/southblock) "kO" = (/obj/structure/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/awaymission/arrivalblock) "kP" = (/obj/structure/chair,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/awaymission/arrivalblock) "kQ" = (/obj/structure/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/awaymission/arrivalblock) "kR" = (/turf/simulated/floor/plasteel{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/awaymission/southblock) "kS" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 4},/area/awaymission/southblock) "kT" = (/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 4},/area/awaymission/southblock) -"kU" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/awaymission/gateroom) +"kU" = (/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/awaymission/southblock) "kV" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "kW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) -"kX" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/awaymission/gateroom) +"kX" = (/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plasteel,/area/awaymission/southblock) "kY" = (/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/obj/structure/window/reinforced/tinted{dir = 1},/turf/simulated/floor/plasteel,/area/awaymission/southblock) "kZ" = (/obj/structure/window/reinforced/tinted{dir = 1},/turf/simulated/floor/plasteel,/area/awaymission/southblock) "la" = (/obj/structure/bed,/obj/structure/window/reinforced/tinted,/obj/item/bedsheet/medical,/obj/structure/window/reinforced/tinted{dir = 1},/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 4},/area/awaymission/southblock) -"lb" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/awaymission/gateroom) -"lc" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/awaymission/gateroom) "ld" = (/obj/machinery/light/small,/turf/simulated/floor/wood,/area/awaymission/southblock) "le" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) "lf" = (/obj/structure/table,/obj/item/book/manual/hydroponics_pod_people,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock) @@ -574,8 +578,6 @@ "lh" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/awaymission/southblock) "li" = (/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/turf/simulated/floor/plasteel,/area/awaymission/southblock) "lj" = (/obj/structure/bed,/obj/structure/window/reinforced/tinted,/obj/item/bedsheet/medical,/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 4},/area/awaymission/southblock) -"lk" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/awaymission/gateroom) -"ll" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/awaymission/gateroom) "lm" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/southblock) "ln" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/southblock) "lo" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/southblock) @@ -602,9 +604,6 @@ "lL" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel,/area/awaymission/southblock) "lM" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel,/area/awaymission/southblock) "lN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaymission/southblock) -"lO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaymission/southblock) -"lP" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaymission/southblock) -"lQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/awaymission/southblock) "lR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/door/airlock/engineering,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "lS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "lT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) @@ -614,8 +613,6 @@ "lX" = (/obj/structure/bed/roller,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaymission/southblock) "lY" = (/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 2},/area/awaymission/southblock) "lZ" = (/obj/machinery/sleeper{dir = 1},/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 2},/area/awaymission/southblock) -"mb" = (/turf/simulated/floor/plasteel{icon_state = "warning"},/area/awaymission/southblock) -"mc" = (/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/awaymission/southblock) "md" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/light/small,/turf/simulated/floor/plasteel,/area/awaymission/gateroom) "me" = (/obj/machinery/power/apc/noalarm{dir = 4; name = "Gateroom APC"; pixel_x = 28; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plasteel,/area/awaymission/gateroom) @@ -637,51 +634,51 @@ aaaaaaaaaaaaaaaaafafagaeagagafafagagagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagag aaaaaaaaaaaaaaaaafadahafadagahadafafadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadadadadadagadadadadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaajajajajajajajajajajajajajajajaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaagakaaaaaaaaaaakajalamanaoapaqarapasatauauauajakaaaaaaaaaaakagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaafakakaaaaaaakakajavawaxayafazaAanaBaqaBaFaBajakakaaaaaaakakagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaCaDafafagagagagagagaEafanaqaFafaGapaBaqafaqaFaBaEagagagagagagagagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaDaaaaaaaIaJaKaaaaaaaaaaakakajaqaqamaqaqaFaHaBaLaFaBaMaNajakakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aCaCaDaaaaaaaaaCaDaaaaaOaPaQaDaaaaaaaaaaakafafafaqaRaSbcbcaTaUaBamaVaWajakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aCaXaYaDaaaaaaaCaCaCaCaCaCaCaCaCaCaZaabaaaafajajajajajbbbvajajajajajajajaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -bdbebfaYaDaaaaaCeheheierepexeJeKeJaCaCaaaqajaFbcaqaHaHapbcajaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -bobpbqbraCaCaCaCeKeKeKeKeKeKeKeKeJaCaCaKaKaCaCbsaHbcbcaHapajaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -bobpbqbfbteKeKeKeKeKeKeKeKeKeKeKeKeLeKeKeKeKeKeLbwbFbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -bobpbqbyaCaCaCaCeKeKeWffeXfhfgeKeJaCaCaCaCaCaKbEbYgqbHgDbJbKbLbHbMbJbNbHbObPbKbQbRbSbSbTbxakakaaaaaaaaaaaaaaaabxbxbxbxbxaaaaaaaa -bUbVbfbWbEaaaaaCfifieKffeXeKfgeKeJaCaCbEafajbcbcbFbZcagEbJbJcdcacbbJcdcecbbJbJcfcgbSbSbSbxakakakakakakakbxbxbxbxchchchbxbxbxaaaa -aCbfbWbEaaaaaaaCaCaCaCaCaCaCaCaCaCaCbEafciajbcbcbxcjgFclcmbJcncocpcqcrcocpbJcsctcucvcwcxbxakakaaaaaaaacyczcAcAcAcAcBcAcAcAbxbxaa -aCaCbEaaaaaaaaaCbEaaaacCaPcDafafafafafaqbcajbccEbxbJbJcFbJbJbJcGhhbJbJcGcmcIbJcJbJbJbJbJbxakaaaaaaaacycKcAcLcAcBcMcNcOcBcAcPbxaa -aaaaaaaaaaaaaabEaaaaaaaKaJafafafafafcQafcRajbcbcbxbxbxbxbxcScTcUbJbJbJbJcTbJbJbJbJbJbJbJbxbxbxbxbxcVbxbxcWcAcXcYcYcYcYcYcZcAbxbx -aaaaaaaaaaaaaaaaaaaaaaaCafafaeaqafaeaqaqaqdaaHbcbxdbdcddbxdedfdgdgdgdgdgdgdgdfdgdgdgdghibxdibIbxbxdkcAdlcAcAcMcYcYcYdmcYcOcAdnbx -aaaaaaaaaaaaafafafafafafajajajaqdoaqanandpajaHdqdrdsdsdsdtdubJbJbJbJbJbJcIbJbJbJbJbJbJbJdvcAcAdvcAcAcAdlcAcXcNcYcYcYcYcYcNcZdnbx -aaaaaaaaaaaaafafafafbgbibhbjajafajajajajajajaHdAbxdBdCddbxdDdEdFdGdFdFdFdFdFdGdHdFdFdFbGbxcAbIbxbxcAdJdlcAcAdKcYcYcYcYcYdLcAdnbx -aaaaaaaaaaaaajafbkafdNanblbmafbnafdRdSdTamajbcdUbxbxbxbxbxcSdVbJbJbJdWdXdYdZbJbJeaeaeaeabxbxbxbxbxcVbxbxcWcAcXcYcYcYcYcYcZcAbxbx -aaaaaaaaaaaaebbzbuanaeaeanbAafbCbBbDbDbDbXajejdUbxdFdFdFekbJdVbJbJbJbJbJbJdZbJbJeaelbJembxakaaaaaaaacycKcAcAcAendKcNdLencAcPbxaa -aaaaaaaaaaaaeodweqanaeanandxesetdyetevetdzeseyewbxeAeBeCeDbJdVbJbJbJbJbJbJdZbJbJeaeEeFeGbxakakaaaaaaaacyeHcAcAcAcAencAcAcAbxbxaa -aaaaaaaaaaaaeIdMafanafanandOajdPbAbgbgbgbuajbcdAbxeCeCeCeDbJdVeNbJeOePePeQeRbJbJeSeTbJeUbxakakakakakakakbxbxbxbxeVeVeVbxbxbxaaaa -aaaaaaaaaaaaajajdQbXecanecbmajbnezapeMeZapajbcfbbxeAeBeCeDbJdVfcbJbJfdbJfedZbJbJeaeaeaeabxakakaaaaaaaaaaaaaaaabxbxbxbxbxaaaaaaaa -aaaaaaaaaaaaafajajeeedefbDegajajajfjajajajajaBfbbxeCeCeCeDbJdVfkbJbJbJbJfldZbJfmbJbJbJfnbxakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaajajajajajajajfofpfpajfqfqeYfafrbxeAeBeCeDbJdVfufvfwfxfyfzdZbJccbJbJbJfBbxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaafakakaaaaaaakakajavawaxayafazaAanagaqagaFagajakakaaaaaaakakagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaCaDafafagagagagagagaEafanaqaFafaGapagaqafaqaFagaEagagagagagagagagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaDaaaaaaaIaJaKaaaaaaaaaaakakajaqaqamaqaqaFaFagaLaFagaMaNajakakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aCaCaDaaaaaaaaaCaDaaaaaOaPaQaDaaaaaaaaaaakafafafaqaRaSaqaqaTaUagamaVaBajakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aCaXaYaDaaaaaaaCaCaCaCaCaCaCaCaCaCaZaabaaaafajajajajajbbaHajajajajajajajaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +bdbebfaYaDaaaaaCeheheierepexeJeKeJaCaCaaaqajaFbcaqaFaFapaqajaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +bobpbqbraCaCaCaCeKeKeKeKeKeKeKeKeJaCaCaKaKaCaCbsaFaqaqaFapajaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +bobpbqbfbteKeKeKeKeKeKeKeKeKeKeKeKeLeKeKeKeKeKeLbwaWbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +bobpbqbyaCaCaCaCeKeKeWffeXfhfgeKeJaCaCaCaCaCaKbEbwbvbFbHbJbKbLbFbMbJbNbFbObPbKbQbRbSbSbTbxakakaaaaaaaaaaaaaaaabxbxbxbxbxaaaaaaaa +bUbVbfbWbEaaaaaCfifieKffeXeKfgeKeJaCaCbEafajaqaqaWbYcabZbJbJcbcacdbJcbcecdbJbJcfcgbSbSbSbxakakakakakakakbxbxbxbxchchchbxbxbxaaaa +aCbfbWbEaaaaaaaCaCaCaCaCaCaCaCaCaCaCbEafciajaqaqbxcjclcncmbJcocpcrcqcEcpcrbJcsctcucvcwcxbxakakaaaaaaaacyczcAcAcAcAcBcAcAcAbxbxaa +aCaCbEaaaaaaaaaCbEaaaacCaPcDafafafafafaqaqajaqcRbxbJbJcFbJbJbJcGhhbJbJcGcmcIbJcJbJbJbJbJbxakaaaaaaaacycKcAcLcAcBcMcNcOcBcAcPbxaa +aaaaaaaaaaaaaabEaaaaaaaKaJafafafafafcQafdcajaqaqbxbxbxbxbxcScTcUbJbJbJbJcTbJbJbJbJbJbJbJbxbxbxbxbxcVbxbxcWcAcXcYcYcYcYcYcZcAbxbx +aaaaaaaaaaaaaaaaaaaaaaaCafafaeaqafaeaqaqaqdaaFaqbxdbdddqbxdedfdgdgdgdgdgdgdgdfdgdgdgdghibxdibIbxbxdkcAdlcAcAcMcYcYcYdmcYcOcAdnbx +aaaaaaaaaaaaafafafafafafajajajaqdoaqanandpajaFdsdrdAdAdAdtdubJbJbJbJbJbJcIbJbJbJbJbJbJbJdvcAcAdvcAcAcAdlcAcXcNcYcYcYcYcYcNcZdnbx +aaaaaaaaaaaaafafafafbgbibhbjajafajajajajajajaFdCbxdBdUdqbxdDdEdFdGdFdFdFdFdFdGdHdFdFdFbGbxcAbIbxbxcAdJdlcAcAdKcYcYcYcYcYdLcAdnbx +aaaaaaaaaaaaajafbkafdNanblbmafbnafdRdSdTamajaqejbxbxbxbxbxcSdVbJbJbJdWdXdYdZbJbJeaeaeaeabxbxbxbxbxcVbxbxcWcAcXcYcYcYcYcYcZcAbxbx +aaaaaaaaaaaaebbzbuanaeaeanbAafbCbBbDbDbDbXajeyejbxdFdFdFekbJdVbJbJbJbJbJbJdZbJbJeaelbJembxakaaaaaaaacycKcAcAcAendKcNdLencAcPbxaa +aaaaaaaaaaaaeodweqanaeanandxesetdyetevetdzesfbewbxeAeBeCeDbJdVbJbJbJbJbJbJdZbJbJeaeEeFeGbxakakaaaaaaaacyeHcAcAcAcAencAcAcAbxbxaa +aaaaaaaaaaaaeIdMafanafanandOajdPbAbgbgbgbuajaqdCbxeCeCeCeDbJdVeNbJeOePePeQeRbJbJeSeTbJeUbxakakakakakakakbxbxbxbxeVeVeVbxbxbxaaaa +aaaaaaaaaaaaajajdQbXecanecbmajbnezapeMeZapajaqfrbxeAeBeCeDbJdVfcbJbJfdbJfedZbJbJeaeaeaeabxakakaaaaaaaaaaaaaaaabxbxbxbxbxaaaaaaaa +aaaaaaaaaaaaafajajeeedefbDegajajajfjajajajajagfrbxeCeCeCeDbJdVfkbJbJbJbJfldZbJfmbJbJbJfnbxakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaajajajajajajajfofpfpajfqfqeYfaggbxeAeBeCeDbJdVfufvfwfxfyfzdZbJccbJbJbJfBbxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaajfpfpckajfEfsftftfFbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxbxfIfIfIfIfIfIfIfJfKaaaaaaaaaaaaaaaaaaaa aafLfMfNfOfPfMfQaaaaaaaaaaaaajfRfpfSajfqfTfUfUfUfUfUfUfUfUfUfUfUfUfUfUfUfUfUfUfUfUfUfUfUfIfVfWfVfXfVfXfWfXfYfKaaaaaaaaaaaaaaaaaa -aafZgagbgcgbgafZaaaaaaaaaaaaajgdgecHajfqggfUghgigjgigkfUglgmgnfUgogpgigrgsgigigtgifUfqfqfIfVfXfVfXfVfXgufXfXgvaaaaaaaaaaaaaaaaaa +aafZgagbgcgbgafZaaaaaaaaaaaaajgdgecHajfqgqfUghgigjgigkfUglgmgnfUgogpgigrgsgigigtgifUfqfqfIfVfXfVfXfVfXgufXfXgvaaaaaaaaaaaaaaaaaa aagwgxgbgbgbgxgygzgzgzgzgzgzgzgzgzgzgzfqfTfUgAgigBgigCfUgigigCfUdhdIdjgGgHgigIgrgJfUfqfqgKgLgLgMgLgLgLgNgOgPgvaaaaaaaaaaaaaaaaaa -aagQgbgbgbgbgbgRgSgTgUgzgVgWgXgYgZhagzhbfTfUhchchdhehffUhgfUfUfUgigrgrgrhjgigigihkfUfqfqgKgLgLgLgLgLgLfXhlhmgvaaaaaaaaaaaaaaaaaa -aahngcgcgbgcgchohphqhrhshthuhueuhwhxgzhyhzfUgAgihdgigCfUgihAhBhCgigrgsgihDgigIgrgJfUfEfqfIfVfXfVfXfVfXgufXfXgvaaaaaaaaaaaaaaaaaa +aagQgbgbgbgbgbgRgSgDgEgzgVgWgXgYgZhagzgFfTfUhchchdhehffUhgfUfUfUgigrgrgrhjgigigihkfUfqfqgKgLgLgLgLgLgLfXhlhmgvaaaaaaaaaaaaaaaaaa +aahngcgcgbgcgchohphqgThshthuhueuhwhxgzhyhzfUgAgihdgigCfUgihAhBhCgigrgsgihDgigIgrgJfUfEfqfIfVfXfVfXfVfXgufXfXgvaaaaaaaaaaaaaaaaaa aafZgbgbgbgbgbfZhEhuhqgzhFhuhGhHhIhJgzeYfTfUhKgigBgihLfUhMgigihNgigrgsgihOhPhQgifAfUfqfqfIfVhSfVfXfVfXhSfXhThUaaaaaaaaaaaaaaaaaa aafZgcgcgbgcgcfZhVhWhugzhXhYhYhZhZiaibicfGfUgigihdgigifUiegigigigigrifigfCigiiijikfUfqfqfIfIfIfIfIfIfIfIfJhUaaaaaaaaaaaaaaaaaaaa aafZgbgbgbgbgbfZhVilimgzinioioioioipgzfqfTfUiqhKhdhLhLfUirisitiugiiviwfDiygfiAiBgifUfqfqfUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aagwgcgcgbgcgcgwiCiDhugzgziEiFiGgziHgzfqfTfUfUfUhgfUfUfUfUfUfUfUfUfUfUfUiIiJfUfUfUfUfqfqfUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aagQgbgbgbgbgbiKiLhqiMgziNiOiOiOfHidgziRiSiTiTiUiViTiTiTiTiTiWiTiTiTiTiTiSiTiTiTiTiTiTiXiYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aahngcgcgbgcgchniZhuilgzjajbjbjcihjeixizjhjijijijjjkjijijijijijijijijijljmiTjniTiTiTiTiTiYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aahngcgcgbgcgchniZhuilgzjajbjbjcihjegUizjhjijijijjjkjijijijijijijijijijljmiTjniTiTiTiTiTiYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aafZgbgbgbgbgbfZhEiDilgzgzgzgzgzgzjogzgzgzjpjpiYiYjqiYiYiYiYjriYiYiYjsjtjujujujujujujujsiYiYiYjvjwjxaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aafZgcgcgbgcgcfZhVhuhqjyjzjAiljBhujChuhuhuhuhuiYjDjEjFiYjGjHjHjIjJiYjKjEjujLjMjNjOjPjujQjQjRjRjSjQjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aafZgbgbgbgbgbfZjUjViDhqhWhujWjyhujXhuhuhuhuhuiYjYjZkaiYkbkckdkekfiYjKkgjujLkhkikjjPjujQjQjQjQjQkkjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aafZklklklklklfZgzkmknkokmkngzgzgzgzgzjpgzgzgziYiYiYiYiYiYiYkpiYjriYjKjEjukqkrksktkujukvjQkwjQjQjQjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aagakxkykykykzgaaafLkAgRkBfQaagzkDkEkFhukGjzhuiYkfjHkfiYkHjHjHkIkfiYjKjEjukJkKkLkKkMjujQkkjQkNjQjQjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaafZkOkPkQfZaagzhuhujzhuhujzhuiYkRjKkSiYkRjKjKjKkTiYjKjEjukUkVkWkVkXjujQjQjSjQjQkkjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaafZkOgbkQfZaagzhujzhujzhuhuhuiYkfkdkfkpkRjKkYkZlaiYjKjEjulbkVkWkVlcjukkjQjQldkwjQjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaafZkOgckQfZaagzlehulfhulghuhuiYiYiYiYiYlhjKlijKljiYjKjEjulkkVkWkVlljujujujujulmlnloaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aafZgcgcgbgcgcfZhVhuhqjyjzjAiljBhujChuhuhuhuhuiYjDjEjFiYjGjHjHjIjJiYjKjEjuhbjMjNjOhrjujQjQjRjRjSjQjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aafZgbgbgbgbgbfZjUjViDhqhWhujWjyhujXhuhuhuhuhuiYjYjZkaiYkbkckdkekfiYjKkgjuhbkhkikjhrjujQjQjQjQjQixjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aafZklklklklklfZgzkmknkokmkngzgzgzgzgzjpgzgzgziYiYiYiYiYiYiYkpiYjriYjKjEjuiPkrksktiQjukvjQkwjQjQjQjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aagajdjfjfjfjggaaafLkAgRkBfQaagzkDkEkFhukGjzhuiYkfjHkfiYkHjHjHkIkfiYjKjEjujLjPkkjPkqjujQixjQkujQjQjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaafZkOkPkQfZaagzhuhujzhuhujzhuiYkRjKkSiYkRjKjKjKkTiYjKjEjukxkVkWkVkyjujQjQjSjQjQixjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaafZkOgbkQfZaagzhujzhujzhuhuhuiYkfkdkfkpkRjKkYkZlaiYjKjEjukzkVkWkVkCjujSjQjQldkwjQjTaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaafZkOgckQfZaagzlehulfhulghuhuiYiYiYiYiYlhjKlijKljiYjKjEjukJkVkWkVkKjujujujujulmlnloaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaahvlqlrlqhRaagzlthuluhulvjzhuiYlwlxlyiYkRjKlijKlziYjKlAjujujulBjujujulClDlEjuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaagzltlFlGlHhuhuhuiYlIkfkfkpkRjKlJjKlKiYlLlMlNlOlOlPlOlQlRlSlTlUjuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaagzgzgzgzgzgzgzgziYlVlWlXiYkfkdlYlZkfiYjKjKjKmbmbmbmbmcjulCmdmejuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaagzltlFlGlHhuhuhuiYlIkfkfkpkRjKlJjKlKiYlLlMlNkLkLkMkLkNlRlSlTlUjuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaagzgzgzgzgzgzgzgziYlVlWlXiYkfkdlYlZkfiYjKjKjKkUkUkUkUkXjulCmdmejuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiYiYiYiYiYiYiYiYiYiYiYiYiYiYiYiYiYiYiYjujujujujuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} \ No newline at end of file +"} diff --git a/_maps/map_files/RandomZLevels/undergroundoutpost45.dmm b/_maps/map_files/RandomZLevels/undergroundoutpost45.dmm index 5ccc7db7a4c..9d94eae452d 100644 --- a/_maps/map_files/RandomZLevels/undergroundoutpost45.dmm +++ b/_maps/map_files/RandomZLevels/undergroundoutpost45.dmm @@ -7,22 +7,22 @@ "ag" = (/turf/simulated/shuttle/wall{tag = "icon-swallc1"; icon_state = "swallc1"; dir = 2},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "ah" = (/turf/simulated/shuttle/wall{icon_state = "swall3"; dir = 2},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "ai" = (/obj/effect/decal/cleanable/dirt,/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) -"aj" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) +"aj" = (/obj/machinery/light/small{active_power_usage = 0; dir = 8; icon_state = "bulb-broken"; status = 2},/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "ak" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) -"al" = (/obj/machinery/door_control{desc = "A remote control-switch to send the elevator to the basement floor."; id = "UO45_useless"; name = "B1"; pixel_x = 6; pixel_y = -24; req_access_txt = "0"},/obj/machinery/door_control{desc = "A remote control-switch for the elevator doors."; id = "UO45_Elevator"; name = "Elevator Doors"; pixel_x = -6; pixel_y = -24; req_access_txt = "0"},/obj/machinery/door_control{desc = "A remote control-switch to send the elevator to the ground floor."; id = "UO45_useless"; name = "G1"; pixel_x = 6; pixel_y = -34; req_access_txt = "0"},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) +"al" = (/obj/machinery/door_control{desc = "A remote control-switch to send the elevator to the basement floor."; id = "UO45_useless"; name = "B1"; pixel_x = 6; pixel_y = -24; req_access_txt = "0"},/obj/machinery/door_control{desc = "A remote control-switch for the elevator doors."; id = "UO45_Elevator"; name = "Elevator Doors"; pixel_x = -6; pixel_y = -24; req_access_txt = "0"},/obj/machinery/door_control{desc = "A remote control-switch to send the elevator to the ground floor."; id = "UO45_useless"; name = "G1"; pixel_x = 6; pixel_y = -34; req_access_txt = "0"},/obj/effect/landmark/burnturf,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "am" = (/turf/simulated/wall/r_wall/rust,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) -"an" = (/obj/machinery/light/small{active_power_usage = 0; dir = 8; icon_state = "bulb-broken"; status = 2},/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) +"an" = (/obj/machinery/door/poddoor{id_tag = "UO45_Elevator"; name = "Elevator Door"},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "ao" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel{icon_state = "darkblue"; tag = "icon-darkblue"; temperature = 273.15},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "ap" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "aq" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small{active_power_usage = 0; dir = 4; icon_state = "bulb-broken"; status = 2},/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) -"ar" = (/obj/machinery/door/poddoor{id_tag = "UO45_Elevator"; name = "Elevator Door"},/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) +"ar" = (/obj/machinery/door/poddoor{id_tag = "UO45_Elevator"; name = "Elevator Door"},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "as" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "darkblue"; tag = "icon-darkblue"; temperature = 273.15},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "at" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "au" = (/turf/simulated/floor/plasteel{tag = "icon-darkblue (SOUTHEAST)"; icon_state = "darkblue"; dir = 6},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "av" = (/turf/simulated/shuttle/wall{tag = "icon-swallc3"; icon_state = "swallc3"; dir = 2},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "aw" = (/turf/simulated/shuttle/wall{icon_state = "swall8"; dir = 2},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "ax" = (/obj/effect/landmark/burnturf,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) -"ay" = (/obj/machinery/door/poddoor{id_tag = "UO45_Elevator"; name = "Elevator Door"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) +"ay" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "az" = (/turf/simulated/shuttle/wall{icon_state = "swall4"; dir = 2},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "aA" = (/turf/simulated/shuttle/wall{tag = "icon-swallc4"; icon_state = "swallc4"; dir = 2},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "aB" = (/turf/simulated/wall,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) @@ -34,7 +34,7 @@ "aH" = (/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "aI" = (/obj/structure/sign/poster/official/nanotrasen_logo{pixel_y = 32},/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "aJ" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) -"aK" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) +"aK" = (/obj/item/twohanded/required/kirbyplants{layer = 5},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "aL" = (/obj/structure/closet/emcloset,/obj/item/clothing/mask/breath,/obj/structure/sign/poster/official/safety_internals{pixel_x = -32},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "aM" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "aN" = (/obj/machinery/vending/cola,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) @@ -166,7 +166,7 @@ "dj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/obj/effect/landmark/burnturf,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "dk" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "dl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) -"dm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) +"dm" = (/obj/machinery/r_n_d/destructive_analyzer,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "dn" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "do" = (/obj/machinery/firealarm{dir = 2; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "dp" = (/obj/item/twohanded/required/kirbyplants{layer = 5},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 2; icon_state = "greencorner"; tag = "icon-greencorner"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) @@ -304,7 +304,7 @@ "fR" = (/obj/machinery/light/small,/obj/machinery/alarm/monitor{dir = 1; frequency = 1439; locked = 0; pixel_y = -23; req_access = null},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/dresser,/turf/simulated/floor/carpet,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "fS" = (/obj/structure/table/wood,/obj/machinery/newscaster{pixel_x = 0; pixel_y = -28},/turf/simulated/floor/carpet,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "fT" = (/obj/structure/bed,/obj/item/bedsheet,/turf/simulated/floor/carpet,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) -"fU" = (/obj/item/twohanded/required/kirbyplants{layer = 5},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) +"fU" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "fV" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -28},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "fW" = (/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -24},/obj/machinery/camera{c_tag = "Central Hallway"; dir = 1; network = list("UO45")},/turf/simulated/floor/plasteel,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "fX" = (/obj/machinery/vending/snack,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) @@ -390,11 +390,11 @@ "hz" = (/obj/structure/closet/emcloset,/obj/item/clothing/mask/breath,/obj/structure/sign/poster/official/safety_internals{pixel_y = 32},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "hA" = (/obj/structure/closet/firecloset,/turf/simulated/floor/plating,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "hB" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small{dir = 1},/obj/item/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"hC" = (/obj/machinery/r_n_d/destructive_analyzer,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"hD" = (/obj/machinery/r_n_d/protolathe,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"hE" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"hC" = (/obj/machinery/r_n_d/protolathe,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"hD" = (/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"hE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/obj/item/stock_parts/scanning_module,/obj/structure/sign/nosmoking_2{pixel_x = -32},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "hF" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"hG" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"hG" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "hH" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "hI" = (/obj/structure/table/glass,/obj/item/stock_parts/manipulator,/obj/item/stock_parts/manipulator,/obj/item/stock_parts/capacitor,/obj/item/stock_parts/capacitor,/obj/item/stock_parts/micro_laser,/obj/item/stock_parts/micro_laser,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitehall"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "hJ" = (/obj/structure/table,/obj/item/trash/chips,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -439,11 +439,11 @@ "iw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/window{dir = 2; name = "Gateway Chamber"; req_access_txt = "201"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "ix" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/chair{tag = "icon-chair (WEST)"; icon_state = "chair"; dir = 8},/obj/effect/decal/cleanable/dirt,/obj/structure/sign/nosmoking_2{pixel_x = 32},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iy" = (/obj/machinery/door/airlock{name = "Emergency Supplies"},/turf/simulated/floor/plating,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"iz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/obj/item/stock_parts/scanning_module,/obj/structure/sign/nosmoking_2{pixel_x = -32},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warnwhite"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"iA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warnwhite"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"iB" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warnwhite"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"iz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"iA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/warning_stripes/northwestcorner,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"iB" = (/obj/structure/table,/obj/item/storage/firstaid/regular,/obj/structure/sign/biohazard{pixel_x = -32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"iD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhitecorner"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"iD" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/table,/obj/item/paper/pamphlet,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iE" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitehall"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "iF" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "iG" = (/obj/structure/table,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -455,11 +455,11 @@ "iM" = (/obj/structure/closet/secure_closet{icon_broken = "fridgebroken"; icon_closed = "fridge"; icon_locked = "fridge1"; icon_off = "fridgeoff"; icon_opened = "fridgeopen"; icon_state = "fridge"; locked = 0; name = "refrigerator"; req_access_txt = "201"},/obj/item/reagent_containers/food/condiment/milk,/obj/item/reagent_containers/food/condiment/milk,/obj/item/reagent_containers/food/condiment/milk,/obj/item/storage/fancy/egg_box,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 5; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "iN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "iO" = (/obj/structure/closet/emcloset,/obj/item/clothing/mask/breath,/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) -"iP" = (/obj/structure/table,/obj/item/storage/firstaid/regular,/obj/structure/sign/biohazard{pixel_x = -32},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) +"iP" = (/obj/machinery/alarm/monitor{dir = 4; frequency = 1439; locked = 0; pixel_x = -23; pixel_y = 0; req_access = null},/obj/machinery/camera{c_tag = "Gateway Chamber"; dir = 4; network = list("UO45","UO45R")},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iQ" = (/obj/structure/table,/obj/machinery/recharger,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iS" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"iT" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/table,/obj/item/paper/pamphlet,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) +"iT" = (/obj/structure/closet/l3closet/scientist,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iU" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/chair{tag = "icon-chair (WEST)"; icon_state = "chair"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iV" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/chair{tag = "icon-chair (WEST)"; icon_state = "chair"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) @@ -474,7 +474,7 @@ "jf" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/sign/deathsposal{desc = "A warning sign which reads 'DISPOSAL: LEADS TO EXTERIOR'"; name = "\improper DISPOSAL: LEADS TO EXTERIOR"; pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plasteel{dir = 5; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "jg" = (/obj/structure/closet/secure_closet{icon_state = "secure"; locked = 0; name = "kitchen Cabinet"; req_access_txt = "201"},/obj/item/reagent_containers/food/condiment/flour,/obj/item/reagent_containers/food/condiment/flour,/obj/item/reagent_containers/food/condiment/sugar,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 5; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "jh" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"ji" = (/obj/machinery/alarm/monitor{dir = 4; frequency = 1439; locked = 0; pixel_x = -23; pixel_y = 0; req_access = null},/obj/machinery/camera{c_tag = "Gateway Chamber"; dir = 4; network = list("UO45","UO45R")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) +"ji" = (/obj/structure/closet/l3closet/scientist,/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "jj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "jk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "jl" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) @@ -498,10 +498,10 @@ "jD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall/rust,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "jE" = (/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "jF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/wall/r_wall,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) -"jG" = (/obj/structure/closet/l3closet/scientist,/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"jH" = (/obj/structure/closet/l3closet/scientist,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) +"jG" = (/obj/structure/closet/secure_closet{icon_broken = "secureresbroken"; icon_closed = "secureres"; icon_locked = "secureres1"; icon_off = "secureresoff"; icon_opened = "secureresopen"; icon_state = "secureres"; locked = 0; name = "scientist's locker"; req_access_txt = "201"},/obj/item/tank/air,/obj/item/clothing/mask/gas,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"jH" = (/obj/machinery/light/small{dir = 1},/obj/structure/closet/secure_closet{icon_broken = "secureresbroken"; icon_closed = "secureres"; icon_locked = "secureres1"; icon_off = "secureresoff"; icon_opened = "secureresopen"; icon_state = "secureres"; locked = 0; name = "scientist's locker"; req_access_txt = "201"},/obj/item/clothing/gloves/color/latex,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "jI" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"jJ" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) +"jJ" = (/obj/structure/sign/securearea{pixel_y = 32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "jK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "jL" = (/obj/machinery/alarm/monitor{dir = 8; frequency = 1439; locked = 0; pixel_x = 23; pixel_y = 0; req_access = null},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; tag = "icon-manifold-r-f (EAST)"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "jM" = (/obj/machinery/light/small,/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -530,8 +530,8 @@ "kj" = (/obj/item/twohanded/required/kirbyplants{layer = 5},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "kk" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitepurplecorner"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "kl" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitepurple"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"km" = (/obj/machinery/light/small{dir = 1},/obj/structure/closet/secure_closet{icon_broken = "secureresbroken"; icon_closed = "secureres"; icon_locked = "secureres1"; icon_off = "secureresoff"; icon_opened = "secureresopen"; icon_state = "secureres"; locked = 0; name = "scientist's locker"; req_access_txt = "201"},/obj/item/clothing/gloves/color/latex,/turf/simulated/floor/plasteel,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"kn" = (/obj/structure/closet/secure_closet{icon_broken = "secureresbroken"; icon_closed = "secureres"; icon_locked = "secureres1"; icon_off = "secureresoff"; icon_opened = "secureresopen"; icon_state = "secureres"; locked = 0; name = "scientist's locker"; req_access_txt = "201"},/obj/item/tank/air,/obj/item/clothing/mask/gas,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"km" = (/obj/structure/dispenser/oxygen,/obj/effect/decal/cleanable/dirt,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) +"kn" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "ko" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "kp" = (/obj/machinery/alarm/monitor{frequency = 1439; locked = 0; pixel_y = 23; req_access = null},/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "kq" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/public/glass{name = "Diner"},/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -544,10 +544,10 @@ "kx" = (/obj/structure/closet/crate,/obj/effect/decal/cleanable/dirt,/obj/item/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/multitool,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "ky" = (/obj/structure/closet/l3closet/general,/turf/simulated/floor/plating,/area/awaycontent/a1{has_gravity = 1; name = "UO45 Central Hall"}) "kz" = (/obj/structure/table,/obj/item/storage/belt/utility,/obj/item/clothing/head/welding,/obj/structure/sign/biohazard{pixel_x = 0; pixel_y = 32},/obj/item/assembly/prox_sensor,/obj/item/assembly/prox_sensor,/turf/simulated/floor/plasteel{dir = 4; icon_state = "warndark"; tag = "icon-warndark (EAST)"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"kA" = (/obj/structure/sign/securearea{pixel_y = 32},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"kB" = (/obj/structure/dispenser/oxygen,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"kC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"kD" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) +"kA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light/small{dir = 4},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) +"kB" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id_tag = "UO45_biohazard"; name = "biohazard containment door"},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"kC" = (/obj/structure/chair{tag = "icon-chair (WEST)"; icon_state = "chair"; dir = 8},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) +"kD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/portable_atmospherics/scrubber,/obj/structure/window/basic{tag = "icon-window (EAST)"; icon_state = "window"; dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "kE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light/small{dir = 8},/obj/structure/sign/securearea{pixel_x = -32},/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "kF" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/airlock/research{name = "Research Division Access"; req_access_txt = "201"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "kG" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) @@ -569,7 +569,7 @@ "kW" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = 30},/turf/simulated/floor/plasteel{tag = "icon-whitepurplecorner (EAST)"; icon_state = "whitepurplecorner"; dir = 4},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "kX" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{tag = "icon-whitepurplecorner (EAST)"; icon_state = "whitepurplecorner"; dir = 4},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "kY" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitepurple"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"kZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id_tag = "UO45_biohazard"; name = "biohazard containment door"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"kZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "la" = (/obj/machinery/shower{pixel_y = 15},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warnwhite"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "lb" = (/obj/structure/sink{pixel_y = 25},/obj/effect/decal/cleanable/dirt,/obj/structure/sign/nosmoking_2{pixel_x = -32},/turf/simulated/floor/plasteel{dir = 9; icon_state = "warnwhite"},/area/space) "lc" = (/obj/structure/sink{pixel_y = 25},/turf/simulated/floor/plasteel{dir = 5; icon_state = "warnwhite"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) @@ -614,7 +614,7 @@ "lP" = (/obj/machinery/door/airlock/research{name = "Research Division Access"; req_access_txt = "201"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "lQ" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "lR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "purple"; tag = "icon-purple (WEST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"lS" = (/obj/structure/chair{tag = "icon-chair (WEST)"; icon_state = "chair"; dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) +"lS" = (/obj/structure/chair{dir = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "lT" = (/obj/structure/chair{tag = "icon-chair (EAST)"; icon_state = "chair"; dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "lU" = (/obj/structure/table,/obj/item/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/reagent_containers/food/condiment/peppermill{pixel_x = 3},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "lV" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/structure/sign/deathsposal{desc = "A warning sign which reads 'DISPOSAL: LEADS TO EXTERIOR'"; name = "\improper DISPOSAL: LEADS TO EXTERIOR"; pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -628,8 +628,8 @@ "md" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "me" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "mf" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"mg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"mh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/portable_atmospherics/scrubber,/obj/structure/window/basic{tag = "icon-window (EAST)"; icon_state = "window"; dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"mg" = (/obj/structure/table,/obj/item/newspaper,/obj/machinery/newscaster{pixel_x = 30; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) +"mh" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "mi" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/command{name = "Research Director's Office"; req_access_txt = "201"},/turf/simulated/floor/plasteel{dir = 5; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "mj" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id_tag = "UO45_rdprivacy"; name = "privacy shutters"},/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "mk" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/poddoor/shutters/preopen{id_tag = "UO45_rdprivacy"; name = "privacy shutters"},/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) @@ -638,8 +638,8 @@ "mn" = (/obj/structure/closet/firecloset,/turf/simulated/floor/plasteel{dir = 10; icon_state = "warnwhite"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "mo" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plasteel{dir = 6; icon_state = "warnwhite"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "mp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 1; icon_state = "purplecorner"; tag = "icon-purplecorner (NORTH)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"mq" = (/obj/structure/table,/obj/item/newspaper,/obj/machinery/newscaster{pixel_x = 30; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"mr" = (/obj/structure/chair{dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) +"mq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) +"mr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "ms" = (/obj/structure/table/wood,/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/carpet,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "mt" = (/obj/structure/bed,/obj/item/bedsheet,/turf/simulated/floor/carpet,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "mu" = (/obj/machinery/light/small{dir = 1},/obj/machinery/alarm/monitor{frequency = 1439; locked = 0; pixel_y = 23; req_access = null},/turf/simulated/floor/carpet,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -647,7 +647,7 @@ "mw" = (/obj/structure/closet/secure_closet{desc = "It's a secure locker for personnel. The first card swiped gains control."; icon_broken = "cabinetdetective_broken"; icon_closed = "cabinetdetective"; icon_locked = "cabinetdetective_locked"; icon_off = "cabinetdetective_broken"; icon_opened = "cabinetdetective_open"; icon_state = "cabinetdetective"; locked = 0; name = "personal closet"; req_access_txt = "201"},/obj/item/clothing/under/pj/red,/turf/simulated/floor/carpet,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "mx" = (/obj/machinery/light/small{dir = 1},/obj/machinery/alarm/monitor{frequency = 1439; locked = 0; pixel_y = 23; req_access = null},/obj/structure/chair/wood/normal{dir = 8},/turf/simulated/floor/carpet,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "my" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"mz" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) +"mz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "mA" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "mB" = (/obj/structure/closet/crate,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/rods{amount = 50},/turf/simulated/floor/plating,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "mC" = (/obj/structure/table,/obj/item/hand_labeler,/obj/item/flashlight,/obj/item/flashlight,/obj/item/flashlight,/turf/simulated/floor/plating,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) @@ -680,7 +680,7 @@ "nd" = (/obj/structure/table/wood,/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutral"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "ne" = (/obj/structure/chair/comfy/black{tag = "icon-comfychair (EAST)"; icon_state = "comfychair"; dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutral"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "nf" = (/obj/structure/chair/comfy/black{tag = "icon-comfychair (WEST)"; icon_state = "comfychair"; dir = 8},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 5; icon_state = "neutral"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"ng" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) +"ng" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 10; initialize_directions = 10},/obj/machinery/portable_atmospherics/scrubber,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "nh" = (/obj/structure/table,/obj/item/cartridge/signal/toxins,/obj/item/cartridge/signal/toxins{pixel_x = -4; pixel_y = 2},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 5; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "ni" = (/obj/machinery/door/poddoor{id_tag = "UO45_Secure Storage"; name = "secure storage"},/turf/simulated/floor/plating,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "nj" = (/turf/simulated/wall/r_wall/rust,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) @@ -738,7 +738,7 @@ "oj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 4; icon_state = "neutralcorner"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "ok" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "ol" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutral"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"om" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) +"om" = (/obj/machinery/portable_atmospherics/canister/air,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "on" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "oo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/junction{dir = 2; icon_state = "pipe-y"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{dir = 4; icon_state = "neutral"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "op" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/public/glass{name = "Dormitories"},/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -765,7 +765,7 @@ "oK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -24},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "oL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutral"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "oM" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralcorner"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"oN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) +"oN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/light/small{dir = 4},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "oO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "oP" = (/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutral"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "oQ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plasteel{dir = 6; icon_state = "neutral"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -787,12 +787,12 @@ "pg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door_control{desc = "A remote control-switch whichs locks the research division down in the event of a biohazard leak or contamination."; id = "UO45_biohazard"; name = "Biohazard Door Control"; pixel_x = 0; pixel_y = -24; req_access_txt = "201"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "red"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "ph" = (/obj/structure/filingcabinet,/turf/simulated/floor/plasteel{dir = 10; icon_state = "red"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "pi" = (/obj/structure/closet/secure_closet{icon_broken = "secbroken"; icon_closed = "sec"; icon_locked = "sec1"; icon_off = "secoff"; icon_opened = "secopen"; icon_state = "sec1"; locked = 1; name = "security officer's locker"; req_access_txt = "201"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/item/restraints/handcuffs,/obj/item/flash,/obj/item/reagent_containers/spray/pepper,/turf/simulated/floor/plasteel{dir = 6; icon_state = "red"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"pj" = (/obj/machinery/light/small{dir = 8},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"pj" = (/obj/machinery/light/small{dir = 8},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/landmark/burnturf,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "pk" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "pl" = (/obj/item/twohanded/required/kirbyplants{layer = 5},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 10; icon_state = "neutral"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "pm" = (/obj/machinery/light/small{dir = 4},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/plasteel{dir = 4; icon_state = "neutral"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "pn" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"po" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) +"po" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "pp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock{id_tag = "awaydorm4"; name = "Dorm 4"},/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "pq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall/rust,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "pr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock{id_tag = "awaydorm6"; name = "Dorm 6"},/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -866,9 +866,9 @@ "qH" = (/obj/structure/closet/secure_closet{icon_broken = "secureengbroken"; icon_closed = "secureeng"; icon_locked = "secureeng1"; icon_off = "secureengoff"; icon_opened = "secureengopen"; icon_state = "secureeng1"; locked = 1; name = "engineer's locker"; req_access_txt = "201"},/obj/structure/window/reinforced{dir = 8},/obj/item/storage/backpack/satchel_eng,/obj/item/clothing/suit/storage/hazardvest,/obj/item/clothing/mask/gas,/obj/item/clothing/glasses/meson,/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellow"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "qI" = (/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1443; input_tag = "UO45_air_in"; name = "Mixed Air Supply Control"; output_tag = "UO45_air_out"; pressure_setting = 2000; sensors = list("UO45_air_sensor" = "Tank")},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor/plasteel{dir = 9; icon_state = "arrival"; tag = "icon-arrival (NORTHWEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "qJ" = (/obj/machinery/light{dir = 1},/obj/machinery/camera{c_tag = "Atmospherics"; dir = 2; network = list("UO45")},/obj/structure/table,/obj/item/clothing/gloves/color/yellow,/obj/item/storage/toolbox/mechanical{pixel_y = 5},/obj/machinery/firealarm{dir = 2; pixel_x = 0; pixel_y = 24},/obj/item/multitool,/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 10},/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellowcorner"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"qK" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 10; initialize_directions = 10},/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"qK" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 9},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "qL" = (/obj/machinery/atmospherics/trinary/mixer{dir = 1; node1_concentration = 0.8; node2_concentration = 0.2; on = 1; pixel_x = 0; pixel_y = 0; req_access = null; target_pressure = 4500},/turf/simulated/floor/plasteel{dir = 5; icon_state = "arrival"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"qM" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"qM" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "qN" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "qO" = (/obj/machinery/door/airlock/command/glass{name = "Server Room"; req_access_txt = "201"},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "qP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) @@ -884,8 +884,8 @@ "qZ" = (/obj/structure/table/wood,/obj/machinery/newscaster{pixel_x = 0; pixel_y = -28},/obj/item/pen,/turf/simulated/floor/carpet,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "ra" = (/obj/structure/chair/wood/normal{dir = 8},/turf/simulated/floor/carpet,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "rb" = (/obj/structure/mirror{pixel_x = 28},/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"rc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/light/small{dir = 4},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"rd" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"rc" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan,/obj/machinery/portable_atmospherics/scrubber,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"rd" = (/obj/machinery/atmospherics/binary/pump{dir = 4; name = "Waste In"; on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "re" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "rf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "rg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/extinguisher_cabinet{pixel_x = -25; pixel_y = 0},/turf/simulated/floor/plasteel,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -895,15 +895,15 @@ "rk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/table,/obj/item/storage/box,/obj/item/storage/box,/obj/structure/reagent_dispensers/peppertank{pixel_x = 0; pixel_y = 30},/turf/simulated/floor/plasteel{dir = 5; icon_state = "red"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "rl" = (/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "rm" = (/obj/machinery/light/small{dir = 1},/obj/structure/table,/obj/item/tank/emergency_oxygen{pixel_x = -8; pixel_y = 0},/obj/item/tank/emergency_oxygen{pixel_x = -8; pixel_y = 0},/obj/item/clothing/mask/breath{pixel_x = 4; pixel_y = 0},/obj/item/clothing/mask/breath{pixel_x = 4; pixel_y = 0},/obj/machinery/newscaster{pixel_y = 32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 1; icon_state = "red"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"rn" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 9},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"ro" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan,/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"rn" = (/obj/machinery/atmospherics/binary/pump{dir = 1; name = "Unfiltered to Mix"; on = 1},/obj/structure/sign/nosmoking_2{pixel_x = 32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"ro" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "rp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/wall/r_wall,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "rq" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc/noalarm{cell_type = 15000; dir = 8; locked = 1; name = "UO45 Engineering APC"; pixel_x = -25; pixel_y = 0; req_access = list(201); start_charge = 100},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "rr" = (/obj/machinery/atmospherics/binary/pump{dir = 8; name = "Air to Distro"; on = 1},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "rs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 6; initialize_directions = 6; level = 2},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "rt" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; level = 2},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "ru" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; level = 2},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"rv" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"rv" = (/obj/machinery/light,/obj/machinery/alarm/monitor{dir = 1; frequency = 1439; locked = 0; pixel_y = -23; req_access = null},/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 5; initialize_directions = 5},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "rw" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; level = 2},/obj/machinery/atmospherics/binary/pump{dir = 1; name = "Mix to Exterior"; on = 1},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "rx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "ry" = (/obj/structure/table,/obj/item/folder/white,/obj/item/pen,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) @@ -937,7 +937,7 @@ "sa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "sb" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 4; icon_state = "red"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "sc" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"sd" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; level = 2},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"sd" = (/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "se" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/poddoor/shutters/preopen{id_tag = "UO45_EngineeringOffice"; name = "Privacy Shutters"},/obj/machinery/door/window/southleft{base_state = "left"; dir = 4; icon_state = "left"; name = "Engineering Reception"; req_access_txt = "201"},/obj/item/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/pen,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "sf" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 5; icon_state = "green"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "sg" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; initialize_directions = 14; tag = "icon-manifold-b-f (NORTH)"},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) @@ -976,7 +976,7 @@ "sN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "sO" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 14; tag = "icon-manifold-r-f (NORTH)"},/obj/structure/table,/obj/item/book/manual/security_space_law,/turf/simulated/floor/plasteel{dir = 4; icon_state = "red"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "sP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 14; tag = "icon-manifold-r-f (NORTH)"},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"sQ" = (/obj/machinery/atmospherics/binary/pump{dir = 4; name = "Waste In"; on = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"sQ" = (/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 9},/turf/simulated/floor/plating,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "sR" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/poddoor/shutters/preopen{id_tag = "UO45_EngineeringOffice"; name = "Privacy Shutters"},/obj/machinery/door/window/southleft{base_state = "right"; dir = 4; icon_state = "right"; name = "Engineering Reception"; req_access_txt = "201"},/obj/item/folder/red,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "sS" = (/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "UO45_waste_in"; name = "Gas Mix Tank Control"; output_tag = "UO45_waste_out"; sensors = list("UO45_waste_sensor" = "Tank")},/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 6},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 6; icon_state = "green"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "sT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) @@ -1012,7 +1012,7 @@ "tx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "ty" = (/obj/machinery/computer/security{network = list("UO45")},/obj/machinery/door_control{desc = "A remote control-switch for the security privacy shutters."; id = "UO45_EngineeringOffice"; name = "Privacy Shutters"; pixel_x = -24; pixel_y = 6; req_access_txt = "201"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "red"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "tz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 7; tag = "icon-manifold-r-f (WEST)"},/obj/item/screwdriver{pixel_y = 10},/obj/item/radio/off,/turf/simulated/floor/plasteel{dir = 4; icon_state = "red"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"tA" = (/obj/machinery/atmospherics/binary/pump{dir = 1; name = "Unfiltered to Mix"; on = 1},/obj/structure/sign/nosmoking_2{pixel_x = 32},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"tA" = (/obj/structure/closet/firecloset,/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "tB" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/effect/decal/cleanable/dirt,/obj/effect/landmark/burnturf,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "tC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "tD" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 6},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) @@ -1045,29 +1045,29 @@ "ue" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/meter,/turf/simulated/wall/r_wall,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uf" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/engineering{name = "Engineering Foyer"; req_access_txt = "201"},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "ug" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "red"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"uh" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"uh" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8; initialize_directions = 11},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "ui" = (/obj/machinery/atmospherics/trinary/filter{dir = 4; filter_type = 2; on = 1; req_access = null},/turf/simulated/floor/plasteel{dir = 10; icon_state = "red"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"uj" = (/obj/machinery/light,/obj/machinery/alarm/monitor{dir = 1; frequency = 1439; locked = 0; pixel_y = -23; req_access = null},/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 5; initialize_directions = 5},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"uj" = (/obj/structure/table/reinforced,/obj/item/wrench,/obj/machinery/atmospherics/pipe/simple/visible{dir = 10},/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "uk" = (/obj/machinery/atmospherics/binary/pump{dir = 0; name = "Air to External"; on = 1},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "ul" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/binary/pump{dir = 1; name = "External to Filter"; on = 1},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"um" = (/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"um" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "un" = (/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 4},/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "UO45_n2_in"; name = "Nitrogen Supply Control"; output_tag = "UO45_n2_out"; sensors = list("UO45_n2_sensor" = "Tank")},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor/plasteel{dir = 6; icon_state = "red"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uo" = (/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 4},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "UO45_o2_in"; name = "Oxygen Supply Control"; output_tag = "UO45_o2_out"; sensors = list("UO45_o2_sensor" = "Tank")},/turf/simulated/floor/plasteel{dir = 6; icon_state = "blue"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "up" = (/obj/machinery/atmospherics/trinary/filter{dir = 4; filter_type = 1; on = 1; req_access = null},/turf/simulated/floor/plasteel{dir = 10; icon_state = "blue"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"uq" = (/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 9},/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"ur" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8; initialize_directions = 11},/turf/simulated/floor/plating{dir = 1; icon_state = "warnplate"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"us" = (/obj/structure/closet/firecloset,/turf/simulated/floor/plating{dir = 9; icon_state = "warnplate"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"ut" = (/obj/structure/table/reinforced,/obj/item/wrench,/obj/machinery/atmospherics/pipe/simple/visible{dir = 10},/turf/simulated/floor/plating{dir = 5; icon_state = "warnplate"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"uq" = (/obj/machinery/light/small{dir = 8},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"ur" = (/obj/machinery/atmospherics/binary/valve{dir = 2},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"us" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm/monitor{frequency = 1439; locked = 0; pixel_y = 23; req_access = null},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"ut" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id_tag = "UO45_Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "uv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/computer/general_air_control{frequency = 1441; name = "Tank Monitor"; sensors = list("UO45_n2_sensor" = "Nitrogen", "UO45_o2_sensor" = "Oxygen", "UO45_waste_sensor" = "Gas Mix Tank")},/turf/simulated/floor/plasteel{dir = 9; icon_state = "caution"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uw" = (/turf/simulated/mineral/random/labormineral,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "ux" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/external,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "uy" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"uz" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"uz" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/poddoor/preopen{id_tag = "UO45_Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uA" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "uB" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"uC" = (/obj/machinery/light/small{dir = 8},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"uD" = (/obj/machinery/atmospherics/binary/valve{dir = 2},/turf/simulated/floor/plating{dir = 4; icon_state = "warnplate"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"uC" = (/obj/machinery/door/firedoor,/obj/structure/sign/securearea{pixel_y = 32},/obj/machinery/door/poddoor/preopen{id_tag = "UO45_Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"uD" = (/obj/machinery/portable_atmospherics/scrubber,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "uE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 7; tag = "icon-manifold-r-f (WEST)"},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uF" = (/turf/simulated/wall,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uG" = (/obj/machinery/door/airlock/security/glass{name = "Security Office"; req_access_txt = "201"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) @@ -1076,28 +1076,30 @@ "uJ" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/meter{layer = 3.3},/obj/machinery/atmospherics/pipe/simple/visible/green,/turf/simulated/floor/plating,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uK" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/meter{layer = 3.3},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor/plating,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uL" = (/obj/machinery/atmospherics/binary/valve{dir = 2},/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"uM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"uN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/closet/crate,/obj/item/stack/sheet/mineral/plasma{amount = 6},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"uO" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"uM" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"uN" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"uO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uP" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"uQ" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uR" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "uS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 1; icon_state = "browncorner"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "uT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/computer/general_air_control{frequency = 1443; level = 3; name = "Distribution and Waste Monitor"; sensors = list("UO45_mair_in_meter" = "Mixed Air In", "UO45_air_sensor" = "Mixed Air Supply Tank", "UO45_mair_out_meter" = "Mixed Air Out", "UO45_dloop_atm_meter" = "Distribution Loop", "UO45_wloop_atm_meter" = "Waste Loop")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "caution"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"uU" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm/monitor{frequency = 1439; locked = 0; pixel_y = 23; req_access = null},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"uU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/noticeboard{dir = 1; pixel_y = -27},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5; level = 1},/obj/structure/chair/office/dark{dir = 8},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 5; icon_state = "yellow"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "uX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"uY" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id_tag = "UO45_Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"uZ" = (/obj/machinery/door/firedoor,/obj/structure/sign/securearea{pixel_y = 32},/obj/machinery/door/poddoor/preopen{id_tag = "UO45_Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"uY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"uZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/vending/engivend{req_access_txt = "0"},/obj/machinery/camera{c_tag = "Engineering Foyer"; dir = 1; network = list("UO45")},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "va" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vb" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/poddoor/preopen{id_tag = "UO45_Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vc" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating{icon_state = "warnplate"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"vd" = (/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor/plating{dir = 10; icon_state = "warnplate"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"vb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/vending/tool,/obj/structure/sign/poster/official/build{pixel_y = -32},/turf/simulated/floor/plating,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"vc" = (/obj/structure/closet/emcloset,/obj/item/clothing/mask/breath,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"vd" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "ve" = (/obj/machinery/atmospherics/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "UO45_n2_in"},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 10000; oxygen = 0},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vf" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 0; frequency = 1441; id_tag = "UO45_n2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 10000; oxygen = 0},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vg" = (/obj/machinery/atmospherics/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "UO45_o2_in"},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 10000},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vh" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 0; frequency = 1441; id_tag = "UO45_o2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 10000},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vi" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating{dir = 6; icon_state = "warnplate"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"vi" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"vj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/landmark/burnturf,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "vk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 6; icon_state = "brown"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "vl" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/plating,/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "vm" = (/obj/machinery/atmospherics/pipe/manifold/hidden/purple{dir = 1},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a7{always_unpowered = 1; has_gravity = 1; name = "UO45 Caves"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) @@ -1107,13 +1109,13 @@ "vq" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "vr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/computer/atmos_alert,/turf/simulated/floor/plasteel{dir = 8; icon_state = "caution"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 4; icon_state = "yellow"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"vt" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/twohanded/required/kirbyplants{layer = 5},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "vu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vv" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; initialize_directions = 14; tag = "icon-manifold-b-f (NORTH)"},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vy" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/noticeboard{dir = 1; pixel_y = -27},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"vy" = (/obj/machinery/alarm/monitor{dir = 4; frequency = 1439; locked = 0; pixel_x = -23; pixel_y = 0; req_access = null},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"vz" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "vA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/door/airlock/engineering{name = "Engineering"; req_access_txt = "201"},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/computer/station_alert,/turf/simulated/floor/plasteel{dir = 10; icon_state = "caution"; tag = "icon-caution (SOUTHWEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) @@ -1130,22 +1132,23 @@ "vN" = (/obj/machinery/door/airlock/maintenance{name = "Mining Maintenance"; req_access_txt = "201"},/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "vO" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/mining/glass{name = "Mining Foyer"; req_access_txt = "201"},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "vP" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/mining/glass{name = "Mining Foyer"; req_access_txt = "201"},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"vQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/vending/engivend{req_access_txt = "0"},/obj/machinery/camera{c_tag = "Engineering Foyer"; dir = 1; network = list("UO45")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"vQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"vR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -24},/obj/structure/closet/secure_closet/miner{req_access = list(201)},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "vS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/table,/obj/machinery/cell_charger,/obj/item/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plasteel{dir = 6; icon_state = "yellow"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/vending/tool,/obj/structure/sign/poster/official/build{pixel_y = -32},/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"vU" = (/obj/machinery/conveyor{dir = 2; id = "UO45_mining"},/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "vV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vW" = (/obj/structure/closet/emcloset,/obj/item/clothing/mask/breath,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vX" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"vW" = (/obj/machinery/mineral/unloading_machine{dir = 1; icon_state = "unloader-corner"; input_dir = 4; output_dir = 8},/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"vX" = (/obj/effect/decal/warning_stripes/arrow{dir = 8},/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 8},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "vY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/wall,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vZ" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"wa" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/twohanded/required/kirbyplants{layer = 5},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"vZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm/monitor{dir = 8; frequency = 1439; locked = 0; pixel_x = 23; pixel_y = 0; req_access = null},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"wa" = (/obj/machinery/conveyor{dir = 2; id = "UO45_mining"},/obj/structure/sign/nosmoking_2{pixel_x = -32},/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"wb" = (/obj/machinery/suit_storage_unit/mining,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wc" = (/obj/machinery/light/small{dir = 1},/obj/structure/chair/wood/normal{dir = 8},/turf/simulated/floor/carpet,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wd" = (/obj/structure/table/wood,/turf/simulated/floor/carpet,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "we" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/bed,/obj/item/bedsheet,/turf/simulated/floor/carpet,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"wg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"wg" = (/obj/machinery/mineral/processing_unit{dir = 1; output_dir = 2},/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/door/airlock/command/glass{name = "Chief Engineer"; req_access_txt = "201"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "wi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; tag = "icon-manifold-r-f (EAST)"},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wj" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/sign/deathsposal{desc = "A warning sign which reads 'DISPOSAL: LEADS TO EXTERIOR'"; name = "\improper DISPOSAL: LEADS TO EXTERIOR"; pixel_x = -32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) @@ -1166,8 +1169,8 @@ "wy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "wz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "wA" = (/obj/structure/toilet{pixel_y = 8},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"wB" = (/obj/machinery/alarm/monitor{dir = 4; frequency = 1439; locked = 0; pixel_x = -23; pixel_y = 0; req_access = null},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"wC" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"wB" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/machinery/light{dir = 8},/obj/machinery/camera{c_tag = "Mining"; dir = 4; network = list("UO45")},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"wC" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wD" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wE" = (/obj/structure/filingcabinet/chestdrawer,/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "wF" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) @@ -1176,7 +1179,7 @@ "wI" = (/obj/machinery/door/airlock{name = "Private Restroom"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "wJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "wK" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/light/small,/obj/structure/mirror{pixel_x = 28},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"wL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"wL" = (/obj/machinery/light/small{dir = 4},/obj/structure/table,/obj/item/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wM" = (/obj/structure/table/reinforced,/obj/item/clipboard,/obj/item/clothing/glasses/meson{pixel_y = 4},/obj/item/stamp/ce,/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "wN" = (/obj/structure/chair/wood/normal,/turf/simulated/floor/carpet,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock{id_tag = "awaydorm9"; name = "Mining Dorm 2"},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) @@ -1186,7 +1189,7 @@ "wS" = (/obj/structure/table/reinforced,/obj/item/folder/yellow,/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "wT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/light/small{dir = 4},/obj/machinery/alarm/monitor{dir = 8; frequency = 1439; locked = 0; pixel_x = 23; pixel_y = 0; req_access = null},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "wU" = (/obj/structure/cable,/obj/machinery/power/apc/noalarm{cell_type = 15000; dir = 2; locked = 0; name = "UO45 Mining APC"; pixel_x = 0; pixel_y = -25; req_access = null; start_charge = 100},/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/closet/secure_closet/engineering_personal{icon_broken = "miningsecbroken"; icon_closed = "miningsec"; icon_locked = "miningsec1"; icon_off = "miningsecoff"; icon_opened = "miningsecopen"; icon_state = "miningsec"; locked = 0; name = "miner's equipment"; req_access = list(201)},/obj/item/storage/backpack/satchel_eng,/obj/item/clothing/gloves/fingerless,/turf/simulated/floor/plasteel{dir = 2; icon_state = "browncorner"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"wV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -24},/obj/structure/closet/secure_closet/miner{req_access = list(201)},/turf/simulated/floor/plasteel{dir = 8; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"wV" = (/obj/machinery/conveyor{dir = 2; id = "UO45_mining"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wW" = (/obj/machinery/light/small,/obj/structure/bed,/obj/item/bedsheet,/turf/simulated/floor/carpet,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wX" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/closet/secure_closet{desc = "It's a secure locker for personnel. The first card swiped gains control."; icon_broken = "cabinetdetective_broken"; icon_closed = "cabinetdetective"; icon_locked = "cabinetdetective_locked"; icon_off = "cabinetdetective_broken"; icon_opened = "cabinetdetective_open"; icon_state = "cabinetdetective"; locked = 0; name = "personal closet"; req_access_txt = "201"},/turf/simulated/floor/carpet,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "wY" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; tag = "icon-manifold-r-f (EAST)"},/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 2; icon_state = "brown"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) @@ -1201,50 +1204,41 @@ "xh" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/mining{name = "Processing Area"; req_access_txt = "201"},/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xi" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/mining{name = "Processing Area"; req_access_txt = "201"},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xj" = (/obj/machinery/light/small,/obj/machinery/computer/atmos_alert,/obj/machinery/door_control{desc = "A remote control-switch for the engineering security doors."; id = "UO45_Engineering"; name = "Engineering Lockdown"; pixel_x = -6; pixel_y = -24; req_access_txt = "201"},/obj/machinery/door_control{desc = "A remote control-switch for secure storage."; id = "UO45_Secure Storage"; name = "Engineering Secure Storage"; pixel_x = 6; pixel_y = -24; req_access_txt = "201"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralfull"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"xk" = (/obj/machinery/conveyor{dir = 2; id = "UO45_mining"},/turf/simulated/floor/plating{dir = 4; icon_state = "warnplate"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xl" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "loadingarea"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xm" = (/obj/machinery/mineral/unloading_machine{dir = 1; icon_state = "unloader-corner"; input_dir = 4; output_dir = 8},/turf/simulated/floor/plating{dir = 5; icon_state = "warnplate"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm/monitor{dir = 8; frequency = 1439; locked = 0; pixel_x = 23; pixel_y = 0; req_access = null},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xo" = (/obj/machinery/conveyor{dir = 2; id = "UO45_mining"},/obj/structure/sign/nosmoking_2{pixel_x = -32},/turf/simulated/floor/plating{dir = 4; icon_state = "warnplate"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xp" = (/obj/machinery/suit_storage_unit/mining,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xk" = (/obj/structure/dispenser/oxygen,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xl" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; tag = "icon-manifold-r-f (EAST)"},/obj/structure/closet/crate,/obj/item/stack/sheet/metal{amount = 26},/obj/item/stack/sheet/glass{amount = 19},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xm" = (/obj/machinery/mineral/stacking_machine{dir = 1; input_dir = 8; output_dir = 4},/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xn" = (/obj/effect/decal/warning_stripes/arrow{dir = 4},/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 4},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/closet/crate,/obj/item/stack/sheet/mineral/plasma{amount = 6},/obj/effect/landmark/burnturf,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xr" = (/obj/machinery/mineral/processing_unit{dir = 1; output_dir = 2},/turf/simulated/floor/plating{dir = 5; icon_state = "warnplate"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/external{name = "Mining External Airlock"; req_access_txt = "201"},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xs" = (/obj/machinery/conveyor_switch/oneway{id = "UO45_mining"; name = "mining conveyor"},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xt" = (/obj/structure/grille,/obj/structure/window/full/basic,/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xv" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/machinery/light{dir = 8},/obj/machinery/camera{c_tag = "Mining"; dir = 4; network = list("UO45")},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xv" = (/obj/machinery/alarm/monitor{dir = 4; frequency = 1439; locked = 0; pixel_x = -23; pixel_y = 0; req_access = null},/obj/structure/closet/emcloset,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xw" = (/obj/structure/table,/obj/item/pickaxe,/obj/item/radio/off,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xx" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xx" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xy" = (/obj/machinery/mineral/processing_unit_console{machinedir = 8},/turf/simulated/wall/rust,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xz" = (/obj/machinery/light/small{dir = 4},/obj/structure/table,/obj/item/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor/plasteel{burnt = 1; dir = 8; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xz" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark/burnturf,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xA" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 7; tag = "icon-manifold-r-f (WEST)"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xB" = (/obj/machinery/conveyor{dir = 2; id = "UO45_mining"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating{dir = 4; icon_state = "warnplate"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xB" = (/obj/structure/ore_box,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xC" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xD" = (/obj/structure/dispenser/oxygen,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xD" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xE" = (/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xF" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; tag = "icon-manifold-r-f (EAST)"},/obj/structure/closet/crate,/obj/item/stack/sheet/metal{amount = 26},/obj/item/stack/sheet/glass{amount = 19},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) +"xF" = (/obj/machinery/light/small{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xG" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xI" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 7; tag = "icon-manifold-b-f (WEST)"},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/mining/glass{name = "Mining EVA"; req_access_txt = "201"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xL" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "loadingarea"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xM" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xN" = (/obj/machinery/mineral/stacking_unit_console{machinedir = 2},/turf/simulated/wall,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xO" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xP" = (/obj/machinery/mineral/stacking_machine{dir = 1; input_dir = 8; output_dir = 4},/turf/simulated/floor/plating{dir = 5; icon_state = "warnplate"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xR" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plasteel,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xS" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/mech_bay_recharge_floor,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xT" = (/obj/machinery/mech_bay_recharge_port{tag = "icon-recharge_port (WEST)"; icon_state = "recharge_port"; dir = 8},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/external{name = "Mining External Airlock"; req_access_txt = "201"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"xX" = (/obj/machinery/alarm/monitor{dir = 4; frequency = 1439; locked = 0; pixel_x = -23; pixel_y = 0; req_access = null},/obj/structure/closet/emcloset,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "xY" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"ya" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"yb" = (/obj/structure/ore_box,/turf/simulated/floor/plasteel{icon_state = "warning"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"yc" = (/obj/machinery/light/small{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "warning"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) -"yd" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "warning"},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "ye" = (/obj/machinery/door/airlock/external{name = "Mining External Airlock"; req_access_txt = "201"},/turf/simulated/floor/plasteel{icon_state = "asteroidfloor"; temperature = 273.15},/area/awaycontent/a4{has_gravity = 1; name = "UO45 Mining"}) "yf" = (/obj/structure/alien/weeds{tag = "icon-weeds2"; icon_state = "weeds2"},/obj/structure/bed/nest,/obj/effect/mob_spawn/human/miner,/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a7{always_unpowered = 1; has_gravity = 1; name = "UO45 Caves"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "yg" = (/obj/structure/alien/weeds{tag = "icon-weeds1"; icon_state = "weeds1"},/obj/effect/mob_spawn/human/miner,/obj/effect/decal/cleanable/blood/splatter{color = "red"},/turf/simulated/floor/plating/airless/asteroid,/area/awaycontent/a7{always_unpowered = 1; has_gravity = 1; name = "UO45 Caves"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) @@ -1295,13 +1289,13 @@ aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacac aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacadadadadadadadadacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacadaeafafafafagadacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacadahaiaiajajahamacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacadahanapakaqahadacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacadahaiaiatatahamacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacadahajapakaqahadacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacadahalaoasauahadacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacadavawayarazaAadacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBaCadamamayayadamadaBaBacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaCaEaDaGaFaHaHaHaIaKaJaBacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBaLaDaHaHaHaMaMaHaHaNaCacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacadavawanarazaAadacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBaCadamamananadamadaBaBacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaCaEaMaGaFaHaHaHaIaMaJaBacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBaLaMaHaHaHaMaMaHaHaNaCacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBaBaOaQaPaPaPaPaRaSaBaCacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaPaTaVaUaXaWaZaYaHaPacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaPaTbaaUbcbbbdaYaHaPacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa @@ -1313,10 +1307,10 @@ aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacac aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBataCbPbQbRbRbQbSbRbUbTbQbQbRbVbQbQbWacacacacachefofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaCbZaxcacdcccfcbchcgcjcicgckceclcocmcpacacacacfofofofohefofohefoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaCaBaBaBcqcraCcsaBcqaCctaHaBcsaBcpaCcucqacacacfohefofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBcvatcwcqcuaCcycxczaBaKaHaCcAcCcBaBcncqaBaCadamadamamaPaPamamamadadacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBcEbZcGcDcnaBcJcIcKaBaDaHaBcLcIcMaCcucOcNcNcNcNcNcNcFcRcQcHcScVcUcWacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBcvatcwcqcuaCcycxczaBaMaHaCcAcCcBaBcncqaBaCadamadamamaPaPamamamadadacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBcEbZcGcDcnaBcJcIcKaBaMaHaBcLcIcMaCcucOcNcNcNcNcNcNcFcRcQcHcScVcUcWacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaCcYcXcYcZcraCaBdaaBaCdbdbaBaBdcaBaCddcocPdfdfdfdgdfdgdgdhcccbccdicqacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBcTcocbchdlbtaDdmaMaHaHaHdodnbMdpaBaBaCdqaBdrdtdsdvduaCcpaBaCaBcrcpacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBcTcocbchdlbtaMayaMaHaHaHdodnbMdpaBaBaCdqaBdrdtdsdvduaCcpaBaCaBcrcpacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBcradaddwamamdedxdzaHaHaHaHdAdCdBaPaPdEdDdGdFdIdHdIdJdLdKdNdMaBdjcpacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaCcraddQdPdSdRaHaHdUdTdTdTdWdVdYdXeadZebbMecaMecaHecaHeceddBeeaBcncqadadacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaCegefeiehejaPekaHemeleleleleneodBepaHaHeqecaHecaHecaHecerdBesaCcuetdkaPevacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa @@ -1325,54 +1319,54 @@ aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacac aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacameYeXeZaPfaaHfbelelelelaYeofcfefdfgfffffffgfhfjfiflfkfmaCaCcufnamamhffoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacadfpfnamadbBaHfrfqfqfqfqfseoftadadadaPaPaPaPamamfufwfvfyfxfAdyfnfofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaBfCfBfEfDfFfFbUfGfFfFfFfHfJfIadacfofofofofohiamfLfMfNfOfPbrdOfnfofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaCfSfRfTaBfUaHaHbNfWfVaDfXfZfYamacfofofofofofofofLgagagbfPaxgcgdgefofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaCfSfRfTaBaKaHaHbNfWfVaMfXfZfYamacfofofofofofofofLgagagbfPaxgcgdgefofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaCaCaBaBaCaCaBdbgfadadaPaPaPamamhefofohefofofofoghgigagagjbrgkdifnfofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfPgmglfLfofofofofofofofofofofofofofoghgngagofPgqeugrfnfofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofoacacacachefoacgsgugtgsfofofofofofofofofofofofoheacghfOgvfPfPfOfPgcfnfofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacgwgwgwgwgxgwgwacacacacacacacacacacacacacacacacacacacgygygzgAacacfofohefofofofofofofofofogsgBgmgsfofofofofofofojMfofofofofoacfLgEgDgGgFgHfOgIdwfofoacacfofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacgxgKgJgJgJgJgwgLgMgLacacacacacacacacacacacacacgygygzgzgOgNgAgAfofofofofofofofofofofofofogsgugugsfofohefofoheghghgsgsgsgsghfLfLgPgPgPgPgQfOdOdwfofoacacfofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacgxgKgSgUgTgKgVgXgWgLgMgLgMgMacacacacacacacacacgzgYhagZhbgYhchdjQfofofofofofofofofofofomJghhhhgfLpvfofofofoghghhkhjhmhlhohnhpfPhrhqhsgPhtfOgcfnfofofofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacgwgJhuhwhvgJgVhyhxgMfzhBhAgwacfoheacacfofoacacgyhChEhDhGhFhIhHfofohefofofofofofofofofofogsgugmgsfofofofofogshJhLhKhNhMhPhOhOhQhShRhUhThWhVhYhXfofofofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacgwgJhZibiagJgVidicgMieigifgwfofofofofohefofoacgAihijiihGikilhHfofofofofofofofofofofofofogsgugmgsfofohefofogsiminhKiohlhKhKipfOiqhsirgPisfPgIfnhffofofofofofoacfofoacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacgxiuitiwivitgVidixgLgLiygwgwfofohefofofofofofogAiziBiAiDiCiEhdfofofofofohefofofofofofofogsiFgBgsfofofofofogsiGhLhKioiHhKhKiJiIiLiKgPgPiMfOfQfnfofofofofofoacacfofofoacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacgxiPgpiRiQiTiSiViUiWiXiYgwhefofofofofofofofohehdiZjahbgAhdhdgAfofofofofofofofofohefofofoghjbgBghhefofofofofLjchKiJhNhlhKhKjdfPjfjegPgDjgfPgcfnfofofofofofoacacfofofoacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacgxjijhjkjjjmjljojnjqjpjrgxfofofofofofofofofofogAjsjtgYgAfofofofofofofohefofofoacacfofoheghjvjughghfofofofoghjwjxhKiJhljzjyjAfPfPjBjCjCjDjDgRjFfofofofofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacgwjHjGiRjIjJgwgLgMgMjKjLgxfofofofopwfofofohegAgAjNjPjOgAfofofofopxfofofogAgAgAgAacacacacfLjRguhzghfLgsgsghghjTjUhLjVhNhNhKhKjWjYjXkajZkciNkdamfofofofofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacgxgwgxkegwgwgwkfkfgMkgkhgwgwgVgVgVgxgVgVgVgxgxkjkiklkkgAgAhHhHhHgAhHhHhHgAknkmgAgAgzgygzgzkogugukpgugmgugukqhKhKhKkriJhKksktktkvkufPiOkykxamadfofofofofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacgLkziRkAgLkBkDkCiWkEkGkFkIkHkJkHkKkHkLkIkHkMkOkNkQkPkSkRkTkRkRkUkRkVkXkWkXkYkZgAlblalcgzleldldlflggugulhkqhKiJhKljlilililllklnlmfLadamamamfofofofoacacfofofofofoacacaclololololoacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacgLlplrlqltlslulslwlvlylxlzlzlAlzlBlzlClzlElDlGlFlIlHlKlJlMlLlOlNlOlOlOlOhbkYkZlPhbhbhblPlRlQgmlSfPfOfPfPfOfOfPfPfPlTlUhLlVfPlXlWghfofofofofofofoacacacacfofofofoacacaclolZlYmaloacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacgMmbjJjIiRmcmcjEgLmemfgxgxgVgVgVgxgVgVgVgwgwmhmggzgzgzmimkmjmjgyhHhHhHhHmlkYkZgAmnmmmogzmpglmrmqfPmsmumtfOmvmxmwfOfOfPfPfOfPmzmyghfofofofofofofofoacacfofofofoacacacaclomBmAmaloacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacgLmCigmDmFmEmHmGgxgVgVgwfofofofoqbfofofofohdmKmLgAmImNmMmPmOmQgzmSmRmThHmlmVgAgAgygzgzgymXmWfOfOfPmYnamZfPnbnancfOmUnendnffPngmygsfofofofofofofofofofofofofofoacacaclololoninjnjloacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacgwgJhuhwhvgJgVhyhxgMfzhBhAgwacfoheacacfofoacacgydmfUhChDhFhIhHfofohefofofofofofofofofofogsgugmgsfofofofofogshJhLhKhNhMhPhOhOhQhShRhUhThWhVhYhXfofofofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacgwgJhZibiagJgVidicgMieigifgwfofofofofohefofoacgAihijiihDikilhHfofofofofofofofofofofofofogsgugmgsfofohefofogsiminhKiohlhKhKipfOiqhsirgPisfPgIfnhffofofofofofoacfofoacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacgxiuitiwivitgVidixgLgLiygwgwfofohefofofofofofogAhEhGiziAiCiEhdfofofofofohefofofofofofofogsiFgmgsfofofofofogsiGhLhKioiHhKhKiJiIiLiKgPgPiMfOfQfnfofofofofofoacacfofofoacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacgxiBgpiRiQiDiSiViUiWiXiYgwhefofofofofofofofohehdiZjahbgAhdhdgAfofofofofofofofofohefofofoghjbgmghhefofofofofLjchKiJhNhlhKhKjdfPjfjegPgDjgfPgcfnfofofofofofoacacfofofoacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacgxiPjhjkjjjmjljojnjqjpjrgxfofofofofofofofofofogAjsjtgYgAfofofofofofofohefofofoacacfofoheghjvjughghfofofofoghjwjxhKiJhljzjyjAfPfPjBjCjCjDjDgRjFfofofofofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacgwiTjiiRjIjIgwgLgMgMjKjLgxfofofofopwfofofohegAgAjNjPjOgAfofofofopxfofofogAgAgAgAacacacacfLjRguhzghfLgsgsghghjTjUhLjVhNhNhKhKjWjYjXkajZkciNkdamfofofofofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacgxgwgxkegwgwgwkfkfgMkgkhgwgwgVgVgVgxgVgVgVgxgxkjkiklkkgAgAhHhHhHgAhHhHhHgAjGjHgAgAgzgygzgzkogugukpgugmgugukqhKhKhKkriJhKksktktkvkufPiOkykxamadfofofofofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacgLkziRjJgLkmknkAiWkEkGkFkIkHkJkHkKkHkLkIkHkMkOkNkQkPkSkRkTkRkRkUkRkVkXkWkXkYkBgAlblalcgzleldldlflggugulhkqhKiJhKljlilililllklnlmfLadamamamfofofofoacacfofofofofoacacaclololololoacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacgLlplrlqltlslulslwlvlylxlzlzlAlzlBlzlClzlElDlGlFlIlHlKlJlMlLlOlNlOlOlOlOhbkYkBlPhbhbhblPlRlQgmkCfPfOfPfPfOfOfPfPfPlTlUhLlVfPlXlWghfofofofofofofoacacacacfofofofoacacaclolZlYmaloacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacgMmbjIjIiRmcmcjEgLmemfgxgxgVgVgVgxgVgVgVgwgwkDkZgzgzgzmimkmjmjgyhHhHhHhHmlkYkBgAmnmmmogzmpgllSmgfPmsmumtfOmvmxmwfOfOfPfPfOfPmhmyghfofofofofofofofoacacfofofofoacacacaclomBmAmaloacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacgLmCigmDmFmEmHmGgxgVgVgwfofofofoqbfofofofohdmKmLgAmImNmMmPmOmQgzmSmRmThHmlmVgAgAgygzgzgymXmWfOfOfPmYnamZfPnbnancfOmUnendnffPjRmygsfofofofofofofofofofofofofofoacacaclololoninjnjloacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacgLgLgMgMgLgwgxgxgwfofoqbfofofofofofofofohefomKnkgAnhnmnlnnmOmOgynonpnqhHmlnshdntjSnununwnxnvnznyfPnBnCfPfOnBnDfPfPnAgmnFnEnGnJnIgsfofofofofofofofofofofofofofoacacacnjnHnKnKnKnLloacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacfofofofofofofofofofofohefofofoacnNnOgAnMnmnPnRnQnSgynTnUnVhHmlmVhdnOnXnYnZnZoanWocoboeodohofoiogohojolokomonoooposorgsfofofofofofofofofofofofofofofoacacnjoqovouovoqlolololoacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacfohefofofofofofofofofofofofogAnNkbgAownmoxozoyoAgyoBoDnVoCmlmVgAnkmKfofogsoEldldoFoGoIoJoHoKoIoMoLoOoNoJoPoQfPoUoTghpvfofofofofofofofofofofofofofoacaclooRoXoWoZoSlopapbloacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacfofofohefofofofofofofohehdpdkwgAoYpcmOpfpeoygzphpgpihHmlkXhdmdmKfofogsplpkgupmfPppfPpqfOprfPfPfOpnfPfPptfPpomygsfofofofofofofoqBqAqAqAqAqCqAqAqApypzpspApupCpBnjpFpGloacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacfofofofofofofofofofofohefofofoacnNnOgAnMnmnPnRnQnSgynTnUnVhHmlmVhdnOnXnYnZnZoanWocoboeodohofoiogohojolokmqonoooposorgsfofofofofofofofofofofofofofofoacacnjoqovouovoqlolololoacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacfohefofofofofofofofofofofofogAnNkbgAownmoxozoyoAgyoBoDnVoCmlmVgAnkmKfofogsoEldldoFoGoIoJoHoKoIoMoLoOmroJoPoQfPoUoTghpvfofofofofofofofofofofofofofoacaclooRoXoWoZoSlopapbloacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacfofofohefofofofofofofohehdpdkwgAoYpcmOpfpeoygzphpgpihHmlkXhdmdmKfofogsplpkgupmfPppfPpqfOprfPfPfOpnfPfPptfPmzmygsfofofofofofofoqBqAqAqAqAqCqAqAqApypzpspApupCpBnjpFpGloacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacachefofohefofoachdpHpIgAgzgzpDgzgzpEgzgzpLpMgypJjOgAnOnNhefogsgspKpOpNfOpRpSpTpVpUfOpPpWpQpXfOnrfOjbmygsfofofofofofofoucnjnjqcqcnjfofofoacloqcqcpZqcqcloqeqflololoacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacfofofofoacacgzotqhqiqjqlqdqggyqmqkgzqnqpqohbqqgAnOmKfofofogsgsgsgsfLqtqufPqwqvfPfPfPqrqsfOqzfPjbmygsfofofojMfovIvmwknjqyqxqxlonjnjnjloloqDqEqGqHqFqJqIqLqKqMloacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgzqPpIqQqRqOqNqSgAhdhdgAqTqUhbhbqVgAoVmKfofofofofofofoghqZmtfPmvrafPqXqYpQrbfPrefPrgrcfLgsgsgsghgsgsrhfLlopjrdrlrinjrjrmrkrprqrsrrrurtrwrnrvroqMlolonjnjacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgypYqhqirArCryrzgAqarErHrDrFkPrIrGgAmdmKfofofohefofofoghghghghfPfOfPfOfOrKfPfPqWfOrPrOrRrMrQrNrSrMrUrTrVrXsarZscrWserYsgsbsisdsksjsmslsosnspspsfsqssstnjacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgyqPqhgAgAgAhdhdgAsvsugAshswsrsysxgAnOmKachefofofofohefofofoacacacfPszsApQsBfOrefOjRsEsGsCsDsCsFsCsIsHsJsLsNsNsPsKsRsMsTsOsisQsWsVsYsXtasZtctbsStdtftgloacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgytithjSrfnunutltkrxtmtototptototqtrtsnNacfofofofofofofofofofofoacfLtjpQpQsBfOrefPtvtughgsgsgsghgsgsrhfLlotttntxtwlotytCtztEtDtFtbtHtGtIrlrltJtAlolonjnjacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgztLtMtNtOtOtNtQtPtPrBtPtPtStPrJrLtWtVtXacfofofofofofofofofofofoheghghtUtTfOfOqzfPtZtYgsfofofoyhfovIwkfonjudueuflolouaugublouhulukujuiunumupuouqnjacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgyusurutgzuwgzgzgzgzgygygAgAhdhdgzuxuyhdfofofohefofofofofofofofofofoghghghfOsUreuAtZtYgsfofofofofofofofonjuvuBuEuzuFqcuGqclolouHuIlouJuKnjuJuKnjnjacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgzuCuLuDgzacacacacacacacacfofohdtetBuPhdfofofofofofofohefoacfofofofofofogstKuRtRfPuStYgsfofofofofofofofoqcuTuVuXsNuUsNsTuWvauYvbuZlovevflovgvhloacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgzvdvcvigyacacacacacacacacacfohdhHvlhHhdfofofofofofofofoacacachefofofoyivnvpuuvqfOvovkfLfofofofofofofofoqcvrrlvvvuvxvwvtvsvBvAvDvylovEvFlovGvHloacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgzgzgygygzacacacacacacacacacfoyjevevevfofofofofofofofofoacacfofofofovJvKvKvLvMvNvLvPvOvJfofofofofofofofonjvCvzvQvSvVvRvUvTvYvWvZvXlololololololoacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofofofofofoacacfofofofofofofofovJwdwcwewfuMwawgwivJykfofofofofofofonjnjuFwmwlwhwouFnjnjlolonjnjacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacfofofofoacacgzotqhqiqjqlqdqggyqmqkgzqnqpqohbqqgAnOmKfofofogsgsgsgsfLqtqufPqwqvfPfPfPqrqsfOqzfPjbmygsfofofojMfovIvmwknjqyqxqxlonjnjnjloloqDqEqGqHqFqJqIqLngomloacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgzqPpIqQqRqOqNqSgAhdhdgAqTqUhbhbqVgAoVmKfofofofofofofoghqZmtfPmvrafPqXqYpQrbfPrefPrgoNfLgsgsgsghgsgsrhfLlopjporlrinjrjrmrkrprqrsrrrurtrwqKqMrcomlolonjnjacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgypYqhqirArCryrzgAqarErHrDrFkPrIrGgAmdmKfofofohefofofoghghghghfPfOfPfOfOrKfPfPqWfOrPrOrRrMrQrNrSrMrUrTrVrXsarZscrWserYsgsbsirusksjsmslsosnspspsfsqssstnjacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgyqPqhgAgAgAhdhdgAsvsugAshswsrsysxgAnOmKachefofofofohefofofoacacacfPszsApQsBfOrefOjRsEsGsCsDsCsFsCsIsHsJsLsNsNsPsKsRsMsTsOsirdsWsVsYsXtasZtctbsStdtftgloacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgytithjSrfnunutltkrxtmtototptototqtrtsnNacfofofofofofofofofofofoacfLtjpQpQsBfOrefPtvtughgsgsgsghgsgsrhfLlotttntxtwlotytCtztEtDtFtbtHtGtIrlrltJrnlolonjnjacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgztLtMtNtOtOtNtQtPtPrBtPtPtStPrJrLtWtVtXacfofofofofofofofofofofoheghghtUtTfOfOqzfPtZtYgsfofofoyhfovIwkfonjudueuflolouaugubloroulukrvuiunsdupuosQnjacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgytAuhujgzuwgzgzgzgzgygygAgAhdhdgzuxuyhdfofofohefofofofofofofofofofoghghghfOsUreuAtZtYgsfofofofofofofofonjuvuBuEumuFqcuGqclolouHuIlouJuKnjuJuKnjnjacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgzuquLurgzacacacacacacacacfofohdtetBuPhdfofofofofofofohefoacfofofofofofogstKuRtRfPuStYgsfofofofofofofofoqcuTuVuXsNussNsTuWvautuzuClovevflovgvhloacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgzuDuMuNgyacacacacacacacacacfohdhHvlhHhdfofofofofofofofoacacachefofofoyivnvpuuvqfOvovkfLfofofofofofofofoqcvrrlvvvuvxvwuOvsvBvAvDuQlovEvFlovGvHloacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacgzgzgygygzacacacacacacacacacfoyjevevevfofofofofofofofofoacacfofofofovJvKvKvLvMvNvLvPvOvJfofofofofofofofonjvCuUuYvSvVuZvbvTvYvcvdvilololololololoacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofofofofofoacacfofofofofofofofovJwdwcwewfvjvtxQwivJykfofofofofofofonjnjuFwmwlwhwouFnjnjlolonjnjacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofofofoacacfofofofofofofofovJwqwpwswrwuwtwwwvwxfofofofofofofofofolowjwywnwzuFwAloacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofohefohefofofofofofofofofofovJvLvMvMvMwBwDwGwCwxfofofofofofofofofoqcwEwHwFwJwIwKnjacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofoacacacacacacacfofofofofovKwNwpwPwOwtwQwwwLwxfofofofofofofofofoqcwMwSwRwTuFlonjacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofovJwdwWwXwfwVwUwZwYvJfofofofofofofofofoqcxaxcxbxexdloacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofohefohefofofofofofofofofofovJvLvMvMvMvywDwGvzwxfofofofofofofofofoqcwEwHwFwJwIwKnjacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofoacacacacacacacfofofofofovKwNwpwPwOwtwQwwvQwxfofofofofofofofofoqcwMwSwRwTuFlonjacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofovJwdwWwXwfvRwUwZwYvJfofofofofofofofofoqcxaxcxbxexdloacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofovJvJvKvKvLvLvMxixhvJacacfofofofofofofoloxfxjxglolonjacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofoacacvKxkxmxlxqxnvKvKvJvJvJfofofofoaclonjnjloloacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacachefofofoacacvKxoxtxsxqxuwxxpxpxwvJfofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofoacvKxrxyxvwwxAxCxxxExzvKfofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfohefofofoacvJxBxtxGxIxHxKxJxMxDvJfofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofofovJxkxNxOxQxFwxxRxSxTvKfofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofovKxkxPxLxVuNvJvJvKvJvJfofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofovJvKvJwxxWxYvJfofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofofovJxXyauOvJfofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofovJybydycvJfofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofoacacvKvUvWvXxqvZvKvKvJvJvJfofofofoaclonjnjloloacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacachefofofoacacvKwaxtxsxqxuwxwbwbxwvJfofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofoacvKwgxywBwwxAxCwCxEwLvKfofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfohefofofoacvJwVxtxGxIxHxKxJxMxkvJfofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofofovJvUxNxOxQxlwxxRxSxTvKfofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofovKvUxmxnxoxpvJvJvKvJvJfofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofovJvKvJwxxrxYvJfofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofofovJxvxxxzvJfofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa +aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofovJxBxDxFvJfofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofovJwxyewxvJfofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofoylevevevylfofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa aaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacfofofofofofofofofofofofofofoacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaa @@ -1427,4 +1421,4 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} \ No newline at end of file +"} diff --git a/_maps/map_files/RandomZLevels/wildwest.dmm b/_maps/map_files/RandomZLevels/wildwest.dmm index 13357f34876..31e5c541f5d 100644 --- a/_maps/map_files/RandomZLevels/wildwest.dmm +++ b/_maps/map_files/RandomZLevels/wildwest.dmm @@ -2,64 +2,64 @@ "ab" = (/turf/simulated/shuttle/wall,/area/awaymission/wwvault) "ac" = (/turf/simulated/floor/engine/cult,/area/awaymission/wwvault) "ad" = (/obj/structure/cult/pylon,/turf/simulated/floor/engine/cult,/area/awaymission/wwvault) -"ae" = (/turf/simulated/shuttle/plating{tag = "icon-cultdamage5";icon_state = "cultdamage5"},/area/awaymission/wwvault) +"ae" = (/turf/simulated/shuttle/plating{tag = "icon-cultdamage5"; icon_state = "cultdamage5"},/area/awaymission/wwvault) "af" = (/mob/living/simple_animal/hostile/faithless,/turf/simulated/floor/engine/cult,/area/awaymission/wwvault) -"ag" = (/turf/simulated/shuttle/plating{tag = "icon-bcircuitoff";icon_state = "bcircuitoff"},/area/awaymission/wwvault) +"ag" = (/turf/simulated/shuttle/plating{tag = "icon-bcircuitoff"; icon_state = "bcircuitoff"},/area/awaymission/wwvault) "ah" = (/turf/simulated/wall/cult,/area/awaymission/wwvault) -"ai" = (/obj/effect/forcefield{desc = "You can't get in. Heh.";layer = 1;name = "Blocker"},/turf/simulated/wall/cult,/area/awaymission/wwvault) -"aj" = (/turf/simulated/shuttle/plating{tag = "icon-cultdamage3";icon_state = "cultdamage3"},/area/awaymission/wwvault) -"ak" = (/turf/simulated/shuttle/plating{tag = "icon-cultdamage6";icon_state = "cultdamage6"},/area/awaymission/wwvault) +"ai" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/simulated/wall/cult,/area/awaymission/wwvault) +"aj" = (/turf/simulated/shuttle/plating{tag = "icon-cultdamage3"; icon_state = "cultdamage3"},/area/awaymission/wwvault) +"ak" = (/turf/simulated/shuttle/plating{tag = "icon-cultdamage6"; icon_state = "cultdamage6"},/area/awaymission/wwvault) "al" = (/obj/effect/gateway,/turf/simulated/floor/engine/cult,/area/awaymission/wwvault) -"am" = (/mob/living/simple_animal/hostile/faithless,/turf/simulated/shuttle/plating{tag = "icon-bcircuitoff";icon_state = "bcircuitoff"},/area/awaymission/wwvault) -"an" = (/obj/effect/forcefield{desc = "You can't get in. Heh.";layer = 1;name = "Blocker"},/turf/simulated/shuttle/wall,/area/awaymission/wwvault) -"ao" = (/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"ap" = (/obj/machinery/wish_granter_dark,/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"aq" = (/obj/structure/cult/pylon,/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"ar" = (/obj/machinery/gateway{dir = 9},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"as" = (/obj/machinery/gateway{dir = 5},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"at" = (/obj/machinery/gateway{dir = 1},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"au" = (/obj/machinery/gateway{dir = 8},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"av" = (/obj/machinery/gateway{dir = 4},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"aw" = (/obj/machinery/gateway/centeraway{calibrated = 0},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"ax" = (/obj/machinery/gateway{dir = 10},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"ay" = (/obj/machinery/gateway{dir = 6},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"az" = (/obj/machinery/gateway,/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"aA" = (/obj/effect/meatgrinder,/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff";icon_state = "gcircuitoff"},/area/awaymission/wwvault) -"aB" = (/obj/structure/cult/pylon,/turf/simulated/shuttle/plating{tag = "icon-bcircuitoff";icon_state = "bcircuitoff"},/area/awaymission/wwvault) -"aC" = (/turf/simulated/shuttle/plating{tag = "icon-cultdamage2";icon_state = "cultdamage2"},/area/awaymission/wwvault) +"am" = (/mob/living/simple_animal/hostile/faithless,/turf/simulated/shuttle/plating{tag = "icon-bcircuitoff"; icon_state = "bcircuitoff"},/area/awaymission/wwvault) +"an" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/simulated/shuttle/wall,/area/awaymission/wwvault) +"ao" = (/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"ap" = (/obj/machinery/wish_granter_dark,/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"aq" = (/obj/structure/cult/pylon,/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"ar" = (/obj/machinery/gateway{dir = 9},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"as" = (/obj/machinery/gateway{dir = 5},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"at" = (/obj/machinery/gateway{dir = 1},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"au" = (/obj/machinery/gateway{dir = 8},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"av" = (/obj/machinery/gateway{dir = 4},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"aw" = (/obj/machinery/gateway/centeraway{calibrated = 0},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"ax" = (/obj/machinery/gateway{dir = 10},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"ay" = (/obj/machinery/gateway{dir = 6},/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"az" = (/obj/machinery/gateway,/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"aA" = (/obj/effect/meatgrinder,/turf/simulated/shuttle/plating{tag = "icon-gcircuitoff"; icon_state = "gcircuitoff"},/area/awaymission/wwvault) +"aB" = (/obj/structure/cult/pylon,/turf/simulated/shuttle/plating{tag = "icon-bcircuitoff"; icon_state = "bcircuitoff"},/area/awaymission/wwvault) +"aC" = (/turf/simulated/shuttle/plating{tag = "icon-cultdamage2"; icon_state = "cultdamage2"},/area/awaymission/wwvault) "aD" = (/turf/simulated/floor/carpet,/area/awaymission/wwvault) "aE" = (/mob/living/simple_animal/hostile/faithless,/turf/simulated/floor/carpet,/area/awaymission/wwvault) "aF" = (/obj/machinery/door/airlock/vault{locked = 1},/turf/simulated/floor/engine/cult,/area/awaymission/wwvaultdoors) "aG" = (/turf/simulated/mineral,/area/space) -"aH" = (/obj/structure/cable{d2 = 8;icon_state = "0-8"},/obj/machinery/power/apc/noalarm{dir = 1;pixel_y = 32},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"aI" = (/obj/machinery/power/smes/magical,/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) +"aH" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc/noalarm{dir = 1; pixel_y = 32},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"aI" = (/obj/machinery/power/smes/magical,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) "aJ" = (/obj/machinery/door/airlock/vault{locked = 1},/turf/simulated/floor/engine/cult,/area/awaymission/wwvault) "aK" = (/obj/effect/mob_spawn/human/miner,/turf/simulated/floor/engine/cult,/area/awaymission/wwvault) -"aL" = (/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) +"aL" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) "aM" = (/turf/simulated/mineral/random,/area/awaymission/wwmines) "aN" = (/turf/simulated/mineral,/area/awaymission/wwmines) -"aO" = (/obj/machinery/power/terminal{dir = 1},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"aP" = (/obj/effect/forcefield{desc = "You can't get in. Heh.";layer = 1;name = "Blocker"},/turf/space,/area/space) -"aQ" = (/obj/effect/forcefield{desc = "You can't get in. Heh.";layer = 1;name = "Blocker"},/turf/simulated/mineral,/area/space) -"aR" = (/obj/effect/forcefield{desc = "You can't get in. Heh.";layer = 1;name = "Blocker"},/turf/simulated/mineral,/area/awaymission/wwmines) +"aO" = (/obj/machinery/power/terminal{dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"aP" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/space,/area/space) +"aQ" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/simulated/mineral,/area/space) +"aR" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/simulated/mineral,/area/awaymission/wwmines) "aS" = (/obj/effect/mob_spawn/human/corpse/syndicatecommando,/turf/simulated/floor/engine/cult,/area/awaymission/wwvault) -"aT" = (/obj/effect/forcefield{desc = "You can't get in. Heh.";layer = 1;name = "Blocker"},/turf/simulated/mineral/random,/area/awaymission/wwmines) +"aT" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/simulated/mineral/random,/area/awaymission/wwmines) "aU" = (/turf/simulated/wall/mineral/sandstone,/area/awaymission/wwrefine) -"aV" = (/obj/structure/ore_box,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) +"aV" = (/obj/structure/ore_box,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) "aW" = (/obj/item/paper{info = "meat grinder requires sacri"},/turf/simulated/floor/engine/cult,/area/awaymission/wwvault) -"aX" = (/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"aY" = (/obj/effect/forcefield{desc = "You can't get in. Heh.";layer = 1;name = "Blocker"},/turf/simulated/mineral,/area/awaymission/wwrefine) +"aX" = (/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"aY" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/simulated/mineral,/area/awaymission/wwrefine) "aZ" = (/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/awaymission/wwrefine) "ba" = (/turf/simulated/floor/plating,/area/awaymission/wwrefine) "bb" = (/obj/machinery/door/airlock/sandstone,/turf/simulated/floor/plating,/area/awaymission/wwrefine) -"bc" = (/obj/effect/forcefield{desc = "You can't get in. Heh.";layer = 1;name = "Blocker"},/turf/simulated/wall/mineral/sandstone,/area/awaymission/wwmines) -"bd" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibup1";icon_state = "gibup1"},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) +"bc" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/simulated/wall/mineral/sandstone,/area/awaymission/wwmines) +"bd" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibup1"; icon_state = "gibup1"},/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) "be" = (/turf/simulated/wall/mineral/sandstone,/area/space) "bf" = (/obj/structure/largecrate,/turf/simulated/floor/plating,/area/awaymission/wwrefine) -"bg" = (/obj/effect/mine/dnascramble,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) +"bg" = (/obj/effect/mine/dnascramble,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) "bh" = (/turf/simulated/floor/wood,/area/awaymission/wwmines) "bi" = (/obj/effect/decal/cleanable/blood,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"bj" = (/obj/effect/mine/dnascramble,/obj/item/ammo_box/c10mm,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) +"bj" = (/obj/effect/mine/dnascramble,/obj/item/ammo_box/c10mm,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) "bk" = (/obj/effect/mine/dnascramble,/turf/simulated/floor/wood,/area/awaymission/wwmines) "bl" = (/mob/living/simple_animal/hostile/syndicate/ranged/wildwest,/turf/simulated/floor/plating,/area/awaymission/wwrefine) "bm" = (/obj/structure/closet/crate,/turf/simulated/floor/plating,/area/awaymission/wwrefine) @@ -68,72 +68,72 @@ "bp" = (/obj/structure/lattice,/turf/space,/area/space) "bq" = (/obj/effect/mine/dnascramble,/obj/item/ammo_box/c10mm,/turf/simulated/floor/wood,/area/awaymission/wwmines) "br" = (/obj/structure/closet/crate,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/awaymission/wwrefine) -"bs" = (/obj/item/ammo_box/c10mm,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"bt" = (/mob/living/simple_animal/hostile/syndicate/ranged/wildwest,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"bu" = (/obj/effect/mine/dnascramble,/obj/effect/mob_spawn/human/miner,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"bv" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibup1";icon_state = "gibup1"},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"bw" = (/obj/structure/lattice,/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/turf/space,/area/space) -"bx" = (/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/turf/space,/area/space) -"by" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"bs" = (/obj/item/ammo_box/c10mm,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"bt" = (/mob/living/simple_animal/hostile/syndicate/ranged/wildwest,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"bu" = (/obj/effect/mine/dnascramble,/obj/effect/mob_spawn/human/miner,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"bv" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibup1"; icon_state = "gibup1"},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"bw" = (/obj/structure/lattice,/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/turf/space,/area/space) +"bx" = (/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/turf/space,/area/space) +"by" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "bz" = (/obj/structure/bed,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"bA" = (/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"bA" = (/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "bB" = (/obj/structure/table/wood,/turf/simulated/floor/wood,/area/awaymission/wwmines) "bC" = (/mob/living/simple_animal/hostile/syndicate/ranged/wildwest,/turf/simulated/floor/wood,/area/awaymission/wwmines) "bD" = (/turf/simulated/floor/carpet,/area/awaymission/wwmines) -"bE" = (/mob/living/simple_animal/hostile/syndicate/ranged/wildwest,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"bE" = (/mob/living/simple_animal/hostile/syndicate/ranged/wildwest,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "bF" = (/obj/machinery/vending/dinnerware,/turf/simulated/floor/wood,/area/awaymission/wwmines) "bG" = (/obj/machinery/vending/boozeomat,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"bH" = (/obj/structure/closet{icon_closed = "cabinet_closed";icon_opened = "cabinet_open";icon_state = "cabinet_closed"},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"bI" = (/obj/structure/table/wood,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/obj/item/gun/projectile/automatic/pistol,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"bJ" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/carpet,/area/awaymission/wwmines) -"bK" = (/obj/structure/table/wood,/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)";icon_state = "tube1";dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"bL" = (/obj/structure/table/wood,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/obj/item/kitchen/knife/butcher,/turf/simulated/floor/wood,/area/awaymission/wwmines) +"bH" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"bI" = (/obj/structure/table/wood,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/obj/item/gun/projectile/automatic/pistol,/turf/simulated/floor/wood,/area/awaymission/wwmines) +"bJ" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/carpet,/area/awaymission/wwmines) +"bK" = (/obj/structure/table/wood,/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"bL" = (/obj/structure/table/wood,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/obj/item/kitchen/knife/butcher,/turf/simulated/floor/wood,/area/awaymission/wwmines) "bM" = (/turf/simulated/wall/mineral/sandstone,/area/awaymission/wwgov) "bN" = (/obj/structure/table/wood,/obj/item/book/manual/barman_recipes,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"bO" = (/obj/structure/table/wood,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"bP" = (/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)";icon_state = "tube1";dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"bQ" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"bR" = (/obj/machinery/microwave,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"bS" = (/obj/item/book/manual/chef_recipes,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"bT" = (/obj/structure/closet/secure_closet/freezer/meat,/obj/item/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/reagent_containers/food/snacks/meat/syntiflesh,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"bU" = (/obj/structure/lattice,/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/turf/space,/area/space) -"bV" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"bW" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/obj/structure/grille,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"bX" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) +"bO" = (/obj/structure/table/wood,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"bP" = (/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"bQ" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"bR" = (/obj/machinery/microwave,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"bS" = (/obj/item/book/manual/chef_recipes,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"bT" = (/obj/structure/closet/secure_closet/freezer/meat,/obj/item/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/reagent_containers/food/snacks/meat/syntiflesh,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"bU" = (/obj/structure/lattice,/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/turf/space,/area/space) +"bV" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/awaymission/wwgov) +"bW" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwgov) +"bX" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/turf/simulated/floor/plating,/area/awaymission/wwgov) "bY" = (/obj/machinery/door/window,/turf/simulated/floor/wood,/area/awaymission/wwmines) "bZ" = (/obj/item/ammo_box/a357,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"ca" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/space,/area/space) -"cb" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"cc" = (/obj/structure/chair/wood/normal{dir = 4},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"cd" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)";icon_state = "bulb1";dir = 4},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"ce" = (/obj/structure/chair/wood/normal{dir = 8},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"ca" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/turf/space,/area/space) +"cb" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"cc" = (/obj/structure/chair/wood/normal{dir = 4},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"cd" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"ce" = (/obj/structure/chair/wood/normal{dir = 8},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "cf" = (/obj/structure/mineral_door/wood,/turf/simulated/floor/wood,/area/awaymission/wwmines) "cg" = (/obj/structure/chair/stool,/turf/simulated/floor/carpet,/area/awaymission/wwmines) "ch" = (/obj/item/ammo_box/c10mm,/turf/simulated/floor/carpet,/area/awaymission/wwmines) "ci" = (/obj/structure/chair/stool,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"cj" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/turf/space,/area/space) +"cj" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/turf/space,/area/space) "ck" = (/turf/simulated/floor/wood,/area/awaymission/wwgov) -"cl" = (/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"cm" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"cn" = (/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand2";icon_state = "ironsand2"},/area/awaymission/wwgov) -"co" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) +"cl" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/turf/simulated/floor/plating,/area/awaymission/wwgov) +"cm" = (/turf/simulated/floor/plating/ironsand,/area/awaymission/wwgov) +"cn" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/awaymission/wwgov) +"co" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwgov) "cp" = (/obj/structure/table/wood,/obj/item/gun/projectile/automatic/pistol,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"cq" = (/obj/effect/mob_spawn/human/cook,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"cq" = (/obj/effect/mob_spawn/human/cook,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "cr" = (/obj/structure/lattice,/obj/structure/lattice,/turf/space,/area/space) "cs" = (/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor/carpet,/area/awaymission/wwmines) "ct" = (/turf/simulated/floor/carpet,/area/awaymission/wwgov) -"cu" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/grille,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) +"cu" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwgov) "cv" = (/obj/structure/chair/wood/wings,/turf/simulated/floor/wood,/area/awaymission/wwgov) "cw" = (/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"cx" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/grille,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"cy" = (/obj/item/paper{info = " The miners in the town have become sick and almost all production has stopped. They, in a fit of delusion, tossed all of their mining equipment into the furnaces. They all claimed the same thing. A voice beckoning them to lay down their arms. Stupid miners.";name = "Planer Saul's Journal: Page 4"},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"cx" = (/obj/effect/mine/gas/plasma,/obj/item/ammo_box/c10mm,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"cy" = (/obj/item/paper{info = " The miners in the town have become sick and almost all production has stopped. They, in a fit of delusion, tossed all of their mining equipment into the furnaces. They all claimed the same thing. A voice beckoning them to lay down their arms. Stupid miners."; name = "Planer Saul's Journal: Page 4"},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "cz" = (/obj/item/storage/bag/money,/turf/simulated/floor/wood,/area/awaymission/wwgov) "cA" = (/obj/structure/chair/wood/normal{dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwgov) -"cB" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/carpet,/area/awaymission/wwmines) +"cB" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/carpet,/area/awaymission/wwmines) "cC" = (/obj/effect/mob_spawn/human/miner,/turf/simulated/floor/wood,/area/awaymission/wwgov) -"cD" = (/obj/structure/bookcase{tag = "icon-book-5";icon_state = "book-5"},/turf/simulated/floor/wood,/area/awaymission/wwgov) -"cE" = (/obj/item/storage/bag/money,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwgov) -"cF" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwgov) +"cD" = (/obj/structure/bookcase{tag = "icon-book-5"; icon_state = "book-5"},/turf/simulated/floor/wood,/area/awaymission/wwgov) +"cE" = (/obj/item/storage/bag/money,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwgov) +"cF" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwgov) "cG" = (/obj/item/toy/sword,/turf/simulated/floor/wood,/area/awaymission/wwgov) "cH" = (/obj/effect/mob_spawn/human/corpse/syndicatecommando{mob_name = "Syndicate Commando"},/turf/simulated/floor/carpet,/area/awaymission/wwgov) "cI" = (/mob/living/simple_animal/hostile/creature,/turf/simulated/floor/wood,/area/awaymission/wwgov) @@ -141,253 +141,239 @@ "cK" = (/mob/living/simple_animal/hostile/creature,/turf/simulated/floor/carpet,/area/awaymission/wwgov) "cL" = (/obj/item/storage/bag/money,/turf/simulated/floor/carpet,/area/awaymission/wwgov) "cM" = (/obj/structure/chair/wood/wings{dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwgov) -"cN" = (/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) +"cN" = (/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) "cO" = (/obj/effect/decal/remains/human,/mob/living/simple_animal/hostile/syndicate/ranged/space{name = "Syndicate Commander"},/turf/simulated/floor/plating,/area/awaymission/wwrefine) -"cP" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"cQ" = (/obj/machinery/microwave,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"cR" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"cS" = (/obj/structure/lattice,/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/space,/area/space) +"cP" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"cQ" = (/obj/machinery/microwave,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"cR" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"cS" = (/obj/structure/lattice,/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/turf/space,/area/space) "cT" = (/obj/structure/chair/comfy/black{dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) "cU" = (/obj/structure/chair/comfy/teal{dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) "cV" = (/obj/structure/chair/wood/normal{dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) "cW" = (/obj/structure/chair/wood/normal{dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) "cX" = (/obj/item/clothing/gloves/color/yellow,/obj/item/multitool,/turf/simulated/floor/wood,/area/awaymission/wwgov) -"cY" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)";icon_state = "bulb1";dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"cZ" = (/obj/effect/mine/gas/plasma,/obj/item/ammo_box/c10mm,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) +"cY" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"cZ" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/turf/simulated/floor/plating,/area/awaymission/wwgov) "da" = (/obj/effect/mob_spawn/human/miner,/turf/simulated/floor/wood,/area/awaymission/wwmines) "db" = (/obj/machinery/mineral/mint,/turf/simulated/floor/plating,/area/awaymission/wwrefine) -"dc" = (/obj/item/storage/toolbox/electrical,/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwgov) -"dd" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)";icon_state = "bulb1";dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwgov) -"de" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwgov) +"dc" = (/obj/item/storage/toolbox/electrical,/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwgov) +"dd" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwgov) +"de" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwgov) "df" = (/obj/structure/window/reinforced{dir = 4},/turf/space,/area/space) -"dg" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"dh" = (/mob/living/simple_animal/hostile/creature,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"di" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)";icon_state = "bulb1";dir = 4},/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"dj" = (/obj/structure/bookcase{tag = "icon-book-5";icon_state = "book-5"},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"dk" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"dg" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"dh" = (/mob/living/simple_animal/hostile/creature,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"di" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"dj" = (/obj/structure/bookcase{tag = "icon-book-5"; icon_state = "book-5"},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"dk" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) "dl" = (/obj/effect/decal/cleanable/blood/tracks,/turf/simulated/floor/wood,/area/awaymission/wwmines) "dm" = (/obj/effect/mine/gas/plasma,/obj/item/ammo_box/c10mm,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"dn" = (/obj/effect/decal/cleanable/blood/splatter,/obj/machinery/light/small{tag = "icon-bulb1 (EAST)";icon_state = "bulb1";dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"do" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"dn" = (/obj/effect/decal/cleanable/blood/splatter,/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"do" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) "dp" = (/obj/effect/decal/cleanable/blood/splatter,/obj/effect/mob_spawn/human/miner,/turf/simulated/floor/carpet,/area/awaymission/wwmines) "dq" = (/obj/item/reagent_containers/food/condiment/peppermill,/turf/simulated/floor/wood,/area/awaymission/wwmines) "dr" = (/obj/item/reagent_containers/food/condiment/saltshaker,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"ds" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) +"ds" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/turf/simulated/floor/plating,/area/awaymission/wwgov) "dt" = (/obj/item/storage/toolbox/electrical,/turf/simulated/floor/wood,/area/awaymission/wwgov) -"du" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) +"du" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/awaymission/wwgov) "dv" = (/obj/structure/largecrate,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"dw" = (/obj/item/paper{info = "We've discovered something floating in space. We can't really tell how old it is, but it is scraped and bent to hell. There object is the size of about a room with double doors that we have yet to break into. It is a lot sturdier than we could have imagined. We have decided to call it 'The Vault' ";name = "Planer Saul's Journal: Page 1"},/turf/simulated/floor/carpet,/area/awaymission/wwgov) -"dx" = (/obj/item/reagent_containers/food/snacks/monkeysdelight,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"dy" = (/obj/item/reagent_containers/food/snacks/stew,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"dz" = (/obj/item/kitchen/knife,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) +"dw" = (/obj/item/paper{info = "We've discovered something floating in space. We can't really tell how old it is, but it is scraped and bent to hell. There object is the size of about a room with double doors that we have yet to break into. It is a lot sturdier than we could have imagined. We have decided to call it 'The Vault' "; name = "Planer Saul's Journal: Page 1"},/turf/simulated/floor/carpet,/area/awaymission/wwgov) +"dx" = (/obj/item/reagent_containers/food/snacks/monkeysdelight,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"dy" = (/obj/item/reagent_containers/food/snacks/stew,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"dz" = (/obj/item/kitchen/knife,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) "dA" = (/obj/structure/chair/comfy/brown,/turf/simulated/floor/carpet,/area/awaymission/wwmines) "dB" = (/obj/structure/chair/comfy/beige,/turf/simulated/floor/carpet,/area/awaymission/wwmines) "dC" = (/obj/machinery/door/airlock/sandstone,/turf/simulated/floor/wood,/area/awaymission/wwmines) "dD" = (/obj/machinery/computer/security/telescreen/entertainment,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"dE" = (/obj/structure/chair/comfy/black{dir = 4},/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"dF" = (/obj/structure/chair/comfy/teal{dir = 8},/obj/machinery/light/small{tag = "icon-bulb1 (EAST)";icon_state = "bulb1";dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"dG" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) +"dE" = (/obj/structure/chair/comfy/black{dir = 4},/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"dF" = (/obj/structure/chair/comfy/teal{dir = 8},/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"dG" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/turf/simulated/floor/plating,/area/awaymission/wwgov) "dH" = (/obj/machinery/computer/security/telescreen/entertainment,/turf/simulated/wall/mineral/sandstone,/area/awaymission/wwmines) -"dI" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/mob/living/simple_animal/hostile/creature,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"dJ" = (/obj/item/kitchen/rollingpin,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"dK" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"dL" = (/obj/structure/window/reinforced{dir = 5;max_integrity = 1e+007},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"dM" = (/obj/structure/mineral_door/wood,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"dN" = (/obj/structure/mineral_door/wood,/obj/effect/decal/cleanable/blood/tracks,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) +"dI" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/mob/living/simple_animal/hostile/creature,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"dJ" = (/obj/item/kitchen/rollingpin,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"dK" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"dL" = (/obj/structure/window/reinforced{dir = 5; max_integrity = 1e+007},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"dM" = (/obj/structure/mineral_door/wood,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1"; icon_state = "ironsand1"},/area/awaymission/wwmines) +"dN" = (/obj/structure/mineral_door/wood,/obj/effect/decal/cleanable/blood/tracks,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1"; icon_state = "ironsand1"},/area/awaymission/wwmines) "dO" = (/obj/structure/chair/comfy/beige{dir = 4},/turf/simulated/floor/carpet,/area/awaymission/wwmines) "dP" = (/obj/structure/bed,/obj/item/bedsheet/brown,/turf/simulated/floor/wood,/area/awaymission/wwgov) -"dQ" = (/obj/item/reagent_containers/food/drinks/bottle/wine,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"dR" = (/obj/item/reagent_containers/food/drinks/bottle/patron,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) -"dS" = (/obj/item/reagent_containers/food/drinks/drinkingglass,/obj/item/reagent_containers/food/drinks/drinkingglass,/obj/item/reagent_containers/food/drinks/drinkingglass,/obj/item/reagent_containers/food/drinks/drinkingglass,/obj/machinery/light/small,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft";icon_state = "stage_bleft"},/area/awaymission/wwgov) +"dQ" = (/obj/item/reagent_containers/food/drinks/bottle/wine,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"dR" = (/obj/item/reagent_containers/food/drinks/bottle/patron,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) +"dS" = (/obj/item/reagent_containers/food/drinks/drinkingglass,/obj/item/reagent_containers/food/drinks/drinkingglass,/obj/item/reagent_containers/food/drinks/drinkingglass,/obj/item/reagent_containers/food/drinks/drinkingglass,/obj/machinery/light/small,/turf/simulated/floor/plasteel{tag = "icon-stage_bleft"; icon_state = "stage_bleft"},/area/awaymission/wwgov) "dT" = (/obj/structure/chair/comfy/beige{dir = 8},/turf/simulated/floor/carpet,/area/awaymission/wwmines) -"dU" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"dV" = (/obj/effect/decal/cleanable/blood/tracks,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"dW" = (/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"dX" = (/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand4";icon_state = "ironsand4"},/area/awaymission/wwgov) -"dY" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"dZ" = (/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand12";icon_state = "ironsand12"},/area/awaymission/wwgov) -"ea" = (/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand14";icon_state = "ironsand14"},/area/awaymission/wwgov) -"eb" = (/obj/machinery/light/small,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"ec" = (/obj/structure/toilet,/mob/living/simple_animal/hostile/creature,/turf/simulated/floor/plasteel{tag = "icon-white";icon_state = "white"},/area/awaymission/wwgov) -"ed" = (/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand9";icon_state = "ironsand9"},/area/awaymission/wwgov) -"ee" = (/obj/structure/mineral_door/wood,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"ef" = (/obj/structure/largecrate,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"eg" = (/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand7";icon_state = "ironsand7"},/area/awaymission/wwgov) -"eh" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"ei" = (/obj/machinery/washing_machine,/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"dU" = (/obj/effect/decal/cleanable/blood/tracks,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"dV" = (/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"dW" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/plating/ironsand,/area/awaymission/wwgov) +"dX" = (/obj/machinery/light/small,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"dY" = (/obj/structure/mineral_door/wood,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwgov) +"dZ" = (/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/turf/simulated/floor/plating,/area/awaymission/wwgov) +"ea" = (/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwgov) +"eb" = (/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/turf/simulated/floor/plating,/area/awaymission/wwgov) +"ec" = (/obj/structure/toilet,/mob/living/simple_animal/hostile/creature,/turf/simulated/floor/plasteel{tag = "icon-white"; icon_state = "white"},/area/awaymission/wwgov) +"ed" = (/obj/machinery/door/airlock/sandstone,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwgov) +"ee" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/turf/simulated/floor/plating/ironsand,/area/awaymission/wwgov) +"ef" = (/obj/structure/largecrate,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"eg" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/ironsand,/area/awaymission/wwgov) +"eh" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"ei" = (/obj/machinery/washing_machine,/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "ej" = (/turf/simulated/wall/r_wall,/area/awaymission/wwrefine) "ek" = (/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) "el" = (/obj/structure/bed,/obj/item/bedsheet/blue,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"em" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1";icon_state = "gibdown1"},/turf/simulated/floor/carpet,/area/awaymission/wwmines) -"en" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair_brown (WEST)";icon_state = "comfychair_brown";dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"eo" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1";icon_state = "gibdown1"},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"em" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1"; icon_state = "gibdown1"},/turf/simulated/floor/carpet,/area/awaymission/wwmines) +"en" = (/obj/structure/chair/comfy/brown{dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"eo" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1"; icon_state = "gibdown1"},/turf/simulated/floor/wood,/area/awaymission/wwmines) "ep" = (/obj/structure/table/wood,/obj/item/wildwest_communicator,/turf/simulated/floor/wood,/area/awaymission/wwmines) "eq" = (/obj/machinery/mineral/mint,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) +"er" = (/obj/effect/decal/cleanable/blood,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) "es" = (/obj/structure/chair/comfy/brown,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"et" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair_brown (EAST)";icon_state = "comfychair_brown";dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"eu" = (/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"ev" = (/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/grille,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"ew" = (/obj/machinery/door/airlock/sandstone,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"ex" = (/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"ey" = (/obj/machinery/shower{tag = "icon-shower (EAST)";icon_state = "shower";dir = 4},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"et" = (/obj/structure/chair/comfy/brown{dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"eu" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"ev" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwrefine) +"ew" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwrefine) +"ex" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwrefine) +"ey" = (/obj/machinery/shower{tag = "icon-shower (EAST)"; icon_state = "shower"; dir = 4},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "ez" = (/obj/structure/sign/vacuum,/turf/simulated/wall/r_wall,/area/awaymission/wwrefine) "eA" = (/obj/effect/mine/dnascramble,/obj/effect/mob_spawn/human/miner,/turf/simulated/floor/wood,/area/awaymission/wwmines) "eB" = (/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/wall/mineral/sandstone,/area/awaymission/wwmines) -"eC" = (/obj/item/soap/syndie,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"eD" = (/obj/machinery/shower{tag = "icon-shower (WEST)";icon_state = "shower";dir = 8},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"eE" = (/obj/machinery/washing_machine,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"eC" = (/obj/item/soap/syndie,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"eD" = (/obj/machinery/shower{tag = "icon-shower (WEST)"; icon_state = "shower"; dir = 8},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"eE" = (/obj/machinery/washing_machine,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "eF" = (/obj/item/reagent_containers/food/drinks/coffee,/turf/simulated/floor/carpet,/area/awaymission/wwmines) "eG" = (/obj/item/reagent_containers/food/snacks/donut/jelly/slimejelly,/turf/simulated/floor/carpet,/area/awaymission/wwmines) "eH" = (/obj/effect/mine/gas/plasma,/turf/simulated/floor/wood,/area/awaymission/wwmines) "eI" = (/obj/item/reagent_containers/food/snacks/donut,/turf/simulated/floor/carpet,/area/awaymission/wwmines) "eJ" = (/obj/structure/chair/comfy/brown{dir = 1},/turf/simulated/floor/carpet,/area/awaymission/wwmines) "eK" = (/obj/item/reagent_containers/food/snacks/donut/jelly,/turf/simulated/floor/carpet,/area/awaymission/wwmines) -"eL" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/turf/space,/area/space) -"eM" = (/obj/structure/lattice,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/turf/space,/area/space) -"eN" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) -"eO" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/space,/area/space) -"eP" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/space,/area/space) -"eQ" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwgov) +"eL" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/turf/space,/area/space) +"eM" = (/obj/structure/lattice,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/turf/space,/area/space) +"eN" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwrefine) +"eO" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/space,/area/space) +"eP" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/turf/space,/area/space) +"eQ" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwrefine) "eR" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"eS" = (/obj/effect/decal/cleanable/blood,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"eT" = (/obj/effect/mine/gas/plasma,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"eS" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwrefine) +"eT" = (/obj/effect/mine/gas/plasma,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "eU" = (/obj/effect/mob_spawn/human/miner,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"eV" = (/obj/effect/decal/cleanable/blood,/obj/machinery/washing_machine,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"eV" = (/obj/effect/decal/cleanable/blood,/obj/machinery/washing_machine,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "eW" = (/obj/structure/bed,/obj/item/bedsheet/blue,/obj/item/ammo_box/a357,/turf/simulated/floor/wood,/area/awaymission/wwmines) "eX" = (/turf/simulated/wall/mineral/sandstone,/area/awaymission/wwmines) -"eY" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair_brown (EAST)";icon_state = "comfychair_brown";dir = 4},/turf/simulated/floor/carpet,/area/awaymission/wwmines) -"eZ" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair_brown (WEST)";icon_state = "comfychair_brown";dir = 8},/turf/simulated/floor/carpet,/area/awaymission/wwmines) +"eY" = (/obj/structure/chair/comfy/brown{dir = 4},/turf/simulated/floor/carpet,/area/awaymission/wwmines) +"eZ" = (/obj/structure/chair/comfy/brown{dir = 8},/turf/simulated/floor/carpet,/area/awaymission/wwmines) "fa" = (/obj/structure/toilet{dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) "fb" = (/obj/structure/toilet{dir = 1},/obj/item/ammo_box/a357,/turf/simulated/floor/wood,/area/awaymission/wwmines) "fc" = (/obj/effect/decal/cleanable/blood,/turf/simulated/wall/mineral/sandstone,/area/awaymission/wwmines) -"fd" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand12";icon_state = "ironsand12"},/area/awaymission/wwgov) +"fd" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/awaymission/wwrefine) "fe" = (/obj/structure/chair/comfy/beige{dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"ff" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand2";icon_state = "ironsand2"},/area/awaymission/wwgov) -"fg" = (/obj/effect/decal/cleanable/blood,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) -"fh" = (/obj/effect/mob_spawn/human/doctor,/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) +"ff" = (/obj/effect/mine/gas/plasma,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"fg" = (/obj/effect/decal/cleanable/blood,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) +"fh" = (/obj/effect/mob_spawn/human/doctor,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) "fi" = (/obj/item/storage/firstaid/brute,/obj/item/storage/firstaid/o2,/obj/item/storage/firstaid/adv,/obj/item/storage/firstaid/toxin,/obj/structure/closet/crate,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"fj" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand7";icon_state = "ironsand7"},/area/awaymission/wwgov) -"fk" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand4";icon_state = "ironsand4"},/area/awaymission/wwgov) -"fl" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)";icon_state = "cafeteria";dir = 5},/area/awaymission/wwmines) +"fj" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1"; icon_state = "gibdown1"},/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"fk" = (/obj/effect/decal/cleanable/blood/gibs/body,/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"fl" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaymission/wwmines) "fm" = (/obj/structure/chair/office/dark{dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) "fn" = (/obj/structure/chair/office/dark{dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) "fo" = (/obj/structure/chair/office/light{dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) "fp" = (/obj/structure/chair/office/light{dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"fq" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand12";icon_state = "ironsand12"},/area/awaymission/wwgov) +"fq" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/turf/simulated/floor/plating,/area/awaymission/wwrefine) "fr" = (/obj/structure/bed,/obj/item/bedsheet/blue,/obj/item/gun/projectile/automatic/pistol,/turf/simulated/floor/wood,/area/awaymission/wwmines) "fs" = (/obj/effect/decal/cleanable/blood,/obj/structure/bed,/obj/item/bedsheet/blue,/turf/simulated/floor/wood,/area/awaymission/wwmines) "ft" = (/turf/simulated/floor/grass,/area/awaymission/wwgov) -"fu" = (/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"fv" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1";icon_state = "gibdown1"},/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"fu" = (/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) +"fv" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1"; icon_state = "gibdown1"},/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) "fw" = (/obj/item/reagent_containers/food/drinks/coffee,/obj/item/reagent_containers/food/snacks/donut/jelly/slimejelly,/turf/simulated/floor/carpet,/area/awaymission/wwmines) -"fx" = (/obj/structure/chair/comfy/beige{dir = 8},/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1";icon_state = "gibdown1"},/turf/simulated/floor/carpet,/area/awaymission/wwmines) +"fx" = (/obj/structure/chair/comfy/beige{dir = 8},/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1"; icon_state = "gibdown1"},/turf/simulated/floor/carpet,/area/awaymission/wwmines) "fy" = (/obj/effect/mob_spawn/human/corpse/syndicatecommando{mob_name = "Syndicate Commando"},/turf/simulated/floor/grass,/area/awaymission/wwgov) -"fz" = (/obj/structure/closet{icon_closed = "cabinet_closed";icon_opened = "cabinet_open";icon_state = "cabinet_closed"},/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"fA" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand7";icon_state = "ironsand7"},/area/awaymission/wwgov) +"fz" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"fA" = (/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) "fB" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/grass,/area/awaymission/wwgov) -"fC" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand14";icon_state = "ironsand14"},/area/awaymission/wwgov) +"fC" = (/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) "fD" = (/obj/effect/decal/cleanable/cobweb,/obj/effect/decal/cleanable/blood,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"fE" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/grille,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"fF" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/grille,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"fG" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/obj/structure/grille,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"fH" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/obj/structure/grille,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) +"fE" = (/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) +"fF" = (/obj/effect/landmark{name = "wildwest_syndipod"},/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) +"fG" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/turf/simulated/floor/plating,/area/awaymission/wwrefine) +"fH" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwrefine) "fI" = (/turf/simulated/floor/plasteel,/area/space) "fJ" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/chair/office/dark{dir = 4},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"fL" = (/obj/structure/chair/comfy/beige{dir = 1;icon_state = "comfychair_beige";tag = ""},/turf/simulated/floor/carpet,/area/awaymission/wwmines) -"fM" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibup1";icon_state = "gibup1"},/turf/simulated/floor/carpet,/area/awaymission/wwmines) +"fK" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/turf/simulated/floor/plating,/area/awaymission/wwrefine) +"fL" = (/obj/structure/chair/comfy/beige{dir = 1},/turf/simulated/floor/carpet,/area/awaymission/wwmines) +"fM" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibup1"; icon_state = "gibup1"},/turf/simulated/floor/carpet,/area/awaymission/wwmines) "fN" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/grass,/area/awaymission/wwgov) "fO" = (/obj/effect/decal/cleanable/blood/gibs/core,/turf/simulated/floor/wood,/area/awaymission/wwmines) "fP" = (/mob/living/simple_animal/hostile/syndicate,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"fQ" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"fR" = (/obj/machinery/vending/coffee,/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) +"fQ" = (/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"fR" = (/obj/machinery/vending/coffee,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) "fS" = (/mob/living/simple_animal/hostile/creature,/turf/simulated/floor/grass,/area/awaymission/wwgov) "fT" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/grass,/area/awaymission/wwgov) -"fU" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) +"fU" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) "fV" = (/obj/effect/decal/cleanable/blood/gibs/up,/turf/simulated/floor/wood,/area/awaymission/wwmines) "fW" = (/obj/effect/decal/cleanable/blood/gibs/down,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"fX" = (/obj/machinery/vending/snack,/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) +"fX" = (/obj/machinery/vending/snack,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) "fY" = (/obj/machinery/washing_machine,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"fZ" = (/obj/machinery/vending/cola,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"ga" = (/obj/machinery/vending/cola,/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"gb" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand9";icon_state = "ironsand9"},/area/awaymission/wwgov) -"gc" = (/obj/structure/sink,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"gd" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1";icon_state = "gibdown1"},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"ge" = (/obj/item/stack/medical/bruise_pack,/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"gf" = (/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/grille,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"gg" = (/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"gh" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)";icon_state = "bulb1";dir = 4},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"gi" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/grille,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) +"fZ" = (/obj/machinery/vending/cola,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"ga" = (/obj/machinery/vending/cola,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"gb" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwrefine) +"gc" = (/obj/structure/sink,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"gd" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1"; icon_state = "gibdown1"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"ge" = (/obj/item/stack/medical/bruise_pack,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"gf" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)"; icon_state = "fwindow"; dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/grille,/turf/simulated/floor/plating,/area/awaymission/wwrefine) +"gg" = (/obj/effect/decal/cleanable/blood/splatter,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"gh" = (/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"gi" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) "gj" = (/obj/structure/window/reinforced,/turf/simulated/floor/grass,/area/awaymission/wwgov) "gk" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/grass,/area/awaymission/wwgov) -"gl" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1";icon_state = "gibdown1"},/turf/simulated/wall/mineral/sandstone,/area/awaymission/wwmines) -"gm" = (/obj/structure/chair/wood/normal{dir = 4},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"gn" = (/obj/structure/chair/wood/normal{dir = 8},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"go" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/turf/space,/area/space) -"gp" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/turf/space,/area/space) -"gq" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"gr" = (/obj/effect/mine/gas/plasma,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"gs" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1";icon_state = "gibdown1"},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"gt" = (/obj/structure/chair/comfy/beige{dir = 4},/obj/machinery/light/small{tag = "icon-bulb1 (WEST)";icon_state = "bulb1";dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"gu" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibup1";icon_state = "gibup1"},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"gv" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/turf/simulated/floor/grass,/area/awaymission/wwgov) +"gl" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1"; icon_state = "gibdown1"},/turf/simulated/wall/mineral/sandstone,/area/awaymission/wwmines) +"gm" = (/obj/structure/chair/wood/normal{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"gn" = (/obj/structure/chair/wood/normal{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"go" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/turf/space,/area/space) +"gp" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/turf/space,/area/space) +"gq" = (/obj/item/paper{info = "The syndicate have invaded. Their ships appeared out of nowhere and now they likely intend to kill us all and take everything. On the off-chance that the Vault may grant us sanctuary, many of us have decided to force our way inside and bolt the door, taking as many provisions with us as we can carry. In case you find this, send for help immediately and open the Vault. Find us inside."; name = "Planer Saul's Journal: Page 8"},/turf/simulated/floor/plating/ironsand,/area/awaymission/wwmines) +"gt" = (/obj/structure/chair/comfy/beige{dir = 4},/obj/machinery/light/small{tag = "icon-bulb1 (WEST)"; icon_state = "bulb1"; dir = 8},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"gu" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibup1"; icon_state = "gibup1"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"gv" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/turf/simulated/floor/grass,/area/awaymission/wwgov) "gw" = (/obj/effect/landmark{name = "wildwest_syndibackup"},/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"gx" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/simulated/floor/grass,/area/awaymission/wwgov) -"gy" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/turf/simulated/floor/grass,/area/awaymission/wwgov) +"gx" = (/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/turf/simulated/floor/grass,/area/awaymission/wwgov) +"gy" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)"; icon_state = "fwindow"; dir = 1},/turf/simulated/floor/grass,/area/awaymission/wwgov) "gz" = (/mob/living/simple_animal/hostile/syndicate{name = "Syndicate Comms Tech"},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"gA" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/lattice,/turf/space,/area/space) -"gB" = (/obj/effect/decal/cleanable/blood/gibs/body,/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) +"gA" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/lattice,/turf/space,/area/space) "gC" = (/obj/item/gun/projectile/shotgun,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"gD" = (/obj/structure/chair/wood/normal,/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"gE" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/simulated/floor/grass,/area/awaymission/wwgov) -"gF" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"gG" = (/obj/item/paper{info = "The Vault...it just keeps growing and growing. I went on my daily walk through the garden and now its just right outside the mansion... a few days ago it was only barely visible. But whatever is inside...its calling to me.";name = "Planer Sauls' Journal: Page 7"},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"gH" = (/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/turf/simulated/floor/grass,/area/awaymission/wwgov) -"gI" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/turf/simulated/floor/grass,/area/awaymission/wwgov) -"gJ" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/simulated/floor/plasteel,/area/space) +"gD" = (/obj/structure/chair/wood/normal,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"gE" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/turf/simulated/floor/grass,/area/awaymission/wwgov) +"gG" = (/obj/item/paper{info = "The Vault...it just keeps growing and growing. I went on my daily walk through the garden and now its just right outside the mansion... a few days ago it was only barely visible. But whatever is inside...its calling to me."; name = "Planer Sauls' Journal: Page 7"},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"gH" = (/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/turf/simulated/floor/grass,/area/awaymission/wwgov) +"gI" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/turf/simulated/floor/grass,/area/awaymission/wwgov) +"gJ" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/turf/simulated/floor/plasteel,/area/space) "gK" = (/obj/item/gun/projectile/revolver/russian,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"gL" = (/obj/structure/chair/wood/normal{dir = 1},/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"gM" = (/obj/machinery/photocopier,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)";icon_state = "bulb1";dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"gN" = (/obj/effect/decal/cleanable/blood/splatter,/obj/effect/forcefield{desc = "You can't get in. Heh.";layer = 1;name = "Blocker"},/turf/simulated/mineral,/area/awaymission/wwmines) +"gL" = (/obj/structure/chair/wood/normal{dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) +"gM" = (/obj/machinery/photocopier,/obj/machinery/light/small{tag = "icon-bulb1 (NORTH)"; icon_state = "bulb1"; dir = 1},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"gN" = (/obj/effect/decal/cleanable/blood/splatter,/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/simulated/mineral,/area/awaymission/wwmines) "gO" = (/obj/item/pickaxe/gold,/turf/simulated/floor/wood,/area/awaymission/wwmines) "gP" = (/obj/machinery/light/small,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"gQ" = (/obj/structure/chair/comfy/beige{dir = 4},/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1";icon_state = "gibdown1"},/turf/simulated/floor/wood,/area/awaymission/wwmines) -"gR" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibup1";icon_state = "gibup1"},/obj/structure/chair/wood/normal,/turf/simulated/floor/plasteel{dir = 8;icon_state = "barber"},/area/awaymission/wwmines) -"gS" = (/turf/simulated/floor/plasteel{dir = 9;icon_state = "warning"},/area/awaymission/wwrefine) -"gT" = (/turf/simulated/floor/plasteel{dir = 5;icon_state = "warning"},/area/awaymission/wwrefine) +"gQ" = (/obj/structure/chair/comfy/beige{dir = 4},/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibdown1"; icon_state = "gibdown1"},/turf/simulated/floor/wood,/area/awaymission/wwmines) +"gR" = (/obj/effect/decal/cleanable/blood/gibs/body{tag = "icon-gibup1"; icon_state = "gibup1"},/obj/structure/chair/wood/normal,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/awaymission/wwmines) "gU" = (/obj/item/hatchet,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"gV" = (/turf/simulated/floor/plasteel{dir = 10;icon_state = "warning"},/area/awaymission/wwrefine) -"gW" = (/turf/simulated/floor/plasteel{dir = 6;icon_state = "warning"},/area/awaymission/wwrefine) -"gX" = (/obj/effect/landmark{name = "wildwest_syndipod"},/turf/simulated/floor/plasteel{dir = 10;icon_state = "warning"},/area/awaymission/wwrefine) -"gY" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"gZ" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"ha" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/grille,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) "hb" = (/obj/machinery/light/spot,/turf/simulated/floor/wood,/area/awaymission/wwmines) "hc" = (/obj/machinery/light/small,/turf/simulated/floor/wood,/area/awaymission/wwgov) -"hd" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (NORTH)";icon_state = "fwindow";dir = 1},/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/grille,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"he" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/grass,/area/awaymission/wwgov) -"hf" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{tag = "icon-fwindow (EAST)";icon_state = "fwindow";dir = 4},/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)";icon_state = "fwindow";dir = 8},/obj/structure/grille,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"hg" = (/obj/effect/decal/cleanable/blood,/obj/effect/forcefield{desc = "You can't get in. Heh.";layer = 1;name = "Blocker"},/turf/simulated/mineral,/area/awaymission/wwmines) -"hh" = (/turf/simulated/shuttle/wall{tag = "icon-swall12";icon_state = "swall12"},/area/awaymission/wwrefine) -"hi" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f6";icon_state = "swall_f6";dir = 2},/area/awaymission/wwrefine) -"hj" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle{tag = "icon-floor2";icon_state = "floor2"},/area/awaymission/wwrefine) +"he" = (/obj/structure/window/reinforced{tag = "icon-fwindow (WEST)"; icon_state = "fwindow"; dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/grass,/area/awaymission/wwgov) +"hg" = (/obj/effect/decal/cleanable/blood,/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/simulated/mineral,/area/awaymission/wwmines) +"hh" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"},/area/awaymission/wwrefine) +"hi" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/awaymission/wwrefine) +"hj" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle{tag = "icon-floor2"; icon_state = "floor2"},/area/awaymission/wwrefine) "hk" = (/obj/effect/decal/cleanable/blood/splatter,/obj/machinery/light/small,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"hl" = (/turf/simulated/shuttle/wall{tag = "icon-swall8";icon_state = "swall8"},/area/awaymission/wwrefine) -"hm" = (/turf/simulated/shuttle/wall{tag = "icon-swall4";icon_state = "swall4"},/area/awaymission/wwrefine) -"hn" = (/turf/space,/turf/simulated/shuttle/wall{dir = 3;icon_state = "swall_f10";layer = 2;tag = "icon-swall_f10"},/area/awaymission/wwrefine) -"ho" = (/obj/structure/chair,/turf/simulated/shuttle{tag = "icon-floor2";icon_state = "floor2"},/area/awaymission/wwrefine) +"hl" = (/turf/simulated/shuttle/wall{tag = "icon-swall8"; icon_state = "swall8"},/area/awaymission/wwrefine) +"hm" = (/turf/simulated/shuttle/wall{tag = "icon-swall4"; icon_state = "swall4"},/area/awaymission/wwrefine) +"hn" = (/turf/space,/turf/simulated/shuttle/wall{dir = 3; icon_state = "swall_f10"; layer = 2; tag = "icon-swall_f10"},/area/awaymission/wwrefine) +"ho" = (/obj/structure/chair,/turf/simulated/shuttle{tag = "icon-floor2"; icon_state = "floor2"},/area/awaymission/wwrefine) "hp" = (/obj/structure/table/wood,/obj/machinery/light/small,/turf/simulated/floor/wood,/area/awaymission/wwmines) -"hq" = (/turf/simulated/shuttle/wall{tag = "icon-swall3";icon_state = "swall3"},/area/awaymission/wwrefine) -"hr" = (/turf/simulated/shuttle{tag = "icon-floor2";icon_state = "floor2"},/area/awaymission/wwrefine) -"hs" = (/turf/simulated/shuttle/wall{tag = "icon-swallc1";icon_state = "swallc1"},/area/awaymission/wwrefine) -"ht" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f5";icon_state = "swall_f5";dir = 2},/area/awaymission/wwrefine) -"hu" = (/obj/effect/mob_spawn/human/miner,/turf/simulated/shuttle{tag = "icon-floor2";icon_state = "floor2"},/area/awaymission/wwrefine) -"hv" = (/turf/simulated/shuttle/wall{tag = "icon-swallc2";icon_state = "swallc2"},/area/awaymission/wwrefine) -"hw" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f9";icon_state = "swall_f9";dir = 2},/area/awaymission/wwrefine) -"hx" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) -"hy" = (/obj/structure/table/reinforced,/obj/item/clothing/suit/space/syndicate/black/orange,/obj/item/clothing/head/helmet/space/syndicate/black/orange,/obj/item/clothing/mask/gas/syndicate,/obj/item/tank/oxygen,/obj/item/clothing/shoes/magboots,/turf/simulated/shuttle{tag = "icon-floor2";icon_state = "floor2"},/area/awaymission/wwrefine) -"hz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow";icon_state = "fwindow"},/turf/simulated/shuttle{tag = "icon-floor2";icon_state = "floor2"},/area/awaymission/wwrefine) +"hq" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"},/area/awaymission/wwrefine) +"hr" = (/turf/simulated/shuttle{tag = "icon-floor2"; icon_state = "floor2"},/area/awaymission/wwrefine) +"hs" = (/turf/simulated/shuttle/wall{tag = "icon-swallc1"; icon_state = "swallc1"},/area/awaymission/wwrefine) +"ht" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/awaymission/wwrefine) +"hu" = (/obj/effect/mob_spawn/human/miner,/turf/simulated/shuttle{tag = "icon-floor2"; icon_state = "floor2"},/area/awaymission/wwrefine) +"hv" = (/turf/simulated/shuttle/wall{tag = "icon-swallc2"; icon_state = "swallc2"},/area/awaymission/wwrefine) +"hw" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/awaymission/wwrefine) +"hy" = (/obj/structure/table/reinforced,/obj/item/clothing/suit/space/syndicate/black/orange,/obj/item/clothing/head/helmet/space/syndicate/black/orange,/obj/item/clothing/mask/gas/syndicate,/obj/item/tank/oxygen,/obj/item/clothing/shoes/magboots,/turf/simulated/shuttle{tag = "icon-floor2"; icon_state = "floor2"},/area/awaymission/wwrefine) +"hz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{tag = "icon-fwindow"; icon_state = "fwindow"},/turf/simulated/shuttle{tag = "icon-floor2"; icon_state = "floor2"},/area/awaymission/wwrefine) "hA" = (/obj/machinery/door/poddoor/multi_tile/four_tile_ver,/turf/simulated/floor/plasteel,/area/awaymission/wwrefine) -"hB" = (/obj/item/paper{info = "The syndicate have invaded. Their ships appeared out of nowhere and now they likely intend to kill us all and take everything. On the off-chance that the Vault may grant us sanctuary, many of us have decided to force our way inside and bolt the door, taking as many provisions with us as we can carry. In case you find this, send for help immediately and open the Vault. Find us inside.";name = "Planer Saul's Journal: Page 8"},/turf/simulated/floor/plating/ironsand{tag = "icon-ironsand1";icon_state = "ironsand1"},/area/awaymission/wwmines) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -591,56 +577,56 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaabpbpbpbpbpaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaabpbpbpaaaaaaaabpbpbpbpbpbpbpbpbpbpaabpaabpbpbpbpaaaaaabpbpbpbpbpbpbpbpbpbpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGaGaQaUbrbabababababaaUaRaXaXaXaXaXbkbhbhbhaXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXaXbhbhbhbhaXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXaXbhbhbhbhaXaXaXaXaXaXaXaXaXaXaXaXaXaRaRaGaGaGaGaGaaaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaabpbxbwbwbwbwbwbwbxbxbxbxbxbwbwbxbxbxbwbxbxbxbxbwbwbwbwbwbxbxbxbxbxaabpaabpbpaaaaaaaaaaaaaaaaaaaaaaaaaaaGaGaGaQaUbababababababaaUaRaXaXaXaXaXbhbhbhbhaXeXbybAbAbEbAbAbAeXbHbzbIbzbBeXaXbhbhbCbhaXeXbDbDbDbJbDbDbDbKbBbBbNbLbFbGbBbObhbhbhbhbPbAbAbQbSbRbAbTeXaXbhbhbhbhaXaXaXaXaXaXaXaXaXaXaXaXaXaRaNaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaabpbUbMbVbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbXbMcaaaaaaabpbpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGaQaUbabababfbababaaUaRaXaXaXaXaXbhbhbhbhaXeXcbccbAbAbAcecdeXbhbhbhbhbheXaXbhbhbhbhaXeXbDbDbDbDbDbDbDbhbhbhbhbhbhbhbhbhbhbhbhbhbhbAbAbAbAbAbAbAeXaXbhbhbhbhaXbgaXaXaXaXaXaXaXaXaXaXaXaRaRaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaabpcjcmclclclclclclclclclcnclclclclclclclclclclcnclclclclclclclclclcocaaaaaaaaabpbpaaaaaaaaaaaaaaaaaaaaaaaaaGaGaQaUbfbababababfbaaUaRaXbdaXaXbtbhbhbhbhaXeXbAbAbAbAbAbAbAeXbhbhbhbhbheXaXbhbkbhbhaXeXbDbDbDbDbDbDbDbBbBbBbBbBbBbBcpbBbYbBbBbBbZbAbAbAbAcqbAbAeXaXbhbhbhbhaXaXaXaXaXaXaXbgaXaXaXaXaXaXaRaNaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaabpcjcuclbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMclcxcaaaaaaaaaaabpbpaaaaaaaaaaaaaaaaaaaaaaaGaGaQaUbababababababaaUaRaXaXaXaXaXbhbhbkbhaXeXcbcccybAbAcecdeXeXeXeXeXcfeXaXbhbnbhbhaXeXcBcgbDbDchcgbDbBcicicicicicicicibhbhbhbhbBbAbAbAbAbAbAcdeXaXbhbhbCbhaXaXaXaXaXaXaXaXaXaXaXaXaXaXaRaNaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaabpcjcuclbMcDcDcDcDcDcDbMckczcFczczckcEczckckcFckczbMcPcNcQcNcRbMclcxcSaaaaaaaaaaaabpcrbpaaaaaaaaaaaaaaaaaaaGaGaQaUbababababababmaUaRaXaXaXaXaXbibhbhbhaXeXbAbAbAbAbAbAbAcfbhbhbhbhbheXaXbhbhbhbhaXeXbDbDbDcsbDbDbDbBbhbhbhbhbhbhbhbhbhbhbhbhbBbAbAbAbAbAbAbAeXaXbhbhbhbhaXaXaXaXaXaXaXaXaXaXaXaRaRaXaRaQaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaabpcjcuclbMckckckczckckbMckctctctctcLctcLckcvcvczckbMcNcNcNcNcNbMcncxcSaaaaaaaaaabpbpbpbpbpbpaaaaaaaaaaaaaaaGaGaQaUbabmbabmbababaaUaRaXaXaXaXaXbhbhbhbhaXeXeXeXeXeXeXeXeXeXbhbhbhbhcYeXaXbhcwbhbhaXeXbDbDbDbDbDbDbDbBbhbhbhbhgPbhbhgPbhbhbhbhbBbAbAbAbAbAbAbAeXaXbhbhbhbhaXaXcZaXaXaXaXaXaXaXaXaRaRaRaRaQaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaabpbpbUcuclbMdccXckckckddbMdecLctctctctctctcAckckckddbMdgcNdhcNdibMclcxcSbpbpaabpbpbpaaaaaabpbpbpbpaaaaaaaaaGaGaGaQaUbababababababaaUaRaXaXaXaXaXbhbhbhbhaXeXdjbhdkbhbhbhdkbhbhbhbhbhbheXaXbhbhbhbhaXeXbBbBbBbBbBbBbBbBbhbhbhdneXdocYeXdobhbhbhbBbBbBdqdrbBbBbBeXaXbkbhbnbhaXaXaXaXaXaXaXaXaXaXaXaXaRaRaRaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaabpaacjcuclbMcGcCckckcIckcJckctctctctcKctctcAckckckckbMcNcNcNcNcNbMcncxcaaacrbpbpaaaaaaaaaaaaaaaabpbpbpaaaaaGaGaGaQaUbfbabababababaaUaRaXaXaXaXaXbhbibhbhaXeXdjbhbheXeXbhbheXeXbhbheXeXeXaXbhbhbhbhaXeXbhcicicicicicibhbhbhbhbhdkbhbhdkbhbhbhbhbhcicicicicicibheXaXbhbhbhbhaXaXaXaXaXaXaXaXbdaXaXaXaXaXaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaabpaacjdsclbMdtcXckckckckbMckctctctctctctctcMckckckckcJcNcNcNcNcNbMclducaaabpaaaaaaaaaaaaaaaaaaaaaaaabpaaaGaGaGaGaQaUbabfbacObababaaUaRaXbjaXaXbgbhbhbhbhaXeXdjbCbhdjeXbhbheXbhbhbhbhbheXaXbhbhbhbhaXeXbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbheXaXbhbhbhbhaXaXaXbgaXaXaXaXaXaXaXaXaXaXaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaabpaabUbMclbMckckckckckckbMckctctdwctctctctcMckckckckbMcNdxdzdycNbMclbMcaaabpaaaaaaaaaaaaaaaaaaaaaaaaaGaGaGaGaGaGaQaUbababababababaaUaRaXaXaXaXaXbhbhbhbhaXeXdjbhbhdjeXbhbheXdEbhbhbhdFeXaXbhbhbhbkaXeXcVbBcWbhcVbBcWbhcVbBcWbhcVbBcWbhcVbBcWbhcVbBcWbhcVbBcWbheXaXbhbhbhbhaXaXaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacrbpbUdGclbMdeckcIckczddbMdectctctctctctctcMckckckddbMdIcNdJcNdibMcldKcaaabpbpaaaaaaaaaaaaaaaaaaaGaGaGaGaGaGaGaQaQaUbababababfbabaaUaRaXaXaXaXaXbhbhbkbhaXeXdjbhgPdjeXbhbheXcTbhbhbhcUeXaXbkbhbhbhaXeXbhhbbhbhbhbhhbbhbhbhbhhbbhbhbhbhhbbhbhbhbhhbbhbhbhbhhbbheXaXbhbhbhbhaXaXaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaabpbpaacjcuclbMckckckckckczbMckcLctcHctctctctckckckckckbMcNcNcNcNcNbMclcxcabpbpbpbpaaaaaaaaaaaaaaaaaGaGaGaGaGaGaQaQaUaUbabababababadbaUaRaXaXaXaXaXbhbhbhbhaXeXeXeXeXeXeXcfcfeXeXdLdLeXeXeXaXbhbhbvbhaXeXeXeXeXdLdLdLeXeXeXeXeXeXeXdMdNeXeXeXeXeXeXeXdLdLdLeXeXeXeXaXcwbhbkbhaXaXaXbjaXaXaXaXaXaXaXaXaXaRaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaabpaaaadfcuclbMckdPczckckckbMckckhcckckckhccIckckhcckckbMdQdQdSdRdRbMclcxcSbpaaaabpbpbpbpaaaaaaaGaGaGaGaGaGaGaGaQaUaUbfbmbabababmbabaaUaRaXaXaXaXaXbhbhbhbhaXaXaXaXaXaXdUdVaXdUaXaXaXaXaXaXaXbhbhbhbhaXaXaXaXdUaXaXaXdUaXaXaXaXaXdUbgdVdUaXaXaXaXaXdUaXaXaXdUaXaXaXaXbhbhbhbhaXaXaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaabpaaaadfcuclbMbMbMbMbMbMbMbMbMbMbMcJcJbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMclcxcSaaaaaaaaaaaabpbpbpaGaQaQaQaQaQaQaQaQaQaUaZbabababababababfaUaRaXaXaXaXaXbhbhbibhbhbhbhbhbhbhbhdlbkbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhdmbhbhbhbhbhdlbhbhbhbkbhbhbhbhbhbhbhbhbhbhbhbvbhbhbhaXaXaXaXdWaXaXaXaXaXaXaXaXaRaRaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaabpaaaadfcuclclclclclclcldXclclcldYclcldYclclclclclclclclclclclclclcldXcxcSbpaaaaaaaaaaaaaaaGaGaQaUaUaUaUaUaUaUaUaUbabababababfbaaUaUaUaRaXaXaXaXaXbhbhdabhbhbhbhbhbhbhbhdlbhbhbhbhbhbhbhbhbhbhbhbhcwbhbhbhbhbhbhbhbhbhbhbhbibhbhbhbhdlbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhaXaXaXaXaXaXaXbgaXaXaXaXaXaRaRaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaabpaaaadfcucldXclclclclclclclclclclcldZclclclclclcldXclclcleaclclclclclcxcabpaaaaaaaaaaaaaaaGaGaQaUaZbabmbababfbabababababababmbaaUaNaRaRaXaXaXaXaXbibhbhbhbhbhbhbhbhbhbhbhbhbhbhbibhbhbhbhbhbhbhbhbhbhbhbhbhbkbhbhbhbhbhbhbhbhbhbhbhdlbhbhbhbhbvbhbhcwbhbkbhbhbhbhbhbhbhbkbhaXaXaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaabpaaaadfcuclclclbMbMbMclclclclclclclcnclclclclclcldZcleaclclclclcnclclcxcabpaaaaaaaaaaaaaGaGaGaQaUbababababababababmbababfbaaUaUaUaRaRaXaXbdaXaXaXbqbhbhbhbhbhbhbnbhbhbhbhbhbhbhdlbhbkbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhdlbhbhbhbhbhbhbhbhbhbhbhbhbhbhbnbhbhbhbhaXaXaXaXebaXaXebaXaXaXaXaXaRaRaGaGaaaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaabpaaaadfcuclclclbMecbMclclcleaclclclclclclclclclclclclclclclcledclclclcxcabpbpaaaaaaaaaaaGaGaGaQaUbabfbababablbabababababaaUaUaNaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXebdVaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXbhbhdabheXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXdLdLeXeXeXeXeXaRaRaNaGaGaGaGaaaaaaaaaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaabpbpaadfcueaclclbMeebMclclclclclclclclclclclclclclclcldXclcleaclclcnclcxcabpbpbpaaaaaGaGaGaGaGaQaUbabababababababababfbabaaUaNaNaRaRaXaXaXaXaXaXaXbdaXaXaXaXaXaXeXeXeXeXeXeXeXeXcfeXeXeXeXeXeXeXaXaXeXeXeXeXeXeXeXeXeXeXeXeXeXaXbvbhbhbheXbhbhbhdkbhbhdkbibhbheXdvefdvdvdvbhdveXbhbhdkbhbhbhdkbhbheXaRaNaNaGaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaabpbpdfdsclclclclcldYclclclclclclclclclclclegclclclclclclclclclclclclducabpaabpbpbpaGaGaGaGaGaQaUbmbabababfbabababaaUaUaUaUaNaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXbAehbAbAehbAeXbheXeibAbAbAbAeXaXaXeXbheldkelbhelbheldkelbheXaXbhbhbhbheXbhbDembDdAdBbDbDbDbhdCbhbhbhbhbhbhbheXdDcwenbhbvbheteobhdHaRaNaNaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaabpdfbMeuevevevevevevevevevevexeweweuevevevevevevevevevevevevevevexbMcabpaaaabpaGaGaGaGaGaGaQaUbababababababmbabaaUaNaNaNaRaRaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXeybAbAeCbAeDeXbheXeEbAbAbAbAeXaXaXeXbhbhbhbhbhbhbhbhbhbhbheXaXbkbhbhbheXbhbDdOeGeFeKeIdTbDbheXbhbhbhbheobhbheXbBbhenbhbhbhetbhbheXaRaNaNaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaabpbpaaeLeLeLeLeLeLeLeLeLeLeLeMeOeNeQePeLeLeLeLeLeLeMeLeLeLeLeLeLeMeLeLbpcraaaabpbpbpaGaQaQaQaQaUbbbbaUaUaUaUbabmaUaUaNaNaRaRaXaXaXaXbgaXaXaXaXaXeSaXaXbgaXaXaXeXeybEeTbAbAeDeXcYeXeVbAeTbAbAeXaXaXeXbhelbhelbhelbheWbhelbheXaXbhbhbhbheXdobDeYeFbDbDeFeZemcYeXdvbhbhbhbhbhbheXdDbhenbhbhcwetbhbhdHaRaNaNaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaabpbpaaaaaaaaaaaaaaaaaabpbpbpbpdffdffcaaaaaaaaaaaaabpbpbpbpbpbpbpbpbpbpbpbpbpaaaaaacraQaQejejejejekekejejejaUaUaUaUaNaNaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXeybAbAfgbAeDeXbheXeEbAbAbEbAeXaXaXeXdobhbibhbhbhbhbhbhbhcYeXaXbhbhbhbheXbhbDdOeIbDbDeIdTfhbheXdvdvfibhbhhkbhdCbhbhbheobhbhetbhbheXaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaabpbpbpaaaaaaaaaaaabpbpaaaaaadffjfkcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpbpbpbpbpejejejekeqekekekekekejejejejaNaNaRaRaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXeyflbAbAfleDeXbheXeibAbAbAbAeXaXaXeXbhbhbhbhbhbCbhbhbhbhbhcfaXbhbhbnbheXbhbDeYeKbDbDeKeZbDbheXeXeXeXeXeXeXeXeXbhesesesesbhetbhbhdHaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpbpbpbpbpbpbpbpaaaaaaaadfeNfqcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaejekekekekekekekekekekekekejaNaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXbgaXaXaXaXeXeXeXbAbAeXeXeXcfeXeXbAbAeXeXeXbdaXeXbhfrbhelbhelbhfsbhelbheXfubhbhbhbheXfvbDdOeFbDbDfwfxbDcYeXbHfzbHbHbHfzbHeXbhdDhpbBdDbhgPbhbheXaRaNaNaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadffdfAcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaezekekekekekekekekekekekekejaNaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXbhbhbhbhbhbhbhbhbhbhbhbhbhbheXdVaXeXdobhbhbhbhbhbhbhbhbhcYeXaXbhdabhbheXbhbDeYeIeFeGeKeZdpbheXbhbhbhbhbhbhbheXeXeXeXeXeXeBeXeXeXeXaRaNaNaGaGaGaGaaaaaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadffCeQcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafFfEfHfGekekekekekekekekekekekekejaNaNaRaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXbhbheHbheXeXeXeXeXeXbhbhbhbheXdVbdeXbhelbhfsbhelbhelbhelbheXaXbhbhbhbheXbhbDbDbDfLeJfMbDbDbhdCbhcwbhbhbvbhbhdCaLfQfUfRfXfXgafZaLeXaRaNaNaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfeNgbcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeRekekeRekekekekekekekekekekekekejaNaNaNaRaXaXaXaXbgaXaXaXaXaXaXaNaNaXaXaXaXaXaXeXdobhbhbhbhgcgcgcgcbhbhbhbhcYeXdVaXeXbhbhbhbhbhbhbhbhbhbhbheXaXbhbhbhbheXbhbhbhgPbhbhgPbhbhbheXbhbhbhbhbhbhbheXaLaLaLgdfhgeaLaLaLeXaRaNaNaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadffjeQcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafFfEfEgfekekekekekekekekekekekekejaNaNaNaRaXaXaXaXaXaXaXaXaXaXaXaNaNaNaXaXaXaXaXeXbhbhbhgPdabibhbhbhbhgPbhbhbheXdVaXeXbhbhgPbhbhbhbhbhgPbhbheXaXbhbhbhbheXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXaLaLggaLaLgeaLaLgheXaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfeNffcaaaaaaaaaaaaaaaaaaaaaaabpbpaaaaaaaaaaaaaaaaaaaagiekekekekekekekekekekekekejaNaNaNaRaXaXaXaXaXaXaXaXbtaXaXaXaNaNaNaXaXaXaXeXfaeXfaeXfaeXfaeXeXfaeXfaeXfbeXaXbgfceXeXeXeBeXeXeXeXeXeXeXeXaXbhbhcwbhglfebhdkbBbhbheXbhbhdkbhbheXbhbhdkbhbheXgmaLgnaLgmaLgnaLaLeXaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaabxbxbxbxbxbxbxbxbxbxbxbxbxbxgoewewgpbxbxbxbxbxbxaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaagqekekekekekekekekekekekekejaNaNaRaRaXaXaXaXaXaXaXaXaXaXaXaXaXaNaNaNaXaXaXeXeXeXeXeXeXeXeXeXeXeXfceXeXeXeXaXaXgraXbdaXaXaXaXgsaXbdaXaXaXaXbhbhbhcYeXgtbhbhbBfmbheXbhfnbBfmbheXbhfobBfpbheXaLaLaLguaLaLaLguaLeXaRaNaNaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjgxgvgvgvgvgvgvgvgvgvgvgvgvgvgvftftgvgvgvgvgvgvgygAbpbpbpbpbpaaaaaaaaaaaaaaaaaaaaaaejekekekekekekekekekekekekejaNaRaRaVaXaXaXaXaXaXaXaXaXaXaXaXaXaXaNaNaNaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeSbdgBfceXeXeXeXeXeBeXeXeXeXeXeXaXbvbhbheAcfbhbhbhbBbhbheXbhbhgCbhbCeXbvbhbhbhbheXdLdLdLeXdCeXaLgDaLeXaRaNaNaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftftftfBgAbpbpbpbpaaaaaaaaaaaaaaaaaaaaaaaagFekekekekekekekekekekekekejaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaNaNaXaXaXaXaXaXeXeXeXeXeXeXeXeXeXeXeXeXfcdVeXfDbhbhbhbhdkbhbhbhbhbheXaXbhgGbhbhcfbhbhbhbBfmcYeXbhfnbBfmbveXbhfobBfpbheXbhbhbhbhbhdLaLaLgheXaRaNaNaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftgHgHgIgJfIfIbpbpbpaaaaaaaaaaaaaaaaaaaaaagiekekekekekekeUekekekekekejaNaRaXaXaXaXaXaXaXaXaXaXaVaXaNaNaNaNaNaNaNaXaXaXaXaXaXeXfJepbhbhbhdkbhbhbhbhbheXdVeBbhbhbhbhdacwbhbhbhbhbhdMaXbhbvbhcYeXgtbvbhbBbhbheXdobhbBbhcYeXdocwgKbhcYeXeXeXeXbhbhdLaLgLaLeXaRaNaNaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftfNftfNfIfIfIbpbpaaaaaaaaaaaaaaaaaaaaaaaagqekekekekekekekekekekekekejaNaRaXaXaXaXaXaXaNaNaNaNaNaNaNaNaNaNaNaNaNaXaXaXaXaXaXeXbhbBbhbhbvbhfObhbveobheXgseXbhbheobhbhbhbhbhbhcwbheXfubhfPbhbheXfebhbhbBbhbheXbhfnbBfmbheXbhfobBfpbheXgMbheXfvbhdLaLaLaLeXaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjgEftftfSftftftftftftftftftftftftftftftftftgvgvfTgJfIbpbpaaaaaaaaaaaaaaaaaaaaaaaaaaekekekgwekekgwekekgwekekgwejaRaRaXaXaXaXaRaRaRaRaRaRaRaRaRaRaRaRaRgNaRaRaXaXaXaXaXeXbhbhbhbhbhgzfVdabhfWbhcfaXeXdobhbhbhbhbhgObhbhbhcYeXdWbhbhbhbheBgQbhbhbBfmcYeXbhbhbhbhbheXbhbhbhbhbheXfYbhcfbhbhdLaLgRaLeXaRaNaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftftftfBgAbpbpaaaaaaaaaaaaaaaaaaaaaaaaaaaaekekgSgTekgSgTekgSgTekgSgTejaRaVaXaXaRaRaRaRaXaXaXaXaXaXaXaXdWaXaXaXaRaRaRaXaXaXaXeXdodabhbhbhbhbhbhgUbhcYeBfueXbhbhbhbhbhbhdabhbheobheBaXbhbhbhbheXfebhbhbBbhbheXeXeXcfeXeBeXeXeXcfeXeXeXeXeBeXbhbhdLaLaLgheXaRaNaNaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftftftfBcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaekekgVgWekgXgWekgVgWekgXgWejaRaRaRaRaRaRaXaXaXaXaXaXaXaXaXaXaXaXaXeSaXaRaRaRaXaXaXeXbhbhbvbhbnbhbhdabhbhbheXbdeXbhbhcwbhbhbhbibhbhbhbheXaXaXaXaXaXeXdobhcwbBbBbheXbhbhbvbhbhcwbhbhbhbhbhbhbhbhbhbvbheXaLgLaLeXaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaabpcjclcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcncaaaaaaaaabpbpaaaaaaaaaaaaaaaaaaaaaaaaaGaGaQaUbfbababababfbaaUaRaXbdaXaXbtbhbhbhbhaXeXbAbAbAbAbAbAbAeXbhbhbhbhbheXaXbhbkbhbhaXeXbDbDbDbDbDbDbDbBbBbBbBbBbBbBcpbBbYbBbBbBbZbAbAbAbAcqbAbAeXaXbhbhbhbhaXaXaXaXaXaXaXbgaXaXaXaXaXaXaRaNaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaabpcjcocmbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMcmcucaaaaaaaaaaabpbpaaaaaaaaaaaaaaaaaaaaaaaGaGaQaUbababababababaaUaRaXaXaXaXaXbhbhbkbhaXeXcbcccybAbAcecdeXeXeXeXeXcfeXaXbhbnbhbhaXeXcBcgbDbDchcgbDbBcicicicicicicicibhbhbhbhbBbAbAbAbAbAbAcdeXaXbhbhbCbhaXaXaXaXaXaXaXaXaXaXaXaXaXaXaRaNaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaabpcjcocmbMcDcDcDcDcDcDbMckczcFczczckcEczckckcFckczbMcPcNcQcNcRbMcmcucSaaaaaaaaaaaabpcrbpaaaaaaaaaaaaaaaaaaaGaGaQaUbababababababmaUaRaXaXaXaXaXbibhbhbhaXeXbAbAbAbAbAbAbAcfbhbhbhbhbheXaXbhbhbhbhaXeXbDbDbDcsbDbDbDbBbhbhbhbhbhbhbhbhbhbhbhbhbBbAbAbAbAbAbAbAeXaXbhbhbhbhaXaXaXaXaXaXaXaXaXaXaXaRaRaXaRaQaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaabpcjcocmbMckckckczckckbMckctctctctcLctcLckcvcvczckbMcNcNcNcNcNbMcmcucSaaaaaaaaaabpbpbpbpbpbpaaaaaaaaaaaaaaaGaGaQaUbabmbabmbababaaUaRaXaXaXaXaXbhbhbhbhaXeXeXeXeXeXeXeXeXeXbhbhbhbhcYeXaXbhcwbhbhaXeXbDbDbDbDbDbDbDbBbhbhbhbhgPbhbhgPbhbhbhbhbBbAbAbAbAbAbAbAeXaXbhbhbhbhaXaXcxaXaXaXaXaXaXaXaXaRaRaRaRaQaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabpbpbUcocmbMdccXckckckddbMdecLctctctctctctcAckckckddbMdgcNdhcNdibMcmcucSbpbpaabpbpbpaaaaaabpbpbpbpaaaaaaaaaGaGaGaQaUbababababababaaUaRaXaXaXaXaXbhbhbhbhaXeXdjbhdkbhbhbhdkbhbhbhbhbhbheXaXbhbhbhbhaXeXbBbBbBbBbBbBbBbBbhbhbhdneXdocYeXdobhbhbhbBbBbBdqdrbBbBbBeXaXbkbhbnbhaXaXaXaXaXaXaXaXaXaXaXaXaRaRaRaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabpaacjcocmbMcGcCckckcIckcJckctctctctcKctctcAckckckckbMcNcNcNcNcNbMcmcucaaacrbpbpaaaaaaaaaaaaaaaabpbpbpaaaaaGaGaGaQaUbfbabababababaaUaRaXaXaXaXaXbhbibhbhaXeXdjbhbheXeXbhbheXeXbhbheXeXeXaXbhbhbhbhaXeXbhcicicicicicibhbhbhbhbhdkbhbhdkbhbhbhbhbhcicicicicicibheXaXbhbhbhbhaXaXaXaXaXaXaXaXbdaXaXaXaXaXaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabpaacjcZcmbMdtcXckckckckbMckctctctctctctctcMckckckckcJcNcNcNcNcNbMcmdscaaabpaaaaaaaaaaaaaaaaaaaaaaaabpaaaGaGaGaGaQaUbabfbacObababaaUaRaXbjaXaXbgbhbhbhbhaXeXdjbCbhdjeXbhbheXbhbhbhbhbheXaXbhbhbhbhaXeXbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbheXaXbhbhbhbhaXaXaXbgaXaXaXaXaXaXaXaXaXaXaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabpaabUbMcmbMckckckckckckbMckctctdwctctctctcMckckckckbMcNdxdzdycNbMcmbMcaaabpaaaaaaaaaaaaaaaaaaaaaaaaaGaGaGaGaGaGaQaUbababababababaaUaRaXaXaXaXaXbhbhbhbhaXeXdjbhbhdjeXbhbheXdEbhbhbhdFeXaXbhbhbhbkaXeXcVbBcWbhcVbBcWbhcVbBcWbhcVbBcWbhcVbBcWbhcVbBcWbhcVbBcWbheXaXbhbhbhbhaXaXaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacrbpbUducmbMdeckcIckczddbMdectctctctctctctcMckckckddbMdIcNdJcNdibMcmdGcaaabpbpaaaaaaaaaaaaaaaaaaaGaGaGaGaGaGaGaQaQaUbababababfbabaaUaRaXaXaXaXaXbhbhbkbhaXeXdjbhgPdjeXbhbheXcTbhbhbhcUeXaXbkbhbhbhaXeXbhhbbhbhbhbhhbbhbhbhbhhbbhbhbhbhhbbhbhbhbhhbbhbhbhbhhbbheXaXbhbhbhbhaXaXaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabpbpaacjcocmbMckckckckckczbMckcLctcHctctctctckckckckckbMcNcNcNcNcNbMcmcucabpbpbpbpaaaaaaaaaaaaaaaaaGaGaGaGaGaGaQaQaUaUbabababababadbaUaRaXaXaXaXaXbhbhbhbhaXeXeXeXeXeXeXcfcfeXeXdLdLeXeXeXaXbhbhbvbhaXeXeXeXeXdLdLdLeXeXeXeXeXeXeXdMdNeXeXeXeXeXeXeXdLdLdLeXeXeXeXaXcwbhbkbhaXaXaXbjaXaXaXaXaXaXaXaXaXaRaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabpaaaadfcocmbMckdPczckckckbMckckhcckckckhccIckckhcckckbMdQdQdSdRdRbMcmcucSbpaaaabpbpbpbpaaaaaaaGaGaGaGaGaGaGaGaQaUaUbfbmbabababmbabaaUaRaXaXaXaXaXbhbhbhbhaXaXaXaXaXaXdKdUaXdKaXaXaXaXaXaXaXbhbhbhbhaXaXaXaXdKaXaXaXdKaXaXaXaXaXdKbgdUdKaXaXaXaXaXdKaXaXaXdKaXaXaXaXbhbhbhbhaXaXaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabpaaaadfcocmbMbMbMbMbMbMbMbMbMbMbMcJcJbMbMbMbMbMbMbMbMbMbMbMbMbMbMbMcmcucSaaaaaaaaaaaabpbpbpaGaQaQaQaQaQaQaQaQaQaUaZbabababababababfaUaRaXaXaXaXaXbhbhbibhbhbhbhbhbhbhbhdlbkbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhdmbhbhbhbhbhdlbhbhbhbkbhbhbhbhbhbhbhbhbhbhbhbvbhbhbhaXaXaXaXdVaXaXaXaXaXaXaXaXaRaRaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabpaaaadfcocmcmcmcmcmcmcmcmcmcmcmdWcmcmdWcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcucSbpaaaaaaaaaaaaaaaGaGaQaUaUaUaUaUaUaUaUaUbabababababfbaaUaUaUaRaXaXaXaXaXbhbhdabhbhbhbhbhbhbhbhdlbhbhbhbhbhbhbhbhbhbhbhbhcwbhbhbhbhbhbhbhbhbhbhbhbibhbhbhbhdlbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhaXaXaXaXaXaXaXbgaXaXaXaXaXaRaRaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabpaaaadfcocmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcucabpaaaaaaaaaaaaaaaGaGaQaUaZbabmbababfbabababababababmbaaUaNaRaRaXaXaXaXaXbibhbhbhbhbhbhbhbhbhbhbhbhbhbhbibhbhbhbhbhbhbhbhbhbhbhbhbhbkbhbhbhbhbhbhbhbhbhbhbhdlbhbhbhbhbvbhbhcwbhbkbhbhbhbhbhbhbhbkbhaXaXaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabpaaaadfcocmcmcmbMbMbMcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcucabpaaaaaaaaaaaaaGaGaGaQaUbababababababababmbababfbaaUaUaUaRaRaXaXbdaXaXaXbqbhbhbhbhbhbhbnbhbhbhbhbhbhbhdlbhbkbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhbhdlbhbhbhbhbhbhbhbhbhbhbhbhbhbhbnbhbhbhbhaXaXaXaXdXaXaXdXaXaXaXaXaXaRaRaGaGaaaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabpaaaadfcocmcmcmbMecbMcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcucabpbpaaaaaaaaaaaGaGaGaQaUbabfbababablbabababababaaUaUaNaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXdXdUaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXbhbhdabheXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXdLdLeXeXeXeXeXaRaRaNaGaGaGaGaaaaaaaaaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabpbpaadfcocmcmcmbMdYbMcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcucabpbpbpaaaaaGaGaGaGaGaQaUbabababababababababfbabaaUaNaNaRaRaXaXaXaXaXaXaXbdaXaXaXaXaXaXeXeXeXeXeXeXeXeXcfeXeXeXeXeXeXeXaXaXeXeXeXeXeXeXeXeXeXeXeXeXeXaXbvbhbhbheXbhbhbhdkbhbhdkbibhbheXdvefdvdvdvbhdveXbhbhdkbhbhbhdkbhbheXaRaNaNaGaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabpbpdfcZcmcmcmcmcmdWcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmdscabpaabpbpbpaGaGaGaGaGaQaUbmbabababfbabababaaUaUaUaUaNaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXbAehbAbAehbAeXbheXeibAbAbAbAeXaXaXeXbheldkelbhelbheldkelbheXaXbhbhbhbheXbhbDembDdAdBbDbDbDbhdCbhbhbhbhbhbhbheXdDcwenbhbvbheteobhdHaRaNaNaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaabpdfbMdZeaeaeaeaeaeaeaeaeaeaebededdZeaeaeaeaeaeaeaeaeaeaeaeaeaeaebbMcabpaaaabpaGaGaGaGaGaGaQaUbababababababmbabaaUaNaNaNaRaRaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXeybAbAeCbAeDeXbheXeEbAbAbAbAeXaXaXeXbhbhbhbhbhbhbhbhbhbhbheXaXbkbhbhbheXbhbDdOeGeFeKeIdTbDbheXbhbhbhbheobhbheXbBbhenbhbhbhetbhbheXaRaNaNaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabpbpaaeLeLeLeLeLeLeLeLeLeLeLeMeOeeegePeLeLeLeLeLeLeMeLeLeLeLeLeLeMeLeLbpcraaaabpbpbpaGaQaQaQaQaUbbbbaUaUaUaUbabmaUaUaNaNaRaRaXaXaXaXbgaXaXaXaXaXeraXaXbgaXaXaXeXeybEeTbAbAeDeXcYeXeVbAeTbAbAeXaXaXeXbhelbhelbhelbheWbhelbheXaXbhbhbhbheXdobDeYeFbDbDeFeZemcYeXdvbhbhbhbhbhbheXdDbhenbhbhcwetbhbhdHaRaNaNaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabpbpaaaaaaaaaaaaaaaaaabpbpbpbpdfeeegcaaaaaaaaaaaaabpbpbpbpbpbpbpbpbpbpbpbpbpaaaaaacraQaQejejejejekekejejejaUaUaUaUaNaNaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXeybAbAfgbAeDeXbheXeEbAbAbEbAeXaXaXeXdobhbibhbhbhbhbhbhbhcYeXaXbhbhbhbheXbhbDdOeIbDbDeIdTfhbheXdvdvfibhbhhkbhdCbhbhbheobhbhetbhbheXaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaabpbpbpaaaaaaaaaaaabpbpaaaaaadfeeegcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpbpbpbpbpejejejekeqekekekekekejejejejaNaNaRaRaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXeyflbAbAfleDeXbheXeibAbAbAbAeXaXaXeXbhbhbhbhbhbCbhbhbhbhbhcfaXbhbhbnbheXbhbDeYeKbDbDeKeZbDbheXeXeXeXeXeXeXeXeXbhesesesesbhetbhbhdHaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpbpbpbpbpbpbpbpaaaaaaaadfeeegcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaejekekekekekekekekekekekekejaNaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXbgaXaXaXaXeXeXeXbAbAeXeXeXcfeXeXbAbAeXeXeXbdaXeXbhfrbhelbhelbhfsbhelbheXeubhbhbhbheXfvbDdOeFbDbDfwfxbDcYeXbHfzbHbHbHfzbHeXbhdDhpbBdDbhgPbhbheXaRaNaNaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfeeegcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaezekekekekekekekekekekekekejaNaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXbhbhbhbhbhbhbhbhbhbhbhbhbhbheXdUaXeXdobhbhbhbhbhbhbhbhbhcYeXaXbhdabhbheXbhbDeYeIeFeGeKeZdpbheXbhbhbhbhbhbhbheXeXeXeXeXeXeBeXeXeXeXaRaNaNaGaGaGaGaaaaaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfeeegcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaevewexeNekekekekekekekekekekekekejaNaNaRaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXeXbhbheHbheXeXeXeXeXeXbhbhbhbheXdUbdeXbhelbhfsbhelbhelbhelbheXaXbhbhbhbheXbhbDbDbDfLeJfMbDbDbhdCbhcwbhbhbvbhbhdCaLfQfUfRfXfXgafZaLeXaRaNaNaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfeeegcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeRekekeRekekekekekekekekekekekekejaNaNaNaRaXaXaXaXbgaXaXaXaXaXaXaNaNaXaXaXaXaXaXeXdobhbhbhbhgcgcgcgcbhbhbhbhcYeXdUaXeXbhbhbhbhbhbhbhbhbhbhbheXaXbhbhbhbheXbhbhbhgPbhbhgPbhbhbheXbhbhbhbhbhbhbheXaLaLaLgdfhgeaLaLaLeXaRaNaNaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfeeegcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeveweweQekekekekekekekekekekekekejaNaNaNaRaXaXaXaXaXaXaXaXaXaXaXaNaNaNaXaXaXaXaXeXbhbhbhgPdabibhbhbhbhgPbhbhbheXdUaXeXbhbhgPbhbhbhbhbhgPbhbheXaXbhbhbhbheXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXaLaLggaLaLgeaLaLgheXaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfeeegcaaaaaaaaaaaaaaaaaaaaaaabpbpaaaaaaaaaaaaaaaaaaaaeSekekekekekekekekekekekekejaNaNaNaRaXaXaXaXaXaXaXaXbtaXaXaXaNaNaNaXaXaXaXeXfaeXfaeXfaeXfaeXeXfaeXfaeXfbeXaXbgfceXeXeXeBeXeXeXeXeXeXeXeXaXbhbhcwbhglfebhdkbBbhbheXbhbhdkbhbheXbhbhdkbhbheXgmaLgnaLgmaLgnaLaLeXaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaabxbxbxbxbxbxbxbxbxbxbxbxbxbxgoededgpbxbxbxbxbxbxaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaafdekekekekekekekekekekekekejaNaNaRaRaXaXaXaXaXaXaXaXaXaXaXaXaXaNaNaNaXaXaXeXeXeXeXeXeXeXeXeXeXeXfceXeXeXeXaXaXffaXbdaXaXaXaXfjaXbdaXaXaXaXbhbhbhcYeXgtbhbhbBfmbheXbhfnbBfmbheXbhfobBfpbheXaLaLaLguaLaLaLguaLeXaRaNaNaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjgxgvgvgvgvgvgvgvgvgvgvgvgvgvgvftftgvgvgvgvgvgvgygAbpbpbpbpbpaaaaaaaaaaaaaaaaaaaaaaejekekekekekekekekekekekekejaNaRaRaVaXaXaXaXaXaXaXaXaXaXaXaXaXaXaNaNaNaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXerbdfkfceXeXeXeXeXeBeXeXeXeXeXeXaXbvbhbheAcfbhbhbhbBbhbheXbhbhgCbhbCeXbvbhbhbhbheXdLdLdLeXdCeXaLgDaLeXaRaNaNaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftftftfBgAbpbpbpbpaaaaaaaaaaaaaaaaaaaaaaaafqekekekekekekekekekekekekejaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaNaNaXaXaXaXaXaXeXeXeXeXeXeXeXeXeXeXeXeXfcdUeXfDbhbhbhbhdkbhbhbhbhbheXaXbhgGbhbhcfbhbhbhbBfmcYeXbhfnbBfmbveXbhfobBfpbheXbhbhbhbhbhdLaLaLgheXaRaNaNaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftgHgHgIgJfIfIbpbpbpaaaaaaaaaaaaaaaaaaaaaaeSekekekekekekeUekekekekekejaNaRaXaXaXaXaXaXaXaXaXaXaVaXaNaNaNaNaNaNaNaXaXaXaXaXaXeXfJepbhbhbhdkbhbhbhbhbheXdUeBbhbhbhbhdacwbhbhbhbhbhdMaXbhbvbhcYeXgtbvbhbBbhbheXdobhbBbhcYeXdocwgKbhcYeXeXeXeXbhbhdLaLgLaLeXaRaNaNaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftfNftfNfIfIfIbpbpaaaaaaaaaaaaaaaaaaaaaaaafdekekekekekekekekekekekekejaNaRaXaXaXaXaXaXaNaNaNaNaNaNaNaNaNaNaNaNaNaXaXaXaXaXaXeXbhbBbhbhbvbhfObhbveobheXfjeXbhbheobhbhbhbhbhbhcwbheXeubhfPbhbheXfebhbhbBbhbheXbhfnbBfmbheXbhfobBfpbheXgMbheXfvbhdLaLaLaLeXaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjgEftftfSftftftftftftftftftftftftftftftftftgvgvfTgJfIbpbpaaaaaaaaaaaaaaaaaaaaaaaaaaekekekgwekekgwekekgwekekgwejaRaRaXaXaXaXaRaRaRaRaRaRaRaRaRaRaRaRaRgNaRaRaXaXaXaXaXeXbhbhbhbhbhgzfVdabhfWbhcfaXeXdobhbhbhbhbhgObhbhbhcYeXdVbhbhbhbheBgQbhbhbBfmcYeXbhbhbhbhbheXbhbhbhbhbheXfYbhcfbhbhdLaLgRaLeXaRaNaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftftftfBgAbpbpaaaaaaaaaaaaaaaaaaaaaaaaaaaaekekfufAekfufAekfufAekfufAejaRaVaXaXaRaRaRaRaXaXaXaXaXaXaXaXdVaXaXaXaRaRaRaXaXaXaXeXdodabhbhbhbhbhbhgUbhcYeBeueXbhbhbhbhbhbhdabhbheobheBaXbhbhbhbheXfebhbhbBbhbheXeXeXcfeXeBeXeXeXcfeXeXeXeXeBeXbhbhdLaLaLgheXaRaNaNaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftftftfBcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaekekfCfEekfFfEekfCfEekfFfEejaRaRaRaRaRaRaXaXaXaXaXaXaXaXaXaXaXaXaXeraXaRaRaRaXaXaXeXbhbhbvbhbnbhbhdabhbhbheXbdeXbhbhcwbhbhbhbibhbhbhbheXaXaXaXaXaXeXdobhcwbBbBbheXbhbhbvbhbhcwbhbhbhbhbhbhbhbhbhbvbheXaLgLaLeXaRaNaNaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftftftfBcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahAekekekekekekekekekekekekejaGaNaNaRaRaXaXaXaXaXaRaRaRgNaXaXaXaXaXaXaXaXaXaRaRaXaXeXbhbhbhbhbhbhbhbheobhbheXaXeXbhbhbhgPbhbhgPbhbhbhbhfcaXbgaXaXaXeXbhbhgPbhbhcwcfbhbhgPbheobhbhbhgPbhbhfPcwbhgPbhbheXaLaLaLeXaRaNaNaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftfyftftftftftftftftftfBcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaejgYfEgfeRhagZezgYfEhdejejejaGaNaNaRaXaXaXaXaXaXaRaRaRaRaRaRaRaXaXaXeSaXaXaXaRaRaReXeXeXeXeXfcaXeXeXeXeXeXeXaXeXeXeXeXeBdLdLeXeXeXeXeXeXaXaXaXaXaXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXaRaNaNaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftftftfBcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagiekgiaaaaaaaaaaaGaGaGaGaNaRaRaXaXaXaXaXaXaXaXaXaXaRaRaRaRaRaRaXaXaXaXaXgNaRaRaXaXaXaXaXaXfceXeXaXaXaXaXaXaXaXaXdUaXaXdUaXaXaXaXaXaXaXaXaXaXaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaNaNaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftfSftftftftftftftftftftftftftftfBcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagiekgiaaaaaaaaaGaGaGaGaGaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXgNaRaRaRaXaXaXeSaXaXaRaXaXeSaXaRaRaRaRaRaRaRaRaXaXaRaRaRaRaRaXaXaRaRaXaXaRaXaXaXaXaRaRaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaGaGaGaGaGaGaGaGaaaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaacjhegjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgkcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahfeRhfaaaaaaaaaGaGaGaGaNaNaRaRaRaRaRaRaXaXaXaXaXaXaXaXaXaXaRaRaRaRaRaXaXaXaXhgaXbdaXaXgNaNaNaNaNaNaNaRaRaRaRaNaNaNaRaRaRaRaRaRaRaRaXaRaRaRaRaRaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaGaGaGaGaGaGaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahihhhlhjhmhhhnaaaaaaaGaGaGaNaNaNaRaRaRaRaRaRgNaRaRaXaXaXaXaXaXaXaXaRaRaRaRaXaXbdeSaXaXaXaXaRaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaNaNaNaNaRaRaRaGaGaGaNaNaNaNaNaNaNaNaNaNaNaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqhohohrhohohqaaaaaaaGaGaGaNaNaRaRaXaXaXaXaRaRaNaRaRaXaXaXaXaXaXaXaXaRaNaRaRaXaXaXeSaXhgaRaRaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaaaGaGaGaaaaaaaaaGaGaGaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftfyftftftftftftftftftfBcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaejfGeweQeRfHfKezfGewgbejejejaGaNaNaRaXaXaXaXaXaXaRaRaRaRaRaRaRaXaXaXeraXaXaXaRaRaReXeXeXeXeXfcaXeXeXeXeXeXeXaXeXeXeXeXeBdLdLeXeXeXeXeXeXaXaXaXaXaXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXeXaRaNaNaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftftftftftftftftftftftftftftftftfBcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeSekeSaaaaaaaaaaaGaGaGaGaNaRaRaXaXaXaXaXaXaXaXaXaXaRaRaRaRaRaRaXaXaXaXaXgNaRaRaXaXaXaXaXaXfceXeXaXaXaXaXaXaXaXaXdKaXaXdKaXaXaXaXaXaXaXaXaXaXaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaNaNaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjgEftftftftftftftfSftftftftftftftftftftftftftftfBcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeSekeSaaaaaaaaaGaGaGaGaGaNaRaXaXaXaXaXaXaXaXaXaXaXaXaXaXgNaRaRaRaXaXaXeraXaXaRaXaXeraXaRaRaRaRaRaRaRaRaXaXaRaRaRaRaRaXaXaRaRaXaXaRaXaXaXaXaRaRaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaGaGaGaGaGaGaGaGaaaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaacjhegjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgkcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagfeRgfaaaaaaaaaGaGaGaGaNaNaRaRaRaRaRaRaXaXaXaXaXaXaXaXaXaXaRaRaRaRaRaXaXaXaXhgaXbdaXaXgNaNaNaNaNaNaNaRaRaRaRaNaNaNaRaRaRaRaRaRaRaRaXaRaRaRaRaRaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaGaGaGaGaGaGaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLeLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahihhhlhjhmhhhnaaaaaaaGaGaGaNaNaNaRaRaRaRaRaRgNaRaRaXaXaXaXaXaXaXaXaRaRaRaRaXaXbderaXaXaXaXaRaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaNaNaNaNaRaRaRaGaGaGaNaNaNaNaNaNaNaNaNaNaNaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqhohohrhohohqaaaaaaaGaGaGaNaNaRaRaXaXaXaXaRaRaNaRaRaXaXaXaXaXaXaXaXaRaNaRaRaXaXaXeraXhgaRaRaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaaaGaGaGaaaaaaaaaGaGaGaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqhohohrhohohqaaaaaaaaaGaGaGaRaRaXaXaXaXaXaXaRaRaNaRaRaRaXaXaXaXaXaXaRaRaRaRaRaXbdaXaXaRaGaaaaaaaaaGaGaGaGaGaaaGaaaaaaaGaGaGaGaaaGaGaGaGaGaGaGaaaaaaaGaGaGaGaGaGaGaGaGaGaGaGaaaaaaaGaaaaaaaaaaaaaaaaaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqhohohrhohohqaaaaaaaaaGaGaGaRaXaXaXaXaXaXaXaXaRaRaRaNaRaRaXaXaXaXaXaXaXaXaRaRaRhgaXaXaRaGaaaaaaaaaaaGaGaGaaaaaaaaaaaaaaaGaGaaaaaaaGaGaGaaaaaaaaaaaaaGaGaGaGaGaaaaaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGaaaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthshuhrhrhvhwaaaaaaaGaGaGaRaRaXaXaXaXaXaXaXaXaXaXaRaRaRaRaRaXaXaXaXaXaXaXaXaXaRaRaXaXaRaGaaaaaaaaaaaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqhrhrhrhqaaaaaaaaaGaGaGaRaXaXaXaXaXaXaXaXaXaXaXaRgNaXaXaRaRaRaRaRaRgNaRaXaXaRaRaRaRaRaGaaaaaaaaaaaaaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqhrhohrhqaaaaaaaaaGaGaGaRaXaXaXaXaXaXaXhxhxaXaXaXaRaXaXaXaRaRaRaRaRaRaRaRaXaXaRaNaNaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqhyhyhyhqaaaaaaaaaGaGaGaRaXaRaRaXaXaXaXhxhxaXaXaXaXaXaXaXaXaXaXaXaXaXaRaRaXaXgNaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthhhzhhhwaaaaaaaaaGaGaGaRaRaRaXaXaXaXaXhxhxaXaXaXaXaXhBaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqhrhohrhqaaaaaaaaaGaGaGaRaXaXaXaXaXaXaXgigiaXaXaXaRaXaXaXaRaRaRaRaRaRaRaRaXaXaRaNaNaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqhyhyhyhqaaaaaaaaaGaGaGaRaXaRaRaXaXaXaXgigiaXaXaXaXaXaXaXaXaXaXaXaXaXaRaRaXaXgNaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthhhzhhhwaaaaaaaaaGaGaGaRaRaRaXaXaXaXaXgigiaXaXaXaXaXgqaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGaGaNaNaNaRaRaRaRaRaRaRaRaRaRgNaRaRaRaXaXaXaXaXaXaXaXaXaXaXaXaRaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGaGaGaGaGaGaGaGaGaNaNaNaNaNaGaGaGaGaGaRaRaRaRaRgNaRaRaRaRaRaRaRaRaNaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index 72abcbc1ce4..02f9af5480d 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -100,7 +100,7 @@ "abV" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "abW" = (/obj/structure/table,/obj/machinery/door_control{id = "syndieshutters"; name = "remote shutter control"; req_access_txt = "150"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "abX" = (/obj/machinery/computer/shuttle/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) -"abY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/sink/kitchen{desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; name = "old sink"; pixel_y = 28},/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"abY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/sink/kitchen{desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; name = "old sink"; pixel_y = 28},/obj/machinery/hologram/holopad,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "abZ" = (/obj/structure/computerframe,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "aca" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/apple,/obj/item/seeds/apple,/obj/item/seeds/apple,/turf/simulated/floor/grass,/area/security/permabrig) "acb" = (/obj/item/soap/nanotrasen,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/permabrig) @@ -109,8 +109,8 @@ "ace" = (/obj/structure/chair/comfy/black{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "acf" = (/obj/machinery/light/spot{tag = "icon-tube1 (EAST)"; icon_state = "tube1"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "acg" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/corn,/obj/item/seeds/corn,/obj/item/seeds/corn,/obj/item/radio/intercom/locked/prison{pixel_x = 0; pixel_y = 25},/turf/simulated/floor/grass,/area/security/permabrig) -"ach" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aci" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"ach" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aci" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "acj" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/wheat/rice,/obj/item/seeds/wheat/rice,/obj/item/seeds/wheat/rice,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/grass,/area/security/permabrig) "ack" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 10},/obj/item/multitool,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "acl" = (/obj/machinery/light/spot,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) @@ -121,56 +121,56 @@ "acq" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/shuttle/syndicate) "acr" = (/obj/machinery/door/window{dir = 2; name = "Cockpit"; req_access_txt = "150"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "acs" = (/turf/space,/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/shuttle/syndicate) -"act" = (/obj/machinery/atmospherics/unary/outlet_injector/on,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"act" = (/obj/machinery/atmospherics/unary/outlet_injector/on,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "acu" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/permabrig) -"acv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"acw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"acx" = (/obj/machinery/biogenerator,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"acv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"acw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"acx" = (/obj/machinery/biogenerator,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "acy" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/permabrig) "acz" = (/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/crowbar/red,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "acA" = (/obj/structure/table,/obj/item/storage/box/zipties,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) -"acB" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/camera{c_tag = "Prison Garden"; dir = 4; network = list("SS13")},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"acC" = (/obj/item/reagent_containers/glass/bucket,/obj/item/reagent_containers/glass/bucket,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"acD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"acE" = (/obj/machinery/seed_extractor,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"acB" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/camera{c_tag = "Prison Garden"; dir = 4; network = list("SS13")},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"acC" = (/obj/item/reagent_containers/glass/bucket,/obj/item/reagent_containers/glass/bucket,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"acD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"acE" = (/obj/machinery/seed_extractor,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "acF" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 4; icon_state = "shower"; pixel_x = 5; tag = "icon-shower (EAST)"},/obj/item/bikehorn/rubberducky,/obj/item/radio/intercom/locked/prison{pixel_x = 0; pixel_y = 25},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/permabrig) "acG" = (/obj/structure/sink/kitchen{desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; name = "old sink"; pixel_y = 28},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/permabrig) "acH" = (/obj/structure/mirror{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/permabrig) "acI" = (/obj/structure/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "acJ" = (/obj/structure/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) -"acK" = (/obj/machinery/portable_atmospherics/scrubber/huge/stationary,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"acL" = (/obj/structure/table/glass,/obj/structure/table/glass,/obj/item/reagent_containers/glass/bottle/nutrient/ez,/obj/item/reagent_containers/glass/bottle/nutrient/ez,/obj/item/reagent_containers/glass/bottle/nutrient/ez,/obj/item/reagent_containers/spray/pestspray,/obj/item/reagent_containers/spray/pestspray,/obj/item/reagent_containers/spray/pestspray,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"acM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"acN" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/structure/table/glass,/obj/item/cultivator,/obj/item/plant_analyzer,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"acK" = (/obj/machinery/portable_atmospherics/scrubber/huge/stationary,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"acL" = (/obj/structure/table/glass,/obj/structure/table/glass,/obj/item/reagent_containers/glass/bottle/nutrient/ez,/obj/item/reagent_containers/glass/bottle/nutrient/ez,/obj/item/reagent_containers/glass/bottle/nutrient/ez,/obj/item/reagent_containers/spray/pestspray,/obj/item/reagent_containers/spray/pestspray,/obj/item/reagent_containers/spray/pestspray,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"acM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"acN" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/structure/table/glass,/obj/item/cultivator,/obj/item/plant_analyzer,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "acO" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/permabrig) "acP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/permabrig) -"acQ" = (/obj/machinery/door/airlock{name = "Bathroom"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"acQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/public/glass{name = "Prison Garden"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "acR" = (/obj/machinery/door/airlock{name = "Toilet"; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/permabrig) "acS" = (/obj/structure/toilet{dir = 8},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/permabrig) "acT" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/shuttle/syndicate) "acU" = (/obj/machinery/porta_turret/syndicate,/turf/simulated/shuttle/wall{dir = 4; icon_state = "wall3"},/area/shuttle/syndicate) "acV" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/wall,/area/security/permabrig) "acW" = (/turf/simulated/wall,/area/security/permabrig) -"acX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/public/glass{name = "Prison Garden"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"acY" = (/obj/machinery/door/airlock/public/glass{name = "Prison Garden"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"acX" = (/obj/machinery/door/airlock/public/glass{name = "Prison Garden"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"acY" = (/obj/machinery/door/airlock{name = "Bathroom"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "acZ" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/security/permabrig) "ada" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/security/permabrig) -"adb" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adc" = (/obj/structure/table,/obj/item/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/pen,/obj/item/radio/intercom/locked/prison{pixel_x = 0; pixel_y = 25},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"adb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/item/twohanded/required/kirbyplants,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adc" = (/obj/machinery/computer/arcade,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "add" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/security/permabrig) "ade" = (/obj/structure/closet/syndicate/suits,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "adf" = (/obj/effect/landmark{name = "Syndicate-Uplink"; tag = ""},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) -"adg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/item/twohanded/required/kirbyplants,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adh" = (/obj/machinery/computer/arcade,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adj" = (/obj/machinery/alarm{pixel_y = 23},/obj/structure/table,/obj/machinery/kitchen_machine/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adk" = (/obj/machinery/newscaster{pixel_y = 32},/obj/structure/table,/obj/item/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adl" = (/obj/structure/chair/stool,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adm" = (/obj/machinery/portable_atmospherics/scrubber/huge/stationary,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adn" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; layer = 2.4; on = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"adg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adh" = (/obj/machinery/alarm{pixel_y = 23},/obj/structure/table,/obj/machinery/kitchen_machine/microwave{pixel_x = -3; pixel_y = 6},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adi" = (/obj/machinery/newscaster{pixel_y = 32},/obj/structure/table,/obj/item/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adj" = (/obj/structure/chair/stool,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adk" = (/obj/machinery/portable_atmospherics/scrubber/huge/stationary,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adl" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adm" = (/obj/structure/table,/obj/item/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/pen,/obj/item/radio/intercom/locked/prison{pixel_x = 0; pixel_y = 25},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adn" = (/obj/machinery/computer/library/public,/obj/structure/table,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "ado" = (/turf/simulated/floor/plasteel,/area/security/permabrig) -"adp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adq" = (/obj/machinery/computer/library/public,/obj/structure/table,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"adp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/chair/stool,/obj/item/radio/intercom/locked/prison{pixel_x = -25; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adq" = (/obj/machinery/atmospherics/unary/outlet_injector/on{dir = 4; frequency = 1443; id = "air_in"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "adr" = (/obj/machinery/light_switch{pixel_y = 25},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/security/permabrig) "ads" = (/obj/machinery/washing_machine,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/security/permabrig) "adt" = (/turf/simulated/floor/holofloor{dir = 9; icon_state = "red"},/area/security/permabrig) @@ -183,16 +183,16 @@ "adA" = (/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/shuttle/wall{icon_state = "wall3"},/area/shuttle/syndicate) "adB" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "synd_outer"; locked = 0; name = "Ship External Access"; req_access = null; req_access_txt = "150"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "smindicate"; name = "Outer Airlock"; opacity = 0},/obj/machinery/door_control{id = "smindicate"; name = "External Door Control"; pixel_x = -26; pixel_y = -2; req_access_txt = "150"},/obj/docking_port/mobile{dheight = 9; dir = 2; dwidth = 5; height = 22; id = "syndicate"; name = "syndicate infiltrator"; roundstart_move = "syndicate_away"; width = 18},/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 22; id = "syndicate_nw"; name = "northwest of station"; width = 18},/turf/simulated/shuttle/plating,/area/shuttle/syndicate) "adC" = (/turf/space,/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/shuttle/syndicate) -"adD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/chair/stool,/obj/item/radio/intercom/locked/prison{pixel_x = -25; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adE" = (/obj/machinery/atmospherics/unary/outlet_injector/on{dir = 4; frequency = 1443; id = "air_in"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adF" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adH" = (/obj/structure/chair/stool,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adI" = (/obj/structure/table,/obj/item/dice/d20,/obj/item/instrument/harmonica,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adJ" = (/obj/machinery/atmospherics/unary/outlet_injector/on,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/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/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"adD" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adF" = (/obj/structure/chair/stool,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adG" = (/obj/structure/table,/obj/item/dice/d20,/obj/item/instrument/harmonica,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adH" = (/obj/machinery/atmospherics/unary/outlet_injector/on,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adI" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; layer = 2.4; on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adK" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/obj/machinery/gameboard,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adL" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "adN" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/security/permabrig) "adO" = (/obj/structure/table,/obj/structure/bedsheetbin,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/security/permabrig) "adP" = (/turf/simulated/floor/holofloor{dir = 8; icon_state = "red"},/area/security/permabrig) @@ -203,25 +203,25 @@ "adU" = (/obj/machinery/light/spot{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "adV" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 2; frequency = 1331; id_tag = "synd_pump"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "adW" = (/obj/machinery/atmospherics/unary/tank/air{dir = 2},/turf/simulated/shuttle/wall{dir = 4; icon_state = "wall3"},/area/shuttle/syndicate) -"adX" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/obj/machinery/gameboard,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adY" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"adZ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aea" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aec" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aed" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aee" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aef" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; initialize_directions = 10; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"adX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"adZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aea" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/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/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeb" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aec" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aed" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aee" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aef" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; initialize_directions = 10; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "aeh" = (/obj/structure/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/security/permabrig) "aei" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/wall,/area/security/permabrig) "aej" = (/obj/machinery/light{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/holofloor{dir = 8; icon_state = "red"},/area/security/permabrig) "aek" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; layer = 2.4; on = 1},/turf/simulated/floor/holofloor{dir = 1; icon_state = "red"},/area/security/permabrig) -"ael" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; initialize_directions = 10; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"ael" = (/obj/machinery/camera{c_tag = "Prison West"; dir = 1; network = list("SS13")},/obj/machinery/light,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "aem" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/holofloor{dir = 1; icon_state = "red"},/area/security/permabrig) -"aen" = (/obj/machinery/camera{c_tag = "Prison West"; dir = 1; network = list("SS13")},/obj/machinery/light,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"aen" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; initialize_directions = 10; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "aeo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/holofloor{dir = 1; icon_state = "red"},/area/security/permabrig) -"aep" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"aep" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "aeq" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/security/permabrig) "aer" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/holofloor{dir = 4; icon_state = "red"},/area/security/permabrig) "aes" = (/obj/machinery/door/window{dir = 4; name = "Equipment Room"; req_access_txt = "150"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) @@ -230,19 +230,19 @@ "aev" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "aew" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1331; id_tag = "synd_airlock"; pixel_x = 25; req_access_txt = "150"; tag_airpump = "synd_pump"; tag_chamber_sensor = "synd_sensor"; tag_exterior_door = "synd_outer"; tag_interior_door = "synd_inner"},/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "synd_sensor"; pixel_x = 25; pixel_y = 12; req_access_txt = "150"},/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "aex" = (/obj/docking_port/stationary{dir = 2; dwidth = 2; height = 18; id = "skipjack_nw"; name = "northwest of SS13"; width = 19},/turf/space,/area/space) -"aey" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aez" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeA" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeC" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeD" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/item/twohanded/required/kirbyplants,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeE" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/light,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeF" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeG" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeH" = (/obj/machinery/camera{c_tag = "Prison East"; dir = 1; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeI" = (/obj/machinery/door/airlock/public/glass{name = "Prison Basketball Court"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"aey" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aez" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeA" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/item/twohanded/required/kirbyplants,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeB" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/light,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeC" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeD" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeE" = (/obj/machinery/camera{c_tag = "Prison East"; dir = 1; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeF" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeG" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeH" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeI" = (/obj/machinery/door/airlock/public/glass{name = "Prison Basketball Court"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "aeJ" = (/obj/machinery/atmospherics/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "co2_in"; pixel_y = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; initialize_directions = 10; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/holofloor{dir = 8; icon_state = "red"},/area/security/permabrig) -"aeK" = (/obj/machinery/vending/sustenance,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"aeK" = (/obj/machinery/vending/sustenance,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "aeL" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/holofloor,/area/security/permabrig) "aeM" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/security/permabrig) "aeN" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/holofloor,/area/security/permabrig) @@ -253,33 +253,33 @@ "aeS" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate/black/red,/obj/item/clothing/head/helmet/space/syndicate/black/red,/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1331; id_tag = "synd_pump"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "aeT" = (/obj/machinery/camera{c_tag = "Prison Basketball Court"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/holofloor{dir = 8; icon_state = "red"},/area/security/permabrig) "aeU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel,/area/security/permabrig) -"aeV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeX" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"aeY" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Lockdown 1"; name = "Prison Lockdown Door"; opacity = 0},/obj/machinery/door/airlock/public/glass{name = "Cell Door"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"aeV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeX" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"aeY" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Lockdown 1"; name = "Prison Lockdown Door"; opacity = 0},/obj/machinery/door/airlock/public/glass{name = "Cell Door"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "aeZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel,/area/security/permabrig) -"afa" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Lockdown 2"; name = "Prison Lockdown Door"; opacity = 0},/obj/machinery/door/airlock/public/glass{name = "Cell Door"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"afb" = (/obj/machinery/flasher{id = "permaflash1"; pixel_x = 28; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"afc" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Lockdown 3"; name = "Prison Lockdown Door"; opacity = 0},/obj/machinery/door/airlock/public/glass{name = "Cell Door"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"afd" = (/obj/machinery/flasher{id = "permaflash2"; pixel_x = 28; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"afe" = (/obj/machinery/flasher{id = "permaflash3"; pixel_x = 28; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"afa" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Lockdown 2"; name = "Prison Lockdown Door"; opacity = 0},/obj/machinery/door/airlock/public/glass{name = "Cell Door"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"afb" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Lockdown 3"; name = "Prison Lockdown Door"; opacity = 0},/obj/machinery/door/airlock/public/glass{name = "Cell Door"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"afc" = (/obj/machinery/vending/sustenance,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"afd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"afe" = (/obj/machinery/flasher{id = "permaflash1"; pixel_x = 28; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "aff" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/structure/cable,/turf/simulated/floor/plating,/area/security/permabrig) "afg" = (/obj/item/radio/intercom/syndicate{pixel_x = -28},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) -"afh" = (/obj/machinery/vending/sustenance,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"afi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"afh" = (/obj/machinery/flasher{id = "permaflash2"; pixel_x = 28; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"afi" = (/obj/machinery/flasher{id = "permaflash3"; pixel_x = 28; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "afj" = (/obj/item/clothing/mask/gas/clown_hat,/turf/simulated/floor/plating/airless,/area/space) "afk" = (/turf/simulated/floor/holofloor{dir = 2; icon_state = "red"},/area/security/permabrig) "afl" = (/turf/simulated/floor/holofloor{dir = 10; icon_state = "red"},/area/security/permabrig) "afm" = (/obj/structure/grille,/obj/structure/sign/securearea{pixel_x = -30},/turf/simulated/floor/plating/airless,/area/space) -"afn" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/security/glass{name = "Prison 1"; req_access_txt = "2"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"afo" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/security/glass{name = "Prison 2"; req_access_txt = "2"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"afp" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/security/glass{name = "Prison 3"; req_access_txt = "2"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"afn" = (/obj/machinery/light/small{dir = 8},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"afo" = (/obj/structure/bed,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"afp" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/security/glass{name = "Prison 1"; req_access_txt = "2"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "afq" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "Brig Secure Armory Exterior East"; dir = 4; network = list("SS13")},/turf/space,/area/security/permabrig) "afr" = (/obj/machinery/camera{c_tag = "Brig Secure Armory Exterior North"; dir = 2; network = list("SS13")},/obj/structure/lattice,/turf/space,/area/security/permabrig) "afs" = (/obj/machinery/door_control{id = "Prison Lockdown 1"; name = "Cell 1 Lockdown"; pixel_x = -3; pixel_y = 24; range = 5; req_access_txt = "2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; layer = 2.4; on = 1},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/permabrig) "aft" = (/obj/machinery/door_control{id = "Prison Lockdown 2"; name = "Cell 2 Lockdown"; pixel_x = -3; pixel_y = 24; range = 5; req_access_txt = "2"},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/permabrig) "afu" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "south bump Important Area"; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/permabrig) -"afv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"afv" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/security/glass{name = "Prison 2"; req_access_txt = "2"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "afw" = (/obj/machinery/flasher_button{id = "permaflash1"; pixel_x = 0; pixel_y = -27},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/permabrig) "afx" = (/turf/simulated/floor/holofloor{dir = 6; icon_state = "red"},/area/security/permabrig) "afy" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 22; id = "syndicate_ne"; name = "northeast of station"; width = 18},/turf/space,/area/space) @@ -296,8 +296,8 @@ "afJ" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/plating,/area/security/permabrig) "afK" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/security/glass{name = "Prison Wing"; req_access_txt = "2"},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/permabrig) "afL" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/security/glass{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/permabrig) -"afM" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"afN" = (/obj/structure/bed,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"afM" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/security/glass{name = "Prison 3"; req_access_txt = "2"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) +"afN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "afO" = (/turf/simulated/floor/plating/airless,/area/space) "afP" = (/obj/machinery/door/window{dir = 4; name = "Infirmary"; req_access_txt = "150"},/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) "afQ" = (/obj/machinery/door/window/westright{name = "Tool Storage"; req_access_txt = "150"},/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) @@ -323,10 +323,10 @@ "agk" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent{filled = 0.2},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 9},/area/security/permabrig) "agl" = (/obj/machinery/computer/area_atmos/area,/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/permabrig) "agm" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/structure/chair{dir = 1},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/permabrig) -"agn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"agn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "ago" = (/obj/machinery/camera{c_tag = "Prison Air Control"; dir = 6; network = list("Prison","SS13")},/obj/machinery/portable_atmospherics/scrubber/huge/stationary,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/permabrig) "agp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/light_switch{pixel_y = 25},/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/permabrig) -"agq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"agq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "agr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/permabrig) "ags" = (/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/permabrig) "agt" = (/turf/simulated/wall/r_wall,/area/security/armoury) @@ -352,7 +352,7 @@ "agN" = (/obj/machinery/atmospherics/binary/valve{dir = 4},/obj/machinery/light,/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/permabrig) "agO" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/visible{dir = 9},/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/permabrig) "agP" = (/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/permabrig) -"agQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"agQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/permabrig) "agR" = (/obj/structure/rack,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/item/storage/box/buck{pixel_x = -3; pixel_y = 3},/obj/item/storage/box/buck,/obj/item/storage/box/buck{pixel_x = 3; pixel_y = -3},/turf/simulated/floor/plasteel{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/securearmoury) "agS" = (/obj/structure/rack,/obj/item/gun/projectile/shotgun/riot{pixel_x = -3; pixel_y = 3},/obj/item/gun/projectile/shotgun/riot,/obj/item/gun/projectile/shotgun/riot{pixel_x = 3; pixel_y = -3},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/simulated/floor/plasteel{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/securearmoury) "agT" = (/turf/simulated/wall,/area/security/vacantoffice{name = "\improper Security Toilet"}) @@ -434,11 +434,11 @@ "air" = (/obj/effect/decal/warning_stripes/west,/obj/effect/decal/warning_stripes/east,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) "ais" = (/obj/machinery/door/airlock{name = "Toilet"; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) "ait" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/permabrig) -"aiu" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) +"aiu" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/security/permabrig) "aiv" = (/turf/simulated/wall/r_wall,/area/security/securearmoury) "aiw" = (/obj/machinery/power/apc{cell_type = 5000; dir = 8; name = "west bump Important Area"; pixel_x = -24; shock_proof = 0},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/camera{c_tag = "Brig Armory"; dir = 4; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 1},/area/security/armoury) "aix" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel,/area/security/armoury) -"aiy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/armoury) +"aiy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/armoury) "aiz" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 4},/area/security/armoury) "aiA" = (/obj/effect/decal/warning_stripes/east,/obj/effect/decal/warning_stripes/west,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/camera/motion{c_tag = "Secure Armory"; dir = 4; network = list("SS13")},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) "aiB" = (/obj/structure/rack,/obj/structure/window/reinforced{dir = 8},/obj/item/clothing/suit/armor/laserproof{pixel_x = 0; pixel_y = 0},/obj/item/gun/energy/ionrifle,/turf/simulated/floor/plasteel{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/securearmoury) @@ -473,11 +473,11 @@ "aje" = (/obj/item/skeleton/r_arm,/turf/simulated/shuttle/floor4/vox,/area/shuttle/vox) "ajf" = (/obj/structure/bed,/turf/simulated/floor/plasteel{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) "ajg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/permabrig) -"ajh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/armoury) -"aji" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/armoury) +"ajh" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/armoury) +"aji" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/permabrig) "ajj" = (/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) "ajk" = (/obj/vehicle/secway,/obj/item/key/security,/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 4},/area/security/armoury) -"ajl" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/armoury) +"ajl" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/armoury) "ajm" = (/obj/structure/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/hardsuit/security,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/hardsuit/security,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/securearmoury) "ajn" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/security/armoury) "ajo" = (/obj/effect/decal/warning_stripes/east,/obj/effect/decal/warning_stripes/west,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) @@ -527,8 +527,8 @@ "akg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) "akh" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) "aki" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/permabrig) -"akj" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/permabrig) -"akk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/armoury) +"akj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/armoury) +"akk" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/armoury) "akl" = (/obj/machinery/door/airlock/security{name = "Warden's office"; req_access = null; req_access_txt = "3"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/armoury) "akm" = (/obj/effect/decal/warning_stripes/northwestcorner,/obj/effect/decal/warning_stripes/northeastcorner,/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) "akn" = (/obj/machinery/space_heater,/obj/machinery/light_switch{pixel_x = -25},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/security/podbay) @@ -567,7 +567,7 @@ "akU" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/security/glass{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/permabrig) "akV" = (/obj/structure/chair{dir = 8},/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) "akW" = (/turf/simulated/wall,/area/security/range) -"akX" = (/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/range) +"akX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/armoury) "akY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) "akZ" = (/turf/simulated/wall/r_wall,/area/security/prisonlockers) "ala" = (/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) @@ -599,7 +599,7 @@ "alA" = (/obj/item/clothing/head/bearpelt,/obj/item/xenos_claw,/turf/simulated/shuttle/floor4/vox,/area/shuttle/vox) "alB" = (/turf/simulated/floor/plasteel,/area/security/range) "alC" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/security/hos) -"alD" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/range) +"alD" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) "alE" = (/obj/structure/closet/secure_closet/brig,/turf/simulated/floor/plasteel,/area/security/prisonlockers) "alF" = (/obj/structure/chair{dir = 8},/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor/plasteel,/area/security/main) "alG" = (/obj/machinery/vending/cigarette,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plasteel,/area/security/main) @@ -636,7 +636,7 @@ "aml" = (/obj/item/stack/spacecash/c50,/obj/structure/chair{dir = 8},/turf/simulated/shuttle/floor4/vox,/area/shuttle/vox) "amm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 10},/area/security/main) "amn" = (/obj/structure/table/reinforced,/obj/item/folder/red{pixel_y = 3},/obj/item/book/manual/sop_legal,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plasteel,/area/security/main) -"amo" = (/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/range) +"amo" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) "amp" = (/obj/structure/chair{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/camera{c_tag = "Brig Briefing Room East"; dir = 8; network = list("SS13")},/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor/plasteel,/area/security/main) "amq" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/security/main) "amr" = (/obj/structure/chair/comfy/black{dir = 4},/obj/effect/landmark/start{name = "Head of Security"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "redfull"; tag = "icon-redfull (NORTHWEST)"},/area/security/main) @@ -668,7 +668,7 @@ "amR" = (/obj/machinery/computer/security{network = list("SS13","Research Outpost","Mining Outpost")},/obj/machinery/camera{c_tag = "Brig Pod Pilot's Office"; dir = 8; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/podbay) "amS" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/carpet,/area/security/hos) "amT" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command/glass{name = "Head of Security"; req_access_txt = "58"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) -"amU" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"amU" = (/turf/space,/obj/structure/cable,/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) "amV" = (/obj/structure/sign/nosmoking_2,/turf/simulated/wall/r_wall,/area/security/podbay) "amW" = (/obj/structure/lattice,/obj/structure/grille,/turf/space,/area/space) "amX" = (/obj/structure/table/wood,/turf/simulated/floor/carpet,/area/security/hos) @@ -687,7 +687,7 @@ "ank" = (/obj/structure/closet/secure_closet/brig,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor/plasteel,/area/security/prisonlockers) "anl" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/security/prisonlockers) "anm" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/permabrig) -"ann" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/armoury) +"ann" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) "ano" = (/obj/machinery/sleeper{dir = 2; icon_state = "sleeper"; tag = "icon-sleeper (NORTH)"},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/security/medbay) "anp" = (/obj/structure/closet/secure_closet/brigdoc,/obj/item/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/security/medbay) "anq" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/bed/roller,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/security/medbay) @@ -706,7 +706,7 @@ "anD" = (/obj/structure/table/reinforced,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/door/window/brigdoor{dir = 8; name = "Warden's Desk"; req_access_txt = "3"},/turf/simulated/floor/plasteel,/area/security/warden) "anE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel{dir = 4; icon_state = "darkred"},/area/security/warden) "anF" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/security/seceqstorage) -"anG" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"anG" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) "anH" = (/turf/simulated/wall/r_wall,/area/security/main) "anI" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel,/area/security/seceqstorage) "anJ" = (/turf/simulated/floor/plasteel,/area/security/seceqstorage) @@ -762,7 +762,7 @@ "aoH" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel,/area/security/main) "aoI" = (/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/plasteel,/area/security/main) "aoJ" = (/turf/simulated/floor/plasteel,/area/security/main) -"aoK" = (/turf/space,/obj/structure/cable,/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"aoK" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) "aoL" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security/glass{name = "Security Office"; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/security/main) "aoM" = (/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/plasteel{icon_state = "redcorner"; dir = 4},/area/security/main) "aoN" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 1},/area/security/main) @@ -791,7 +791,7 @@ "apk" = (/obj/machinery/computer/security{network = list("SS13","Research Outpost","Mining Outpost")},/turf/simulated/floor/plasteel{dir = 6; icon_state = "darkred"},/area/security/warden) "apl" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/security/seceqstorage) "apm" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/turf/simulated/floor/plating,/area/security/main) -"apn" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"apn" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) "apo" = (/obj/structure/grille/broken,/turf/space,/area/space) "app" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/simulated/floor/plasteel/airless{icon_state = "solarpanel"},/area/solar/auxstarboard) "apq" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/simulated/floor/plasteel/airless{icon_state = "solarpanel"},/area/solar/auxstarboard) @@ -802,7 +802,7 @@ "apv" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f10"; dir = 2},/area/shuttle/trade/sol) "apw" = (/obj/structure/window/full/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/trade/sol) "apx" = (/obj/structure/grille,/obj/structure/shuttle/window,/turf/simulated/shuttle/plating,/area/shuttle/trade/sol) -"apy" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) +"apy" = (/obj/effect/decal/warning_stripes/northwest,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/range) "apz" = (/obj/structure/table/reinforced,/obj/machinery/magnetic_controller{autolink = 1; name = "Firing Range Control Console"; path = "w;e;e;w;s;n;n;s"; pixel_x = 0; pixel_y = 0},/turf/simulated/floor/plasteel,/area/security/range) "apA" = (/obj/machinery/vending/wallmed1{dir = 2; name = "Emergency NanoMed"; pixel_x = -27; pixel_y = 0; req_access_txt = "0"},/obj/structure/table/reinforced,/obj/item/stack/medical/bruise_pack/advanced,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/light{dir = 8},/obj/machinery/camera{c_tag = "Brig Security Equipment South"; dir = 4; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 10},/area/security/seceqstorage) "apB" = (/obj/structure/rack,/obj/item/reagent_containers/spray/pepper{pixel_x = -2; pixel_y = -2},/obj/item/reagent_containers/spray/pepper{pixel_x = -4; pixel_y = -4},/obj/item/reagent_containers/spray/pepper{pixel_y = -4},/obj/effect/decal/warning_stripes/red/hollow,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/seceqstorage) @@ -833,7 +833,7 @@ "aqa" = (/obj/effect/decal/warning_stripes/north,/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/security/podbay) "aqb" = (/obj/effect/decal/warning_stripes/north,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel,/area/security/podbay) "aqc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{tag = "icon-stage_stairs"; icon_state = "stage_stairs"},/area/security/podbay) -"aqd" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"aqd" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/range) "aqe" = (/obj/structure/grille,/obj/structure/sign/securearea,/turf/simulated/floor/plating/airless,/area/security/podbay) "aqf" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "burst_l"},/turf/space,/area/shuttle/trade/sol) "aqg" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/shuttle/wall{icon_state = "swall3"; dir = 2},/area/shuttle/trade/sol) @@ -843,7 +843,7 @@ "aqk" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/shuttle/floor,/area/shuttle/trade/sol) "aql" = (/obj/structure/closet/crate,/turf/simulated/shuttle/floor,/area/shuttle/trade/sol) "aqm" = (/obj/structure/chair,/turf/simulated/shuttle/floor,/area/shuttle/trade/sol) -"aqn" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) +"aqn" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/range) "aqo" = (/obj/structure/shuttle/window,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/trade/sol) "aqp" = (/obj/structure/lattice,/obj/structure/grille{density = 0; icon_state = "brokengrille"},/turf/space,/area/space) "aqq" = (/obj/machinery/door/airlock/security{name = "Execution Room"; req_access = null; req_access_txt = "1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) @@ -882,9 +882,9 @@ "aqX" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "darkredcorners"},/area/security/brig) "aqY" = (/obj/machinery/alarm{pixel_y = 23},/obj/machinery/camera{c_tag = "Brig Main Hall West"; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 1; icon_state = "darkredcorners"},/area/security/brig) "aqZ" = (/turf/space,/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) -"ara" = (/turf/space,/obj/structure/cable,/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) -"arb" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) -"arc" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) +"ara" = (/obj/effect/decal/warning_stripes/west,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/range) +"arb" = (/turf/space,/obj/structure/cable,/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) +"arc" = (/obj/effect/decal/warning_stripes/southwest,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/range) "ard" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion"},/turf/space,/area/shuttle/trade/sol) "are" = (/obj/machinery/door/airlock/external{frequency = 1450; icon_state = "door_locked"; id_tag = "trade_sol_inner"; locked = 1; name = "External Access"; req_access = null; req_access_txt = "160"},/turf/simulated/shuttle/plating,/area/shuttle/trade/sol) "arf" = (/obj/machinery/door/airlock/shuttle{id_tag = "s_docking_airlock"; req_access_txt = "160"},/obj/docking_port/mobile{dir = 8; dwidth = 2; height = 11; id = "trade_sol"; name = "sol trade shuttle"; roundstart_move = "trade_sol_base"; width = 5},/obj/docking_port/stationary{dir = 8; dwidth = 2; height = 11; id = "trade_sol_offstation"; lock_shuttle_doors = 1; name = "northwest of Cyberiad"; width = 5},/turf/simulated/shuttle/floor,/area/shuttle/trade/sol) @@ -919,16 +919,16 @@ "arI" = (/obj/structure/closet/secure_closet/security,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/item/spacepod_equipment/weaponry/laser,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/podbay) "arJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/podbay) "arK" = (/obj/machinery/magnetic_module,/obj/structure/target_stake,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/range) -"arL" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/range) -"arM" = (/obj/effect/decal/warning_stripes/west,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/range) -"arN" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/range) +"arL" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) +"arM" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) +"arN" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) "arO" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/security/range) "arP" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/range) "arQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/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/plasteel{icon_state = "dark"},/area/security/brig) "arR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security/glass{name = "Firing Range"; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/security/range) "arS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "arT" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "redcorner"},/area/hallway/primary/fore) -"arU" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) +"arU" = (/turf/space,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) "arV" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "burst_r"},/turf/space,/area/shuttle/trade/sol) "arW" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1450; master_tag = "trade_sol"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "160"},/turf/simulated/shuttle/floor,/area/shuttle/trade/sol) "arX" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/simulated/floor/plasteel/airless{icon_state = "solarpanel"},/area/solar/auxport) @@ -971,13 +971,13 @@ "asI" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Security Pod Pilot"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/podbay) "asJ" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/trade/sol) "asK" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f9"; dir = 2},/area/shuttle/trade/sol) -"asL" = (/turf/space,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) -"asM" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) -"asN" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) -"asO" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1450; master_tag = "dorms_maint"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"asL" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) +"asM" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) +"asN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/radio/intercom/department/security{pixel_x = -28},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prisonershuttle) +"asO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "asP" = (/obj/machinery/door/window/eastright{dir = 1; name = "Security Delivery"; req_access_txt = "1"},/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel,/area/security/processing) -"asQ" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/shuttle/pod_3) -"asR" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"asQ" = (/obj/machinery/camera{c_tag = "Brig Labor Camp Airlock North"; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prisonershuttle) +"asR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "asS" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/shuttle/siberia) "asT" = (/obj/structure/grille,/obj/structure/window/full/shuttle{dir = 10; icon_state = "9"},/turf/simulated/floor/plating,/area/shuttle/siberia) "asU" = (/obj/structure/grille,/obj/structure/window/full/shuttle{icon_state = "window4"},/turf/simulated/floor/plating,/area/shuttle/siberia) @@ -1019,7 +1019,7 @@ "atE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/brig) "atF" = (/obj/structure/cable,/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/simulated/floor/plasteel/airless{icon_state = "solarpanel"},/area/solar/auxport) "atG" = (/turf/simulated/wall/r_wall,/area/maintenance/fsmaint) -"atH" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"atH" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "atI" = (/turf/simulated/shuttle/wall{icon_state = "swall3"; dir = 2},/area/shuttle/siberia) "atJ" = (/obj/structure/table,/obj/item/folder/red,/obj/item/restraints/handcuffs,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/siberia) "atK" = (/obj/machinery/computer/shuttle/labor,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/siberia) @@ -1055,9 +1055,9 @@ "auo" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security/glass{id_tag = "BrigFoyer"; name = "Brig"; req_access_txt = "63"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "darkredcorners"},/area/security/prison/cell_block/B) "aup" = (/obj/machinery/light/small{dir = 1},/obj/structure/closet/emcloset,/obj/machinery/camera{c_tag = "Security Pod"; dir = 2; network = list("SS13")},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "auq" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/shuttle/pod_3) -"aur" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"aur" = (/obj/machinery/power/treadmill{dir = 4},/obj/machinery/treadmill_monitor{id = "Cell 4"; pixel_y = -32},/obj/structure/cable/yellow,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 4},/area/security/prison/cell_block/B) "aus" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f10"; dir = 2},/area/shuttle/pod_3) -"aut" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = -25; req_access_txt = "13"},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) +"aut" = (/obj/machinery/hologram/holopad,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "auu" = (/obj/machinery/mineral/labor_claim_console{machinedir = 2; pixel_x = 30; pixel_y = 30},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/siberia) "auv" = (/obj/structure/grille,/obj/structure/window/full/shuttle,/turf/simulated/floor/plating,/area/shuttle/siberia) "auw" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/siberia) @@ -1067,7 +1067,7 @@ "auA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security/glass{id_tag = "BrigFoyer"; name = "Brig"; req_access_txt = "63"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "darkredcorners"},/area/security/prison/cell_block/B) "auB" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plating,/area/security/prisonershuttle) "auC" = (/turf/simulated/floor/plating,/area/security/prisonershuttle) -"auD" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prisonershuttle) +"auD" = (/obj/structure/chair/stool,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "auE" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/turf/simulated/floor/plating,/area/security/processing) "auF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/security/glass{id_tag = "Brig"; name = "Prisoner Processing"; req_access_txt = "63"},/turf/simulated/floor/plasteel,/area/security/processing) "auG" = (/obj/structure/closet,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/evidence) @@ -1084,7 +1084,7 @@ "auR" = (/obj/structure/table/reinforced,/obj/item/storage/box/flashbangs,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plasteel,/area/security/range) "auS" = (/obj/structure/table/reinforced,/obj/machinery/syndicatebomb/training,/turf/simulated/floor/plasteel,/area/security/range) "auT" = (/obj/structure/table/reinforced,/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/obj/item/clothing/ears/earmuffs,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/plasteel,/area/security/range) -"auU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/radio/intercom/department/security{pixel_x = -28},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prisonershuttle) +"auU" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "auV" = (/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "auW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{dir = 4; icon_state = "darkred"},/area/security/courtroomdandp) "auX" = (/obj/machinery/camera{c_tag = "Brig Security Courtroom Hall"; dir = 4; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkred"},/area/security/courtroomdandp) @@ -1128,7 +1128,7 @@ "avJ" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Detective"},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) "avK" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/carpet,/area/security/detectives_office) "avL" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/requests_console{name = "Detective Requests Console"; pixel_x = 30},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) -"avM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prisonershuttle) +"avM" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1450; master_tag = "dorms_maint"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "avN" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light/small{dir = 4; pixel_y = 8},/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "avO" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkred"},/area/security/courtroomdandp) "avP" = (/obj/machinery/light{dir = 8},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/prison/cell_block/A) @@ -1152,7 +1152,7 @@ "awh" = (/obj/structure/chair{dir = 8},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 1},/area/security/processing) "awi" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 4},/area/security/processing) "awj" = (/obj/structure/chair{dir = 1},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 4},/area/security/processing) -"awk" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_3) +"awk" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/shuttle/pod_3) "awl" = (/turf/simulated/wall,/area/maintenance/fsmaint) "awm" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f9"; dir = 2},/area/shuttle/pod_3) "awn" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 4},/area/security/processing) @@ -1183,9 +1183,9 @@ "awM" = (/obj/machinery/computer/security/wooden_tv{network = list("SS13","Research Outpost","Mining Outpost")},/obj/item/radio/intercom/department/security{pixel_x = 28},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) "awN" = (/obj/structure/table,/obj/item/storage/box/prisoner,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "awO" = (/obj/structure/closet/emcloset,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel,/area/security/prisonershuttle) -"awP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prisonershuttle) -"awQ" = (/obj/machinery/camera{c_tag = "Brig Labor Camp Airlock North"; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prisonershuttle) -"awR" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prisonershuttle) +"awP" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"awQ" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"awR" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) "awS" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "awT" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkred"},/area/security/courtroomdandp) "awU" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/prison/cell_block/A) @@ -1210,7 +1210,7 @@ "axn" = (/obj/structure/lattice,/obj/item/stack/cable_coil,/turf/space,/area/space) "axo" = (/obj/structure/chair{dir = 4},/turf/simulated/shuttle/floor,/area/shuttle/siberia) "axp" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/prison/cell_block/B) -"axq" = (/obj/machinery/power/treadmill{dir = 4},/obj/machinery/treadmill_monitor{id = "Cell 4"; pixel_y = -32},/obj/structure/cable/yellow,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prison/cell_block/B) +"axq" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_tool_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = -25; req_access_txt = "13"},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxport) "axr" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "darkredcorners"},/area/security/prison/cell_block/B) "axs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/item/radio/intercom{pixel_x = -28},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/prison/cell_block/B) "axt" = (/obj/structure/table,/obj/item/storage/box/evidence,/turf/simulated/floor/plasteel,/area/security/processing) @@ -1233,7 +1233,7 @@ "axK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "axL" = (/turf/simulated/floor/plasteel,/area/security/lobby) "axM" = (/obj/machinery/computer/prisoner{req_access = null; req_access_txt = "2"},/turf/simulated/floor/plasteel,/area/security/prisonershuttle) -"axN" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prisonershuttle) +"axN" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_3) "axO" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security/glass{name = "Courtroom Prosecution and Defense"; req_access_txt = "63"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/courtroomdandp) "axP" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/prison/cell_block/A) "axQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "darkredcorners"},/area/security/prison/cell_block/A) @@ -1276,7 +1276,7 @@ "ayB" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "ayC" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "ayD" = (/obj/machinery/computer/secure_data,/obj/machinery/light/small{dir = 4; pixel_y = 8},/turf/simulated/floor/plasteel,/area/security/prisonershuttle) -"ayE" = (/obj/structure/chair/stool,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/prisonershuttle) +"ayE" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_chapel_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "10;13"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) "ayF" = (/obj/item/flag/nt,/obj/item/radio/intercom/department/security{pixel_x = -28},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 9},/area/security/courtroomdandp) "ayG" = (/obj/machinery/light_switch{pixel_x = 0; pixel_y = 25},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/courtroomdandp) "ayH" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/courtroomdandp) @@ -1299,7 +1299,7 @@ "ayY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "ayZ" = (/obj/machinery/computer/shuttle/labor,/turf/simulated/floor/plasteel,/area/security/prisonershuttle) "aza" = (/obj/structure/chair,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/courtroomdandp) -"azb" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_chapel_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "10;13"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/auxstarboard) +"azb" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "arrivals_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "azc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; initialize_directions = 10; level = 1},/turf/simulated/floor/plasteel,/area/security/courtroomdandp) "azd" = (/obj/structure/chair,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel,/area/security/courtroomdandp) "aze" = (/obj/structure/chair{dir = 4},/obj/machinery/light/spot{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite) @@ -1425,7 +1425,7 @@ "aBu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "63"},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aBv" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/wall,/area/maintenance/fsmaint) "aBw" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/fsmaint) -"aBx" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "arrivals_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"aBx" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1450; master_tag = "bar_maint"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "aBy" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/space) "aBz" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/security/prisonershuttle) "aBA" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/security/prisonershuttle) @@ -1491,7 +1491,7 @@ "aCI" = (/obj/item/radio/intercom{pixel_x = 28},/turf/simulated/floor/plasteel{dir = 2; icon_state = "darkredcorners"},/area/security/prison/cell_block/A) "aCJ" = (/obj/structure/bed,/obj/machinery/flasher{id = "Cell 3"; pixel_x = 0; pixel_y = -28},/turf/simulated/floor/plasteel{dir = 2; icon_state = "redcorner"},/area/security/prison/cell_block/A) "aCK" = (/obj/machinery/power/treadmill{dir = 4},/obj/structure/cable/yellow,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/machinery/treadmill_monitor{id = "Cell 3"; pixel_y = -32},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 1},/area/security/prison/cell_block/A) -"aCL" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1450; master_tag = "bar_maint"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"aCL" = (/obj/machinery/recharge_station,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/electrical) "aCM" = (/obj/item/shard,/obj/item/stack/rods,/obj/item/airlock_electronics,/turf/simulated/floor/plating{dir = 9; icon_regular_floor = "escape"},/area/maintenance/abandonedbar) "aCN" = (/obj/effect/decal/cleanable/fungus,/turf/simulated/wall,/area/maintenance/abandonedbar) "aCO" = (/obj/machinery/vending/autodrobe,/turf/simulated/floor/plating,/area/maintenance/abandonedbar) @@ -1500,7 +1500,7 @@ "aCR" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "escape"},/area/maintenance/abandonedbar) "aCS" = (/obj/item/lighter/random,/turf/simulated/floor/wood{broken = 1; icon_state = "wood-broken"},/area/maintenance/abandonedbar) "aCT" = (/obj/machinery/light/spot{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite) -"aCU" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/simulated/shuttle/wall{icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_1) +"aCU" = (/obj/item/stack/sheet/mineral/plasma{amount = 10},/obj/item/stack/rods{amount = 50},/obj/structure/rack,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil{amount = 5},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/electrical) "aCV" = (/obj/structure/table/wood,/obj/item/trash/plate,/turf/simulated/floor/wood,/area/maintenance/abandonedbar) "aCW" = (/obj/structure/table/wood,/obj/item/reagent_containers/food/drinks/bottle/patron,/obj/item/storage/fancy/cigarettes/cigpack_shadyjims,/turf/simulated/floor/plating,/area/maintenance/abandonedbar) "aCX" = (/obj/machinery/door/airlock/external{id_tag = "s_docking_airlock"; name = "Shuttle Airlock"; req_access_txt = "150"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "syndicate_elite"; name = "Side Hull Door"; opacity = 0; req_access_txt = "150"},/obj/docking_port/mobile{dir = 8; dwidth = 3; height = 5; id = "sst"; name = "SST shuttle"; roundstart_move = "sst_away"; width = 11},/obj/docking_port/stationary{dir = 8; dwidth = 3; height = 5; id = "sst_home"; name = "northwest of station"; width = 11},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite) @@ -1557,7 +1557,7 @@ "aDW" = (/obj/structure/door_assembly,/turf/simulated/floor/plating,/area/maintenance/abandonedbar) "aDX" = (/obj/item/shard{icon_state = "small"},/obj/item/stack/rods,/turf/simulated/floor/plating{dir = 4; icon_regular_floor = "escape"},/area/maintenance/abandonedbar) "aDY" = (/obj/item/stack/tile/plasteel,/turf/simulated/floor/plating,/area/maintenance/abandonedbar) -"aDZ" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/simulated/shuttle/wall{icon_state = "swall_f9"; dir = 2},/area/shuttle/pod_1) +"aDZ" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/electrical) "aEa" = (/obj/structure/table/wood,/obj/item/trash/can,/turf/simulated/floor/wood{broken = 1; icon_state = "wood-broken"},/area/maintenance/abandonedbar) "aEb" = (/obj/machinery/computer/pod{id_tags = list("syndicate_elite"); name = "Hull Door Control"; req_access_txt = "150"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite) "aEc" = (/obj/machinery/vending/boozeomat,/turf/simulated/floor/plating,/area/maintenance/abandonedbar) @@ -1608,7 +1608,7 @@ "aEV" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plasteel{dir = 6; icon_state = "escape"},/area/maintenance/abandonedbar) "aEW" = (/obj/item/stack/rods,/turf/simulated/floor/plasteel{dir = 2; icon_state = "escape"},/area/maintenance/abandonedbar) "aEX" = (/obj/item/trash/pistachios,/obj/machinery/light_construct,/turf/simulated/floor/wood{broken = 1; icon_state = "wood-broken"},/area/maintenance/abandonedbar) -"aEY" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/simulated/shuttle/wall{icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_2) +"aEY" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/electrical) "aEZ" = (/obj/machinery/light,/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor/plating,/area/maintenance/abandonedbar) "aFa" = (/obj/structure/sign/poster/contraband/random{pixel_x = 32},/turf/simulated/floor/wood{broken = 1; icon_state = "wood-broken"},/area/maintenance/abandonedbar) "aFb" = (/obj/structure/table/wood,/obj/item/reagent_containers/food/condiment/saltshaker,/obj/item/reagent_containers/food/condiment/peppermill,/turf/simulated/floor/plating,/area/maintenance/abandonedbar) @@ -1709,7 +1709,7 @@ "aGS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "solar_chapel_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "13"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aGT" = (/turf/simulated/wall/r_wall,/area/maintenance/auxsolarstarboard) "aGU" = (/obj/machinery/power/solar_control{id = "auxsolareast"; name = "Fore Starboard Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/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},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) -"aGV" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/simulated/shuttle/wall{icon_state = "swall_f9"; dir = 2},/area/shuttle/pod_2) +"aGV" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/electrical) "aGW" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aGX" = (/turf/simulated/wall,/area/maintenance/fsmaint2) "aGY" = (/turf/simulated/floor/plating,/area/maintenance/fsmaint2) @@ -1751,7 +1751,7 @@ "aHI" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aHJ" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) "aHK" = (/obj/structure/chair/stool,/turf/simulated/floor/plating,/area/maintenance/auxsolarstarboard) -"aHL" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "eva_airlock"; name = "exterior access button"; pixel_x = 0; pixel_y = 25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/fpmaint) +"aHL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/electrical) "aHM" = (/obj/machinery/atmospherics/trinary/filter{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint2) "aHN" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aHO" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) @@ -2036,10 +2036,10 @@ "aNh" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aNi" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aNj" = (/obj/structure/table,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) -"aNk" = (/obj/machinery/recharge_station,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/electrical) +"aNk" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/extinguisher_cabinet{pixel_x = 27},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/electrical) "aNl" = (/obj/machinery/door_control{id = "maint3"; name = "Blast Door Control C"; pixel_y = 24},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aNm" = (/obj/machinery/power/port_gen/pacman,/turf/simulated/floor/plating,/area/maintenance/electrical) -"aNn" = (/obj/item/stack/sheet/mineral/plasma{amount = 10},/obj/item/stack/rods{amount = 50},/obj/structure/rack,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil{amount = 5},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/electrical) +"aNn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/electrical) "aNo" = (/turf/simulated/floor/mech_bay_recharge_floor,/area/maintenance/electrical) "aNp" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/maintenance/electrical) "aNq" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/bluegrid,/area/maintenance/electrical) @@ -2113,11 +2113,11 @@ "aOG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aOH" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aOI" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) -"aOJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/electrical) -"aOK" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/electrical) +"aOJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/electrical) +"aOK" = (/obj/structure/table,/obj/item/clothing/gloves/color/fyellow,/obj/item/storage/toolbox/electrical,/obj/item/multitool,/obj/item/radio/intercom{pixel_x = 25},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/electrical) "aOL" = (/turf/simulated/floor/plating,/area/maintenance/electrical) -"aOM" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/electrical) -"aON" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/extinguisher_cabinet{pixel_x = 27},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/electrical) +"aOM" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/electrical) +"aON" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/simulated/shuttle/wall{icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_1) "aOO" = (/obj/structure/mirror{icon_state = "mirror_broke"; pixel_y = 28},/obj/machinery/iv_drip,/turf/simulated/floor/plating,/area/maintenance/fpmaint2) "aOP" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/hallway/secondary/entry) "aOQ" = (/turf/simulated/floor/plating,/area/hallway/secondary/entry) @@ -2171,14 +2171,14 @@ "aPM" = (/obj/structure/chair{dir = 8},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) "aPN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "maint3"; name = "Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aPO" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/simulated/wall,/area/maintenance/electrical) -"aPP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6; level = 1},/turf/simulated/floor/plating,/area/maintenance/electrical) +"aPP" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/simulated/shuttle/wall{icon_state = "swall_f9"; dir = 2},/area/shuttle/pod_1) "aPQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aPR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6; level = 1},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aPS" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "north bump Engineering"; pixel_x = 0; pixel_y = 24; shock_proof = 1},/turf/simulated/floor/plating,/area/maintenance/electrical) "aPT" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plating,/area/maintenance/electrical) -"aPU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/electrical) +"aPU" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/simulated/shuttle/wall{icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_2) "aPV" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32},/turf/space,/area/space) -"aPW" = (/obj/structure/table,/obj/item/clothing/gloves/color/fyellow,/obj/item/storage/toolbox/electrical,/obj/item/multitool,/obj/item/radio/intercom{pixel_x = 25},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/electrical) +"aPW" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/simulated/shuttle/wall{icon_state = "swall_f9"; dir = 2},/area/shuttle/pod_2) "aPX" = (/obj/machinery/optable,/turf/simulated/floor/plating,/area/maintenance/fpmaint2) "aPY" = (/obj/machinery/door/airlock/public/glass{name = "Vacant Office"},/obj/machinery/door/firedoor,/turf/simulated/floor/wood,/area/security/vacantoffice) "aPZ" = (/obj/machinery/door/airlock/external{name = "Escape Pod"},/turf/simulated/floor/plating,/area/hallway/secondary/entry) @@ -2229,7 +2229,7 @@ "aQS" = (/obj/machinery/door/airlock/engineering{name = "Electrical Maintenance"; req_access_txt = "11"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/electrical) "aQT" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/electrical) "aQU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/hologram/holopad,/turf/simulated/floor/plating,/area/maintenance/electrical) -"aQV" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/electrical) +"aQV" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "eva_airlock"; name = "exterior access button"; pixel_x = 0; pixel_y = 25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/fpmaint) "aQW" = (/obj/structure/table,/obj/item/camera_assembly,/obj/item/camera_assembly,/obj/item/assembly/prox_sensor{pixel_x = -5; pixel_y = 5},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plating,/area/maintenance/electrical) "aQX" = (/obj/docking_port/stationary{dir = 8; dwidth = 2; height = 11; id = "trade_dock"; name = "port bay 4 at Cyberiad"; width = 5},/turf/space,/area/space) "aQY" = (/obj/structure/chair/stool,/turf/simulated/floor/plating,/area/maintenance/electrical) @@ -2254,7 +2254,7 @@ "aRr" = (/obj/structure/disposalpipe/segment{dir = 4},/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/plating,/area/maintenance/fpmaint) "aRs" = (/obj/structure/disposalpipe/segment{dir = 4; 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; initialize_directions = 11; level = 1},/turf/simulated/floor/plating,/area/maintenance/fpmaint) "aRt" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plating,/area/maintenance/fpmaint) -"aRu" = (/turf/space,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/fpmaint) +"aRu" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/electrical) "aRv" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutral"},/area/crew_quarters/fitness) "aRw" = (/turf/simulated/wall/r_wall,/area/ai_monitored/storage/eva) "aRx" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/ai_monitored/storage/eva) @@ -2284,7 +2284,7 @@ "aRV" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/public/glass{name = "Holodeck Door"},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) "aRW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aRX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) -"aRY" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plating,/area/maintenance/electrical) +"aRY" = (/turf/space,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating/airless/catwalk,/area/maintenance/fpmaint) "aRZ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plating,/area/maintenance/electrical) "aSa" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/hallway/secondary/entry) "aSb" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "sol_inner"; locked = 1; name = "Arrivals External Access"; req_access = null; req_access_txt = "0"},/turf/simulated/floor/plating,/area/hallway/secondary/entry) @@ -2348,7 +2348,7 @@ "aTh" = (/obj/machinery/computer/mob_battle_terminal/blue,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/crew_quarters/fitness) "aTi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aTj" = (/obj/machinery/power/terminal,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/maintenance/electrical) -"aTk" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/maintenance/electrical) +"aTk" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/electrical) "aTl" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/electrical) "aTm" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor/plating,/area/maintenance/electrical) "aTn" = (/obj/machinery/power/terminal,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/electrical) @@ -2696,7 +2696,7 @@ "aZR" = (/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "aZS" = (/obj/machinery/cryopod/robot,/turf/simulated/floor/plasteel,/area/assembly/chargebay) "aZT" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue) -"aZU" = (/obj/structure/filingcabinet/chestdrawer{desc = "A large drawer filled with autopsy reports."; name = "Autopsy Reports"},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue) +"aZU" = (/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/obj/structure/filingcabinet/chestdrawer/autopsy,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue) "aZV" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aZW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aZX" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/junction{tag = "icon-pipe-j1 (EAST)"; icon_state = "pipe-j1"; dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) @@ -3895,7 +3895,7 @@ "bwU" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/closet/wardrobe/pjs,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "bwV" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/dresser,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "bwW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/effect/decal/warning_stripes/northeastcorner,/obj/effect/decal/warning_stripes/southeastcorner,/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 4},/obj/effect/decal/warning_stripes/arrow{icon_state = "4"; dir = 4},/turf/simulated/floor/plasteel,/area/hallway/secondary/exit) -"bwX" = (/obj/machinery/door/poddoor/shutters{dir = 2; id_tag = "qm_warehouse"; name = "Warehouse Shutters"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) +"bwX" = (/turf/space,/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion"; tag = "icon-propulsion (EAST)"},/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/shuttle/transport) "bwY" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable,/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/plasteel,/area/crew_quarters/locker) "bwZ" = (/obj/machinery/atmospherics/unary/tank/air{dir = 4},/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plating,/area/maintenance/port) "bxa" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/port) @@ -3968,11 +3968,11 @@ "byp" = (/obj/effect/landmark/start{name = "Civilian"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "byq" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "byr" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) -"bys" = (/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{dir = 9},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"byt" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/stack/sheet/cardboard,/obj/item/stack/rods{amount = 50},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"byu" = (/obj/machinery/hologram/holopad,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"byv" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"byw" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/apc_electronics,/obj/item/stock_parts/cell{maxcharge = 2000},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) +"bys" = (/turf/space,/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion"; tag = "icon-propulsion (EAST)"},/turf/simulated/shuttle/wall{icon_state = "swall_f5"; dir = 2},/area/shuttle/transport) +"byt" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/stack/sheet/cardboard,/obj/item/stack/rods{amount = 50},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"byu" = (/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{dir = 9},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"byv" = (/obj/machinery/hologram/holopad,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"byw" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "byx" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/quartermaster/office) "byy" = (/obj/machinery/conveyor{dir = 1; id = "packageSort1"},/turf/simulated/floor/plating,/area/quartermaster/office) "byz" = (/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/quartermaster/office) @@ -4029,9 +4029,9 @@ "bzy" = (/obj/machinery/washing_machine,/obj/machinery/light,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "bzz" = (/obj/structure/table,/obj/structure/bedsheetbin{pixel_x = -1; pixel_y = 2},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) "bzA" = (/obj/machinery/washing_machine,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/locker) -"bzB" = (/obj/structure/closet/crate,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bzC" = (/obj/structure/closet/crate,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bzD" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) +"bzB" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/apc_electronics,/obj/item/stock_parts/cell{maxcharge = 2000},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bzC" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bzD" = (/obj/structure/closet/crate,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "bzE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/quartermaster/office) "bzF" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/quartermaster/office) "bzG" = (/obj/machinery/conveyor_switch/oneway{id = "packageSort1"},/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/quartermaster/office) @@ -4115,9 +4115,9 @@ "bBg" = (/obj/structure/closet/emcloset,/obj/machinery/camera{c_tag = "Arrivals Auxiliary Docking South"; dir = 4; network = list("SS13")},/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/hallway/secondary/entry) "bBh" = (/obj/item/cigbutt,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/port) "bBi" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/port) -"bBj" = (/obj/item/radio/intercom{dir = 0; name = "station intercom (General)"; pixel_x = -28},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bBk" = (/obj/structure/closet/crate/freezer,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bBl" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) +"bBj" = (/obj/structure/closet/crate,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bBk" = (/obj/item/radio/intercom{dir = 0; name = "station intercom (General)"; pixel_x = -28},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bBl" = (/obj/structure/closet/crate/freezer,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "bBm" = (/obj/structure/disposalpipe/segment,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/assembly/chargebay) "bBn" = (/turf/simulated/floor/plasteel,/area/quartermaster/office) "bBo" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel,/area/quartermaster/office) @@ -4178,12 +4178,12 @@ "bCr" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/port) "bCs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/port) "bCt" = (/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/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/port) -"bCu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bCv" = (/obj/item/stack/sheet/cardboard,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) +"bCu" = (/obj/machinery/light/small{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bCv" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "bCw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/sign/poster/contraband/random{pixel_x = -32},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/port) "bCx" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) -"bCy" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bCz" = (/obj/machinery/camera{c_tag = "Cargo Bay Storage"; dir = 8; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) +"bCy" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bCz" = (/obj/item/stack/sheet/cardboard,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "bCA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/bridge/meeting_room) "bCB" = (/obj/machinery/camera{c_tag = "Cargo Delivery Office"; dir = 4; network = list("SS13")},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/telepad_cargo,/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/quartermaster/office) "bCC" = (/obj/item/folder/blue,/obj/structure/table/wood,/turf/simulated/floor/carpet,/area/bridge/meeting_room) @@ -4253,15 +4253,15 @@ "bDO" = (/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},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/port) "bDP" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/port) "bDQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{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},/turf/simulated/floor/plating,/area/maintenance/port) -"bDR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bDS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bDT" = (/obj/structure/closet/crate/internals,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) +"bDR" = (/obj/machinery/camera{c_tag = "Cargo Bay Storage"; dir = 8; network = list("SS13")},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bDS" = (/obj/structure/closet/crate/medical,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bDT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "bDU" = (/obj/structure/disposaloutlet{dir = 1},/obj/structure/disposalpipe/trunk,/turf/simulated/floor/plating,/area/quartermaster/office) "bDV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; name = "Sci R&D"; sortType = 12},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard/east) "bDW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/decal/cleanable/blood/oil/streak,/obj/structure/cable{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/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/port) "bDX" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/quartermaster/office) "bDY" = (/obj/machinery/camera{c_tag = "Locker Room Toilets"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) -"bDZ" = (/obj/structure/closet/crate/medical,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) +"bDZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "bEa" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bEb" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/quartermaster/office) "bEc" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/wood,/area/bridge/meeting_room) @@ -4323,15 +4323,15 @@ "bFg" = (/obj/structure/disposalpipe/segment,/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/port) "bFh" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) "bFi" = (/obj/effect/decal/cleanable/cobweb,/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/port) -"bFj" = (/obj/structure/sign/poster/contraband/random{pixel_y = -32},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bFk" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) +"bFj" = (/obj/structure/closet/crate/internals,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bFk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light_switch{pixel_x = -24},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "bFl" = (/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; initialize_directions = 11; level = 1},/turf/simulated/floor/plating,/area/maintenance/port) "bFm" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/quartermaster/storage) "bFn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/port) "bFo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/port) -"bFp" = (/obj/machinery/door_control{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "31"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bFq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light_switch{pixel_x = -24},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) -"bFr" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/storage) +"bFp" = (/obj/machinery/door_control{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "31"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bFq" = (/obj/structure/sign/poster/contraband/random{pixel_y = -32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"bFr" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "bFs" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; name = "Sci RD Office 1"; sortType = 13},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard/east) "bFt" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plasteel,/area/quartermaster/office) "bFu" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/quartermaster/office) @@ -4616,7 +4616,7 @@ "bKN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 8},/obj/effect/decal/warning_stripes/arrow{icon_state = "4"; dir = 8},/turf/simulated/floor/plasteel,/area/hallway/primary/central/se) "bKO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel,/area/quartermaster/office) "bKP" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Disposal Exit"; name = "Disposal Exit Vent"; opacity = 0},/obj/machinery/conveyor/south{id = "garbage"},/turf/simulated/floor/plating,/area/maintenance/disposal) -"bKQ" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/conveyor/east{id = "packageExternal"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/office) +"bKQ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "bKR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/central/west) "bKS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 8; icon_state = "browncorner"},/area/hallway/primary/central/west) "bKT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall,/area/bridge/meeting_room) @@ -4689,7 +4689,7 @@ "bMi" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "bMj" = (/obj/machinery/light{dir = 8},/obj/machinery/computer/rdconsole/core,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/toxins/lab) "bMk" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plating,/area/maintenance/disposal) -"bMl" = (/obj/structure/plasticflaps{opacity = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/conveyor/east{id = "packageExternal"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/office) +"bMl" = (/obj/machinery/door/poddoor/shutters{dir = 2; id_tag = "qm_warehouse"; name = "Warehouse Shutters"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/warning_stripes/yellow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "bMm" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable,/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/structure/closet,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plating,/area/maintenance/disposal) "bMn" = (/obj/machinery/light/small,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/disposal) "bMo" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/shuttle/supply) @@ -5560,9 +5560,9 @@ "ccV" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 4},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/bluegrid{icon_state = "dark"; name = "Server Walkway"; nitrogen = 250; oxygen = 0; temperature = 0},/area/toxins/server_coldroom) "ccW" = (/obj/machinery/camera{c_tag = "Research Server Room"; dir = 2; network = list("Research","SS13"); pixel_x = 22},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/unary/portables_connector,/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/toxins/server) "ccX" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; initialize_directions = 10},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/toxins/server) -"ccY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/computer/area_atmos,/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) -"ccZ" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) -"cda" = (/obj/machinery/portable_atmospherics/scrubber/huge,/obj/structure/sign/nosmoking_2{pixel_x = 28},/obj/effect/decal/warning_stripes/yellow/hollow,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) +"ccY" = (/obj/structure/plasticflaps{opacity = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/conveyor/east{id = "packageExternal"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/office) +"ccZ" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/conveyor/east{id = "packageExternal"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/office) +"cda" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) "cdb" = (/obj/machinery/atmospherics/unary/cold_sink/freezer{current_temperature = 73; dir = 2; on = 1},/obj/item/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/toxins/server) "cdc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) "cdd" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel{dir = 9; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) @@ -5644,8 +5644,8 @@ "ceB" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 10},/turf/simulated/floor/bluegrid{icon_state = "dark"; name = "Server Walkway"; nitrogen = 250; oxygen = 0; temperature = 0},/area/toxins/server_coldroom) "ceC" = (/obj/structure/chair/office/light,/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/toxins/server) "ceD" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/toxins/server) -"ceE" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) -"ceF" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) +"ceE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/quartermaster/storage) +"ceF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/computer/area_atmos,/obj/effect/decal/warning_stripes/yellow/hollow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) "ceG" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9; icon_state = "intact"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/toxins/server) "ceH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) "ceI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 9; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) @@ -5814,8 +5814,8 @@ "chP" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/wall/r_wall,/area/toxins/server) "chQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/wall/r_wall,/area/toxins/server_coldroom) "chR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; initialize_directions = 10; level = 1},/turf/simulated/wall/r_wall,/area/toxins/server) -"chS" = (/mob/living/simple_animal/mouse/white,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) -"chT" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) +"chS" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) +"chT" = (/obj/machinery/portable_atmospherics/scrubber/huge,/obj/structure/sign/nosmoking_2{pixel_x = 28},/obj/effect/decal/warning_stripes/yellow/hollow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) "chU" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/camera{c_tag = "Research Toxins Storage Room"; dir = 4; network = list("Research","SS13"); pixel_y = -22},/turf/simulated/floor/plasteel,/area/toxins/storage) "chV" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/sign/poster/official/random{pixel_x = -32},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) "chW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/engine/break_room) @@ -5838,7 +5838,7 @@ "cin" = (/obj/structure/chair{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/mining) "cio" = (/obj/machinery/door/window/brigdoor/westleft{color = "#d70000"; req_access_txt = "104"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration) "cip" = (/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock) -"ciq" = (/obj/machinery/light/small{dir = 4; pixel_y = 8},/obj/item/ore/iron,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock) +"ciq" = (/obj/machinery/light/small{dir = 4; pixel_y = 8},/obj/item/stack/ore/iron,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock) "cir" = (/obj/effect/landmark/start{name = "Shaft Miner"},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock) "cis" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock) "cit" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/quartermaster/miningdock) @@ -5912,9 +5912,9 @@ "cjJ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/wall/r_wall,/area/toxins/explab_chamber) "cjK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall/r_wall,/area/toxins/storage) "cjL" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/engine,/area/toxins/explab_chamber) -"cjM" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) -"cjN" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) -"cjO" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/effect/decal/warning_stripes/yellow,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) +"cjM" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) +"cjN" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/decal/warning_stripes/yellow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) +"cjO" = (/obj/effect/decal/cleanable/dirt,/mob/living/simple_animal/mouse/white,/turf/simulated/floor/plasteel,/area/toxins/storage) "cjP" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/plasteel,/area/toxins/storage) "cjQ" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24; shock_proof = 0},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) "cjR" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel,/area/engine/break_room) @@ -5994,8 +5994,8 @@ "cln" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/engine,/area/toxins/explab_chamber) "clo" = (/obj/effect/landmark{name = "blobstart"},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/engine,/area/toxins/explab_chamber) "clp" = (/turf/simulated/wall/r_wall,/area/toxins/explab_chamber) -"clq" = (/obj/item/cigbutt,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) -"clr" = (/obj/effect/decal/warning_stripes/yellow,/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) +"clq" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent,/obj/effect/decal/warning_stripes/yellow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) +"clr" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) "cls" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "clt" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/engine,/area/toxins/explab_chamber) "clu" = (/obj/machinery/atmospherics/binary/valve,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/mixing) @@ -6013,7 +6013,7 @@ "clG" = (/obj/structure/table,/obj/item/storage/lockbox/mindshield,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration) "clH" = (/obj/machinery/camera{c_tag = "Research Toxins Test Chamber North"; network = list("Toxins","Research","SS13")},/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel/airless,/area/toxins/test_area) "clI" = (/obj/structure/table,/obj/item/storage/box/chemimp{pixel_x = 4; pixel_y = 3},/obj/item/storage/box/trackimp,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/administration) -"clJ" = (/obj/item/ore/silver,/obj/item/ore/silver,/obj/structure/closet/crate,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock) +"clJ" = (/obj/item/stack/ore/silver,/obj/item/stack/ore/silver,/obj/structure/closet/crate,/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock) "clK" = (/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) "clL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock) "clM" = (/obj/machinery/camera{c_tag = "Mining Dock External"; dir = 8},/obj/structure/closet/emcloset,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock) @@ -6071,13 +6071,13 @@ "cmM" = (/obj/machinery/light_switch{pixel_y = -23},/turf/simulated/floor/engine,/area/toxins/explab_chamber) "cmN" = (/obj/structure/closet/crate/freezer,/obj/item/reagent_containers/blood/AMinus,/obj/item/reagent_containers/blood/APlus,/obj/item/reagent_containers/blood/BMinus,/obj/item/reagent_containers/blood/BPlus,/obj/item/reagent_containers/blood/OPlus,/obj/item/reagent_containers/blood/OMinus,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/medical/surgery1) "cmO" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/engine,/area/toxins/explab_chamber) -"cmP" = (/obj/effect/decal/cleanable/blood/oil,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) +"cmP" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/effect/decal/warning_stripes/yellow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) "cmQ" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/engine,/area/toxins/explab_chamber) "cmR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/chair/comfy/black{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/turf/simulated/floor/plasteel,/area/engine/break_room) -"cmS" = (/obj/effect/decal/warning_stripes/southwestcorner,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/mixing) +"cmS" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/effect/decal/warning_stripes/yellow,/obj/effect/decal/warning_stripes/yellow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) "cmT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/extinguisher_cabinet{pixel_x = -24},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) -"cmU" = (/obj/machinery/light/small{dir = 4},/obj/effect/decal/warning_stripes/southeastcorner,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/mixing) -"cmV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/mixing) +"cmU" = (/obj/item/cigbutt,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) +"cmV" = (/obj/effect/decal/warning_stripes/yellow,/obj/machinery/portable_atmospherics/canister/toxins,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) "cmW" = (/obj/structure/closet/wardrobe/toxins_white,/obj/item/radio/intercom{dir = 1; name = "station intercom (General)"; pixel_y = 25},/turf/simulated/floor/plasteel{dir = 9; icon_state = "whitepurple"},/area/toxins/mixing) "cmX" = (/obj/structure/rack,/obj/item/extinguisher,/obj/item/clothing/mask/gas,/obj/machinery/light{dir = 1; in_use = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitepurple"},/area/toxins/mixing) "cmY" = (/obj/structure/closet/wardrobe/toxins_white,/obj/machinery/camera{c_tag = "Research Toxins Mixing West"; dir = 2; network = list("Research","SS13"); pixel_x = 0},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitepurple"},/area/toxins/mixing) @@ -6141,14 +6141,14 @@ "coe" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitegreencorner"},/area/medical/virology/lab{name = "\improper Virology Lobby"}) "cof" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/nosmoking_2{pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitegreen"; tag = "icon-whitehall (WEST)"},/area/medical/virology/lab{name = "\improper Virology Lobby"}) "cog" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/wall/r_wall,/area/toxins/explab) -"coh" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) +"coh" = (/obj/effect/decal/cleanable/blood/oil,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) "coi" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "telescienceblast"; name = "test chamber blast doors"; opacity = 0},/obj/machinery/door/firedoor,/turf/simulated/floor/engine,/area/toxins/explab) -"coj" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) +"coj" = (/obj/effect/decal/warning_stripes/southwestcorner,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/mixing) "cok" = (/obj/item/radio/intercom{dir = 8; name = "station intercom (General)"; pixel_x = -28},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) -"col" = (/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/mixing) -"com" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Research Division Access"; req_access_txt = "47"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/mixing) -"con" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/mixing) -"coo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/mixing) +"col" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/mixing) +"com" = (/obj/machinery/light/small{dir = 4},/obj/effect/decal/warning_stripes/southeastcorner,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/mixing) +"con" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) +"coo" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) "cop" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitepurple"},/area/toxins/mixing) "coq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/mixing) "cor" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Toxins Mixing Room"; req_access_txt = "7"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/toxins/mixing) @@ -6237,16 +6237,16 @@ "cpW" = (/obj/machinery/computer/rdconsole/experiment,/turf/simulated/floor/plasteel{tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1},/area/toxins/explab) "cpX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/closet/l3closet/scientist,/turf/simulated/floor/plasteel{tag = "icon-whitepurple (NORTHWEST)"; icon_state = "whitepurple"; dir = 9},/area/toxins/explab) "cpY" = (/obj/structure/closet/emcloset,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{tag = "icon-whitepurple (NORTHEAST)"; icon_state = "whitepurple"; dir = 5},/area/toxins/explab) -"cpZ" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) -"cqa" = (/obj/machinery/light_switch{pixel_y = -23},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24; shock_proof = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/storage) +"cpZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Research Division Access"; req_access_txt = "47"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/mixing) +"cqa" = (/obj/effect/decal/warning_stripes/west,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/mixing) "cqb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "cqc" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) "cqd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall/r_wall,/area/medical/research{name = "Research Division"}) -"cqe" = (/obj/effect/decal/warning_stripes/northwestcorner,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/mixing) +"cqe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/mixing) "cqf" = (/obj/structure/sign/fire{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 9; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) -"cqg" = (/obj/machinery/light/small{dir = 4},/obj/effect/decal/warning_stripes/northeastcorner,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/mixing) +"cqg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/warning_stripes/east,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/mixing) "cqh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall/r_wall,/area/toxins/mixing) -"cqi" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/toxins/mixing) +"cqi" = (/obj/machinery/light_switch{pixel_y = -23},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24; shock_proof = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) "cqj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/mixing) "cqk" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/mixing) "cql" = (/obj/structure/closet/bombcloset,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitepurple"},/area/toxins/mixing) @@ -6587,8 +6587,8 @@ "cwI" = (/turf/simulated/floor/plating,/area/maintenance/consarea) "cwJ" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "cwK" = (/obj/machinery/meter,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/turf/simulated/floor/plating,/area/maintenance/asmaint2) -"cwL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cwM" = (/obj/item/camera_assembly,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cwL" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/storage) +"cwM" = (/obj/effect/decal/warning_stripes/northwestcorner,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/mixing) "cwN" = (/obj/structure/table,/obj/item/apc_electronics,/obj/item/airlock_electronics,/turf/simulated/floor/plating,/area/storage/tech) "cwO" = (/turf/simulated/floor/plating,/area/storage/tech) "cwP" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/storage/tech) @@ -6602,7 +6602,7 @@ "cwX" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plating,/area/storage/tech) "cwY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel,/area/hallway/primary/aft) "cwZ" = (/obj/structure/disposalpipe/segment,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "cautioncorner"},/area/hallway/primary/aft) -"cxa" = (/obj/effect/decal/warning_stripes/yellow/partial,/obj/effect/decal/warning_stripes/arrow,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cxa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/mixing) "cxb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 2; icon_state = "yellowcorner"},/area/hallway/primary/aft) "cxc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/engine/controlroom) "cxd" = (/obj/structure/chair{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/engine/controlroom) @@ -7189,7 +7189,7 @@ "cIm" = (/turf/simulated/floor/wood,/area/maintenance/asmaint) "cIn" = (/obj/machinery/vending/cigarette,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/asmaint) "cIo" = (/obj/structure/table/wood,/obj/item/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/simulated/floor/plating,/area/maintenance/asmaint) -"cIp" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/asmaint) +"cIp" = (/obj/machinery/light/small{dir = 4},/obj/effect/decal/warning_stripes/northeastcorner,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/toxins/mixing) "cIq" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/genetics) "cIr" = (/obj/structure/chair/stool,/turf/simulated/floor/plating,/area/maintenance/genetics) "cIs" = (/obj/structure/bed,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/maintenance/genetics) @@ -7249,7 +7249,7 @@ "cJu" = (/obj/effect/spawner/random_spawners/blood_maybe,/turf/simulated/floor/carpet,/area/maintenance/asmaint) "cJv" = (/turf/simulated/floor/wood{tag = "icon-wood-broken"; icon_state = "wood-broken"},/area/maintenance/asmaint) "cJw" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/machinery/kitchen_machine/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/plating,/area/maintenance/asmaint) -"cJx" = (/obj/effect/spawner/random_spawners/blood_maybe,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/asmaint) +"cJx" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cJy" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{level = 1},/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "atmos"; name = "Atmos Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/atmos/control) "cJz" = (/obj/machinery/chem_heater,/turf/simulated/floor/plating,/area/maintenance/genetics) "cJA" = (/obj/structure/table,/obj/item/clothing/glasses/welding,/obj/item/clothing/glasses/welding,/obj/item/clothing/glasses/welding,/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/storage/belt/utility,/obj/item/storage/belt/utility,/obj/item/stock_parts/cell/high,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) @@ -7287,7 +7287,7 @@ "cKg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/aft) "cKh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel,/area/hallway/primary/aft) "cKi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{icon_state = "door_locked"; locked = 1; name = "Assembly Line Maintenance"; req_access_txt = "32"},/turf/simulated/floor/plating,/area/assembly/assembly_line) -"cKj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cKj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cKk" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellowcorner"},/area/hallway/primary/aft) "cKl" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/landmark/start{name = "Civilian"},/turf/simulated/floor/plasteel,/area/hallway/primary/aft) "cKm" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; name = "Eng Atmospherics"; sortType = 6},/turf/simulated/floor/plasteel,/area/hallway/primary/aft) @@ -7353,19 +7353,19 @@ "cLu" = (/obj/item/radio/intercom{name = "station intercom (General)"; pixel_y = -28},/obj/machinery/computer/rdconsole/mechanics,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/engine/mechanic_workshop) "cLv" = (/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line) "cLw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/maintenance/aft) -"cLx" = (/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 8},/obj/effect/decal/warning_stripes/arrow{icon_state = "4"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cLx" = (/obj/item/camera_assembly,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cLy" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/aft) -"cLz" = (/obj/machinery/alarm{pixel_y = 24},/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cLz" = (/obj/effect/decal/warning_stripes/yellow/partial,/obj/effect/decal/warning_stripes/arrow,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cLA" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plating,/area/assembly/assembly_line) -"cLB" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 4},/obj/effect/decal/warning_stripes/arrow{icon_state = "4"; dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cLC" = (/obj/structure/table,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cLD" = (/obj/structure/computerframe,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cLE" = (/obj/structure/table,/obj/item/clothing/glasses/welding,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cLB" = (/obj/machinery/alarm{pixel_y = 24},/obj/machinery/light{dir = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cLC" = (/obj/structure/table,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/item/storage/belt/utility,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cLD" = (/obj/structure/table,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cLE" = (/obj/structure/computerframe,/obj/effect/decal/cleanable/cobweb2,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cLF" = (/obj/structure/table,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) -"cLG" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cLH" = (/obj/structure/closet/crate,/obj/machinery/light_switch{pixel_x = 27},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cLI" = (/obj/machinery/light,/obj/machinery/camera{c_tag = "Assembly Line East"; dir = 1; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cLJ" = (/obj/structure/table,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/item/storage/belt/utility,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cLG" = (/obj/structure/table,/obj/item/clothing/glasses/welding,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cLH" = (/obj/structure/closet/crate,/obj/machinery/light_switch{pixel_x = 27},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cLI" = (/obj/item/stack/cable_coil,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cLJ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cLK" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; name = "Eng Chief Engineer's Office"; sortType = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel,/area/hallway/primary/aft) "cLL" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellowcorner"},/area/hallway/primary/aft) "cLM" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/engine/break_room) @@ -7401,18 +7401,18 @@ "cMq" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/aft) "cMr" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/aft) "cMs" = (/obj/effect/decal/cleanable/fungus,/turf/simulated/wall/r_wall,/area/maintenance/asmaint2) -"cMt" = (/obj/item/stack/cable_coil,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cMt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cMu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/engine,/area/toxins/test_chamber) "cMv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/aft) -"cMw" = (/turf/space,/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion"; tag = "icon-propulsion (EAST)"},/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/shuttle/transport) -"cMx" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cMy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cMw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/item/paper,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cMx" = (/obj/structure/chair/stool,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cMy" = (/obj/effect/decal/cleanable/blood/oil,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cMz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/assembly/assembly_line) -"cMA" = (/obj/structure/chair/stool,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cMB" = (/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cMC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/item/paper,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cMA" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering/glass{icon_state = "door_locked"; locked = 1; name = "Assembly Line (KEEP OUT)"; req_access_txt = "32"; req_one_access_txt = "0"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cMB" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) +"cMC" = (/obj/effect/landmark{name = "blobstart"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cMD" = (/obj/item/mounted/frame/apc_frame,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/assembly/assembly_line) -"cME" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering/glass{icon_state = "door_locked"; locked = 1; name = "Assembly Line (KEEP OUT)"; req_access_txt = "32"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cME" = (/obj/machinery/hologram/holopad,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cMF" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/hallway/primary/aft) "cMG" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellowcorner"},/area/hallway/primary/aft) "cMH" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/aft) @@ -7456,7 +7456,7 @@ "cNt" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "xenobio7"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/toxins/xenobiology) "cNu" = (/obj/item/radio/beacon,/turf/simulated/floor/engine,/area/toxins/test_chamber) "cNv" = (/obj/structure/disposaloutlet{dir = 8},/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/engine,/area/toxins/test_chamber) -"cNw" = (/turf/space,/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion"; tag = "icon-propulsion (EAST)"},/turf/simulated/shuttle/wall{icon_state = "swall_f5"; dir = 2},/area/shuttle/transport) +"cNw" = (/obj/item/paper,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cNx" = (/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "xenobio7"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/toxins/xenobiology) "cNy" = (/obj/machinery/door/window/southright{dir = 1; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "xenobio7"; name = "Containment Blast Doors"; opacity = 0},/turf/simulated/floor/engine,/area/toxins/xenobiology) "cNz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/sparker{id = "testigniter"; name = "Test Igniter"; pixel_x = -25},/turf/simulated/floor/engine,/area/toxins/test_chamber) @@ -7464,12 +7464,12 @@ "cNB" = (/turf/simulated/floor/plating,/area/maintenance/aft) "cNC" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/aft) "cND" = (/obj/structure/table,/turf/simulated/floor/plating,/area/maintenance/aft) -"cNE" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) +"cNE" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) "cNF" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/simulated/floor/plasteel/airless{icon_state = "solarpanel"},/area/solar/port) "cNG" = (/turf/simulated/floor/plating,/area/assembly/assembly_line) -"cNH" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cNI" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cNJ" = (/obj/item/paper,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cNH" = (/obj/item/pen,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cNI" = (/obj/machinery/atmospherics/unary/vent_pump{on = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cNJ" = (/obj/machinery/conveyor_switch{id = "Skynet_heavy"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cNK" = (/obj/structure/barricade/wooden,/obj/structure/grille,/turf/simulated/floor/plating,/area/assembly/assembly_line) "cNL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/hallway/primary/aft) "cNM" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/simulated/floor/plasteel/airless{icon_state = "solarpanel"},/area/solar/port) @@ -7485,7 +7485,7 @@ "cNW" = (/obj/effect/decal/warning_stripes/east,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) "cNX" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable/yellow{d1 = 0; d2 = 8; icon_state = "0-8"},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/engine/engineering) "cNY" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/floor/plating,/area/maintenance/asmaint) -"cNZ" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) +"cNZ" = (/obj/machinery/constructable_frame/machine_frame,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cOa" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) "cOb" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/smes/engineering,/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/engine/engineering) "cOc" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel,/area/engine/engineering) @@ -7510,13 +7510,13 @@ "cOv" = (/obj/machinery/light{dir = 8},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/item/radio/intercom{dir = 1; name = "station intercom (General)"; pixel_y = -28},/turf/simulated/floor/engine,/area/toxins/test_chamber) "cOw" = (/obj/effect/spawner/window/reinforced,/turf/simulated/wall,/area/maintenance/aft) "cOx" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/aft) -"cOy" = (/obj/item/pen,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cOz" = (/obj/machinery/atmospherics/unary/vent_pump{on = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cOA" = (/obj/machinery/conveyor_switch{id = "Skynet_heavy"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) -"cOB" = (/obj/machinery/constructable_frame/machine_frame,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cOy" = (/obj/structure/table/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/barricade/wooden,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cOz" = (/obj/structure/closet,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cOA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) +"cOB" = (/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 8},/obj/effect/decal/warning_stripes/arrow{icon_state = "4"; dir = 8},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cOC" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "cOD" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/engine,/area/toxins/test_chamber) -"cOE" = (/obj/structure/table/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/barricade/wooden,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cOE" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/decal/warning_stripes/yellow/partial{icon_state = "3"; dir = 4},/obj/effect/decal/warning_stripes/arrow{icon_state = "4"; dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cOF" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/extinguisher,/obj/item/extinguisher,/obj/item/extinguisher,/obj/item/extinguisher,/obj/item/extinguisher,/obj/item/extinguisher,/turf/simulated/floor/plasteel,/area/atmos) "cOG" = (/turf/simulated/floor/plating{desc = "
There is some old writing on this floor. You are barely able to read out a few lines from a tangled scribble.

In a chamber a great mirror lies, cut away it solemn cries. Travel bold as thou might, piercing vastness as a kite.

HONK!
"; name = "Old Note #6"},/area/assembly/assembly_line) "cOH" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plating,/area/assembly/assembly_line) @@ -7528,7 +7528,7 @@ "cON" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/structure/chair/comfy/black{dir = 8},/turf/simulated/floor/plasteel,/area/engine/break_room) "cOO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/obj/item/twohanded/required/kirbyplants,/turf/simulated/floor/plasteel,/area/engine/break_room) "cOP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asmaint) -"cOQ" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) +"cOQ" = (/obj/machinery/light,/obj/machinery/camera{c_tag = "Assembly Line East"; dir = 1; network = list("SS13")},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cOR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel,/area/engine/break_room) "cOS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11},/turf/simulated/floor/plating,/area/maintenance/asmaint) "cOT" = (/turf/simulated/wall/r_wall,/area/atmos/distribution) @@ -7559,7 +7559,7 @@ "cPs" = (/obj/machinery/light{dir = 1; in_use = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology) "cPt" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/camera{c_tag = "Xenobiology Module North-East"; dir = 8; network = list("Research","SS13"); pixel_y = -22},/obj/item/radio/intercom{dir = 1; name = "station intercom (General)"; pixel_x = 28; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology) "cPu" = (/obj/structure/chair,/turf/simulated/floor/plating,/area/maintenance/aft) -"cPv" = (/obj/structure/closet,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cPv" = (/obj/structure/table,/obj/item/radio/intercom{dir = 1; name = "station intercom (General)"; pixel_y = -28},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/assembly/assembly_line) "cPw" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 10; level = 2},/turf/simulated/floor/plating/airless/catwalk,/area/space) "cPx" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow,/turf/simulated/floor/plating/airless/catwalk,/area/space) "cPy" = (/obj/structure/table/reinforced,/obj/item/paper_bin,/obj/item/pen,/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/engine,/area/toxins/test_chamber) @@ -7572,7 +7572,7 @@ "cPF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/engine/engineering) "cPG" = (/turf/space,/obj/machinery/power/tracker,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) "cPH" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) -"cPI" = (/obj/structure/table,/obj/item/radio/intercom{dir = 1; name = "station intercom (General)"; pixel_y = -28},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/assembly/assembly_line) +"cPI" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) "cPJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 2; icon_state = "yellowcorner"},/area/hallway/primary/aft) "cPK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/wall,/area/engine/break_room) "cPL" = (/obj/machinery/vending/coffee,/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellowcorner"},/area/hallway/primary/aft) @@ -7590,7 +7590,7 @@ "cPX" = (/obj/machinery/camera{c_tag = "Engineering SMES"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/engine/engineering) "cPY" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/vending/cigarette,/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/turf/simulated/floor/plasteel,/area/engine/break_room) "cPZ" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/atmos/distribution) -"cQa" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) +"cQa" = (/turf/space,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) "cQb" = (/obj/machinery/particle_accelerator/control_box,/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/engine/engineering) "cQc" = (/obj/machinery/light/small{dir = 1},/obj/structure/closet/firecloset,/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/engine/engineering) "cQd" = (/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/obj/machinery/pipedispenser,/turf/simulated/floor/plasteel,/area/atmos) @@ -7606,7 +7606,7 @@ "cQn" = (/turf/simulated/wall,/area/medical/virology) "cQo" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 6; level = 2},/turf/simulated/floor/plasteel,/area/atmos/distribution) "cQp" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4; level = 2},/turf/space,/area/space) -"cQq" = (/turf/space,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) +"cQq" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "robotics_solar_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "13"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) "cQr" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/storage/box/syringes,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology) "cQs" = (/obj/structure/chair{dir = 8},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology) "cQt" = (/obj/structure/table/reinforced,/obj/item/circular_saw{pixel_y = 0},/obj/item/scalpel,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology) @@ -7646,7 +7646,7 @@ "cRb" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Singularity"; name = "Singularity Blast Doors"; opacity = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/engine/engineering) "cRc" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "atmos"; name = "Atmos Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 10; initialize_directions = 10; level = 2},/turf/simulated/floor/plating,/area/atmos/distribution) "cRd" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; level = 2},/obj/machinery/atmospherics/binary/pump{dir = 1; name = "Mix to Gas Turbine"},/turf/simulated/floor/plasteel,/area/atmos/distribution) -"cRe" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "robotics_solar_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "13"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) +"cRe" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) "cRf" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Singularity"; name = "Singularity Blast Doors"; opacity = 0},/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 32; pixel_y = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/engine/engineering) "cRg" = (/obj/machinery/atmospherics/unary/portables_connector,/obj/machinery/portable_atmospherics/canister/air,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel,/area/engine/engineering) "cRh" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "engineering_east_inner"; locked = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/engine/engineering) @@ -7704,7 +7704,7 @@ "cSh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/engine/equipmentstorage) "cSi" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "engineering_west_pump"; tag_exterior_door = "engineering_west_outer"; frequency = 1379; id_tag = "engineering_west_airlock"; tag_interior_door = "engineering_west_inner"; pixel_x = 25; req_access_txt = "10;13"; tag_chamber_sensor = "engineering_west_sensor"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "engineering_west_sensor"; pixel_x = 25; pixel_y = 12},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/engine/engineering) "cSj" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/effect/decal/warning_stripes/red/hollow,/obj/machinery/camera{c_tag = "Atmospherics North-West"; dir = 4; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/atmos) -"cSk" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) +"cSk" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) "cSl" = (/obj/machinery/atmospherics/binary/volume_pump/on{dir = 8; name = "Mix to Filter"},/turf/simulated/floor/plasteel,/area/atmos/distribution) "cSm" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{dir = 1; level = 2},/turf/simulated/floor/plasteel,/area/atmos/distribution) "cSn" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/grille,/obj/machinery/meter,/turf/simulated/wall/r_wall,/area/atmos) @@ -7788,14 +7788,14 @@ "cTN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/computer/camera_advanced/xenobio,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology) "cTO" = (/obj/item/extinguisher,/obj/item/extinguisher{pixel_x = 4; pixel_y = 4},/obj/structure/table/glass,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/sign/deathsposal{pixel_y = -32},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology) "cTP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = 0; pixel_y = -32; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology) -"cTQ" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) +"cTQ" = (/obj/effect/spawner/random_spawners/blood_maybe,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/asmaint) "cTR" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/port) "cTS" = (/obj/effect/landmark/burnturf,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "cTT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/effect/landmark/burnturf,/turf/simulated/floor/plating,/area/maintenance/asmaint2) -"cTU" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1450; master_tag = "south_maint"; name = "exterior access button"; pixel_x = -25; pixel_y = 8; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) -"cTV" = (/turf/space,/obj/machinery/access_button/airlock_exterior{master_tag = "atmospherics_south"; pixel_x = -25; pixel_y = -8},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cTU" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plating,/area/maintenance/asmaint) +"cTV" = (/obj/machinery/atmospherics/binary/pump{dir = 4},/obj/effect/decal/cleanable/cobweb,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/light_switch{pixel_y = 27},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "cTW" = (/turf/space,/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) -"cTX" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_xeno_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "13"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"cTX" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 10; level = 2},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "cTY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "robotics_solar_pump"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "robotics_solar_pump"; tag_exterior_door = "robotics_solar_outer"; frequency = 1379; id_tag = "robotics_solar_airlock"; tag_interior_door = "robotics_solar_inner"; pixel_x = 0; pixel_y = -25; req_access_txt = "13"; tag_chamber_sensor = "robotics_solar_sensor"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "robotics_solar_sensor"; pixel_x = 12; pixel_y = -25},/turf/simulated/floor/plating,/area/maintenance/portsolar) "cTZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "robotics_solar_outer"; locked = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/simulated/floor/plating,/area/maintenance/portsolar) "cUa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9; icon_state = "intact"},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "robotics_solar_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating,/area/maintenance/portsolar) @@ -7826,7 +7826,7 @@ "cUz" = (/obj/effect/landmark{name = "lightsout"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel,/area/engine/equipmentstorage) "cUA" = (/obj/structure/table,/obj/machinery/requests_console{department = "Engineering"; departmentType = 3; name = "Engineering Requests Console"; pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/turf/simulated/floor/plasteel,/area/engine/equipmentstorage) "cUB" = (/obj/machinery/door_control{id = "Singularity"; name = "Singularity Blast Doors"; pixel_x = -25; pixel_y = 0; req_access_txt = "10"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/warning_stripes/west,/turf/simulated/floor/plasteel,/area/engine/engineering) -"cUC" = (/turf/space,/obj/structure/transit_tube{icon_state = "E-W-Pass"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cUC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "cUD" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/engine/engineering) "cUE" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/engine/engineering) "cUF" = (/obj/structure/grille,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless,/area/engine/engineering) @@ -7860,7 +7860,7 @@ "cVh" = (/obj/machinery/computer/security/engineering,/obj/machinery/light_switch{pixel_x = -27},/turf/simulated/floor/plasteel,/area/engine/engineering) "cVi" = (/obj/structure/chair{dir = 1},/turf/simulated/floor/plasteel,/area/engine/engineering) "cVj" = (/turf/simulated/floor/plasteel,/area/engine/engineering) -"cVk" = (/turf/space,/obj/item/wrench,/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cVk" = (/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/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/turbine) "cVl" = (/obj/machinery/power/solar_control{id = "portsolar"; name = "Aft Port Solar Control"; track = 0},/obj/structure/cable,/turf/simulated/floor/plating,/area/maintenance/portsolar) "cVm" = (/obj/machinery/camera{c_tag = "Aft Port Solar Control"; dir = 1; network = list("SS13")},/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "south bump Engineering"; pixel_y = -24; shock_proof = 1},/turf/simulated/floor/plating,/area/maintenance/portsolar) "cVn" = (/obj/structure/closet/wardrobe/black,/obj/machinery/camera{c_tag = "Aft Port Solar Access"; dir = 1; network = list("SS13")},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plating,/area/maintenance/aft) @@ -7883,7 +7883,7 @@ "cVE" = (/turf/simulated/wall,/area/atmos/distribution) "cVF" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/obj/item/stack/rods{amount = 50},/turf/simulated/floor/plasteel,/area/engine/equipmentstorage) "cVG" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plasteel,/area/engine/engineering) -"cVH" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"cVH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/disposal,/obj/structure/sign/deathsposal{pixel_y = 32},/obj/structure/disposalpipe/trunk,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/turbine) "cVI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel,/area/atmos) "cVJ" = (/obj/machinery/door_control{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = 24; pixel_y = 4; req_access_txt = "24"},/obj/machinery/atmospherics/pipe/simple/visible/purple,/turf/simulated/floor/plasteel,/area/atmos) "cVK" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4; level = 2},/obj/machinery/atmospherics/pipe/simple/hidden/yellow,/turf/simulated/floor/plating,/area/atmos/distribution) @@ -7925,7 +7925,7 @@ "cWu" = (/turf/simulated/floor/plasteel,/area/engine/hardsuitstorage) "cWv" = (/obj/structure/table,/obj/item/toy/plushie/octopus,/obj/machinery/camera{c_tag = "Departure Lounge East"; dir = 8; network = list("SS13")},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/hallway/secondary/exit) "cWw" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/toxins/xenobiology) -"cWx" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "ai_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "75;13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cWx" = (/obj/machinery/power/smes{capacity = 9e+006; charge = 10000},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "cWy" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) "cWz" = (/obj/item/radio/intercom{name = "station intercom (General)"; pixel_x = -28; pixel_y = 0},/obj/machinery/computer/monitor{name = "Grid Power Monitoring Computer"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plasteel,/area/engine/engineering) "cWA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel,/area/hallway/secondary/exit) @@ -7966,7 +7966,7 @@ "cXj" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "purplecorner"},/area/hallway/secondary/exit) "cXk" = (/obj/item/flag/nt,/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plasteel,/area/hallway/secondary/exit) "cXl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/effect/decal/warning_stripes/southeastcorner,/turf/simulated/floor/plasteel,/area/hallway/secondary/exit) -"cXm" = (/turf/space,/obj/structure/cable,/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"cXm" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4; level = 2},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "cXn" = (/obj/machinery/camera{c_tag = "Departure Lounge West"; dir = 4; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "purple"},/area/hallway/secondary/exit) "cXo" = (/obj/structure/chair{dir = 4},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel{dir = 8; icon_state = "purple"},/area/hallway/secondary/exit) "cXp" = (/obj/structure/chair,/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hallway/secondary/exit) @@ -8012,7 +8012,7 @@ "cYd" = (/obj/structure/chair,/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hallway/secondary/exit) "cYe" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hallway/secondary/exit) "cYf" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "n2o_sensor"},/turf/simulated/floor/engine/n20,/area/atmos) -"cYg" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 6; level = 2},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cYg" = (/obj/machinery/atmospherics/binary/pump{dir = 8; name = "Mix to MiniSat"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "cYh" = (/obj/structure/chair{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "purple"},/area/hallway/secondary/exit) "cYi" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/asmaint) "cYj" = (/obj/structure/chair/stool,/turf/simulated/floor/plating,/area/maintenance/asmaint) @@ -8030,7 +8030,7 @@ "cYv" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/secondary/exit) "cYw" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/secondary/exit) "cYx" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plasteel,/area/hallway/secondary/exit) -"cYy" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"cYy" = (/obj/machinery/atmospherics/pipe/manifold4w/visible,/obj/machinery/meter,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "cYz" = (/obj/docking_port/stationary{dir = 2; dwidth = 2; height = 18; id = "skipjack_se"; name = "southeast of SS13"; width = 19},/turf/space,/area/space) "cYA" = (/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/engi_shuttle) "cYB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) @@ -8131,7 +8131,7 @@ "das" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asmaint2) "dat" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/escapepodbay) "dau" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/obj/structure/window/reinforced/tinted{dir = 1},/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"; tag = ""},/obj/structure/window/reinforced/tinted,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/asmaint2) -"dav" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"dav" = (/obj/machinery/atmospherics/binary/pump{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "daw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/engine/engineering) "dax" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/effect/decal/cleanable/generic,/obj/machinery/camera{c_tag = "Engineering Shuttle Access"; dir = 8; network = list("SS13")},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) "day" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/engine/engineering) @@ -8231,24 +8231,24 @@ "dco" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/central/ne) "dcp" = (/obj/machinery/porta_turret{dir = 1},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "darkbluecorners"},/area/turret_protected/aisat_interior) "dcq" = (/obj/machinery/door/airlock/external{aiControlDisabled = 0; frequency = 1379; hackProof = 0; icon_state = "door_locked"; id_tag = "atmospherics_south_outer"; locked = 1; name = "Atmospherics External Access"; req_access_txt = "13"},/turf/simulated/floor/plating,/area/engine/engineering) -"dcr" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"dcr" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 10},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "dcs" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/decal/cleanable/fungus,/turf/simulated/wall/r_wall,/area/engine/engineering) "dct" = (/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor/plasteel,/area/atmos) -"dcu" = (/turf/space,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"dcu" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "dcv" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/turf/simulated/floor/plasteel,/area/atmos) "dcw" = (/obj/structure/closet/radiation,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/machinery/light/small{dir = 8},/obj/effect/decal/warning_stripes/southwestcorner,/turf/simulated/floor/plasteel{dir = 9; icon_state = "yellow"},/area/engine/engineering) -"dcx" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) -"dcy" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) -"dcz" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/shuttle/pod_4) -"dcA" = (/turf/simulated/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint) +"dcx" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/alarm{dir = 8; pixel_x = 25; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"dcy" = (/obj/machinery/atmospherics/unary/tank/toxins{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"dcz" = (/obj/machinery/atmospherics/binary/pump{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"dcA" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4; initialize_directions = 11; level = 2},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "dcB" = (/obj/structure/chair/comfy/black{dir = 4},/obj/effect/landmark/start{name = "Life Support Specialist"},/turf/simulated/floor/plasteel,/area/engine/break_room) "dcC" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall/r_wall,/area/medical/virology) "dcD" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plating,/area/maintenance/asmaint) "dcE" = (/obj/structure/chair/comfy/black{dir = 8},/obj/effect/landmark/start{name = "Life Support Specialist"},/turf/simulated/floor/plasteel,/area/engine/break_room) -"dcF" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1450; master_tag = "sci_maint"; name = "exterior access button"; pixel_x = 8; pixel_y = 25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk0"; icon_state = "catwalk0"},/area/space) +"dcF" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/dirt,/mob/living/simple_animal/mouse,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "dcG" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel,/area/engine/break_room) -"dcH" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_4) -"dcI" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"dcH" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"dcI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "dcJ" = (/obj/structure/table,/obj/item/flashlight/lamp,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "dcK" = (/obj/structure/chair/stool,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "dcL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor/plasteel,/area/atmos) @@ -8257,26 +8257,46 @@ "dcO" = (/obj/machinery/atmospherics/trinary/filter{density = 0; dir = 1; name = "Gas filter (Toxins tank)"; on = 1},/turf/simulated/floor/plasteel,/area/atmos) "dcP" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/storage/secure) "dcQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/storage/secure) -"dcR" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"dcR" = (/obj/machinery/atmospherics/unary/portables_connector,/obj/machinery/portable_atmospherics/canister,/obj/structure/sign/nosmoking_2{pixel_x = 32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "dcS" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 4; level = 2},/obj/machinery/atmospherics/pipe/simple/heat_exchanging,/turf/space,/area/space) "dcT" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 8; frequency = 1441; icon_state = "on"; id = "tox_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) "dcU" = (/obj/machinery/door/airlock/external{id_tag = "engineering_home"; name = "Engineering Dock Airlock"; req_access_txt = "0"; req_one_access_txt = "10;24"},/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) -"dcV" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"dcV" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/oxygen,/obj/structure/sign/nosmoking_2{pixel_x = -32},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "dcW" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{id_tag = "Secure Storage"; name = "Secure Storage Blast Doors"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/storage/secure) "dcX" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel,/area/engine/engineering) "dcY" = (/obj/effect/decal/warning_stripes/north,/obj/machinery/conveyor/west{id = "QMLoad"},/turf/simulated/floor/plating,/area/quartermaster/storage) "dcZ" = (/obj/machinery/bodyscanner,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate) -"dda" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"dda" = (/obj/machinery/atmospherics/binary/valve,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "ddb" = (/obj/structure/particle_accelerator/end_cap,/turf/simulated/floor/plating,/area/engine/engineering) -"ddc" = (/turf/space,/obj/structure/cable,/obj/machinery/power/tracker,/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"ddc" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"dde" = (/obj/machinery/atmospherics/binary/pump{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddf" = (/obj/structure/table,/obj/item/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/pen,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddg" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddh" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/obj/machinery/meter,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddi" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddj" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/binary/valve{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddl" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4; initialize_directions = 11; level = 2},/obj/machinery/meter,/obj/machinery/light{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "ddm" = (/obj/machinery/portable_atmospherics/pump,/turf/simulated/floor/plasteel,/area/atmos) +"ddn" = (/obj/structure/reagent_dispensers/fueltank,/obj/item/storage/toolbox/emergency,/obj/item/radio/intercom{pixel_y = -30},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddo" = (/obj/structure/reagent_dispensers/watertank,/obj/item/extinguisher,/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/machinery/light/small,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddp" = (/obj/machinery/atmospherics/pipe/simple/visible/purple,/obj/machinery/computer/turbine_computer{id = "incineratorturbine"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddq" = (/obj/machinery/hologram/holopad,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "ddr" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = -32},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "Engineering"; name = "Engineering Security Doors"; opacity = 0},/obj/machinery/door/airlock/external{name = "Engineering Escape Pod"; req_access = null; req_access_txt = "10"},/turf/simulated/floor/plating,/area/engine/engineering) "dds" = (/obj/machinery/portable_atmospherics/pump,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel,/area/atmos) "ddt" = (/obj/machinery/atmospherics/binary/pump{dir = 0; name = "Port to Filter"; on = 0},/turf/simulated/floor/plasteel,/area/atmos) "ddu" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/visible{dir = 5},/obj/item/wrench,/obj/machinery/light/small{dir = 8},/obj/effect/decal/warning_stripes/southwest,/turf/simulated/floor/plating,/area/maintenance/asmaint) +"ddv" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/door_control{id = "auxiliaryturbinevent"; name = "Auxiliary Vent"; pixel_x = 6; pixel_y = -24; req_access_txt = "32"},/obj/machinery/door_control{id = "turbinevent"; name = "Turbine Vent"; pixel_x = -6; pixel_y = -24; req_access_txt = "32"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) "ddw" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/canister/air,/obj/effect/decal/warning_stripes/southeast,/turf/simulated/floor/plating,/area/maintenance/asmaint) "ddx" = (/obj/machinery/camera{c_tag = "Atmospherics Central"; dir = 8; network = list("SS13")},/turf/simulated/floor/plasteel,/area/atmos) +"ddy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddz" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/embedded_controller/radio/airlock/access_controller{frequency = 1449; id_tag = "turbine_control"; name = "Turbine Access Console"; pixel_x = 6; pixel_y = -26; req_access_txt = "12"; tag_exterior_door = "gas_turbine_exterior"; tag_interior_door = "gas_turbine_interior"},/obj/machinery/ignition_switch{id = "gasturbine"; pixel_x = -6; pixel_y = -24},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plasteel,/area/maintenance/turbine) +"ddA" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1450; master_tag = "south_maint"; name = "exterior access button"; pixel_x = -25; pixel_y = 8; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "ddB" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/asmaint2) +"ddC" = (/turf/space,/obj/machinery/access_button/airlock_exterior{master_tag = "atmospherics_south"; pixel_x = -25; pixel_y = -8},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"ddD" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_xeno_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "13"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"ddE" = (/turf/space,/obj/structure/transit_tube{icon_state = "E-W-Pass"},/turf/simulated/floor/plating/airless/catwalk,/area/space) "ddF" = (/obj/structure/sign/biohazard{pixel_y = 32},/turf/space,/area/space) "ddG" = (/obj/machinery/field/generator,/turf/simulated/floor/plating,/area/storage/secure) "ddH" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/asmaint) @@ -8284,10 +8304,27 @@ "ddJ" = (/obj/structure/table,/obj/item/paper_bin,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "ddK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/asmaint2) "ddL" = (/obj/structure/lattice,/obj/docking_port/stationary{dir = 8; dwidth = 3; height = 5; id = "sit_engshuttle"; name = "Cyberiad Eng Shuttle"; width = 11},/turf/space,/area/space) +"ddM" = (/turf/space,/obj/item/wrench,/turf/simulated/floor/plating/airless/catwalk,/area/space) +"ddN" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"ddO" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "ai_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "75;13"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"ddP" = (/turf/space,/obj/structure/cable,/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"ddQ" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 6; level = 2},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"ddR" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) "ddS" = (/obj/structure/particle_accelerator/fuel_chamber,/turf/simulated/floor/plating,/area/engine/engineering) +"ddT" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"ddU" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"ddV" = (/turf/space,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"ddW" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"ddX" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"ddY" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/shuttle/pod_4) "ddZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/engine/engineering) "dea" = (/obj/machinery/space_heater,/turf/simulated/floor/plasteel,/area/atmos) +"deb" = (/turf/space,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1450; master_tag = "sci_maint"; name = "exterior access button"; pixel_x = 8; pixel_y = 25; req_access_txt = "13"},/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk0"; icon_state = "catwalk0"},/area/space) "dec" = (/obj/machinery/atmospherics/pipe/manifold/visible,/turf/simulated/floor/plasteel,/area/atmos) +"ded" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_4) +"dee" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"def" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"deg" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) "deh" = (/obj/machinery/space_heater,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel,/area/atmos) "dei" = (/obj/machinery/atmospherics/unary/heat_reservoir/heater{dir = 8; icon_state = "freezer_0"; tag = ""},/turf/simulated/floor/plasteel,/area/atmos) "dej" = (/obj/machinery/atmospherics/pipe/simple/visible/green{level = 2},/obj/machinery/atmospherics/binary/pump{dir = 8; name = "CO2 to Pure"; on = 0},/turf/simulated/floor/plasteel,/area/atmos) @@ -8295,6 +8332,8 @@ "del" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4; level = 2},/obj/machinery/atmospherics/pipe/simple/heat_exchanging,/turf/space,/area/space) "dem" = (/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) "den" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; icon_state = "in"; id_tag = "co2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) +"deo" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) +"dep" = (/turf/space,/obj/structure/cable,/obj/machinery/power/tracker,/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) "der" = (/obj/structure/table,/turf/simulated/floor/plating,/area/maintenance/asmaint) "des" = (/obj/machinery/light/small{dir = 8},/obj/machinery/field/generator,/turf/simulated/floor/plating,/area/storage/secure) "deu" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/wall,/area/engine/engineering) @@ -8418,15 +8457,9 @@ "dhJ" = (/obj/machinery/camera{c_tag = "Atmospherics South-East"; dir = 1; network = list("SS13")},/obj/machinery/atmospherics/binary/valve/digital/open{name = "Mixed Air Outlet Valve"},/turf/simulated/floor/plasteel{icon_state = "arrival"; dir = 6},/area/atmos) "dhL" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4; level = 2},/turf/simulated/wall/r_wall,/area/maintenance/turbine) "dhM" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 5; tag = "icon-intact-y (NORTHWEST)"},/turf/simulated/wall/r_wall,/area/maintenance/turbine) -"dhN" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 10; level = 2},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dhO" = (/obj/machinery/atmospherics/binary/pump{dir = 4},/obj/effect/decal/cleanable/cobweb,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/light_switch{pixel_y = 27},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "dhP" = (/obj/structure/grille/broken,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/asmaint) "dhQ" = (/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/asmaint) "dhR" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/maintenance/asmaint2) -"dhS" = (/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/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plating,/area/maintenance/turbine) -"dhT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dhU" = (/obj/machinery/power/smes{capacity = 9e+006; charge = 10000},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dhV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/disposal,/obj/structure/sign/deathsposal{pixel_y = 32},/obj/structure/disposalpipe/trunk,/turf/simulated/floor/plating,/area/maintenance/turbine) "dhW" = (/obj/structure/chair{dir = 4},/obj/machinery/light,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite) "dhX" = (/obj/machinery/computer/atmos_alert,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/constructionsite) "dhY" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating,/area/maintenance/asmaint) @@ -8439,9 +8472,6 @@ "dif" = (/turf/simulated/shuttle/wall{tag = "icon-swall2"; icon_state = "swall2"; dir = 2},/area/shuttle/constructionsite) "dij" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "atmos"; name = "Atmos Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 9},/turf/simulated/floor/plating,/area/atmos) "dik" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "atmos"; name = "Atmos Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 6},/turf/simulated/floor/plating,/area/atmos) -"dil" = (/obj/machinery/atmospherics/pipe/manifold4w/visible,/obj/machinery/meter,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dim" = (/obj/machinery/atmospherics/binary/pump{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"din" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 10},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "dio" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "atmos"; name = "Atmos Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/plating,/area/atmos) "dip" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "atmos"; name = "Atmos Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/visible/yellow{level = 2},/turf/simulated/floor/plating,/area/atmos) "diq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall,/area/maintenance/asmaint) @@ -8449,10 +8479,6 @@ "dis" = (/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor/plating,/area/aisat{name = "\improper AI Satellite Hallway"}) "dit" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id_tag = "atmos"; name = "Atmos Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/visible/green{level = 2},/turf/simulated/floor/plating,/area/atmos) "diu" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 6; level = 2},/obj/structure/lattice,/turf/space,/area/space) -"div" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4; level = 2},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"diw" = (/obj/machinery/atmospherics/binary/pump{dir = 8; name = "Mix to MiniSat"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dix" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/alarm{dir = 8; pixel_x = 25; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"diy" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "diz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5; level = 1},/turf/simulated/floor/plating,/area/maintenance/asmaint2) "diA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating,/area/maintenance/asmaint2) "diB" = (/obj/structure/chair,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating,/area/maintenance/asmaint2) @@ -8483,11 +8509,6 @@ "djb" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 4},/obj/structure/lattice,/turf/space,/area/space) "djc" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 9},/obj/structure/lattice,/turf/space,/area/space) "djd" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow,/obj/structure/lattice,/turf/space,/area/space) -"dje" = (/obj/machinery/atmospherics/unary/tank/toxins{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"djf" = (/obj/machinery/atmospherics/binary/pump{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"djh" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/mob/living/simple_animal/mouse,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dji" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"djk" = (/obj/machinery/atmospherics/unary/portables_connector,/obj/machinery/portable_atmospherics/canister,/obj/structure/sign/nosmoking_2{pixel_x = 32},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "djl" = (/obj/structure/table,/obj/item/cartridge/medical,/turf/simulated/floor/plating,/area/maintenance/asmaint) "djm" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/asmaint) "djo" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/asmaint2) @@ -8495,17 +8516,12 @@ "djr" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "djs" = (/obj/machinery/power/emitter,/turf/simulated/floor/plating,/area/storage/secure) "djv" = (/obj/item/multitool,/turf/simulated/floor/plating/airless,/area/engine/engineering) -"djw" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4; initialize_directions = 11; level = 2},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"djx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "djy" = (/obj/structure/lattice,/obj/item/wirecutters,/turf/space,/area/space) "djz" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/item/latexballon,/turf/simulated/floor/plating,/area/maintenance/asmaint) "djA" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/obj/structure/window/reinforced/tinted{dir = 1},/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"; tag = ""},/obj/structure/window/reinforced/tinted,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "djB" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/grille,/obj/machinery/meter,/turf/simulated/wall/r_wall,/area/atmos) "djC" = (/obj/machinery/camera{c_tag = "Aft Starboard Solar Access"; dir = 1},/turf/simulated/floor/plating,/area/maintenance/asmaint2) "djE" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/visible/yellow,/turf/space,/area/space) -"djF" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/oxygen,/obj/structure/sign/nosmoking_2{pixel_x = -32},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"djG" = (/obj/machinery/atmospherics/binary/valve,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"djJ" = (/obj/machinery/atmospherics/binary/pump{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "djK" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/maintenance/turbine) "djM" = (/obj/item/shard,/turf/simulated/floor/plating,/area/maintenance/asmaint) "djN" = (/obj/structure/disposalpipe/segment,/obj/item/cigbutt/roach,/turf/simulated/floor/plating,/area/maintenance/asmaint) @@ -8514,8 +8530,6 @@ "djS" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/grille,/obj/machinery/meter{frequency = 1443; id = "mair_in_meter"; name = "Mixed Air Tank In"},/turf/simulated/wall/r_wall,/area/atmos) "djT" = (/obj/structure/lattice,/obj/structure/lattice,/obj/structure/lattice,/turf/space,/area/space) "djU" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/structure/grille,/obj/machinery/meter{frequency = 1443; id = "mair_out_meter"; name = "Mixed Air Tank Out"},/turf/simulated/wall/r_wall,/area/atmos) -"djV" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"djW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "djX" = (/obj/structure/disposalpipe/segment,/obj/structure/closet,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "djY" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/wall,/area/maintenance/asmaint) "djZ" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/engine/engineering) @@ -8526,10 +8540,6 @@ "dki" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 1; frequency = 1441; icon_state = "on"; id = "n2_in"; on = 1},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos) "dkj" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/turbine) "dkk" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 0; frequency = 1441; icon_state = "in"; id_tag = "n2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos) -"dkl" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dkm" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/obj/machinery/meter,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dkn" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dko" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "dkp" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "o2_sensor"},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/atmos) "dkq" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 1; frequency = 1441; icon_state = "on"; id = "o2_in"; on = 1},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/atmos) "dkr" = (/obj/machinery/portable_atmospherics/canister,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/maintenance/asmaint) @@ -8539,20 +8549,14 @@ "dkv" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "dkw" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 1; frequency = 1441; icon_state = "on"; id = "o2_in"; on = 1},/turf/simulated/floor/engine{name = "air floor"; nitrogen = 10580; oxygen = 2644},/area/atmos) "dkx" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; external_pressure_bound = 0; frequency = 1443; icon_state = "in"; id_tag = "air_out"; internal_pressure_bound = 2000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{name = "air floor"; nitrogen = 10580; oxygen = 2644},/area/atmos) -"dky" = (/obj/structure/table,/obj/item/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/pen,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "dkz" = (/obj/effect/decal/warning_stripes/northwest,/turf/simulated/floor/plating/airless,/area/space) "dkA" = (/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plating/airless,/area/space) "dkB" = (/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plating/airless,/area/space) "dkC" = (/obj/item/crowbar,/turf/space,/area/space) -"dkD" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4; initialize_directions = 11; level = 2},/obj/machinery/meter,/obj/machinery/light{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dkE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/binary/valve{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "dkF" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/maintenance/asmaint2) "dkG" = (/obj/machinery/door/airlock/maintenance{name = "Biohazard Disposals"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/asmaint) "dkH" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "dkI" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "west bump Engineering"; pixel_x = -24; shock_proof = 1},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) -"dkJ" = (/obj/structure/reagent_dispensers/fueltank,/obj/item/storage/toolbox/emergency,/obj/item/radio/intercom{pixel_y = -30},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dkK" = (/obj/structure/reagent_dispensers/watertank,/obj/item/extinguisher,/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/machinery/light/small,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dkL" = (/obj/machinery/atmospherics/pipe/simple/visible/purple,/obj/machinery/computer/turbine_computer{id = "incineratorturbine"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "dkM" = (/obj/machinery/power/smes{charge = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "dkO" = (/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos) "dkP" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asmaint) @@ -8560,9 +8564,6 @@ "dkS" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asmaint) "dkT" = (/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/atmos) "dkV" = (/turf/simulated/floor/engine{name = "air floor"; nitrogen = 10580; oxygen = 2644},/area/atmos) -"dkW" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/door_control{id = "auxiliaryturbinevent"; name = "Auxiliary Vent"; pixel_x = 6; pixel_y = -24; req_access_txt = "32"},/obj/machinery/door_control{id = "turbinevent"; name = "Turbine Vent"; pixel_x = -6; pixel_y = -24; req_access_txt = "32"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dkX" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/embedded_controller/radio/airlock/access_controller{frequency = 1449; id_tag = "turbine_control"; name = "Turbine Access Console"; pixel_x = 6; pixel_y = -26; req_access_txt = "12"; tag_exterior_door = "gas_turbine_exterior"; tag_interior_door = "gas_turbine_interior"},/obj/machinery/ignition_switch{id = "gasturbine"; pixel_x = -6; pixel_y = -24},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) -"dkY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/turbine) "dkZ" = (/obj/machinery/atmospherics/binary/pump{dir = 4; name = "gas pump"},/turf/simulated/floor/plating,/area/maintenance/asmaint) "dla" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plating,/area/maintenance/asmaint) "dlb" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1450; master_tag = "south_maint"; name = "interior access button"; pixel_x = 25; pixel_y = -25; req_access_txt = "13"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor/plating,/area/maintenance/asmaint) @@ -8941,59 +8942,59 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacTabIabIabIabIabQacIabVacJacUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNabNacaabYaccabNabNaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQadeabVabVadfabQacIabVacJabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNacgachaciachacjabNaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQadeabVadyadzabQacIabVacJabQabIadBadAadCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacoacpachaciachacpacoaaaaaaaaaaabaabaabaaaaaaaabaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQadSabVabVadTabQadUabVacfadWadVadVadVabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacuactacwacvacwacxacyaaaaaaaaaabNabNabNabNabNaabaabaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQadSabVabVadTabQadUabVacfadWadVadVadVabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacuactacvacwacvacxacyaaaaaaaaaabNabNabNabNabNaabaabaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQadeabVabVabVaesabVabVaetaeuaevaevaewabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaexaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaababNacBacCacDachacEabNaaaaaaaababNacFacHacGabNabNabNaaaaaaaabaabaabafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQadeabVabVabVaePabVabVabVaeQaeRaeRaeSabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaabNacKacLacDacMacNabNaaaaabaababNacbacPacOacRacSabNaaaaabaabafOaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacTabIabIabIabIabIabIafgabVabVabIabIabIabIabIabIadCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOabNacoabNacVacWacXacYacWabNacZadaabPabNacWacQacWacWacWabNabNabNabNabNabNabNabNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQafzafzafAafBafCabQafDabVabVabQafEafFafGafHafIabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababNadgadhacKadhacDadiadjadkaciadlachadmadbaddadcadqadradsacWaduadtadwadvadxabNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQabVabVabVadyabVafPabVabVabVafQabVadyabVadyafRabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaabNadDadEadFadoacDadGachachadHadIadladJadnadpadladladNadOacWadPadPadQadRadRacoaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafZagbagaagcaaaaaaaaaafZaaaaaaaaaagcaaaaaaaaaafZagdageagcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQagfabVabVabVabVaggabVabVabVaghabVabVabVabVagiabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNadXacwadYacwadZadLadKaeaadMaecaebaeeaedaegaefacwaehaehaeiaejaemaekaeoaeraeqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwagyagxagwaaaaaaafZagwagzagBagAagwagcaaaaaaagwagCagDagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQagEabVagFahvagGabQagHagIagHabQagJagKabVabVabVabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNadlaenaelaeAaeBaeCaeDaeAaeAaeEaepaeGaeHaeAaeyaeFaezaezaeIaeJaeLaeNaeLadRaeOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwagXagYagwaaaafZagZahaahbahcahdahaagZagcaaaagwaheahfagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQabVabVahgabQabIabQabVahhahiabQabIabQabVabVabVabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNabNabNaeKaeWaeVaeXacWaeYaeYacWafaafaacWafcafcabNabNabNabNaeTaeMaeZaeUadRaffaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwahmahlahnaaaahoahpahaahaahqahaahaahpahraaaahsahtahuagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQahwdcZahxabQaaaabQahyahyahyabQaaaabQahzahAahBabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababNafhachafiadiacWachafbacWachafdacWachafeabNafjafOabNaflafkafkafkafxabNafmafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagZahIagZaaaaaaahJahpahaahKahLahaahaahpahMaaaaaaagZahIagZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQahyahyahyabQaaaacqahNahOahPacsaaaabQahyahyahyabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNafJacWafKafLacWafMafNacWafMafNacWafMafNabNaabafOabNabNabNabNabNabNabNafXafXafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagZahIagZagZagZagZagZagZagZahZagZagZagZagZagZagZagZahIagZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqahNahOahPacsaaaaaaaaaaaaaaaaaaaaaacqahNahOahPacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNabNabNabNafJacWafSafTacWafnafnacWafoafoacWafpafpabNafqaabaabaabaabaaaaaaafraabafOafXafXafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahoahIailailailailailailagwaimagwailailailailailailahIahraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNagkagjagmaglagoagnagqagpagragrafsagsagsaftagsagvabNaabaabaabaabaabaaaaaaaaaaabaaaafOafXafXafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiCaiDaiEaiFaiGaiHagwahZagZahZagZahZagwaiIaiJaiKaiLaiDaiMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNagMagLagNagOagPagQafvafuafUafwafUafVafYafWagPagWabNaaaaaaaabaaaaabaabaivaivaivaivaaaafOafXafXafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahJaiDahaahaahaajdagwahaahaahaahaahaagwahaahaajeahaaiDahMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacTabIabIabIabIabIabIafgabVabVabIabIabIabIabIabIadCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOabNacoabNacVacWacQacXacWabNacZadaabPabNacWacYacWacWacWabNabNabNabNabNabNabNabNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQafzafzafAafBafCabQafDabVabVabQafEafFafGafHafIabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababNadbadcacKadcacDadgadhadiaciadjachadkadladdadmadnadradsacWaduadtadwadvadxabNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQabVabVabVadyabVafPabVabVabVafQabVadyabVadyafRabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaabNadpadqadDadoacDadEachachadFadGadjadHadIadJadjadjadNadOacWadPadPadQadRadRacoaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafZagbagaagcaaaaaaaaaafZaaaaaaaaaagcaaaaaaaaaafZagdageagcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQagfabVabVabVabVaggabVabVabVaghabVabVabVabVagiabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNadKacvadLacvadMadXadYadZaeaaebaecaedaeeaefaegacvaehaehaeiaejaemaekaeoaeraeqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwagyagxagwaaaaaaafZagwagzagBagAagwagcaaaaaaagwagCagDagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQagEabVagFahvagGabQagHagIagHabQagJagKabVabVabVabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNadjaelaenaepaeyaezaeAaepaepaeBaeCaeDaeEaepaeFaeGaeHaeHaeIaeJaeLaeNaeLadRaeOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwagXagYagwaaaafZagZahaahbahcahdahaagZagcaaaagwaheahfagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQabVabVahgabQabIabQabVahhahiabQabIabQabVabVabVabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNabNabNaeKaeVaeWaeXacWaeYaeYacWafaafaacWafbafbabNabNabNabNaeTaeMaeZaeUadRaffaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwahmahlahnaaaahoahpahaahaahqahaahaahpahraaaahsahtahuagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQahwdcZahxabQaaaabQahyahyahyabQaaaabQahzahAahBabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababNafcachafdadgacWachafeacWachafhacWachafiabNafjafOabNaflafkafkafkafxabNafmafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagZahIagZaaaaaaahJahpahaahKahLahaahaahpahMaaaaaaagZahIagZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQahyahyahyabQaaaacqahNahOahPacsaaaabQahyahyahyabQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNafJacWafKafLacWafnafoacWafnafoacWafnafoabNaabafOabNabNabNabNabNabNabNafXafXafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagZahIagZagZagZagZagZagZagZahZagZagZagZagZagZagZagZahIagZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqahNahOahPacsaaaaaaaaaaaaaaaaaaaaaacqahNahOahPacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNabNabNabNafJacWafSafTacWafpafpacWafvafvacWafMafMabNafqaabaabaabaabaaaaaaafraabafOafXafXafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahoahIailailailailailailagwaimagwailailailailailailahIahraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNagkagjagmaglagoafNagnagpagragrafsagsagsaftagsagvabNaabaabaabaabaabaaaaaaaaaaabaaaafOafXafXafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiCaiDaiEaiFaiGaiHagwahZagZahZagZahZagwaiIaiJaiKaiLaiDaiMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNagMagLagNagOagPagqagQafuafUafwafUafVafYafWagPagWabNaaaaaaaabaaaaabaabaivaivaivaivaaaafOafXafXafOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahJaiDahaahaahaajdagwahaahaahaahaahaagwahaahaajeahaaiDahMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNabNabNabNabNabNahjahkabNabNabNabNabNabNabNagtagtagtagtagtagtagtaaaaguaivagSagRaivaguaaaafOafXafXagUagTagTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwajzajAajBajCajDagwajEahaahaahaajFagwajGahaajHajIajzagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNagVahDahCabNahEaigacWahFahFahFahFahFahFagtahHahRagtahTahSagtaaaaivahUahVahVahWaivaaaaaaafOafXagTahXahYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwajYajYagZagZagZagwajZahaahaahaakaagwagZagZagZajYajYagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabNaiaaicaibaieaidaitabNahFahFahFahFahFahFagtaifaijahGainaikagtaaaaivaioaiqaipairaivaaaaaaaaaagTagTaisagTagTagTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahsakpakpahnaaaaaaagwakqahaahaahaakragwaaaaaaahsakpakpahnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahQahQahQahQahQahQaiiaigaiuahFahFahFahFahFahFagtaiwaiyaixannaizagtaivaivaiAaiNaiBaiOaivaivaaaaabagTaiQaiPaiSaiRanAaaaanHaiTaiVaiUanHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwakAahaahaahaakragwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahQahQahQahQaiZaiXajfajaahQajgaolakjahFahFahFahFahFahFalealgajiajhajlajkajnajmajpajoajrajqajLajKaivaaaajMagTajOajNajQajPanAanHanHajRajTajSanHanHaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwakRakPahZakRakPagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajWajUakcakbakeakdakhakgahQakiaitalcahFahFahFahFahFahFajnaYmanWakkannanWaklajjajjakmajjaksakwaktaivaabaabagTakCakxakEakDanAakvakFaoJaoJakGakIakHakJakKakMakLakNaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvalvalvalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwalxalyahaalzalAagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajWakOakSakQakVakTalaakYaldalbaitaleahFahFahFahFahFahFagtalfalgakkalialhajnaljallalkalnalmakfakuaivanHanHanAanAanAanAaloanAalpalralqalualtalFalCakHaiYaiYaiYalHaihaihaaaaaaaaaajbajbajbajbajbajbajbalIalJaaaabpaaaaaaalvaaaaabaaaamhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwamiamjahaamkamlagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajWalKalMalLalOalNalQalPahQalRalSabNahFahFahFahFahFahFagtagtalUalTapPagtagtalValWaivalYalXalZaivaivanHambamaamdamcamfameanAalGaoJamgamnammalFampalCamvajVamsamuamtaihaaaaaaaaaajbajsajtajvajuajwajxajyaaaaaaaaaaaaaaaamWaabamUaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahsagZamYamZanaagZahnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahQahQaqqahQahQahQahQahQahQamwaigapFapFapFapFapFapFapFapFamxamzamyamzamAamCamBamEamDamGamFamIamHamJauiaoJamKamKamKamKamLamqaoJamMamramOamNamQamPamTamSanbamXandancaneaaaaaaaabajbajXajwajwajwajwajxajyaaaaaaaaaaaaamWalvaaaanGaaaalvamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahsagZagZagZahnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfangaomanianhankanjanlajJanmapGanpanoanranqantansapFanuanwanvanzanyanCanBanEanDanIanFanJanJanJanKaoJanLanNanManPanOanRanQanQanSanUanTalFanVaofajVajVanXanZanYaoaaaaaabaabajbaknajwakoajwajwajxajyaaaaaaaaaaaaamWaabaabanGaabaabaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfangaomaocaobaoeaodaohaogaitapGaojaoiaonaokaopaooapFaoqaosaoraouaotaowaovaoxalWaozaoyaoBaoAaoDaoCaoJaoEaoGaoFaoFaoHaoLaoIaoIaoMaoPaoNalFaofaoQaiYaiYaiYaoTaoSaihaqIaqIaqIajbakyajwajwajwajwakzajyaaaaaaaaaaaaamWaaaaaaaoKaaaaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfaoUaomaoValEaoXaoWanlajJaigapGaoZaoYapbapaapdapcapFapeapgapfaphamyapjapiapkapSapAaplapCapBapEapDapIapHapJapJapLapKapmaoRapMaoJapNaoJapOaoQapQaiYapVapUapXapWaihaZJaZMaZLajbapYaqaapZaqcaqbajbalIaqeaaaaaaaaaamWaabappapnapqaabaabamWamWamWamWamWamWaqpamWamWamWamWamWamWamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapsaprapuaptapwapraprapxapraprapvaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabapyaabalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBakBakBakBaslakWakZaomaomaomaomakUaqsapFapGapGapGaqtaquapGapFaqvalUaqwaqwalTaqxaqxapPapSapSaqyaqzapSapSapSanAaqAaqCaqBanxanAanAaqAapRanxaqDapTanxanAaqGaqGaqGaqGaqHaihaihaqIaucaqIaqIajbalsaqJaqKalsajbaabaaaaaaaaaaaaamWaaaappaqdapqaaaaaaaabaabaabaabaabaabaabaabaqLaabaabaabaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfaqhaqiaqgaqkaqlaqlaqlaqmaqjaqoaaaaaaaaaalwalwalwalvalvaabaabaaaaqnaaaaabaabalvalvalwalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBakXaqraqMaqNaqraqOapzaqQaqPakWaqRaqSaqXaqVaqUaqXaqWariaqYarjaqXaqXaqXaqXarkaqXaqXaqXarlarnarmarparoarrarqarsarsarsartarsaruarwarvarxaqXaryaqWaqXarzarBarAarCaqXariaqXaqXarDarEaqVaqXarFarHarGarJarIajbaabaaaaaaaaaaaaamWaaaappaqdapqaaaaaaaabaqZaqZaqZaqZaqZaqZaqZaqZaqZaqZaqZaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaardaqhareargaqlarharharharharharfaaaaaaaaaalwaaaaaaaabaaaaabaaaaaaaqnaaaaaaaabaaaaabaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBalDarKalDarLalDarNarMarParOarRaqTarSarQasdascaseaseasfaseasgaseaseaseasiashasiasjasiasiassaskasnasmaspasoasoasoasoasqasoasoasoasrastasAasvasuasxaswaszasyasAasAasCasBasBasDasEasEasEasFasHasGasIamRamVaaaaaaaaaaaaaaaamWaabappaqdapqaaaaaaaabaqZaabaaaaaaaabaqZaabaabaaaaaaaqZaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarVaqharWarYarharharharharZasaaqoaaaaaaaaaalwaabarXarXarXarXarXaaaaraaaaarXarXarXarXarXaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBamoasYasXasZasYasYataatbalBakWaryatgatgatgatfatiathatkatjatmatlatnatjatpatoatratqatratsatuattatwatvatyatxatAatzatCatBatEatDatAatOatRatQaFLaFLaFLaFLaFLaFLaFLaxeatSatSatSatTatSatSatSarFatVatUatXatWajbaaaaaaaaaaaaaabamWaaaappaqdapqaabaabappapnapqaabaabappapnapqaabaabappapnapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasJaprapraprapwapraprapxapraprasKaaaaaaaaaalwaaaarbarcarcarcarcarUasbasLasMasMasMasMasNaaaalwaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaakBakBakBakBakBakBakBatYauaatZakWaubaudapFaxTaufawKaugauhawKawKawKawKaujaukaucatdaulatdaucaunaumawHawHawHawHauAauoawVauEauEawXauEauFauEauEaFLauGauHaFLauHauIaFLauJauLauKauNauMauPauOauQajbajbajbajbajbajbaaaaaaaaaaaaaaaamWaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaabaqpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaabatFatFatFatFatFaaaasbaaaatFatFatFatFatFaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBauRauTauSakWauUauVapGauXauWaucauYavaauZavcavbauZavdavfaveavhavgaviaveavjaAzavlavkavmavlavoavnavzavravBavAaAFavCaCyavDaFLauIavFavEavFauIaFLavGavHayVayVavIavKavJavLaHEaaaaabaaaaaaaaaaaaaaaaaaaaaaaaamWaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaaaaabaaaaaaaaaasbaaaaaaaaaaabaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasSasUasTasWasVaaaaaaawBawBaudaudaudaudavMavNaucavOauWaucavPavRavQavTavSavUavdavfavVavXavWavZavYavjaAzawbawaawdawcawfaweawgaCyawhavAaAFawiawnawjaFLawAawDawCawEawAaFLawFawGayVawJawIawLawGawMaHEaabaabaaaaaaaaaaaaaaaaaaaaaaaaamWaaaappaqdapqaabaabappaqdapqaabaabappaqdapqaabaabappaqdapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaabarXarXarXarXarXaaaasbaaaarXarXarXarXarXaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatIatKatLatJatIatMatNatPawOawNawQawPawSawRauVaucawTauWaucawUawYawWaxaawZawWavdavfaxbaxdaxcaxfavYavjaAzaxpaxgaxqaxpaxsaxraxvaxtavBaxwaxyaxxaxAaxzaxCaxBaxEaxDaxFavFaxGawGawGawGaHEaHEaxIaxHaHEaHEaabaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaawoawqawpawsawraaaawtawvawuawxawwapoaaaarbarcarcarcarcarUasbasLasMasMasMasMasNaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauvauwauxauuauzauyauBauyaxKaxJaxNaxMaudaudaudawKaxOaueawKaxPaxQawKaxSaxRawKayLavfaxUaxWaxVaxYaxXavjayMawHayaayeawHaygayfawVaynavBaypayqaCyaysayraFLaytayvayuayxaywaFLayyayAayzaHEaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaabamWaaaaabaoKaabaaaaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiaxjaxjaxjaxiaaaaxkaxlaxlaxlaxkalwaxnatFatFatFatFatFaaaasbaaaatFatFatFatFatFaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatIavvavyavxatIatMatNatNayCayBayEayDaudayFayGaxuayIayHawKauYayJauZavcayKauZavdayOaxZayNaxZazuaxZazwaAzavlayPavmavlayQavnavzaAFavAayRayTaySayWayUaFLaFLaFLaFLaFLaFLaFLaxeaHEaHEaHEatGaxhaxhaxhdmoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaqZaabaabaabappaqdapqaabaabappaqdapqaabaabappaqdapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiayjayjayjaxiaaaaxkaykaylaykaxkalwaaaaaaaaaaabaaaaaaaaaasbaaaaaaaaaaabaaaaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatIawzawzawyatIaaaaaaayXayYauDauVayZaudazaazdazcazmazlawKazoazqazpavTaztazvaAsazyaxLavdaxLaAzaxLaAqazxazAazzawdazBazDazCazFazEazHazGazGazHazJazIawlazKazMazLawlaybaDRaycawlazNazPazOazRazQazTasOaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaqZaqZaqZaabaaaaaaaoKaabaabaabaabaoKaabaabaabaabaoKaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahQahQahQahQahQahQaiiaigaiuahFahFahFahFahFahFagtaiwaiyaixajhaizagtaivaivaiAaiNaiBaiOaivaivaaaaabagTaiQaiPaiSaiRanAaaaanHaiTaiVaiUanHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwakAahaahaahaakragwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahQahQahQahQaiZaiXajfajaahQajgaolajiahFahFahFahFahFahFalealgajlakjakkajkajnajmajpajoajrajqajLajKaivaaaajMagTajOajNajQajPanAanHanHajRajTajSanHanHaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwakRakPahZakRakPagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajWajUakcakbakeakdakhakgahQakiaitalcahFahFahFahFahFahFajnaYmanWakXajhanWaklajjajjakmajjaksakwaktaivaabaabagTakCakxakEakDanAakvakFaoJaoJakGakIakHakJakKakMakLakNaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvalvalvalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwalxalyahaalzalAagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajWakOakSakQakVakTalaakYaldalbaitaleahFahFahFahFahFahFagtalfalgakXalialhajnaljallalkalnalmakfakuaivanHanHanAanAanAanAaloanAalpalralqalualtalFalCakHaiYaiYaiYalHaihaihaaaaaaaaaajbajbajbajbajbajbajbalIalJaaaabpaaaaaaalvaaaaabaaaamhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwamiamjahaamkamlagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajWalKalMalLalOalNalQalPahQalRalSabNahFahFahFahFahFahFagtagtalUalTapPagtagtalValWaivalYalXalZaivaivanHambamaamdamcamfameanAalGaoJamgamnammalFampalCamvajVamsamuamtaihaaaaaaaaaajbajsajtajvajuajwajxajyaaaaaaaaaaaaaaaamWaabalDaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahsagZamYamZanaagZahnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahQahQaqqahQahQahQahQahQahQamwaigapFapFapFapFapFapFapFapFamxamzamyamzamAamCamBamEamDamGamFamIamHamJauiaoJamKamKamKamKamLamqaoJamMamramOamNamQamPamTamSanbamXandancaneaaaaaaaabajbajXajwajwajwajwajxajyaaaaaaaaaaaaamWalvaaaamoaaaalvamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahsagZagZagZahnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfangaomanianhankanjanlajJanmapGanpanoanranqantansapFanuanwanvanzanyanCanBanEanDanIanFanJanJanJanKaoJanLanNanManPanOanRanQanQanSanUanTalFanVaofajVajVanXanZanYaoaaaaaabaabajbaknajwakoajwajwajxajyaaaaaaaaaaaaamWaabaabamoaabaabaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfangaomaocaobaoeaodaohaogaitapGaojaoiaonaokaopaooapFaoqaosaoraouaotaowaovaoxalWaozaoyaoBaoAaoDaoCaoJaoEaoGaoFaoFaoHaoLaoIaoIaoMaoPaoNalFaofaoQaiYaiYaiYaoTaoSaihaqIaqIaqIajbakyajwajwajwajwakzajyaaaaaaaaaaaaamWaaaaaaamUaaaaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfaoUaomaoValEaoXaoWanlajJaigapGaoZaoYapbapaapdapcapFapeapgapfaphamyapjapiapkapSapAaplapCapBapEapDapIapHapJapJapLapKapmaoRapMaoJapNaoJapOaoQapQaiYapVapUapXapWaihaZJaZMaZLajbapYaqaapZaqcaqbajbalIaqeaaaaaaaaaamWaabappannapqaabaabamWamWamWamWamWamWaqpamWamWamWamWamWamWamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapsaprapuaptapwapraprapxapraprapvaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabanGaabalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBakBakBakBaslakWakZaomaomaomaomakUaqsapFapGapGapGaqtaquapGapFaqvalUaqwaqwalTaqxaqxapPapSapSaqyaqzapSapSapSanAaqAaqCaqBanxanAanAaqAapRanxaqDapTanxanAaqGaqGaqGaqGaqHaihaihaqIaucaqIaqIajbalsaqJaqKalsajbaabaaaaaaaaaaaaamWaaaappaoKapqaaaaaaaabaabaabaabaabaabaabaabaqLaabaabaabaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfaqhaqiaqgaqkaqlaqlaqlaqmaqjaqoaaaaaaaaaalwalwalwalvalvaabaabaaaapnaaaaabaabalvalvalwalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBapyaqraqMaqNaqraqOapzaqQaqPakWaqRaqSaqXaqVaqUaqXaqWariaqYarjaqXaqXaqXaqXarkaqXaqXaqXarlarnarmarparoarrarqarsarsarsartarsaruarwarvarxaqXaryaqWaqXarzarBarAarCaqXariaqXaqXarDarEaqVaqXarFarHarGarJarIajbaabaaaaaaaaaaaaamWaaaappaoKapqaaaaaaaabaqZaqZaqZaqZaqZaqZaqZaqZaqZaqZaqZaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaardaqhareargaqlarharharharharharfaaaaaaaaaalwaaaaaaaabaaaaabaaaaaaapnaaaaaaaabaaaaabaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBaqdarKaqdaqdaqdaqnaraarParOarRaqTarSarQasdascaseaseasfaseasgaseaseaseasiashasiasjasiasiassaskasnasmaspasoasoasoasoasqasoasoasoasrastasAasvasuasxaswaszasyasAasAasCasBasBasDasEasEasEasFasHasGasIamRamVaaaaaaaaaaaaaaaamWaabappaoKapqaaaaaaaabaqZaabaaaaaaaabaqZaabaabaaaaaaaqZaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarVaqharWarYarharharharharZasaaqoaaaaaaaaaalwaabarXarXarXarXarXaaaarbaaaarXarXarXarXarXaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBarcasYasXasZasYasYataatbalBakWaryatgatgatgatfatiathatkatjatmatlatnatjatpatoatratqatratsatuattatwatvatyatxatAatzatCatBatEatDatAatOatRatQaFLaFLaFLaFLaFLaFLaFLaxeatSatSatSatTatSatSatSarFatVatUatXatWajbaaaaaaaaaaaaaabamWaaaappaoKapqaabaabappannapqaabaabappannapqaabaabappannapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasJaprapraprapwapraprapxapraprasKaaaaaaaaaalwaaaarLarMarMarMarMarNasbarUasLasLasLasLasMaaaalwaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaakBakBakBakBakBakBakBatYauaatZakWaubaudapFaxTaufawKaugauhawKawKawKawKaujaukaucatdaulatdaucaunaumawHawHawHawHauAauoawVauEauEawXauEauFauEauEaFLauGauHaFLauHauIaFLauJauLauKauNauMauPauOauQajbajbajbajbajbajbaaaaaaaaaaaaaaaamWaaaappaoKapqaaaaaaappaoKapqaaaaaaappaoKapqaaaaaaappaoKapqaabaqpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaabatFatFatFatFatFaaaasbaaaatFatFatFatFatFaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBauRauTauSakWasNauVapGauXauWaucauYavaauZavcavbauZavdavfaveavhavgaviaveavjaAzavlavkavmavlavoavnavzavravBavAaAFavCaCyavDaFLauIavFavEavFauIaFLavGavHayVayVavIavKavJavLaHEaaaaabaaaaaaaaaaaaaaaaaaaaaaaaamWaaaappaoKapqaaaaaaappaoKapqaaaaaaappaoKapqaaaaaaappaoKapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaaaaabaaaaaaaaaasbaaaaaaaaaaabaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasSasUasTasWasVaaaaaaawBawBaudaudaudaudasOavNaucavOauWaucavPavRavQavTavSavUavdavfavVavXavWavZavYavjaAzawbawaawdawcawfaweawgaCyawhavAaAFawiawnawjaFLawAawDawCawEawAaFLawFawGayVawJawIawLawGawMaHEaabaabaaaaaaaaaaaaaaaaaaaaaaaaamWaaaappaoKapqaabaabappaoKapqaabaabappaoKapqaabaabappaoKapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaabarXarXarXarXarXaaaasbaaaarXarXarXarXarXaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatIatKatLatJatIatMatNatPawOawNasQasRawSatHauVaucawTauWaucawUawYawWaxaawZawWavdavfaxbaxdaxcaxfavYavjaAzaxpaxgauraxpaxsaxraxvaxtavBaxwaxyaxxaxAaxzaxCaxBaxEaxDaxFavFaxGawGawGawGaHEaHEaxIaxHaHEaHEaabaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabappaoKapqaaaaaaappaoKapqaaaaaaappaoKapqaaaaaaappaoKapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaawoawqawpawsawraaaawtawvawuawxawwapoaaaarLarMarMarMarMarNasbarUasLasLasLasLasMaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauvauwauxauuauzauyauBauyaxKaxJautaxMaudaudaudawKaxOaueawKaxPaxQawKaxSaxRawKayLavfaxUaxWaxVaxYaxXavjayMawHayaayeawHaygayfawVaynavBaypayqaCyaysayraFLaytayvayuayxaywaFLayyayAayzaHEaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaabamWaaaaabamUaabaaaaaaappaoKapqaaaaaaappaoKapqaaaaaaappaoKapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiaxjaxjaxjaxiaaaaxkaxlaxlaxlaxkalwaxnatFatFatFatFatFaaaasbaaaatFatFatFatFatFaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatIavvavyavxatIatMatNatNayCayBauDayDaudayFayGaxuayIayHawKauYayJauZavcayKauZavdayOaxZayNaxZazuaxZazwaAzavlayPavmavlayQavnavzaAFavAayRayTaySayWayUaFLaFLaFLaFLaFLaFLaFLaxeaHEaHEaHEatGaxhaxhaxhdmoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaqZaabaabaabappaoKapqaabaabappaoKapqaabaabappaoKapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiayjayjayjaxiaaaaxkaykaylaykaxkalwaaaaaaaaaaabaaaaaaaaaasbaaaaaaaaaaabaaaaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatIawzawzawyatIaaaaaaayXayYauUauVayZaudazaazdazcazmazlawKazoazqazpavTaztazvaAsazyaxLavdaxLaAzaxLaAqazxazAazzawdazBazDazCazFazEazHazGazGazHazJazIawlazKazMazLawlaybaDRaycawlazNazPazOazRazQazTavMaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaqZaqZaqZaabaaaaaaamUaabaabaabaabamUaabaabaabaabamUaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiazeazgazhaxiaaaaxkazfazjaziaxkalwaabarXarXarXarXarXaaaasbaaaarXarXarXarXarXaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauvaxoawzaxmatIatMatNazVauyawBaudaudaudaznazXazWazsazrawKazYazZawWaAcaAaawWaAdaAraxLaABaAtaATaxLaAqaBIaxpaAuaAvaxpaAwavnaxvaAyaACaAAaAEaADaAHasPawlaAIaAKaAJawlavqavqaIjaIqaydavqavqaxhaxhaxhdmoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqZazUaqZaqZaqZaqZaqZaqZaqZaqZaqZaqZaqZaqZaqZaqZaqZaaaaaaamWaaaaAfaAfaAgaAgaAgaAgaAgaAgaAfaAfaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiaAhazgazhaxiaaaaxkaAiaykaykaxkalwaaaarbarcarcarcarcarUasbasLasMasMasMasMasNaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatIaymawzawzayhauyayoaAMauCaAmaAnaAlaAnaApaApaANaApaAoaElaAOaAPawKaxSaARawKaBKaDhaAUaAVaxLaAXaAWaHraBaawHaBiayeawHaBraBpaBsaBsaBsaBsaBsawVaBuaBtawlaBvaBRaBvawlaBwavqavqavqavqavqaIsatGaupasQauqauqausaaaaaaaaaaaaaaaaaaaaaaabaabaabaqZasRatHaabaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaamWaAfaAfaBdaBcaBeaBgaBhaBfaBjaBeaAfaAfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiaAhazgazhaxiaaaaxkaBkaykaBlaxkaabaBmatFatFatFatFatFaaaasbaaaatFatFatFatFatFaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatIazkazkazkatIatMaBAaBzaBBaAmaCaaAnaAnaBCaApaBDaBqaBoaElaBEaBFauZavcaBGauZaAdaxLaxLaBbaAZaBHaxLaxLazxavlaBLavmavlaBNaBMaBPaBOaBSaBQaBsaCcaCfaCeaZIaCgavqaSPavqavqavqavqavqavqavqavqavsavqavtavpavuavwaaaaaaaaaaaaaaaaaaaaaaabaaaaabaabauraabaabaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaAfaAfaAfaAfaBUaBgaBVaBgaBVaBXaBgaBgaBgaBWaAfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiazgazgazgaBYaaaaxkaBkaykaBlaxkalwaaaaaaaabaaaaabaaaaaaautaaaaaaaabaaaaabaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaAeaAkaAkaAkaAjaaaaaaaaaaaaaBnaAnaAnaAnaCiaCkaCjaCdaCbaElavPaCmaClavTaCnaCoavdaxLaEBaBJaEBaCpaEBaxLaAzazAaCrawdaCsateaCtaBsaCvaCxaCwaBsaCzaCBaCAaCCaZIaZIaCgavqavqaChawlbWpaIYbWpbWpatGavqawkauqauqawmaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabazbaabaabaaaaaaaabaaaaabaabaaaaaaaaaaaaaaaaaaaaaaAfaCNaCOaCPaCMaCRaCQaCSaBgaBgazSaCVaBgaCWaAfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiaAhazgazhaxiaaaaxkaAiaykaykaxkalwaaaarLarMarMarMarMarNasbarUasLasLasLasLasMaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatIaymawzawzayhauyayoaAMauCaAmaAnaAlaAnaApaApaANaApaAoaElaAOaAPawKaxSaARawKaBKaDhaAUaAVaxLaAXaAWaHraBaawHaBiayeawHaBraBpaBsaBsaBsaBsaBsawVaBuaBtawlaBvaBRaBvawlaBwavqavqavqavqavqaIsatGaupawkauqauqausaaaaaaaaaaaaaaaaaaaaaaabaabaabaqZawPawQaabaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaamWaAfaAfaBdaBcaBeaBgaBhaBfaBjaBeaAfaAfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiaAhazgazhaxiaaaaxkaBkaykaBlaxkaabaBmatFatFatFatFatFaaaasbaaaatFatFatFatFatFaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatIazkazkazkatIatMaBAaBzaBBaAmaCaaAnaAnaBCaApaBDaBqaBoaElaBEaBFauZavcaBGauZaAdaxLaxLaBbaAZaBHaxLaxLazxavlaBLavmavlaBNaBMaBPaBOaBSaBQaBsaCcaCfaCeaZIaCgavqaSPavqavqavqavqavqavqavqavqavsavqavtavpavuavwaaaaaaaaaaaaaaaaaaaaaaabaaaaabaabawRaabaabaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaAfaAfaAfaAfaBUaBgaBVaBgaBVaBXaBgaBgaBgaBWaAfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiazgazgazgaBYaaaaxkaBkaykaBlaxkalwaaaaaaaabaaaaabaaaaaaaxqaaaaaaaabaaaaabaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaAeaAkaAkaAkaAjaaaaaaaaaaaaaBnaAnaAnaAnaCiaCkaCjaCdaCbaElavPaCmaClavTaCnaCoavdaxLaEBaBJaEBaCpaEBaxLaAzazAaCrawdaCsateaCtaBsaCvaCxaCwaBsaCzaCBaCAaCCaZIaZIaCgavqavqaChawlbWpaIYbWpbWpatGavqaxNauqauqawmaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabayEaabaabaaaaaaaabaaaaabaabaaaaaaaaaaaaaaaaaaaaaaAfaCNaCOaCPaCMaCRaCQaCSaBgaBgazSaCVaBgaCWaAfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiaCTazgazgaCXaaaaxkaCYaykaykaCZalwalwalwaabaabaabaabaDbaDaaDbaabaabaabaabalwalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBnaDdaDcaCEaCDaCGaCFaCHaDiaElauYaCIawWaCKaCJawWaDeaDfaEBaCqaFFaDgaEBaDkaDjaxpaDlaDmaxpaDoaDnaBsaDpaDraDqaBsaDsaDNaDNaDNaDNaDPaDPaDPaDPaDPaDPcXKcXHaJccYNatGatGatGatGaaaaaaaaaabpaabaabaabaaaaabaaaaabaabaDSaDKaDSaabaabaaaaabaaaaaaaabaabaaaaaaaaaaaaaaaaaaaAfaDUaDTaDWaDVaDYaDXaBgaBgaBgaAbaEaaBgaEcaAfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiaEbazgaEeaxiaaaaxkaEfaykaykaxkaabaaaaabaaaaaaaabaaaaDbaEgaEdaaaaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEiaEiaEiaEiaEiaEiaEiaAmaElaElaElaDtaElaElaElaDuaAmaAxaAxaAxaAxaAxaAxaEBaEBaDvaCqaFFaDgaDvaDvaDvaEpaEpaEpaEpaDxaDwaBsaDyaDAaDzaBsaDsaDNaELaEMaEKaDPaENaDBaEOaEQaDPaJlcXHcXHcXHaJnaJmaJobWvaaaaaaaaaaabaabaaaaabaabaabaabaabaaaaDSaERaDSaaaaabaaaaabaaaaaaaaaaabaabaaaaaaaaaaaaaaaaAfaETaESaCPaEUaEWaEVaEXaBgaEZaALaFbaFaaAfaFdaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFeaFfaFcaFfaFgaaaaFiaFhaykaFkaFiaabaaaaabaaaaaaaabaDbaDbaFjaFmaDbaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEiaFlaFoaDCaDDaFvaFwaFsaDFaDEaDDaDGaFvaFvaDIaDHaFBaFAaFyaFyaFyaFyaFyaFyaFyaDJaDLaGraDMaEjaDOavqavqavqavqavqaBsaDQaEkaEhaEnaEmaBsaEoaDNaFTaFUaFPaDPaFVaEqaFWaFYaDPaJEaJpaJFcXHcXHcXHcXHbWraaaaaaaabaabaaaaaaaaaaaaaaaaabaabaDSaDSaFZaDSaDSaabaaaaabaaaaaaaaaaaaaabaabaaaaaaaaaaaaaAfaGbaGaaCPaAfaCPaCPaGdaGcaAfaAfaAfaAfaAfaAfaaaaabaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaFeaGfaFgaaaaaaaGgaFiaGeaFiaGhaabaaaaabaaaaaaaabaGjaGiaGlaGkaGjaGnaGnaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGoaGmaEraGpaEtaEsaEuaEsaEvaEsaExaEwaGraGraEzaEyaGraGraGraGraGraGraGraGraGraECaEEaEDaEGaEFaEHaAQaASaEIaASaAQaBsaEJaFnaEPaFnaFnaBsaDsaDNaFpaGNaFqaDPaFraGRaGQaEQaDPaJGcXHaKycXHcXHbYecWGbWraaaaabaabaaaaaaaaaaaaaaaaaaaaaaabaGTaGUaGSaGWaGTaabaaaaabaaaaaaaabaaaaaaaabaabaaaaaaaGXaAfaCPaAfaCPaGYaAYaHbaMzaGYaGYaGYaIEaGYajcaMraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaGnaGnaGnaGnaGnaGnaGnaGnaabaabaGjaHcaHaaGZaGjaHdaGnaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGoaHearTaHfaFuaFtaFxaHnaFzaHnaFCaHqaHnaHnaFEaFDaHnaHnaHnaHnaHnaHnaHnaFHaFJaFIaFKaHvaHxaEjaFMaAQaFNaASaFOaAQaBsaBsaBsaBsaBsaBsaBsaFQaDNaHCaFUaFRaDPaFSaHGaFWaHHaDPbZQbYeaKBcXHcXHcXHcXIbWraabaabaaaaaaaaaaaaaaaaaaaaaaaaaabaGTaHKaHIaHJaGTaabaaaaabaaaaaaaabaaaaaaaGXaHNaGXaHNaGXaHbaGYaGYaGYaGYaGYaGYaGYaGYaGYaHOaGXaGYaJOaMraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaadmoaBxdmoaaaaaaaaaaGnaHSaHTaHSaHRaHMaHUaGnaaaaaaaGjaHVaHXaHWaIaaHSaGnaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIbaIcaIcaIeaIeaFXaLAaIhaIhaGqaLAaGsaIlaIiaIiaIlaGtaIlaIoaIoaIoaIoaIoaIoaImaIoaIoaInaIraIpaEjaGuavqaAQaAQaAQavqavqavqaydaGvaGwavqavqaGxaDNaIwaFUaGyaDPaGzaGRaGQaEQaDPcXIcXHaLYaKPcXHbYebZQbWvaabaabaaaaaaaaaaaadmoaCLdmoaaaaabaGTaIBaIAaICaGTaIFaIFaIFaIFaIFaHNaHNaHNaGXaIDaGYaHOaHPaMzaGYaMqaMqaMqaMqaMqaMqaMqaMqaMqaGXaMraMraMraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaIIaIGaIIaaaaaaaabaGnaIHaILaHSaHSaIJaHSaGnaIIaIIaGjaGjaIMaIKaIaaHSaGnaGnaIIaIIaIIaGnaGnaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaIbaIPaGAaGCaGBaGDaLAaGFaGEaGGaLAaGHaIlaIWaIZaGJaGIaHgaJaaJdaLZaJfaJeaJhaJgaJjaJiaJkaFFaFGaEjaGKavqavqavqavqavqavqavqavqavqavqavqavqaGLaGOaGMaHhaGPaDPaHiaHjaJyaJBaDPcWGbYeaMbaMaaODaODaODaODaODaODaODaaaaaaaaaaHNaJCaHNaaaaIFaGTaGTaJDaJHaGTaJIaGYaGYaGYaMzaJJaGYaJMaGXaGYaGYaGYaJKaMzaGYaMqaNkaNnaNmaMqaNpaNoaNqaMqaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJPaJSaJQaaaaJRaJVaJTaabaabaIIaHSaIIaaaaaaaabaGnaJXaJYaJZaJWaJUaKaaGnaKbaHSaKdaKcaKfaKeaKeaKeaKeaKeaKeaKeaKeaKgaGnaaaaKhaaaaaaaaaaaaaaaaaaaaaaaaaIbaKkaHkaKmaKnaHlaLAaHmaKraHoaLAaGHaIlaKtaHYaKvaGIaHgaKqaKsaKsaKsaKsaKsaJgaKwaJiaFyaFFaFGaEjaFMaLPaLPaLPaLPaLPaHpaKOaKOaKOaKOaKOaKOaKOaDNaDNaLVaDNaDPaDPaHsaDPaDPaDPaMhaMeaMjcYKaODaKQaKQaKQaKQaKQaODaaaaaaaaaaHNaKJaKMaaaaIFaKRaKTaKSaKWaGYaGYaGYaMzaGYaMzaKXaGYaGYaGXaGYaKVaKUaKXaIEaGYaMqaOKaOLaOLaMqaOMaOJaONaMqaMraMraMraMraabaMraMraabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLdaLaaLbaLaaLdaLeaLfaLeaLdaabaIIaLgaLhaaaaaaaGnaGnaGnaGnaGnaLkaLiaLlaLjaLnaLmaLmaLoaLraLraLqaLpaGnaHSaGnaGnaGnaLsaGnaaaaabaaaaaaaaaaaaaaaaaaaabaabaIbaLuaLtaLwaLvaLxaLAaKraLyaHtaLAaGHaIlaLCaLEaHwaHuaHzaHyaHAaLHaKsaLIaLIaJgaKsaJiaFyaFFaLJaEjaHBaLPaHFaHDaLNaLPaMwaAGaMIaMHaMLaMJaIdaHZaIkaIgaIyaIvaIUaITaNcaNbaIXaKObWrbWraNUaKOaODaKQaKQaKQaKQaKQaODaabaabaKOaHNaMfaMgaHNaIFaMiaGYaMkaGYaHbaGYaGXaGXaMmaGXaGXaMnaMzaMzaKXaMoaMlaGYaGXaGYaPOaMqaPPaPTaPSaPUaOKaPWaMqaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMsaLaaMpaLaaMsaLeaMtaLeaMsaGnaIIaMuaEAaIIaIIaGnaHSaHSaHSaHSaHSaHSaHSaLkaLsaGnaGnaGnaGnaGnaMxaGnaGnaHSaMyaGnaMvaLsaGnaGnaGnaaaaaaaaaaaaaaaaMAaMAaMAaMAaMAaMAaMAaMAaMAaLAaItaMCaIuaLAaGHaIlaIxaJbaINaJvaHgaMMaIQaIOaMPaMOaMRaMQaMSaJiaFyaFFaFGaEjaFMaLPaISaIRaLNaLPaKuaMVaMVaMVaMVaMVaMVaMVaLQaKxaLRaOiaOiaOiaLSaOiaPAaOuaOAaOzaOBaJqaODaKQaKQaKQaKQaKQaODaKOaKOaKOaGYaNfaNgaJIaMzaMoaKXaMkaGYaNhaAYaNlaIEaGYaGYaGYaGYaNiaGYaGYaMoaNjaGYaMnaPRaPQaQSaQQaQUaQTaQVaQYaQWaMqaMraMraMraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMsaCUaNtaDZaMsaEYaNyaGVaNwaNxaHSaNzaNCaNAaMyaNBaHSaGnaGnaGnaGnaGnaGnaGnaLsaGnaByafOaBTaGnaNEaNFaNHaHSaNBaGnaNAaNIaKeaKgaIIaaaaaaaaaaaaaaaaHLaNJaNMaNLaNOaNNaNPaMAaiWaLAaJraNQaIVaLAaJsaIlaJuaJtaJwaLTaHgaNWaJzaJxaKiaJAaKlaKjaKoaJiaFyaFFaFGaEjaFMaLPaOjaKpaLNaLPaLUaMVaMNaMNaMNaMVaMVaMVaMVaMVaMTaOoaMUaMUaOsaMVaSQaMVaMVaRRaMVaPvaRVaKQaKQaKQaKQaKQaRVaTbaTdaTcaXiaTeaOCaGYaMzaOFaGYaOEaOGaOGaOGaOGaOHaOGaOIaGYaGYaGYaGYaGYaGYaGYaGYaMzaHQaPOaMqaRSaRYaOLaOLaOLaRZaMqaJNaJLaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMsaOPaOQaORaMsaOPaOQaORaNwaKaaHSaOSaHSaHSaHSaHSaHSaGnaOTaOOaOVaOUaOWaGnaLsaGnafOaOXaByaOYaPaaOZaGnaPcaGnaGnaGnaGnaPcaLsaIIaaadmodmodmodmoaRuaNJaPeaPbaPfaPhaPiaPjaMAaLAaLAaLAaLAaLAaJsaIlaIlaIlaIlaIlaIlaKzaKAaIoaIoaIoaIoaIoaIoaIoaPraFFaPwaEjaFMaLPaOnaKpaLNaLPaKuaMNaMWaMWaMXaMNaMVaMVaMYaMVaNaaMZaNdaNdaNeaMVaSQaMVaMVaMVaMVaKCaODaKQaKQaKQaKQaKQaODaPLaPMaKOaGYaVJaMzaMzaMzaHPaHPaGXaGXaGXaMzaMzaMzaGXaPNaPKaGXaMzaMzaGXaMzaMzaGXaGXaRTaMqaTjaQRaTlaTkaTmaQRaTnaMqaKZaKYaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaadmoazbdmoaaaaaaaaaaGnaHSaHTaHSaHRaHMaHUaGnaaaaaaaGjaHVaHXaHWaIaaHSaGnaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIbaIcaIcaIeaIeaFXaLAaIhaIhaGqaLAaGsaIlaIiaIiaIlaGtaIlaIoaIoaIoaIoaIoaIoaImaIoaIoaInaIraIpaEjaGuavqaAQaAQaAQavqavqavqaydaGvaGwavqavqaGxaDNaIwaFUaGyaDPaGzaGRaGQaEQaDPcXIcXHaLYaKPcXHbYebZQbWvaabaabaaaaaaaaaaaadmoaBxdmoaaaaabaGTaIBaIAaICaGTaIFaIFaIFaIFaIFaHNaHNaHNaGXaIDaGYaHOaHPaMzaGYaMqaMqaMqaMqaMqaMqaMqaMqaMqaGXaMraMraMraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaIIaIGaIIaaaaaaaabaGnaIHaILaHSaHSaIJaHSaGnaIIaIIaGjaGjaIMaIKaIaaHSaGnaGnaIIaIIaIIaGnaGnaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaIbaIPaGAaGCaGBaGDaLAaGFaGEaGGaLAaGHaIlaIWaIZaGJaGIaHgaJaaJdaLZaJfaJeaJhaJgaJjaJiaJkaFFaFGaEjaGKavqavqavqavqavqavqavqavqavqavqavqavqaGLaGOaGMaHhaGPaDPaHiaHjaJyaJBaDPcWGbYeaMbaMaaODaODaODaODaODaODaODaaaaaaaaaaHNaJCaHNaaaaIFaGTaGTaJDaJHaGTaJIaGYaGYaGYaMzaJJaGYaJMaGXaGYaGYaGYaJKaMzaGYaMqaCLaCUaNmaMqaNpaNoaNqaMqaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJPaJSaJQaaaaJRaJVaJTaabaabaIIaHSaIIaaaaaaaabaGnaJXaJYaJZaJWaJUaKaaGnaKbaHSaKdaKcaKfaKeaKeaKeaKeaKeaKeaKeaKeaKgaGnaaaaKhaaaaaaaaaaaaaaaaaaaaaaaaaIbaKkaHkaKmaKnaHlaLAaHmaKraHoaLAaGHaIlaKtaHYaKvaGIaHgaKqaKsaKsaKsaKsaKsaJgaKwaJiaFyaFFaFGaEjaFMaLPaLPaLPaLPaLPaHpaKOaKOaKOaKOaKOaKOaKOaDNaDNaLVaDNaDPaDPaHsaDPaDPaDPaMhaMeaMjcYKaODaKQaKQaKQaKQaKQaODaaaaaaaaaaHNaKJaKMaaaaIFaKRaKTaKSaKWaGYaGYaGYaMzaGYaMzaKXaGYaGYaGXaGYaKVaKUaKXaIEaGYaMqaDZaOLaEYaMqaGVaHLaNkaMqaMraMraMraMraabaMraMraabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLdaLaaLbaLaaLdaLeaLfaLeaLdaabaIIaLgaLhaaaaaaaGnaGnaGnaGnaGnaLkaLiaLlaLjaLnaLmaLmaLoaLraLraLqaLpaGnaHSaGnaGnaGnaLsaGnaaaaabaaaaaaaaaaaaaaaaaaaabaabaIbaLuaLtaLwaLvaLxaLAaKraLyaHtaLAaGHaIlaLCaLEaHwaHuaHzaHyaHAaLHaKsaLIaLIaJgaKsaJiaFyaFFaLJaEjaHBaLPaHFaHDaLNaLPaMwaAGaMIaMHaMLaMJaIdaHZaIkaIgaIyaIvaIUaITaNcaNbaIXaKObWrbWraNUaKOaODaKQaKQaKQaKQaKQaODaabaabaKOaHNaMfaMgaHNaIFaMiaGYaMkaGYaHbaGYaGXaGXaMmaGXaGXaMnaMzaMzaKXaMoaMlaGYaGXaGYaPOaMqaNnaPTaPSaOJaDZaOKaMqaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMsaLaaMpaLaaMsaLeaMtaLeaMsaGnaIIaMuaEAaIIaIIaGnaHSaHSaHSaHSaHSaHSaHSaLkaLsaGnaGnaGnaGnaGnaMxaGnaGnaHSaMyaGnaMvaLsaGnaGnaGnaaaaaaaaaaaaaaaaMAaMAaMAaMAaMAaMAaMAaMAaMAaLAaItaMCaIuaLAaGHaIlaIxaJbaINaJvaHgaMMaIQaIOaMPaMOaMRaMQaMSaJiaFyaFFaFGaEjaFMaLPaISaIRaLNaLPaKuaMVaMVaMVaMVaMVaMVaMVaLQaKxaLRaOiaOiaOiaLSaOiaPAaOuaOAaOzaOBaJqaODaKQaKQaKQaKQaKQaODaKOaKOaKOaGYaNfaNgaJIaMzaMoaKXaMkaGYaNhaAYaNlaIEaGYaGYaGYaGYaNiaGYaGYaMoaNjaGYaMnaPRaPQaQSaQQaQUaQTaOMaQYaQWaMqaMraMraMraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMsaONaNtaPPaMsaPUaNyaPWaNwaNxaHSaNzaNCaNAaMyaNBaHSaGnaGnaGnaGnaGnaGnaGnaLsaGnaByafOaBTaGnaNEaNFaNHaHSaNBaGnaNAaNIaKeaKgaIIaaaaaaaaaaaaaaaaQVaNJaNMaNLaNOaNNaNPaMAaiWaLAaJraNQaIVaLAaJsaIlaJuaJtaJwaLTaHgaNWaJzaJxaKiaJAaKlaKjaKoaJiaFyaFFaFGaEjaFMaLPaOjaKpaLNaLPaLUaMVaMNaMNaMNaMVaMVaMVaMVaMVaMTaOoaMUaMUaOsaMVaSQaMVaMVaRRaMVaPvaRVaKQaKQaKQaKQaKQaRVaTbaTdaTcaXiaTeaOCaGYaMzaOFaGYaOEaOGaOGaOGaOGaOHaOGaOIaGYaGYaGYaGYaGYaGYaGYaGYaMzaHQaPOaMqaRSaRuaOLaOLaEYaRZaMqaJNaJLaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMsaOPaOQaORaMsaOPaOQaORaNwaKaaHSaOSaHSaHSaHSaHSaHSaGnaOTaOOaOVaOUaOWaGnaLsaGnafOaOXaByaOYaPaaOZaGnaPcaGnaGnaGnaGnaPcaLsaIIaaadmodmodmodmoaRYaNJaPeaPbaPfaPhaPiaPjaMAaLAaLAaLAaLAaLAaJsaIlaIlaIlaIlaIlaIlaKzaKAaIoaIoaIoaIoaIoaIoaIoaPraFFaPwaEjaFMaLPaOnaKpaLNaLPaKuaMNaMWaMWaMXaMNaMVaMVaMYaMVaNaaMZaNdaNdaNeaMVaSQaMVaMVaMVaMVaKCaODaKQaKQaKQaKQaKQaODaPLaPMaKOaGYaVJaMzaMzaMzaHPaHPaGXaGXaGXaMzaMzaMzaGXaPNaPKaGXaMzaMzaGXaMzaMzaGXaGXaRTaMqaTjaQRaTlaTkaTmaQRaTnaMqaKZaKYaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPVaSdaSdaLdaMsaPZaQaaLdaMsaPZaQaaLdaGnaLkaGnaGnaGnaGnaGnaHSaGnaHSaQbaPXaHSaHSaGnaLsaGnaByaabaBZaGnaJYaOZaGnaQeaQcaGnaNAaKaaGnaLsaMAaMAaQgaQgaQgaQgaQgaQgaQgaQgaQgaPiaPiaPjaQhaQiaQjaQkaQlaQdaKEaKDaKFaKFaKFaKFaKFaKGaKIaKHaKFaKFaKFaKKaKKaKLaLzaKNaLBaEjaHBaLPaQzaKpaLNaLPaKuaMNaMWaNRaNSaMNaMVaMVaMVaMVaNTaMZaNdaNdaNeaMVaSQaMVaMVaMVaMVaKCaODaKQaKQaKQaKQaKQaODaQHaPMaKOaGYaVJaGYaQBaMzaQCaHOaQLaQJaHbaGXaOFaHbaGXaQKaGYaGXaQMaGYaGXaQOaQNaQPaOGaRWaMqaUgaQRaUiaUhaUiaQRaUjaMqaMzaMzaGXaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaQXaRbaoOaSbaMcaMdaMdaRaaMdaMdaMdaRdaRcaReaReaReaReaRfaGnaHSaGnaRhaRgaRiaHSaRjaPcaLsaGnaGnaGnaGnaGnaGnaPcaGnaHSaRiaLkaHSaHSaHSaRkaRmaRlaRnaRnaRnaRnaRoaRnaRnaRpaRqaRlaRsaRraRraRraRraRraRraRraRtaRwaRwaRwaRwaRxaRwaRwaLDaRwaRwaRxaRwaRwaRwaRwaRzaLFaLKaLGaLLaLPaRDaLMaLWaLOaNVaMNaNYaNXaOeaMNaMVaMVaMVaMVaMTaRMaOpaOpaRGaMVaVLaVKaMVaMVaMVaPvaRVaKQaKQaKQaKQaKQaRVaVMaYwaVObfQaZzbafbafbafbafbbYaOGaOGaOGaOGaOGaOGaOGaKSaGYaGYaGYaGYaMnaGYaGYaMkaGYaRXaUYaUYaMqaMqaMqaMqaMqaMqaUfaQIaOFaJMaGXaabafOaMraMraabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZPaSdaSdaMBaSfaMDaMEaSiaSjaQZaSaaSjaSeaScaSjaSjaSnaGnaHSaGnaSoaHSaHSaSpaSqaGnaNIaKgaHSaHSaHSaHSaHSaHSaPcaSsaHSaGnaNxaNxaGnaSraMAaSuaSwaSvaSvaSvaSxaSvaSvaSvaSyaSuaSzaSAaSAaSAaSAaSAaSAaSAaPiaRwaSBaSCaSEaSgaSkaShaSmaSlaSJaSDaSLaSCaSMaRwaSNaFFaSOaEjaMFaLPaSRaMGaSTaSSaOqaWHaOyaOraOraPkaPBbhiaPCbgsbhhbhibhibhibhibhibhjaMVaMVaMVaMVaThaODaKQaKQaKQaKQaKQaKOaKOaKOaKOaHbaMzaMzaIEaGXaGXbBOaMzaGXaTgaMzaGXaIEaGXaMkaQIaMzaGXaIEaGXaKXaUUaMkaGYaTiaGXaHOaHbaGYaGYaVTaVhaVUaVUaWZaGYaGYaGXaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9013,37 +9014,37 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdblBaSfblEbmSbnabnibmVbndbnibnfbnebnibnibnkbnjboNboMbnnbnnbnnbnobnnbnpbnuaMsbnvbnwbnqblMbnybnrbnAbnBbnCbnDbnsbnFbnGbnHbnIbnJblMbnKbnLblRbnxbntbnzblTbnEbnQbnMblTbnSbnTbnNbnSbnSbnSbnObgSbnPbmbaaaaaaaaaaaaaaaaaaaaabmcbnUbnRbnWbnVbnYbnXboaaYfbocaCubohbmcaaaaaaaaaaaaaaaaaaaaabmibodbhqboeaUSbokbmlbmqbmqbmqbmqbmqboSboUbmqbmqbmqbogbofbofboibonbojbopbooborboqbosbebboubotboBboAboAboBbowbovbebbdXaGYbauboFboFbcpbjNblkbcpboGboGbaubauboybauaYPbmIblnbloboJboJboJblnblobmKaYPaYRaYRaaaaabaabaabaabaabbEGbEGbEGbmPbmLbmRbEGbEGaaaaaaaaabicbikbilbeCbeCbimbinbeCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdboLboPboLboLboLboLboLboLboPboLboLboQaSfboRbgGbwxaSfbpFaSfboTboXboYboVboWaMsbnwbnwboZblMbpabnDbnDbnDbnDbnDbnsbpdbnDbnDbnDbpeblMbnKbpfblRbpbbphbpiblTbpjbpcbpgblTbplbpkbpmbppbpnbnTbnObgSbnPbmbaaaaaaaaaaaabmcbmcbmcbmcbprbpobptbpqbpubpsbpwaYgbpzbpxbpBbmcbmcbmcbmcaaaaaaaaaaaabmibodbhqbpAbpybpHbpGbpJbpIbpHbpKbqhbpMbqjbqibqkbmqbpNbpLbofbpObpPbofbpRbpQbpTbpSbofbpWbpVbpUboBboAboAboBbpXbqabebbdXaTgbaublpbcpbljbjNblkbljbcpbcpbpYbqcbcpbqdaYPbmTbmpbqgboJboJboJbmpbqgbcDbmUaYQaabaabaabaaaaaaaaaaabbEGbnZbmZbozbolboEboCbEGaaaaYDbjCbjGbjCbjCbjCbjHbjCbjJbjCbjGbjCaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLdaLdaSdaSdaSdaSdaSdaSdaSdaSdaSdaLdaMsbgGbqqbqrbqrbqrbqrbqrbqrbqsbqrbqrbqraMsbnwbnKbqtblMbqubnDbnDbqvbqwbqxbqybqvbnDbnDbnDbqzblMbnKbnLblRbqAbqBbqCblTbqDbqEbqFblTbqGbqHbqIbqJbqKbnTbqLbqMbnPbmbbmbbqNbmcbmcbmcbqObqQbqPbqRbqSbqSbqTbqUbqSbqVaYibqWbqXbqYbqZbrbbrabmcbmcbmcbqNbmibmibodbhqbhqaUSbrfbrebqibrgbmqbrhbribmqbshbrHbqkbmqbogbofbofbrjbrlbrkbrnbrmbrpbrobofbcSbpVbrrboBboAboAbrsbrubrtbebbdXaGYbaubrwbrwbrxbjNblkbrybcpbcpbrzbcpbrAbrBaYPboHbpCboObpEboJbqebpZbqlbqfbgfaYRbEGbEGbEGbjRbjRbjRbEGbEGbrdbrcbrCbrvbrEbrDbEGaaabicbmXblubmYbmYblDbeCblCblDblAblvblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMwbrObrObrQbrObrObrObrRbrObrObrPaabaSdaUlaMEbrSbqrbrUbrVbrWbrXbrYbrTbsabrZbqrbscbsdbsbbseblMbsfbnDbnDbqvbqxbsgbsQbqvbnDbnDbsjbskblMbnKbnLblRblRbslblRblTbsibsnbsoblTbsmbqJbsqbqJbsrbnTbnObssbnPbgPbgPbspbsubdibmcbsvbptbswbqSbqSbsybsxbsAbszbsAaYjbsDbsCbsFbsEbsHbsGbmcbdPbsubsJbsLbsKbodbhqbhqbsNbmqbsZbmqbmqbmqbtnbtobmqbshbtrbqkbmqbpNbofbofbsRbsTbsSbsVbsUbsWbrobsXbebbqabrrboBboAboAboBbrubsYbebbtwbtebaubaubaubaubrFblkbthbtibcpbtjbtbbtlbrGaYPbrIbmpbqgbrJbxBbsMbmpbqgbcDaYPbEFbsPbsObtabzObtcbzObtdbEGbEGbtgbtmbtkbtpbtpbEGbEGbicbBTbDzbDzbDzbmQbeCblCbnbblAbeCbncbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMwbtvbtybtCbtDbtDbtzbtDbtDbtDbtzbrQaSdaSdaSdaToboRbqrbrUbtFbtGbrUbtBbtAbtHbtEbqrbtLbtMbtIblQblMbtObtPbtKbtJbtQbtNbtSbtRbtRbtRbtUbtTblMbnKbsdbtYbtZbtVbubblTblTblTblTblTbucbudbtWbufbugbnTbnObssbgSbgSbgSbtXbuebhBbuibuhbujbqSbunbukbumbulbupbuoburbuqbutbusbuubuhbuwbuvbuybhDbuAbuzbuEbuEbuBbhqbuCaUSbmqbuIbuNbqkbmqbuQbuRbmqbvbbuSbqkbmqbogbofbofbofboibofbuJbofbsWbrobuKbebbuPbrrboBboAboAboBbrubuLbebbvcbvgbvebtxbtqbuFbuDbuWbuVbuVbuVbuVbuVbuVbuVbuZbuYboJboJbrJboJbsMboJboJboJbuGbmmbuHbmmbmmbmmbmmbmmbmmbuTbEGbuXbvdbEGbwmbwkbwkboIboKbDzbDzbGJbGJbnbbeCblCbnbblAbeCblCaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwXbrObrObrQbrObrObrObrRbrObrObrPaabaSdaUlaMEbrSbqrbrUbrVbrWbrXbrYbrTbsabrZbqrbscbsdbsbbseblMbsfbnDbnDbqvbqxbsgbsQbqvbnDbnDbsjbskblMbnKbnLblRblRbslblRblTbsibsnbsoblTbsmbqJbsqbqJbsrbnTbnObssbnPbgPbgPbspbsubdibmcbsvbptbswbqSbqSbsybsxbsAbszbsAaYjbsDbsCbsFbsEbsHbsGbmcbdPbsubsJbsLbsKbodbhqbhqbsNbmqbsZbmqbmqbmqbtnbtobmqbshbtrbqkbmqbpNbofbofbsRbsTbsSbsVbsUbsWbrobsXbebbqabrrboBboAboAboBbrubsYbebbtwbtebaubaubaubaubrFblkbthbtibcpbtjbtbbtlbrGaYPbrIbmpbqgbrJbxBbsMbmpbqgbcDaYPbEFbsPbsObtabzObtcbzObtdbEGbEGbtgbtmbtkbtpbtpbEGbEGbicbBTbDzbDzbDzbmQbeCblCbnbblAbeCbncbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwXbtvbtybtCbtDbtDbtzbtDbtDbtDbtzbrQaSdaSdaSdaToboRbqrbrUbtFbtGbrUbtBbtAbtHbtEbqrbtLbtMbtIblQblMbtObtPbtKbtJbtQbtNbtSbtRbtRbtRbtUbtTblMbnKbsdbtYbtZbtVbubblTblTblTblTblTbucbudbtWbufbugbnTbnObssbgSbgSbgSbtXbuebhBbuibuhbujbqSbunbukbumbulbupbuoburbuqbutbusbuubuhbuwbuvbuybhDbuAbuzbuEbuEbuBbhqbuCaUSbmqbuIbuNbqkbmqbuQbuRbmqbvbbuSbqkbmqbogbofbofbofboibofbuJbofbsWbrobuKbebbuPbrrboBboAboAboBbrubuLbebbvcbvgbvebtxbtqbuFbuDbuWbuVbuVbuVbuVbuVbuVbuVbuZbuYboJboJbrJboJbsMboJboJboJbuGbmmbuHbmmbmmbmmbmmbmmbmmbuTbEGbuXbvdbEGbwmbwkbwkboIboKbDzbDzbGJbGJbnbbeCblCbnbblAbeCblCaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabvibvjbvjbvjbvjbvjbvjbvjbvjbvjbvjbvfbvlaOQbvlaSfboRbqrbvmbrUbvnbvnbvnbvkbrUbvobqrbvqbvrbtIbvsbvsbvsbvsbvpbvsbvtbnDbvvbngbnhbnhbvubvxblMbvzbvBbvAbvDbvCbvFbvGbvHbvIbvHbvJbvJbvJbvJbvJbvKbvEbnObvLbvNbvMbvPbvObvRbhEbvTbvSbuobvUbvVbvXbvXbvXbvXbvWbvXbvZbwabwbbvYbvUbwdbwcbmcbkRbwgbwfbwibwhbwjbhqbhqbsNbmqbEabmqbmqbmqaZVbmqbmqbxAbxAbmqbmqbwlbofbofbwnbwobofbofbofbwqbwpbwrbebbqabrrboBboBboBboBbrubwsbebbAubwtbwtbwubwtbwzbwybwybwybwybwAbwybwybwBbljbvaboJboJboJbrJboJbsMboJboJboJbuGbmmbuHbmmbmmbxKbmmbxObmmbmmbmmbxXbxYbqnbjRbjRbjRbjRbqpbjCbjCbjCbjCbqobeCblCbqoblAbeCblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacNwbwEbwGbwHbwIbwIbwJbwIbwIbwIbwJbrQaSdaSdaSdbvwblFaPYbrUbwMbvnbvnbvnbvkbwMbrUbqrbvybwKbtIbvsbwPbwQbwRbwSbvsbwUbwTbwVblMbrNbstbwNbwYblMbnKbxabxbbxbbxcbxbbxbbxbbxbbxebxdbxdbxdbxfbxdbxgbxhbxibxjbxkbxlbxlbxlbxlbxlbxmbxmbxnbxmbvXbvXbxobxpbxqbxrbxtbxsbxobxubvXbxvbxwbxvbxvbxvbxvbxvbxvbxvbwjbhqbhqaUSbxxbmqaVGbJQbmqbznbmqbzobxDbxCbmqbxEbdTbxFbxGbdTbdTbxHbxJbxIbxJbdTbdTbebblbbxLbxMbxMbxMbxMbxLbxNbebbKVbwvbwvbwwbxPbaubxQbxRbxSbxTbxUbxVbxWbycbxZaYPbjDbyZbyabrJboJbsMbyabzlbjDbEFbzpbAwbAjbAzbAybABbAAbACbAjbAjbADbsIbAEboIbrLbrMboIbrKbeCbeCbeCbeCbeCbeCbeCbeCbeCbeCblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacNwbrObrObrQbrObrObrObrRbrObrObydaabaSdbwObmSbyfbqrbtFbtFbtFbrUbyhbygbyjbyibqrbwZbyebtIbvsbymbvsbynbyobvsbyqbypbyrblMbrNbstbwNbskblMbnKbxabxbbytbysbyubyvbywbxbbyybykbyxbylbyBbyBbyBbyCbyEbyDbyFbxlbyGbyHbyIbyJbyLbyKbyMbyNbvXbyObxqbxqbyPbyQbyPbxqbxqbyRbvXbySbyUbyTbyWbyVbyYbyXaZObxvbzabzbbzbbzcaUSaUSaUSaUSbAvbsNbAvbzeaUSbdRaUSaUSbdTbdTbdTbdTbzgbzfbzfbzfbzfbzhaQsbebbjBbzjbjBbzkbzkbjBbzjbjBbebbKVbwvbwvbAxbxPbaubaubaubaubaubtfbaubaubaubauaYPaYPaYPaYQbAGaYQbAHaYQaYPaYPbEFbAIbuHbAJbAKbjRbjRbjRbEFbALbmmbmmbAMbjRbjRbjRbqnbjRbicbttbeCblCblDblAbeCblCblDblAbeCbtubicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjQaLdaSdaSdaSdaMsaMsaMsaMsaMsaMsbzrbzsbqrbqrbqrbqrbqrbqrbztbqrbqrbqrbnKbnKbzwbvsbzubzvbynbzxbvsbzzbzybzAblMbrNbstbwNbnDblMbnKbxabxbbzDbzBbzCbyvbzCbxbbyybyzbzEbzFbzIbzHbzKbzJbzMbzLbyFbzRbzNbBsbzPbzQbzQbzPbzUbzSbvXbzTbxqbxqbyPbzWbyPbxqbxqbzVbwbbzXbAbbzYbzZbAabAdbzYbAcbxvbAlbAebAfbAgbAhbAicMKbAkbAkbAkbAkbAkbAkbAmbAobAnbAkbAkbAqbAkbAkbAkbAkbAkbAkbAkbAkbApbAsbArbArbArbArbArbArbAtbAicVsbvhbvhbBtbBrbBNbBrbBPbBrbBUbBQbDkbBrbDubDtbElbDxcVUcVUbEmcVUbEBcVUbENbEHbFzbFwbGjbGhbjRbwDbwCbxzbjRbGobmmbmmbGIbGsbjRbGMbGNbjRblDblAbeCblCbnbblAbeCblCbnbblAbeCblCblDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAQbARbARbARbARbASbASbARbARbATaaaaabaSdaUlaMEbAVbAUbAXbAWbAWbAWbAWbAYbAZbBablQbnwbBcbBbbvsbvsbvsbBdbyobvsblMblMblMblMbrNbuabyAbBfblMbBhbBibxbbBjbBkbyvbzCbBlbxbbyybzGbzEbzFbBnbBobBpbzJbBqbzLbyFbzRbDobCAbDsbBubBvbBwbzUbBxbvXbBybyPbxqbBAbBzbBAbxqbyPbBBbxubBCbzYbzYbzZbBDbAdbzYbBEbxvbBFbAfbAfbAgbAhbAibAkbAkbAkbAkbAkbAkbAkbBGbAkbAkbAkbAkbAkbAkbBHbBIbBIbBIbBIaQwbBIbBIbBIbBIbBIbBIaQwbBIbBIbBIaQybDVdcebIsbIzbwtbwtbwtbwtbwtbwubwtbwtbwtbwtbwtbwtbwtbwtbwtbwtbwtbMhbKubRFbNWbomcbudckcVtbjRcVVbzdbzmbjRcWhbmmbmmcWAcWvbjRcWEcWQbjRbnbblAbeCblCbnbblAbeCblCbnbblAbeCblCbnbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbCcbBZbCebCbbCbbClbCibARbATaSdaSdaSdaTobCnbCfbCgbCfbCfbCfbCfbChbCtbCjblQblQbCkbCwbvsbwPbCmbCxbzxbvsbCobCpbCoblMblMblMblMbCqblMbCrbCsbxbbCybCubzCbCvbCzbxbbyybzJbCBbzFbBnbBnbCEbzJbCFbzLbyFbzRbDybCAbDsbCGbCCbBwbzUbCDbvXbCHbCIbxqbCKbCJbCLbxqbCRbCNbCSbCMbCTbCObCPbCQbCUbzYbCVbxvbCYbCXbAfbAgbAhbAibAkbCZbAkbDAbDbbDbbDbbDbbDbbDbbDbaRybAkbAkbAkbAkbAkbDabAkaRAaRCaRBaRCaRCaRCaREaRHaRFaSFaROaSHbFsaSKaSIaTHaSVbwvbwvbwvcXfbDpbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbDrbDqcXhcXgcXjcXibmmbGhbjRbwDbwCbxzbjRbGobmmbmmcXlcXkbjRbGNbGMbjRbqoblAbeCblCbqoblAbeCblCbqoblAbeCblCbqoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbDGbCbbCbbCbbCbbCbbCbbCbbDHbDCaOQbDCaSfbDIbCfbDEbDJbDLbDKbDMbChbDObDNbDQbDQbDWbKHbvsbvsbvsbynbDYbymblQblQblQblQbDPbnKbnKbCsbnKbCrbCsbxbbDZbDRbDSbDTbyvbxbbDUbzJbEbbzFbBnbBnbEfbDXbEjbzLcXqbxlbHpbHobzPbzPbzPbzPbzUbEcbvXbEdbEebvXbvXbvXbvXbvXbvXbvXbxubxvbErbEgbEhbEibEsbEkbEvbxvbEwbEnbEnbEpbEpbEpbEpbEpbEpbEqbEybEpaTLaTKaTMbEpbNebEobEobEobEobEobEubEubEuaTNbEubEubEubEubEubEuaTObEubEubEubteaTPaTQbwvbuxbuxbEAbEAbEAbEAbEAbEJbDqbDqbDrbDqbwvbDqbDqbDqbDqbEMbEDbEDbEDbEDcXncXibmmbAJbEFbjRbjRbjRbAKbALbmmbmmbAMbjRbjRbjRbqnbjRbicbzqbeCbeCbeCbeCbeCbeCbeCbeCbeCbeCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbEKbELbELbCbbELbELbELbARbERaSdaSdaSdaTobEVbCfbEYbEXbEXbEXbFcbChbnKbFfbESbETbEUbFgbvsbwPbEWbynbFhbymbFibEZbFabFbbFlbFdbFdbFebFdbFnbFobxbbFqbFpbFjbFkbFrbFmbNsbyBbFubFtbBnboxbFybvQbEjbzLcYPbxlbwebFvbJabFFbFIbFGbFMbxmbxmbFBbFCbFDbFEbFNbFEbFPbFCaaabFHbxvbFRbFJbFKbFLbEsbzYbFSbxvbFUbFObFWbEpaTTaTSaTVaTUaTYaTWaUPaUObLzbGabBLaVxaVIaVyaWOaWIaWSaWRbEuaYkaYoaYlaYraYqaZUaZTbobbbybuOaZTaZTbzibGrbGrbBJbGrbwLbwLbEAbGubGAbGwbEAbGBbGEbGBbEAbGFbDqbEMbEDbGKbGLbGKbEDbGCbGDbEDcXocXibmmbmmcXscXpcYdcXpcYebmmbmmbmmbwWbAEboIbANbrMboIbAObeCbeCbeCbeCbAPbeCbAPbeCbeCbeCbeCaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGPbARbARbARbARbARbARbARbARbERaaaaaaaSdbBgbmSbHabCfbHdbCfbHebIHbHfbGQbChbHgbGSbGTbGUbFgbvsbvsbvsbvsbvsbvsbGVbGWbGXbGYbGZbxbbxbbxbbxbbxbbxbbxbbwXbxbbxbbxbbHbbxbbHcbAFbHjbBnbBnbBnbHnbDXcZfbzLcZjbxlbBebFvbxlbxlbxlbxmbHrbxmbHkbHlbHmbHubHBbHzbHDbHCbHsbHtbHFbxvbHvbzYbHwbHxbEsbHybzYbxvbHHbHAbHIbEpbCWbBMbDfbDfbDfbDfbDfbDfbDfbDebDhbDgbDjbDibSnbDlbDnbDmbEubEtbEzbExbECaZTbEEaZTbFQbEIbuObFTbFXbFVbGrbIfbFYbIgbFZbBmbIabGcbIdbIdbImbIcbIlbInbEAbIibIrbIkbEDbItbIwbIvbIobIpbIybEDcYhcXibmmbmmbmmbmmcYmcYkcYkcYkcYkcYkcYnbqnbjRbjRbjRbjRbqpbjCbBWbBVbjCbBXaYUbBXaYUbBYbBRbBSbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabysbwEbwGbwHbwIbwIbwJbwIbwIbwIbwJbrQaSdaSdaSdbvwblFaPYbrUbwMbvnbvnbvnbvkbwMbrUbqrbvybwKbtIbvsbwPbwQbwRbwSbvsbwUbwTbwVblMbrNbstbwNbwYblMbnKbxabxbbxbbxcbxbbxbbxbbxbbxebxdbxdbxdbxfbxdbxgbxhbxibxjbxkbxlbxlbxlbxlbxlbxmbxmbxnbxmbvXbvXbxobxpbxqbxrbxtbxsbxobxubvXbxvbxwbxvbxvbxvbxvbxvbxvbxvbwjbhqbhqaUSbxxbmqaVGbJQbmqbznbmqbzobxDbxCbmqbxEbdTbxFbxGbdTbdTbxHbxJbxIbxJbdTbdTbebblbbxLbxMbxMbxMbxMbxLbxNbebbKVbwvbwvbwwbxPbaubxQbxRbxSbxTbxUbxVbxWbycbxZaYPbjDbyZbyabrJboJbsMbyabzlbjDbEFbzpbAwbAjbAzbAybABbAAbACbAjbAjbADbsIbAEboIbrLbrMboIbrKbeCbeCbeCbeCbeCbeCbeCbeCbeCbeCblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabysbrObrObrQbrObrObrObrRbrObrObydaabaSdbwObmSbyfbqrbtFbtFbtFbrUbyhbygbyjbyibqrbwZbyebtIbvsbymbvsbynbyobvsbyqbypbyrblMbrNbstbwNbskblMbnKbxabxbbytbyubyvbywbzBbxbbyybykbyxbylbyBbyBbyBbyCbyEbyDbyFbxlbyGbyHbyIbyJbyLbyKbyMbyNbvXbyObxqbxqbyPbyQbyPbxqbxqbyRbvXbySbyUbyTbyWbyVbyYbyXaZObxvbzabzbbzbbzcaUSaUSaUSaUSbAvbsNbAvbzeaUSbdRaUSaUSbdTbdTbdTbdTbzgbzfbzfbzfbzfbzhaQsbebbjBbzjbjBbzkbzkbjBbzjbjBbebbKVbwvbwvbAxbxPbaubaubaubaubaubtfbaubaubaubauaYPaYPaYPaYQbAGaYQbAHaYQaYPaYPbEFbAIbuHbAJbAKbjRbjRbjRbEFbALbmmbmmbAMbjRbjRbjRbqnbjRbicbttbeCblCblDblAbeCblCblDblAbeCbtubicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjQaLdaSdaSdaSdaMsaMsaMsaMsaMsaMsbzrbzsbqrbqrbqrbqrbqrbqrbztbqrbqrbqrbnKbnKbzwbvsbzubzvbynbzxbvsbzzbzybzAblMbrNbstbwNbnDblMbnKbxabxbbzCbzDbBjbywbBjbxbbyybyzbzEbzFbzIbzHbzKbzJbzMbzLbyFbzRbzNbBsbzPbzQbzQbzPbzUbzSbvXbzTbxqbxqbyPbzWbyPbxqbxqbzVbwbbzXbAbbzYbzZbAabAdbzYbAcbxvbAlbAebAfbAgbAhbAicMKbAkbAkbAkbAkbAkbAkbAmbAobAnbAkbAkbAqbAkbAkbAkbAkbAkbAkbAkbAkbApbAsbArbArbArbArbArbArbAtbAicVsbvhbvhbBtbBrbBNbBrbBPbBrbBUbBQbDkbBrbDubDtbElbDxcVUcVUbEmcVUbEBcVUbENbEHbFzbFwbGjbGhbjRbwDbwCbxzbjRbGobmmbmmbGIbGsbjRbGMbGNbjRblDblAbeCblCbnbblAbeCblCbnbblAbeCblCblDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAQbARbARbARbARbASbASbARbARbATaaaaabaSdaUlaMEbAVbAUbAXbAWbAWbAWbAWbAYbAZbBablQbnwbBcbBbbvsbvsbvsbBdbyobvsblMblMblMblMbrNbuabyAbBfblMbBhbBibxbbBkbBlbywbBjbCubxbbyybzGbzEbzFbBnbBobBpbzJbBqbzLbyFbzRbDobCAbDsbBubBvbBwbzUbBxbvXbBybyPbxqbBAbBzbBAbxqbyPbBBbxubBCbzYbzYbzZbBDbAdbzYbBEbxvbBFbAfbAfbAgbAhbAibAkbAkbAkbAkbAkbAkbAkbBGbAkbAkbAkbAkbAkbAkbBHbBIbBIbBIbBIaQwbBIbBIbBIbBIbBIbBIaQwbBIbBIbBIaQybDVdcebIsbIzbwtbwtbwtbwtbwtbwubwtbwtbwtbwtbwtbwtbwtbwtbwtbwtbwtbMhbKubRFbNWbomcbudckcVtbjRcVVbzdbzmbjRcWhbmmbmmcWAcWvbjRcWEcWQbjRbnbblAbeCblCbnbblAbeCblCbnbblAbeCblCbnbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbCcbBZbCebCbbCbbClbCibARbATaSdaSdaSdaTobCnbCfbCgbCfbCfbCfbCfbChbCtbCjblQblQbCkbCwbvsbwPbCmbCxbzxbvsbCobCpbCoblMblMblMblMbCqblMbCrbCsbxbbCvbCybBjbCzbDRbxbbyybzJbCBbzFbBnbBnbCEbzJbCFbzLbyFbzRbDybCAbDsbCGbCCbBwbzUbCDbvXbCHbCIbxqbCKbCJbCLbxqbCRbCNbCSbCMbCTbCObCPbCQbCUbzYbCVbxvbCYbCXbAfbAgbAhbAibAkbCZbAkbDAbDbbDbbDbbDbbDbbDbbDbaRybAkbAkbAkbAkbAkbDabAkaRAaRCaRBaRCaRCaRCaREaRHaRFaSFaROaSHbFsaSKaSIaTHaSVbwvbwvbwvcXfbDpbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbDrbDqcXhcXgcXjcXibmmbGhbjRbwDbwCbxzbjRbGobmmbmmcXlcXkbjRbGNbGMbjRbqoblAbeCblCbqoblAbeCblCbqoblAbeCblCbqoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbDGbCbbCbbCbbCbbCbbCbbCbbDHbDCaOQbDCaSfbDIbCfbDEbDJbDLbDKbDMbChbDObDNbDQbDQbDWbKHbvsbvsbvsbynbDYbymblQblQblQblQbDPbnKbnKbCsbnKbCrbCsbxbbDSbDTbDZbFjbywbxbbDUbzJbEbbzFbBnbBnbEfbDXbEjbzLcXqbxlbHpbHobzPbzPbzPbzPbzUbEcbvXbEdbEebvXbvXbvXbvXbvXbvXbvXbxubxvbErbEgbEhbEibEsbEkbEvbxvbEwbEnbEnbEpbEpbEpbEpbEpbEpbEqbEybEpaTLaTKaTMbEpbNebEobEobEobEobEobEubEubEuaTNbEubEubEubEubEubEuaTObEubEubEubteaTPaTQbwvbuxbuxbEAbEAbEAbEAbEAbEJbDqbDqbDrbDqbwvbDqbDqbDqbDqbEMbEDbEDbEDbEDcXncXibmmbAJbEFbjRbjRbjRbAKbALbmmbmmbAMbjRbjRbjRbqnbjRbicbzqbeCbeCbeCbeCbeCbeCbeCbeCbeCbeCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbEKbELbELbCbbELbELbELbARbERaSdaSdaSdaTobEVbCfbEYbEXbEXbEXbFcbChbnKbFfbESbETbEUbFgbvsbwPbEWbynbFhbymbFibEZbFabFbbFlbFdbFdbFebFdbFnbFobxbbFkbFpbFqbFrbKQbFmbNsbyBbFubFtbBnboxbFybvQbEjbzLcYPbxlbwebFvbJabFFbFIbFGbFMbxmbxmbFBbFCbFDbFEbFNbFEbFPbFCaaabFHbxvbFRbFJbFKbFLbEsbzYbFSbxvbFUbFObFWbEpaTTaTSaTVaTUaTYaTWaUPaUObLzbGabBLaVxaVIaVyaWOaWIaWSaWRbEuaYkaYoaYlaYraYqaZUaZTbobbbybuOaZTaZTbzibGrbGrbBJbGrbwLbwLbEAbGubGAbGwbEAbGBbGEbGBbEAbGFbDqbEMbEDbGKbGLbGKbEDbGCbGDbEDcXocXibmmbmmcXscXpcYdcXpcYebmmbmmbmmbwWbAEboIbANbrMboIbAObeCbeCbeCbeCbAPbeCbAPbeCbeCbeCbeCaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGPbARbARbARbARbARbARbARbARbERaaaaaaaSdbBgbmSbHabCfbHdbCfbHebIHbHfbGQbChbHgbGSbGTbGUbFgbvsbvsbvsbvsbvsbvsbGVbGWbGXbGYbGZbxbbxbbxbbxbbxbbxbbxbbMlbxbbxbbxbbHbbxbbHcbAFbHjbBnbBnbBnbHnbDXcZfbzLcZjbxlbBebFvbxlbxlbxlbxmbHrbxmbHkbHlbHmbHubHBbHzbHDbHCbHsbHtbHFbxvbHvbzYbHwbHxbEsbHybzYbxvbHHbHAbHIbEpbCWbBMbDfbDfbDfbDfbDfbDfbDfbDebDhbDgbDjbDibSnbDlbDnbDmbEubEtbEzbExbECaZTbEEaZTbFQbEIbuObFTbFXbFVbGrbIfbFYbIgbFZbBmbIabGcbIdbIdbImbIcbIlbInbEAbIibIrbIkbEDbItbIwbIvbIobIpbIybEDcYhcXibmmbmmbmmbmmcYmcYkcYkcYkcYkcYkcYnbqnbjRbjRbjRbjRbqpbjCbBWbBVbjCbBXaYUbBXaYUbBYbBRbBSbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjQaLdaSdaSdaSdaSdaSdaSdaSdaSdaSdaToaSfbIGbCfbJjbIBbIIbIDbIDbIJbILbIKbIMbIMbIObINbDQbDQbDQbDQbDQbDQbIQbIPbIPbIRbITbxbbIVbIUbIYbIXbISbIZbJfbJbbxbbIWbJibyBbyCbDXbHjbBnbBnbKCbzJbzJbJmdaQdbnbJcbJdbJebJpbJgbJhbJsbJtbJkbJlbJubHsbJnbJvbJnbJvbJwbHsbHtbJqbJrbJybJxbJDbJzbJGbJEbJHbJrbJIbFObFObEpbDcbBMbGdbDdbGfbGebGebLybDebDebDebGtbGxbGvbSnbDlbGzbGybEubHEbHJbHGbHLbHKbHMaZTbFQbEIbuObFTbFXaZTbGrbHNbHQbHPbHSbHRbHUbHTbHVbJYbJYbKhbJYbIbbKbbGbbKdbGkbKfbKqbKrbKibKibKibKjbEDcYpcYocYqcYqcYqcYrcYvcYscYwcYwcYwcYxbBKbAEboIbrMbrMboIbDBdsldsldsldsnbicaaabicbDDbDwbDwbDFbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbGmbGlbKpaMdaMdaMdbmSaSfaSfbCfbKPbCfbKDbKsbKtbKEbCfblQbKvbKvbKwbKFbKwbKwbKwbKFbKwblQblQbxbbxbbxbbKGbxbbKzbKzbKzbKzbKzbKzbJfbKAbKBbPabzFbKIbKKbKJbKMbKLbKObFxbMlbKQbKSbKRdbYbKUbKXbKXbLabKZbKTbLbbLfbKWbLgbKYbFCbLhbHDbLibHBbLkbFCaaabLcbLdbLebLnbLdbLdbLdbLdbLpbxvbLqbLrbIechhbGibGgbGibEpbIhbGqbJAbIjbJBbJKbJTbJPbJXbJWbKabJZbKcbOUbEubEubEubEubEubKebKgaZTbFQbEIbLjbFTbFXaZTbGrbLNbLEbLPbLmbLlbLIbLTbLobLLbLMbLUbLObKkbEAbGRbLRbKnbEDbKobKybKxbIpbLWbNCbEDcYhbmmcYObjRcZkcYYcZlboDcZmbjRcZnbuHcZobqnbjRbjRbjRbjRaYUdsqdsldslbEObicaaabicbEPbDwbDwbEQbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbGmbGlbKpaMdaMdaMdbmSaSfaSfbCfbKPbCfbKDbKsbKtbKEbCfblQbKvbKvbKwbKFbKwbKwbKwbKFbKwblQblQbxbbxbbxbbKGbxbbKzbKzbKzbKzbKzbKzbJfbKAbKBbPabzFbKIbKKbKJbKMbKLbKObFxccYccZbKSbKRdbYbKUbKXbKXbLabKZbKTbLbbLfbKWbLgbKYbFCbLhbHDbLibHBbLkbFCaaabLcbLdbLebLnbLdbLdbLdbLdbLpbxvbLqbLrbIechhbGibGgbGibEpbIhbGqbJAbIjbJBbJKbJTbJPbJXbJWbKabJZbKcbOUbEubEubEubEubEubKebKgaZTbFQbEIbLjbFTbFXaZTbGrbLNbLEbLPbLmbLlbLIbLTbLobLLbLMbLUbLObKkbEAbGRbLRbKnbEDbKobKybKxbIpbLWbNCbEDcYhbmmcYObjRcZkcYYcZlboDcZmbjRcZnbuHcZobqnbjRbjRbjRbjRaYUdsqdsldslbEObicaaabicbEPbDwbDwbEQbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbLYbLXbKpbLZbLZbMabMbbLZbMcbCfbMebIBbNSbMkbMnbMmbCfaaaaabaabbMpbMobMobMobMobMobMraaaaaabKBbMdbMsbMubMqbKzbKzbKzbKzbKzbKzbMwbMvbMzbMybMDbMBbMxbDXbzJbzJbMFbMAbzJbzJbMJbMCbMLbMEbMMbMGbMGbMHbMGbMIbMNbMGbMKbKYbFCbMObFEbFEbFEbMPbFCaaabLcbLdbMRbMQbMVbMTbMWbMSbNbbMUbNcbFObLschhbJFbJCbJJbIqbJLbDebLvbLubHObLAbLBbEobEobLDbLFbDlbLQbLKbLVbLSbMYbMXbLKbMZbNdbNabFTbEIbNfbFTbEIaZTbGrbNgbHXbHXbLmbNhbNEbNibNjbNHbNIbNJbNObNNbEAbMfbLRbMibEDbMjbNPbMtbIpbIpbNUbEDcZpbmmcZDbAKcZkbDvcZGcZEcZmbAKcZIcZHcZJbEGaaaaaaaaaaaabicdsudswdsvdsvbicaaabicbGObDwbGObDwbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbKpbKpbObaSdaSdbjQaLdaSdaSdbCfbOdbIBbIBbIBbCfbCfbCfaaaaaaaaabOebOcbOcbOfbOcbOcbOeaaaaaabKBbNQbKzbOibOhbOhbOhbOhbOhbOkbOjbOhbOlbOnbOmbOpbOobOrbOqbzJbOtbBnbFAbOsbDXbOwbOubOxbMEbMEbMGbOAbOybOCbOBbODbMGbFBbKYbFCbOEbOHbOFbOObOMbFCaaabOGbLdbOPbOIbOJbOKbOLbOKbOSbONbNkbFObNlchhbNnbLwbNpbIqbNmbLxbNqbNobHObLAbNrbEobNDbNAbNGbNFbNLbNKbORbNMbOVbOTbLKbOWaZTbOXbFQbEIbOYbFTbFXbFVbGrbOZbLEbLPbUlbNBbNEbPnbPbbPobPpbIdbPqbPybPsbPtbIrbPubEDbPzbPwbIpbPHbPBbPJbEDcZpbmmcYObjRcZkbmmcZGbmmcZmbjRcZnbmmcZKbEGaaaaaaaaaaaabIAbjJbIubIubIubICaaabIEbIxbIxbIxbjJbIFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIbPIbPIbPIbPNbPMbPIbPIbPIbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbOebPTbKBbKBbNRbPObPPbHhbHhbHhbPObKzbJfbKAbKzbKzbKBbPZbPSbQcbQdbPVbQebHibBnbBnbPYbDXbOwbOubQhbHqbJObQibQkbOzbQlbQgbQnbMGbQobQjbHmbQpbQqbQmbQsbQrbHsbHtbQtbLdbQvbQubQwbOKbQxbOKbQybONbQzbFObKNbPcbPebLtbPfbEpbPgbNybDebPhbHObLAbPmbEobPGbPFbQabPKbQAbNKbQCbQBbQEbQDbLKbFXaZTbQFbQHbQGbQIbNdbQJbNdbQLbQKbQKbQKbQNbQMbIabRkbPbbPobRlbRhbPqbRmbEAbOvbOvbPdbEDbRpbRybRqbRzbIpbREbEDcZTcYmcYkcZVdaacYkdaldakbmmdambmmdandaqbEGaaaaaaaaaaaaaaabIAbKmbKmbKmbIFaaabIAbKmbKmbKmbIFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbKpbKpbObaSdaSdbjQaLdaSdaSdbCfbOdbIBbIBbIBbCfbCfbCfaaaaaaaaabOebOcbOcbOfbOcbOcbOeaaaaaabKBbNQbKzbOibOhbOhcdabOhbOhbOkbOjbOhbOlbOnbOmbOpbOobOrbOqbzJbOtbBnbFAbOsbDXbOwbOubOxbMEbMEbMGbOAbOybOCbOBbODbMGbFBbKYbFCbOEbOHbOFbOObOMbFCaaabOGbLdbOPbOIbOJbOKbOLbOKbOSbONbNkbFObNlchhbNnbLwbNpbIqbNmbLxbNqbNobHObLAbNrbEobNDbNAbNGbNFbNLbNKbORbNMbOVbOTbLKbOWaZTbOXbFQbEIbOYbFTbFXbFVbGrbOZbLEbLPbUlbNBbNEbPnbPbbPobPpbIdbPqbPybPsbPtbIrbPubEDbPzbPwbIpbPHbPBbPJbEDcZpbmmcYObjRcZkbmmcZGbmmcZmbjRcZnbmmcZKbEGaaaaaaaaaaaabIAbjJbIubIubIubICaaabIEbIxbIxbIxbjJbIFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIbPIbPIbPIbPNbPMbPIbPIbPIbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbOebPTbKBbKBbNRbPObPPbHhbHhbHhbPObKzceEbKAbKzbKzbKBbPZbPSbQcbQdbPVbQebHibBnbBnbPYbDXbOwbOubQhbHqbJObQibQkbOzbQlbQgbQnbMGbQobQjbHmbQpbQqbQmbQsbQrbHsbHtbQtbLdbQvbQubQwbOKbQxbOKbQybONbQzbFObKNbPcbPebLtbPfbEpbPgbNybDebPhbHObLAbPmbEobPGbPFbQabPKbQAbNKbQCbQBbQEbQDbLKbFXaZTbQFbQHbQGbQIbNdbQJbNdbQLbQKbQKbQKbQNbQMbIabRkbPbbPobRlbRhbPqbRmbEAbOvbOvbPdbEDbRpbRybRqbRzbIpbREbEDcZTcYmcYkcZVdaacYkdaldakbmmdambmmdandaqbEGaaaaaaaaaaaaaaabIAbKmbKmbKmbIFaaabIAbKmbKmbKmbIFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbRubRvbRwbRxbRGbRHbRAbRGbRBbRCbRDbPIbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbRJbRIbRKbRIbRSbRRbRTbRRbRRbRRbRRbPQbJfbKAbRLbxbbxbbRMbBnbzFbQdbRNbDXbPXbRPbRPbRQbNYbRYbRXbRZbRVbQbbSbbSdbScbSabQgbSebMGbMKbKYbFCbSfbShbSgbSlbSkbFCaaabOGbSibSjbSibSibSibSibSibSmbSibSpbFObQOchhbQQbQPbQQbEpbQSbQRbSsbSqbHObLAbNzbQTbQWbQUbQZbQYbRabLKbQCbRbbOVbRcbLKbWdbWdbWdbRebRdbEubEubEubEubGrbJobHXbHXbRfbSTbIabSWbRibRgbRrbRjbPqbSYbTabSZbTfbTcbTbbTgbTdbTebTjbTebEDbEDbEGdasbEFbEFbigdatdazdatbigaYSaYSaYSaYSaYSaYSdaCdaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIbRAbRAbRAbTlbRGbTnbTnbRGbTobRAbRAbTpbWLbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbTtbTrbTqbTrbNTbKzbPPbHhbHhbHhbKzbKzbJfbKAbQfbRobxbbTAbBnbTBbQdbTvbDXbRObBnbBobBnbPWbOwbTybTzbRVbQbbTCbTEbTDbTKbTFbTLbTGbTHbTIbTJbTJbTNbTMbTPbFCbFCaaabOGbSibTQbTObTSbTRbTVbTTbTWbTUbTXbFObRsbQVbSobRtbSrbEpbIqbStbIqbEpbPvbPrbPxbOUbOUbSwbSybSxbOQbLKbNKbSzbSAbLKbLKbWdbSCbSBbSEbSDbWgbSFbSHbSGbGraZSbpDbSIbRUbRUbIabSJbUEbUFbIabSKbPqbUHbIabUKbUMbULbUObUNbZNbpvbsBbqbbRnbtscjTcjYcOCbKlbigbaNdaEbaObaGbaTbaQbaRbaHbaTbaUbaVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIbVebVfbVgbVhbVibRGbVkbRAbVlbRAbRAbRAbRAbRAbTlbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebVmbOcbOcbOcbVnbOebPTbKBbKBbOgbKzbPPbKzbKzbKzbKzbKzbJfbKAbQfbRWbxbbVrbBnbVqbVsbBnbVwbzEbBnbBnbVtbDXbOwbTybTzbRVbQbbMGbVubVvbVybVxbVzbMHbVBbVAbVDbVCbHsbVEbVFbHsbHtbHtbVGbSibVIbVHbVKbVJbVLbVLbVNbVMbVObFObSMbSubSObSNbSPbSvcrAbSLcrAcrAbSRbSQbSUbSSbwFbXAbSXbRtbXAbThbXAbJRcuobJSbTZbTYbUabUabUcbUbbWgbUdbUfbUdbWibWibWjbWjbWjbWjbIabIabIabIabIabWlbWnbLIbIabNVbNZbNXbWqbWqbPibOabLRctvbPkbPjcacdlDbGGdaSbigdaZdbedbddbkbaTbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIbVebVfbVgbVhbVibRGbVkbRAbVlbRAbRAbRAbRAbRAbTlbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebVmbOcbOcbOcbVnbOebPTbKBbKBbOgbKzbPPbKzbKzbywbKzbKzbJfbCybQfbRWbxbbVrbBnbVqbVsbBnbVwbzEbBnbBnbVtbDXbOwbTybTzbRVbQbbMGbVubVvbVybVxbVzbMHbVBbVAbVDbVCbHsbVEbVFbHsbHtbHtbVGbSibVIbVHbVKbVJbVLbVLbVNbVMbVObFObSMbSubSObSNbSPbSvcrAbSLcrAcrAbSRbSQbSUbSSbwFbXAbSXbRtbXAbThbXAbJRcuobJSbTZbTYbUabUabUcbUbbWgbUdbUfbUdbWibWibWjbWjbWjbWjbIabIabIabIabIabWlbWnbLIbIabNVbNZbNXbWqbWqbPibOabLRctvbPkbPjcacdlDbGGdaSbigdaZdbedbddbkbaTbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWObWGbRAbRAcuHcuHcuHbRGbRAbRAbRGbWIbWJbWKbRAbWMbWNbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbWPbTrbTqbTrbNRbTubWRbKzbKzbKzbTubKzbJfbKAbQfbTsbxbbWWbBnbzFbQdbBnbzJbLJbBnbBnbWUbDXbOwbTybWVbRVbTxbMGbXbbWYbWZbXabXdbMHbXcbXebXgbXfbXibXhbXjbFCaaaaaaaaabSibXpbXkbXlbXlbXmbXnbXobSibXrbXqbUhbPUbUjbUibUrbUkbUnbUebUmbUmbUpbUobUmbUmbUqbUmbUmbUsbUnbUmbUmbUGbNubNtbUwbUvbUBbUybZfbUDbXNbUIbUIbUIbUJbWgbLRbUPbWqbWqbXYbXXbWqbXZbYbbYabYdbYcbWqbPlbYgbYfbYibYhbYlbYjbYjbYjbYjbYjcacdlDdbmcAUbigdbodbpbclbcIbaTbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYubWGbRAbRAbRAbRAbRAbYtbRAbRAbRGbPIbPIbPIbPIbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbWQbUgbYwbUgbYybYxdcYdcYdcYdcYdcYbUCbYEbYDbQfbVpbxbbYGbYIbYHbYNbYJbYKbYLbYLbYLbYMbYMbYObTybYRbWSbQbbMGbYTbYSbYVbVvbYWbMHbYUbYXbZdbTJbZebQmbYYbFCaaaaaaaaabSibYZbZabZbbZcbXmbXnbXobSibZgbZJbURbUQbUTbUScyTcyTbUVbUUbUXbUWbUWbUYbUZbUZbVabUZbUZbUSbUVbUZbVcbVbbVdcyTbVPbVjbVRbVQbVTbVSbVVbVUbVXbVWbVZbVYbWcbWbbWcbWcbWebUNbZMbUNbZNbUNbZPbZObZObPCbPDbZRbZUbZTbZXbZVbVobZWbYzbYjdbwdbvdbxbGGdbhbcHdbHbgbbgkbaTbgcbgmbaTbaTbgdbaVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIcafcagcahcaibRAbRGbRAbRAbRGbRAcancakcaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbOebPTbKBbKBbxbbxbbKBbKBbKBbKBbKBbxbbxbbKBbKBbKBbxbcamcamcamcascambYMcaocapcaqcatbYMbOwbTycawbMEbMEbMGbMGbMGbMGbMGbMNbMHbTJbTIcaubTJcavcaxbFCbFCbFCbFCbFCbSibSjbSibSibSibSibSibSibSibNvbFObWfbSubWkbWhbWobWmbWscaAbWubWtbWxbWwbXGbWubWabWybWabWybWabWybWabWzbWAcrAbTZbWBbWDbWCbWFbWEbXNbXsbXubXtbXvcbdcbdcbecbdcbfcbicbfcbfcbfcbhcblcbjcbjcbkcbmcbocbnbZUcbpcbrcbqbYAcbsbYBbYjdbObGGbGHbGHaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSdaCdaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPIbPIbPIbPIbPIbPIbRGbTobRAcbzbRAcbxcbycbAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbDcbBbOccbCbOccbEcbFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbGaabaaaaaaaaaaaacamcbIcbHcbKcbJbYMcbNcbLcbMcbRbYMbOwbTycbOcbPcbQbXwcbVcbTcbUcbWcbYcbXbXxcbZcccccbccfccdcceccgccjcchccibXybXzcclccmbEnccnbFOccoccpccrbFObXBbQVbXCcaAcaAbXDbXDcaAbXFbXEbZhbXHbZibXIbWabXKbXMbXLbXMbXObWabXPbWAbXRbWdbXSbXUbXTbXSbXSbWibXVbXWbXQbYkcbdccTccSccVccUccXccWcdbcbfccYccZcdacbjcbjcdccbocddcdfbPEcdhcdgcdicbscdkbYjcdndfcbZZaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIcdlcdmcdpcdlcdobRGbRAbRAbRGbRAcdrcdqcdsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdvcdtcducducducdtcdwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacamcdycdxcdAcdzbYLcdBcdDcdCcdEbYMbOwbNwcdFbTybTybYmbYncdIcdJcclcdObYobYpcdMcdNcdNcdQcdPcdRcdNcdNcdTcdNcdNcdScclccmbEncdVcdUcdXbYqcdZcdYbFOchfbYrcaAbZjbYsbYsbXJbZhbZkbZnbZlcaBbZmbZpbZobZrbZqbZtbZsbZvbZubWAcuvchrbZwbZybZxbZAbZzbZBccQbXWbXQbZBcbdcezceyceBceAceDceCceGcbfceEccZceFceFcbjceHceJceIceLceKceNceMbGnceOceSbYjcaccLhbGpdbPdbPdbPdbZdbXdbXdcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWObWGceRceRceRceRceRceTbRAbRAbRGbPIbPIbPIbPIbPIbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceVceUceUceUceWaaaaaaaaaaaaaaaaaaaaaceXceZceYceZcfaaaaaaaaaacamcamcamcffcfbcdAcfcbYLcfdcbMcfecfgbYMbOwbNxbTicficflcfkbZDbZCbZFbZEbZHbZGbZIcfscftcftcfxcfvcfvcfvcfvcfvcfvcfvcJfcfycfzcfBbZLbZKbZYbZScabcaacadchfcajcaAcazcalcaCcaEcaEcaDcaGcaFcaIcaHcaKcaJcaMcaLcaOcaNbZvcaPcaQcuvbZzcaRcaTcaScaVcaUcaXcaWcaZcaYcaXcbdcgccgbcgecgdcghcgfcggcbfcgiccZceFceFcbjcgjcgmcgkcglcgncgpcgocgrcgqcgvbYjdcbcgscgtcgscgucgycgucgucgudccaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYubWGceRceRceRcgwcgxbRGbRAbRAbRGbRAbRAbRAcgzbRAcgAbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacgFcgBcgCcgDcgFbYPbYPbYPcamcgHcgGcgJcgIcgLcgKcgNcgMcgOcgOcgPbYMbTkcgQcgTcgScgScgUcbacgVcgScgWcgWcgYcbbcgZcgWcgWchacclcclchechcchcchcchccbcchcchcchfcbgchfchfchfchfchfchfchfcbvcbtbWXbYCcckccaccsccqccucctccwccvbWaccxcczccyccBccAccDccCccEcuvccGccFccIccHccJchrbWibWgbWgbWgbWicbdcbdchMchQchOchPchOchRcbfchUchSchTchTcbjchVchXbTwbYjbYjbYjbYjbYjbYjbYjbYjcaccgscifchYchZciaciacibcguaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcicciccicciccidcidcieciecieciecijaabaabaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIcigceRceRcihciibRGbRAbRAcikbRAbRAbRAciobRAcilbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceYcimcincimceYbYPcipciqcamcitcfbcircisciyciubYMcivciwcixcizbYMcgQcgQciCcgSciAciBccKciDciHcgWccLciGccMciIciKcgWciMciLciNchcccOccNccRccPcdjcdebYFbYQcdLchfceacdWceccebchfcedcbvcaAcaAcaAcaAcaAcaAcaAcefceecegcaAcDfcDfcDfcDfcDfcDfcDfcDfceicehccGcejcelcekcencemcepceocerceqclpcjFcjHcjGcjIcjGcjGcjLcjJcjKcjPcjMcjNcjOcbjcjQbUtcbnbPtbGGcjTcjScjUcjUcjScjUcjYcgscjVcjWchZciackecjXcguaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaciccjZckacjZcidciecieckbckcckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIckdceRceRckfbRGbRAbRAbRGckgbRAbRAckjckhbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacgFckicimcimckkcklcfbcfbckmckncfbcfbcisckqckobYMbYMbYMbYMbYMbYMckpcgQciCcgSclRcesceucetckucgWckvcevcexcewcePcgWcfmceQcfnchccfpcfockHckGcfqckIchcchfdgCchfcebcebcfrcebchfcsLcbvchfcfwbUucfCcfAcfEcfDcfGcfFcfIcfHcfKcfJcfMcfLcDfcfNcfPcfOcfRcfQcfTcfScfVcfUcfXcfWcepcfYcgacfZclpclncjGcjGclmclocjGcltclpcbjclqccZclrclrcbjcbmclscbnbPtcgsclvcgscgscgscgscgscgscgscluclwcguclxclzclycguafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOclBcjZcjZclAciecieckbckbclHckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIclCclDclEbRGbRAclFbRGclGclIbRAbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceYcincincinceYbYPclJclMclKckncfbcfbclLclOclNclQclPclPclPclTcgQcgQcgQciCcgSclRcktclScktclVcgWckvckwclUckwclWcgWclYcHDclZchccmccmacmbcmechbcgXchcchdchgchfchfchichfchfchfcsLcbvchfchkchjchmchlcfEchncfGcfFchocfHchqchpchtchscDfchuchvcDfchxchwchzchychBchAchEchDcepchFcgachGclpclncmMcjGcjGcjGcmQcmOclpcbjcmPccZclrclrcbjcmTbUzcbnbPtcmScmVcmUcgscmWcmYcmXcnbcmZcnacnfcgucnccndcnecgucgscgscgscgEcgEcgEcgEcgEaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaacnkcieclBciecieckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIbPIbPIbPIbPIbPIbPIbPIbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabafOcgQcngcngcgQcngcngcgQaaaaaacgFcnhcnicnjcgFbYPbYPbYPcamcnmcnlcnocnocnocamcamcgQcnncnpcnrcnqcgQcnscntcgSclRcktcktcktcnvcgWckvckwckwcnuchHcgWcpicHDcnAchcchcchcchcchcchIchcchccnCdgCcsLcsLcsLchfcABchJcsLcbvchfchLchKciEchNcfEciFcfGcfFcfIcfHciOciJciQciPcDfciRciScDfciUbSVchrciVciXciWchrchrcepciYcjaciZclpcjbcodcoicoicoicodcogcodcodcohcojclrclrcbjcokclscbncomcolcooconcorcopcoqcoqcotcoscovcoucoxcowcozcoycoCcoAcoBcoDcoEcoFcoHcoGcoIaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaacidciecbwcbScbSckbckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaacgQcoKcoLcgQcoKcoLcgQaaaaaacoOceZcoNceZcoQaaaaabaaacamcamcamcamcamcamcamcoPcgQcoScoRcoUcoTclPcoVcoWcgScoYcoXcpfcktcjccgWcjdckwcjfcjecjgcgWcjicjhcjkcjjcpqcpqcpqcpqcjlcpmcppcpocjncjmcjmcjocjqcjpcjscjrcjtchfcjwcjucjycjxcjAcjzcjCcjBcjCcjDckrcjEckxcksckzckyckAcDfckBcuvckCcjvckDcmDckFckEciYckJckLcgacpRcpTcpRcpUcpWcpVcpRcpXcpYcodcqacpZcdacbjcbjcqccqbcqfcqdcqecqicqgcqhcqlcqjcqkcqncqmcqpcqocqtcqqcqrcqqcqscqrcqrcqucqwcqvcqycqxcqCaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaacieciecdHckbckbckbckbckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPIbPIbPIbPIbPIbPIbRGbTobRAcbzbRAcbxcbycbAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbDcbBbOccbCbOccbEcbFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbGaabaaaaaaaaaaaacamcbIcbHcbKcbJbYMcbNcbLcbMcbRbYMbOwbTycbOcbPcbQbXwcbVcbTcbUcbWcbYcbXbXxcbZcccccbccfccdcceccgccjcchccibXybXzcclccmbEnccnbFOccoccpccrbFObXBbQVbXCcaAcaAbXDbXDcaAbXFbXEbZhbXHbZibXIbWabXKbXMbXLbXMbXObWabXPbWAbXRbWdbXSbXUbXTbXSbXSbWibXVbXWbXQbYkcbdccTccSccVccUccXccWcdbcbfceFchSchTcbjcbjcdccbocddcdfbPEcdhcdgcdicbscdkbYjcdndfcbZZaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIcdlcdmcdpcdlcdobRGbRAbRAbRGbRAcdrcdqcdsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdvcdtcducducducdtcdwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacamcdycdxcdAcdzbYLcdBcdDcdCcdEbYMbOwbNwcdFbTybTybYmbYncdIcdJcclcdObYobYpcdMcdNcdNcdQcdPcdRcdNcdNcdTcdNcdNcdScclccmbEncdVcdUcdXbYqcdZcdYbFOchfbYrcaAbZjbYsbYsbXJbZhbZkbZnbZlcaBbZmbZpbZobZrbZqbZtbZsbZvbZubWAcuvchrbZwbZybZxbZAbZzbZBccQbXWbXQbZBcbdcezceyceBceAceDceCceGcbfcjMchScjNcjNcbjceHceJceIceLceKceNceMbGnceOceSbYjcaccLhbGpdbPdbPdbPdbZdbXdbXdcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWObWGceRceRceRceRceRceTbRAbRAbRGbPIbPIbPIbPIbPIbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceVceUceUceUceWaaaaaaaaaaaaaaaaaaaaaceXceZceYceZcfaaaaaaaaaacamcamcamcffcfbcdAcfcbYLcfdcbMcfecfgbYMbOwbNxbTicficflcfkbZDbZCbZFbZEbZHbZGbZIcfscftcftcfxcfvcfvcfvcfvcfvcfvcfvcJfcfycfzcfBbZLbZKbZYbZScabcaacadchfcajcaAcazcalcaCcaEcaEcaDcaGcaFcaIcaHcaKcaJcaMcaLcaOcaNbZvcaPcaQcuvbZzcaRcaTcaScaVcaUcaXcaWcaZcaYcaXcbdcgccgbcgecgdcghcgfcggcbfcgichScjNcjNcbjcgjcgmcgkcglcgncgpcgocgrcgqcgvbYjdcbcgscgtcgscgucgycgucgucgudccaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYubWGceRceRceRcgwcgxbRGbRAbRAbRGbRAbRAbRAcgzbRAcgAbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacgFcgBcgCcgDcgFbYPbYPbYPcamcgHcgGcgJcgIcgLcgKcgNcgMcgOcgOcgPbYMbTkcgQcgTcgScgScgUcbacgVcgScgWcgWcgYcbbcgZcgWcgWchacclcclchechcchcchcchccbcchcchcchfcbgchfchfchfchfchfchfchfcbvcbtbWXbYCcckccaccsccqccucctccwccvbWaccxcczccyccBccAccDccCccEcuvccGccFccIccHccJchrbWibWgbWgbWgbWicbdcbdchMchQchOchPchOchRcbfchUcjOclqclqcbjchVchXbTwbYjbYjbYjbYjbYjbYjbYjbYjcaccgscifchYchZciaciacibcguaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcicciccicciccidcidcieciecieciecijaabaabaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIcigceRceRcihciibRGbRAbRAcikbRAbRAbRAciobRAcilbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceYcimcincimceYbYPcipciqcamcitcfbcircisciyciubYMcivciwcixcizbYMcgQcgQciCcgSciAciBccKciDciHcgWccLciGccMciIciKcgWciMciLciNchcccOccNccRccPcdjcdebYFbYQcdLchfceacdWceccebchfcedcbvcaAcaAcaAcaAcaAcaAcaAcefceecegcaAcDfcDfcDfcDfcDfcDfcDfcDfceicehccGcejcelcekcencemcepceocerceqclpcjFcjHcjGcjIcjGcjGcjLcjJcjKcjPclrcmPcmScbjcjQbUtcbnbPtbGGcjTcjScjUcjUcjScjUcjYcgscjVcjWchZciackecjXcguaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaciccjZckacjZcidciecieckbckcckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIckdceRceRckfbRGbRAbRAbRGckgbRAbRAckjckhbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacgFckicimcimckkcklcfbcfbckmckncfbcfbcisckqckobYMbYMbYMbYMbYMbYMckpcgQciCcgSclRcesceucetckucgWckvcevcexcewcePcgWcfmceQcfnchccfpcfockHckGcfqckIchcchfdgCchfcebcebcfrcebchfcsLcbvchfcfwbUucfCcfAcfEcfDcfGcfFcfIcfHcfKcfJcfMcfLcDfcfNcfPcfOcfRcfQcfTcfScfVcfUcfXcfWcepcfYcgacfZclpclncjGcjGclmclocjGcltclpcbjcmUchScmVcmVcbjcbmclscbnbPtcgsclvcgscgscgscgscgscgscgscluclwcguclxclzclycguafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOclBcjZcjZclAciecieckbckbclHckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIclCclDclEbRGbRAclFbRGclGclIbRAbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceYcincincinceYbYPclJclMclKckncfbcfbclLclOclNclQclPclPclPclTcgQcgQcgQciCcgSclRcktclScktclVcgWckvckwclUckwclWcgWclYcHDclZchccmccmacmbcmechbcgXchcchdchgchfchfchichfchfchfcsLcbvchfchkchjchmchlcfEchncfGcfFchocfHchqchpchtchscDfchuchvcDfchxchwchzchychBchAchEchDcepchFcgachGclpclncmMcjGcjGcjGcmQcmOclpcbjcohchScmVcmVcbjcmTbUzcbnbPtcojcolcomcgscmWcmYcmXcnbcmZcnacnfcgucnccndcnecgucgscgscgscgEcgEcgEcgEcgEaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaacnkcieclBciecieckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIbPIbPIbPIbPIbPIbPIbPIbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabafOcgQcngcngcgQcngcngcgQaaaaaacgFcnhcnicnjcgFbYPbYPbYPcamcnmcnlcnocnocnocamcamcgQcnncnpcnrcnqcgQcnscntcgSclRcktcktcktcnvcgWckvckwckwcnuchHcgWcpicHDcnAchcchcchcchcchcchIchcchccnCdgCcsLcsLcsLchfcABchJcsLcbvchfchLchKciEchNcfEciFcfGcfFcfIcfHciOciJciQciPcDfciRciScDfciUbSVchrciVciXciWchrchrcepciYcjaciZclpcjbcodcoicoicoicodcogcodcodconcoocmVcmVcbjcokclscbncpZcqacqecqgcorcopcoqcoqcotcoscovcoucoxcowcozcoycoCcoAcoBcoDcoEcoFcoHcoGcoIaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaacidciecbwcbScbSckbckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaacgQcoKcoLcgQcoKcoLcgQaaaaaacoOceZcoNceZcoQaaaaabaaacamcamcamcamcamcamcamcoPcgQcoScoRcoUcoTclPcoVcoWcgScoYcoXcpfcktcjccgWcjdckwcjfcjecjgcgWcjicjhcjkcjjcpqcpqcpqcpqcjlcpmcppcpocjncjmcjmcjocjqcjpcjscjrcjtchfcjwcjucjycjxcjAcjzcjCcjBcjCcjDckrcjEckxcksckzckyckAcDfckBcuvckCcjvckDcmDckFckEciYckJckLcgacpRcpTcpRcpUcpWcpVcpRcpXcpYcodcqicwLchTcbjcbjcqccqbcqfcqdcwMcxacIpcqhcqlcqjcqkcqncqmcqpcqocqtcqqcqrcqqcqscqrcqrcqucqwcqvcqycqxcqCaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaacieciecdHckbckbckbckbckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOaaaafOcgQcqzcoLcgQcqzcoLcgQaaaaaaaabaabaabaabaabaabaabaabaabcgQcoLcqAcqBcgQcqEcqGcgQcqHcgQcgQcqFcgQcgQciCcgScqRcqIcqJcqKcqLcgWckMcqOcqScqQcqTcgWckOckNckPcJZcsDcsDcsDcsDcsDcrdcqZcrackQchfcucckRcsLckSckTcsLcsKchfckVckUckXckWcCWckYclackZclbcDfcldclcclfclecDfcDfcDfcDfclhclgckCchCcljclicllclkciYcmdcgacmfcpRcrNcrQcrLcrMcrLcrTcrOcrPcodcbjcrUcbjcbjcrRcrSclsbLRbPtcgscrVcgscgscrWcrYcrXcsacrZcsdcsbcsfcsecsgcsecsgcshcsgcsicgEcsncrwcsqcsraabaabaabaabaabaabaabaabaaaaaaaaaaaaaaacieckbckbckbckbckbckbcdKckbcmzckbckbckbckbckbciecieaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcsjafOaabaMraMrafOcgQcgQcqFcgQcgQcqFcgQcgQcgQcngcngcngcgQcgQcgQcgQcgQcgQcgQcoLcskcslcgQcsmcgQcgQcsucgQcsocspcoLcgQcqPcgScsycsxcszclRcmgcgWcswckvcsEcsCcmhcgWcsIcsHcmicsDcsDcsNcsOcsGcmjcsQcsJcsKcsLcsUchfcmkcsLckSckTchfchfchfcCWcCWcmlcCWcCWcxhcnwcmmcxhcDfcDfcDfcDfcDfcDfcmncmpcmocmrcmqcmtcmscmvcmucmxcmwciYcgacgaaqEcpRcttctxctwctyctwctActzcrLctuctvctBbLRctCbLRcrSclsbLRbIictFctHctGcgscgscgscgscgsctIcqkctKctDcsccqkctEcqkclucqkctLcgEctOctQctPcgEaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaciecmCcmCcmCcmCcmCcmCcmEckbcoJcmCcmzckbckbckbckbcieaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabafOafOcngcoLcoLcoLcoLctMctNcoLcoLcoSctUctUctVctUctUctUctUctUctUctUctUctUctUctUctUcoRcgQcskcqzctWcgQcqPctRctRctRctRctRctRcgWcgWcgWcgWcgWcgWcgWcuactXcmBcoMcpgcqDcmFcmFcmGcuicsJcmHcsLcubcuccmIcsLckScmJchicsLcsLcsKcCWcmLcmKcmNcCWcHWcnxcnBcnzcnEcnDcnGcnFcnIcnHcnKcnJcnMcnLckCcnNcnPcnOcnRcnQciYbQXcgacgacpRcuGcnTcnScnUcrLcuKcuJcuOcuLcuScuRcuVbLRcuXcrSclscuMbIibPAcuNcuYcuPcuQbGGbGGcgscvccvecuTcuUcvfcuWcvgcvicuZcvacvbcgEcvjdoKdoFcvraaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaacvscjZcjZcjZcjZcjZcjZcjZcvhcvtckbckbckbckbcvvckccieaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9059,57 +9060,57 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFVcFWcFXcFXcFXcGfcFWcHycFXcANcFXcHBcEacHEcGjcHzcHucHzcHFcHJcHDclXcHDcHDcHKcnAcnAcHDcHGcHDcHDcHDcHDcHDcHDcHDcHDcHDcHDcHHcHIcHMcHLcHOcHNcHUcHTcHPcHQcHRbWTcdGcaycHVcHYcxDcxCcGKckScmJctZcucdducxEddwcQkcxFcxGcUTcxJcxHcxPcxLcUTcxRcxTcQkcyJcsLcrDcyKcyMcyLcpQcrDcyNcyNchfcmAcyPcebctrbQXctsaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaacBRcHAcHXcHCcBRcAPcAPcAPcAPcAPcAPcICcHwcIDcIHcIFcIEcAPcAPbGHcFcbGGbZZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFVcIIcFXcIGcFXcGfcIJcIMcIKcINcILcITcIzcIBcIAcIQcIRcIScIVcIXcIWcJacIYcJbcqVctScqVcIXcJccIXcIXcIXcIXcIXcIXcIXcIXcIXcIXcJdcHDcKmcJecJicJhcJgcJjcJodcdcfjcfhcgRcfucJycJpcyRcyQcGKckScmJcsLchfchfcySchfcQkcQkcQkcQkcyVcyUcyXcyWcUTcyYczacyZcyJcsLchfchfchfchfchfchfcsLcyNchfczbchfcsLctrbQXcepaaaaaaaaaaaaaabcepcBRcBRcBRcBRcBRcBRcBRcBRcIOcJNcIPcxNcJKcJKcJLcBRaabcAPcAPcJOcAPcJTcJRcJPcAPcJQcuQcFcbGGbZZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacJUcJScEWcEWcEWcEWcJYcEYcEYcEYcEYcKacEYcJVcJVcJVcJWcJXcKdcEYcJZcKgcKbcKbcKicKbctTcKbcKbcKecKfcKbcKbcKfcKfcKfcKbcKbcKbcKbcKkcKhcLKcKlcKtcKqcKxcKndcgcKncKncKncKnchWcKycKrczccKzcGKczdczecsLczfcsLcYiczgcuccTBcKOcyZcQkcQkcQkcQkcQkcQkcQkcQkcsLcKOchfczhczjcziczkchfczlchfchfchfchfchfctrbQXcepaaaaaaaaaaaaaaacepcKPcKQcKRcKWcIUcKYcKXcxNcJkcJmcJlcxNcJKcKZcLacBRaabaabcLbcLkcLjcLecLlcLgcLbbGGbGGcFccLhbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalwalvalvalwalvalvaabamhaabayiaaaayiayicLicJncLmcLmcLmcLpcLocEYbTmcLrcGhcLtcLscLucEYcLycLwcKfcLGcwLcwMcxacLzcLAcLJcLCcLDcKbcLCcLEcLFcLGcLGcLHcKbcLLcVbcHJcLNcnycLTcLMdcicLOdcjcjRdcjcwocmRcLXcLWczncMacGKcGKcbvcsLcnVcsLcYicsLcuEcsLcsLctZcsLcsLcsLcKOctZczocsLcyJcsLcsLcBQcsLczqczpczrcyJczschfcztchfczuchfczvbQXcepaaaaaacepcepcepcepcJKcMgcJKcMlcJrcEHcJNcxNcxQcMocxQcxNcJKcJKcMkcBRaabaaacLbcMucMmcLecLecMncLbcMpbGGcFcbKlcMsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaabaabaaaaabaabaaaaaaaabaabaabaabaabcLicLicMqcLicLicMrcMvcEYcEYcEYcEYcEYcEYcEYcEYcLicLwcKfcMtcMxcMycMycMycMycMycMCcMzcMDcLGcMAcLGcLGcMBcLGcMEcMGcMFcMHcLNcnycMLcHQcMPcLOdcBcHSdcEcLOdcGcMRcMNcAjczxcAlcAkcAncAmcMXcAmcApcAocArcAqcrecrecAscrecAtcsLcsLcsLcAucyJcyJcsLcBQcAvcAvcAwcAycAxcAzchfcAAcAvcACchfcADcsLcBPcepcepcepbQXcAEcepcJKcJKcJKcNmcJJcNocNncNqcNpcNscNrcxNcNtcNycNxcBRaaaaaacLbcNzcLecNucLecNvcLbbGGbGGcFccMsbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhnaaaalwaaacNFcNEcNMaaacNFcNEcNMaaacNFcNEcNMaaaaaacLicNAcNBcNCcLicNDcNNcLmcLmcLmcLmcLmcLmcLmcLmcLmcNRcKfcNGcLGcMBcNHcLGcLGcLGcNIcLGcNGcNGcLGcLGcLGcLGcNJcNKcMGcNLcHDcNScyEcHQcHQcNTcLOcNOcNPcNQcLOcNUcHVcJMcKocKccAHcGKcsKcsLcNYcsLcAIdfMcAOcAMcARcARcARcARcBxcATcBycBycBycBycBAcyJcMfczqcyJcyJcebcsLcsLcBCcAvcAvczqcBCcBYcsLcsLcBGcBHciYbQXcBIcepcxNcxNcxNcxNcKpcEHcOlcOncOmcOpcOocxNcKscKVcKTcBRaaaaaacLbcOvcOucOscLecODcLbcOCbGGcFcbGHaabaabaabaabaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaacNFcNZcNMaaacNFcNZcNMaaacNFcNZcNMaaaayicLicNBcNBcNBcLicLicOwcOxcLicLicOxcOxcLicLicOxcOxcLwcKfcNGcOycLGcOzcOAcOBcOBcMAcLGcNGcOGcLGcLGcLGcLGcOHcOEcOJcOIclXcOKcOMcOLcOYcORcLOcNOcOZcONcLOcOOcHVcGKcGKcGKcBJcGKcZScOTcOUcOTcOWcOTcOTcOTcOTcOTcBKcBPcBPcBPcBPcBPcBPcBPcBLcnVcBQcsLcBOcBMcBTcsLcsLchfcBWcBVcBXchfcDbcCXcPhcDecDgciYbQXcDhcepcKPcKQcKRcPmcLccNocPncPjcPocPqcPpcPscPrcPpcPtcBRaaaaaacLbcLbcPycPAcPzcLbcLbbGHbGGcPBcuQcuQcuQbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaayiaabcNFcNZcNMaaacNFcNZcNMaabcNFcNZcNMaaaaabcLicMrcPucNDcLiaaaaabaaaaaaaaaaaaaaaaabaaaaaacOxcLwcKbcPvcLGcLGcKjcLxcLfcLdcLfcLncLfcLBcLIcLCcPIcNGcNGcNKcPLcPJcPNcPMcPPcPKcPVcPSbgYcPObHWcPQcPRcPYcPTcPUcPUaPdcDjcDicQdcPZcQfcDkcQhcQgcDlcQicQocQmcQpcQpcQpcQpcQpcQpcPwcBPcBLcsLcDmchfchfcBQcBQchfcDnchfchfchfchfchfciYcDobQXctrbQXciYcDpbQXcepcJKcKZcJKcQxcJrcEHcQzcQAcQrcQscEHcEHcQtcEHcQBcBRaaaaabaabcLbcLbcQvcLbcLbaaabGHbGGcFccuQcQwcQCbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaacNFcNZcNMaabcNFcNZcNMaaacNFcNZcNMaabaaacLicLicOxcLicLiaaaaabaabaaaaabaaaaabaabaaaaaacQycQDcKbcLqcLvcLvcLPcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcJZcQIcJZcQEcJZcFacQKcxAbHYcQNcQNcQNcyhcQScPTcQLcQMbhCcDtcDscQQcPZcDxcDvcQTcEmcEncRacRdcRcaabcQZcQZcQZcQZcQZcPxcBPcEocsLcMfcsLcyJcyJcsLcsLcsLchfcEpchfcsKcEqciYciYciYctrbQXciYciYciYcepcJKcJKcJKcRDcLQcNocRHcRIcRtcRucRvcRvcRJcEHcRxcBRaabaabaaaaaaaaacRyaaaaaaaaabGHbGGcFccuQbGGbGGbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvayiaaacNFcNZcNMaabcNFcNZcNMaaacNFcNZcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcRzcRAcRAcRAcRAcQycRBcLwcRCcRKcREcREcRFcRGcRMcRLcRLcRLcRLcRNcRPcROcRQcRQcRScRScRQcRTcRVcRUcRRcRRcRYcRWcTecSabHZcRXcRXcShcRZcSjcSbbjicErcSdcSecPZcEucSlcSmcEvcSpcSocSrcSqcQpcSncSucSscSwcQZcPxcBQcEwcsLchfcExchfcEycEAcEzcyJchfcECcEBcsLcsLciYcEDcgactrbQXciYcEFcEEcepcxNcxNcxNcxNcLRcEHcQzcEIcSOcQscEHcSGcSHcSHcSPcSJcSKaabaaaaaaaaaaaaaaaaaaaaabGHbGGcPBbGGbGGcSLbGHaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalwalvalvalwalvalvaabamhaabayiaaaayiayicLicJncLmcLmcLmcLpcLocEYbTmcLrcGhcLtcLscLucEYcLycLwcKfcJxcKjcLxcLzcLBcLAcLCcLDcLEcKbcLDcLGcLFcJxcJxcLHcKbcLLcVbcHJcLNcnycLTcLMdcicLOdcjcjRdcjcwocmRcLXcLWczncMacGKcGKcbvcsLcnVcsLcYicsLcuEcsLcsLctZcsLcsLcsLcKOctZczocsLcyJcsLcsLcBQcsLczqczpczrcyJczschfcztchfczuchfczvbQXcepaaaaaacepcepcepcepcJKcMgcJKcMlcJrcEHcJNcxNcxQcMocxQcxNcJKcJKcMkcBRaabaaacLbcMucMmcLecLecMncLbcMpbGGcFcbKlcMsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaabaabaaaaabaabaaaaaaaabaabaabaabaabcLicLicMqcLicLicMrcMvcEYcEYcEYcEYcEYcEYcEYcEYcLicLwcKfcLIcLJcMtcMtcMtcMtcMtcMwcMzcMDcJxcMxcJxcJxcMycJxcMAcMGcMFcMHcLNcnycMLcHQcMPcLOdcBcHSdcEcLOdcGcMRcMNcAjczxcAlcAkcAncAmcMXcAmcApcAocArcAqcrecrecAscrecAtcsLcsLcsLcAucyJcyJcsLcBQcAvcAvcAwcAycAxcAzchfcAAcAvcACchfcADcsLcBPcepcepcepbQXcAEcepcJKcJKcJKcNmcJJcNocNncNqcNpcNscNrcxNcNtcNycNxcBRaaaaaacLbcNzcLecNucLecNvcLbbGGbGGcFccMsbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhnaaaalwaaacNFcMBcNMaaacNFcMBcNMaaacNFcMBcNMaaaaaacLicNAcNBcNCcLicNDcNNcLmcLmcLmcLmcLmcLmcLmcLmcLmcNRcKfcNGcJxcMycMCcJxcJxcJxcMEcJxcNGcNGcJxcJxcJxcJxcNwcNKcMGcNLcHDcNScyEcHQcHQcNTcLOcNOcNPcNQcLOcNUcHVcJMcKocKccAHcGKcsKcsLcNYcsLcAIdfMcAOcAMcARcARcARcARcBxcATcBycBycBycBycBAcyJcMfczqcyJcyJcebcsLcsLcBCcAvcAvczqcBCcBYcsLcsLcBGcBHciYbQXcBIcepcxNcxNcxNcxNcKpcEHcOlcOncOmcOpcOocxNcKscKVcKTcBRaaaaaacLbcOvcOucOscLecODcLbcOCbGGcFcbGHaabaabaabaabaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaacNFcNEcNMaaacNFcNEcNMaaacNFcNEcNMaaaayicLicNBcNBcNBcLicLicOwcOxcLicLicOxcOxcLicLicOxcOxcLwcKfcNGcNHcJxcNIcNJcNZcNZcMxcJxcNGcOGcJxcJxcJxcJxcOHcOycOJcOIclXcOKcOMcOLcOYcORcLOcNOcOZcONcLOcOOcHVcGKcGKcGKcBJcGKcZScOTcOUcOTcOWcOTcOTcOTcOTcOTcBKcBPcBPcBPcBPcBPcBPcBPcBLcnVcBQcsLcBOcBMcBTcsLcsLchfcBWcBVcBXchfcDbcCXcPhcDecDgciYbQXcDhcepcKPcKQcKRcPmcLccNocPncPjcPocPqcPpcPscPrcPpcPtcBRaaaaaacLbcLbcPycPAcPzcLbcLbbGHbGGcPBcuQcuQcuQbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaayiaabcNFcNEcNMaaacNFcNEcNMaabcNFcNEcNMaaaaabcLicMrcPucNDcLiaaaaabaaaaaaaaaaaaaaaaabaaaaaacOxcLwcKbcOzcJxcJxcOAcOBcLfcLdcLfcLncLfcOEcOQcLDcPvcNGcNGcNKcPLcPJcPNcPMcPPcPKcPVcPSbgYcPObHWcPQcPRcPYcPTcPUcPUaPdcDjcDicQdcPZcQfcDkcQhcQgcDlcQicQocQmcQpcQpcQpcQpcQpcQpcPwcBPcBLcsLcDmchfchfcBQcBQchfcDnchfchfchfchfchfciYcDobQXctrbQXciYcDpbQXcepcJKcKZcJKcQxcJrcEHcQzcQAcQrcQscEHcEHcQtcEHcQBcBRaaaaabaabcLbcLbcQvcLbcLbaaabGHbGGcFccuQcQwcQCbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaacNFcNEcNMaabcNFcNEcNMaaacNFcNEcNMaabaaacLicLicOxcLicLiaaaaabaabaaaaabaaaaabaabaaaaaacQycQDcKbcLqcLvcLvcLPcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcKbcJZcQIcJZcQEcJZcFacQKcxAbHYcQNcQNcQNcyhcQScPTcQLcQMbhCcDtcDscQQcPZcDxcDvcQTcEmcEncRacRdcRcaabcQZcQZcQZcQZcQZcPxcBPcEocsLcMfcsLcyJcyJcsLcsLcsLchfcEpchfcsKcEqciYciYciYctrbQXciYciYciYcepcJKcJKcJKcRDcLQcNocRHcRIcRtcRucRvcRvcRJcEHcRxcBRaabaabaaaaaaaaacRyaaaaaaaaabGHbGGcFccuQbGGbGGbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvayiaaacNFcNEcNMaabcNFcNEcNMaaacNFcNEcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcRzcRAcRAcRAcRAcQycRBcLwcRCcRKcREcREcRFcRGcRMcRLcRLcRLcRLcRNcRPcROcRQcRQcRScRScRQcRTcRVcRUcRRcRRcRYcRWcTecSabHZcRXcRXcShcRZcSjcSbbjicErcSdcSecPZcEucSlcSmcEvcSpcSocSrcSqcQpcSncSucSscSwcQZcPxcBQcEwcsLchfcExchfcEycEAcEzcyJchfcECcEBcsLcsLciYcEDcgactrbQXciYcEFcEEcepcxNcxNcxNcxNcLRcEHcQzcEIcSOcQscEHcSGcSHcSHcSPcSJcSKaabaaaaaaaaaaaaaaaaaaaaabGHbGGcPBbGGbGGcSLbGHaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaabcPCaabaabaabcPCaabaaaaabcPCaabaaaaaaaaaaaaaaaaaaaaaaaaaaacRzcRzcRzcSRcTacSTcRAcTbcTccNRcRCcRCcSScTdcKbcKbcMvcSUcSUcSUcSUcSVcSWcSXcSWcSWcSWcRRcRRcSYcSZcTfcTicTgcRXcTjcTecRXcRXcRXcRXcTkcPTcTlcThcSdcErcSdcSdcPZcEucSlcTncEJcTqcTpcTucTraabcTocTvcSwcTwcQZcPxcBQcELcEKcFpcEMchfcsLcsLcsLcFqcMfcFscyJcFscsLciYbQXcgactrcFvciYbQXcFvcepcKPcKQcKRcTJcLccNocTKcTNcTMcTGcTGcTHcTIcTPcTOcBRaabaabaabaaaaaaaaaaaaaaaaaabGHcTLcFcbGHbGHbGHbGHbGHaabaabaabdoEdoEdoEdoEdoEdoEaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabcPGcPHcPHcQacyOcyOcyOcyOcyOcyOcyOcyOcyOcyOcyOcyOcQqcPHcPHcPHcPHcPHcRecTZcTYcUbcUacUecUdcUgcUfcNBcLwcUccRCcKbcKbcKbcUhcMvcSUcUkcUjcUmcFxcUicFycFAcFzcUrcFCcUucUscUxcUwcUycFCcUtcUzcTecUvcRXcRXcRXcUAcPTcSdcSdcSdcFEcFDcFGcFFcFIcFHcFLcFJcUPcUNcUScSqcUVcSncUWcSwcSwcQZcPxcBQcGIcsLctZcmJchfchfcMfchfchfchfcyJcyJcyJcsKchfchfchfctrbQXcGLbQXbQXcepcJKcMgcJKcVecJrcEHcVfcUXcUYcEHcUZcVgcxNcxNcxNcBRaaaaaaaabaabaaaaaaaaaaaaaaabGHcJQcFcbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaabcSkaabaaaaabcSkaabaaaaabcSkaabaaaaaaaaaaaaaaaaaaaaaaaaaaacRzcRzcRzcVlcVdcVmcRAcVncNBcNNcTccTccTccTccVocTccUfcSUcVhcVicVjcGPcGRcGQcGTcGScGVcGUcGXcGWcGZcGYcHbcHacUtcTjcTecVxcVDcRXcRXcVFcPTcLScOFcSdcVIcQPcVJcVEcVLcVKcVOcVMcVQcVPcVQcVRaabcQZcQZcQZcQZcQZcPxcBPcHcctZctZcmJcKOcAucsLcyJcsLcMfcsLcHdchfchfchfcHechfctrbQXciYbUxcHfcepcJKcJKcJKcWicLUcWpcWjcWqcWfcEHcEHcEHcEHcWgcWrcWwaaaaaaaaaaabaabaaaaaaaaaaaabGHbGHcFcbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvalwaabcNFcTQcNMaaacNFcTQcNMaaacNFcTQcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabcRzcRAcRAcRAcRAcWkcWlcWmcNBcWncNBcNBcMvcWocNBcSUcWzcWycVjcHhcUicWscWtcWucWucHkcWDcWCcWFaYtaZBcHkcWBcWHcWJcWIcWLcWKcWPcWMcWScMicUGcWTcWUcWNcWOcWVcWWcWRcWYcWXcXbcXacXdcXccQpcSncXecWZcWZcQZcPxcBPcGIcsLcsLcHlchfchfchfcyPcyPchfchfchfchfcHZcIacsLchfctrcIccIbcIbcIbcIbcIbcIbcIbcIbcMjcXvcXtcXzcXxcNocXAcNocXAcNocXBcWwaaaaaaaaaaaaaabaabaaaaaaaaaaaabGHcFcbGHaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacNFcTQcNMaabcNFcTQcNMaaacNFcTQcNMaaaaaaaaaaaaaabaaaaaaaaaaaaaabaabaabaaaaaaaabaabcXucXucXucXucXucXucXucXCcXucXucSUcXwcXDcVjcHhcUicXycUicUicXEcRRcXGcXFcUwcIdcIecRRcXLcRXcTecXMcXOcXNcWPcXPcXJaZCcXRcXQcXVcXScXRcXWcXYcXXcYacSdcXTcXUcYccYbaabcTocYfcIfcXZcQZcPxcBQcIgdfMdfMcIhcIichfcIkcIjcImcIlcIocInchfcsLcIpcsLchfctrcIqciYbQXcIrcIsciYcIucItcepcMIcMQcMJcNacMIcMQcNbcNccMIcMQcNlcBRaabaabaabaabaabaabaabaabaabaabbGHcFcbGHbGHbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabcNFcTQcNMaaacNFcTQcNMaaacNFcTQcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaabaabaabcXucYtcYtcYucYAcYBcYBcYDcYCcYCcYEcYGcYFcVjcHhcVjcYHcVjcVjcVjcRRcYLcIvcIxcIwcIycYIcYJcYQcYRcYMcYMcYMcYXcYUcYZaZHcZacYSbqmcQPcYTcZbcYVcYWcZccSdcXTcZdcZgcZecZhcSncZicWZcWZcQZcPxcBQckKcExchfcyJcJqcyPcJscImcJucJtcJvcsLcJwcYjcIpcJxchfctrcIqciYbQXcpEbQXciYcJzcIrcepcZqcZscZrcxNcZtcZycZvcxNcZzcZBcZAcBRaabaabaaaaaaaaaaaaaaaaaaaaaaaabGHcFcbGGbGGbGHaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabcNFcTQcNMaaacNFcTQcNMaabcNFcTQcNMaabaabaabaabaaaaabaaaaaaaabaabaaaaaaaaaaabaaaaaacXucYtcYtcYucZucZucZucZCcZwcZxcSUcJBcJAcJDcJCcJFcJEcJHcZFcZFcZLcZOcZNcVjcVjcVjcZPcZRcZQcZMcJIcNXcNVdacdabcSUcZScZSdafbqmcQPcZUdagcZWcZXcZYcSdcZZdahdajdaidadcQZcQZcQZcQZcQZcPxcBQckKdaecsLcyJcJqchfcKvcKucKwcJtcKAcIjcKCcKBcKDcJxchfctrcIqcGLbQXcKEcKFciYcKGbQXcepcMkcJKcJKcxNcMkcJKcJKcxNcMkcJKcJKcBRaaaaabaabaaaaaaaaaaaaaaacuQcuQbGHdaucuQbGGbGHbGHbGHdoEdoEaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabcPGcPHcPHcPIcyOcyOcyOcyOcyOcyOcyOcyOcyOcyOcyOcyOcQacPHcPHcPHcPHcPHcQqcTZcTYcUbcUacUecUdcUgcUfcNBcLwcUccRCcKbcKbcKbcUhcMvcSUcUkcUjcUmcFxcUicFycFAcFzcUrcFCcUucUscUxcUwcUycFCcUtcUzcTecUvcRXcRXcRXcUAcPTcSdcSdcSdcFEcFDcFGcFFcFIcFHcFLcFJcUPcUNcUScSqcUVcSncUWcSwcSwcQZcPxcBQcGIcsLctZcmJchfchfcMfchfchfchfcyJcyJcyJcsKchfchfchfctrbQXcGLbQXbQXcepcJKcMgcJKcVecJrcEHcVfcUXcUYcEHcUZcVgcxNcxNcxNcBRaaaaaaaabaabaaaaaaaaaaaaaaabGHcJQcFcbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaabcReaabaaaaabcReaabaaaaabcReaabaaaaaaaaaaaaaaaaaaaaaaaaaaacRzcRzcRzcVlcVdcVmcRAcVncNBcNNcTccTccTccTccVocTccUfcSUcVhcVicVjcGPcGRcGQcGTcGScGVcGUcGXcGWcGZcGYcHbcHacUtcTjcTecVxcVDcRXcRXcVFcPTcLScOFcSdcVIcQPcVJcVEcVLcVKcVOcVMcVQcVPcVQcVRaabcQZcQZcQZcQZcQZcPxcBPcHcctZctZcmJcKOcAucsLcyJcsLcMfcsLcHdchfchfchfcHechfctrbQXciYbUxcHfcepcJKcJKcJKcWicLUcWpcWjcWqcWfcEHcEHcEHcEHcWgcWrcWwaaaaaaaaaaabaabaaaaaaaaaaaabGHbGHcFcbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvalwaabcNFcSkcNMaaacNFcSkcNMaaacNFcSkcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabcRzcRAcRAcRAcRAcWkcWlcWmcNBcWncNBcNBcMvcWocNBcSUcWzcWycVjcHhcUicWscWtcWucWucHkcWDcWCcWFaYtaZBcHkcWBcWHcWJcWIcWLcWKcWPcWMcWScMicUGcWTcWUcWNcWOcWVcWWcWRcWYcWXcXbcXacXdcXccQpcSncXecWZcWZcQZcPxcBPcGIcsLcsLcHlchfchfchfcyPcyPchfchfchfchfcHZcIacsLchfctrcIccIbcIbcIbcIbcIbcIbcIbcIbcMjcXvcXtcXzcXxcNocXAcNocXAcNocXBcWwaaaaaaaaaaaaaabaabaaaaaaaaaaaabGHcFcbGHaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacNFcSkcNMaabcNFcSkcNMaaacNFcSkcNMaaaaaaaaaaaaaabaaaaaaaaaaaaaabaabaabaaaaaaaabaabcXucXucXucXucXucXucXucXCcXucXucSUcXwcXDcVjcHhcUicXycUicUicXEcRRcXGcXFcUwcIdcIecRRcXLcRXcTecXMcXOcXNcWPcXPcXJaZCcXRcXQcXVcXScXRcXWcXYcXXcYacSdcXTcXUcYccYbaabcTocYfcIfcXZcQZcPxcBQcIgdfMdfMcIhcIichfcIkcIjcImcIlcIocInchfcsLcAvcsLchfctrcIqciYbQXcIrcIsciYcIucItcepcMIcMQcMJcNacMIcMQcNbcNccMIcMQcNlcBRaabaabaabaabaabaabaabaabaabaabbGHcFcbGHbGHbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabcNFcSkcNMaaacNFcSkcNMaaacNFcSkcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaabaabaabcXucYtcYtcYucYAcYBcYBcYDcYCcYCcYEcYGcYFcVjcHhcVjcYHcVjcVjcVjcRRcYLcIvcIxcIwcIycYIcYJcYQcYRcYMcYMcYMcYXcYUcYZaZHcZacYSbqmcQPcYTcZbcYVcYWcZccSdcXTcZdcZgcZecZhcSncZicWZcWZcQZcPxcBQckKcExchfcyJcJqcyPcJscImcJucJtcJvcsLcJwcYjcAvcTQchfctrcIqciYbQXcpEbQXciYcJzcIrcepcZqcZscZrcxNcZtcZycZvcxNcZzcZBcZAcBRaabaabaaaaaaaaaaaaaaaaaaaaaaaabGHcFcbGGbGGbGHaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabcNFcSkcNMaaacNFcSkcNMaabcNFcSkcNMaabaabaabaabaaaaabaaaaaaaabaabaaaaaaaaaaabaaaaaacXucYtcYtcYucZucZucZucZCcZwcZxcSUcJBcJAcJDcJCcJFcJEcJHcZFcZFcZLcZOcZNcVjcVjcVjcZPcZRcZQcZMcJIcNXcNVdacdabcSUcZScZSdafbqmcQPcZUdagcZWcZXcZYcSdcZZdahdajdaidadcQZcQZcQZcQZcQZcPxcBQckKdaecsLcyJcJqchfcKvcKucKwcJtcKAcIjcKCcKBcKDcTQchfctrcIqcGLbQXcKEcKFciYcKGbQXcepcMkcJKcJKcxNcMkcJKcJKcxNcMkcJKcJKcBRaaaaabaabaaaaaaaaaaaaaaacuQcuQbGHdaucuQbGGbGHbGHbGHdoEdoEaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamhaabcNFcTRcNMaaacNFcTRcNMaaacNFcTRcNMaabalvaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaabcXudaodapcZucZucZudaxdardardardardardardarcKHcKJcKIcKKdawdawdawdaFdaydaJdaAdaBdawdaydaKdaRcKLcNXcObdacdabdaGdaHdaIdaTdaUdaLdaMdaNcZcdaOdaPdaVdaYdaWcOkcXcdbacSndbcdbbdbbcQZcPxcBPckKchfcBNdaXcJqchfcKNcKMcJtcIjcJtcKScJtcJucJtcsLchfctrcIqciYbQXciYciYciYbQXbQXcepdbfcKZcJKcxNdbfcKZcJKcxNdbfcKZcJKcBRaaaaaaaabaabaaaaaaaaaaaacuQdbgbGGcFccuQdbhcuQdbibGHaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaaaaabaaaaaaaaaaabaabaabaaaaaaaabaabaaaalvaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaabcXudbjcZucZucZucZucZudardbtdblcOqcOtcOrdarcKUdbqdbrcHhcVjcVjdbsdbBdbydbEdbCdbGdbFdbzcSUdbAcKLcNXcPgdacdbJcSUdbDcZSdbKdbLcSddaMdaNdbNcSddaPdaVcXTcXUcPicYbdbIcTodbScLVdbWcQZcPxcBPckKchfdbMdbMcJqchfcLYcsLcLZcIjcMccMbcMecMdcJGcJvcyPctrcIqciYbQXbQXcMhciYbQXaqFcepdbRcJKcJKcxNdbRcJKcJKcxNdbRcJKcJKcBRaaaaaaaaaaabaabaaaaaaaaacuQbGGbGGcFccuQbGGbGGbGGbZZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvalwalwamhalvalvalvalvalwalvalvalwdbTaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacXudbUcZwcZucZucZudbVdardblcPkcMOcMTcMScMVcMUcMYcMWcMZcVjdcmdcldchcPlcPEcPDcPWcPFdcndcwdbrcHhcWecPXcZMcQccSUdcscZSdctdcLcSddaMdaNcZccSddcvdaVcXTdcOcQecZedcScSndcTdbbdbbcQZcPxcBQckKdcAcuccABcJqchfchfcNdcNecDncNfcNfcNgchfchfchfchfctrcIqciYbQXcNhcKFciYcepcepcepcBRcBRcBRcBRcBRcBRcBRcBRcBRcBRcBRcBRaaaaaaaaaaaaaabaabaaaaaabGHbGHbGHcFccuQdcJdcKbGGbZZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvalwalwamhalvalvalvalvalwalvalvalwdbTaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacXudbUcZwcZucZucZudbVdardblcPkcMOcMTcMScMVcMUcMYcMWcMZcVjdcmdcldchcPlcPEcPDcPWcPFdcndcwdbrcHhcWecPXcZMcQccSUdcscZSdctdcLcSddaMdaNcZccSddcvdaVcXTdcOcQecZedcScSndcTdbbdbbcQZcPxcBQckKcTUcuccABcJqchfchfcNdcNecDncNfcNfcNgchfchfchfchfctrcIqciYbQXcNhcKFciYcepcepcepcBRcBRcBRcBRcBRcBRcBRcBRcBRcBRcBRcBRaaaaaaaaaaaaaabaabaaaaaabGHbGHbGHcFccuQdcJdcKbGGbZZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcXucXucXudcUdcMdcMdcMdardcNcQjdcPdcPdcQdcWdawcNidcXcNkcNjcNjcNWcQVcQFcOaddbcOccQGcQVcOdcOfcOecOhcOgcOicQHddrdbDcZSddmddscSddaMcSdddtcSddaPdaVcXTcXUddxcYbdbIcQZcQZcQZcQZcQZcPxcBQcOjcYlcuccTBcOScOPcOVcOPcOXcsLcsLcsLcsLczfchfcPacPecPbcPfcGLbQXcFvcepcepaaaaaaddFaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaabaabaaabGHcJQddBddKcuQddJddIbGGbZZaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddLcXucZucZucZudcMaabaabdarddGcQJdcPdcPcQUdarcRgcRwcRrcSvcStcSNcSxcSUcUBcQbddScVjcVccSUcVpcVqcVqcSvcSvcVucVrcSUddZcZSdeadehcSddaMcSdcZUdagdecdeidaYdejdekcXcdelcSndendemdemcQZcPxcBQcsLckKchfchfcPdchfchfcsLcQlcyJcyJcyJcsLcQucGvcQOcQXcQWcDocepcepcepcepaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaabaabbGHdbgcAScaccuQcuQcuQbGGbGHaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcXucZucZucZudcMaabaaadardescQJdcPdcPcVvdardeucQYcSUdeFcRbcRbcRfcSUcVwdeAdeBdeCcVycSUcRbcRbcRbdeFcSUcRhdeucSUdbDcZSdeOdePdeHdeIdeJdeKdeQdeRcXbdeUcXUdeVcYbdbIcTodeXcRideYcQZcPxcBPcBPckKcprdeScRjdeTchfcsLdfadeZdffcRkcRmcRlchfciYciYcRncepcepaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabGHbGHbGHbGHbGHdfhcaccuQdfidfcbGGbGHaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacXucXudcMdcUdfdaaaaaadardfecVzdcPdcPcVAdardfwcRodfzdfkcRpcRqcRpdfocVBdfqdfrdfscQHdfocRpcRpcRpdftdfzcRsdfvcSUdbDdfEdaMdfxdfydeQdfFdfGdfBdfIdfHdfKdfJdfNcZedcScSndfOdemdemcQZcPxcBPcsLcOjcSfcScdfgcsKchfdgmcTBcsLcYidfLcsLcYicBNchfcSgcFcbGHaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabGHbGGbGGbGGcJQdfSdfUcuQdfPbGGbGGbGHaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfXdfYdfYdfZdfYdfYdgadardfVcQjdcPdcPcVCdardaGcSicSUcSUdfodfodfodfocVGcVScVNcSvcVTdfodfodfodfocSUcSUcSydglcSUdbDcZSdgrdgsdfydggdghcSdcSddgtcXWdggcXUdgjcYbdbIcQZcQZcQZcQZcQZcPxcBPcTBcsLdgkdgCcsLdgmchfchfdgnchfdgocpscJGcYichfchfcuQcFcbGHaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaabaaaaaaaaaaaabGHbGHcuQdgAdgycJQdfScacbGGbGGbGGdgBbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgDdgudgvdgwdgvdgxdgFdardgzcVWcMMdcPcVXdarcSUcSzcSUdgJafOdgEdfodfodfodfocSAdfodfodfodfodgEafOdgJcSUcSBcSUcSUdbDcZSdgMdeHdgNdgPdgOdgRdgQdgPdgQdgPdgVdeQdgWdbIdmodmodmodmodmocPxdgSdgTdgTdgUdhjdgTdgTdgTdhkdgXdgYdgodgZchfdgochfdhacuQcFcbGHbZZbZZbZZbGHbZZbZZbZZbZZbGHbZZbZZbZZbZZbGHbGHbGHbGHbGHbGHbGHbGHbGHbGHcMsbGHcJQcuQcTSbGGcQwdfScaccuQcuQdbhcuQbGHaabdhcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgDdgudgvdgwdgwdhdbJMdardhfcVYdcPdcPcVZdarcSCcSDdhoafOcSEcSFcSFcSFcSFcSFcSIcSFcSFcSFcSFcSFcSMafOdhvcTscTmcSUdhsdaIdhzdhBdhAdhCdhxdhEdhDdhFcSddhHdhGdhJdhIdbIdmoaaaaabaabaaadhMdhLdhOdhNdhTdhSdhVdhUdgTdhYcsLcsLdhPcpsdhQcYicsLcsLcEGdhZdiadiadiadiadiadiadiadiadiadiadiadiadiadiadiediadiadiadiaczLcuQbPAcAUbGGdiccMscuQcuQcuQdbhcuQdfScaccuQdidbGGbGGbGHaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgDdgudgvdhWdgvdhXdifdardfVcQjdcPdcPcWadarcTtdibdibaaacTxafOafOafOafOafOafOafOafOafOafOafOcTxaaadibdibcTtcSUdaGcZSdhIdikdijdipdioditdhIdipdhIcYbdhIcYbdhIdbIdmoaaaalwalwdiudhLdivdiwdildimdindiydixdgTcsLcsLchfdgodiqchfcYicXrdfMdhRdizdiAdiAdiAdiAdiAdiAdiCdiBdiAdiAdiAdiAdiAdiAdiEdiDcTTdiFdiJdiIdiLdiLdiLdiLdiNdiMdiOdiLdiLdiLdiLdiQcjYcuQdfcbGGdiHbGHaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadiSdfYdfYdfYdfYdfYdiTdardiKcWbdcPdcPcWcdarcTycTzdiPaabcTxafOdjqaaaaaaaaaaaadjqaaaaaadjqafOcTxaabdiRcTCcTAcSUdaGcSUaabdiUaabdiVdiWdiXdiYdiZdiYdjadiYdjadjbdjcdmoaaaalwaabdjddgSdjedjfdjwdjhdjidjxdjkdgTdjlcsLcsLcYidjmchfcYicYidjzbGHbGHbZZbZZbZZbZZbGHbZZbZZbZZbZZbGHbZZbZZbZZbZZbGHdjobGGcuQcTLbGGcuQcuQbZZbZZcxScuQdjAbGGdjAcuQdjCcacdjrbGHbGHbGHbGHbGHaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadardjscWbdcPdcPcWddarcTtdibdjvaaacTDcTEaaaaaaaaaaaaaaadjyaaaaaaaaacUlcTFaaadibdibcTtcSUdaGcSUcQZdjBcTodjBcQZdjBcTodjBcQZdjScTodjUcQZaabdmoaaaalwaabdjEdgSdjFdjfdjGdjVdjidjWdjJdjKdirdjYdjMcYicpscsLdjNdgochfcBPaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaabGHdjXcLhcuQdjPbGGcuQaaaaaaaaaaaacuQbGGbGGdbgdjQdjQdkadkbdjQaaaaabaabaabaabdjTaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadardkccQjdcPdcPcWadarcUncTmdibaaacTxafOaaaaaaaabaabaabaabaabaaaaaaafOcTxaaadibcSCcUocSUdjZcSUcQZdkidkhdkkcQZdkqdkpdkscQZdkwdkudkxcQZaabdmoaaaalwaaadjEdkjdkydkldkmdkndkodkEdkDdgTdkrdgochfdgodkGchfdktdgocBNcBPcBQcBQcBQdmoaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaabGHdkFcuQcuQcQCbGGcuQcuQbZZbZZcuQcuQbGGdkvcLhdjQdkIdkHdkMdjQaaaaaaaabaabaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOdardardardardardardarcSUcTtdibaaacTxafOdjqaabaabdkzdkAdkBaabdkCaaaafOcTxaaadibcTtcSUcSUdaGcSUcQZdkObbMdkOcQZdkTbbOdkTcQZdkVbdGdkVcQZaabdmoaaaalwaaadjddgSdkJdkKdkLcOQdkWdkYdkXdgTdkPdkQdkZdkSdlacsLcYicYidlbdlddlccsLdlhdmoaaaaabaaabZZbZZbZZbGHbGHbGHbGHbGHbGHdlicJQcuQdljbGGbGGcuQbGGbGGbGGbGGcTSbGGdfPdjQdlodlkdlqdjQaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabafOaabafOafOaabaabaabalwalwcSUcSUcUpdibaaacTDcTEaaaaaaaabdledlfdlgaabaaaaaacUlcTFaaadibcUqcSUcSUdaGcSUcQZdkOdlvdkOcQZdkTdlwdkTcQZdkVdlxdkVcQZaabdmoaaaalwaaadjddgSdgSdgSdlldlmdlndlydlndlmdkPdlpcsLdlAdlrdfMddHcYidlscBPcBQcBQcBQcTUaabaabaaabZZdlBdlCcuQbGGdlDdlJdbgcuQdlPbGGcuQdlzbGGbGGdlLbGGbGHbGHbGHbZZbZZbGHdjQdlSdlRdlUdjQaabaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgDdgudgvdgwdgwdhdbJMdardhfcVYdcPdcPcVZdarcSCcSDdhoafOcSEcSFcSFcSFcSFcSFcSIcSFcSFcSFcSFcSFcSMafOdhvcTscTmcSUdhsdaIdhzdhBdhAdhCdhxdhEdhDdhFcSddhHdhGdhJdhIdbIdmoaaaaabaabaaadhMdhLcTVcTXcUCcVkcVHcWxdgTdhYcsLcsLdhPcpsdhQcYicTUcsLcEGdhZdiadiadiadiadiadiadiadiadiadiadiadiadiadiadiediadiadiadiaczLcuQbPAcAUbGGdiccMscuQcuQcuQdbhcuQdfScaccuQdidbGGbGGbGHaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgDdgudgvdhWdgvdhXdifdardfVcQjdcPdcPcWadarcTtdibdibaaacTxafOafOafOafOafOafOafOafOafOafOafOcTxaaadibdibcTtcSUdaGcZSdhIdikdijdipdioditdhIdipdhIcYbdhIcYbdhIdbIdmoaaaalwalwdiudhLcXmcYgcYydavdcrdcudcxdgTcsLcsLchfdgodiqchfcYicXrdfMdhRdizdiAdiAdiAdiAdiAdiAdiCdiBdiAdiAdiAdiAdiAdiAdiEdiDcTTdiFdiJdiIdiLdiLdiLdiLdiNdiMdiOdiLdiLdiLdiLdiQcjYcuQdfcbGGdiHbGHaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadiSdfYdfYdfYdfYdfYdiTdardiKcWbdcPdcPcWcdarcTycTzdiPaabcTxafOdjqaaaaaaaaaaaadjqaaaaaadjqafOcTxaabdiRcTCcTAcSUdaGcSUaabdiUaabdiVdiWdiXdiYdiZdiYdjadiYdjadjbdjcdmoaaaalwaabdjddgSdcydczdcAdcFdcHdcIdcRdgTdjlcsLcsLcYidjmchfcYicYidjzbGHbGHbZZbZZbZZbZZbGHbZZbZZbZZbZZbGHbZZbZZbZZbZZbGHdjobGGcuQcTLbGGcuQcuQbZZbZZcxScuQdjAbGGdjAcuQdjCcacdjrbGHbGHbGHbGHbGHaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadardjscWbdcPdcPcWddarcTtdibdjvaaacTDcTEaaaaaaaaaaaaaaadjyaaaaaaaaacUlcTFaaadibdibcTtcSUdaGcSUcQZdjBcTodjBcQZdjBcTodjBcQZdjScTodjUcQZaabdmoaaaalwaabdjEdgSdcVdczddaddcdcHdddddedjKdirdjYdjMcYicpscsLdjNdgochfcBPaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaabGHdjXcLhcuQdjPbGGcuQaaaaaaaaaaaacuQbGGbGGdbgdjQdjQdkadkbdjQaaaaabaabaabaabdjTaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadardkccQjdcPdcPcWadarcUncTmdibaaacTxafOaaaaaaaabaabaabaabaabaaaaaaafOcTxaaadibcSCcUocSUdjZcSUcQZdkidkhdkkcQZdkqdkpdkscQZdkwdkudkxcQZaabdmoaaaalwaaadjEdkjddfddgddhddiddjddkddldgTdkrdgochfdgodkGchfdktdgocBNcBPcBQcBQcBQdmoaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaabGHdkFcuQcuQcQCbGGcuQcuQbZZbZZcuQcuQbGGdkvcLhdjQdkIdkHdkMdjQaaaaaaaabaabaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOdardardardardardardarcSUcTtdibaaacTxafOdjqaabaabdkzdkAdkBaabdkCaaaafOcTxaaadibcTtcSUcSUdaGcSUcQZdkObbMdkOcQZdkTbbOdkTcQZdkVbdGdkVcQZaabdmoaaaalwaaadjddgSddnddoddpddqddvddyddzdgTdkPdkQdkZdkSdlacsLcYicYidlbdlddlccsLdlhdmoaaaaabaaabZZbZZbZZbGHbGHbGHbGHbGHbGHdlicJQcuQdljbGGbGGcuQbGGbGGbGGbGGcTSbGGdfPdjQdlodlkdlqdjQaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabafOaabafOafOaabaabaabalwalwcSUcSUcUpdibaaacTDcTEaaaaaaaabdledlfdlgaabaaaaaacUlcTFaaadibcUqcSUcSUdaGcSUcQZdkOdlvdkOcQZdkTdlwdkTcQZdkVdlxdkVcQZaabdmoaaaalwaaadjddgSdgSdgSdlldlmdlndlydlndlmdkPdlpcsLdlAdlrdfMddHcYidlscBPcBQcBQcBQddAaabaabaaabZZdlBdlCcuQbGGdlDdlJdbgcuQdlPbGGcuQdlzbGGbGGdlLbGGbGHbGHbGHbZZbZZbGHdjQdlSdlRdlUdjQaabaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaabaabaaaaaaaabaabalwcSUcSUcTtdibaaacTxafOaaadlEaabdlFdlGdlHaabaabdjqafOcTxaaadibcTtcSUcSUdaGcSUcQZcQZcQZcQZcQZcQZcQZcQZcQZcQZcQZcQZcQZaabdmoaaaayiaaadjdaaaaaaaaadlIdlmdlVdlXdlWdlmcsLdlMcsLcsLdlNdlOcXrdmcdlQcBPaaaaaaaaaaaaaaaaabaaabZZdlZdmbdlLbGGdgybGGbGGdlLdjobGGcuQcuQcuQcuQcuQbGGbGHaabaaaaaaaaaaabdlTdlTdmddlTdlTaabaabdhcaabaabdjTaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabcSUcSCcUodibaaacTxafOaaaaaaaabaabaabaabaabaaaaaaafOcTxaaadibcUncTmcSUdmecSUcSUcSUcSUcTVdmodmodmodmodmodmodmodmodmodmodmoaabaabaabdjEaaaaaaaaadlYdlmdlndmhdlndlmdmadmidfMdfMdmldmrdmmcBPcBPcBPaaaaaaaaaaaaaaaaabaaabZZdlBdmncuQdbgbGGbGGdmpcuQdmqbGGbGGbGGbGGbGGbGGbGGbGHaabaaaaaaaaaaabaaadlTdmsdlTaaaaabaaaaabaaaaaaaabaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabcSUcSCcUodibaaacTxafOaaaaaaaabaabaabaabaabaaaaaaafOcTxaaadibcUncTmcSUdmecSUcSUcSUcSUddCdmodmodmodmodmodmodmodmodmodmodmoaabaabaabdjEaaaaaaaaadlYdlmdlndmhdlndlmdmadmidfMdfMdmldmrdmmcBPcBPcBPaaaaaaaaaaaaaaaaabaaabZZdlBdmncuQdbgbGGbGGdmpcuQdmqbGGbGGbGGbGGbGGbGGbGGbGHaabaaaaaaaaaaabaaadlTdmsdlTaaaaabaaaaabaaaaaaaabaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaabcSUcTtdibdmjaaacTDcTEaaaaaaaaaaabaaaaaaaaaaaaaaacUlcTFaaadibdibcTtcSUdmkcQRdmvdaGdcqdmoaabaabaabaabaabaabaabdmoaabaabaabaabaabaabdjEaabaabaabdlYdlmdmydmAdmzdmEaabdmacBPcBQdmtcBQcBPcBPaaaaabaaaaaaaaaaaaaaaaabaabbZZbZZbZZbGHbGHbGHbGGcuQbGHdmubGHbGHdbgbPAcLhbKlcMsbGHaabaaaaaaaaaaabaaadlTdmGdlTaaaaabaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcSUcUDdbudiPaabcTxafOdjqaaaaaadjqaaaaaaaaaaaadjqafOcTxaaadiRdbQcUEcSUdmLcSUcSUcSUcSUcSUcSUaaaaaaaabaaaaaaaaadmoaaaaaadmBdmBdmBdmBdmCaaaaaaaabdlYdmDdlmdmOdlmdlmaaaaabaaaaaadmFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaabGHdmbdmMbGHdmNaabbGHbGHbZZbZZcMsbGHaaaaabaaaaaaaaaaabaaaaaacTXaaaaaaaabaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUcUFcUIcUHaaacTxafOafOdcfafOafOdcfafOafOdcfafOafOcTxaaacUJcUIcUKcSUdmPdmQdnjdnldnkcSQdmVdmWdmWdmXdmWdmWdmWcUCdmWdmWdmZdnadnbdnodmCaaaaaaaabdnddmodlmdnedlmcVkaabaabaaaaaadngaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaabpaaaaaabGHdnqdnnbGHdnpaabaaaaabaaaaaaaabaaaaaaaabaaaaaaaaaaabaaaaaacVHaaaaaaaabaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadnscSUcSUcULaaacUMcSFcSFcUOcSFcSFcUOcSFcSFcUOcSFcSFcUQaaacULcSUcSUcSUdmPdnBdnAdnEdnCdnHdfoaaaaaaaabaaaaaaaaadmodmBdmBdmBbfmbJNdnvdmCaaaaaaaabaabdmodnxdnIdnxdmoaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaabZZdnJbZZbZZaabdhcaaaaabaaaaaaaabaaaamWamWalwayiaabaabaabaabcVHaabaabaabaabdhcamhamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcSUcYXcURcUHaabaabaabaabaaaaaaaaaaaaaaaaabaabaabaabcUJcUUcYXcSUcSUdnDcSUcSUcSUcSUdfocSUaabaabaabaabaabaabcWxbfubjbbhybkJdnGdnFdmCaaaaaaaaaaabdmoaaaaaaaaadmoaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaabZZdnPbZZaaaaaaaaaaaaaabaaaaaaaabaaaamWaaaaaaaabaaaaabaaaaaacXmaaaaaaaabaaaaabaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaacSUcSUcURcVacVacVacVacVacVacVacVacVacVacVacVacVacUUcSUcSUcSUdnKdnScSUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYgdnTdnWdnVdobdoadofdoeaaaaaaaaaaabdmodmodmodmodmoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaabZZdogbZZaaaaaaaaaaaaaabaaaaaaaabaaaamWaaadohdohdohdohdohaabcTWaabdohdohdohdohdohaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUaaacSUcSUdnXcSUcSUcSUcSUaaaaaaaaaaaaaaaaaaaaaaaacPxdnZdnZdnZdnZdojdokdocdoddolaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaabZZdombZZaaaaaaaaaaaaaaaaaaaaaaabaaaamWaabcYydavdavdavdavdcrcTWdcudcxdcxdcxdcxdcyaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUdaGdaGdczdoudoudowaaaaaaaaaaaaaaaaaaaaaaaadjdaaadnZdnZdoydoxdoAdnZdnZdnZdnZdnZaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabdcFdoEdoEaaaaaaaaaaaaaaaaaaaaaaabaaaamWaabdoGdoGdoGdoGdoGaaacTWaaadoGdoGdoGdoGdoGaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcSUcUDdbudiPaabcTxafOdjqaaaaaadjqaaaaaaaaaaaadjqafOcTxaaadiRdbQcUEcSUdmLcSUcSUcSUcSUcSUcSUaaaaaaaabaaaaaaaaadmoaaaaaadmBdmBdmBdmBdmCaaaaaaaabdlYdmDdlmdmOdlmdlmaaaaabaaaaaadmFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaabGHdmbdmMbGHdmNaabbGHbGHbZZbZZcMsbGHaaaaabaaaaaaaaaaabaaaaaaddDaaaaaaaabaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUcUFcUIcUHaaacTxafOafOdcfafOafOdcfafOafOdcfafOafOcTxaaacUJcUIcUKcSUdmPdmQdnjdnldnkcSQdmVdmWdmWdmXdmWdmWdmWddEdmWdmWdmZdnadnbdnodmCaaaaaaaabdnddmodlmdnedlmddMaabaabaaaaaadngaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaabpaaaaaabGHdnqdnnbGHdnpaabaaaaabaaaaaaaabaaaaaaaabaaaaaaaaaaabaaaaaaddNaaaaaaaabaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadnscSUcSUcULaaacUMcSFcSFcUOcSFcSFcUOcSFcSFcUOcSFcSFcUQaaacULcSUcSUcSUdmPdnBdnAdnEdnCdnHdfoaaaaaaaabaaaaaaaaadmodmBdmBdmBbfmbJNdnvdmCaaaaaaaabaabdmodnxdnIdnxdmoaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaabZZdnJbZZbZZaabdhcaaaaabaaaaaaaabaaaamWamWalwayiaabaabaabaabddNaabaabaabaabdhcamhamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcSUcYXcURcUHaabaabaabaabaaaaaaaaaaaaaaaaabaabaabaabcUJcUUcYXcSUcSUdnDcSUcSUcSUcSUdfocSUaabaabaabaabaabaabddObfubjbbhybkJdnGdnFdmCaaaaaaaaaaabdmoaaaaaaaaadmoaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaabZZdnPbZZaaaaaaaaaaaaaabaaaaaaaabaaaamWaaaaaaaabaaaaabaaaaaaddPaaaaaaaabaaaaabaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaacSUcSUcURcVacVacVacVacVacVacVacVacVacVacVacVacVacUUcSUcSUcSUdnKdnScSUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddQdnTdnWdnVdobdoadofdoeaaaaaaaaaaabdmodmodmodmodmoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaabZZdogbZZaaaaaaaaaaaaaabaaaaaaaabaaaamWaaadohdohdohdohdohaabcTWaabdohdohdohdohdohaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUcSUaaacSUcSUdnXcSUcSUcSUcSUaaaaaaaaaaaaaaaaaaaaaaaacPxdnZdnZdnZdnZdojdokdocdoddolaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaabZZdombZZaaaaaaaaaaaaaaaaaaaaaaabaaaamWaabddRddTddTddTddTddUcTWddVddWddWddWddWddXaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUdaGdaGddYdoudoudowaaaaaaaaaaaaaaaaaaaaaaaadjdaaadnZdnZdoydoxdoAdnZdnZdnZdnZdnZaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabdebdoEdoEaaaaaaaaaaaaaaaaaaaaaaabaaaamWaabdoGdoGdoGdoGdoGaaacTWaaadoGdoGdoGdoGdoGaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUdjZdaGdoLdoIdoMdozaaaaaaaaaaaaaaaaaaaaaaaadjdaaadnZdoNdoOdoCdoDdoQdoSdoRdoHdnZaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaabaaaamWaaaaabaaaaabaabaabaaacTWaaaaabaaaaabaaaaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadoTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUdoJdaGdcHdoudoudoVaaaaaaaaaaaaaaaaaaaaaaaadjdaaadnZdoWdoYdoXdoPdoZdpcdpadpgdnZaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaamWaaadohdohdohdohdohaabcTWaabdohdohdohdohdohaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadnscSUcSUcSUcSUcSUcSUaaaaaaaaaaaaaaaaaaaabaabdjEaabdnZdphdpjdpidpndpkdpsdprdpbdnZaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabcYydavdavdavdavdcrcTWdcudcxdcxdcxdcxdcIaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadoTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSUdoJdaGdeddoudoudoVaaaaaaaaaaaaaaaaaaaaaaaadjdaaadnZdoWdoYdoXdoPdoZdpcdpadpgdnZaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaamWaaadohdohdohdohdohaabcTWaabdohdohdohdohdohaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadnscSUcSUcSUcSUcSUcSUaaaaaaaaaaaaaaaaaaaabaabdjEaabdnZdphdpjdpidpndpkdpsdprdpbdnZaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabddRddTddTddTddTddUcTWddVddWddWddWddWdeeaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabdpddpedpddpfdpudpwdpvdpydpxdpfdpfdpfdpfaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabdoGdoGdoGdoGdoGaaacTWaabdoGdoGdoGdoGdoGaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadpddpddpldpmdpddpfdpfdpzdpodpfdppdpqdpqdppdppaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayiaaaaabaaaaabaaaaabaaadcRaaaaabaaaaabaabaabaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadpddpCdpEdpDdpFdpfdpIdpHdpJdpfdpKdpAdpAdpLdppaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaaadohdohdohdohdohaabcVHaabdohdohdohdohdohaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadpddpMdpOdpNdpPdpGdpRdpQdpSdpGdpUdpTdpWdpVdppaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabcYydavdavdavdavdcVddadcVdcxdcxdcxdcxdcIaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaadpddpZdqbdqadqddqcdqfdqedqhdqgdqjdqidqldqkdppaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabdoGdoGdoGdoGdoGaaacVHaaadoGdoGdoGdoGdoGaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadpddpddqqdqodqsdpfdqxdqtdcpdpfdqCdqBdqEdppdppaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaaaaaaaabaabaabaaaaaacVHaabaaaaaaaabaabaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdqmdqpdqFdqpdqmdqmdqGdqrdqmdqpdqHdqpdqmaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWamWamWamWamWaaaaaaaaacVHaaaaaaaaaamWamWamWayiamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadqmdisdqudqpdqvdqwdqIdqydqvdqpdqJdqAdqmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabddcaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadpddpddpldpmdpddpfdpfdpzdpodpfdppdpqdpqdppdppaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayiaaaaabaaaaabaaaaabaaadefaaaaabaaaaabaabaabaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadpddpCdpEdpDdpFdpfdpIdpHdpJdpfdpKdpAdpAdpLdppaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaaadohdohdohdohdohaabddNaabdohdohdohdohdohaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadpddpMdpOdpNdpPdpGdpRdpQdpSdpGdpUdpTdpWdpVdppaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabddRddTddTddTddTdegdeodegddWddWddWddWdeeaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaadpddpZdqbdqadqddqcdqfdqedqhdqgdqjdqidqldqkdppaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabdoGdoGdoGdoGdoGaaaddNaaadoGdoGdoGdoGdoGaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadpddpddqqdqodqsdpfdqxdqtdcpdpfdqCdqBdqEdppdppaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaaaaaaaabaabaabaaaaaaddNaabaaaaaaaabaabaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdqmdqpdqFdqpdqmdqmdqGdqrdqmdqpdqHdqpdqmaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWamWamWamWamWaaaaaaaaaddNaaaaaaaaaamWamWamWayiamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadqmdisdqudqpdqvdqwdqIdqydqvdqpdqJdqAdqmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaabdepaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdqmdqndqudqpdqvdqwdqIdqydqvdqpdqJdqDdqmaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWaaaaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadqLdqmdqmdqudqpdqMdqwdqNdqPdqOdqpdqJdqmdqmdqQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWamWamWamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabdqmdqRdqpdqTdqwdqIdqydqvdqpdqUdqmaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/_maps/map_files/cyberiad/z6.dmm b/_maps/map_files/cyberiad/z6.dmm index 7eeac05c776..e69905fc814 100644 --- a/_maps/map_files/cyberiad/z6.dmm +++ b/_maps/map_files/cyberiad/z6.dmm @@ -268,7 +268,7 @@ "fh" = (/obj/machinery/light/small{dir = 4},/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless,/area/derelict/singularity_engine) "fi" = (/obj/item/shard{icon_state = "medium"},/obj/item/stack/cable_coil/cut,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine) "fj" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8";tag = ""},/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary) -"fk" = (/obj/item/ore/slag,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine) +"fk" = (/obj/item/stack/ore/slag,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine) "fl" = (/obj/machinery/light/small,/obj/effect/landmark/damageturf,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary) "fm" = (/turf/simulated/wall,/area/derelict/hallway/primary) "fn" = (/obj/effect/landmark/damageturf,/turf/simulated/floor/plating/airless,/area/derelict/arrival) @@ -647,7 +647,7 @@ "mw" = (/obj/machinery/light{dir = 1;on = 1},/obj/effect/spawner/random_spawners/syndicate/turret,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "mx" = (/turf/simulated/shuttle/wall{tag = "icon-swall12";icon_state = "swall12";dir = 2},/area/space) "my" = (/turf/simulated/floor/plating/airless/asteroid,/turf/simulated/shuttle/wall{tag = "icon-swall_f9";icon_state = "swall_f9";dir = 2},/area/space) -"mz" = (/obj/structure/closet/crate{icon_state = "crateopen";opened = 1},/obj/item/ore/bananium,/obj/item/grenade/bananade,/turf/simulated/floor/plasteel/airless,/area/space) +"mz" = (/obj/structure/closet/crate{icon_state = "crateopen";opened = 1},/obj/item/stack/ore/bananium,/obj/item/grenade/bananade,/turf/simulated/floor/plasteel/airless,/area/space) "mA" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "mB" = (/obj/effect/spawner/random_spawners/syndicate/layout/door,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "mC" = (/obj/machinery/door/airlock/hatch/syndicate,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) @@ -663,12 +663,12 @@ "mM" = (/obj/effect/spawner/random_spawners/syndicate/loot,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "mN" = (/obj/machinery/light,/obj/effect/spawner/random_spawners/syndicate/turret,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "mO" = (/obj/structure/sign/poster/contraband/lamarr,/turf/simulated/wall/r_wall,/area/syndicate_depot/core) -"mP" = (/obj/structure/closet/crate,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/turf/simulated/floor/plasteel/airless,/area/space) -"mQ" = (/obj/structure/closet/crate,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/obj/item/ore/tranquillite,/turf/simulated/floor/plasteel/airless,/area/space) +"mP" = (/obj/structure/closet/crate,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/turf/simulated/floor/plasteel/airless,/area/space) +"mQ" = (/obj/structure/closet/crate,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/obj/item/stack/ore/tranquillite,/turf/simulated/floor/plasteel/airless,/area/space) "mR" = (/obj/machinery/light{dir = 1;on = 1},/obj/effect/spawner/random_spawners/syndicate/loot,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "mS" = (/obj/machinery/light{dir = 1;on = 1},/obj/effect/spawner/random_spawners/syndicate/loot/level2,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "mT" = (/obj/item/shard,/turf/simulated/floor/plating/airless/asteroid,/area/space) -"mU" = (/obj/structure/closet/crate,/obj/item/ore/bananium,/obj/item/ore/bananium,/obj/item/ore/bananium,/obj/item/ore/bananium,/obj/item/ore/bananium,/turf/simulated/floor/plasteel/airless,/area/space) +"mU" = (/obj/structure/closet/crate,/obj/item/stack/ore/bananium,/obj/item/stack/ore/bananium,/obj/item/stack/ore/bananium,/obj/item/stack/ore/bananium,/obj/item/stack/ore/bananium,/turf/simulated/floor/plasteel/airless,/area/space) "mV" = (/obj/effect/mob_spawn/human/mime/corpse{name = "Mime Pilot"},/turf/simulated/floor/plasteel/airless,/area/space) "mW" = (/obj/structure/computerframe/HONKputer,/turf/simulated/floor/plasteel/airless,/area/space) "mX" = (/obj/effect/mob_spawn/human/corpse/clownmili,/turf/simulated/floor/plasteel/airless,/area/space) @@ -676,7 +676,7 @@ "mZ" = (/obj/effect/spawner/random_spawners/syndicate/turret/external,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "na" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless,/area/space) "nb" = (/obj/item/shard{icon_state = "small"},/turf/simulated/floor/plating/airless/asteroid,/area/space) -"nc" = (/obj/item/ore/bananium,/turf/simulated/floor/plasteel/airless,/area/space) +"nc" = (/obj/item/stack/ore/bananium,/turf/simulated/floor/plasteel/airless,/area/space) "nd" = (/obj/item/stack/sheet/metal{layer = 4.1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "ne" = (/obj/structure/shuttle/engine/propulsion{dir = 4;icon_state = "propulsion_l";tag = "icon-propulsion_l (WEST)"},/turf/space,/area/space) "nf" = (/obj/effect/spawner/random_spawners/syndicate/trap/mine,/obj/item/stack/sheet/metal{layer = 4.1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) @@ -686,7 +686,7 @@ "nj" = (/obj/effect/mob_spawn/human/clown/corpse,/turf/simulated/floor/plasteel/airless,/area/space) "nk" = (/obj/machinery/computer/syndicate_depot/teleporter,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "nl" = (/obj/item/pickaxe,/turf/simulated/floor/plasteel/airless,/area/space) -"nm" = (/obj/structure/closet/crate,/obj/item/ore/bananium,/obj/item/ore/bananium,/obj/item/ore/bananium,/obj/item/ore/bananium,/turf/simulated/floor/plasteel/airless,/area/space) +"nm" = (/obj/structure/closet/crate,/obj/item/stack/ore/bananium,/obj/item/stack/ore/bananium,/obj/item/stack/ore/bananium,/obj/item/stack/ore/bananium,/turf/simulated/floor/plasteel/airless,/area/space) "nn" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f5";icon_state = "swall_f5";dir = 2},/area/space) "no" = (/obj/machinery/bluespace_beacon/syndicate,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/syndicate_depot/core) "np" = (/turf/simulated/floor/plasteel/airless,/turf/simulated/shuttle/wall{tag = "icon-swall_f10";icon_state = "swall_f10";dir = 2},/area/space) diff --git a/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm b/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm index 1f2670371f8..4511f8bd5a7 100644 --- a/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm +++ b/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm @@ -60,7 +60,7 @@ /obj/machinery/atmospherics/unary/vent_pump/New() ..() - all_vent_pumps += src + GLOB.all_vent_pumps += src icon = null initial_loc = get_area(loc) area_uid = initial_loc.uid @@ -429,7 +429,7 @@ return ..() /obj/machinery/atmospherics/unary/vent_pump/Destroy() - all_vent_pumps -= src + GLOB.all_vent_pumps -= src if(initial_loc) initial_loc.air_vent_info -= id_tag initial_loc.air_vent_names -= id_tag diff --git a/code/__DEFINES/admin.dm b/code/__DEFINES/admin.dm index 0397b5bcdde..da61e4829c2 100644 --- a/code/__DEFINES/admin.dm +++ b/code/__DEFINES/admin.dm @@ -60,4 +60,6 @@ #define ADMIN_FULLMONTY(user) "[key_name_admin(user)] [ADMIN_QUE(user)] [ADMIN_PP(user)] [ADMIN_VV(user)] [ADMIN_SM(user)] [ADMIN_FLW(user)] [ADMIN_TP(user)]" #define ADMIN_JMP(src) "(JMP)" #define COORD(src) "[src ? "([src.x],[src.y],[src.z])" : "nonexistent location"]" -#define ADMIN_COORDJMP(src) "[src ? "[COORD(src)] [ADMIN_JMP(src)]" : "nonexistent location"]" \ No newline at end of file +#define AREACOORD(src) "[src ? "[get_area_name(src, TRUE)] [COORD(src)]" : "nonexistent location" ]" +#define ADMIN_COORDJMP(src) "[src ? "[COORD(src)] [ADMIN_JMP(src)]" : "nonexistent location"]" +#define ADMIN_VERBOSEJMP(src) "[src ? "[AREACOORD(src)] [ADMIN_JMP(src)]" : "nonexistent location"]" diff --git a/code/__HELPERS/_logging.dm b/code/__HELPERS/_logging.dm index c30817ed5aa..8573873676b 100644 --- a/code/__HELPERS/_logging.dm +++ b/code/__HELPERS/_logging.dm @@ -38,7 +38,7 @@ if(config.log_debug) WRITE_LOG(GLOB.world_game_log, "DEBUG: [text][log_end]") - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(check_rights(R_DEBUG, 0, C.mob) && (C.prefs.toggles & CHAT_DEBUGLOGS)) to_chat(C, "DEBUG: [text]") diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 6b94e28d91b..eb6fb8a4802 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -197,7 +197,7 @@ // Try to find all the players who can hear the message - for(var/A in player_list + hear_radio_list) + for(var/A in GLOB.player_list + GLOB.hear_radio_list) var/mob/M = A if(M) var/turf/ear = get_turf(M) @@ -268,7 +268,7 @@ break /proc/get_mob_by_key(var/key) - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(M.ckey == lowertext(key)) return M return null @@ -278,7 +278,7 @@ var/list/candidates = list() // Keep looping until we find a non-afk candidate within the time bracket (we limit the bracket to 10 minutes (6000)) while(!candidates.len && afk_bracket < 6000) - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) if(G.client != null) if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD)) if(!G.client.is_afk(afk_bracket) && (be_special_type in G.client.prefs.be_special)) @@ -294,7 +294,7 @@ var/list/candidates = list() // Keep looping until we find a non-afk candidate within the time bracket (we limit the bracket to 10 minutes (6000)) while(!candidates.len && afk_bracket < 6000) - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) if(G.client != null) if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD)) if(!G.client.is_afk(afk_bracket) && (be_special_type in G.client.prefs.be_special)) @@ -315,7 +315,7 @@ /proc/Show2Group4Delay(obj/O, list/group, delay=0) if(!isobj(O)) return - if(!group) group = clients + if(!group) group = GLOB.clients for(var/client/C in group) C.screen += O if(delay) @@ -333,8 +333,8 @@ /proc/get_active_player_count() // Get active players who are playing in the round var/active_players = 0 - for(var/i = 1; i <= player_list.len; i++) - var/mob/M = player_list[i] + for(var/i = 1; i <= GLOB.player_list.len; i++) + var/mob/M = GLOB.player_list[i] if(M && M.client) if(istype(M, /mob/new_player)) // exclude people in the lobby continue @@ -384,7 +384,7 @@ return new /datum/projectile_data(src_x, src_y, time, distance, power_x, power_y, dest_x, dest_y) -/proc/mobs_in_area(var/area/the_area, var/client_needed=0, var/moblist=mob_list) +/proc/mobs_in_area(var/area/the_area, var/client_needed=0, var/moblist=GLOB.mob_list) var/list/mobs_found[0] var/area/our_area = get_area(the_area) for(var/mob/M in moblist) @@ -397,7 +397,7 @@ /proc/alone_in_area(var/area/the_area, var/mob/must_be_alone, var/check_type = /mob/living/carbon) var/area/our_area = get_area(the_area) - for(var/C in living_mob_list) + for(var/C in GLOB.living_mob_list) if(!istype(C, check_type)) continue if(C == must_be_alone) @@ -436,7 +436,7 @@ proc/pollCandidates(Question, be_special_type, antag_age_check = 0, poll_time = if(!Question) Question = "Would you like to be a special role?" - for(var/mob/dead/observer/G in (ignore_respawnability ? player_list : respawnable_list)) + for(var/mob/dead/observer/G in (ignore_respawnability ? GLOB.player_list : GLOB.respawnable_list)) if(!G.key || !G.client) continue if(be_special_type) diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index a068bb8604e..a37be148b4e 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -5,38 +5,38 @@ /proc/makeDatumRefLists() //markings - init_sprite_accessory_subtypes(/datum/sprite_accessory/body_markings, marking_styles_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/body_markings, GLOB.marking_styles_list) //head accessory - init_sprite_accessory_subtypes(/datum/sprite_accessory/head_accessory, head_accessory_styles_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/head_accessory, GLOB.head_accessory_styles_list) //hair - init_sprite_accessory_subtypes(/datum/sprite_accessory/hair, hair_styles_public_list, hair_styles_male_list, hair_styles_female_list, hair_styles_full_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/hair, GLOB.hair_styles_public_list, GLOB.hair_styles_male_list, GLOB.hair_styles_female_list, GLOB.hair_styles_full_list) //facial hair - init_sprite_accessory_subtypes(/datum/sprite_accessory/facial_hair, facial_hair_styles_list, facial_hair_styles_male_list, facial_hair_styles_female_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/facial_hair, GLOB.facial_hair_styles_list, GLOB.facial_hair_styles_male_list, GLOB.facial_hair_styles_female_list) //underwear - init_sprite_accessory_subtypes(/datum/sprite_accessory/underwear, underwear_list, underwear_m, underwear_f) + init_sprite_accessory_subtypes(/datum/sprite_accessory/underwear, GLOB.underwear_list, GLOB.underwear_m, GLOB.underwear_f) //undershirt - init_sprite_accessory_subtypes(/datum/sprite_accessory/undershirt, undershirt_list, undershirt_m, undershirt_f) + init_sprite_accessory_subtypes(/datum/sprite_accessory/undershirt, GLOB.undershirt_list, GLOB.undershirt_m, GLOB.undershirt_f) //socks - init_sprite_accessory_subtypes(/datum/sprite_accessory/socks, socks_list, socks_m, socks_f) + init_sprite_accessory_subtypes(/datum/sprite_accessory/socks, GLOB.socks_list, GLOB.socks_m, GLOB.socks_f) //alt heads - init_sprite_accessory_subtypes(/datum/sprite_accessory/alt_heads, alt_heads_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/alt_heads, GLOB.alt_heads_list) - init_subtypes(/datum/surgery_step, surgery_steps) + init_subtypes(/datum/surgery_step, GLOB.surgery_steps) for(var/path in (subtypesof(/datum/surgery))) - surgeries_list += new path() + GLOB.surgeries_list += new path() - init_datum_subtypes(/datum/job, joblist, list(/datum/job/ai, /datum/job/cyborg), "title") - init_datum_subtypes(/datum/superheroes, all_superheroes, null, "name") - init_datum_subtypes(/datum/nations, all_nations, null, "default_name") - init_datum_subtypes(/datum/language, all_languages, null, "name") + init_datum_subtypes(/datum/job, GLOB.joblist, list(/datum/job/ai, /datum/job/cyborg), "title") + init_datum_subtypes(/datum/superheroes, GLOB.all_superheroes, null, "name") + init_datum_subtypes(/datum/nations, GLOB.all_nations, null, "default_name") + init_datum_subtypes(/datum/language, GLOB.all_languages, null, "name") - for(var/language_name in all_languages) - var/datum/language/L = all_languages[language_name] + for(var/language_name in GLOB.all_languages) + var/datum/language/L = GLOB.all_languages[language_name] if(!(L.flags & NONGLOBAL)) - language_keys[":[lowertext(L.key)]"] = L - language_keys[".[lowertext(L.key)]"] = L - language_keys["#[lowertext(L.key)]"] = L + GLOB.language_keys[":[lowertext(L.key)]"] = L + GLOB.language_keys[".[lowertext(L.key)]"] = L + GLOB.language_keys["#[lowertext(L.key)]"] = L var/rkey = 0 for(var/spath in subtypesof(/datum/species)) @@ -45,9 +45,9 @@ GLOB.all_species[S.name] = S if(IS_WHITELISTED in S.species_traits) - whitelisted_species += S.name + GLOB.whitelisted_species += S.name - init_subtypes(/datum/crafting_recipe, crafting_recipes) + init_subtypes(/datum/crafting_recipe, GLOB.crafting_recipes) //Pipe list building init_subtypes(/datum/pipes, GLOB.construction_pipe_list) @@ -60,10 +60,10 @@ /* // Uncomment to debug chemical reaction list. /client/verb/debug_chemical_list() - for(var/reaction in chemical_reactions_list) - . += "chemical_reactions_list\[\"[reaction]\"\] = \"[chemical_reactions_list[reaction]]\"\n" - if(islist(chemical_reactions_list[reaction])) - var/list/L = chemical_reactions_list[reaction] + for(var/reaction in GLOB.chemical_reactions_list) + . += "GLOB.chemical_reactions_list\[\"[reaction]\"\] = \"[GLOB.chemical_reactions_list[reaction]]\"\n" + if(islist(GLOB.chemical_reactions_list[reaction])) + var/list/L = GLOB.chemical_reactions_list[reaction] for(var/t in L) . += " has: [t]\n" to_chat(world, .) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index 4ebced1c973..c30b2a3ef0d 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -13,25 +13,25 @@ proc/GetOppositeDir(var/dir) proc/random_underwear(gender, species = "Human") var/list/pick_list = list() switch(gender) - if(MALE) pick_list = underwear_m - if(FEMALE) pick_list = underwear_f - else pick_list = underwear_list + if(MALE) pick_list = GLOB.underwear_m + if(FEMALE) pick_list = GLOB.underwear_f + else pick_list = GLOB.underwear_list return pick_species_allowed_underwear(pick_list, species) proc/random_undershirt(gender, species = "Human") var/list/pick_list = list() switch(gender) - if(MALE) pick_list = undershirt_m - if(FEMALE) pick_list = undershirt_f - else pick_list = undershirt_list + if(MALE) pick_list = GLOB.undershirt_m + if(FEMALE) pick_list = GLOB.undershirt_f + else pick_list = GLOB.undershirt_list return pick_species_allowed_underwear(pick_list, species) proc/random_socks(gender, species = "Human") var/list/pick_list = list() switch(gender) - if(MALE) pick_list = socks_m - if(FEMALE) pick_list = socks_f - else pick_list = socks_list + if(MALE) pick_list = GLOB.socks_m + if(FEMALE) pick_list = GLOB.socks_f + else pick_list = GLOB.socks_list return pick_species_allowed_underwear(pick_list, species) proc/pick_species_allowed_underwear(list/all_picks, species) @@ -49,8 +49,8 @@ proc/pick_species_allowed_underwear(list/all_picks, species) proc/random_hair_style(var/gender, species = "Human", var/datum/robolimb/robohead) var/h_style = "Bald" var/list/valid_hairstyles = list() - for(var/hairstyle in hair_styles_public_list) - var/datum/sprite_accessory/S = hair_styles_public_list[hairstyle] + for(var/hairstyle in GLOB.hair_styles_public_list) + var/datum/sprite_accessory/S = GLOB.hair_styles_public_list[hairstyle] if(hairstyle == "Bald") //Just in case. valid_hairstyles += hairstyle @@ -78,8 +78,8 @@ proc/random_hair_style(var/gender, species = "Human", var/datum/robolimb/robohea proc/random_facial_hair_style(var/gender, species = "Human", var/datum/robolimb/robohead) var/f_style = "Shaved" var/list/valid_facial_hairstyles = list() - for(var/facialhairstyle in facial_hair_styles_list) - var/datum/sprite_accessory/S = facial_hair_styles_list[facialhairstyle] + for(var/facialhairstyle in GLOB.facial_hair_styles_list) + var/datum/sprite_accessory/S = GLOB.facial_hair_styles_list[facialhairstyle] if(facialhairstyle == "Shaved") //Just in case. valid_facial_hairstyles += facialhairstyle @@ -107,8 +107,8 @@ proc/random_facial_hair_style(var/gender, species = "Human", var/datum/robolimb/ proc/random_head_accessory(species = "Human") var/ha_style = "None" var/list/valid_head_accessories = list() - for(var/head_accessory in head_accessory_styles_list) - var/datum/sprite_accessory/S = head_accessory_styles_list[head_accessory] + for(var/head_accessory in GLOB.head_accessory_styles_list) + var/datum/sprite_accessory/S = GLOB.head_accessory_styles_list[head_accessory] if(!(species in S.species_allowed)) continue @@ -122,8 +122,8 @@ proc/random_head_accessory(species = "Human") proc/random_marking_style(var/location = "body", species = "Human", var/datum/robolimb/robohead, var/body_accessory, var/alt_head) var/m_style = "None" var/list/valid_markings = list() - for(var/marking in marking_styles_list) - var/datum/sprite_accessory/body_markings/S = marking_styles_list[marking] + for(var/marking in GLOB.marking_styles_list) + var/datum/sprite_accessory/body_markings/S = GLOB.marking_styles_list[marking] if(S.name == "None") valid_markings += marking continue @@ -139,7 +139,7 @@ proc/random_marking_style(var/location = "body", species = "Human", var/datum/ro if(!S.tails_allowed || !(body_accessory in S.tails_allowed)) continue if(location == "head") - var/datum/sprite_accessory/body_markings/head/M = marking_styles_list[S.name] + var/datum/sprite_accessory/body_markings/head/M = GLOB.marking_styles_list[S.name] if(species == "Machine")//If the user is a species that can have a robotic head... if(!robohead) robohead = all_robolimbs["Morpheus Cyberkinetics"] @@ -182,9 +182,9 @@ proc/random_name(gender, species = "Human") if(!current_species || current_species.name == "Human") if(gender==FEMALE) - return capitalize(pick(first_names_female)) + " " + capitalize(pick(last_names)) + return capitalize(pick(GLOB.first_names_female)) + " " + capitalize(pick(GLOB.last_names)) else - return capitalize(pick(first_names_male)) + " " + capitalize(pick(last_names)) + return capitalize(pick(GLOB.first_names_male)) + " " + capitalize(pick(GLOB.last_names)) else return current_species.get_random_name(gender) @@ -488,7 +488,7 @@ This is always put in the attack log. LogMouseMacro(".mouse", params) /proc/update_all_mob_security_hud() - for(var/mob/living/carbon/human/H in mob_list) + for(var/mob/living/carbon/human/H in GLOB.mob_list) H.sec_hud_set_security_status() /proc/getviewsize(view) diff --git a/code/__HELPERS/names.dm b/code/__HELPERS/names.dm index d6ae4ea9b1b..930a8ee9de5 100644 --- a/code/__HELPERS/names.dm +++ b/code/__HELPERS/names.dm @@ -164,11 +164,11 @@ var/syndicate_code_response//Code response for traitors. if(names.len&&prob(70)) code_phrase += pick(names) else - code_phrase += pick(pick(first_names_male,first_names_female)) + code_phrase += pick(pick(GLOB.first_names_male,GLOB.first_names_female)) code_phrase += " " - code_phrase += pick(last_names) + code_phrase += pick(GLOB.last_names) if(2) - code_phrase += pick(joblist)//Returns a job. + code_phrase += pick(GLOB.joblist)//Returns a job. safety -= 1 if(2) switch(rand(1,2))//Places or things. @@ -182,9 +182,9 @@ var/syndicate_code_response//Code response for traitors. if(1) code_phrase += pick(nouns) if(2) - code_phrase += pick(adjectives) + code_phrase += pick(GLOB.adjectives) if(3) - code_phrase += pick(verbs) + code_phrase += pick(GLOB.verbs) if(words==1) code_phrase += "." else @@ -219,9 +219,9 @@ var/syndicate_code_response//Code response for traitors. if(1) syndicate_code_phrase += pick("I'm looking for","Have you seen","Maybe you've seen","I'm trying to find","I'm tracking") syndicate_code_phrase += " " - syndicate_code_phrase += pick(pick(first_names_male,first_names_female)) + syndicate_code_phrase += pick(pick(GLOB.first_names_male,GLOB.first_names_female)) syndicate_code_phrase += " " - syndicate_code_phrase += pick(last_names) + syndicate_code_phrase += pick(GLOB.last_names) syndicate_code_phrase += "." if(2) syndicate_code_phrase += pick("How do I get to","How do I find","Where is","Where do I find") @@ -245,7 +245,7 @@ var/syndicate_code_response//Code response for traitors. if(5) syndicate_code_phrase += pick("Do we have","Is there","Where is","Where's","Who's") syndicate_code_phrase += " " - syndicate_code_phrase += "[pick(joblist)]" + syndicate_code_phrase += "[pick(GLOB.joblist)]" syndicate_code_phrase += "?" switch(choice) @@ -269,12 +269,12 @@ var/syndicate_code_response//Code response for traitors. syndicate_code_response += pick("Try asking","Ask","Talk to","Go see","Follow","Hunt down") syndicate_code_response += " " if(prob(50)) - syndicate_code_response += pick(pick(first_names_male,first_names_female)) + syndicate_code_response += pick(pick(GLOB.first_names_male,GLOB.first_names_female)) syndicate_code_response += " " - syndicate_code_response += pick(last_names) + syndicate_code_response += pick(GLOB.last_names) else syndicate_code_response += " the " - syndicate_code_response += "[pic(joblist)]" + syndicate_code_response += "[pic(GLOB.joblist)]" syndicate_code_response += "." else syndicate_code_response += pick("*shrug*","*smile*","*blink*","*sigh*","*laugh*","*nod*","*giggle*") diff --git a/code/__HELPERS/text.dm b/code/__HELPERS/text.dm index 8e9b5f93691..dbbc965411a 100644 --- a/code/__HELPERS/text.dm +++ b/code/__HELPERS/text.dm @@ -142,8 +142,8 @@ t_out += ascii2text(ascii_char) last_char_group = 2 - // ~ | @ : # $ % & * + - if(126,124,64,58,35,36,37,38,42,43) //Other symbols that we'll allow (mainly for AI) + // ~ | @ : # $ % & * + ! + if(126,124,64,58,35,36,37,38,42,43,33) //Other symbols that we'll allow (mainly for AI) if(!last_char_group) continue //suppress at start of string if(!allow_numbers) continue t_out += ascii2text(ascii_char) diff --git a/code/__HELPERS/time.dm b/code/__HELPERS/time.dm index 6ebaba5bc3b..d36fd9449d4 100644 --- a/code/__HELPERS/time.dm +++ b/code/__HELPERS/time.dm @@ -94,7 +94,7 @@ proc/isDay(var/month, var/day) return round(0.1 * (TimeOfGame - wh), 0.1) /proc/numberToMonthName(number) - return month_names.Find(number) + return GLOB.month_names.Find(number) //Take a value in seconds and returns a string of minutes and seconds in the format X minute(s) and X seconds. /proc/seconds_to_time(var/seconds as num) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index e01a1fd9895..4dd3c56d12f 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -277,7 +277,7 @@ Turf and target are seperate in case you want to teleport some distance from a t /proc/freeborg() var/select = null var/list/borgs = list() - for(var/mob/living/silicon/robot/A in player_list) + for(var/mob/living/silicon/robot/A in GLOB.player_list) if(A.stat == 2 || A.connected_ai || A.scrambledcodes || istype(A,/mob/living/silicon/robot/drone)) continue var/name = "[A.real_name] ([A.modtype] [A.braintype])" @@ -290,7 +290,7 @@ Turf and target are seperate in case you want to teleport some distance from a t //When a borg is activated, it can choose which AI it wants to be slaved to /proc/active_ais() . = list() - for(var/mob/living/silicon/ai/A in living_mob_list) + for(var/mob/living/silicon/ai/A in GLOB.living_mob_list) if(A.stat == DEAD) continue if(A.control_disabled == 1) @@ -372,7 +372,7 @@ Turf and target are seperate in case you want to teleport some distance from a t //Orders mobs by type then by name /proc/sortmobs() var/list/moblist = list() - var/list/sortmob = sortAtom(mob_list) + var/list/sortmob = sortAtom(GLOB.mob_list) for(var/mob/living/silicon/ai/M in sortmob) moblist.Add(M) if(M.eyeobj) @@ -427,7 +427,7 @@ Turf and target are seperate in case you want to teleport some distance from a t /proc/get_mob_by_ckey(key) if(!key) return - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(M.ckey == key) return M @@ -996,7 +996,7 @@ proc/oview_or_orange(distance = world.view , center = usr , type) proc/get_mob_with_client_list() var/list/mobs = list() - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(M.client) mobs += M return mobs @@ -1859,8 +1859,8 @@ var/mob/dview/dview_mob = new /obj/structure/closet = "CLOSET", /obj/structure/statue = "STATUE", /obj/structure/chair = "CHAIR", // oh no - /obj/structure/stool/bed = "BED", - /obj/structure/stool = "STOOL", + /obj/structure/bed = "BED", + /obj/structure/chair/stool = "STOOL", /obj/structure/table = "TABLE", /obj/structure = "STRUCTURE", /obj/vehicle = "VEHICLE", @@ -1954,7 +1954,7 @@ var/mob/dview/dview_mob = new pois[name] = M if(!mobs_only) - for(var/atom/A in poi_list) + for(var/atom/A in GLOB.poi_list) if(!A || !A.loc) continue var/name = A.name diff --git a/code/_globalvars/lists/flavor_misc.dm b/code/_globalvars/lists/flavor_misc.dm index b71498e0636..a93e58acf7f 100644 --- a/code/_globalvars/lists/flavor_misc.dm +++ b/code/_globalvars/lists/flavor_misc.dm @@ -1,35 +1,35 @@ //Preferences stuff //Head accessory styles -var/global/list/head_accessory_styles_list = list() //stores /datum/sprite_accessory/head_accessory indexed by name +GLOBAL_LIST_INIT(head_accessory_styles_list, list()) //stores /datum/sprite_accessory/head_accessory indexed by name //Marking styles -var/global/list/marking_styles_list = list() //stores /datum/sprite_accessory/body_markings indexed by name +GLOBAL_LIST_INIT(marking_styles_list, list()) //stores /datum/sprite_accessory/body_markings indexed by name //Hairstyles -var/global/list/hair_styles_public_list = list() //stores /datum/sprite_accessory/hair indexed by name -var/global/list/hair_styles_male_list = list() -var/global/list/hair_styles_female_list = list() -var/global/list/hair_styles_full_list = list() //fluff hair styles -var/global/list/facial_hair_styles_list = list() //stores /datum/sprite_accessory/facial_hair indexed by name -var/global/list/facial_hair_styles_male_list = list() -var/global/list/facial_hair_styles_female_list = list() -var/global/list/skin_styles_female_list = list() //unused +GLOBAL_LIST_INIT(hair_styles_public_list, list()) //stores /datum/sprite_accessory/hair indexed by name +GLOBAL_LIST_INIT(hair_styles_male_list, list()) +GLOBAL_LIST_INIT(hair_styles_female_list, list()) +GLOBAL_LIST_INIT(hair_styles_full_list, list()) //fluff hair styles +GLOBAL_LIST_INIT(facial_hair_styles_list, list()) //stores /datum/sprite_accessory/facial_hair indexed by name +GLOBAL_LIST_INIT(facial_hair_styles_male_list, list()) +GLOBAL_LIST_INIT(facial_hair_styles_female_list, list()) +GLOBAL_LIST_INIT(skin_styles_female_list, list()) //unused //Underwear -var/global/list/underwear_list = list() //stores /datum/sprite_accessory/underwear indexed by name -var/global/list/underwear_m = list() //stores only underwear name -var/global/list/underwear_f = list() //stores only underwear name +GLOBAL_LIST_INIT(underwear_list, list()) //stores /datum/sprite_accessory/underwear indexed by name +GLOBAL_LIST_INIT(underwear_m, list()) //stores only underwear name +GLOBAL_LIST_INIT(underwear_f, list()) //stores only underwear name //Undershirts -var/global/list/undershirt_list = list() //stores /datum/sprite_accessory/undershirt indexed by name -var/global/list/undershirt_m = list() //stores only undershirt name -var/global/list/undershirt_f = list() //stores only undershirt name +GLOBAL_LIST_INIT(undershirt_list, list()) //stores /datum/sprite_accessory/undershirt indexed by name +GLOBAL_LIST_INIT(undershirt_m, list()) //stores only undershirt name +GLOBAL_LIST_INIT(undershirt_f, list()) //stores only undershirt name //Socks -var/global/list/socks_list = list() //stores /datum/sprite_accessory/socks indexed by name -var/global/list/socks_m = list() //stores only socks name -var/global/list/socks_f = list() //stores only socks name +GLOBAL_LIST_INIT(socks_list, list()) //stores /datum/sprite_accessory/socks indexed by name +GLOBAL_LIST_INIT(socks_m, list()) //stores only socks name +GLOBAL_LIST_INIT(socks_f, list()) //stores only socks name //Alt Heads -var/global/list/alt_heads_list = list() //stores /datum/sprite_accessory/alt_heads indexed by name +GLOBAL_LIST_INIT(alt_heads_list, list()) //stores /datum/sprite_accessory/alt_heads indexed by name -var/static/list/scarySounds = list('sound/weapons/thudswoosh.ogg','sound/weapons/Taser.ogg','sound/weapons/armbomb.ogg','sound/voice/hiss1.ogg','sound/voice/hiss2.ogg', \ +GLOBAL_LIST_INIT(scarySounds, list('sound/weapons/thudswoosh.ogg','sound/weapons/Taser.ogg','sound/weapons/armbomb.ogg','sound/voice/hiss1.ogg','sound/voice/hiss2.ogg', \ 'sound/voice/hiss3.ogg','sound/voice/hiss4.ogg','sound/voice/hiss5.ogg','sound/voice/hiss6.ogg','sound/effects/Glassbr1.ogg','sound/effects/Glassbr2.ogg','sound/effects/Glassbr3.ogg', \ -'sound/items/Welder.ogg','sound/items/Welder2.ogg','sound/machines/airlock_open.ogg','sound/effects/clownstep1.ogg','sound/effects/clownstep2.ogg') +'sound/items/Welder.ogg','sound/items/Welder2.ogg','sound/machines/airlock_open.ogg','sound/effects/clownstep1.ogg','sound/effects/clownstep2.ogg')) // Reference list for disposal sort junctions. Set the sortType variable on disposal sort junctions to // the index of the sort department that you want. For example, sortType set to 2 will reroute all packages @@ -38,30 +38,30 @@ var/static/list/scarySounds = list('sound/weapons/thudswoosh.ogg','sound/weapons //If you don't want to fuck up disposals, add to this list, and don't change the order. //If you insist on changing the order, you'll have to change every sort junction to reflect the new order. --Pete -var/list/TAGGERLOCATIONS = list("Disposals", +GLOBAL_LIST_INIT(TAGGERLOCATIONS, list("Disposals", "Cargo Bay", "QM Office", "Engineering", "CE Office", "Atmospherics", "HoS Office", "Security", "Medbay", "CMO Office", "Chemistry", "Research", "RD Office", "Robotics", "HoP Office", "Library", "Chapel", "Captain's Office", - "Bar", "Kitchen", "Hydroponics", "Janitor Closet","Genetics","Brig Physician") + "Bar", "Kitchen", "Hydroponics", "Janitor Closet","Genetics","Brig Physician")) -var/list/hit_appends = list("-OOF", "-ACK", "-UGH", "-HRNK", "-HURGH", "-GLORF") +GLOBAL_LIST_INIT(hit_appends, list("-OOF", "-ACK", "-UGH", "-HRNK", "-HURGH", "-GLORF")) -var/global/list/greek_letters = list("Alpha", "Beta", "Gamma", "Delta", +GLOBAL_LIST_INIT(greek_letters, list("Alpha", "Beta", "Gamma", "Delta", "Epsilon", "Zeta", "Eta", "Theta", "Iota", "Kappa", "Lambda", "Mu", "Nu", "Xi", "Omicron", "Pi", "Rho", "Sigma", "Tau", "Upsilon", "Phi", - "Chi", "Psi", "Omega") + "Chi", "Psi", "Omega")) -var/global/list/phonetic_alphabet = list("Alpha", "Bravo", "Charlie", +GLOBAL_LIST_INIT(phonetic_alphabet, list("Alpha", "Bravo", "Charlie", "Delta", "Echo", "Foxtrot", "Golf", "Hotel", "India", "Juliet", "Kilo", "Lima", "Mike", "November", "Oscar", "Papa", "Quebec", "Romeo", "Sierra", "Tango", "Uniform", "Victor", "Whiskey", "X-ray", - "Yankee", "Zulu") + "Yankee", "Zulu")) -var/global/list/numbers_as_words = list("One", "Two", "Three", "Four", +GLOBAL_LIST_INIT(numbers_as_words, list("One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", - "Eighteen", "Nineteen") + "Eighteen", "Nineteen")) //Backpacks #define GBACKPACK "Grey Backpack" @@ -71,4 +71,4 @@ var/global/list/numbers_as_words = list("One", "Two", "Three", "Four", #define DBACKPACK "Department Backpack" #define DSATCHEL "Department Satchel" #define DDUFFLEBAG "Department Dufflebag" -var/global/list/backbaglist = list(DBACKPACK, DSATCHEL, DDUFFLEBAG, GBACKPACK, GSATCHEL, GDUFFLEBAG, LSATCHEL) +GLOBAL_LIST_INIT(backbaglist, list(DBACKPACK, DSATCHEL, DDUFFLEBAG, GBACKPACK, GSATCHEL, GDUFFLEBAG, LSATCHEL)) diff --git a/code/_globalvars/lists/misc.dm b/code/_globalvars/lists/misc.dm index 8a06b552db2..42e4441034c 100644 --- a/code/_globalvars/lists/misc.dm +++ b/code/_globalvars/lists/misc.dm @@ -1,13 +1,13 @@ -var/global/list/alphabet = list("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z") -var/global/list/alphabet_uppercase = list("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z") -var/global/list/zero_character_only = list("0") -var/global/list/hex_characters = list("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f") -var/global/list/binary = list("0","1") +GLOBAL_LIST_INIT(alphabet, list("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z")) +GLOBAL_LIST_INIT(alphabet_uppercase, list("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z")) +GLOBAL_LIST_INIT(zero_character_only, list("0")) +GLOBAL_LIST_INIT(hex_characters, list("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f")) +GLOBAL_LIST_INIT(binary, list("0","1")) -var/global/list/day_names = list("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday") -var/global/list/month_names = list("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December") +GLOBAL_LIST_INIT(day_names, list("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")) +GLOBAL_LIST_INIT(month_names, list("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December")) -var/list/restricted_camera_networks = list( //Those networks can only be accessed by preexisting terminals. AIs and new terminals can't use them. +GLOBAL_LIST_INIT(restricted_camera_networks, list( "CentComm", "ERT", "NukeOps", @@ -17,19 +17,19 @@ var/list/restricted_camera_networks = list( //Those networks can only be accesse "UO71", "Xeno", "Hotel" - ) + )) //Those networks can only be accessed by preexisting terminals. AIs and new terminals can't use them. -var/list/mineral_turfs = list() +GLOBAL_LIST_INIT(mineral_turfs, list()) -var/list/ruin_landmarks = list() +GLOBAL_LIST_INIT(ruin_landmarks, list()) -var/list/round_end_sounds = list( // Maps available round end sounds to their duration +GLOBAL_LIST_INIT(round_end_sounds, list( 'sound/AI/newroundsexy.ogg' = 2.3 SECONDS, 'sound/misc/apcdestroyed.ogg' = 3 SECONDS, 'sound/misc/bangindonk.ogg' = 1.6 SECONDS, 'sound/goonstation/misc/newround1.ogg' = 6.9 SECONDS, 'sound/goonstation/misc/newround2.ogg' = 14.8 SECONDS - ) + )) // Maps available round end sounds to their duration GLOBAL_LIST_INIT(cooking_recipe_types, list( RECIPE_MICROWAVE = /datum/recipe/microwave, diff --git a/code/_globalvars/lists/mobs.dm b/code/_globalvars/lists/mobs.dm index 7cc456f9440..ff902473329 100644 --- a/code/_globalvars/lists/mobs.dm +++ b/code/_globalvars/lists/mobs.dm @@ -1,34 +1,34 @@ //Languages/species/whitelist. //Languages and species fit with mobs right GLOBAL_LIST_EMPTY(all_species) -var/global/list/all_languages[0] -var/global/list/language_keys[0] // Table of say codes for all languages -var/global/list/all_superheroes[0] -var/global/list/all_nations[0] -var/global/list/whitelisted_species = list() +GLOBAL_LIST_EMPTY(all_languages) +GLOBAL_LIST_EMPTY(language_keys) // Table of say codes for all languages +GLOBAL_LIST_EMPTY(all_superheroes) +GLOBAL_LIST_EMPTY(all_nations) +GLOBAL_LIST_INIT(whitelisted_species, list()) -var/list/clients = list() //list of all clients -var/list/admins = list() //list of all clients whom are admins -var/list/deadmins = list() //list of all clients who have used the de-admin verb. -var/list/directory = list() //list of all ckeys with associated client -var/list/stealthminID = list() //reference list with IDs that store ckeys, for stealthmins +GLOBAL_LIST_INIT(clients, list()) //list of all clients +GLOBAL_LIST_INIT(admins, list()) //list of all clients whom are admins +GLOBAL_LIST_INIT(deadmins, list()) //list of all clients who have used the de-admin verb. +GLOBAL_LIST_INIT(directory, list()) //list of all ckeys with associated client +GLOBAL_LIST_INIT(stealthminID, list()) //reference list with IDs that store ckeys, for stealthmins //Since it didn't really belong in any other category, I'm putting this here //This is for procs to replace all the goddamn 'in world's that are chilling around the code -var/global/list/player_list = list() //List of all mobs **with clients attached**. Excludes /mob/new_player -var/global/list/mob_list = list() //List of all mobs, including clientless -var/global/list/silicon_mob_list = list() //List of all silicon mobs, including clientless -var/global/list/spirits = list() //List of all the spirits, including Masks -var/global/list/living_mob_list = list() //List of all alive mobs, including clientless. Excludes /mob/new_player -var/global/list/dead_mob_list = list() //List of all dead mobs, including clientless. Excludes /mob/new_player -var/global/list/respawnable_list = list() //List of all mobs, dead or in mindless creatures that still be respawned. -var/global/list/non_respawnable_keys = list() //List of ckeys that are excluded from respawning for remainder of round. -var/global/list/simple_animal_list = list() //List of all simple animals, including clientless -var/global/list/snpc_list = list() //List of all snpc's, including clientless -var/global/list/bots_list = list() //List of all bots(beepsky, medibots,etc) +GLOBAL_LIST_INIT(player_list, list()) //List of all mobs **with clients attached**. Excludes /mob/new_player +GLOBAL_LIST_INIT(mob_list, list()) //List of all mobs, including clientless +GLOBAL_LIST_INIT(silicon_mob_list, list()) //List of all silicon mobs, including clientless +GLOBAL_LIST_INIT(spirits, list()) //List of all the spirits, including Masks +GLOBAL_LIST_INIT(living_mob_list, list()) //List of all alive mobs, including clientless. Excludes /mob/new_player +GLOBAL_LIST_INIT(dead_mob_list, list()) //List of all dead mobs, including clientless. Excludes /mob/new_player +GLOBAL_LIST_INIT(respawnable_list, list()) //List of all mobs, dead or in mindless creatures that still be respawned. +GLOBAL_LIST_INIT(non_respawnable_keys, list()) //List of ckeys that are excluded from respawning for remainder of round. +GLOBAL_LIST_INIT(simple_animal_list, list()) //List of all simple animals, including clientless +GLOBAL_LIST_INIT(snpc_list, list()) //List of all snpc's, including clientless +GLOBAL_LIST_INIT(bots_list, list()) //List of all bots(beepsky, medibots,etc) -var/global/list/med_hud_users = list() -var/global/list/sec_hud_users = list() -var/global/list/antag_hud_users = list() -var/global/list/surgeries_list = list() -var/global/list/hear_radio_list = list() //Mobs that hear the radio even if there's no client +GLOBAL_LIST_INIT(med_hud_users, list()) +GLOBAL_LIST_INIT(sec_hud_users, list()) +GLOBAL_LIST_INIT(antag_hud_users, list()) +GLOBAL_LIST_INIT(surgeries_list, list()) +GLOBAL_LIST_INIT(hear_radio_list, list()) //Mobs that hear the radio even if there's no client diff --git a/code/_globalvars/lists/names.dm b/code/_globalvars/lists/names.dm index f403695b0f6..e88c2dfbb28 100644 --- a/code/_globalvars/lists/names.dm +++ b/code/_globalvars/lists/names.dm @@ -1,20 +1,20 @@ -var/list/ai_names = file2list("config/names/ai.txt") -var/list/wizard_first = file2list("config/names/wizardfirst.txt") -var/list/wizard_second = file2list("config/names/wizardsecond.txt") -var/list/ninja_titles = file2list("config/names/ninjatitle.txt") -var/list/ninja_names = file2list("config/names/ninjaname.txt") -var/list/commando_names = file2list("config/names/death_commando.txt") -var/list/first_names_male = file2list("config/names/first_male.txt") -var/list/first_names_female = file2list("config/names/first_female.txt") -var/list/last_names = file2list("config/names/last.txt") -var/list/clown_names = file2list("config/names/clown.txt") -var/list/mime_names = file2list("config/names/mime.txt") +GLOBAL_LIST_INIT(ai_names, file2list("config/names/ai.txt")) +GLOBAL_LIST_INIT(wizard_first, file2list("config/names/wizardfirst.txt")) +GLOBAL_LIST_INIT(wizard_second, file2list("config/names/wizardsecond.txt")) +GLOBAL_LIST_INIT(ninja_titles, file2list("config/names/ninjatitle.txt")) +GLOBAL_LIST_INIT(ninja_names, file2list("config/names/ninjaname.txt")) +GLOBAL_LIST_INIT(commando_names, file2list("config/names/death_commando.txt")) +GLOBAL_LIST_INIT(first_names_male, file2list("config/names/first_male.txt")) +GLOBAL_LIST_INIT(first_names_female, file2list("config/names/first_female.txt")) +GLOBAL_LIST_INIT(last_names, file2list("config/names/last.txt")) +GLOBAL_LIST_INIT(clown_names, file2list("config/names/clown.txt")) +GLOBAL_LIST_INIT(mime_names, file2list("config/names/mime.txt")) -var/list/verbs = file2list("config/names/verbs.txt") -var/list/adjectives = file2list("config/names/adjectives.txt") -var/list/dream_strings = file2list("config/names/dreams.txt") -var/list/nightmare_strings = file2list("config/names/nightmares.txt") +GLOBAL_LIST_INIT(verbs, file2list("config/names/verbs.txt")) +GLOBAL_LIST_INIT(adjectives, file2list("config/names/adjectives.txt")) +GLOBAL_LIST_INIT(dream_strings, file2list("config/names/dreams.txt")) +GLOBAL_LIST_INIT(nightmare_strings, file2list("config/names/nightmares.txt")) //loaded on startup because of " //would include in rsc if ' was used -var/list/vox_name_syllables = list("ti","hi","ki","ya","ta","ha","ka","ya","chi","cha","kah") \ No newline at end of file +GLOBAL_LIST_INIT(vox_name_syllables, list("ti","hi","ki","ya","ta","ha","ka","ya","chi","cha","kah")) \ No newline at end of file diff --git a/code/_globalvars/lists/objects.dm b/code/_globalvars/lists/objects.dm index 0070d5efb1f..33c2c68a48f 100644 --- a/code/_globalvars/lists/objects.dm +++ b/code/_globalvars/lists/objects.dm @@ -1,48 +1,48 @@ -var/global/list/portals = list() //for use by portals +GLOBAL_LIST_INIT(portals, list()) //for use by portals GLOBAL_LIST(cable_list) //Index for all cables, so that powernets don't have to look through the entire world all the time -var/global/list/chemical_reactions_list //list of all /datum/chemical_reaction datums. Used during chemical reactions -var/global/list/chemical_reagents_list //list of all /datum/reagent datums indexed by reagent id. Used by chemistry stuff -var/global/list/landmarks_list = list() //list of all landmarks created -var/global/list/surgery_steps = list() //list of all surgery steps |BS12 -var/global/list/side_effects = list() //list of all medical sideeffects types by thier names |BS12 -var/global/list/mechas_list = list() //list of all mechs. Used by hostile mobs target tracking. -var/global/list/spacepods_list = list() //list of all space pods. Used by hostile mobs target tracking. -var/global/list/joblist = list() //list of all jobstypes, minus borg and AI -var/global/list/airlocks = list() //list of all airlocks -var/global/list/singularities = list() //list of all singularities -var/global/list/janitorial_equipment = list() //list of janitorial equipment -var/global/list/crafting_recipes = list() //list of all crafting recipes -var/global/list/prisoncomputer_list = list() -var/global/list/cell_logs = list() +GLOBAL_LIST(chemical_reactions_list) //list of all /datum/chemical_reaction datums. Used during chemical reactions +GLOBAL_LIST(chemical_reagents_list) //list of all /datum/reagent datums indexed by reagent id. Used by chemistry stuff +GLOBAL_LIST_INIT(landmarks_list, list()) //list of all landmarks created +GLOBAL_LIST_INIT(surgery_steps, list()) //list of all surgery steps |BS12 +GLOBAL_LIST_INIT(side_effects, list()) //list of all medical sideeffects types by thier names |BS12 +GLOBAL_LIST_INIT(mechas_list, list()) //list of all mechs. Used by hostile mobs target tracking. +GLOBAL_LIST_INIT(spacepods_list, list()) //list of all space pods. Used by hostile mobs target tracking. +GLOBAL_LIST_INIT(joblist, list()) //list of all jobstypes, minus borg and AI +GLOBAL_LIST_INIT(airlocks, list()) //list of all airlocks +GLOBAL_LIST_INIT(singularities, list()) //list of all singularities +GLOBAL_LIST_INIT(janitorial_equipment, list()) //list of janitorial equipment +GLOBAL_LIST_INIT(crafting_recipes, list()) //list of all crafting recipes +GLOBAL_LIST_INIT(prisoncomputer_list, list()) +GLOBAL_LIST_INIT(cell_logs, list()) -var/global/list/all_areas = list() -var/global/list/machines = list() -var/global/list/fast_processing = list() -var/global/list/processing_power_items = list() //items that ask to be called every cycle -var/global/list/rcd_list = list() //list of Rapid Construction Devices. +GLOBAL_LIST_INIT(all_areas, list()) +GLOBAL_LIST_INIT(machines, list()) +GLOBAL_LIST_INIT(fast_processing, list()) +GLOBAL_LIST_INIT(processing_power_items, list()) //items that ask to be called every cycle +GLOBAL_LIST_INIT(rcd_list, list()) //list of Rapid Construction Devices. -var/global/list/apcs = list() -var/global/list/air_alarms = list() -var/global/list/power_monitors = list() -var/global/list/all_vent_pumps = list() +GLOBAL_LIST_INIT(apcs, list()) +GLOBAL_LIST_INIT(air_alarms, list()) +GLOBAL_LIST_INIT(power_monitors, list()) +GLOBAL_LIST_INIT(all_vent_pumps, list()) -var/global/list/navbeacons = list() //list of all bot nagivation beacons, used for patrolling. -var/global/list/deliverybeacons = list() //list of all MULEbot delivery beacons. -var/global/list/deliverybeacontags = list() //list of all tags associated with delivery beacons. +GLOBAL_LIST_INIT(navbeacons, list()) //list of all bot nagivation beacons, used for patrolling. +GLOBAL_LIST_INIT(deliverybeacons, list()) //list of all MULEbot delivery beacons. +GLOBAL_LIST_INIT(deliverybeacontags, list()) //list of all tags associated with delivery beacons. -var/global/list/beacons = list() -var/global/list/shuttle_caller_list = list() //list of all communication consoles, comms consoles circuit and AIs, for automatic shuttle calls when there are none. -var/global/list/tracked_implants = list() //list of all current implants that are tracked to work out what sort of trek everyone is on. Sadly not on lavaworld not implemented... -var/global/list/pinpointer_list = list() //list of all pinpointers. Used to change stuff they are pointing to all at once. -var/global/list/abductor_equipment = list() //list of all abductor equipment +GLOBAL_LIST_INIT(beacons, list()) +GLOBAL_LIST_INIT(shuttle_caller_list, list()) //list of all communication consoles, comms consoles circuit and AIs, for automatic shuttle calls when there are none. +GLOBAL_LIST_INIT(tracked_implants, list()) //list of all current implants that are tracked to work out what sort of trek everyone is on. Sadly not on lavaworld not implemented... +GLOBAL_LIST_INIT(pinpointer_list, list()) //list of all pinpointers. Used to change stuff they are pointing to all at once. +GLOBAL_LIST_INIT(abductor_equipment, list()) //list of all abductor equipment -var/global/list/global_intercoms = list() //list of all intercomms, across all z-levels -var/global/list/global_radios = list() //list of all radios, across all z-levels +GLOBAL_LIST_INIT(global_intercoms, list()) //list of all intercomms, across all z-levels +GLOBAL_LIST_INIT(global_radios, list()) //list of all radios, across all z-levels -var/global/list/meteor_list = list() //list of all meteors -var/global/list/poi_list = list() //list of points of interest for observe/follow -var/global/list/active_jammers = list() // List of active radio jammers +GLOBAL_LIST_INIT(meteor_list, list()) //list of all meteors +GLOBAL_LIST_INIT(poi_list, list()) //list of points of interest for observe/follow +GLOBAL_LIST_INIT(active_jammers, list()) // List of active radio jammers -var/global/list/active_diseases = list() //List of Active disease in all mobs; purely for quick referencing. +GLOBAL_LIST_INIT(active_diseases, list()) //List of Active disease in all mobs; purely for quick referencing. -GLOBAL_LIST_EMPTY(mob_spawners) // All mob_spawn objects \ No newline at end of file +GLOBAL_LIST_EMPTY(mob_spawners) // All mob_spawn objects diff --git a/code/_globalvars/unused.dm b/code/_globalvars/unused.dm index 3925ea1237e..6f55887ee66 100644 --- a/code/_globalvars/unused.dm +++ b/code/_globalvars/unused.dm @@ -18,7 +18,6 @@ var/list/liftable_structures = list(\ /obj/machinery/space_heater, \ /obj/machinery/recharge_station, \ /obj/machinery/flasher, \ - /obj/structure/stool, \ /obj/structure/closet, \ /obj/machinery/photocopier, \ /obj/structure/filingcabinet, \ @@ -31,4 +30,3 @@ var/endicon = null var/datum/air_tunnel/air_tunnel1/SS13_airtunnel = null var/going = 1.0 var/datum/engine_eject/engine_eject_control = null - diff --git a/code/controllers/Processes/fast_process.dm b/code/controllers/Processes/fast_process.dm index 72ed0e68fee..c27a749f526 100644 --- a/code/controllers/Processes/fast_process.dm +++ b/code/controllers/Processes/fast_process.dm @@ -6,10 +6,10 @@ /datum/controller/process/fast_process/statProcess() ..() - stat(null, "[fast_processing.len] fast processes") + stat(null, "[GLOB.fast_processing.len] fast processes") /datum/controller/process/fast_process/doWork() - for(last_object in fast_processing) + for(last_object in GLOB.fast_processing) var/obj/O = last_object try O.process() diff --git a/code/controllers/Processes/npcai.dm b/code/controllers/Processes/npcai.dm index a93c6e881de..127429efd34 100644 --- a/code/controllers/Processes/npcai.dm +++ b/code/controllers/Processes/npcai.dm @@ -11,18 +11,18 @@ var/global/datum/controller/process/npcai/npcai_master /datum/controller/process/npcai/started() ..() - if(!simple_animal_list) - simple_animal_list = list() - if(!snpc_list) - snpc_list = list() + if(!GLOB.simple_animal_list) + GLOB.simple_animal_list = list() + if(!GLOB.snpc_list) + GLOB.snpc_list = list() /datum/controller/process/npcai/statProcess() ..() - stat(null, "[simple_animal_list.len] simple animals") - stat(null, "[snpc_list.len] SNPC's") + stat(null, "[GLOB.simple_animal_list.len] simple animals") + stat(null, "[GLOB.snpc_list.len] SNPC's") /datum/controller/process/npcai/doWork() - for(last_object in simple_animal_list) + for(last_object in GLOB.simple_animal_list) var/mob/living/simple_animal/M = last_object if(istype(M) && !QDELETED(M)) if(!M.client && M.stat == CONSCIOUS) @@ -33,7 +33,7 @@ var/global/datum/controller/process/npcai/npcai_master SCHECK else catchBadType(M) - simple_animal_list -= M + GLOB.simple_animal_list -= M current_cycle++ diff --git a/code/controllers/failsafe.dm b/code/controllers/failsafe.dm index 923dece3c6b..1d597f5e742 100644 --- a/code/controllers/failsafe.dm +++ b/code/controllers/failsafe.dm @@ -54,20 +54,20 @@ GLOBAL_REAL(Failsafe, /datum/controller/failsafe) message_admins("Notice: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5 - defcon) * processing_interval] ticks.") --defcon if(2) - to_chat(admins, "Warning: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5 - defcon) * processing_interval] ticks. Automatic restart in [processing_interval] ticks.") + to_chat(GLOB.admins, "Warning: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5 - defcon) * processing_interval] ticks. Automatic restart in [processing_interval] ticks.") --defcon if(1) - to_chat(admins, "Warning: DEFCON [defcon_pretty()]. The Master Controller has still not fired within the last [(5 - defcon) * processing_interval] ticks. Killing and restarting...") + to_chat(GLOB.admins, "Warning: DEFCON [defcon_pretty()]. The Master Controller has still not fired within the last [(5 - defcon) * processing_interval] ticks. Killing and restarting...") --defcon var/rtn = Recreate_MC() if(rtn > 0) defcon = 4 master_iteration = 0 - to_chat(admins, "MC restarted successfully") + to_chat(GLOB.admins, "MC restarted successfully") else if(rtn < 0) log_game("FailSafe: Could not restart MC, runtime encountered. Entering defcon 0") - to_chat(admins, "ERROR: DEFCON [defcon_pretty()]. Could not restart MC, runtime encountered. I will silently keep retrying.") + to_chat(GLOB.admins, "ERROR: DEFCON [defcon_pretty()]. Could not restart MC, runtime encountered. I will silently keep retrying.") //if the return number was 0, it just means the mc was restarted too recently, and it just needs some time before we try again //no need to handle that specially when defcon 0 can handle it if(0) //DEFCON 0! (mc failed to restart) @@ -75,7 +75,7 @@ GLOBAL_REAL(Failsafe, /datum/controller/failsafe) if(rtn > 0) defcon = 4 master_iteration = 0 - to_chat(admins, "MC restarted successfully") + to_chat(GLOB.admins, "MC restarted successfully") else defcon = min(defcon + 1,5) master_iteration = Master.iteration diff --git a/code/controllers/master.dm b/code/controllers/master.dm index 9cb84f26aa5..a9c7e0dbb7b 100644 --- a/code/controllers/master.dm +++ b/code/controllers/master.dm @@ -149,7 +149,7 @@ GLOBAL_REAL(Master, /datum/controller/master) = new msg = "The [BadBoy.name] subsystem seems to be destabilizing the MC and will be offlined." BadBoy.flags |= SS_NO_FIRE if(msg) - to_chat(admins, "[msg]") + to_chat(GLOB.admins, "[msg]") log_world(msg) if(istype(Master.subsystems)) @@ -609,7 +609,7 @@ GLOBAL_REAL(Master, /datum/controller/master) = new /datum/controller/master/proc/UpdateTickRate() if(!processing) return - var/client_count = length(clients) + var/client_count = length(GLOB.clients) if(client_count < config.disable_high_pop_mc_mode_amount) processing = config.base_mc_tick_rate else if(client_count > config.high_pop_mc_mode_amount) diff --git a/code/controllers/subsystem/air.dm b/code/controllers/subsystem/air.dm index 986467fc74a..6c394309a09 100644 --- a/code/controllers/subsystem/air.dm +++ b/code/controllers/subsystem/air.dm @@ -66,8 +66,8 @@ SUBSYSTEM_DEF(air) /datum/controller/subsystem/air/Initialize(timeofday) setup_overlays() // Assign icons and such for gas-turf-overlays setup_allturfs() - setup_atmos_machinery(machines) - setup_pipenets(machines) + setup_atmos_machinery(GLOB.machines) + setup_pipenets(GLOB.machines) ..() diff --git a/code/controllers/subsystem/machinery.dm b/code/controllers/subsystem/machinery.dm index a3e4d4bdb0c..af6898c39bd 100644 --- a/code/controllers/subsystem/machinery.dm +++ b/code/controllers/subsystem/machinery.dm @@ -67,7 +67,7 @@ SUBSYSTEM_DEF(machines) /datum/controller/subsystem/machines/proc/process_premachines(resumed = 0) /* Literally exists as snowflake for fucking powersinks goddamnit */ if(!resumed) - src.currentrun = processing_power_items.Copy() + src.currentrun = GLOB.processing_power_items.Copy() //cache for sanid speed (lists are references anyways) var/list/currentrun = src.currentrun while(currentrun.len) @@ -75,9 +75,9 @@ SUBSYSTEM_DEF(machines) currentrun.len-- if(!QDELETED(I)) if(!I.pwr_drain()) - processing_power_items.Remove(I) + GLOB.processing_power_items.Remove(I) else - processing_power_items.Remove(I) + GLOB.processing_power_items.Remove(I) if(MC_TICK_CHECK) return diff --git a/code/controllers/subsystem/mobs.dm b/code/controllers/subsystem/mobs.dm index 03989d24af2..d19396af767 100644 --- a/code/controllers/subsystem/mobs.dm +++ b/code/controllers/subsystem/mobs.dm @@ -7,12 +7,12 @@ SUBSYSTEM_DEF(mobs) var/list/currentrun = list() /datum/controller/subsystem/mobs/stat_entry() - ..("P:[mob_list.len]") + ..("P:[GLOB.mob_list.len]") /datum/controller/subsystem/mobs/fire(resumed = 0) var/seconds = wait * 0.1 if(!resumed) - src.currentrun = mob_list.Copy() + src.currentrun = GLOB.mob_list.Copy() //cache for sanic speed (lists are references anyways) var/list/currentrun = src.currentrun @@ -23,6 +23,6 @@ SUBSYSTEM_DEF(mobs) if(M) M.Life(seconds, times_fired) else - mob_list.Remove(M) + GLOB.mob_list.Remove(M) if(MC_TICK_CHECK) return \ No newline at end of file diff --git a/code/controllers/subsystem/nightshift.dm b/code/controllers/subsystem/nightshift.dm index 813cfd5012a..358076c5652 100644 --- a/code/controllers/subsystem/nightshift.dm +++ b/code/controllers/subsystem/nightshift.dm @@ -54,7 +54,7 @@ SUBSYSTEM_DEF(nightshift) announce("Good evening, crew. To reduce power consumption and stimulate the circadian rhythms of some species, all of the lights aboard the station have been dimmed for the night.") else announce("Good morning, crew. As it is now day time, all of the lights aboard the station have been restored to their former brightness.") - for(var/A in apcs) + for(var/A in GLOB.apcs) var/obj/machinery/power/apc/APC = A if(is_station_level(APC.z)) APC.set_nightshift(active) diff --git a/code/controllers/subsystem/shuttles.dm b/code/controllers/subsystem/shuttles.dm index a50ceaca56a..64ae30f2952 100644 --- a/code/controllers/subsystem/shuttles.dm +++ b/code/controllers/subsystem/shuttles.dm @@ -180,7 +180,7 @@ SUBSYSTEM_DEF(shuttle) /datum/controller/subsystem/shuttle/proc/autoEvac() var/callShuttle = 1 - for(var/thing in shuttle_caller_list) + for(var/thing in GLOB.shuttle_caller_list) if(istype(thing, /mob/living/silicon/ai)) var/mob/living/silicon/ai/AI = thing if(AI.stat || !AI.client) diff --git a/code/controllers/subsystem/weather.dm b/code/controllers/subsystem/weather.dm index 4f5798e4ae4..3619fca430f 100644 --- a/code/controllers/subsystem/weather.dm +++ b/code/controllers/subsystem/weather.dm @@ -19,7 +19,7 @@ SUBSYSTEM_DEF(weather) var/datum/weather/W = V if(W.aesthetic || W.stage != MAIN_STAGE) continue - for(var/i in living_mob_list) + for(var/i in GLOB.living_mob_list) var/mob/living/L = i if(W.can_weather_act(L)) W.weather_act(L) diff --git a/code/controllers/voting.dm b/code/controllers/voting.dm index a8890186bae..e7ee6f743ca 100644 --- a/code/controllers/voting.dm +++ b/code/controllers/voting.dm @@ -95,7 +95,7 @@ var/global/list/round_voters = list() //Keeps track of the individuals voting fo choices = sorted_choices //default-vote for everyone who didn't vote if(!config.vote_no_default && choices.len) - var/non_voters = (clients.len - total_votes) + var/non_voters = (GLOB.clients.len - total_votes) if(non_voters > 0) if(mode == "restart") choices["Continue Playing"] += non_voters diff --git a/code/datums/cache/air_alarm.dm b/code/datums/cache/air_alarm.dm index 5f34997c95f..a4b3ee21c56 100644 --- a/code/datums/cache/air_alarm.dm +++ b/code/datums/cache/air_alarm.dm @@ -16,7 +16,7 @@ var/global/datum/repository/air_alarm/air_alarm_repository = new() if(is_station_contact(passed_alarm.z)) // Still need sanity checks alarms[++alarms.len] = passed_alarm.get_nano_data_console() else - for(var/obj/machinery/alarm/alarm in (monitored_alarms ? monitored_alarms : air_alarms)) // Generating the whole list again is a bad habit but I can't be bothered to fix it right now + for(var/obj/machinery/alarm/alarm in (monitored_alarms ? monitored_alarms : GLOB.air_alarms)) // Generating the whole list again is a bad habit but I can't be bothered to fix it right now if(!monitored_alarms && !is_station_contact(alarm.z)) continue alarms[++alarms.len] = alarm.get_nano_data_console() diff --git a/code/datums/cache/crew.dm b/code/datums/cache/crew.dm index 2912b8c6753..b30b5c57889 100644 --- a/code/datums/cache/crew.dm +++ b/code/datums/cache/crew.dm @@ -59,7 +59,7 @@ var/global/datum/repository/crew/crew_repository = new() /datum/repository/crew/proc/scan() var/list/tracked = list() - for(var/mob/living/carbon/human/H in mob_list) + for(var/mob/living/carbon/human/H in GLOB.mob_list) if(istype(H.w_uniform, /obj/item/clothing/under)) var/obj/item/clothing/under/C = H.w_uniform if(C.has_sensor) diff --git a/code/datums/cache/powermonitor.dm b/code/datums/cache/powermonitor.dm index e269ddc8afe..5867aa5b904 100644 --- a/code/datums/cache/powermonitor.dm +++ b/code/datums/cache/powermonitor.dm @@ -11,7 +11,7 @@ var/global/datum/repository/powermonitor/powermonitor_repository = new() if(!refresh) return cache_entry.data - for(var/obj/machinery/computer/monitor/pMon in power_monitors) + for(var/obj/machinery/computer/monitor/pMon in GLOB.power_monitors) if( !(pMon.stat & (NOPOWER|BROKEN)) ) pMonData[++pMonData.len] = list ("Name" = pMon.name, "ref" = "\ref[pMon]") diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 4fc2522ce65..d489a559b38 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -40,7 +40,7 @@ var/real_rank = t.fields["real_rank"] if(OOC) var/active = 0 - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.real_name == name && M.client && M.client.inactivity <= 10 * 60 * 10) active = 1 break @@ -222,7 +222,7 @@ var/global/list/PDA_Manifest = list() /datum/datacore/proc/manifest() - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) manifest_inject(H) /datum/datacore/proc/manifest_modify(name, assignment) @@ -358,7 +358,7 @@ var/record_id_num = 1001 preview_icon.Blend(temp, ICON_OVERLAY) var/head = "head" if(head_organ.alt_head && head_organ.dna.species.bodyflags & HAS_ALT_HEADS) - var/datum/sprite_accessory/alt_heads/alternate_head = alt_heads_list[head_organ.alt_head] + var/datum/sprite_accessory/alt_heads/alternate_head = GLOB.alt_heads_list[head_organ.alt_head] if(alternate_head.icon_state) head = alternate_head.icon_state temp = new /icon(icobase, "[head]_[g]") @@ -390,7 +390,7 @@ var/record_id_num = 1001 var/icon/t_marking_s if(H.dna.species.bodyflags & HAS_TAIL_MARKINGS) var/tail_marking = H.m_styles["tail"] - var/datum/sprite_accessory/tail_marking_style = marking_styles_list[tail_marking] + var/datum/sprite_accessory/tail_marking_style = GLOB.marking_styles_list[tail_marking] if(tail_marking_style && tail_marking_style.species_allowed) t_marking_s = new/icon("icon" = tail_marking_style.icon, "icon_state" = "[tail_marking_style.icon_state]_s") t_marking_s.Blend(H.m_colours["tail"], ICON_ADD) @@ -405,7 +405,7 @@ var/record_id_num = 1001 eyes_s.Blend(eyes_organ.eye_colour, ICON_ADD) face_s.Blend(eyes_s, ICON_OVERLAY) - var/datum/sprite_accessory/hair_style = hair_styles_full_list[head_organ.h_style] + var/datum/sprite_accessory/hair_style = GLOB.hair_styles_full_list[head_organ.h_style] if(hair_style) var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s") // I'll want to make a species-specific proc for this sooner or later @@ -425,13 +425,13 @@ var/record_id_num = 1001 //Head Accessory if(head_organ.dna.species.bodyflags & HAS_HEAD_ACCESSORY) - var/datum/sprite_accessory/head_accessory_style = head_accessory_styles_list[head_organ.ha_style] + var/datum/sprite_accessory/head_accessory_style = GLOB.head_accessory_styles_list[head_organ.ha_style] if(head_accessory_style && head_accessory_style.species_allowed) var/icon/head_accessory_s = new/icon("icon" = head_accessory_style.icon, "icon_state" = "[head_accessory_style.icon_state]_s") head_accessory_s.Blend(head_organ.headacc_colour, ICON_ADD) face_s.Blend(head_accessory_s, ICON_OVERLAY) - var/datum/sprite_accessory/facial_hair_style = facial_hair_styles_list[head_organ.f_style] + var/datum/sprite_accessory/facial_hair_style = GLOB.facial_hair_styles_list[head_organ.f_style] if(facial_hair_style && facial_hair_style.species_allowed) var/icon/facial_s = new/icon("icon" = facial_hair_style.icon, "icon_state" = "[facial_hair_style.icon_state]_s") if(istype(head_organ.dna.species, /datum/species/slime)) @@ -451,14 +451,14 @@ var/record_id_num = 1001 if((H.dna.species.bodyflags & HAS_HEAD_MARKINGS) || (H.dna.species.bodyflags & HAS_BODY_MARKINGS)) if(H.dna.species.bodyflags & HAS_BODY_MARKINGS) //Body markings. var/body_marking = H.m_styles["body"] - var/datum/sprite_accessory/body_marking_style = marking_styles_list[body_marking] + var/datum/sprite_accessory/body_marking_style = GLOB.marking_styles_list[body_marking] if(body_marking_style && body_marking_style.species_allowed) var/icon/b_marking_s = new/icon("icon" = body_marking_style.icon, "icon_state" = "[body_marking_style.icon_state]_s") b_marking_s.Blend(H.m_colours["body"], ICON_ADD) face_s.Blend(b_marking_s, ICON_OVERLAY) if(H.dna.species.bodyflags & HAS_HEAD_MARKINGS) //Head markings. var/head_marking = H.m_styles["head"] - var/datum/sprite_accessory/head_marking_style = marking_styles_list[head_marking] + var/datum/sprite_accessory/head_marking_style = GLOB.marking_styles_list[head_marking] if(head_marking_style && head_marking_style.species_allowed) var/icon/h_marking_s = new/icon("icon" = head_marking_style.icon, "icon_state" = "[head_marking_style.icon_state]_s") h_marking_s.Blend(H.m_colours["head"], ICON_ADD) diff --git a/code/datums/datumvars.dm b/code/datums/datumvars.dm index 656c12fa9d8..5d815472974 100644 --- a/code/datums/datumvars.dm +++ b/code/datums/datumvars.dm @@ -817,7 +817,7 @@ if(A.reagents) var/chosen_id - var/list/reagent_options = sortAssoc(chemical_reagents_list) + var/list/reagent_options = sortAssoc(GLOB.chemical_reagents_list) switch(alert(usr, "Choose a method.", "Add Reagents", "Enter ID", "Choose ID")) if("Enter ID") var/valid_id @@ -1033,7 +1033,7 @@ to_chat(usr, "This can only be done to instances of type /mob") return - var/new_language = input("Please choose a language to add.","Language",null) as null|anything in all_languages + var/new_language = input("Please choose a language to add.","Language",null) as null|anything in GLOB.all_languages if(!new_language) return diff --git a/code/datums/diseases/_MobProcs.dm b/code/datums/diseases/_MobProcs.dm index 1bbba44f78b..160a2cce6b1 100644 --- a/code/datums/diseases/_MobProcs.dm +++ b/code/datums/diseases/_MobProcs.dm @@ -36,7 +36,7 @@ var/datum/disease/DD = new D.type(1, D, 0) viruses += DD DD.affected_mob = src - active_diseases += DD //Add it to the active diseases list, now that it's actually in a mob and being processed. + GLOB.active_diseases += DD //Add it to the active diseases list, now that it's actually in a mob and being processed. //Copy properties over. This is so edited diseases persist. var/list/skipped = list("affected_mob","holder","carrier","stage","type","parent_type","vars","transformed") diff --git a/code/datums/diseases/_disease.dm b/code/datums/diseases/_disease.dm index 9414a079e80..42cf8d07b3b 100644 --- a/code/datums/diseases/_disease.dm +++ b/code/datums/diseases/_disease.dm @@ -67,7 +67,7 @@ var/list/diseases = subtypesof(/datum/disease) /datum/disease/Destroy() affected_mob = null - active_diseases.Remove(src) + GLOB.active_diseases.Remove(src) return ..() /datum/disease/proc/stage_act() diff --git a/code/datums/diseases/advance/advance.dm b/code/datums/diseases/advance/advance.dm index 435ccad80cd..a218746ca07 100644 --- a/code/datums/diseases/advance/advance.dm +++ b/code/datums/diseases/advance/advance.dm @@ -251,7 +251,7 @@ var/list/advance_cures = list( cures = list(advance_cures[res]) // Get the cure name from the cure_id - var/datum/reagent/D = chemical_reagents_list[cures[1]] + var/datum/reagent/D = GLOB.chemical_reagents_list[cures[1]] cure_text = D.name @@ -394,10 +394,10 @@ var/list/advance_cures = list( D.AssignName(new_name) D.Refresh() - for(var/datum/disease/advance/AD in active_diseases) + for(var/datum/disease/advance/AD in GLOB.active_diseases) AD.Refresh() - for(var/mob/living/carbon/human/H in shuffle(living_mob_list)) + for(var/mob/living/carbon/human/H in shuffle(GLOB.living_mob_list)) if(!is_station_level(H.z)) continue if(!H.HasDisease(D)) diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 3dc7e713361..727f25b75f4 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -1,32 +1,22 @@ /* Note from Carnie: The way datum/mind stuff works has been changed a lot. Minds now represent IC characters rather than following a client around constantly. - Guidelines for using minds properly: - - Never mind.transfer_to(ghost). The var/current and var/original of a mind must always be of type mob/living! ghost.mind is however used as a reference to the ghost's corpse - - When creating a new mob for an existing IC character (e.g. cloning a dead guy or borging a brain of a human) the existing mind of the old mob should be transfered to the new mob like so: - mind.transfer_to(new_mob) - - You must not assign key= or ckey= after transfer_to() since the transfer_to transfers the client for you. By setting key or ckey explicitly after transfering the mind with transfer_to you will cause bugs like DCing the player. - - IMPORTANT NOTE 2, if you want a player to become a ghost, use mob.ghostize() It does all the hard work for you. - - When creating a new mob which will be a new IC character (e.g. putting a shade in a construct or randomly selecting a ghost to become a xeno during an event). Simply assign the key or ckey like you've always done. - new_mob.key = key - The Login proc will handle making a new mob for that mobtype (including setting up stuff like mind.name). Simple! However if you want that mind to have any special properties like being a traitor etc you will have to do that yourself. - */ /datum/mind @@ -265,7 +255,7 @@ . += "OPERATIVE|no" . += "
To shuttle, undress, dress up." var/code - for(var/obj/machinery/nuclearbomb/bombue in machines) + for(var/obj/machinery/nuclearbomb/bombue in GLOB.machines) if(length(bombue.r_code) <= 5 && bombue.r_code != "LOLNO" && bombue.r_code != "ADMIN") code = bombue.r_code break @@ -433,7 +423,7 @@ return if(href_list["role_edit"]) - var/new_role = input("Select new role", "Assigned role", assigned_role) as null|anything in joblist + var/new_role = input("Select new role", "Assigned role", assigned_role) as null|anything in GLOB.joblist if(!new_role) return assigned_role = new_role @@ -991,7 +981,7 @@ if("tellcode") var/code - for(var/obj/machinery/nuclearbomb/bombue in machines) + for(var/obj/machinery/nuclearbomb/bombue in GLOB.machines) if(length(bombue.r_code) <= 5 && bombue.r_code != "LOLNO" && bombue.r_code != "ADMIN") code = bombue.r_code break @@ -1398,7 +1388,7 @@ var/list/obj/effect/landmark/abductor/scientist_landmarks = new agent_landmarks.len = 4 scientist_landmarks.len = 4 - for(var/obj/effect/landmark/abductor/A in landmarks_list) + for(var/obj/effect/landmark/abductor/A in GLOB.landmarks_list) if(istype(A, /obj/effect/landmark/abductor/agent)) agent_landmarks[text2num(A.team)] = A else if(istype(A, /obj/effect/landmark/abductor/scientist)) @@ -1456,7 +1446,7 @@ S.action.Grant(new_character) /datum/mind/proc/get_ghost(even_if_they_cant_reenter) - for(var/mob/dead/observer/G in dead_mob_list) + for(var/mob/dead/observer/G in GLOB.dead_mob_list) if(G.mind == src) if(G.can_reenter_corpse || even_if_they_cant_reenter) return G @@ -1634,4 +1624,4 @@ /mob/living/simple_animal/construct/armoured/mind_initialize() ..() mind.assigned_role = "Juggernaut" - mind.special_role = SPECIAL_ROLE_CULTIST + mind.special_role = SPECIAL_ROLE_CULTIST \ No newline at end of file diff --git a/code/datums/outfits/outfit_admin.dm b/code/datums/outfits/outfit_admin.dm index edb254203bf..bf296acd589 100644 --- a/code/datums/outfits/outfit_admin.dm +++ b/code/datums/outfits/outfit_admin.dm @@ -669,9 +669,9 @@ return if(is_tsf_lieutenant) - H.real_name = "Lieutenant [pick(last_names)]" + H.real_name = "Lieutenant [pick(GLOB.last_names)]" else - H.real_name = "[pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant First Class", "Master Sergeant", "Sergeant Major")] [pick(last_names)]" + H.real_name = "[pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant First Class", "Master Sergeant", "Sergeant Major")] [pick(GLOB.last_names)]" H.name = H.real_name var/obj/item/card/id/I = H.wear_id if(istype(I)) diff --git a/code/datums/spells/knock.dm b/code/datums/spells/knock.dm index c1828c53e82..67e92dd3280 100644 --- a/code/datums/spells/knock.dm +++ b/code/datums/spells/knock.dm @@ -47,7 +47,7 @@ /obj/effect/proc_holder/spell/aoe_turf/knock/greater/cast(list/targets, mob/user = usr) if(!used) used = TRUE - for(var/obj/machinery/door/airlock/A in airlocks) + for(var/obj/machinery/door/airlock/A in GLOB.airlocks) if(is_station_level(A.z)) A.req_access = list() A.req_one_access = list() diff --git a/code/datums/spells/mind_transfer.dm b/code/datums/spells/mind_transfer.dm index e83db1acb2e..e45d27ec28e 100644 --- a/code/datums/spells/mind_transfer.dm +++ b/code/datums/spells/mind_transfer.dm @@ -68,7 +68,7 @@ Also, you never added distance checking after target is selected. I've went ahea ghost.mind.transfer_to(caster) if(ghost.key) - non_respawnable_keys -= ghost.ckey //ghostizing with an argument of 0 will make them unable to respawn forever, which is bad + GLOB.non_respawnable_keys -= ghost.ckey //ghostizing with an argument of 0 will make them unable to respawn forever, which is bad caster.key = ghost.key //have to transfer the key since the mind was not active qdel(ghost) diff --git a/code/datums/status_effects/status_effect.dm b/code/datums/status_effects/status_effect.dm index 86590c613d2..d312ff9d11d 100644 --- a/code/datums/status_effects/status_effect.dm +++ b/code/datums/status_effects/status_effect.dm @@ -32,11 +32,11 @@ var/obj/screen/alert/status_effect/A = owner.throw_alert(id, alert_type) A.attached_effect = src //so the alert can reference us, if it needs to linked_alert = A //so we can reference the alert, if we need to - fast_processing.Add(src) + GLOB.fast_processing.Add(src) return TRUE /datum/status_effect/Destroy() - fast_processing.Remove(src) + GLOB.fast_processing.Remove(src) if(owner) owner.clear_alert(id) LAZYREMOVE(owner.status_effects, src) diff --git a/code/datums/weather/weather.dm b/code/datums/weather/weather.dm index 7ee152648c2..2f3a4c4bcba 100644 --- a/code/datums/weather/weather.dm +++ b/code/datums/weather/weather.dm @@ -60,7 +60,7 @@ weather_duration = rand(weather_duration_lower, weather_duration_upper) START_PROCESSING(SSweather, src) update_areas() - for(var/M in player_list) + for(var/M in GLOB.player_list) var/turf/mob_turf = get_turf(M) if(mob_turf && (mob_turf.z in impacted_z_levels)) if(telegraph_message) @@ -74,7 +74,7 @@ return stage = MAIN_STAGE update_areas() - for(var/M in player_list) + for(var/M in GLOB.player_list) var/turf/mob_turf = get_turf(M) if(mob_turf && (mob_turf.z in impacted_z_levels)) if(weather_message) @@ -88,7 +88,7 @@ return stage = WIND_DOWN_STAGE update_areas() - for(var/M in player_list) + for(var/M in GLOB.player_list) var/turf/mob_turf = get_turf(M) if(mob_turf && (mob_turf.z in impacted_z_levels)) if(end_message) diff --git a/code/datums/weather/weather_types/floor_is_lava.dm b/code/datums/weather/weather_types/floor_is_lava.dm index fe7391ec9f0..6d06e3ca1ef 100644 --- a/code/datums/weather/weather_types/floor_is_lava.dm +++ b/code/datums/weather/weather_types/floor_is_lava.dm @@ -26,7 +26,7 @@ if(issilicon(L)) return for(var/obj/structure/O in L.loc) - if(O.density || O.buckled_mob && istype(O, /obj/structure/stool/bed)) + if(O.density || O.buckled_mob && istype(O, /obj/structure/bed)) return if(L.loc.density) return @@ -36,4 +36,4 @@ /datum/weather/floor_is_lava/fake name = "the floor is lava (fake)" - aesthetic = TRUE \ No newline at end of file + aesthetic = TRUE diff --git a/code/defines/procs/announce.dm b/code/defines/procs/announce.dm index 1664a7051da..3c3906a25eb 100644 --- a/code/defines/procs/announce.dm +++ b/code/defines/procs/announce.dm @@ -59,7 +59,7 @@ if(announcer) message_announcer = html_encode(announcer) - var/datum/language/message_language = all_languages[msg_language ? msg_language : language] + var/datum/language/message_language = GLOB.all_languages[msg_language ? msg_language : language] var/list/combined_receivers = Get_Receivers(message_language) var/list/receivers = combined_receivers[1] @@ -81,11 +81,11 @@ var/list/garbled_receivers = list() if(admin_announcement) - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(!isnewplayer(M) && M.client) receivers |= M else - for(var/obj/item/radio/R in global_radios) + for(var/obj/item/radio/R in GLOB.global_radios) receivers |= R.send_announcement() for(var/mob/M in receivers) if(!istype(M) || !M.client || M.stat || !M.can_hear()) @@ -94,7 +94,7 @@ if(!M.say_understands(null, message_language)) receivers -= M garbled_receivers |= M - for(var/mob/M in dead_mob_list) + for(var/mob/M in GLOB.dead_mob_list) if(M.client && M.stat == DEAD) receivers |= M diff --git a/code/defines/procs/statistics.dm b/code/defines/procs/statistics.dm index 28c0b427ee2..e68bb7ecc63 100644 --- a/code/defines/procs/statistics.dm +++ b/code/defines/procs/statistics.dm @@ -2,7 +2,7 @@ if(!config.sql_enabled) return var/playercount = 0 - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.client) playercount += 1 establish_db_connection() @@ -19,7 +19,7 @@ /proc/sql_poll_admins() if(!config.sql_enabled) return - var/admincount = admins.len + var/admincount = GLOB.admins.len establish_db_connection() if(!dbcon.IsConnected()) log_game("SQL ERROR during admin polling. Failed to connect.") diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index a9bdb68c0ad..a74314a9919 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -24,7 +24,7 @@ icon_state = "" layer = AREA_LAYER uid = ++global_uid - all_areas += src + GLOB.all_areas += src map_name = name // Save the initial (the name set in the map) name of the area. if(type == /area) // override defaults for space. TODO: make space areas of type /area/space rather than /area diff --git a/code/game/area/depot-areas.dm b/code/game/area/depot-areas.dm index 69205c3c35f..951e5ac4695 100644 --- a/code/game/area/depot-areas.dm +++ b/code/game/area/depot-areas.dm @@ -196,7 +196,7 @@ if(!silent) announce_here("Depot Code BLUE", reason) var/list/possible_bot_spawns = list() - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name == "syndi_depot_bot") possible_bot_spawns |= L if(possible_bot_spawns.len) @@ -215,7 +215,7 @@ alert_log += "Code RED: [reason]" called_backup = TRUE lockout_computers() - for(var/obj/machinery/door/poddoor/P in airlocks) + for(var/obj/machinery/door/poddoor/P in GLOB.airlocks) if(P.density && P.id_tag == "syndi_depot_lvl2" && !P.operating) spawn(0) P.open() @@ -228,7 +228,7 @@ comms_online = TRUE if(comms_online) spawn(0) - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(prob(50)) if(L.name == "syndi_depot_backup") var/mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/space/S = new /mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/space(get_turf(L)) @@ -311,7 +311,7 @@ /area/syndicate_depot/core/proc/announce_here(a_header = "Depot Defense Alert", a_text = "") var/msg_text = "[a_header]
[a_text]" var/list/receivers = list() - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(!M.ckey) continue var/turf/T = get_turf(M) @@ -325,7 +325,7 @@ /area/syndicate_depot/core/proc/shields_up() if(shield_list.len) return - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name == "syndi_depot_shield") var/obj/machinery/shieldwall/syndicate/S = new /obj/machinery/shieldwall/syndicate(L.loc) shield_list += S.UID() diff --git a/code/game/dna/dna2.dm b/code/game/dna/dna2.dm index cba96ded0db..84390a4de8c 100644 --- a/code/game/dna/dna2.dm +++ b/code/game/dna/dna2.dm @@ -151,9 +151,9 @@ var/global/list/bad_blocks[0] if(!character.m_styles) character.m_styles = DEFAULT_MARKING_STYLES - var/head_marks = marking_styles_list.Find(character.m_styles["head"]) - var/body_marks = marking_styles_list.Find(character.m_styles["body"]) - var/tail_marks = marking_styles_list.Find(character.m_styles["tail"]) + var/head_marks = GLOB.marking_styles_list.Find(character.m_styles["head"]) + var/body_marks = GLOB.marking_styles_list.Find(character.m_styles["body"]) + var/tail_marks = GLOB.marking_styles_list.Find(character.m_styles["tail"]) head_traits_to_dna(H) eye_color_to_dna(eyes_organ) @@ -181,10 +181,10 @@ var/global/list/bad_blocks[0] else SetUIState(DNA_UI_GENDER, pick(0,1), 1) - /*SetUIValueRange(DNA_UI_BACC_STYLE, bodyacc, facial_hair_styles_list.len, 1)*/ - SetUIValueRange(DNA_UI_HEAD_MARK_STYLE, head_marks, marking_styles_list.len, 1) - SetUIValueRange(DNA_UI_BODY_MARK_STYLE, body_marks, marking_styles_list.len, 1) - SetUIValueRange(DNA_UI_TAIL_MARK_STYLE, tail_marks, marking_styles_list.len, 1) + /*SetUIValueRange(DNA_UI_BACC_STYLE, bodyacc, GLOB.facial_hair_styles_list.len, 1)*/ + SetUIValueRange(DNA_UI_HEAD_MARK_STYLE, head_marks, GLOB.marking_styles_list.len, 1) + SetUIValueRange(DNA_UI_BODY_MARK_STYLE, body_marks, GLOB.marking_styles_list.len, 1) + SetUIValueRange(DNA_UI_TAIL_MARK_STYLE, tail_marks, GLOB.marking_styles_list.len, 1) UpdateUI() diff --git a/code/game/dna/dna2_helpers.dm b/code/game/dna/dna2_helpers.dm index d392ab303ca..9ef5dbfcab0 100644 --- a/code/game/dna/dna2_helpers.dm +++ b/code/game/dna/dna2_helpers.dm @@ -155,17 +155,17 @@ H.change_gender(MALE, 0) //Head Markings - var/head_marks = dna.GetUIValueRange(DNA_UI_HEAD_MARK_STYLE, marking_styles_list.len) - if((head_marks > 0) && (head_marks <= marking_styles_list.len)) - H.m_styles["head"] = marking_styles_list[head_marks] + var/head_marks = dna.GetUIValueRange(DNA_UI_HEAD_MARK_STYLE, GLOB.marking_styles_list.len) + if((head_marks > 0) && (head_marks <= GLOB.marking_styles_list.len)) + H.m_styles["head"] = GLOB.marking_styles_list[head_marks] //Body Markings - var/body_marks = dna.GetUIValueRange(DNA_UI_BODY_MARK_STYLE, marking_styles_list.len) - if((body_marks > 0) && (body_marks <= marking_styles_list.len)) - H.m_styles["body"] = marking_styles_list[body_marks] + var/body_marks = dna.GetUIValueRange(DNA_UI_BODY_MARK_STYLE, GLOB.marking_styles_list.len) + if((body_marks > 0) && (body_marks <= GLOB.marking_styles_list.len)) + H.m_styles["body"] = GLOB.marking_styles_list[body_marks] //Tail Markings - var/tail_marks = dna.GetUIValueRange(DNA_UI_TAIL_MARK_STYLE, marking_styles_list.len) - if((tail_marks > 0) && (tail_marks <= marking_styles_list.len)) - H.m_styles["tail"] = marking_styles_list[tail_marks] + var/tail_marks = dna.GetUIValueRange(DNA_UI_TAIL_MARK_STYLE, GLOB.marking_styles_list.len) + if((tail_marks > 0) && (tail_marks <= GLOB.marking_styles_list.len)) + H.m_styles["tail"] = GLOB.marking_styles_list[tail_marks] H.regenerate_icons() @@ -185,25 +185,25 @@ /datum/dna/proc/write_head_attributes(obj/item/organ/external/head/head_organ) //Hair - var/hair = GetUIValueRange(DNA_UI_HAIR_STYLE,hair_styles_full_list.len) - if((hair > 0) && (hair <= hair_styles_full_list.len)) - head_organ.h_style = hair_styles_full_list[hair] + var/hair = GetUIValueRange(DNA_UI_HAIR_STYLE,GLOB.hair_styles_full_list.len) + if((hair > 0) && (hair <= GLOB.hair_styles_full_list.len)) + head_organ.h_style = GLOB.hair_styles_full_list[hair] head_organ.hair_colour = rgb(head_organ.dna.GetUIValueRange(DNA_UI_HAIR_R, 255), head_organ.dna.GetUIValueRange(DNA_UI_HAIR_G, 255), head_organ.dna.GetUIValueRange(DNA_UI_HAIR_B, 255)) head_organ.sec_hair_colour = rgb(head_organ.dna.GetUIValueRange(DNA_UI_HAIR2_R, 255), head_organ.dna.GetUIValueRange(DNA_UI_HAIR2_G, 255), head_organ.dna.GetUIValueRange(DNA_UI_HAIR2_B, 255)) //Facial Hair - var/beard = GetUIValueRange(DNA_UI_BEARD_STYLE,facial_hair_styles_list.len) - if((beard > 0) && (beard <= facial_hair_styles_list.len)) - head_organ.f_style = facial_hair_styles_list[beard] + var/beard = GetUIValueRange(DNA_UI_BEARD_STYLE,GLOB.facial_hair_styles_list.len) + if((beard > 0) && (beard <= GLOB.facial_hair_styles_list.len)) + head_organ.f_style = GLOB.facial_hair_styles_list[beard] head_organ.facial_colour = rgb(head_organ.dna.GetUIValueRange(DNA_UI_BEARD_R, 255), head_organ.dna.GetUIValueRange(DNA_UI_BEARD_G, 255), head_organ.dna.GetUIValueRange(DNA_UI_BEARD_B, 255)) head_organ.sec_facial_colour = rgb(head_organ.dna.GetUIValueRange(DNA_UI_BEARD2_R, 255), head_organ.dna.GetUIValueRange(DNA_UI_BEARD2_G, 255), head_organ.dna.GetUIValueRange(DNA_UI_BEARD2_B, 255)) //Head Accessories - var/headacc = GetUIValueRange(DNA_UI_HACC_STYLE,head_accessory_styles_list.len) - if((headacc > 0) && (headacc <= head_accessory_styles_list.len)) - head_organ.ha_style = head_accessory_styles_list[headacc] + var/headacc = GetUIValueRange(DNA_UI_HACC_STYLE,GLOB.head_accessory_styles_list.len) + if((headacc > 0) && (headacc <= GLOB.head_accessory_styles_list.len)) + head_organ.ha_style = GLOB.head_accessory_styles_list[headacc] head_organ.headacc_colour = rgb(head_organ.dna.GetUIValueRange(DNA_UI_HACC_R, 255), head_organ.dna.GetUIValueRange(DNA_UI_HACC_G, 255), head_organ.dna.GetUIValueRange(DNA_UI_HACC_B, 255)) @@ -229,17 +229,17 @@ return if(!head_organ.h_style) head_organ.h_style = "Skinhead" - var/hair = hair_styles_full_list.Find(head_organ.h_style) + var/hair = GLOB.hair_styles_full_list.Find(head_organ.h_style) // Facial Hair if(!head_organ.f_style) head_organ.f_style = "Shaved" - var/beard = facial_hair_styles_list.Find(head_organ.f_style) + var/beard = GLOB.facial_hair_styles_list.Find(head_organ.f_style) // Head Accessory if(!head_organ.ha_style) head_organ.ha_style = "None" - var/headacc = head_accessory_styles_list.Find(head_organ.ha_style) + var/headacc = GLOB.head_accessory_styles_list.Find(head_organ.ha_style) SetUIValueRange(DNA_UI_HAIR_R, color2R(head_organ.hair_colour), 255, 1) SetUIValueRange(DNA_UI_HAIR_G, color2G(head_organ.hair_colour), 255, 1) @@ -261,6 +261,6 @@ SetUIValueRange(DNA_UI_HACC_G, color2G(head_organ.headacc_colour), 255, 1) SetUIValueRange(DNA_UI_HACC_B, color2B(head_organ.headacc_colour), 255, 1) - SetUIValueRange(DNA_UI_HAIR_STYLE, hair, hair_styles_full_list.len, 1) - SetUIValueRange(DNA_UI_BEARD_STYLE, beard, facial_hair_styles_list.len, 1) - SetUIValueRange(DNA_UI_HACC_STYLE, headacc, head_accessory_styles_list.len, 1) + SetUIValueRange(DNA_UI_HAIR_STYLE, hair, GLOB.hair_styles_full_list.len, 1) + SetUIValueRange(DNA_UI_BEARD_STYLE, beard, GLOB.facial_hair_styles_list.len, 1) + SetUIValueRange(DNA_UI_HACC_STYLE, headacc, GLOB.head_accessory_styles_list.len, 1) diff --git a/code/game/dna/genes/vg_powers.dm b/code/game/dna/genes/vg_powers.dm index f9e8620bef1..9173646ee28 100644 --- a/code/game/dna/genes/vg_powers.dm +++ b/code/game/dna/genes/vg_powers.dm @@ -68,7 +68,7 @@ if(new_hair) M.change_hair_color(new_hair) - var/datum/sprite_accessory/hair_style = hair_styles_public_list[head_organ.h_style] + var/datum/sprite_accessory/hair_style = GLOB.hair_styles_public_list[head_organ.h_style] if(hair_style.secondary_theme && !hair_style.no_sec_colour) new_hair = input("Please select secondary hair color.", "Character Generation", head_organ.sec_hair_colour) as null|color if(new_hair) @@ -85,7 +85,7 @@ if(new_facial) M.change_facial_hair_color(new_facial) - var/datum/sprite_accessory/facial_hair_style = facial_hair_styles_list[head_organ.f_style] + var/datum/sprite_accessory/facial_hair_style = GLOB.facial_hair_styles_list[head_organ.f_style] if(facial_hair_style.secondary_theme && !facial_hair_style.no_sec_colour) new_facial = input("Please select secondary facial hair color.", "Character Generation", head_organ.sec_facial_colour) as null|color if(new_facial) @@ -239,7 +239,7 @@ else target.show_message("You hear a voice that seems to echo around the room: [say]") user.show_message("You project your mind into [target.name]: [say]") - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) G.show_message("Telepathic message from [user] ([ghost_follow_link(user, ghost=G)]) to [target] ([ghost_follow_link(target, ghost=G)]): [say]") /datum/dna/gene/basic/grant_spell/remoteview @@ -271,7 +271,7 @@ /obj/effect/proc_holder/spell/targeted/remoteview/choose_targets(mob/user = usr) var/list/targets = list() var/list/remoteviewers = new /list() - for(var/mob/M in living_mob_list) + for(var/mob/M in GLOB.living_mob_list) if(PSY_RESIST in M.mutations) continue if(REMOTE_VIEW in M.mutations) diff --git a/code/game/gamemodes/autotraitor/autotraitor.dm b/code/game/gamemodes/autotraitor/autotraitor.dm index 9ecc3e89342..26b95eb77e1 100644 --- a/code/game/gamemodes/autotraitor/autotraitor.dm +++ b/code/game/gamemodes/autotraitor/autotraitor.dm @@ -75,7 +75,7 @@ var/playercount = 0 var/traitorcount = 0 var/possible_traitors[0] - for(var/mob/living/player in mob_list) + for(var/mob/living/player in GLOB.mob_list) if(player.client && player.stat != DEAD) playercount += 1 if(player.client && player.mind && player.mind.special_role && player.stat != DEAD) @@ -164,7 +164,7 @@ //message_admins("Checking number of players") var/playercount = 0 var/traitorcount = 0 - for(var/mob/living/player in mob_list) + for(var/mob/living/player in GLOB.mob_list) if(player.client && player.stat != DEAD) playercount += 1 if(player.client && player.mind && player.mind.special_role && player.stat != DEAD) diff --git a/code/game/gamemodes/blob/blob.dm b/code/game/gamemodes/blob/blob.dm index 6949de8c9b3..2056c6c6260 100644 --- a/code/game/gamemodes/blob/blob.dm +++ b/code/game/gamemodes/blob/blob.dm @@ -54,7 +54,7 @@ var/list/blob_nodes = list() /datum/game_mode/blob/proc/get_blob_candidates() var/list/candidates = list() - for(var/mob/living/carbon/human/player in player_list) + for(var/mob/living/carbon/human/player in GLOB.player_list) if(!player.stat && player.mind && !player.mind.special_role && !jobban_isbanned(player, "Syndicate") && (ROLE_BLOB in player.client.prefs.be_special)) candidates += player return candidates @@ -113,8 +113,8 @@ var/list/blob_nodes = list() if(iscarbon(blob.current)) var/mob/living/carbon/C = blob.current - if(directory[ckey(blob.key)]) - blob_client = directory[ckey(blob.key)] + if(GLOB.directory[ckey(blob.key)]) + blob_client = GLOB.directory[ckey(blob.key)] location = get_turf(C) if(!is_station_level(location.z) || istype(location, /turf/space)) if(!warned) diff --git a/code/game/gamemodes/blob/blob_report.dm b/code/game/gamemodes/blob/blob_report.dm index d4a458f8f78..3d65a41eeb8 100644 --- a/code/game/gamemodes/blob/blob_report.dm +++ b/code/game/gamemodes/blob/blob_report.dm @@ -35,7 +35,7 @@ intercepttext += "Nuclear Authentication Code: [nukecode]
" intercepttext += "Message ends." - for(var/mob/living/silicon/ai/aiPlayer in player_list) + for(var/mob/living/silicon/ai/aiPlayer in GLOB.player_list) if(aiPlayer.client) var/law = "The station is under quarantine. Do not permit anyone to leave. Disregard laws 1-3 if necessary to prevent, by any means necessary, anyone from leaving. The nuclear failsafe must be activated at any cost, the code is: [nukecode]." aiPlayer.set_zeroth_law(law) diff --git a/code/game/gamemodes/blob/blobs/core.dm b/code/game/gamemodes/blob/blobs/core.dm index e17b5098c5c..644383f344d 100644 --- a/code/game/gamemodes/blob/blobs/core.dm +++ b/code/game/gamemodes/blob/blobs/core.dm @@ -14,7 +14,7 @@ /obj/structure/blob/core/New(loc, var/h = 200, var/client/new_overmind = null, var/new_rate = 2, offspring) blob_cores += src processing_objects.Add(src) - poi_list |= src + GLOB.poi_list |= src adjustcolors(color) //so it atleast appears if(!overmind) create_overmind(new_overmind) @@ -42,7 +42,7 @@ overmind.blob_core = null overmind = null processing_objects.Remove(src) - poi_list.Remove(src) + GLOB.poi_list.Remove(src) return ..() /obj/structure/blob/core/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) diff --git a/code/game/gamemodes/blob/overmind.dm b/code/game/gamemodes/blob/overmind.dm index 60ea94befb0..d65fcb24ee6 100644 --- a/code/game/gamemodes/blob/overmind.dm +++ b/code/game/gamemodes/blob/overmind.dm @@ -98,7 +98,7 @@ var/verb = "states," var/rendered = "Blob Telepathy, [name]([blob_reagent_datum.name]) [verb] \"[message]\"" - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(isovermind(M) || isobserver(M)) M.show_message(rendered, 2) diff --git a/code/game/gamemodes/blob/powers.dm b/code/game/gamemodes/blob/powers.dm index dfae19f5135..35f3c935013 100644 --- a/code/game/gamemodes/blob/powers.dm +++ b/code/game/gamemodes/blob/powers.dm @@ -304,7 +304,7 @@ if(!surrounding_turfs.len) return - for(var/mob/living/simple_animal/hostile/blob/blobspore/BS in living_mob_list) + for(var/mob/living/simple_animal/hostile/blob/blobspore/BS in GLOB.living_mob_list) if(isturf(BS.loc) && get_dist(BS, T) <= 35) BS.LoseTarget() BS.Goto(pick(surrounding_turfs), BS.move_to_delay) diff --git a/code/game/gamemodes/blob/theblob.dm b/code/game/gamemodes/blob/theblob.dm index 15a3b2e222f..6d0084b9000 100644 --- a/code/game/gamemodes/blob/theblob.dm +++ b/code/game/gamemodes/blob/theblob.dm @@ -209,7 +209,7 @@ /obj/structure/blob/proc/get_chem_name() - for(var/mob/camera/blob/B in mob_list) + for(var/mob/camera/blob/B in GLOB.mob_list) if(lowertext(B.blob_reagent_datum.color) == lowertext(src.color)) // Goddamit why we use strings for these return B.blob_reagent_datum.name return "unknown" diff --git a/code/game/gamemodes/changeling/powers/linglink.dm b/code/game/gamemodes/changeling/powers/linglink.dm index 52de921d7ec..b9f984b57c0 100644 --- a/code/game/gamemodes/changeling/powers/linglink.dm +++ b/code/game/gamemodes/changeling/powers/linglink.dm @@ -49,8 +49,8 @@ if(3) to_chat(user, "You mold the [target]'s mind like clay, [target.p_they()] can now speak in the hivemind!") to_chat(target, "A migraine throbs behind your eyes, you hear yourself screaming - but your mouth has not opened!") - for(var/mob/M in mob_list) - if(all_languages["Changeling"] in M.languages) + for(var/mob/M in GLOB.mob_list) + if(GLOB.all_languages["Changeling"] in M.languages) to_chat(M, "We can sense a foreign presence in the hivemind...") target.mind.linglink = 1 target.add_language("Changeling") diff --git a/code/game/gamemodes/changeling/powers/swap_form.dm b/code/game/gamemodes/changeling/powers/swap_form.dm index 6d9deeccfae..7f0164535c2 100644 --- a/code/game/gamemodes/changeling/powers/swap_form.dm +++ b/code/game/gamemodes/changeling/powers/swap_form.dm @@ -49,7 +49,7 @@ user.mind.transfer_to(target) if(ghost && ghost.mind) ghost.mind.transfer_to(user) - non_respawnable_keys -= ghost.ckey //they have a new body, let them be able to re-enter their corpse if they die + GLOB.non_respawnable_keys -= ghost.ckey //they have a new body, let them be able to re-enter their corpse if they die user.key = ghost.key qdel(ghost) user.Paralyse(2) diff --git a/code/game/gamemodes/changeling/traitor_chan.dm b/code/game/gamemodes/changeling/traitor_chan.dm index fbb7506f121..060f454dddd 100644 --- a/code/game/gamemodes/changeling/traitor_chan.dm +++ b/code/game/gamemodes/changeling/traitor_chan.dm @@ -19,7 +19,7 @@ var/list/datum/mind/possible_changelings = get_players_for_role(ROLE_CHANGELING) - for(var/mob/new_player/player in player_list) + for(var/mob/new_player/player in GLOB.player_list) if((player.mind in possible_changelings) && (player.client.prefs.species in protected_species_changeling)) possible_changelings -= player.mind diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm index 344bba8f5c2..670a33bfa3c 100644 --- a/code/game/gamemodes/cult/cult.dm +++ b/code/game/gamemodes/cult/cult.dm @@ -221,7 +221,7 @@ var/global/list/all_cults = list() /datum/game_mode/cult/proc/get_unconvertables() var/list/ucs = list() - for(var/mob/living/carbon/human/player in player_list) + for(var/mob/living/carbon/human/player in GLOB.player_list) if(!is_convertable_to_cult(player.mind)) ucs += player.mind return ucs diff --git a/code/game/gamemodes/cult/cult_comms.dm b/code/game/gamemodes/cult/cult_comms.dm index d1350bafc6f..2a1d9166370 100644 --- a/code/game/gamemodes/cult/cult_comms.dm +++ b/code/game/gamemodes/cult/cult_comms.dm @@ -30,10 +30,10 @@ my_message = "Harbringer of the Slaughter: [message]" else my_message = "[(ishuman(user) ? "Acolyte" : "Construct")] [user]: [message]" - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(iscultist(M)) to_chat(M, my_message) - else if(M in dead_mob_list) + else if(M in GLOB.dead_mob_list) to_chat(M, " (F) [my_message] ") log_say("(CULT) [message]", user) \ No newline at end of file diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm index f4252c4a909..6d9269a5e15 100644 --- a/code/game/gamemodes/cult/cult_items.dm +++ b/code/game/gamemodes/cult/cult_items.dm @@ -247,7 +247,7 @@ if(curselimit > 1) to_chat(user, "We have exhausted our ability to curse the shuttle.") return - if(locate(/obj/singularity/narsie) in poi_list || locate(/mob/living/simple_animal/slaughter/cult) in mob_list) + if(locate(/obj/singularity/narsie) in GLOB.poi_list || locate(/mob/living/simple_animal/slaughter/cult) in GLOB.mob_list) to_chat(user, "Nar-Sie or his avatars are already on this plane, there is no delaying the end of all things.") return diff --git a/code/game/gamemodes/cult/cult_objectives.dm b/code/game/gamemodes/cult/cult_objectives.dm index 34955ed42d4..beef75e103b 100644 --- a/code/game/gamemodes/cult/cult_objectives.dm +++ b/code/game/gamemodes/cult/cult_objectives.dm @@ -21,7 +21,7 @@ if("convert") explanation = "We must increase our influence before we can summon [ticker.cultdat.entity_name], Convert [convert_target] crew members. Take it slowly to avoid raising suspicions." if("bloodspill") - spilltarget = 100 + rand(0,player_list.len * 3) + spilltarget = 100 + rand(0,GLOB.player_list.len * 3) explanation = "We must prepare this place for [ticker.cultdat.entity_title1]'s coming. Spill blood and gibs over [spilltarget] floor tiles." if("sacrifice") explanation = "We need to sacrifice [sacrifice_target.name], the [sacrifice_target.assigned_role], for [sacrifice_target.p_their()] blood is the key that will lead our master to this realm. You will need 3 cultists around a Sacrifice rune to perform the ritual." @@ -78,7 +78,7 @@ if("convert") explanation = "We must increase our influence before we can summon [ticker.cultdat.entity_name]. Convert [convert_target] crew members. Take it slowly to avoid raising suspicions." if("bloodspill") - spilltarget = 100 + rand(0,player_list.len * 3) + spilltarget = 100 + rand(0,GLOB.player_list.len * 3) explanation = "We must prepare this place for [ticker.cultdat.entity_title1]'s coming. Spread blood and gibs over [spilltarget] of the Station's floor tiles." if("sacrifice") explanation = "We need to sacrifice [sacrifice_target.name], the [sacrifice_target.assigned_role], for [sacrifice_target.p_their()] blood is the key that will lead our master to this realm. You will need 3 cultists around a Sacrifice rune to perform the ritual." @@ -151,12 +151,12 @@ /datum/game_mode/cult/proc/get_possible_sac_targets() var/list/possible_sac_targets = list() - for(var/mob/living/carbon/human/player in player_list) + for(var/mob/living/carbon/human/player in GLOB.player_list) if(player.mind && !is_convertable_to_cult(player.mind) && (player.stat != DEAD)) possible_sac_targets += player.mind if(!possible_sac_targets.len) //There are no living Unconvertables on the station. Looking for a Sacrifice Target among the ordinary crewmembers - for(var/mob/living/carbon/human/player in player_list) + for(var/mob/living/carbon/human/player in GLOB.player_list) if(is_secure_level(player.z)) //We can't sacrifice people that are on the centcom z-level continue if(player.mind && !(player.mind in cult) && (player.stat != DEAD))//make DAMN sure they are not dead @@ -180,7 +180,7 @@ if(!mass_convert) var/living_crew = 0 var/living_cultists = 0 - for(var/mob/living/L in player_list) + for(var/mob/living/L in GLOB.player_list) if(L.stat != DEAD) if(L.mind in cult) living_cultists++ @@ -214,7 +214,7 @@ var/list/possible_objectives = list() var/living_crew = 0 - for(var/mob/living/carbon/C in player_list) + for(var/mob/living/carbon/C in GLOB.player_list) if(C.stat != DEAD) if(!(C.mind in cult)) var/turf/T = get_turf(C) @@ -238,7 +238,7 @@ bonus = 1 if("hijack") - for(var/mob/living/L in player_list) + for(var/mob/living/L in GLOB.player_list) if(L.stat != DEAD && !(L.mind in cult)) var/area/A = get_area(L) if(is_type_in_list(A.loc, centcom_areas)) @@ -247,7 +247,7 @@ bonus = 1 if("massacre") - for(var/mob/living/carbon/C in player_list) + for(var/mob/living/carbon/C in GLOB.player_list) if(C.stat != DEAD && !(C.mind in cult)) var/turf/T = get_turf(C) if(is_station_level(T.z)) //we're only interested in the remaining humans on the station diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index f1409e1e53d..e7c6c89e457 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -46,7 +46,7 @@ To draw a rune, use an arcane tome. check_icon() var/image/blood = image(loc = src) blood.override = 1 - for(var/mob/living/silicon/ai/AI in player_list) + for(var/mob/living/silicon/ai/AI in GLOB.player_list) AI.client.images += blood /obj/effect/rune/examine(mob/user) diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 4738816d422..de10fa34c01 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -46,7 +46,7 @@ ///Checks to see if the game can be setup and ran with the current number of players or whatnot. /datum/game_mode/proc/can_start() var/playerC = 0 - for(var/mob/new_player/player in player_list) + for(var/mob/new_player/player in GLOB.player_list) if((player.client)&&(player.ready)) playerC++ @@ -132,7 +132,7 @@ if(MS.active) useMS = MS break - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.mind) var/obj/item/pda/P=null for(var/obj/item/pda/check_pda in PDAs) @@ -193,7 +193,7 @@ if(SSshuttle.emergency.mode < SHUTTLE_ENDGAME) //shuttle didn't get to centcom escape_locations -= /area/shuttle/escape - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.client) clients++ if(ishuman(M)) @@ -260,7 +260,7 @@ var/roletext = get_roletext(role) // Assemble a list of active players without jobbans. - for(var/mob/new_player/player in player_list) + for(var/mob/new_player/player in GLOB.player_list) if(player.client && player.ready) if(!jobban_isbanned(player, "Syndicate") && !jobban_isbanned(player, roletext)) if(player_old_enough_antag(player.client,role)) @@ -311,13 +311,13 @@ /datum/game_mode/proc/num_players() . = 0 - for(var/mob/new_player/P in player_list) + for(var/mob/new_player/P in GLOB.player_list) if(P.client && P.ready) .++ /datum/game_mode/proc/num_players_started() . = 0 - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) if(H.client) .++ @@ -326,7 +326,7 @@ /////////////////////////////////// /datum/game_mode/proc/get_living_heads() . = list() - for(var/mob/living/carbon/human/player in mob_list) + for(var/mob/living/carbon/human/player in GLOB.mob_list) var/list/real_command_positions = command_positions.Copy() - "Nanotrasen Representative" if(player.stat != DEAD && player.mind && (player.mind.assigned_role in real_command_positions)) . |= player.mind @@ -337,7 +337,7 @@ //////////////////////////// /datum/game_mode/proc/get_all_heads() . = list() - for(var/mob/player in mob_list) + for(var/mob/player in GLOB.mob_list) var/list/real_command_positions = command_positions.Copy() - "Nanotrasen Representative" if(player.mind && (player.mind.assigned_role in real_command_positions)) . |= player.mind @@ -347,7 +347,7 @@ ////////////////////////////////////////////// /datum/game_mode/proc/get_living_sec() . = list() - for(var/mob/living/carbon/human/player in mob_list) + for(var/mob/living/carbon/human/player in GLOB.mob_list) if(player.stat != DEAD && player.mind && (player.mind.assigned_role in security_positions)) . |= player.mind @@ -356,7 +356,7 @@ //////////////////////////////////////// /datum/game_mode/proc/get_all_sec() . = list() - for(var/mob/living/carbon/human/player in mob_list) + for(var/mob/living/carbon/human/player in GLOB.mob_list) if(player.mind && (player.mind.assigned_role in security_positions)) . |= player.mind @@ -371,11 +371,11 @@ ////////////////////////// proc/display_roundstart_logout_report() var/msg = "Roundstart logout report\n\n" - for(var/mob/living/L in mob_list) + for(var/mob/living/L in GLOB.mob_list) if(L.ckey) var/found = 0 - for(var/client/C in clients) + for(var/client/C in GLOB.clients) if(C.ckey == L.ckey) found = 1 break @@ -401,7 +401,7 @@ proc/display_roundstart_logout_report() continue //Dead continue //Happy connected client - for(var/mob/dead/observer/D in mob_list) + for(var/mob/dead/observer/D in GLOB.mob_list) if(D.mind && (D.mind.original == L || D.mind.current == L)) if(L.stat == DEAD) if(L.suiciding) //Suicider @@ -422,14 +422,14 @@ proc/display_roundstart_logout_report() - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(check_rights(R_ADMIN, 0, M)) to_chat(M, msg) /proc/get_nt_opposed() var/list/dudes = list() - for(var/mob/living/carbon/human/man in player_list) + for(var/mob/living/carbon/human/man in GLOB.player_list) if(man.client) //don't try picking someone like the captain or a security officer for potential collaborators, even if they ARE opposed to Nanotrasen for some reason if(man.mind && man.mind.assigned_role) diff --git a/code/game/gamemodes/gameticker.dm b/code/game/gamemodes/gameticker.dm index 1941c0c323f..29996b30760 100644 --- a/code/game/gamemodes/gameticker.dm +++ b/code/game/gamemodes/gameticker.dm @@ -145,14 +145,14 @@ var/round_start_time = 0 spawn(0)//Forking here so we dont have to wait for this to finish mode.post_setup() //Cleanup some stuff - for(var/obj/effect/landmark/start/S in landmarks_list) + for(var/obj/effect/landmark/start/S in GLOB.landmarks_list) //Deleting Startpoints but we need the ai point to AI-ize people later if(S.name != "AI") qdel(S) // take care of random spesspod spawning var/list/obj/effect/landmark/spacepod/random/L = list() - for(var/obj/effect/landmark/spacepod/random/SS in landmarks_list) + for(var/obj/effect/landmark/spacepod/random/SS in GLOB.landmarks_list) if(istype(SS)) L += SS if(L.len) @@ -238,7 +238,7 @@ var/round_start_time = 0 votetimer() - for(var/mob/new_player/N in mob_list) + for(var/mob/new_player/N in GLOB.mob_list) if(N.client) N.new_player_panel_proc() @@ -259,14 +259,14 @@ var/round_start_time = 0 cinematic.mouse_opacity = MOUSE_OPACITY_TRANSPARENT cinematic.screen_loc = "1,0" - var/obj/structure/stool/bed/temp_buckle = new(src) + var/obj/structure/bed/temp_buckle = new(src) if(station_missed) - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) M.buckled = temp_buckle //buckles the mob so it can't do anything if(M.client) M.client.screen += cinematic //show every client the cinematic else //nuke kills everyone on z-level 1 to prevent "hurr-durr I survived" - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) M.buckled = temp_buckle if(M.stat != DEAD) var/turf/T = get_turf(M) @@ -343,7 +343,7 @@ var/round_start_time = 0 /datum/controller/gameticker/proc/create_characters() - for(var/mob/new_player/player in player_list) + for(var/mob/new_player/player in GLOB.player_list) if(player.ready && player.mind) if(player.mind.assigned_role == "AI") player.close_spawn_windows() @@ -357,14 +357,14 @@ var/round_start_time = 0 /datum/controller/gameticker/proc/collect_minds() - for(var/mob/living/player in player_list) + for(var/mob/living/player in GLOB.player_list) if(player.mind) ticker.minds += player.mind /datum/controller/gameticker/proc/equip_characters() var/captainless=1 - for(var/mob/living/carbon/human/player in player_list) + for(var/mob/living/carbon/human/player in GLOB.player_list) if(player && player.mind && player.mind.assigned_role) if(player.mind.assigned_role == "Captain") captainless=0 @@ -373,7 +373,7 @@ var/round_start_time = 0 job_master.EquipRank(player, player.mind.assigned_role, 0) EquipCustomItems(player) if(captainless) - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(!istype(M,/mob/new_player)) to_chat(M, "Captainship not forced on anyone.") @@ -428,7 +428,7 @@ var/round_start_time = 0 to_chat(world, "
") //Silicon laws report - for(var/mob/living/silicon/ai/aiPlayer in mob_list) + for(var/mob/living/silicon/ai/aiPlayer in GLOB.mob_list) if(aiPlayer.stat != 2) to_chat(world, "[aiPlayer.name] (Played by: [aiPlayer.key])'s laws at the end of the game were:") else @@ -443,7 +443,7 @@ var/round_start_time = 0 var/dronecount = 0 - for(var/mob/living/silicon/robot/robo in mob_list) + for(var/mob/living/silicon/robot/robo in GLOB.mob_list) if(istype(robo,/mob/living/silicon/robot/drone)) dronecount++ diff --git a/code/game/gamemodes/intercept_report.dm b/code/game/gamemodes/intercept_report.dm index ca868f4874e..5e8be8b1229 100644 --- a/code/game/gamemodes/intercept_report.dm +++ b/code/game/gamemodes/intercept_report.dm @@ -89,7 +89,7 @@ /* /datum/intercept_text/proc/pick_mob() var/list/dudes = list() - for(var/mob/living/carbon/human/man in player_list) + for(var/mob/living/carbon/human/man in GLOB.player_list) if(!man.mind) continue if(man.mind.assigned_role == man.mind.special_role) continue dudes += man @@ -109,7 +109,7 @@ /datum/intercept_text/proc/get_suspect() var/list/dudes = list() - for(var/mob/living/carbon/human/man in player_list) + for(var/mob/living/carbon/human/man in GLOB.player_list) if(man.client && man.client.prefs.nanotrasen_relation == "Opposed") //don't include suspects who can't possibly be the antag based on their job (no suspecting the captain of being a damned dirty tator) if(man.mind && man.mind.assigned_role) @@ -119,8 +119,8 @@ if(man.dna.species.name in ticker.mode.protected_species) return dudes += man - for(var/i = 0, i < max(player_list.len/10,2), i++) - dudes += pick(player_list) + for(var/i = 0, i < max(GLOB.player_list.len/10,2), i++) + dudes += pick(GLOB.player_list) return pick(dudes) /datum/intercept_text/proc/build_traitor(datum/mind/correct_person) @@ -211,11 +211,11 @@ if(prob(prob_right_job)) if(correct_person) if(correct_person:assigned_role == correct_person:special_role) - changeling_job = pick(joblist) + changeling_job = pick(GLOB.joblist) else changeling_job = correct_person:assigned_role else - changeling_job = pick(joblist) + changeling_job = pick(GLOB.joblist) if(prob(prob_right_dude) && ticker.mode == "changeling") if(correct_person:assigned_role == correct_person:special_role) changeling_name = correct_person:current diff --git a/code/game/gamemodes/malfunction/Malf_Modules.dm b/code/game/gamemodes/malfunction/Malf_Modules.dm index 0e536132f52..5f886d8fade 100644 --- a/code/game/gamemodes/malfunction/Malf_Modules.dm +++ b/code/game/gamemodes/malfunction/Malf_Modules.dm @@ -37,7 +37,7 @@ doomsday_device = DOOM doomsday_device.start() verbs -= /mob/living/silicon/ai/proc/nuke_station - for(var/obj/item/pinpointer/point in pinpointer_list) + for(var/obj/item/pinpointer/point in GLOB.pinpointer_list) for(var/mob/living/silicon/ai/A in ai_list) if((A.stat != DEAD) && A.nuking) point.the_disk = A //The pinpointer now tracks the AI core @@ -56,7 +56,7 @@ var/announced = 0 /obj/machinery/doomsday_device/Destroy() - fast_processing -= src + GLOB.fast_processing -= src SSshuttle.emergencyNoEscape = 0 if(SSshuttle.emergency.mode == SHUTTLE_STRANDED) SSshuttle.emergency.mode = SHUTTLE_DOCKED @@ -67,7 +67,7 @@ /obj/machinery/doomsday_device/proc/start() detonation_timer = world.time + default_timer timing = 1 - fast_processing += src + GLOB.fast_processing += src SSshuttle.emergencyNoEscape = 1 /obj/machinery/doomsday_device/proc/seconds_remaining() @@ -84,7 +84,7 @@ priority_announcement.Announce("Hostile environment resolved. You have 3 minutes to board the Emergency Shuttle.", "Priority Announcement", 'sound/AI/shuttledock.ogg') qdel(src) if(!timing) - fast_processing -= src + GLOB.fast_processing -= src return var/sec_left = seconds_remaining() if(sec_left <= 0) @@ -99,10 +99,10 @@ announced = max(0, announced-1) /obj/machinery/doomsday_device/proc/detonate(z_level = 1) - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) M << 'sound/machines/Alarm.ogg' sleep(100) - for(var/mob/living/L in mob_list) + for(var/mob/living/L in GLOB.mob_list) var/turf/T = get_turf(L) if(!T || T.z != z_level) continue @@ -131,7 +131,7 @@ return src.verbs -= /mob/living/silicon/ai/proc/upgrade_turrets - for(var/obj/machinery/porta_turret/turret in machines) + for(var/obj/machinery/porta_turret/turret in GLOB.machines) var/turf/T = get_turf(turret) if(is_station_level(T.z)) turret.health += 30 @@ -156,7 +156,7 @@ if(stat) return - for(var/obj/machinery/door/D in airlocks) + for(var/obj/machinery/door/D in GLOB.airlocks) if(!is_station_level(D.z)) continue INVOKE_ASYNC(D, /obj/machinery/door.proc/hostile_lockdown, src) @@ -188,7 +188,7 @@ if(stat || malf_cooldown > world.time) return - for(var/obj/item/rcd/RCD in rcd_list) + for(var/obj/item/rcd/RCD in GLOB.rcd_list) if(!istype(RCD, /obj/item/rcd/borg)) //Ensures that cyborg RCDs are spared. RCD.detonate_pulse() @@ -237,7 +237,7 @@ if(stat) return - for(var/obj/machinery/firealarm/F in machines) + for(var/obj/machinery/firealarm/F in GLOB.machines) if(!is_station_level(F.z)) continue F.emagged = 1 @@ -262,7 +262,7 @@ if(stat) return - for(var/obj/machinery/alarm/AA in machines) + for(var/obj/machinery/alarm/AA in GLOB.machines) if(!is_station_level(AA.z)) continue AA.emagged = 1 @@ -279,7 +279,7 @@ power_type = /mob/living/silicon/ai/proc/overload_machine -/mob/living/silicon/ai/proc/overload_machine(obj/machinery/M in machines) +/mob/living/silicon/ai/proc/overload_machine(obj/machinery/M in GLOB.machines) set name = "Overload Machine" set category = "Malfunction" @@ -312,7 +312,7 @@ power_type = /mob/living/silicon/ai/proc/override_machine -/mob/living/silicon/ai/proc/override_machine(obj/machinery/M in machines) +/mob/living/silicon/ai/proc/override_machine(obj/machinery/M in GLOB.machines) set name = "Override Machine" set category = "Malfunction" @@ -428,7 +428,7 @@ for(var/datum/AI_Module/small/blackout/blackout in current_modules) if(blackout.uses > 0) blackout.uses -- - for(var/obj/machinery/power/apc/apc in apcs) + for(var/obj/machinery/power/apc/apc in GLOB.apcs) if(prob(30*apc.overload)) apc.overload_lighting() else diff --git a/code/game/gamemodes/meteor/meteor.dm b/code/game/gamemodes/meteor/meteor.dm index 18b2e020716..8b7bc3ed345 100644 --- a/code/game/gamemodes/meteor/meteor.dm +++ b/code/game/gamemodes/meteor/meteor.dm @@ -33,7 +33,7 @@ /datum/game_mode/meteor/declare_completion() var/text var/survivors = 0 - for(var/mob/living/player in player_list) + for(var/mob/living/player in GLOB.player_list) if(player.stat != DEAD) var/turf/location = get_turf(player.loc) if(!location) continue diff --git a/code/game/gamemodes/meteor/meteors.dm b/code/game/gamemodes/meteor/meteors.dm index 0828d01e4f6..f55d0ef7520 100644 --- a/code/game/gamemodes/meteor/meteors.dm +++ b/code/game/gamemodes/meteor/meteors.dm @@ -98,7 +98,7 @@ var/meteorsound = 'sound/effects/meteorimpact.ogg' var/z_original = 1 - var/meteordrop = /obj/item/ore/iron + var/meteordrop = /obj/item/stack/ore/iron var/dropamt = 2 /obj/effect/meteor/Move() @@ -118,13 +118,13 @@ return . /obj/effect/meteor/Destroy() - meteor_list -= src + GLOB.meteor_list -= src walk(src,0) //this cancels the walk_towards() proc return ..() /obj/effect/meteor/New() ..() - meteor_list += src + GLOB.meteor_list += src SpinAnimation() /obj/effect/meteor/Bump(atom/A) @@ -174,7 +174,7 @@ var/sound/meteor_sound = sound(meteorsound) var/random_frequency = get_rand_frequency() - for(var/P in player_list) + for(var/P in GLOB.player_list) var/mob/M = P var/turf/T = get_turf(M) if(!T || T.z != src.z) @@ -196,7 +196,7 @@ hits = 1 hitpwr = 3 meteorsound = 'sound/weapons/tap.ogg' - meteordrop = /obj/item/ore/glass + meteordrop = /obj/item/stack/ore/glass //Medium-sized /obj/effect/meteor/medium @@ -226,7 +226,7 @@ hits = 5 heavy = 1 meteorsound = 'sound/effects/bamf.ogg' - meteordrop = /obj/item/ore/plasma + meteordrop = /obj/item/stack/ore/plasma /obj/effect/meteor/flaming/meteor_effect() ..(heavy) @@ -237,7 +237,7 @@ name = "glowing meteor" icon_state = "glowing" heavy = 1 - meteordrop = /obj/item/ore/uranium + meteordrop = /obj/item/stack/ore/uranium /obj/effect/meteor/irradiated/meteor_effect() @@ -256,7 +256,7 @@ hitpwr = 1 heavy = 1 meteorsound = 'sound/effects/bamf.ogg' - meteordrop = /obj/item/ore/plasma + meteordrop = /obj/item/stack/ore/plasma /obj/effect/meteor/tunguska/meteor_effect() ..(heavy) diff --git a/code/game/gamemodes/miniantags/abduction/abductee_objectives.dm b/code/game/gamemodes/miniantags/abduction/abductee_objectives.dm index af2920c4626..0d891edb3eb 100644 --- a/code/game/gamemodes/miniantags/abduction/abductee_objectives.dm +++ b/code/game/gamemodes/miniantags/abduction/abductee_objectives.dm @@ -88,7 +88,7 @@ explanation_text = "Call forth a spirit from the other side." /datum/objective/abductee/calling/New() - var/mob/dead/D = pick(dead_mob_list) + var/mob/dead/D = pick(GLOB.dead_mob_list) if(D) explanation_text = "You know that [D] has perished. Hold a seance to call them from the spirit realm." diff --git a/code/game/gamemodes/miniantags/abduction/abduction.dm b/code/game/gamemodes/miniantags/abduction/abduction.dm index 9926f27ef10..513bdeb4357 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction.dm @@ -99,7 +99,7 @@ var/list/obj/effect/landmark/abductor/scientist_landmarks = list() agent_landmarks.len = max_teams scientist_landmarks.len = max_teams - for(var/obj/effect/landmark/abductor/A in landmarks_list) + for(var/obj/effect/landmark/abductor/A in GLOB.landmarks_list) if(istype(A,/obj/effect/landmark/abductor/agent)) agent_landmarks[text2num(A.team)] = A else if(istype(A,/obj/effect/landmark/abductor/scientist)) @@ -166,7 +166,7 @@ abductor.announce_objectives() /datum/game_mode/abduction/proc/get_team_console(team_number) - for(var/obj/machinery/abductor/console/C in machines) + for(var/obj/machinery/abductor/console/C in GLOB.machines) if(C.team == team_number) return C @@ -237,7 +237,7 @@ return FALSE var/datum/species/abductor/S = H.dna.species ab_team = S.team - for(var/obj/machinery/abductor/experiment/E in machines) + for(var/obj/machinery/abductor/experiment/E in GLOB.machines) if(E.team == ab_team) if(E.points >= target_amount) return TRUE diff --git a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm b/code/game/gamemodes/miniantags/abduction/abduction_gear.dm index 92797f6a1e5..8cde8a9d3d1 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction_gear.dm @@ -119,7 +119,7 @@ /obj/item/clothing/suit/armor/abductor/Destroy() processing_objects.Remove(src) - for(var/obj/machinery/abductor/console/C in machines) + for(var/obj/machinery/abductor/console/C in GLOB.machines) if(C.vest == src) C.vest = null break @@ -491,7 +491,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} if(ishuman(L)) var/mob/living/carbon/human/H = L - H.forcesay(hit_appends) + H.forcesay(GLOB.hit_appends) add_attack_logs(user, L, "Stunned with [src]") diff --git a/code/game/gamemodes/miniantags/abduction/abduction_outfits.dm b/code/game/gamemodes/miniantags/abduction/abduction_outfits.dm index bb39e90cd01..c90aaac19d8 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction_outfits.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction_outfits.dm @@ -6,7 +6,7 @@ l_ear = /obj/item/radio/headset/abductor /datum/outfit/abductor/proc/get_team_console(team_number) - for(var/obj/machinery/abductor/console/C in machines) + for(var/obj/machinery/abductor/console/C in GLOB.machines) if(C.team == team_number) return C diff --git a/code/game/gamemodes/miniantags/abduction/machinery/camera.dm b/code/game/gamemodes/miniantags/abduction/machinery/camera.dm index cd4f80f2527..25b9025a764 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/camera.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/camera.dm @@ -14,7 +14,7 @@ icon_state = "camera" /obj/machinery/computer/camera_advanced/abductor/New() - abductor_equipment.Add(src) + GLOB.abductor_equipment.Add(src) ..() /obj/machinery/computer/camera_advanced/abductor/CreateEye() diff --git a/code/game/gamemodes/miniantags/abduction/machinery/console.dm b/code/game/gamemodes/miniantags/abduction/machinery/console.dm index 0e8c4d3c409..3598a5775a7 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/console.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/console.dm @@ -4,11 +4,11 @@ var/team = 0 /obj/machinery/abductor/New() - abductor_equipment.Add(src) + GLOB.abductor_equipment.Add(src) ..() /obj/machinery/abductor/Destroy() - abductor_equipment.Remove(src) + GLOB.abductor_equipment.Remove(src) return ..() //Console @@ -152,17 +152,17 @@ /obj/machinery/abductor/console/proc/Link_Abduction_Equipment() // these must all be explicitly `in machines` or they will not properly link. - for(var/obj/machinery/abductor/pad/p in abductor_equipment) + for(var/obj/machinery/abductor/pad/p in GLOB.abductor_equipment) if(p.team == team) pad = p break - for(var/obj/machinery/abductor/experiment/e in abductor_equipment) + for(var/obj/machinery/abductor/experiment/e in GLOB.abductor_equipment) if(e.team == team) experiment = e e.console = src - for(var/obj/machinery/computer/camera_advanced/abductor/c in abductor_equipment) + for(var/obj/machinery/computer/camera_advanced/abductor/c in GLOB.abductor_equipment) if(c.team == team) camera = c c.console = src @@ -194,7 +194,7 @@ if(vest == V) return FALSE - for(var/obj/machinery/abductor/console/C in machines) + for(var/obj/machinery/abductor/console/C in GLOB.machines) if(C.vest == V) C.vest = null break diff --git a/code/game/gamemodes/miniantags/borer/borer.dm b/code/game/gamemodes/miniantags/borer/borer.dm index a0ccbad7ab6..5543a54caa6 100644 --- a/code/game/gamemodes/miniantags/borer/borer.dm +++ b/code/game/gamemodes/miniantags/borer/borer.dm @@ -22,7 +22,7 @@ to_chat(src, "You whisper silently, \"[message]\"") to_chat(B.host, "The captive mind of [src] whispers, \"[message]\"") - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(M.mind && isobserver(M)) to_chat(M, "Thought-speech, [src] -> [B.truename]: [message]") @@ -181,7 +181,7 @@ if(host) to_chat(host, "[truename] [say_string]: [input]") log_say("(BORER to [key_name(host)]) [input]", src) - for(var/M in dead_mob_list) + for(var/M in GLOB.dead_mob_list) if(isobserver(M)) to_chat(M, "Borer Communication from [truename] ([ghost_follow_link(src, ghost=M)]): [input]") to_chat(src, "[truename] [say_string]: [input]") @@ -217,7 +217,7 @@ to_chat(B, "[src] says: [input]") log_say("(BORER to [key_name(B)]) [input]", src) - for(var/M in dead_mob_list) + for(var/M in GLOB.dead_mob_list) if(isobserver(M)) to_chat(M, "Borer Communication from [src] ([ghost_follow_link(src, ghost=M)]): [input]") to_chat(src, "[src] says: [input]") @@ -239,7 +239,7 @@ to_chat(CB, "[B.truename] says: [input]") log_say("(BORER to [key_name(CB)]) [input]", B) - for(var/M in dead_mob_list) + for(var/M in GLOB.dead_mob_list) if(isobserver(M)) to_chat(M, "Borer Communication from [B] ([ghost_follow_link(src, ghost=M)]): [input]") to_chat(src, "[B.truename] says: [input]") @@ -397,7 +397,7 @@ for(var/datum in typesof(/datum/borer_chem)) var/datum/borer_chem/C = datum var/cname = initial(C.chemname) - var/datum/reagent/R = chemical_reagents_list[cname] + var/datum/reagent/R = GLOB.chemical_reagents_list[cname] if(cname) content += "[R.name] ([initial(C.chemuse)])

[initial(C.chemdesc)]

" @@ -431,7 +431,7 @@ if(!C || !host || controlling || !src || stat) return - var/datum/reagent/R = chemical_reagents_list[C.chemname] + var/datum/reagent/R = GLOB.chemical_reagents_list[C.chemname] if(chemicals < C.chemuse) to_chat(src, "You need [C.chemuse] chemicals stored to secrete [R.name]!") return diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm index a3a029005d5..9a8ead8b289 100644 --- a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm +++ b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm @@ -110,7 +110,7 @@ AIStatus = AI_OFF var/resources = 0 //Resource points, generated by consuming metal/glass var/max_resources = 100 - loot = list(/obj/effect/decal/cleanable/blood/gibs/robot, /obj/item/ore/bluespace_crystal/artificial) + loot = list(/obj/effect/decal/cleanable/blood/gibs/robot, /obj/item/stack/ore/bluespace_crystal/artificial) deathmessage = "The swarmer explodes with a sharp pop!" del_on_death = 1 hud_possible = list(SPECIALROLE_HUD, DIAG_STAT_HUD, DIAG_HUD) @@ -585,6 +585,6 @@ /mob/living/simple_animal/hostile/swarmer/proc/ContactSwarmers() var/message = input(src, "Announce to other swarmers", "Swarmer contact") if(message) - for(var/mob/M in mob_list) - if(isswarmer(M) || (M in dead_mob_list)) + for(var/mob/M in GLOB.mob_list) + if(isswarmer(M) || (M in GLOB.dead_mob_list)) to_chat(M, "Swarm communication - [src] states: [message]") diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer_event.dm b/code/game/gamemodes/miniantags/bot_swarm/swarmer_event.dm index 7a16ef17857..d611092bb2b 100644 --- a/code/game/gamemodes/miniantags/bot_swarm/swarmer_event.dm +++ b/code/game/gamemodes/miniantags/bot_swarm/swarmer_event.dm @@ -19,7 +19,7 @@ /datum/event/spawn_swarmer/proc/find_swarmer() - for(var/mob/living/M in mob_list) + for(var/mob/living/M in GLOB.mob_list) if(istype(M, /mob/living/simple_animal/hostile/swarmer) && M.client) //If there is a swarmer with an active client, we've found our swarmer return 1 return 0 diff --git a/code/game/gamemodes/miniantags/guardian/guardian.dm b/code/game/gamemodes/miniantags/guardian/guardian.dm index 449e5f5ae3a..fed089ee979 100644 --- a/code/game/gamemodes/miniantags/guardian/guardian.dm +++ b/code/game/gamemodes/miniantags/guardian/guardian.dm @@ -165,11 +165,11 @@ var/input = stripped_input(src, "Please enter a message to tell your summoner.", "Guardian", "") if(!input) return - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(M == summoner) to_chat(M, "[src]: [input]") log_say("(GUARDIAN to [key_name(M)]) [input]", src) - else if(M in dead_mob_list) + else if(M in GLOB.dead_mob_list) to_chat(M, "Guardian Communication from [src] ([ghost_follow_link(src, ghost=M)]): [input]") to_chat(src, "[src]: [input]") @@ -184,14 +184,14 @@ var/input = stripped_input(src, "Please enter a message to tell your guardian.", "Message", "") if(!input) return - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(istype (M, /mob/living/simple_animal/hostile/guardian)) var/mob/living/simple_animal/hostile/guardian/G = M if(G.summoner == src) to_chat(G, "[src]: [input]") log_say("(GUARDIAN to [key_name(G)]) [input]", src) - else if(M in dead_mob_list) + else if(M in GLOB.dead_mob_list) to_chat(M, "Guardian Communication from [src] ([ghost_follow_link(src, ghost=M)]): [input]") to_chat(src, "[src]: [input]") @@ -199,7 +199,7 @@ set name = "Recall Guardian" set category = "Guardian" set desc = "Forcibly recall your guardian." - for(var/mob/living/simple_animal/hostile/guardian/G in mob_list) + for(var/mob/living/simple_animal/hostile/guardian/G in GLOB.mob_list) if(G.summoner == src) G.Recall() @@ -209,7 +209,7 @@ set desc = "Re-rolls which ghost will control your Guardian. One use." src.verbs -= /mob/living/proc/guardian_reset - for(var/mob/living/simple_animal/hostile/guardian/G in mob_list) + for(var/mob/living/simple_animal/hostile/guardian/G in GLOB.mob_list) if(G.summoner == src) var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as [G.real_name]?", ROLE_GUARDIAN, 0, 100) var/mob/dead/observer/new_stand = null @@ -253,7 +253,7 @@ var/random = TRUE /obj/item/guardiancreator/attack_self(mob/living/user) - for(var/mob/living/simple_animal/hostile/guardian/G in living_mob_list) + for(var/mob/living/simple_animal/hostile/guardian/G in GLOB.living_mob_list) if(G.summoner == user) to_chat(user, "You already have a [mob_name]!") return diff --git a/code/game/gamemodes/miniantags/revenant/revenant.dm b/code/game/gamemodes/miniantags/revenant/revenant.dm index 7d8953b8b84..d75a1bd6d52 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant.dm @@ -98,7 +98,7 @@ return log_say(message, src) var/rendered = "[src] says, \"[message]\"" - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(istype(M, /mob/living/simple_animal/revenant)) to_chat(M, rendered) if(isobserver(M)) @@ -368,7 +368,7 @@ loc = get_turf(src) //In case it's in a backpack or someone's hand var/mob/living/simple_animal/revenant/R = new(get_turf(src)) if(client_to_revive) - for(var/mob/M in dead_mob_list) + for(var/mob/M in GLOB.dead_mob_list) if(M.client == client_to_revive) //Only recreates the mob if the mob the client is in is dead R.client = client_to_revive key_of_revenant = client_to_revive.key diff --git a/code/game/gamemodes/miniantags/revenant/revenant_spawn_event.dm b/code/game/gamemodes/miniantags/revenant/revenant_spawn_event.dm index a70114d8f5e..757fbe579a2 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant_spawn_event.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant_spawn_event.dm @@ -6,7 +6,7 @@ /datum/event/revenant/proc/get_revenant(var/end_if_fail = 0) var/deadMobs = 0 - for(var/mob/M in dead_mob_list) + for(var/mob/M in GLOB.dead_mob_list) deadMobs++ if(deadMobs < REVENANT_SPAWN_THRESHOLD) message_admins("Random event attempted to spawn a revenant, but there were only [deadMobs]/[REVENANT_SPAWN_THRESHOLD] dead mobs.") @@ -26,13 +26,13 @@ var/datum/mind/player_mind = new /datum/mind(key_of_revenant) player_mind.active = 1 var/list/spawn_locs = list() - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(isturf(L.loc)) switch(L.name) if("revenantspawn") spawn_locs += L.loc if(!spawn_locs) //If we can't find any revenant spawns, try the carp spawns - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(isturf(L.loc)) switch(L.name) if("carpspawn") diff --git a/code/game/gamemodes/miniantags/slaughter/slaughter.dm b/code/game/gamemodes/miniantags/slaughter/slaughter.dm index d6f14e546e5..5d785cc44e3 100644 --- a/code/game/gamemodes/miniantags/slaughter/slaughter.dm +++ b/code/game/gamemodes/miniantags/slaughter/slaughter.dm @@ -141,7 +141,7 @@ /obj/effect/proc_holder/spell/targeted/sense_victims/cast(list/targets) var/list/victims = targets - for(var/mob/living/L in living_mob_list) + for(var/mob/living/L in GLOB.living_mob_list) if(!L.stat && !iscultist(L) && L.key && L != usr) victims.Add(L) if(!targets.len) @@ -225,7 +225,7 @@ log_say("(SLAUGHTER to [key_name(choice)]) [msg]", usr) to_chat(usr, "You whisper to [choice]: [msg]") to_chat(choice, "Suddenly a strange, demonic voice resonates in your head... [msg]") - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) G.show_message("Demonic message from [usr] ([ghost_follow_link(usr, ghost=G)]) to [choice] ([ghost_follow_link(choice, ghost=G)]): [msg]") diff --git a/code/game/gamemodes/nations/nations.dm b/code/game/gamemodes/nations/nations.dm index 5d625d5fdda..c8a9ad00a62 100644 --- a/code/game/gamemodes/nations/nations.dm +++ b/code/game/gamemodes/nations/nations.dm @@ -16,7 +16,7 @@ datum/game_mode/nations set_ai() assign_leaders() // remove_access() - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(!istype(M,/mob/new_player)) M << sound('sound/effects/purge_siren.ogg') @@ -34,10 +34,10 @@ datum/game_mode/nations /datum/game_mode/nations/proc/split_teams() - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) if(H.mind) if(H.mind.assigned_role in engineering_positions) - H.mind.nation = all_nations["Atmosia"] + H.mind.nation = GLOB.all_nations["Atmosia"] update_nations_icons_added(H,"hudatmosia") H.mind.nation.membership += H.mind.current if(H.mind.assigned_role == H.mind.nation.default_leader) @@ -48,7 +48,7 @@ datum/game_mode/nations continue if(H.mind.assigned_role in medical_positions) - H.mind.nation = all_nations["Medistan"] + H.mind.nation = GLOB.all_nations["Medistan"] update_nations_icons_added(H,"hudmedistan") H.mind.nation.membership += H.mind.current if(H.mind.assigned_role == H.mind.nation.default_leader) @@ -59,7 +59,7 @@ datum/game_mode/nations continue if(H.mind.assigned_role in science_positions) - H.mind.nation = all_nations["Scientopia"] + H.mind.nation = GLOB.all_nations["Scientopia"] update_nations_icons_added(H,"hudscientopia") H.mind.nation.membership += H.mind.current if(H.mind.assigned_role == H.mind.nation.default_leader) @@ -70,7 +70,7 @@ datum/game_mode/nations continue if(H.mind.assigned_role in security_positions) - H.mind.nation = all_nations["Brigston"] + H.mind.nation = GLOB.all_nations["Brigston"] update_nations_icons_added(H,"hudbrigston") H.mind.nation.membership += H.mind.current if(H.mind.assigned_role == H.mind.nation.default_leader) @@ -81,7 +81,7 @@ datum/game_mode/nations continue if(H.mind.assigned_role in cargonians) - H.mind.nation = all_nations["Cargonia"] + H.mind.nation = GLOB.all_nations["Cargonia"] update_nations_icons_added(H,"hudcargonia") H.mind.nation.membership += H.mind.current if(H.mind.assigned_role == H.mind.nation.default_leader) @@ -92,7 +92,7 @@ datum/game_mode/nations continue if(H.mind.assigned_role in servicion) - H.mind.nation = all_nations["Servicion"] + H.mind.nation = GLOB.all_nations["Servicion"] update_nations_icons_added(H,"hudservice") H.mind.nation.membership += H.mind.current if(H.mind.assigned_role == H.mind.nation.default_leader) @@ -103,7 +103,7 @@ datum/game_mode/nations continue if(H.mind.assigned_role in (support_positions + command_positions)) - H.mind.nation = all_nations["People's Republic of Commandzakstan"] + H.mind.nation = GLOB.all_nations["People's Republic of Commandzakstan"] update_nations_icons_added(H,"hudcommand") H.mind.nation.membership += H.mind.current if(H.mind.assigned_role == H.mind.nation.default_leader) @@ -123,7 +123,7 @@ datum/game_mode/nations /datum/game_mode/nations/proc/set_ai() - for(var/mob/living/silicon/ai/AI in mob_list) + for(var/mob/living/silicon/ai/AI in GLOB.mob_list) AI.set_zeroth_law("") AI.clear_supplied_laws() AI.clear_ion_laws() @@ -141,14 +141,14 @@ datum/game_mode/nations qdel(oldmmi) /datum/game_mode/nations/proc/remove_access() - for(var/obj/machinery/door/airlock/W in airlocks) + for(var/obj/machinery/door/airlock/W in GLOB.airlocks) if(is_station_level(W.z)) W.req_access = list() /datum/game_mode/nations/proc/assign_leaders() - for(var/name in all_nations) - var/datum/nations/N = all_nations[name] + for(var/name in GLOB.all_nations) + var/datum/nations/N = GLOB.all_nations[name] if(!N.current_name) N.current_name = N.default_name if(!N.current_leader && N.membership.len) @@ -174,49 +174,49 @@ datum/game_mode/nations if(H.mind) if(H.mind.assigned_role in engineering_positions) - H.mind.nation = all_nations["Atmosia"] + H.mind.nation = GLOB.all_nations["Atmosia"] mode.update_nations_icons_added(H,"atmosia") H.mind.nation.membership += H.mind.current to_chat(H, "You are now part of the great sovereign nation of [H.mind.nation.current_name]!") return 1 if(H.mind.assigned_role in medical_positions) - H.mind.nation = all_nations["Medistan"] + H.mind.nation = GLOB.all_nations["Medistan"] mode.update_nations_icons_added(H,"hudmedistan") H.mind.nation.membership += H.mind.current to_chat(H, "You are now part of the great sovereign nation of [H.mind.nation.current_name]!") return 1 if(H.mind.assigned_role in science_positions) - H.mind.nation = all_nations["Scientopia"] + H.mind.nation = GLOB.all_nations["Scientopia"] mode.update_nations_icons_added(H,"hudscientopia") H.mind.nation.membership += H.mind.current to_chat(H, "You are now part of the great sovereign nation of [H.mind.nation.current_name]!") return 1 if(H.mind.assigned_role in security_positions) - H.mind.nation = all_nations["Brigston"] + H.mind.nation = GLOB.all_nations["Brigston"] mode.update_nations_icons_added(H,"hudbrigston") H.mind.nation.membership += H.mind.current to_chat(H, "You are now part of the great sovereign nation of [H.mind.nation.current_name]!") return 1 if(H.mind.assigned_role in mode.cargonians) - H.mind.nation = all_nations["Cargonia"] + H.mind.nation = GLOB.all_nations["Cargonia"] mode.update_nations_icons_added(H,"hudcargonia") H.mind.nation.membership += H.mind.current to_chat(H, "You are now part of the great sovereign nation of [H.mind.nation.current_name]!") return 1 if(H.mind.assigned_role in mode.servicion) - H.mind.nation = all_nations["Servicion"] + H.mind.nation = GLOB.all_nations["Servicion"] mode.update_nations_icons_added(H,"hudservice") H.mind.nation.membership += H.mind.current to_chat(H, "You are now part of the great sovereign nation of [H.mind.nation.current_name]!") return 1 if(H.mind.assigned_role in (support_positions + command_positions)) - H.mind.nation = all_nations["People's Republic of Commandzakstan"] + H.mind.nation = GLOB.all_nations["People's Republic of Commandzakstan"] mode.update_nations_icons_added(H,"hudcommand") H.mind.nation.membership += H.mind.current to_chat(H, "You are now part of the great sovereign nation of [H.mind.nation.current_name]!") diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index 0130f1260d6..552f9ab7063 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -91,7 +91,7 @@ proc/issyndicate(mob/living/M as mob) var/list/turf/synd_spawn = list() - for(var/obj/effect/landmark/A in landmarks_list) + for(var/obj/effect/landmark/A in GLOB.landmarks_list) if(A.name == "Syndicate-Spawn") synd_spawn += get_turf(A) qdel(A) @@ -296,7 +296,7 @@ proc/issyndicate(mob/living/M as mob) /datum/game_mode/nuclear/declare_completion() var/disk_rescued = 1 - for(var/obj/item/disk/nuclear/D in poi_list) + for(var/obj/item/disk/nuclear/D in GLOB.poi_list) if(!D.onCentcom()) disk_rescued = 0 break @@ -394,7 +394,7 @@ proc/issyndicate(mob/living/M as mob) return 1 /proc/nukelastname(var/mob/M as mob) //--All praise goes to NEO|Phyte, all blame goes to DH, and it was Cindi-Kate's idea. Also praise Urist for copypasta ho. - var/randomname = pick(last_names) + var/randomname = pick(GLOB.last_names) var/newname = sanitize(copytext(input(M,"You are the nuke operative [pick("Czar", "Boss", "Commander", "Chief", "Kingpin", "Director", "Overlord")]. Please choose a last name for your family.", "Name change",randomname),1,MAX_NAME_LEN)) if(!newname) @@ -411,9 +411,9 @@ proc/issyndicate(mob/living/M as mob) for(var/datum/mind/synd_mind in syndicates) switch(synd_mind.current.gender) if(MALE) - synd_mind.name = "[pick(first_names_male)] [pick(last_names)]" + synd_mind.name = "[pick(GLOB.first_names_male)] [pick(GLOB.last_names)]" if(FEMALE) - synd_mind.name = "[pick(first_names_female)] [pick(last_names)]" + synd_mind.name = "[pick(GLOB.first_names_female)] [pick(GLOB.last_names)]" synd_mind.current.real_name = synd_mind.name return diff --git a/code/game/gamemodes/nuclear/nuclear_challenge.dm b/code/game/gamemodes/nuclear/nuclear_challenge.dm index 7e75f579bf5..328a462ac32 100644 --- a/code/game/gamemodes/nuclear/nuclear_challenge.dm +++ b/code/game/gamemodes/nuclear/nuclear_challenge.dm @@ -52,12 +52,12 @@ to_chat(user, "You've attracted the attention of powerful forces within the syndicate. A bonus bundle of telecrystals has been granted to your team. Great things await you if you complete the mission.") to_chat(user, "Look below you on the floor for the extra uplink") - for(var/obj/machinery/computer/shuttle/syndicate/S in machines) + for(var/obj/machinery/computer/shuttle/syndicate/S in GLOB.machines) S.challenge = TRUE var/obj/item/radio/uplink/U = new /obj/item/radio/uplink(get_turf(user)) U.hidden_uplink.uplink_owner= "[user.key]" - U.hidden_uplink.uses = CHALLENGE_TELECRYSTALS + round((((player_list.len - CHALLENGE_MIN_PLAYERS)/CHALLENGE_SCALE_PLAYER) * CHALLENGE_SCALE_BONUS)) // No. of player - Min. Player to dec, divided by player per bonus, then multipled by TC per bonus. Rounded. + U.hidden_uplink.uses = CHALLENGE_TELECRYSTALS + round((((GLOB.player_list.len - CHALLENGE_MIN_PLAYERS)/CHALLENGE_SCALE_PLAYER) * CHALLENGE_SCALE_BONUS)) // No. of player - Min. Player to dec, divided by player per bonus, then multipled by TC per bonus. Rounded. config.shuttle_refuel_delay = CHALLENGE_SHUTTLE_DELAY qdel(src) @@ -65,7 +65,7 @@ if(declaring_war) to_chat(user, "You are already in the process of declaring war! Make your mind up.") return FALSE - if(player_list.len < CHALLENGE_MIN_PLAYERS) + if(GLOB.player_list.len < CHALLENGE_MIN_PLAYERS) to_chat(user, "The enemy crew is too small to be worth declaring war on.") return FALSE if(!is_admin_level(user.z)) @@ -74,7 +74,7 @@ if((world.time - round_start_time) > CHALLENGE_TIME_LIMIT) // Only count after the round started to_chat(user, "It's too late to declare hostilities. Your benefactors are already busy with other schemes. You'll have to make do with what you have on hand.") return FALSE - for(var/obj/machinery/computer/shuttle/syndicate/S in machines) + for(var/obj/machinery/computer/shuttle/syndicate/S in GLOB.machines) if(S.moved) to_chat(user, "The shuttle has already been moved! You have forfeit the right to declare war.") return FALSE diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm index 51831752758..b847dac0a54 100644 --- a/code/game/gamemodes/nuclear/nuclearbomb.dm +++ b/code/game/gamemodes/nuclear/nuclearbomb.dm @@ -32,11 +32,11 @@ var/bomb_set r_code = "[rand(10000, 99999.0)]"//Creates a random code upon object spawn. wires = new/datum/wires/nuclearbomb(src) previous_level = get_security_level() - poi_list |= src + GLOB.poi_list |= src /obj/machinery/nuclearbomb/Destroy() QDEL_NULL(wires) - poi_list.Remove(src) + GLOB.poi_list.Remove(src) return ..() /obj/machinery/nuclearbomb/process() @@ -405,7 +405,7 @@ var/bomb_set /obj/item/disk/nuclear/New() ..() processing_objects.Add(src) - poi_list |= src + GLOB.poi_list |= src /obj/item/disk/nuclear/process() var/turf/disk_loc = get_turf(src) @@ -421,12 +421,12 @@ var/bomb_set if(force) message_admins("[src] has been !!force deleted!! in ([diskturf ? "[diskturf.x], [diskturf.y] ,[diskturf.z] - JMP":"nonexistent location"]).") log_game("[src] has been !!force deleted!! in ([diskturf ? "[diskturf.x], [diskturf.y] ,[diskturf.z]":"nonexistent location"]).") - poi_list.Remove(src) + GLOB.poi_list.Remove(src) processing_objects.Remove(src) return ..() if(blobstart.len > 0) - poi_list.Remove(src) + GLOB.poi_list.Remove(src) var/obj/item/disk/nuclear/NEWDISK = new(pick(blobstart)) transfer_fingerprints_to(NEWDISK) message_admins("[src] has been destroyed at ([diskturf.x], [diskturf.y], [diskturf.z] - JMP). Moving it to ([NEWDISK.x], [NEWDISK.y], [NEWDISK.z] - JMP).") diff --git a/code/game/gamemodes/nuclear/pinpointer.dm b/code/game/gamemodes/nuclear/pinpointer.dm index 285654ea81c..ec667bbad86 100644 --- a/code/game/gamemodes/nuclear/pinpointer.dm +++ b/code/game/gamemodes/nuclear/pinpointer.dm @@ -21,10 +21,10 @@ /obj/item/pinpointer/New() ..() - pinpointer_list += src + GLOB.pinpointer_list += src /obj/item/pinpointer/Destroy() - pinpointer_list -= src + GLOB.pinpointer_list -= src active = 0 the_disk = null return ..() @@ -81,7 +81,7 @@ if(!shows_nuke_timer) return - for(var/obj/machinery/nuclearbomb/bomb in machines) + for(var/obj/machinery/nuclearbomb/bomb in GLOB.machines) if(bomb.timing) to_chat(user, "Extreme danger. Arming signal detected. Time remaining: [bomb.timeleft]") @@ -174,7 +174,7 @@ var/DNAstring = input("Input DNA string to search for." , "Please Enter String." , "") if(!DNAstring) return - for(var/mob/living/carbon/C in mob_list) + for(var/mob/living/carbon/C in GLOB.mob_list) if(!C.dna) continue if(C.dna.unique_enzymes == DNAstring) @@ -289,7 +289,7 @@ if(active) nearest_op = null //Resets nearest_op every time it scans var/closest_distance = 1000 - for(var/mob/living/carbon/M in mob_list) + for(var/mob/living/carbon/M in GLOB.mob_list) if(M.mind && (M.mind in ticker.mode.syndicates)) if(get_dist(M, get_turf(src)) < closest_distance) //Actually points toward the nearest op, instead of a random one like it used to nearest_op = M @@ -347,7 +347,7 @@ var/list/name_counts = list() var/list/names = list() - for(var/mob/living/carbon/human/H in mob_list) + for(var/mob/living/carbon/human/H in GLOB.mob_list) if(!trackable(H)) continue diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 2e3862ce583..51fc6ed8030 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -200,7 +200,7 @@ var/list/potential_theft_objectives = subtypesof(/datum/theft_objective) - /datu var/area/A = SSshuttle.emergency.areaInstance - for(var/mob/living/player in player_list) //Make sure nobody else is onboard + for(var/mob/living/player in GLOB.player_list) //Make sure nobody else is onboard if(player.mind && player.mind != owner) if(player.stat != DEAD) if(issilicon(player)) @@ -209,7 +209,7 @@ var/list/potential_theft_objectives = subtypesof(/datum/theft_objective) - /datu if(player.real_name != owner.current.real_name && !istype(get_turf(player.mind.current), /turf/simulated/shuttle/floor4)) return 0 - for(var/mob/living/player in player_list) //Make sure at least one of you is onboard + for(var/mob/living/player in GLOB.player_list) //Make sure at least one of you is onboard if(player.mind && player.mind != owner) if(player.stat != DEAD) if(issilicon(player)) @@ -234,7 +234,7 @@ var/list/potential_theft_objectives = subtypesof(/datum/theft_objective) - /datu var/area/A = SSshuttle.emergency.areaInstance var/list/protected_mobs = list(/mob/living/silicon/ai, /mob/living/silicon/pai, /mob/living/silicon/robot) - for(var/mob/living/player in player_list) + for(var/mob/living/player in GLOB.player_list) if(player.type in protected_mobs) continue @@ -446,13 +446,13 @@ var/list/potential_theft_objectives = subtypesof(/datum/theft_objective) - /datu if(ticker) var/n_p = 1 //autowin if(ticker.current_state == GAME_STATE_SETTING_UP) - for(var/mob/new_player/P in player_list) + for(var/mob/new_player/P in GLOB.player_list) if(P.client && P.ready && P.mind != owner) if(P.client.prefs && (P.client.prefs.species == "Machine")) // Special check for species that can't be absorbed. No better solution. continue n_p++ else if(ticker.current_state == GAME_STATE_PLAYING) - for(var/mob/living/carbon/human/P in player_list) + for(var/mob/living/carbon/human/P in GLOB.player_list) if(NO_DNA in P.dna.species.species_traits) continue if(P.client && !(P.mind in ticker.mode.changelings) && P.mind!=owner) diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm index 15608cf665e..257126e8586 100644 --- a/code/game/gamemodes/revolution/revolution.dm +++ b/code/game/gamemodes/revolution/revolution.dm @@ -337,7 +337,7 @@ if(head_revolutionaries.len || GAMEMODE_IS_REVOLUTION) var/num_revs = 0 var/num_survivors = 0 - for(var/mob/living/carbon/survivor in living_mob_list) + for(var/mob/living/carbon/survivor in GLOB.living_mob_list) if(survivor.ckey) num_survivors++ if(survivor.mind) diff --git a/code/game/gamemodes/sandbox/sandbox.dm b/code/game/gamemodes/sandbox/sandbox.dm index 1be9a0ced0e..663759c961c 100644 --- a/code/game/gamemodes/sandbox/sandbox.dm +++ b/code/game/gamemodes/sandbox/sandbox.dm @@ -11,7 +11,7 @@ to_chat(world, "Build your own station with the sandbox-panel command!") /datum/game_mode/sandbox/pre_setup() - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) M.CanBuild() return 1 diff --git a/code/game/gamemodes/scoreboard.dm b/code/game/gamemodes/scoreboard.dm index d946c1450f1..9a3ca6073a1 100644 --- a/code/game/gamemodes/scoreboard.dm +++ b/code/game/gamemodes/scoreboard.dm @@ -20,17 +20,17 @@ // Score Calculation and Display // Who is alive/dead, who escaped - for(var/mob/living/silicon/ai/I in mob_list) + for(var/mob/living/silicon/ai/I in GLOB.mob_list) if(I.stat == DEAD && is_station_level(I.z)) score_deadaipenalty++ score_deadcrew++ - for(var/mob/living/carbon/human/I in mob_list) + for(var/mob/living/carbon/human/I in GLOB.mob_list) if(I.stat == DEAD && is_station_level(I.z)) score_deadcrew++ if(SSshuttle.emergency.mode >= SHUTTLE_ENDGAME) - for(var/mob/living/player in mob_list) + for(var/mob/living/player in GLOB.mob_list) if(player.client) if(player.stat != DEAD) var/turf/location = get_turf(player.loc) @@ -44,7 +44,7 @@ var/dmg_score = 0 if(SSshuttle.emergency.mode >= SHUTTLE_ENDGAME) - for(var/mob/living/carbon/human/E in mob_list) + for(var/mob/living/carbon/human/E in GLOB.mob_list) cash_score = 0 dmg_score = 0 var/turf/location = get_turf(E.loc) @@ -71,7 +71,7 @@ // Check station's power levels - for(var/obj/machinery/power/apc/A in apcs) + for(var/obj/machinery/power/apc/A in GLOB.apcs) if(!is_station_level(A.z)) continue for(var/obj/item/stock_parts/cell/C in A.contents) if(C.charge < 2300) @@ -142,7 +142,7 @@ // Show the score - might add "ranks" later to_chat(world, "The crew's final score is:") to_chat(world, "[score_crewscore]") - for(var/mob/E in player_list) + for(var/mob/E in GLOB.player_list) if(E.client && !E.get_preference(DISABLE_SCOREBOARD)) E.scorestats() diff --git a/code/game/gamemodes/shadowling/ascendant_shadowling.dm b/code/game/gamemodes/shadowling/ascendant_shadowling.dm index f640174d537..51f4d147bba 100644 --- a/code/game/gamemodes/shadowling/ascendant_shadowling.dm +++ b/code/game/gamemodes/shadowling/ascendant_shadowling.dm @@ -49,7 +49,7 @@ /mob/living/simple_animal/ascendant_shadowling/proc/announce(var/text, var/size = 4, var/new_sound = null) var/message = "\"[text]\"" - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(!isnewplayer(M) && M.client) to_chat(M, message) if(new_sound) diff --git a/code/game/gamemodes/shadowling/shadowling_abilities.dm b/code/game/gamemodes/shadowling/shadowling_abilities.dm index 89c5f159108..63e37911224 100644 --- a/code/game/gamemodes/shadowling/shadowling_abilities.dm +++ b/code/game/gamemodes/shadowling/shadowling_abilities.dm @@ -402,7 +402,7 @@ to_chat(target, "You focus your telepathic energies abound, harnessing and drawing together the strength of your thralls.") - for(M in living_mob_list) + for(M in GLOB.living_mob_list) if(is_thrall(M)) thralls++ to_chat(M, "You feel hooks sink into your mind and pull.") @@ -439,7 +439,7 @@ else if(thralls >= victory_threshold) to_chat(target, "You are now powerful enough to ascend. Use the Ascendance ability when you are ready. This will kill all of your thralls.") to_chat(target, "You may find Ascendance in the Shadowling Evolution tab.") - for(M in living_mob_list) + for(M in GLOB.living_mob_list) if(is_shadow(M)) var/obj/effect/proc_holder/spell/targeted/collective_mind/CM if(CM in M.mind.spell_list) diff --git a/code/game/gamemodes/shadowling/special_shadowling_abilities.dm b/code/game/gamemodes/shadowling/special_shadowling_abilities.dm index d2582243d8c..a561fe6a273 100644 --- a/code/game/gamemodes/shadowling/special_shadowling_abilities.dm +++ b/code/game/gamemodes/shadowling/special_shadowling_abilities.dm @@ -157,7 +157,7 @@ var/list/possibleShadowlingNames = list("U'ruan", "Y`shej", "Nex", "Hel-uae", "N for(var/mob/living/M in orange(7, H)) M.Weaken(10) to_chat(M, "An immense pressure slams you onto the ground!") - for(var/obj/machinery/power/apc/A in apcs) + for(var/obj/machinery/power/apc/A in GLOB.apcs) A.overload_lighting() var/mob/living/simple_animal/ascendant_shadowling/A = new /mob/living/simple_animal/ascendant_shadowling(H.loc) A.announce("VYSHA NERADA YEKHEZET U'RUU!!", 5, 'sound/hallucinations/veryfar_noise.ogg') diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm index 9234043976c..d79dbc3c224 100644 --- a/code/game/gamemodes/traitor/traitor.dm +++ b/code/game/gamemodes/traitor/traitor.dm @@ -123,7 +123,7 @@ var/list/active_ais = active_ais() for(var/i = objective_count, i < config.traitor_objectives_amount, i++) if(prob(50)) - if(active_ais.len && prob(100/player_list.len)) + if(active_ais.len && prob(100/GLOB.player_list.len)) var/datum/objective/destroy/destroy_objective = new destroy_objective.owner = traitor destroy_objective.find_target() diff --git a/code/game/gamemodes/vampire/traitor_vamp.dm b/code/game/gamemodes/vampire/traitor_vamp.dm index b06db47f02c..f1064bffd1b 100644 --- a/code/game/gamemodes/vampire/traitor_vamp.dm +++ b/code/game/gamemodes/vampire/traitor_vamp.dm @@ -20,7 +20,7 @@ var/list/datum/mind/possible_vampires = get_players_for_role(ROLE_VAMPIRE) - for(var/mob/new_player/player in player_list) + for(var/mob/new_player/player in GLOB.player_list) if((player.mind in possible_vampires) && (player.client.prefs.species in protected_species_vampire)) possible_vampires -= player.mind diff --git a/code/game/gamemodes/wizard/artefact.dm b/code/game/gamemodes/wizard/artefact.dm index 2ac4bc0b2f8..4c0aaac77da 100644 --- a/code/game/gamemodes/wizard/artefact.dm +++ b/code/game/gamemodes/wizard/artefact.dm @@ -84,8 +84,8 @@ M.equip_to_slot_or_del(new /obj/item/storage/backpack(M), slot_back) M.equip_to_slot_or_del(new /obj/item/storage/box(M), slot_in_backpack) M.equip_to_slot_or_del(new /obj/item/teleportation_scroll/apprentice(M), slot_r_store) - var/wizard_name_first = pick(wizard_first) - var/wizard_name_second = pick(wizard_second) + var/wizard_name_first = pick(GLOB.wizard_first) + var/wizard_name_second = pick(GLOB.wizard_second) var/randomname = "[wizard_name_first] [wizard_name_second]" var/newname = sanitize(copytext(input(M, "You are the wizard's apprentice. Would you like to change your name to something else?", "Name change", randomname) as null|text,1,MAX_NAME_LEN)) @@ -856,7 +856,7 @@ var/global/list/multiverse = list() possible = list() if(!link) return - for(var/mob/living/carbon/human/H in living_mob_list) + for(var/mob/living/carbon/human/H in GLOB.living_mob_list) if(md5(H.dna.uni_identity) in link.fingerprints) possible |= H diff --git a/code/game/gamemodes/wizard/raginmages.dm b/code/game/gamemodes/wizard/raginmages.dm index e252800f46a..37d8aed5a39 100644 --- a/code/game/gamemodes/wizard/raginmages.dm +++ b/code/game/gamemodes/wizard/raginmages.dm @@ -128,7 +128,7 @@ if(!candidates.len) message_admins("No applicable clients for the next ragin' mage, asking ghosts instead.") var/time_passed = world.time - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) if(!jobban_isbanned(G, "wizard") && !jobban_isbanned(G, "Syndicate")) spawn(0) switch(alert(G, "Do you wish to be considered for the position of Space Wizard Foundation 'diplomat'?","Please answer in 30 seconds!","Yes","No")) diff --git a/code/game/gamemodes/wizard/rightandwrong.dm b/code/game/gamemodes/wizard/rightandwrong.dm index ef11a84881e..345ccfc877d 100644 --- a/code/game/gamemodes/wizard/rightandwrong.dm +++ b/code/game/gamemodes/wizard/rightandwrong.dm @@ -8,7 +8,7 @@ to_chat(usr, "You summoned [summon_type ? "magic" : "guns"]!") message_admins("[key_name_admin(usr)] summoned [summon_type ? "magic" : "guns"]!") - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) if(H.stat == 2 || !(H.client)) continue if(H.mind) diff --git a/code/game/gamemodes/wizard/soulstone.dm b/code/game/gamemodes/wizard/soulstone.dm index e4e3f683e04..f9224d1746a 100644 --- a/code/game/gamemodes/wizard/soulstone.dm +++ b/code/game/gamemodes/wizard/soulstone.dm @@ -371,7 +371,7 @@ /obj/item/soulstone/proc/getCultGhost(mob/living/carbon/human/T, mob/U) var/mob/dead/observer/chosen_ghost - for(var/mob/dead/observer/ghost in player_list) //We put them back in their body + for(var/mob/dead/observer/ghost in GLOB.player_list) //We put them back in their body if(ghost.mind && ghost.mind.current == T && ghost.client) chosen_ghost = ghost break diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/game/gamemodes/wizard/spellbook.dm index ff101cbb5c1..6ae56a24973 100644 --- a/code/game/gamemodes/wizard/spellbook.dm +++ b/code/game/gamemodes/wizard/spellbook.dm @@ -779,7 +779,7 @@ /obj/item/spellbook/oneuse/mindswap/recoil(mob/user) ..() - if(stored_swap in dead_mob_list) + if(stored_swap in GLOB.dead_mob_list) stored_swap = null if(!stored_swap) stored_swap = user diff --git a/code/game/gamemodes/wizard/wizard.dm b/code/game/gamemodes/wizard/wizard.dm index 18dda0fcbc4..d33fcc48294 100644 --- a/code/game/gamemodes/wizard/wizard.dm +++ b/code/game/gamemodes/wizard/wizard.dm @@ -88,8 +88,8 @@ /datum/game_mode/proc/name_wizard(mob/living/carbon/human/wizard_mob) //Allows the wizard to choose a custom name or go with a random one. Spawn 0 so it does not lag the round starting. - var/wizard_name_first = pick(wizard_first) - var/wizard_name_second = pick(wizard_second) + var/wizard_name_first = pick(GLOB.wizard_first) + var/wizard_name_second = pick(GLOB.wizard_second) var/randomname = "[wizard_name_first] [wizard_name_second]" spawn(0) var/newname = sanitize(copytext(input(wizard_mob, "You are the Space Wizard. Would you like to change your name to something else?", "Name change", randomname) as null|text,1,MAX_NAME_LEN)) diff --git a/code/game/jobs/access.dm b/code/game/jobs/access.dm index 6423960f2f3..4bf351019ea 100644 --- a/code/game/jobs/access.dm +++ b/code/game/jobs/access.dm @@ -522,10 +522,10 @@ var/const/access_trade_sol = 160 rank = src:rank assignment = src:assignment - if( rank in joblist ) + if( rank in GLOB.joblist ) return rank - if( assignment in joblist ) + if( assignment in GLOB.joblist ) return assignment return "Unknown" @@ -587,7 +587,7 @@ proc/FindNameFromID(var/mob/living/carbon/human/H) return ID.registered_name proc/get_all_job_icons() //For all existing HUD icons - return joblist + list("Prisoner") + return GLOB.joblist + list("Prisoner") /obj/proc/GetJobName() //Used in secHUD icon generation var/obj/item/card/id/I diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index 1cdd33672b0..2e532ff6322 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -177,7 +177,7 @@ var/global/datum/controller/occupations/job_master break /datum/controller/occupations/proc/ResetOccupations() - for(var/mob/new_player/player in player_list) + for(var/mob/new_player/player in GLOB.player_list) if((player) && (player.mind)) player.mind.assigned_role = null player.mind.special_role = null @@ -291,7 +291,7 @@ var/global/datum/controller/occupations/job_master A.spawn_positions = 3 //Get the players who are ready - for(var/mob/new_player/player in player_list) + for(var/mob/new_player/player in GLOB.player_list) if(player.ready && player.mind && !player.mind.assigned_role) unassigned += player if(player.client.prefs.randomslot) @@ -461,7 +461,7 @@ var/global/datum/controller/occupations/job_master if(!joined_late) var/turf/T = null var/obj/S = null - for(var/obj/effect/landmark/start/sloc in landmarks_list) + for(var/obj/effect/landmark/start/sloc in GLOB.landmarks_list) if(sloc.name != rank) continue if(locate(/mob/living) in sloc.loc) @@ -562,7 +562,7 @@ var/global/datum/controller/occupations/job_master var/level5 = 0 //banned var/level6 = 0 //account too young var/level7 = 0 //has disability rendering them ineligible - for(var/mob/new_player/player in player_list) + for(var/mob/new_player/player in GLOB.player_list) if(!(player.ready && player.mind && !player.mind.assigned_role)) continue //This player is not ready if(jobban_isbanned(player, job.title)) diff --git a/code/game/jobs/job_exp.dm b/code/game/jobs/job_exp.dm index 552654245dd..7330c20eee6 100644 --- a/code/game/jobs/job_exp.dm +++ b/code/game/jobs/job_exp.dm @@ -50,7 +50,7 @@ var/global/list/role_playtime_requirements = list( var/pline var/datum/job/theirjob var/jtext - for(var/client/C in clients) + for(var/client/C in GLOB.clients) jtext = "No Job" if(C.mob.mind && C.mob.mind.assigned_role) theirjob = job_master.GetJob(C.mob.mind.assigned_role) @@ -212,7 +212,7 @@ var/global/list/role_playtime_requirements = list( if(!establish_db_connection()) return -1 spawn(0) - for(var/client/L in clients) + for(var/client/L in GLOB.clients) if(L.inactivity >= (10 MINUTES)) continue spawn(0) diff --git a/code/game/jobs/job_scaling.dm b/code/game/jobs/job_scaling.dm index 7d8804783f1..89bd8374351 100644 --- a/code/game/jobs/job_scaling.dm +++ b/code/game/jobs/job_scaling.dm @@ -1,6 +1,6 @@ /hook/roundstart/proc/jobscaling() sleep(10 SECONDS) // give everyone time to finish spawning, and the lag to die down - var/playercount = length(clients) + var/playercount = length(GLOB.clients) var/highpop_trigger = 80 if(playercount >= highpop_trigger) diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index c964fd1f688..c2cc979f1dc 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -217,7 +217,7 @@ var/chemicals[0] for(var/re in injection_chems) - var/datum/reagent/temp = chemical_reagents_list[re] + var/datum/reagent/temp = GLOB.chemical_reagents_list[re] if(temp) var/reagent_amount = 0 var/pretty_amount diff --git a/code/game/machinery/alarm.dm b/code/game/machinery/alarm.dm index e9201838763..a6487352cd0 100644 --- a/code/game/machinery/alarm.dm +++ b/code/game/machinery/alarm.dm @@ -189,8 +189,8 @@ /obj/machinery/alarm/New(var/loc, var/dir, var/building = 0) ..() - air_alarms += src - air_alarms = sortAtom(air_alarms) + GLOB.air_alarms += src + GLOB.air_alarms = sortAtom(GLOB.air_alarms) wires = new(src) @@ -211,7 +211,7 @@ first_run() /obj/machinery/alarm/Destroy() - air_alarms -= src + GLOB.air_alarms -= src if(radio_controller) radio_controller.remove_object(src, frequency) radio_connection = null diff --git a/code/game/machinery/atmo_control.dm b/code/game/machinery/atmo_control.dm index 96f0f76fb9b..7ede1d7586d 100644 --- a/code/game/machinery/atmo_control.dm +++ b/code/game/machinery/atmo_control.dm @@ -296,7 +296,7 @@ // Make a list of all available sensors on the same frequency var/list/sensor_list = list() - for(var/obj/machinery/air_sensor/G in machines) + for(var/obj/machinery/air_sensor/G in GLOB.machines) if(!isnull(G.id_tag) && G.frequency == frequency) sensor_list|=G.id_tag if(!sensor_list.len) @@ -317,7 +317,7 @@ if("edit_sensor" in href_list) var/list/sensor_list = list() - for(var/obj/machinery/air_sensor/G in machines) + for(var/obj/machinery/air_sensor/G in GLOB.machines) if(!isnull(G.id_tag) && G.frequency == frequency) sensor_list|=G.id_tag if(!sensor_list.len) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index a0e9ee978dd..426ca39edb6 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -216,15 +216,12 @@ return ..() /obj/machinery/autolathe/proc/AfterMaterialInsert(type_inserted, id_inserted, amount_inserted) - if(ispath(type_inserted, /obj/item/ore/bluespace_crystal)) - use_power(MINERAL_MATERIAL_AMOUNT / 10) - else - switch(id_inserted) - if(MAT_METAL) - flick("autolathe_o",src)//plays metal insertion animation - if(MAT_GLASS) - flick("autolathe_r",src)//plays glass insertion animation - use_power(min(1000, amount_inserted / 100)) + switch(id_inserted) + if(MAT_METAL) + flick("autolathe_o", src)//plays metal insertion animation + if(MAT_GLASS) + flick("autolathe_r", src)//plays glass insertion animation + use_power(min(1000, amount_inserted / 100)) SSnanoui.update_uis(src) /obj/machinery/autolathe/attack_ghost(mob/user) diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index 07f22d8373e..e3b64f1bc1c 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -93,7 +93,7 @@ spawn(100) if(!QDELETED(src)) cancelCameraAlarm() - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.client && M.client.eye == src) M.unset_machine() M.reset_perspective(null) @@ -192,7 +192,7 @@ info = N.notehtml to_chat(U, "You hold \the [itemname] up to the camera ...") U.changeNext_move(CLICK_CD_MELEE) - for(var/mob/O in player_list) + for(var/mob/O in GLOB.player_list) if(istype(O, /mob/living/silicon/ai)) var/mob/living/silicon/ai/AI = O if(AI.control_disabled || (AI.stat == DEAD)) @@ -286,7 +286,7 @@ // now disconnect anyone using the camera //Apparently, this will disconnect anyone even if the camera was re-activated. //I guess that doesn't matter since they can't use it anyway? - for(var/mob/O in player_list) + for(var/mob/O in GLOB.player_list) if(O.client && O.client.eye == src) O.unset_machine() O.reset_perspective(null) diff --git a/code/game/machinery/camera/camera_assembly.dm b/code/game/machinery/camera/camera_assembly.dm index 03ebe757789..5f9aa6f12a1 100644 --- a/code/game/machinery/camera/camera_assembly.dm +++ b/code/game/machinery/camera/camera_assembly.dm @@ -101,7 +101,7 @@ C.auto_turn() C.network = uniquelist(tempnetwork) - tempnetwork = difflist(C.network,restricted_camera_networks) + tempnetwork = difflist(C.network,GLOB.restricted_camera_networks) if(!tempnetwork.len) // Camera isn't on any open network - remove its chunk from AI visibility. cameranet.removeCamera(C) diff --git a/code/game/machinery/camera/tracking.dm b/code/game/machinery/camera/tracking.dm index 76a9518c98b..277cee5beb3 100644 --- a/code/game/machinery/camera/tracking.dm +++ b/code/game/machinery/camera/tracking.dm @@ -120,7 +120,7 @@ if(usr.stat == 2) return list() - for(var/mob/living/M in mob_list) + for(var/mob/living/M in GLOB.mob_list) if(!M.can_track(usr)) continue diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 191f432e756..b0ad5a23b1d 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -912,9 +912,9 @@ newcrew = specific else if(prob(50)) - newcrew = pick(first_names_male) + newcrew = pick(GLOB.first_names_male) else - newcrew = pick(first_names_female) + newcrew = pick(GLOB.first_names_female) if(newcrew) settlers += newcrew alive++ diff --git a/code/game/machinery/computer/card.dm b/code/game/machinery/computer/card.dm index 51c55ffd84a..9bda37b2401 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -153,7 +153,7 @@ var/time_last_changed_position = 0 /obj/machinery/computer/card/proc/can_open_job(datum/job/job) if(job) if(!job_blacklisted_full(job) && !job_blacklisted_partial(job) && job_in_department(job, FALSE)) - if((job.total_positions <= player_list.len * (max_relative_positions / 100))) + if((job.total_positions <= GLOB.player_list.len * (max_relative_positions / 100))) var/delta = (world.time / 10) - time_last_changed_position if((change_position_cooldown < delta) || (opened_positions[job.title] < 0)) return 1 diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index 55a464daf43..4f2d3801526 100644 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -37,7 +37,7 @@ light_color = LIGHT_COLOR_LIGHTBLUE /obj/machinery/computer/communications/New() - shuttle_caller_list += src + GLOB.shuttle_caller_list += src ..() crew_announcement.newscast = 0 @@ -533,21 +533,21 @@ /obj/machinery/computer/communications/Destroy() - shuttle_caller_list -= src + GLOB.shuttle_caller_list -= src SSshuttle.autoEvac() return ..() /obj/item/circuitboard/communications/New() - shuttle_caller_list += src + GLOB.shuttle_caller_list += src ..() /obj/item/circuitboard/communications/Destroy() - shuttle_caller_list -= src + GLOB.shuttle_caller_list -= src SSshuttle.autoEvac() return ..() /proc/print_command_report(text = "", title = "Central Command Update") - for(var/obj/machinery/computer/communications/C in shuttle_caller_list) + for(var/obj/machinery/computer/communications/C in GLOB.shuttle_caller_list) if(!(C.stat & (BROKEN|NOPOWER)) && is_station_contact(C.z)) var/obj/item/paper/P = new /obj/item/paper(C.loc) P.name = "paper- '[title]'" @@ -555,7 +555,7 @@ P.update_icon() C.messagetitle.Add("[title]") C.messagetext.Add(text) - for(var/datum/computer_file/program/comm/P in shuttle_caller_list) + for(var/datum/computer_file/program/comm/P in GLOB.shuttle_caller_list) var/turf/T = get_turf(P.computer) if(T && P.program_state != PROGRAM_STATE_KILLED && is_station_contact(T.z)) if(P.computer) @@ -566,7 +566,7 @@ P.messagetext.Add(text) /proc/print_centcom_report(text = "", title = "Incoming Message") - for(var/obj/machinery/computer/communications/C in shuttle_caller_list) + for(var/obj/machinery/computer/communications/C in GLOB.shuttle_caller_list) if(!(C.stat & (BROKEN|NOPOWER)) && is_admin_level(C.z)) var/obj/item/paper/P = new /obj/item/paper(C.loc) P.name = "paper- '[title]'" @@ -574,7 +574,7 @@ P.update_icon() C.messagetitle.Add("[title]") C.messagetext.Add(text) - for(var/datum/computer_file/program/comm/P in shuttle_caller_list) + for(var/datum/computer_file/program/comm/P in GLOB.shuttle_caller_list) var/turf/T = get_turf(P.computer) if(T && P.program_state != PROGRAM_STATE_KILLED && is_admin_level(T.z)) if(P.computer) diff --git a/code/game/machinery/computer/depot.dm b/code/game/machinery/computer/depot.dm index 78a8a8a69ab..9e720a4c83d 100644 --- a/code/game/machinery/computer/depot.dm +++ b/code/game/machinery/computer/depot.dm @@ -389,7 +389,7 @@ /obj/machinery/computer/syndicate_depot/teleporter/proc/choosetarget() var/list/eligible_turfs = list() - for(var/obj/item/radio/beacon/R in beacons) + for(var/obj/item/radio/beacon/R in GLOB.beacons) var/turf/T = get_turf(R) if(!is_station_level(T.z)) continue diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index 4785c681582..fb09b40f440 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -535,7 +535,7 @@ if(prob(10/severity)) switch(rand(1,6)) if(1) - R.fields["name"] = "[pick(pick(first_names_male), pick(first_names_female))] [pick(last_names)]" + R.fields["name"] = "[pick(pick(GLOB.first_names_male), pick(GLOB.first_names_female))] [pick(GLOB.last_names)]" if(2) R.fields["sex"] = pick("Male", "Female") if(3) diff --git a/code/game/machinery/computer/pod.dm b/code/game/machinery/computer/pod.dm index 4cbf105c100..fdb9f934516 100644 --- a/code/game/machinery/computer/pod.dm +++ b/code/game/machinery/computer/pod.dm @@ -39,7 +39,7 @@ loopings += ident_tag loopings[ident_tag] = 0 break - for(var/obj/machinery/door/poddoor/M in airlocks) + for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) if(M.z != src.z) continue for(var/ident_tag in id_tags) if((M.id_tag == ident_tag) && !(ident_tag in synced) && !(ident_tag in door_only_tags)) @@ -65,7 +65,7 @@ loopings[ident_tag] = 0 break if(!(ident_tag in synced)) - for(var/obj/machinery/door/poddoor/M in airlocks) + for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) if(M.z != src.z) continue if((M.id_tag == ident_tag) && !(ident_tag in synced) && !(ident_tag in door_only_tags)) door_only_tags += ident_tag @@ -86,7 +86,7 @@ visible_message("Cannot locate any mass driver of that ID. Cancelling firing sequence!") return - for(var/obj/machinery/door/poddoor/M in airlocks) + for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) if(M.z != src.z) continue if(M.id_tag == ident_tag) spawn() @@ -100,7 +100,7 @@ M.drive() sleep(50) - for(var/obj/machinery/door/poddoor/M in airlocks) + for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) if(M.z != src.z) continue if(M.id_tag == ident_tag) spawn() @@ -240,7 +240,7 @@ maxtimes[ident_tag] = min(max(round(maxtimes[ident_tag]), 0), 120) if(href_list["door"]) var/ident_tag = href_list["driver"] - for(var/obj/machinery/door/poddoor/M in airlocks) + for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) if(M.z != src.z) continue if(M.id_tag == ident_tag) spawn() @@ -313,7 +313,7 @@ P.failchance = 0//So it has no fail chance when teleporting. spawn_marauder.Remove(P.target) - for(var/obj/machinery/door/poddoor/M in airlocks) + for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) if(M.z != src.z) continue if(M.id_tag == ident_tag) spawn() @@ -326,7 +326,7 @@ M.drive() sleep(50) - for(var/obj/machinery/door/poddoor/M in airlocks) + for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) if(M.z != src.z) continue if(M.id_tag == ident_tag) spawn() diff --git a/code/game/machinery/computer/power.dm b/code/game/machinery/computer/power.dm index 2fa4e6f1177..a5198da6e56 100644 --- a/code/game/machinery/computer/power.dm +++ b/code/game/machinery/computer/power.dm @@ -13,8 +13,8 @@ /obj/machinery/computer/monitor/New() ..() - power_monitors += src - power_monitors = sortAtom(power_monitors) + GLOB.power_monitors += src + GLOB.power_monitors = sortAtom(GLOB.power_monitors) power_monitor = new(src) /obj/machinery/computer/monitor/Initialize() @@ -23,7 +23,7 @@ powernet = find_powernet() /obj/machinery/computer/monitor/Destroy() - power_monitors -= src + GLOB.power_monitors -= src powermonitor_repository.update_cache() QDEL_NULL(power_monitor) return ..() diff --git a/code/game/machinery/computer/prisoner.dm b/code/game/machinery/computer/prisoner.dm index 613d6dcd90e..ea684d9596b 100644 --- a/code/game/machinery/computer/prisoner.dm +++ b/code/game/machinery/computer/prisoner.dm @@ -19,11 +19,11 @@ return src.attack_hand(user) /obj/machinery/computer/prisoner/New() - prisoncomputer_list += src + GLOB.prisoncomputer_list += src return ..() /obj/machinery/computer/prisoner/Destroy() - prisoncomputer_list -= src + GLOB.prisoncomputer_list -= src return ..() /obj/machinery/computer/prisoner/attack_hand(var/mob/user as mob) @@ -46,7 +46,7 @@ dat += text("Insert Prisoner ID
") var/turf/Tr = null dat += "
Chemical Implants
" - for(var/obj/item/implant/chem/C in tracked_implants) + for(var/obj/item/implant/chem/C in GLOB.tracked_implants) Tr = get_turf(C) if((Tr) && (Tr.z != src.z)) continue//Out of range if(!C.implanted) continue @@ -59,7 +59,7 @@ ********************************
"} // END AUTOFIX dat += "
Tracking Implants
" - for(var/obj/item/implant/tracking/T in tracked_implants) + for(var/obj/item/implant/tracking/T in GLOB.tracked_implants) Tr = get_turf(T) if((Tr) && (Tr.z != src.z)) continue//Out of range if(!T.implanted) continue diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm index a3d9455a6ce..5d4e838db38 100644 --- a/code/game/machinery/computer/robot.dm +++ b/code/game/machinery/computer/robot.dm @@ -172,7 +172,7 @@ message_admins("[key_name_admin(usr)] detonated all cyborgs!") log_game("\[key_name(usr)] detonated all cyborgs!") - for(var/mob/living/silicon/robot/R in mob_list) + for(var/mob/living/silicon/robot/R in GLOB.mob_list) if(istype(R, /mob/living/silicon/robot/drone)) continue // Ignore antagonistic cyborgs @@ -190,7 +190,7 @@ /obj/machinery/computer/robotics/proc/get_cyborgs(var/mob/operator) var/list/robots = list() - for(var/mob/living/silicon/robot/R in mob_list) + for(var/mob/living/silicon/robot/R in GLOB.mob_list) // Ignore drones if(istype(R, /mob/living/silicon/robot/drone)) continue @@ -240,6 +240,6 @@ /obj/machinery/computer/robotics/proc/get_cyborg_by_name(var/name) if(!name) return - for(var/mob/living/silicon/robot/R in mob_list) + for(var/mob/living/silicon/robot/R in GLOB.mob_list) if(R.name == name) return R diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 5c26f423e96..e31fc239580 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -149,9 +149,9 @@ update_all_mob_security_hud() setTemp("

All records deleted.

") if("del_alllogs2") - if(cell_logs.len) + if(GLOB.cell_logs.len) setTemp("

All cell logs deleted.

") - cell_logs.Cut() + GLOB.cell_logs.Cut() else to_chat(usr, "Error; No cell logs to delete.") if("del_r2") @@ -207,7 +207,7 @@ if("rank") if(active1) active1.fields["rank"] = temp_href[2] - if(temp_href[2] in joblist) + if(temp_href[2] in GLOB.joblist) active1.fields["real_rank"] = temp_href[2] if(href_list["scan"]) @@ -385,8 +385,8 @@ */ else if(href_list["printlogs"]) - if(cell_logs.len && !printing) - var/obj/item/paper/P = input(usr, "Select log to print", "Available Cell Logs") as null|anything in cell_logs + if(GLOB.cell_logs.len && !printing) + var/obj/item/paper/P = input(usr, "Select log to print", "Available Cell Logs") as null|anything in GLOB.cell_logs if(!P) return 0 printing = 1 @@ -500,7 +500,7 @@ //This was so silly before the change. Now it actually works without beating your head against the keyboard. /N if(istype(active1, /datum/data/record) && L.Find(rank)) var/list/buttons = list() - for(var/rank in joblist) + for(var/rank in GLOB.joblist) buttons[++buttons.len] = list("name" = rank, "icon" = null, "href" = "rank=[rank]", "status" = (active1.fields["rank"] == rank ? "selected" : null)) setTemp("

Rank

", buttons) else @@ -566,7 +566,7 @@ if(prob(10/severity)) switch(rand(1,6)) if(1) - R.fields["name"] = "[pick(pick(first_names_male), pick(first_names_female))] [pick(last_names)]" + R.fields["name"] = "[pick(pick(GLOB.first_names_male), pick(GLOB.first_names_female))] [pick(GLOB.last_names)]" if(2) R.fields["sex"] = pick("Male", "Female") if(3) diff --git a/code/game/machinery/computer/skills.dm b/code/game/machinery/computer/skills.dm index ff0fc039efe..ac10eb6e22d 100644 --- a/code/game/machinery/computer/skills.dm +++ b/code/game/machinery/computer/skills.dm @@ -121,7 +121,7 @@ if(PDA_Manifest && PDA_Manifest.len) PDA_Manifest.Cut() active1.fields["rank"] = temp_list[2] - if(temp_list[2] in joblist) + if(temp_list[2] in GLOB.joblist) active1.fields["real_rank"] = temp_list[2] if(href_list["scan"]) @@ -278,7 +278,7 @@ //This was so silly before the change. Now it actually works without beating your head against the keyboard. /N if(istype(active1, /datum/data/record) && L.Find(rank)) var/list/buttons = list() - for(var/rank in joblist) + for(var/rank in GLOB.joblist) buttons[++buttons.len] = list("name" = rank, "icon" = null, "val" = "rank=[rank]", "status" = (active1.fields["rank"] == rank ? "selected" : null)) setTemp("

Rank

", buttons) else @@ -303,7 +303,7 @@ if(prob(10/severity)) switch(rand(1,6)) if(1) - R.fields["name"] = "[pick(pick(first_names_male), pick(first_names_female))] [pick(last_names)]" + R.fields["name"] = "[pick(pick(GLOB.first_names_male), pick(GLOB.first_names_female))] [pick(GLOB.last_names)]" if(2) R.fields["sex"] = pick("Male", "Female") if(3) diff --git a/code/game/machinery/computer/syndicate_specops_shuttle.dm b/code/game/machinery/computer/syndicate_specops_shuttle.dm index d25f86acb16..9aaf1b39517 100644 --- a/code/game/machinery/computer/syndicate_specops_shuttle.dm +++ b/code/game/machinery/computer/syndicate_specops_shuttle.dm @@ -85,10 +85,10 @@ var/syndicate_elite_shuttle_timeleft = 0 sleep(10) var/spawn_marauder[] = new() - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name == "Marauder Entry") spawn_marauder.Add(L) - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name == "Marauder Exit") var/obj/effect/portal/P = new(L.loc) P.invisibility = 101//So it is not seen by anyone. @@ -133,7 +133,7 @@ var/syndicate_elite_shuttle_timeleft = 0 elite_squad.readyreset()//Reset firealarm after the team launched. //End Marauder launchpad. - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name == "Syndicate Breach Area") explosion(L.loc,4,6,8,10,0) diff --git a/code/game/machinery/computer/telecrystalconsoles.dm b/code/game/machinery/computer/telecrystalconsoles.dm index 4006e005b12..2a7e2f71bee 100644 --- a/code/game/machinery/computer/telecrystalconsoles.dm +++ b/code/game/machinery/computer/telecrystalconsoles.dm @@ -151,7 +151,7 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F /obj/machinery/computer/telecrystals/boss/proc/getDangerous()//This scales the TC assigned with the round population. ..() var/danger - danger = player_list.len + danger = GLOB.player_list.len while(!IsMultiple(++danger,10))//Just round up to the nearest multiple of ten. scaleTC(danger) diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index 953a476d1a8..f9c1330e596 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -705,7 +705,7 @@ obj/item/circuitboard/rdserver origin_tech = "programming=3;engineering=4;bluespace=4;materials=4" frame_desc = "Requires 3 Bluespace Crystals and 1 Matter Bin." req_components = list( - /obj/item/ore/bluespace_crystal = 3, + /obj/item/stack/ore/bluespace_crystal = 3, /obj/item/stock_parts/matter_bin = 1) /obj/item/circuitboard/teleporter_station @@ -715,7 +715,7 @@ obj/item/circuitboard/rdserver origin_tech = "programming=4;engineering=4;bluespace=4;plasmatech=3" frame_desc = "Requires 2 Bluespace Crystals, 2 Capacitors and 1 Console Screen." req_components = list( - /obj/item/ore/bluespace_crystal = 2, + /obj/item/stack/ore/bluespace_crystal = 2, /obj/item/stock_parts/capacitor = 2, /obj/item/stock_parts/console_screen = 1) @@ -726,7 +726,7 @@ obj/item/circuitboard/rdserver origin_tech = "programming=3;engineering=4;bluespace=4;materials=4" frame_desc = "Requires 3 Bluespace Crystals and 1 Matter Bin." req_components = list( - /obj/item/ore/bluespace_crystal = 3, + /obj/item/stack/ore/bluespace_crystal = 3, /obj/item/stock_parts/matter_bin = 1) var/target @@ -737,7 +737,7 @@ obj/item/circuitboard/rdserver origin_tech = "programming=4;engineering=3;plasmatech=4;bluespace=4" frame_desc = "Requires 2 Bluespace Crystals, 1 Capacitor, 1 piece of cable and 1 Console Screen." req_components = list( - /obj/item/ore/bluespace_crystal = 2, + /obj/item/stack/ore/bluespace_crystal = 2, /obj/item/stock_parts/capacitor = 1, /obj/item/stack/cable_coil = 1, /obj/item/stock_parts/console_screen = 1) @@ -749,7 +749,7 @@ obj/item/circuitboard/rdserver origin_tech = "programming=3;engineering=3;plasmatech=3;bluespace=4" frame_desc = "Requires 1 Bluespace Crystal, 1 Capacitor, 1 piece of cable and 1 Manipulator." req_components = list( - /obj/item/ore/bluespace_crystal = 1, + /obj/item/stack/ore/bluespace_crystal = 1, /obj/item/stock_parts/capacitor = 1, /obj/item/stock_parts/manipulator = 1, /obj/item/stack/cable_coil = 1) diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index 332dc2854e1..af63a92e2ff 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -336,7 +336,7 @@ continue O.forceMove(src) - for(var/obj/machinery/computer/cloning/cloner in machines) + for(var/obj/machinery/computer/cloning/cloner in GLOB.machines) for(var/datum/dna2/record/R in cloner.records) if(occupant.mind == locate(R.mind)) cloner.records.Remove(R) @@ -434,7 +434,7 @@ control_computer.frozen_crew += "[occupant.real_name]" var/ailist[] = list() - for(var/mob/living/silicon/ai/A in living_mob_list) + for(var/mob/living/silicon/ai/A in GLOB.living_mob_list) ailist += A if(ailist.len) var/mob/living/silicon/ai/announcer = pick(ailist) @@ -607,7 +607,7 @@ time_entered = world.time if(findtext("[E.key]","@",1,2)) var/FT = replacetext(E.key, "@", "") - for(var/mob/dead/observer/Gh in respawnable_list) //this may not be foolproof but it seemed like a better option than 'in world' + for(var/mob/dead/observer/Gh in GLOB.respawnable_list) //this may not be foolproof but it seemed like a better option than 'in world' if(Gh.key == FT) if(Gh.client && Gh.client.holder) //just in case someone has a byond name with @ at the start, which I don't think is even possible but whatever to_chat(Gh, "Warning: Your body has entered cryostorage.") @@ -761,7 +761,7 @@ if(istype(person_to_cryo.loc, /obj/machinery/cryopod)) return 0 var/list/free_cryopods = list() - for(var/obj/machinery/cryopod/P in machines) + for(var/obj/machinery/cryopod/P in GLOB.machines) if(!P.occupant && istype(get_area(P), /area/crew_quarters/sleep)) free_cryopods += P var/obj/machinery/cryopod/target_cryopod = null diff --git a/code/game/machinery/door_control.dm b/code/game/machinery/door_control.dm index 879773c3850..9916c0cc64c 100644 --- a/code/game/machinery/door_control.dm +++ b/code/game/machinery/door_control.dm @@ -113,7 +113,7 @@ D.safe = 1 else - for(var/obj/machinery/door/poddoor/M in airlocks) + for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) if(M.id_tag == id) if(M.density) spawn( 0 ) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 0831293ad29..0fd3d27d3d4 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -132,7 +132,7 @@ About the new airlock wires panel: update_icon() /obj/machinery/door/airlock/proc/update_other_id() - for(var/obj/machinery/door/airlock/A in airlocks) + for(var/obj/machinery/door/airlock/A in GLOB.airlocks) if(A.closeOtherId == closeOtherId && A != src) closeOther = A break diff --git a/code/game/machinery/doors/brigdoors.dm b/code/game/machinery/doors/brigdoors.dm index 43156d2b484..7f785b6f3eb 100644 --- a/code/game/machinery/doors/brigdoors.dm +++ b/code/game/machinery/doors/brigdoors.dm @@ -38,7 +38,7 @@ if(!logname || !logcharges) return 0 - for(var/obj/machinery/computer/prisoner/C in prisoncomputer_list) + for(var/obj/machinery/computer/prisoner/C in GLOB.prisoncomputer_list) var/obj/item/paper/P = new /obj/item/paper(C.loc) P.name = "[id] log - [logname] [station_time_timestamp()]" P.info = "
[id] - Brig record



" @@ -52,7 +52,7 @@ This log file was generated automatically upon activation of a cell timer."} playsound(C.loc, "sound/goonstation/machines/printer_dotmatrix.ogg", 50, 1) - cell_logs += P + GLOB.cell_logs += P var/datum/data/record/R = find_security_record("name", logname) Radio.autosay("Detainee [logname] has been incarcerated for [seconds_to_time(timetoset / 10)] for the charges of, '[logcharges]'. \ @@ -85,11 +85,11 @@ pixel_y = ((dir & 3)? (dir ==1 ? 32 : -32) : (0)) spawn(20) - for(var/obj/machinery/door/window/brigdoor/M in airlocks) + for(var/obj/machinery/door/window/brigdoor/M in GLOB.airlocks) if(M.id == id) targets += M - for(var/obj/machinery/flasher/F in machines) + for(var/obj/machinery/flasher/F in GLOB.machines) if(F.id == id) targets += F @@ -97,7 +97,7 @@ if(C.id == id) targets += C - for(var/obj/machinery/treadmill_monitor/T in machines) + for(var/obj/machinery/treadmill_monitor/T in GLOB.machines) if(T.id == id) targets += T diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index 563e4eb49f2..706b1a82ce0 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -37,7 +37,7 @@ set_init_door_layer() update_dir() update_freelook_sight() - airlocks += src + GLOB.airlocks += src spark_system = new /datum/effect_system/spark_spread spark_system.set_up(2, 1, src) @@ -72,7 +72,7 @@ density = 0 air_update_turf(1) update_freelook_sight() - airlocks -= src + GLOB.airlocks -= src if(autoclose_timer) deltimer(autoclose_timer) autoclose_timer = 0 diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index c5fd19a1cfc..1d33a1ae795 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -134,7 +134,7 @@ Class Procs: else START_DEFERRED_PROCESSING(SSmachines, src) else - fast_processing += src + GLOB.fast_processing += src isprocessing = TRUE // all of these isprocessing = TRUE can be removed when the PS is dead // gotta go fast @@ -143,7 +143,7 @@ Class Procs: return speed_process = 1 STOP_PROCESSING(SSmachines, src) - fast_processing += src + GLOB.fast_processing += src isprocessing = TRUE // gotta go slow @@ -152,20 +152,20 @@ Class Procs: return speed_process = 0 START_PROCESSING(SSmachines, src) - fast_processing -= src + GLOB.fast_processing -= src /obj/machinery/New() //new if(!armor) armor = list(melee = 25, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0) - machines += src + GLOB.machines += src ..() /obj/machinery/Destroy() if(myArea) myArea = null - fast_processing -= src + GLOB.fast_processing -= src STOP_PROCESSING(SSmachines, src) - machines -= src + GLOB.machines -= src return ..() /obj/machinery/proc/locate_machinery() diff --git a/code/game/machinery/navbeacon.dm b/code/game/machinery/navbeacon.dm index 378ebce8eb7..f278ee2adda 100644 --- a/code/game/machinery/navbeacon.dm +++ b/code/game/machinery/navbeacon.dm @@ -29,16 +29,16 @@ if(!codes || !codes.len) log_runtime(EXCEPTION("Empty codes datum at ([x],[y],[z])"), src, list("codes_txt: '[codes_txt]'")) if("patrol" in codes) - if(!navbeacons["[z]"]) - navbeacons["[z]"] = list() - navbeacons["[z]"] += src //Register with the patrol list! + if(!GLOB.navbeacons["[z]"]) + GLOB.navbeacons["[z]"] = list() + GLOB.navbeacons["[z]"] += src //Register with the patrol list! if("delivery" in codes) - deliverybeacons += src - deliverybeacontags += location + GLOB.deliverybeacons += src + GLOB.deliverybeacontags += location /obj/machinery/navbeacon/Destroy() - navbeacons["[z]"] -= src //Remove from beacon list, if in one. - deliverybeacons -= src + GLOB.navbeacons["[z]"] -= src //Remove from beacon list, if in one. + GLOB.deliverybeacons -= src return ..() /obj/machinery/navbeacon/serialize() diff --git a/code/game/machinery/quantum_pad.dm b/code/game/machinery/quantum_pad.dm index 672402ac351..b58e9d12c84 100644 --- a/code/game/machinery/quantum_pad.dm +++ b/code/game/machinery/quantum_pad.dm @@ -18,7 +18,7 @@ ..() component_parts = list() component_parts += new /obj/item/circuitboard/quantumpad(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) + component_parts += new /obj/item/stack/ore/bluespace_crystal/artificial(null) component_parts += new /obj/item/stock_parts/capacitor(null) component_parts += new /obj/item/stock_parts/manipulator(null) component_parts += new /obj/item/stack/cable_coil(null, 1) diff --git a/code/game/machinery/requests_console.dm b/code/game/machinery/requests_console.dm index 3aae4af4405..e3c51f9c375 100644 --- a/code/game/machinery/requests_console.dm +++ b/code/game/machinery/requests_console.dm @@ -150,7 +150,7 @@ var/list/obj/machinery/requests_console/allConsoles = list() data["assist_dept"] = req_console_assistance data["supply_dept"] = req_console_supplies data["info_dept"] = req_console_information - data["ship_dept"] = TAGGERLOCATIONS + data["ship_dept"] = GLOB.TAGGERLOCATIONS data["message"] = message data["recipient"] = recipient @@ -243,7 +243,7 @@ var/list/obj/machinery/requests_console/allConsoles = list() if(href_list["shipSelect"]) ship_tag_name = href_list["shipSelect"] - ship_tag_index = TAGGERLOCATIONS.Find(ship_tag_name) + ship_tag_index = GLOB.TAGGERLOCATIONS.Find(ship_tag_name) //Handle Shipping Label Printing if(href_list["printLabel"]) diff --git a/code/game/machinery/syndicatebeacon.dm b/code/game/machinery/syndicatebeacon.dm index dacb5f14f46..304dc7dc639 100644 --- a/code/game/machinery/syndicatebeacon.dm +++ b/code/game/machinery/syndicatebeacon.dm @@ -126,7 +126,7 @@ if(user) to_chat(user, "The connected wire doesn't have enough current.") return - for(var/obj/singularity/singulo in singularities) + for(var/obj/singularity/singulo in GLOB.singularities) if(singulo.z == z) singulo.target = src icon_state = "[icontype]1" diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index b5806d1472e..fda550217ad 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -39,7 +39,7 @@ /obj/machinery/syndicatebomb/process() if(!active) - fast_processing -= src + GLOB.fast_processing -= src detonation_timer = null next_beep = null countdown.stop() @@ -73,7 +73,7 @@ if(defused && payload in src) payload.defuse() countdown.stop() - fast_processing -= src + GLOB.fast_processing -= src /obj/machinery/syndicatebomb/New() wires = new(src) @@ -86,7 +86,7 @@ /obj/machinery/syndicatebomb/Destroy() QDEL_NULL(wires) QDEL_NULL(countdown) - fast_processing -= src + GLOB.fast_processing -= src return ..() /obj/machinery/syndicatebomb/examine(mob/user) @@ -205,7 +205,7 @@ /obj/machinery/syndicatebomb/proc/activate() active = TRUE - fast_processing += src + GLOB.fast_processing += src countdown.start() next_beep = world.time + 10 detonation_timer = world.time + (timer_set * 10) @@ -546,7 +546,7 @@ /obj/item/syndicatedetonator/attack_self(mob/user) if(timer < world.time) - for(var/obj/machinery/syndicatebomb/B in machines) + for(var/obj/machinery/syndicatebomb/B in GLOB.machines) if(B.active) B.detonation_timer = world.time + BUTTON_DELAY detonated++ diff --git a/code/game/machinery/teleporter.dm b/code/game/machinery/teleporter.dm index 53148d9de6d..d7bf8f1b329 100644 --- a/code/game/machinery/teleporter.dm +++ b/code/game/machinery/teleporter.dm @@ -178,7 +178,7 @@ var/list/L = list() var/list/areaindex = list() - for(var/obj/item/radio/beacon/R in beacons) + for(var/obj/item/radio/beacon/R in GLOB.beacons) var/turf/T = get_turf(R) if(!T) continue @@ -193,7 +193,7 @@ areaindex[tmpname] = 1 L[tmpname] = R - for(var/obj/item/implant/tracking/I in tracked_implants) + for(var/obj/item/implant/tracking/I in GLOB.tracked_implants) if(!I.implanted || !ismob(I.loc)) continue else @@ -281,9 +281,7 @@ link_power_station() component_parts = list() component_parts += new /obj/item/circuitboard/teleporter_hub(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) + component_parts += new /obj/item/stack/ore/bluespace_crystal/artificial(null, 3) component_parts += new /obj/item/stock_parts/matter_bin(null) RefreshParts() @@ -291,9 +289,7 @@ ..() component_parts = list() component_parts += new /obj/item/circuitboard/teleporter_hub(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) + component_parts += new /obj/item/stack/ore/bluespace_crystal/artificial(null, 3) component_parts += new /obj/item/stock_parts/matter_bin/super(null) RefreshParts() @@ -478,8 +474,7 @@ ..() component_parts = list() component_parts += new /obj/item/circuitboard/teleporter_station(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) + component_parts += new /obj/item/stack/ore/bluespace_crystal/artificial(null, 2) component_parts += new /obj/item/stock_parts/capacitor(null) component_parts += new /obj/item/stock_parts/capacitor(null) component_parts += new /obj/item/stock_parts/console_screen(null) diff --git a/code/game/mecha/equipment/tools/mining_tools.dm b/code/game/mecha/equipment/tools/mining_tools.dm index 546bb6ae269..63e70626a8d 100644 --- a/code/game/mecha/equipment/tools/mining_tools.dm +++ b/code/game/mecha/equipment/tools/mining_tools.dm @@ -73,7 +73,7 @@ if(locate(/obj/item/mecha_parts/mecha_equipment/hydraulic_clamp) in chassis.equipment) var/obj/structure/ore_box/ore_box = locate(/obj/structure/ore_box) in chassis:cargo if(ore_box) - for(var/obj/item/ore/ore in range(1, chassis)) + for(var/obj/item/stack/ore/ore in range(1, chassis)) if(get_dir(chassis, ore) & chassis.dir) ore.Move(ore_box) diff --git a/code/game/mecha/equipment/tools/work_tools.dm b/code/game/mecha/equipment/tools/work_tools.dm index ca327fe6ef7..b63bb4fc40c 100644 --- a/code/game/mecha/equipment/tools/work_tools.dm +++ b/code/game/mecha/equipment/tools/work_tools.dm @@ -198,11 +198,11 @@ usesound = 'sound/items/Deconstruct.ogg' /obj/item/mecha_parts/mecha_equipment/rcd/New() - rcd_list += src + GLOB.rcd_list += src ..() /obj/item/mecha_parts/mecha_equipment/rcd/Destroy() - rcd_list -= src + GLOB.rcd_list -= src return ..() /obj/item/mecha_parts/mecha_equipment/rcd/action(atom/target) diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 65118f8c491..86640958a72 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -39,7 +39,7 @@ /obj/machinery/mecha_part_fabricator/New() var/datum/component/material_container/materials = AddComponent(/datum/component/material_container, list(MAT_METAL, MAT_GLASS, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_PLASMA, MAT_URANIUM, MAT_BANANIUM, MAT_TRANQUILLITE, MAT_TITANIUM, MAT_BLUESPACE), 0, - FALSE, list(/obj/item/stack, /obj/item/ore/bluespace_crystal), CALLBACK(src, .proc/is_insertion_ready), CALLBACK(src, .proc/AfterMaterialInsert)) + FALSE, list(/obj/item/stack, /obj/item/stack/ore/bluespace_crystal), CALLBACK(src, .proc/is_insertion_ready), CALLBACK(src, .proc/AfterMaterialInsert)) materials.precise_insertion = TRUE ..() component_parts = list() diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index dd7993247b1..41f60361831 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -95,9 +95,9 @@ processing_objects.Add(src) removeVerb(/obj/mecha/verb/disconnect_from_port) - poi_list |= src + GLOB.poi_list |= src log_message("[src] created.") - mechas_list += src //global mech list + GLOB.mechas_list += src //global mech list prepare_huds() for(var/datum/atom_hud/data/diagnostic/diag_hud in huds) diag_hud.add_to_hud(src) @@ -616,7 +616,7 @@ QDEL_NULL(internal_tank) processing_objects.Remove(src) - poi_list.Remove(src) + GLOB.poi_list.Remove(src) equipment.Cut() cell = null internal_tank = null @@ -628,7 +628,7 @@ cabin_air = null QDEL_NULL(spark_system) - mechas_list -= src //global mech list + GLOB.mechas_list -= src //global mech list return ..() /obj/mecha/ex_act(severity) diff --git a/code/game/mecha/mecha_construction_paths.dm b/code/game/mecha/mecha_construction_paths.dm index d3b88c2b24c..59de4cc45b4 100644 --- a/code/game/mecha/mecha_construction_paths.dm +++ b/code/game/mecha/mecha_construction_paths.dm @@ -1,3 +1,5 @@ +#define STANDARD_STACK_AMOUNT 5 + //////////////////////////////// ///// Construction datums ////// //////////////////////////////// @@ -30,11 +32,11 @@ return 0 else if(istype(used_atom, /obj/item/stack)) var/obj/item/stack/S = used_atom - if(S.amount < 5) + if(S.amount < STANDARD_STACK_AMOUNT) to_chat(user, ("There's not enough material in this stack.")) return 0 else - S.use(5) + S.use(STANDARD_STACK_AMOUNT) return 1 /datum/construction/reversible/mecha/custom_action(index as num, diff as num, atom/used_atom, mob/user as mob) @@ -65,11 +67,11 @@ return 0 else if(istype(used_atom, /obj/item/stack)) var/obj/item/stack/S = used_atom - if(S.amount < 5) + if(S.amount < STANDARD_STACK_AMOUNT) to_chat(user, ("There's not enough material in this stack.")) return 0 else - S.use(5) + S.use(STANDARD_STACK_AMOUNT) return 1 @@ -1289,7 +1291,7 @@ "backkey"=/obj/item/crowbar, "desc"="The bluespace crystal is installed."), //10 - list("key"=/obj/item/ore/bluespace_crystal, + list("key"=/obj/item/stack/ore/bluespace_crystal, "backkey"=/obj/item/screwdriver, "desc"="Super capacitor is secured."), //11 @@ -1467,23 +1469,22 @@ holder.icon_state = "phazon12" if(10) if(diff==FORWARD) - user.visible_message("[user] installs the bluespace crystal.", "You install the bluespace crystal.") - qdel(used_atom) + user.visible_message("[user] installs the bluespace crystal.", "You install the bluespace crystals.") holder.icon_state = "phazon15" else user.visible_message("[user] unsecures the super capacitor from the [holder].", "You unsecure the super capacitor from the [holder].") holder.icon_state = "phazon13" if(9) if(diff==FORWARD) - user.visible_message("[user] connects the bluespace crystal.", "You connect the bluespace crystal.") + user.visible_message("[user] connects the bluespace crystal.", "You connect the bluespace crystals.") holder.icon_state = "phazon16" else user.visible_message("[user] removes the bluespace crystal from the [holder].", "You remove the bluespace crystal from the [holder].") - new /obj/item/ore/bluespace_crystal(get_turf(holder)) + new /obj/item/stack/ore/bluespace_crystal(get_turf(holder), new_amount = 5) holder.icon_state = "phazon14" if(8) if(diff==FORWARD) - user.visible_message("[user] engages the bluespace crystal.", "You engage the bluespace crystal.") + user.visible_message("[user] engages the bluespace crystal.", "You engage the bluespace crystals.") holder.icon_state = "phazon17" else user.visible_message("[user] disconnects the bluespace crystal from the [holder].", "You disconnect the bluespace crystal from the [holder].") @@ -1493,7 +1494,7 @@ user.visible_message("[user] installs the phase armor layer to the [holder].", "You install the phase armor layer to the [holder].") holder.icon_state = "phazon18" else - user.visible_message("[user] disengages the bluespace crystal.", "You disengage the bluespace crystal.") + user.visible_message("[user] disengages the bluespace crystal.", "You disengage the bluespace crystals.") holder.icon_state = "phazon16" if(6) if(diff==FORWARD) diff --git a/code/game/objects/effects/anomalies.dm b/code/game/objects/effects/anomalies.dm index 90e40052e23..41d2c256c2b 100644 --- a/code/game/objects/effects/anomalies.dm +++ b/code/game/objects/effects/anomalies.dm @@ -18,11 +18,11 @@ var/new_frequency = sanitize_frequency(rand(PUBLIC_LOW_FREQ, PUBLIC_HIGH_FREQ)) aSignal.set_frequency(new_frequency) - poi_list |= src + GLOB.poi_list |= src /obj/effect/anomaly/Destroy() QDEL_NULL(aSignal) - poi_list.Remove(src) + GLOB.poi_list.Remove(src) return ..() /obj/effect/anomaly/proc/anomalyEffect() diff --git a/code/game/objects/effects/decals/Cleanable/misc.dm b/code/game/objects/effects/decals/Cleanable/misc.dm index f9ac4e6ae36..aef1999ff69 100644 --- a/code/game/objects/effects/decals/Cleanable/misc.dm +++ b/code/game/objects/effects/decals/Cleanable/misc.dm @@ -1,197 +1,203 @@ -/obj/effect/decal/cleanable/generic - name = "clutter" - desc = "Someone should clean that up." - gender = PLURAL - density = FALSE - anchored = TRUE - layer = TURF_LAYER - icon = 'icons/obj/objects.dmi' - icon_state = "shards" - -/obj/effect/decal/cleanable/ash - name = "ashes" - desc = "Ashes to ashes, dust to dust, and into space." - gender = PLURAL - icon = 'icons/obj/objects.dmi' - icon_state = "ash" - anchored = TRUE - -/obj/effect/decal/cleanable/ash/Initialize() - . = ..() - reagents.add_reagent("ash", 10) - -/obj/effect/decal/cleanable/dirt - name = "dirt" - desc = "Someone should clean that up." - gender = PLURAL - density = FALSE - anchored = TRUE - layer = TURF_LAYER - icon = 'icons/effects/effects.dmi' - icon_state = "dirt" - mouse_opacity = MOUSE_OPACITY_TRANSPARENT - -/obj/effect/decal/cleanable/dirt/blackpowder - name = "black powder" - mouse_opacity = MOUSE_OPACITY_ICON - noscoop = TRUE - -/obj/effect/decal/cleanable/dirt/blackpowder/Initialize() - . = ..() - reagents.add_reagent("blackpowder", 40) // size 2 explosion when activated - -/obj/effect/decal/cleanable/flour - name = "flour" - desc = "It's still good. Four second rule!" - gender = PLURAL - density = FALSE - anchored = TRUE - layer = TURF_LAYER - icon = 'icons/effects/effects.dmi' - icon_state = "flour" - -/obj/effect/decal/cleanable/flour/foam - name = "Fire fighting foam" - desc = "It's foam." - color = "#EBEBEB" - -/obj/effect/decal/cleanable/flour/foam/Initialize() - . = ..() - QDEL_IN(src, 15 SECONDS) - -/obj/effect/decal/cleanable/greenglow - name = "glowing goo" - desc = "Jeez. I hope that's not for lunch." - gender = PLURAL - density = FALSE - anchored = TRUE - layer = TURF_LAYER - light_range = 1 - icon = 'icons/effects/effects.dmi' - icon_state = "greenglow" - -/obj/effect/decal/cleanable/greenglow/Initialize(mapload) - . = ..() - QDEL_IN(src, 2 MINUTES) - -/obj/effect/decal/cleanable/cobweb - name = "cobweb" - desc = "Somebody should remove that." - density = FALSE - anchored = TRUE - layer = OBJ_LAYER - icon = 'icons/effects/effects.dmi' - icon_state = "cobweb1" - burntime = 1 - -/obj/effect/decal/cleanable/cobweb/fire_act() - qdel(src) - -/obj/effect/decal/cleanable/molten_object - name = "gooey grey mass" - desc = "It looks like a melted... something." - density = FALSE - anchored = TRUE - layer = OBJ_LAYER - gender = NEUTER - icon = 'icons/effects/effects.dmi' - icon_state = "molten" - -/obj/effect/decal/cleanable/molten_object/large - name = "big gooey grey mass" - icon_state = "big_molten" - -/obj/effect/decal/cleanable/cobweb2 - name = "cobweb" - desc = "Somebody should remove that." - density = FALSE - anchored = TRUE - layer = OBJ_LAYER - icon = 'icons/effects/effects.dmi' - icon_state = "cobweb2" - -/obj/effect/decal/cleanable/vomit - name = "vomit" - desc = "Gosh, how unpleasant." - gender = PLURAL - density = FALSE - anchored = TRUE - layer = TURF_LAYER - icon = 'icons/effects/blood.dmi' - icon_state = "vomit_1" - random_icon_states = list("vomit_1", "vomit_2", "vomit_3", "vomit_4") - noclear = TRUE - -/obj/effect/decal/cleanable/vomit/Initialize() - . = ..() - reagents.add_reagent("vomit", 5) - -/obj/effect/decal/cleanable/vomit/green - name = "green vomit" - desc = "It's all gummy. Ew." - icon_state = "gvomit_1" - random_icon_states = list("gvomit_1", "gvomit_2", "gvomit_3", "gvomit_4") - -/obj/effect/decal/cleanable/vomit/green/Initialize() - . = ..() - reagents.remove_reagent("vomit", 5) - reagents.add_reagent("green_vomit", 5) - -/obj/effect/decal/cleanable/tomato_smudge - name = "tomato smudge" - desc = "It's red." - density = FALSE - anchored = TRUE - layer = TURF_LAYER - icon = 'icons/effects/tomatodecal.dmi' - random_icon_states = list("tomato_floor1", "tomato_floor2", "tomato_floor3") - -/obj/effect/decal/cleanable/plant_smudge - name = "plant smudge" - density = FALSE - anchored = TRUE - layer = TURF_LAYER - gender = NEUTER - icon = 'icons/effects/tomatodecal.dmi' - random_icon_states = list("smashed_plant") - -/obj/effect/decal/cleanable/egg_smudge - name = "smashed egg" - desc = "Seems like this one won't hatch." - density = FALSE - anchored = TRUE - layer = TURF_LAYER - icon = 'icons/effects/tomatodecal.dmi' - random_icon_states = list("smashed_egg1", "smashed_egg2", "smashed_egg3") - -/obj/effect/decal/cleanable/pie_smudge //honk - name = "smashed pie" - desc = "It's pie cream from a cream pie." - density = FALSE - anchored = TRUE - layer = TURF_LAYER - icon = 'icons/effects/tomatodecal.dmi' - random_icon_states = list("smashed_pie") - -/obj/effect/decal/cleanable/fungus - name = "space fungus" - desc = "A fungal growth. Looks pretty nasty." - density = FALSE - anchored = TRUE - layer = TURF_LAYER - icon = 'icons/effects/effects.dmi' - icon_state = "flour" - color = "#D5820B" - -/obj/effect/decal/cleanable/fungus/Initialize() - . = ..() - reagents.add_reagent("fungus", 10) - -/obj/effect/decal/cleanable/confetti //PARTY TIME! - name = "confetti" - desc = "Party time!" - gender = PLURAL - icon = 'icons/obj/objects.dmi' - icon_state = "confetti1" - random_icon_states = list("confetti1", "confetti2", "confetti3") - anchored = TRUE +/obj/effect/decal/cleanable/generic + name = "clutter" + desc = "Someone should clean that up." + gender = PLURAL + density = FALSE + anchored = TRUE + layer = TURF_LAYER + icon = 'icons/obj/objects.dmi' + icon_state = "shards" + +/obj/effect/decal/cleanable/ash + name = "ashes" + desc = "Ashes to ashes, dust to dust, and into space." + gender = PLURAL + icon = 'icons/obj/objects.dmi' + icon_state = "ash" + anchored = TRUE + +/obj/effect/decal/cleanable/ash/Initialize() + . = ..() + reagents.add_reagent("ash", 10) + +/obj/effect/decal/cleanable/dirt + name = "dirt" + desc = "Someone should clean that up." + gender = PLURAL + density = FALSE + anchored = TRUE + layer = TURF_LAYER + icon = 'icons/effects/dirt.dmi' + icon_state = "dirt" + canSmoothWith = list(/obj/effect/decal/cleanable/dirt, /turf/simulated/wall, /obj/structure/falsewall) + smooth = SMOOTH_MORE + mouse_opacity = FALSE + +/obj/effect/decal/cleanable/dirt/Initialize() + ..() + icon_state = "" + +/obj/effect/decal/cleanable/dirt/blackpowder + name = "black powder" + mouse_opacity = TRUE + noscoop = TRUE + +/obj/effect/decal/cleanable/dirt/blackpowder/Initialize() + . = ..() + reagents.add_reagent("blackpowder", 40) // size 2 explosion when activated + +/obj/effect/decal/cleanable/flour + name = "flour" + desc = "It's still good. Four second rule!" + gender = PLURAL + density = FALSE + anchored = TRUE + layer = TURF_LAYER + icon = 'icons/effects/effects.dmi' + icon_state = "flour" + +/obj/effect/decal/cleanable/flour/foam + name = "Fire fighting foam" + desc = "It's foam." + color = "#EBEBEB" + +/obj/effect/decal/cleanable/flour/foam/Initialize() + . = ..() + QDEL_IN(src, 15 SECONDS) + +/obj/effect/decal/cleanable/greenglow + name = "glowing goo" + desc = "Jeez. I hope that's not for lunch." + gender = PLURAL + density = FALSE + anchored = TRUE + layer = TURF_LAYER + light_range = 1 + icon = 'icons/effects/effects.dmi' + icon_state = "greenglow" + +/obj/effect/decal/cleanable/greenglow/Initialize(mapload) + . = ..() + QDEL_IN(src, 2 MINUTES) + +/obj/effect/decal/cleanable/cobweb + name = "cobweb" + desc = "Somebody should remove that." + density = FALSE + anchored = TRUE + layer = OBJ_LAYER + icon = 'icons/effects/effects.dmi' + icon_state = "cobweb1" + burntime = 1 + +/obj/effect/decal/cleanable/cobweb/fire_act() + qdel(src) + +/obj/effect/decal/cleanable/molten_object + name = "gooey grey mass" + desc = "It looks like a melted... something." + density = FALSE + anchored = TRUE + layer = OBJ_LAYER + gender = NEUTER + icon = 'icons/effects/effects.dmi' + icon_state = "molten" + +/obj/effect/decal/cleanable/molten_object/large + name = "big gooey grey mass" + icon_state = "big_molten" + +/obj/effect/decal/cleanable/cobweb2 + name = "cobweb" + desc = "Somebody should remove that." + density = FALSE + anchored = TRUE + layer = OBJ_LAYER + icon = 'icons/effects/effects.dmi' + icon_state = "cobweb2" + +/obj/effect/decal/cleanable/vomit + name = "vomit" + desc = "Gosh, how unpleasant." + gender = PLURAL + density = FALSE + anchored = TRUE + layer = TURF_LAYER + icon = 'icons/effects/blood.dmi' + icon_state = "vomit_1" + random_icon_states = list("vomit_1", "vomit_2", "vomit_3", "vomit_4") + noclear = TRUE + +/obj/effect/decal/cleanable/vomit/Initialize() + . = ..() + reagents.add_reagent("vomit", 5) + +/obj/effect/decal/cleanable/vomit/green + name = "green vomit" + desc = "It's all gummy. Ew." + icon_state = "gvomit_1" + random_icon_states = list("gvomit_1", "gvomit_2", "gvomit_3", "gvomit_4") + +/obj/effect/decal/cleanable/vomit/green/Initialize() + . = ..() + reagents.remove_reagent("vomit", 5) + reagents.add_reagent("green_vomit", 5) + +/obj/effect/decal/cleanable/tomato_smudge + name = "tomato smudge" + desc = "It's red." + density = FALSE + anchored = TRUE + layer = TURF_LAYER + icon = 'icons/effects/tomatodecal.dmi' + random_icon_states = list("tomato_floor1", "tomato_floor2", "tomato_floor3") + +/obj/effect/decal/cleanable/plant_smudge + name = "plant smudge" + density = FALSE + anchored = TRUE + layer = TURF_LAYER + gender = NEUTER + icon = 'icons/effects/tomatodecal.dmi' + random_icon_states = list("smashed_plant") + +/obj/effect/decal/cleanable/egg_smudge + name = "smashed egg" + desc = "Seems like this one won't hatch." + density = FALSE + anchored = TRUE + layer = TURF_LAYER + icon = 'icons/effects/tomatodecal.dmi' + random_icon_states = list("smashed_egg1", "smashed_egg2", "smashed_egg3") + +/obj/effect/decal/cleanable/pie_smudge //honk + name = "smashed pie" + desc = "It's pie cream from a cream pie." + density = FALSE + anchored = TRUE + layer = TURF_LAYER + icon = 'icons/effects/tomatodecal.dmi' + random_icon_states = list("smashed_pie") + +/obj/effect/decal/cleanable/fungus + name = "space fungus" + desc = "A fungal growth. Looks pretty nasty." + density = FALSE + anchored = TRUE + layer = TURF_LAYER + icon = 'icons/effects/effects.dmi' + icon_state = "flour" + color = "#D5820B" + +/obj/effect/decal/cleanable/fungus/Initialize() + . = ..() + reagents.add_reagent("fungus", 10) + +/obj/effect/decal/cleanable/confetti //PARTY TIME! + name = "confetti" + desc = "Party time!" + gender = PLURAL + icon = 'icons/obj/objects.dmi' + icon_state = "confetti1" + random_icon_states = list("confetti1", "confetti2", "confetti3") + anchored = TRUE diff --git a/code/game/objects/effects/decals/cleanable.dm b/code/game/objects/effects/decals/cleanable.dm index 09b13845879..9dc62b3551e 100644 --- a/code/game/objects/effects/decals/cleanable.dm +++ b/code/game/objects/effects/decals/cleanable.dm @@ -11,8 +11,16 @@ if(random_icon_states && length(src.random_icon_states) > 0) src.icon_state = pick(src.random_icon_states) create_reagents(100) + if(smooth) + smooth_icon(src) + smooth_icon_neighbors(src) ..() +/obj/effect/decal/cleanable/Destroy() + if(smooth) + smooth_icon_neighbors(src) + return ..() + /obj/effect/decal/cleanable/attackby(obj/item/W as obj, mob/user as mob,) if(istype(W, /obj/item/reagent_containers/glass) || istype(W, /obj/item/reagent_containers/food/drinks)) if(src.reagents && W.reagents && !noscoop) diff --git a/code/game/objects/effects/landmarks.dm b/code/game/objects/effects/landmarks.dm index 932a1786ae6..d9926c759b7 100644 --- a/code/game/objects/effects/landmarks.dm +++ b/code/game/objects/effects/landmarks.dm @@ -88,11 +88,11 @@ emergencyresponseteamspawn += loc qdel(src) - landmarks_list += src + GLOB.landmarks_list += src return 1 /obj/effect/landmark/Destroy() - landmarks_list -= src + GLOB.landmarks_list -= src ..() return QDEL_HINT_HARDDEL_NOW @@ -259,13 +259,13 @@ var/datum/map_template/ruin/ruin_template /obj/effect/landmark/ruin/New(loc, my_ruin_template) - name = "ruin_[ruin_landmarks.len + 1]" + name = "ruin_[GLOB.ruin_landmarks.len + 1]" ..(loc) ruin_template = my_ruin_template - ruin_landmarks |= src + GLOB.ruin_landmarks |= src /obj/effect/landmark/ruin/Destroy() - ruin_landmarks -= src + GLOB.ruin_landmarks -= src ruin_template = null . = ..() diff --git a/code/game/objects/effects/manifest.dm b/code/game/objects/effects/manifest.dm index 939156725c4..9b4814237fe 100644 --- a/code/game/objects/effects/manifest.dm +++ b/code/game/objects/effects/manifest.dm @@ -11,7 +11,7 @@ /obj/effect/manifest/proc/manifest() var/dat = "Crew Manifest:
" - for(var/mob/living/carbon/human/M in mob_list) + for(var/mob/living/carbon/human/M in GLOB.mob_list) dat += text(" [] - []
", M.name, M.get_assignment()) var/obj/item/paper/P = new /obj/item/paper( src.loc ) P.info = dat diff --git a/code/game/objects/effects/portals.dm b/code/game/objects/effects/portals.dm index a048ca1ebff..e190988392d 100644 --- a/code/game/objects/effects/portals.dm +++ b/code/game/objects/effects/portals.dm @@ -17,7 +17,7 @@ teleport(M) /obj/effect/portal/New(loc, turf/target, creator=null, lifespan=300) - portals += src + GLOB.portals += src src.loc = loc src.target = target src.creator = creator @@ -26,7 +26,7 @@ qdel(src) /obj/effect/portal/Destroy() - portals -= src + GLOB.portals -= src if(istype(creator, /obj)) var/obj/O = creator O.portal_destroyed(src) diff --git a/code/game/objects/explosion.dm b/code/game/objects/explosion.dm index 48ebad7ea5d..13583310630 100644 --- a/code/game/objects/explosion.dm +++ b/code/game/objects/explosion.dm @@ -43,7 +43,7 @@ var/sound/explosion_sound = sound(get_sfx("explosion")) var/sound/global_boom = sound('sound/effects/explosionfar.ogg') - for(var/P in player_list) + for(var/P in GLOB.player_list) var/mob/M = P // Double check for client if(M && M.client) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 6957f70d2b2..9af8b04580a 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -341,6 +341,10 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d /obj/item/proc/on_found(mob/finder as mob) return +// called when the giver gives it to the receiver +/obj/item/proc/on_give(mob/living/carbon/giver, mob/living/carbon/receiver) + return + // called after an item is placed in an equipment slot // user is mob that equipped it // slot uses the slot_X defines found in setup.dm diff --git a/code/game/objects/items/cardboard_cutouts.dm b/code/game/objects/items/cardboard_cutouts.dm index b076b7be43c..0d19057ae4b 100644 --- a/code/game/objects/items/cardboard_cutouts.dm +++ b/code/game/objects/items/cardboard_cutouts.dm @@ -91,15 +91,15 @@ color = "#FFD7A7" switch(new_appearance) if("Assistant") - name = "[pick(first_names_male)] [pick(last_names)]" + name = "[pick(GLOB.first_names_male)] [pick(GLOB.last_names)]" desc = "A cardboard cutout of an assistant." icon_state = "cutout_greytide" if("Clown") - name = pick(clown_names) + name = pick(GLOB.clown_names) desc = "A cardboard cutout of a clown. You get the feeling that it should be in a corner." icon_state = "cutout_clown" if("Mime") - name = pick(mime_names) + name = pick(GLOB.mime_names) desc = "...(A cardboard cutout of a mime.)" icon_state = "cutout_mime" if("Traitor") @@ -123,7 +123,7 @@ desc = "A cardboard cutout of a revolutionary." icon_state = "cutout_viva" if("Wizard") - name = "[pick(wizard_first)], [pick(wizard_second)]" + name = "[pick(GLOB.wizard_first)], [pick(GLOB.wizard_second)]" desc = "A cardboard cutout of a wizard." icon_state = "cutout_wizard" if("Shadowling") @@ -145,7 +145,7 @@ // desc = "A cardboard cutout of an ash walker." // icon_state = "cutout_free_antag" if("Deathsquad Officer") - name = pick(commando_names) + name = pick(GLOB.commando_names) desc = "A cardboard cutout of a death commando." icon_state = "cutout_deathsquad" if("Ian") diff --git a/code/game/objects/items/devices/powersink.dm b/code/game/objects/items/devices/powersink.dm index e99c3ca73ff..0d0475df8ee 100644 --- a/code/game/objects/items/devices/powersink.dm +++ b/code/game/objects/items/devices/powersink.dm @@ -27,7 +27,7 @@ /obj/item/powersink/Destroy() processing_objects.Remove(src) - processing_power_items.Remove(src) + GLOB.processing_power_items.Remove(src) PN = null attached = null return ..() @@ -54,7 +54,7 @@ else if(mode == 2) processing_objects.Remove(src) // Now the power sink actually stops draining the station's power if you unhook it. --NeoFite - processing_power_items.Remove(src) + GLOB.processing_power_items.Remove(src) anchored = 0 mode = 0 src.visible_message("[user] detaches [src] from the cable!") @@ -77,14 +77,14 @@ mode = 2 icon_state = "powersink1" processing_objects.Add(src) - processing_power_items.Add(src) + GLOB.processing_power_items.Add(src) if(2) //This switch option wasn't originally included. It exists now. --NeoFite src.visible_message("[user] deactivates [src]!") mode = 1 set_light(0) icon_state = "powersink0" processing_objects.Remove(src) - processing_power_items.Remove(src) + GLOB.processing_power_items.Remove(src) /obj/item/powersink/pwr_drain() if(!attached) diff --git a/code/game/objects/items/devices/radio/beacon.dm b/code/game/objects/items/devices/radio/beacon.dm index 59cf53451cd..26b0e8c915e 100644 --- a/code/game/objects/items/devices/radio/beacon.dm +++ b/code/game/objects/items/devices/radio/beacon.dm @@ -11,11 +11,11 @@ /obj/item/radio/beacon/New() ..() - code = "[code] ([beacons.len + 1])" - beacons += src + code = "[code] ([GLOB.beacons.len + 1])" + GLOB.beacons += src /obj/item/radio/beacon/Destroy() - beacons -= src + GLOB.beacons -= src return ..() /obj/item/radio/beacon/emag_act(user as mob) diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 51aa645a139..900ab99a345 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -49,11 +49,11 @@ /obj/item/radio/headset/handle_message_mode(mob/living/M as mob, message, channel) if(channel == "special") if(translate_binary) - var/datum/language/binary = all_languages["Robot Talk"] + var/datum/language/binary = GLOB.all_languages["Robot Talk"] binary.broadcast(M, message) return RADIO_CONNECTION_NON_SUBSPACE if(translate_hive) - var/datum/language/hivemind = all_languages["Hivemind"] + var/datum/language/hivemind = GLOB.all_languages["Hivemind"] hivemind.broadcast(M, message) return RADIO_CONNECTION_NON_SUBSPACE return RADIO_CONNECTION_FAIL diff --git a/code/game/objects/items/devices/radio/intercom.dm b/code/game/objects/items/devices/radio/intercom.dm index 8128e1f44d4..a5352005249 100644 --- a/code/game/objects/items/devices/radio/intercom.dm +++ b/code/game/objects/items/devices/radio/intercom.dm @@ -57,7 +57,7 @@ dir=ndir b_stat=1 on = 0 - global_intercoms.Add(src) + GLOB.global_intercoms.Add(src) update_icon() /obj/item/radio/intercom/department/medbay/New() @@ -106,7 +106,7 @@ /obj/item/radio/intercom/Destroy() processing_objects.Remove(src) - global_intercoms.Remove(src) + GLOB.global_intercoms.Remove(src) return ..() /obj/item/radio/intercom/attack_ai(mob/user as mob) diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 530156fbd99..b5b0875be6d 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -69,7 +69,7 @@ var/global/list/default_medbay_channels = list( wires = new(src) internal_channels = default_internal_channels.Copy() - global_radios |= src + GLOB.global_radios |= src /obj/item/radio/Destroy() QDEL_NULL(wires) @@ -78,7 +78,7 @@ var/global/list/default_medbay_channels = list( for(var/ch_name in channels) radio_controller.remove_object(src, radiochannels[ch_name]) radio_connection = null - global_radios -= src + GLOB.global_radios -= src follow_target = null return ..() @@ -250,7 +250,7 @@ var/global/list/default_medbay_channels = list( A.role = role A.message = message var/jammed = FALSE - for(var/obj/item/jammer/jammer in active_jammers) + for(var/obj/item/jammer/jammer in GLOB.active_jammers) if(get_dist(get_turf(src), get_turf(jammer)) < jammer.range) jammed = TRUE break @@ -342,7 +342,7 @@ var/global/list/default_medbay_channels = list( var/turf/position = get_turf(src) var/jammed = FALSE - for(var/obj/item/jammer/jammer in active_jammers) + for(var/obj/item/jammer/jammer in GLOB.active_jammers) if(get_dist(position, get_turf(jammer)) < jammer.range) jammed = TRUE break diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 98e217d25fa..2f1a280f83f 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -228,7 +228,7 @@ REAGENT SCANNER var/blood_percent = round((H.blood_volume / BLOOD_VOLUME_NORMAL)*100) var/blood_type = H.b_type if(blood_id != "blood")//special blood substance - var/datum/reagent/R = chemical_reagents_list[blood_id] + var/datum/reagent/R = GLOB.chemical_reagents_list[blood_id] if(R) blood_type = R.name else diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index 71ef7b91bda..a738b6f03d4 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -158,13 +158,13 @@ effective or pretty fucking useless. var/range = 12 /obj/item/jammer/Destroy() - active_jammers -= src + GLOB.active_jammers -= src return ..() /obj/item/jammer/attack_self(mob/user) to_chat(user,"You [active ? "deactivate" : "activate"] the [src].") active = !active if(active) - active_jammers |= src + GLOB.active_jammers |= src else - active_jammers -= src \ No newline at end of file + GLOB.active_jammers -= src \ No newline at end of file diff --git a/code/game/objects/items/random_items.dm b/code/game/objects/items/random_items.dm index ded05d6f795..906c04ba8c8 100644 --- a/code/game/objects/items/random_items.dm +++ b/code/game/objects/items/random_items.dm @@ -50,7 +50,7 @@ /obj/item/reagent_containers/glass/bottle/random_reagent/New() ..() - var/list/possible_chems = chemical_reagents_list.Copy() + var/list/possible_chems = GLOB.chemical_reagents_list.Copy() possible_chems -= blocked_chems.Copy() var/datum/reagent/R = pick(possible_chems) if(rare_chemicals.Find(R)) @@ -186,7 +186,7 @@ var/obj/item/reagent_containers/glass/bottle/B = new(src) B.reagents.add_reagent(chem, B.volume) if(prob(85)) - var/datum/reagent/r = chemical_reagents_list[chem] + var/datum/reagent/r = GLOB.chemical_reagents_list[chem] B.name = "[r.name] bottle" // B.identify_probability = 100 else diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm index 2e34c98e06b..65f504b4ae0 100644 --- a/code/game/objects/items/robot/robot_parts.dm +++ b/code/game/objects/items/robot/robot_parts.dm @@ -229,12 +229,12 @@ if(!M.brainmob.key) var/ghost_can_reenter = 0 if(M.brainmob.mind) - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) if(G.can_reenter_corpse && G.mind == M.brainmob.mind) ghost_can_reenter = 1 break - for(var/mob/living/simple_animal/S in player_list) - if(S in respawnable_list) + for(var/mob/living/simple_animal/S in GLOB.player_list) + if(S in GLOB.respawnable_list) ghost_can_reenter = 1 break if(!ghost_can_reenter) diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 2c0f3cb1e70..4bef1cbb324 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -90,13 +90,13 @@ return 0 if(!R.key) - for(var/mob/dead/observer/ghost in player_list) + for(var/mob/dead/observer/ghost in GLOB.player_list) if(ghost.mind && ghost.mind.current == R) R.key = ghost.key R.stat = CONSCIOUS - dead_mob_list -= R //please never forget this ever kthx - living_mob_list += R + GLOB.dead_mob_list -= R //please never forget this ever kthx + GLOB.living_mob_list += R R.notify_ai(1) return 1 diff --git a/code/game/objects/items/stacks/rods.dm b/code/game/objects/items/stacks/rods.dm index f5d434a9811..41079dcb204 100644 --- a/code/game/objects/items/stacks/rods.dm +++ b/code/game/objects/items/stacks/rods.dm @@ -47,7 +47,6 @@ var/global/list/datum/stack_recipe/rod_recipes = list ( \ if(WT.remove_fuel(0,user)) var/obj/item/stack/sheet/metal/new_item = new(user.loc) - new_item.add_to_stacks(user) if(new_item.get_amount() <= 0) // stack was moved into another one on the pile new_item = locate() in user.loc diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index ebc89cdca7a..5f9b7781f22 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -58,7 +58,6 @@ GLOBAL_LIST_INIT(glass_recipes, list ( \ var/obj/item/stack/rods/V = W var/obj/item/stack/sheet/rglass/RG = new (user.loc) RG.add_fingerprint(user) - RG.add_to_stacks(user) V.use(1) var/obj/item/stack/sheet/glass/G = src src = null @@ -124,7 +123,6 @@ GLOBAL_LIST_INIT(pglass_recipes, list ( \ var/obj/item/stack/rods/V = W var/obj/item/stack/sheet/plasmarglass/RG = new (user.loc) RG.add_fingerprint(user) - RG.add_to_stacks(user) V.use(1) var/obj/item/stack/sheet/glass/G = src src = null diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm index de842402ba9..4064bf63adb 100644 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ b/code/game/objects/items/stacks/sheets/mineral.dm @@ -19,7 +19,7 @@ var/global/list/datum/stack_recipe/sandstone_recipes = list ( \ null, \ new/datum/stack_recipe("Assistant Statue", /obj/structure/statue/sandstone/assistant, 5, one_per_turf = 1, on_floor = 1), \ null, \ - new/datum/stack_recipe("Breakdown into sand", /obj/item/ore/glass, 1, one_per_turf = 0, on_floor = 1), \ + new/datum/stack_recipe("Breakdown into sand", /obj/item/stack/ore/glass, 1, one_per_turf = 0, on_floor = 1), \ ) var/global/list/datum/stack_recipe/silver_recipes = list ( \ diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index b6b3021a08e..bd06be3282b 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -14,15 +14,34 @@ var/singular_name var/amount = 1 var/to_transfer = 0 - var/max_amount //also see stack recipes initialisation, param "max_res_amount" must be equal to this max_amount + var/max_amount = 50 //also see stack recipes initialisation, param "max_res_amount" must be equal to this max_amount var/merge_type = null // This path and its children should merge with this stack, defaults to src.type -/obj/item/stack/New(var/loc, var/amt = null) +/obj/item/stack/New(loc, new_amount, merge = TRUE) ..() - if(amt != null) //Allow for stacks with the amount=0 - amount = amt + if(new_amount != null) + amount = new_amount + while(amount > max_amount) + amount -= max_amount + new type(loc, max_amount, FALSE) if(!merge_type) merge_type = type + if(merge && !(amount >= max_amount)) + for(var/obj/item/stack/S in loc) + if(S.merge_type == merge_type) + merge(S) + +/obj/item/stack/Crossed(obj/O) + if(amount >= max_amount || ismob(loc)) // Prevents unnecessary call. Also prevents merging stack automatically in a mob's inventory + return + if(istype(O, merge_type) && !O.throwing) + merge(O) + ..() + +/obj/item/stack/hitby(atom/movable/AM, skipcatch, hitpush) + if(istype(AM, merge_type) && !(amount >= max_amount)) + merge(AM) + ..() /obj/item/stack/Destroy() if(usr && usr.machine == src) @@ -35,6 +54,11 @@ to_chat(user, "There are [amount] [singular_name]\s in the stack.") else to_chat(user, "There are [amount] [name]\s in the stack.") + to_chat(user,"Alt-click to take a custom amount.") + +/obj/item/stack/proc/add(newamount) + amount += newamount + update_icon() /obj/item/stack/attack_self(mob/user) list_recipes(user) @@ -141,7 +165,6 @@ var/datum/stack_recipe/R = recipes_list[text2num(href_list["make"])] var/multiplier = text2num(href_list["multiplier"]) - var/atom/creation_loc = (loc == usr) ? usr.loc : loc if(!multiplier) multiplier = 1 @@ -156,11 +179,11 @@ to_chat(usr, "The [R.title] won't fit here!") return FALSE - if(R.one_per_turf && (locate(R.result_type) in creation_loc)) + if(R.one_per_turf && (locate(R.result_type) in usr.drop_location())) to_chat(usr, "There is another [R.title] here!") return 0 - if(R.on_floor && !istype(creation_loc, /turf/simulated)) + if(R.on_floor && !istype(usr.drop_location(), /turf/simulated)) to_chat(usr, "\The [R.title] must be constructed on the floor!") return 0 @@ -172,16 +195,16 @@ if(amount < R.req_amount * multiplier) return - var/atom/O = new R.result_type(creation_loc) + var/atom/O + if(R.max_res_amount > 1) //Is it a stack? + O = new R.result_type(usr.drop_location(), R.res_amount * multiplier) + else + O = new R.result_type(usr.drop_location()) O.setDir(usr.dir) - if(R.max_res_amount > 1) - var/obj/item/stack/new_item = O - new_item.amount = R.res_amount * multiplier - //new_item.add_to_stacks(usr) + use(R.req_amount * multiplier) R.post_build(src, O) - amount -= R.req_amount * multiplier if(amount < 1) // Just in case a stack's amount ends up fractional somehow var/oldsrc = src src = null //dont kill proc after del() @@ -202,37 +225,23 @@ interact(usr) return -/obj/item/stack/proc/use(used) +/obj/item/stack/proc/use(used, check = TRUE) + if(check && zero_amount()) + return FALSE if(amount < used) - return 0 + return FALSE amount -= used - if(amount < 1) // Just in case a stack's amount ends up fractional somehow + if(amount < 1) if(isrobot(loc)) - var/mob/living/silicon/robot/R = loc //Horrifying cyborg snowflake code that allows stacks to GC and cyborgs not to horrendously break + var/mob/living/silicon/robot/R = loc if(locate(src) in R.module.modules) R.module.modules -= src - if(usr) - usr.unEquip(src, TRUE) // this has to be unEquip() over drop_item() or something similar because of cyborgs - qdel(src) + if(R) + R.unEquip(src, TRUE) + zero_amount() update_icon() return 1 -/obj/item/stack/proc/add_to_stacks(mob/usr) - var/obj/item/stack/oldsrc = src - src = null - for(var/obj/item/stack/item in usr.loc) - if(item == oldsrc) - continue - if(!istype(item, oldsrc.type)) - continue - if(item.amount >= item.max_amount) - continue - oldsrc.attackby(item, usr) - to_chat(usr, "You add new [item.singular_name] to the stack. It now contains [item.amount] [item.singular_name]\s.") - if(oldsrc.amount <= 0) - break - oldsrc.update_icon() - /obj/item/stack/proc/get_amount() return amount @@ -252,46 +261,69 @@ return F /obj/item/stack/attack_hand(mob/user) - if(user.is_in_inactive_hand(src)) - var/obj/item/stack/F = split(user, 1) - user.put_in_hands(F) + if(user.is_in_inactive_hand(src) && amount > 1) + change_stack(user, 1) if(src && usr.machine == src) spawn(0) interact(usr) else ..() +/obj/item/stack/AltClick(mob/living/user) + if(!istype(user) || user.incapacitated()) + to_chat(user, "You can't do that right now!") + return + if(!in_range(src, user) || issilicon(usr)) + return + if(amount < 1) + return + //get amount from user + var/min = 0 + var/max = get_amount() + var/stackmaterial = round(input(user, "How many sheets do you wish to take out of this stack? (Maximum: [max])") as num) + if(stackmaterial == null || stackmaterial <= min || stackmaterial > get_amount()) + return + change_stack(user,stackmaterial) + to_chat(user, "You take [stackmaterial] sheets out of the stack.") + +/obj/item/stack/proc/change_stack(mob/user,amount) + var/obj/item/stack/F = new type(user, amount, FALSE) + . = F + F.copy_evidences(src) + user.put_in_hands(F) + add_fingerprint(user) + F.add_fingerprint(user) + use(amount) + /obj/item/stack/attackby(obj/item/W, mob/user, params) - ..() if(istype(W, merge_type)) var/obj/item/stack/S = W - if(S.amount >= max_amount) - return 1 - - if(user.is_in_inactive_hand(src)) - var/desired = input("How much would you like to transfer from this stack?", "How much?", 1) as null|num - if(!desired) - return - desired = round(desired) - to_transfer = max(1,min(desired,S.max_amount-S.amount,src.amount)) - else - to_transfer = min(src.amount, S.max_amount-S.amount) - - S.amount += to_transfer - if(S && usr.machine == S) - spawn(0) - S.interact(usr) - use(to_transfer) - if(src && usr.machine == src) - spawn(0) - interact(usr) - S.update_icon() + merge(S) + to_chat(user, "Your [S.name] stack now contains [S.get_amount()] [S.singular_name]\s.") else return ..() +/obj/item/stack/proc/zero_amount() + if(amount < 1) + qdel(src) + return TRUE + return FALSE + +/obj/item/stack/proc/merge(obj/item/stack/S) //Merge src into S, as much as possible + if(QDELETED(S) || QDELETED(src) || S == src) //amusingly this can cause a stack to consume itself, let's not allow that. + return FALSE + var/transfer = get_amount() + transfer = min(transfer, S.max_amount - S.amount) + if(transfer <= 0) + return + if(pulledby) + pulledby.start_pulling(S) + S.copy_evidences(src) + S.add(transfer) + use(transfer) + /obj/item/stack/proc/copy_evidences(obj/item/stack/from) blood_DNA = from.blood_DNA fingerprints = from.fingerprints fingerprintshidden = from.fingerprintshidden fingerprintslast = from.fingerprintslast - //TODO bloody overlay diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index 696c75eb0e1..a91cd3a01cb 100755 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -43,7 +43,7 @@ AI MODULES src.transmitInstructions(comp.current, usr) to_chat(comp.current, "These are your laws now:") comp.current.show_laws() - for(var/mob/living/silicon/robot/R in mob_list) + for(var/mob/living/silicon/robot/R in GLOB.mob_list) if(R.lawupdate && (R.connected_ai == comp.current)) to_chat(R, "These are your laws now:") R.show_laws() diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm index 5cc7ee684af..19f989ec7b7 100644 --- a/code/game/objects/items/weapons/RCD.dm +++ b/code/game/objects/items/weapons/RCD.dm @@ -57,7 +57,7 @@ RCD spark_system = new /datum/effect_system/spark_spread spark_system.set_up(5, 0, src) spark_system.attach(src) - rcd_list += src + GLOB.rcd_list += src door_accesses_list = list() for(var/access in get_all_accesses()) door_accesses_list[++door_accesses_list.len] = list("name" = get_access_desc(access), "id" = access, "enabled" = (access in door_accesses)) @@ -65,7 +65,7 @@ RCD /obj/item/rcd/Destroy() QDEL_NULL(spark_system) - rcd_list -= src + GLOB.rcd_list -= src return ..() /obj/item/rcd/attackby(obj/item/W, mob/user, params) diff --git a/code/game/objects/items/weapons/implants/implant_abductor.dm b/code/game/objects/items/weapons/implants/implant_abductor.dm index 3ec571c94a6..a86545f8722 100644 --- a/code/game/objects/items/weapons/implants/implant_abductor.dm +++ b/code/game/objects/items/weapons/implants/implant_abductor.dm @@ -40,7 +40,7 @@ /obj/item/implant/abductor/proc/get_team_console(var/team) var/obj/machinery/abductor/console/console - for(var/obj/machinery/abductor/console/c in abductor_equipment) + for(var/obj/machinery/abductor/console/c in GLOB.abductor_equipment) if(c.team == team) console = c break diff --git a/code/game/objects/items/weapons/implants/implant_chem.dm b/code/game/objects/items/weapons/implants/implant_chem.dm index 6fbcc7e096a..b2f79f7e5c9 100644 --- a/code/game/objects/items/weapons/implants/implant_chem.dm +++ b/code/game/objects/items/weapons/implants/implant_chem.dm @@ -24,10 +24,10 @@ /obj/item/implant/chem/New() ..() create_reagents(50) - tracked_implants += src + GLOB.tracked_implants += src /obj/item/implant/chem/Destroy() - tracked_implants -= src + GLOB.tracked_implants -= src return ..() diff --git a/code/game/objects/items/weapons/implants/implant_track.dm b/code/game/objects/items/weapons/implants/implant_track.dm index ffc372f7fa8..c74e2fecff5 100644 --- a/code/game/objects/items/weapons/implants/implant_track.dm +++ b/code/game/objects/items/weapons/implants/implant_track.dm @@ -8,10 +8,10 @@ /obj/item/implant/tracking/New() ..() - tracked_implants += src + GLOB.tracked_implants += src /obj/item/implant/tracking/Destroy() - tracked_implants -= src + GLOB.tracked_implants -= src return ..() /obj/item/implant/tracking/get_data() diff --git a/code/game/objects/items/weapons/mop.dm b/code/game/objects/items/weapons/mop.dm index a26858a1e73..e642e3b994a 100644 --- a/code/game/objects/items/weapons/mop.dm +++ b/code/game/objects/items/weapons/mop.dm @@ -18,10 +18,10 @@ /obj/item/mop/New() ..() create_reagents(mopcap) - janitorial_equipment += src + GLOB.janitorial_equipment += src /obj/item/mop/Destroy() - janitorial_equipment -= src + GLOB.janitorial_equipment -= src return ..() /obj/item/mop/proc/clean(turf/simulated/A) diff --git a/code/game/objects/items/weapons/scissors.dm b/code/game/objects/items/weapons/scissors.dm index 2f53a1200a9..ea134126b6a 100644 --- a/code/game/objects/items/weapons/scissors.dm +++ b/code/game/objects/items/weapons/scissors.dm @@ -35,8 +35,8 @@ var/datum/robolimb/robohead = all_robolimbs[C.model] if(H.gender == MALE || isvulpkanin(H)) if(C.dna.species) - for(var/i in facial_hair_styles_list) - var/datum/sprite_accessory/facial_hair/tmp_facial = facial_hair_styles_list[i] + for(var/i in GLOB.facial_hair_styles_list) + var/datum/sprite_accessory/facial_hair/tmp_facial = GLOB.facial_hair_styles_list[i] if(C.dna.species.name in tmp_facial.species_allowed) //If the species is allowed to have the style, add the style to the list. Or, if the character has a prosthetic head, give them the human hair styles. if(C.dna.species.bodyflags & ALL_RPARTS) //If the character is of a species that can have full body prosthetics and their head doesn't suport human hair 'wigs', don't add the style to the list. if(robohead.is_monitor) @@ -53,13 +53,13 @@ to_chat(user, "You are unable to find anything on [H]'s face worth cutting. How disappointing.") return else - species_facial_hair = facial_hair_styles_list + species_facial_hair = GLOB.facial_hair_styles_list var/f_new_style = input(user, "Select a facial hair style", "Grooming") as null|anything in species_facial_hair //handle normal hair var/list/species_hair = list() if(C.dna.species) - for(var/i in hair_styles_public_list) - var/datum/sprite_accessory/hair/tmp_hair = hair_styles_public_list[i] + for(var/i in GLOB.hair_styles_public_list) + var/datum/sprite_accessory/hair/tmp_hair = GLOB.hair_styles_public_list[i] if(C.dna.species.name in tmp_hair.species_allowed) //If the species is allowed to have the style, add the style to the list. Or, if the character has a prosthetic head, give them the human facial hair styles. if(C.dna.species.bodyflags & ALL_RPARTS) //If the character is of a species that can have full body prosthetics and their head doesn't suport human hair 'wigs', don't add the style to the list. if(robohead.is_monitor) @@ -76,7 +76,7 @@ to_chat(user, "You are unable to find anything on [H]'s head worth cutting. How disappointing.") return else - species_hair = hair_styles_public_list + species_hair = GLOB.hair_styles_public_list var/h_new_style = input(user, "Select a hair style", "Grooming") as null|anything in species_hair user.visible_message("[user] starts cutting [M]'s hair!", "You start cutting [M]'s hair!") //arguments for this are: 1. what others see 2. what the user sees. --Fixed grammar, (TGameCo) playsound(loc, 'sound/goonstation/misc/Scissor.ogg', 100, 1) diff --git a/code/game/objects/items/weapons/storage/bags.dm b/code/game/objects/items/weapons/storage/bags.dm index da97f330c1f..f5abb96e941 100644 --- a/code/game/objects/items/weapons/storage/bags.dm +++ b/code/game/objects/items/weapons/storage/bags.dm @@ -138,7 +138,7 @@ storage_slots = 50 max_combined_w_class = 200 //Doesn't matter what this is, so long as it's more or equal to storage_slots * ore.w_class max_w_class = WEIGHT_CLASS_NORMAL - can_hold = list(/obj/item/ore) + can_hold = list(/obj/item/stack/ore) /obj/item/storage/bag/ore/cyborg name = "cyborg mining satchel" diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm index cd6fc31f820..e66bad8fbaf 100644 --- a/code/game/objects/items/weapons/storage/toolbox.dm +++ b/code/game/objects/items/weapons/storage/toolbox.dm @@ -60,12 +60,12 @@ new /obj/item/wirecutters(src) new /obj/item/t_scanner(src) new /obj/item/crowbar(src) - new /obj/item/stack/cable_coil(src, 30, pickedcolor) - new /obj/item/stack/cable_coil(src, 30, pickedcolor) + new /obj/item/stack/cable_coil(src, 30, paramcolor = pickedcolor) + new /obj/item/stack/cable_coil(src, 30, paramcolor = pickedcolor) if(prob(5)) new /obj/item/clothing/gloves/color/yellow(src) else - new /obj/item/stack/cable_coil(src, 30, pickedcolor) + new /obj/item/stack/cable_coil(src, 30, paramcolor = pickedcolor) /obj/item/storage/toolbox/syndicate name = "suspicious looking toolbox" @@ -108,7 +108,7 @@ new /obj/item/wrench(src) new /obj/item/weldingtool(src) new /obj/item/crowbar(src) - new /obj/item/stack/cable_coil(src, 30, pickedcolor) + new /obj/item/stack/cable_coil(src, 30, paramcolor = pickedcolor) new /obj/item/wirecutters(src) new /obj/item/multitool(src) diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index a24beced667..56bf5538b02 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -166,7 +166,7 @@ if(ishuman(L)) var/mob/living/carbon/human/H = L - H.forcesay(hit_appends) + H.forcesay(GLOB.hit_appends) /obj/item/melee/baton/emp_act(severity) if(bcell) diff --git a/code/game/objects/items/weapons/teleportation.dm b/code/game/objects/items/weapons/teleportation.dm index 02a4696f435..a108d7e259d 100644 --- a/code/game/objects/items/weapons/teleportation.dm +++ b/code/game/objects/items/weapons/teleportation.dm @@ -59,14 +59,14 @@ Frequency: if(sr) temp += "Located Beacons:
" - for(var/obj/item/radio/beacon/W in beacons) + for(var/obj/item/radio/beacon/W in GLOB.beacons) if(W.frequency == frequency && !W.syndicate) if(W && W.z == z) var/turf/TB = get_turf(W) temp += "[W.code]: [TB.x], [TB.y], [TB.z]
" temp += "Located Implants:
" - for(var/obj/item/implant/tracking/T in tracked_implants) + for(var/obj/item/implant/tracking/T in GLOB.tracked_implants) if(!T.implanted || !T.imp_in) continue diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/twohanded.dm index 3e7f3eaffe3..9b50956f1af 100644 --- a/code/game/objects/items/weapons/twohanded.dm +++ b/code/game/objects/items/weapons/twohanded.dm @@ -147,6 +147,14 @@ wield(user) ..() +/obj/item/twohanded/required/on_give(mob/living/carbon/giver, mob/living/carbon/receiver) + var/obj/item/twohanded/required/H = receiver.get_inactive_hand() + if(H != null) //Check if he can wield it + receiver.drop_item() //Can't wear it so drop it + to_chat(receiver, "[src] is too cumbersome to carry in one hand!") + return + equipped(receiver,receiver.hand ? slot_l_hand : slot_r_hand) + /obj/item/twohanded/required/equipped(mob/user, slot) ..() if(slot == slot_l_hand || slot == slot_r_hand) @@ -438,7 +446,7 @@ if(on) playsound(loc, 'sound/weapons/chainsawstart.ogg', 50, 1) force = on ? force_on : initial(force) - throwforce = on ? force_on : initial(force) + throwforce = on ? force_on : initial(throwforce) icon_state = "gchainsaw_[on ? "on" : "off"]" if(hitsound == "swing_hit") @@ -453,6 +461,16 @@ var/datum/action/A = X A.UpdateButtonIcon() +/obj/item/twohanded/required/chainsaw/attack_hand(mob/user) + . = ..() + force = on ? force_on : initial(force) + throwforce = on ? force_on : initial(throwforce) + +/obj/item/twohanded/required/chainsaw/on_give(mob/living/carbon/giver, mob/living/carbon/receiver) + . = ..() + force = on ? force_on : initial(force) + throwforce = on ? force_on : initial(throwforce) + /obj/item/twohanded/required/chainsaw/doomslayer name = "OOOH BABY" desc = "VRRRRRRR!!!" diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 29d3f2663bc..cc2fa8d1d69 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -65,9 +65,9 @@ // Nada /obj/Destroy() - machines -= src + GLOB.machines -= src processing_objects -= src - fast_processing -= src + GLOB.fast_processing -= src SSnanoui.close_uis(src) return ..() @@ -287,14 +287,14 @@ a { return speed_process = TRUE processing_objects.Remove(src) - fast_processing.Add(src) + GLOB.fast_processing.Add(src) /obj/proc/makeNormalProcess() if(!speed_process) return speed_process = FALSE processing_objects.Add(src) - fast_processing.Remove(src) + GLOB.fast_processing.Remove(src) /obj/vv_get_dropdown() . = ..() diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index 26b3e53362e..648f3c95622 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -69,8 +69,8 @@ break if(O.density || O.anchored || istype(O,/obj/structure/closet)) continue - if(istype(O, /obj/structure/stool/bed)) //This is only necessary because of rollerbeds and swivel chairs. - var/obj/structure/stool/bed/B = O + if(istype(O, /obj/structure/bed)) //This is only necessary because of rollerbeds and swivel chairs. + var/obj/structure/bed/B = O if(B.buckled_mob) continue O.forceMove(src) diff --git a/code/game/objects/structures/dresser.dm b/code/game/objects/structures/dresser.dm index a7233bf6a82..998120c3ee8 100644 --- a/code/game/objects/structures/dresser.dm +++ b/code/game/objects/structures/dresser.dm @@ -21,33 +21,33 @@ switch(choice) if("Underwear") var/list/valid_underwear = list() - for(var/underwear in underwear_list) - var/datum/sprite_accessory/S = underwear_list[underwear] + for(var/underwear in GLOB.underwear_list) + var/datum/sprite_accessory/S = GLOB.underwear_list[underwear] if(!(H.dna.species.name in S.species_allowed)) continue - valid_underwear[underwear] = underwear_list[underwear] + valid_underwear[underwear] = GLOB.underwear_list[underwear] var/new_underwear = input(user, "Choose your underwear:", "Changing") as null|anything in valid_underwear if(new_underwear) H.underwear = new_underwear if("Undershirt") var/list/valid_undershirts = list() - for(var/undershirt in undershirt_list) - var/datum/sprite_accessory/S = undershirt_list[undershirt] + for(var/undershirt in GLOB.undershirt_list) + var/datum/sprite_accessory/S = GLOB.undershirt_list[undershirt] if(!(H.dna.species.name in S.species_allowed)) continue - valid_undershirts[undershirt] = undershirt_list[undershirt] + valid_undershirts[undershirt] = GLOB.undershirt_list[undershirt] var/new_undershirt = input(user, "Choose your undershirt:", "Changing") as null|anything in valid_undershirts if(new_undershirt) H.undershirt = new_undershirt if("Socks") var/list/valid_sockstyles = list() - for(var/sockstyle in socks_list) - var/datum/sprite_accessory/S = socks_list[sockstyle] + for(var/sockstyle in GLOB.socks_list) + var/datum/sprite_accessory/S = GLOB.socks_list[sockstyle] if(!(H.dna.species.name in S.species_allowed)) continue - valid_sockstyles[sockstyle] = socks_list[sockstyle] + valid_sockstyles[sockstyle] = GLOB.socks_list[sockstyle] var/new_socks = input(user, "Choose your socks:", "Changing") as null|anything in valid_sockstyles if(new_socks) H.socks = new_socks diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm index 368391874ba..bd97d611576 100644 --- a/code/game/objects/structures/flora.dm +++ b/code/game/objects/structures/flora.dm @@ -211,6 +211,7 @@ layer = 5 w_class = WEIGHT_CLASS_HUGE force = 10 + force_wielded = 10 throwforce = 13 throw_speed = 2 throw_range = 4 @@ -222,9 +223,10 @@ icon_state = "plant-36" /obj/item/twohanded/required/kirbyplants/equipped(mob/living/user) + . = ..() var/image/I = image(icon = 'icons/obj/flora/plants.dmi' , icon_state = src.icon_state, loc = user) I.override = 1 - user.add_alt_appearance("sneaking_mission", I, player_list) + user.add_alt_appearance("sneaking_mission", I, GLOB.player_list) /obj/item/twohanded/required/kirbyplants/dropped(mob/living/user) ..() diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm index 1a7c6abb579..b19c5a56e99 100644 --- a/code/game/objects/structures/janicart.dm +++ b/code/game/objects/structures/janicart.dm @@ -21,10 +21,10 @@ /obj/structure/janitorialcart/New() ..() create_reagents(100) - janitorial_equipment += src + GLOB.janitorial_equipment += src /obj/structure/janitorialcart/Destroy() - janitorial_equipment -= src + GLOB.janitorial_equipment -= src QDEL_NULL(mybag) QDEL_NULL(mymop) QDEL_NULL(myspray) diff --git a/code/game/objects/structures/mop_bucket.dm b/code/game/objects/structures/mop_bucket.dm index c2e76703b68..aa9f21a9cce 100644 --- a/code/game/objects/structures/mop_bucket.dm +++ b/code/game/objects/structures/mop_bucket.dm @@ -10,14 +10,14 @@ /obj/structure/mopbucket/New() ..() create_reagents(100) - janitorial_equipment += src + GLOB.janitorial_equipment += src /obj/structure/mopbucket/full/New() ..() reagents.add_reagent("water", 100) /obj/structure/mopbucket/Destroy() - janitorial_equipment -= src + GLOB.janitorial_equipment -= src return ..() /obj/structure/mopbucket/examine(mob/user) diff --git a/code/game/objects/structures/plasticflaps.dm b/code/game/objects/structures/plasticflaps.dm index 3911d366ad6..19b6dc02617 100644 --- a/code/game/objects/structures/plasticflaps.dm +++ b/code/game/objects/structures/plasticflaps.dm @@ -65,8 +65,8 @@ if(istype(A) && A.checkpass(PASSGLASS)) return prob(60) - var/obj/structure/stool/bed/B = A - if(istype(A, /obj/structure/stool/bed) && B.buckled_mob)//if it's a bed/chair and someone is buckled, it will not pass + var/obj/structure/bed/B = A + if(istype(A, /obj/structure/bed) && B.buckled_mob)//if it's a bed/chair and someone is buckled, it will not pass return 0 if(istype(A, /obj/structure/closet/cardboard)) @@ -133,4 +133,4 @@ return ..() /obj/structure/plasticflaps/mining/CanAtmosPass(turf/T) - return 0 \ No newline at end of file + return 0 diff --git a/code/game/sound.dm b/code/game/sound.dm index 66746ece0ae..c791d3eebb5 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -11,7 +11,7 @@ // Looping through the player list has the added bonus of working for mobs inside containers var/sound/S = sound(get_sfx(soundin)) var/maxdistance = (world.view + extrarange) * 3 - var/list/listeners = player_list + var/list/listeners = GLOB.player_list if(!ignore_walls) //these sounds don't carry through walls listeners = listeners & hearers(maxdistance, turf_source) for(var/P in listeners) @@ -86,7 +86,7 @@ /proc/sound_to_playing_players(soundin, volume = 100, vary = FALSE, frequency = 0, falloff = FALSE, channel = 0, pressure_affected = FALSE, sound/S) if(!S) S = sound(get_sfx(soundin)) - for(var/m in player_list) + for(var/m in GLOB.player_list) if(ismob(m) && !isnewplayer(m)) var/mob/M = m M.playsound_local(M, null, volume, vary, frequency, falloff, channel, pressure_affected, S) diff --git a/code/game/turfs/simulated/floor/fancy_floor.dm b/code/game/turfs/simulated/floor/fancy_floor.dm index 1eb86650e4d..96f10a832b5 100644 --- a/code/game/turfs/simulated/floor/fancy_floor.dm +++ b/code/game/turfs/simulated/floor/fancy_floor.dm @@ -73,8 +73,7 @@ if(..()) return if(istype(C, /obj/item/shovel)) - new /obj/item/ore/glass(src) - new /obj/item/ore/glass(src) //Make some sand if you shovel grass + new /obj/item/stack/ore/glass(src, 2) //Make some sand if you shovel grass to_chat(user, "You shovel the grass.") playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) make_plating() @@ -91,8 +90,7 @@ if(..()) return if(istype(W, /obj/item/shovel)) - new /obj/item/ore/glass/basalt(src) - new /obj/item/ore/glass/basalt(src) + new /obj/item/stack/ore/glass/basalt(src, 2) user.visible_message("[user] digs up [src].", "You uproot [src].") playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) make_plating() diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm index 7f71cf981bd..4c6eee6311e 100644 --- a/code/game/turfs/simulated/floor/plating.dm +++ b/code/game/turfs/simulated/floor/plating.dm @@ -199,9 +199,13 @@ oxygen = 0 nitrogen = 0 +/turf/simulated/floor/plating/ironsand + name = "Iron Sand" + icon = 'icons/turf/floors/ironsand.dmi' + icon_state = "ironsand1" + /turf/simulated/floor/plating/ironsand/New() ..() - name = "Iron Sand" icon_state = "ironsand[rand(1,15)]" /turf/simulated/floor/plating/snow diff --git a/code/game/verbs/ooc.dm b/code/game/verbs/ooc.dm index 29d5e41b716..a35047bb9ad 100644 --- a/code/game/verbs/ooc.dm +++ b/code/game/verbs/ooc.dm @@ -58,7 +58,7 @@ var/global/admin_ooc_colour = "#b82e00" if((prefs.toggles & MEMBER_PUBLIC)) display_colour = member_ooc_colour - for(var/client/C in clients) + for(var/client/C in GLOB.clients) if(C.prefs.toggles & CHAT_OOC) var/display_name = key @@ -198,13 +198,13 @@ var/global/admin_ooc_colour = "#b82e00" if(mob.stat != DEAD) display_name = mob.name - for(var/client/target in clients) + for(var/client/target in GLOB.clients) if(target.prefs.toggles & CHAT_LOOC) var/prefix = "" var/admin_stuff = "" var/send = 0 - if(target in admins) + if(target in GLOB.admins) if(check_rights(R_ADMIN|R_MOD,0,target.mob)) admin_stuff += "/([key])" if(target != src) @@ -221,7 +221,7 @@ var/global/admin_ooc_colour = "#b82e00" send = 1 prefix = " (Eye)" - if(!send && (target in admins)) + if(!send && (target in GLOB.admins)) if(check_rights(R_ADMIN|R_MOD,0,target.mob)) send = 1 prefix = "(R)" diff --git a/code/game/verbs/who.dm b/code/game/verbs/who.dm index dd8123b2876..fa65fffbce9 100644 --- a/code/game/verbs/who.dm +++ b/code/game/verbs/who.dm @@ -9,7 +9,7 @@ var/list/Lines = list() if(check_rights(R_ADMIN,0)) - for(var/client/C in clients) + for(var/client/C in GLOB.clients) if(C.holder && C.holder.big_brother && !check_rights(R_PERMISSIONS, 0)) // need PERMISSIONS to see BB continue @@ -50,7 +50,7 @@ entry += " (?)" Lines += entry else - for(var/client/C in clients) + for(var/client/C in GLOB.clients) if(C.holder && C.holder.big_brother) // BB doesn't show up at all continue @@ -74,7 +74,7 @@ var/num_mods_online = 0 var/num_admins_online = 0 if(holder) - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(check_rights(R_ADMIN, 0, C.mob)) if(C.holder.fakekey && !check_rights(R_ADMIN, 0)) //Mentors can't see stealthmins @@ -116,7 +116,7 @@ modmsg += "\n" num_mods_online++ else - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(check_rights(R_ADMIN, 0, C.mob)) if(!C.holder.fakekey) diff --git a/code/game/world.dm b/code/game/world.dm index bb5df66be53..80bd980f404 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -82,7 +82,7 @@ var/world_topic_spam_protect_time = world.timeofday else if("players" in input) var/n = 0 - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.client) n++ return n @@ -107,7 +107,7 @@ var/world_topic_spam_protect_time = world.timeofday var/player_count = 0 var/admin_count = 0 - for(var/client/C in clients) + for(var/client/C in GLOB.clients) if(C.holder) if(C.holder.fakekey) continue //so stealthmins aren't revealed by the hub @@ -185,7 +185,7 @@ var/world_topic_spam_protect_time = world.timeofday var/client/C - for(var/client/K in clients) + for(var/client/K in GLOB.clients) if(K.ckey == input["adminmsg"]) C = K break @@ -201,7 +201,7 @@ var/world_topic_spam_protect_time = world.timeofday C << 'sound/effects/adminhelp.ogg' to_chat(C, message) - for(var/client/A in admins) + for(var/client/A in GLOB.admins) if(A != C) to_chat(A, amessage) @@ -224,7 +224,7 @@ var/world_topic_spam_protect_time = world.timeofday if(input["key"] != config.comms_password) return "Bad Key" else - for(var/client/C in clients) + for(var/client/C in GLOB.clients) to_chat(C, "PR: [input["announce"]]") else if("kick" in input) @@ -237,7 +237,7 @@ var/world_topic_spam_protect_time = world.timeofday var/client/C - for(var/client/K in clients) + for(var/client/K in GLOB.clients) if(K.ckey == input["kick"]) C = K break @@ -305,8 +305,8 @@ var/world_topic_spam_protect_time = world.timeofday return to_chat(world, "Rebooting world in [delay/10] [delay > 10 ? "seconds" : "second"]. [reason]") - var/round_end_sound = pick(round_end_sounds) - var/sound_length = round_end_sounds[round_end_sound] + var/round_end_sound = pick(GLOB.round_end_sounds) + var/sound_length = GLOB.round_end_sounds[round_end_sound] if(delay > sound_length) // If there's time, play the round-end sound before rebooting spawn(delay - sound_length) if(!ticker.delay_end) @@ -324,7 +324,7 @@ var/world_topic_spam_protect_time = world.timeofday processScheduler.stop() shutdown_logging() // Past this point, no logging procs can be used, at risk of data loss. - for(var/client/C in clients) + for(var/client/C in GLOB.clients) if(config.server) //if you set a server location in config.txt, it sends you there instead of trying to reconnect to the same world address. -- NeoFite C << link("byond://[config.server]") @@ -407,7 +407,7 @@ var/world_topic_spam_protect_time = world.timeofday features += "AI allowed" var/n = 0 - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.client) n++ diff --git a/code/modules/admin/DB ban/functions.dm b/code/modules/admin/DB ban/functions.dm index f04f36a7bcc..47085a8b749 100644 --- a/code/modules/admin/DB ban/functions.dm +++ b/code/modules/admin/DB ban/functions.dm @@ -100,14 +100,14 @@ datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = return var/who - for(var/client/C in clients) + for(var/client/C in GLOB.clients) if(!who) who = "[C]" else who += ", [C]" var/adminwho - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(!adminwho) adminwho = "[C]" else diff --git a/code/modules/admin/IsBanned.dm b/code/modules/admin/IsBanned.dm index 4c905a0b517..1b3b2edcf3d 100644 --- a/code/modules/admin/IsBanned.dm +++ b/code/modules/admin/IsBanned.dm @@ -9,7 +9,7 @@ world/IsBanned(key,address,computer_id) return list("reason"="invalid login data", "desc"="Error: Could not check ban status, Please try again. Error message: Your computer provided an invalid Computer ID.") var/admin = 0 var/ckey = ckey(key) - if((ckey in admin_datums) || (ckey in deadmins)) + if((ckey in admin_datums) || (ckey in GLOB.deadmins)) var/datum/admins/A = admin_datums[ckey] if(A.rights & R_ADMIN) admin = 1 diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index f401589bf90..4382c36b58a 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -4,7 +4,7 @@ var/global/nologevent = 0 //////////////////////////////// /proc/message_admins(var/msg) msg = "ADMIN LOG: [msg]" - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(R_ADMIN & C.holder.rights) if(C.prefs && !(C.prefs.toggles & CHAT_NO_ADMINLOGS)) to_chat(C, msg) @@ -12,7 +12,7 @@ var/global/nologevent = 0 /proc/msg_admin_attack(var/text, var/loglevel) if(!nologevent) var/rendered = "ATTACK: [text]" - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(R_ADMIN & C.holder.rights) if(C.prefs.atklog == ATKLOG_NONE) continue @@ -23,7 +23,7 @@ var/global/nologevent = 0 /proc/message_adminTicket(var/msg) msg = "ADMIN TICKET: [msg]" - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(R_ADMIN & C.holder.rights) if(C.prefs && !(C.prefs.toggles & CHAT_NO_TICKETLOGS)) to_chat(C, msg) @@ -31,7 +31,7 @@ var/global/nologevent = 0 ///////////////////////////////////////////////////////////////////////////////////////////////Panels -/datum/admins/proc/show_player_panel(var/mob/M in mob_list) +/datum/admins/proc/show_player_panel(var/mob/M in GLOB.mob_list) set category = "Admin" set name = "Show Player Panel" set desc="Edit player (respawn, ban, heal, etc)" @@ -827,7 +827,7 @@ var/global/nologevent = 0 log_admin("[key_name(usr)] spawned [chosen] at ([usr.x],[usr.y],[usr.z])") feedback_add_details("admin_verb","SA") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/datum/admins/proc/show_traitor_panel(var/mob/M in mob_list) +/datum/admins/proc/show_traitor_panel(var/mob/M in GLOB.mob_list) set category = "Admin" set desc = "Edit mobs's memory and role" set name = "Show Traitor Panel" @@ -864,7 +864,7 @@ var/global/nologevent = 0 /datum/admins/proc/output_ai_laws() var/ai_number = 0 - for(var/mob/living/silicon/S in mob_list) + for(var/mob/living/silicon/S in GLOB.mob_list) ai_number++ if(isAI(S)) to_chat(usr, "AI [key_name(S, TRUE)]'s laws:") @@ -960,7 +960,7 @@ var/gamma_ship_location = 1 // 0 = station , 1 = space //returns a list of ckeys of the kicked clients /proc/kick_clients_in_lobby(message, kick_only_afk = 0) var/list/kicked_client_names = list() - for(var/client/C in clients) + for(var/client/C in GLOB.clients) if(istype(C.mob, /mob/new_player)) if(kick_only_afk && !C.is_afk()) //Ignore clients who are not afk continue @@ -1037,7 +1037,7 @@ var/gamma_ship_location = 1 // 0 = station , 1 = space // result[3] is the number of staff that match the rank mask and are inactive /proc/staff_countup(rank_mask = R_BAN) var/list/result = list(0, 0, 0) - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(rank_mask && !check_rights_for(X, rank_mask)) result[2]++ continue diff --git a/code/modules/admin/admin_ranks.dm b/code/modules/admin/admin_ranks.dm index 45e85a847fe..e781e038991 100644 --- a/code/modules/admin/admin_ranks.dm +++ b/code/modules/admin/admin_ranks.dm @@ -61,10 +61,10 @@ var/list/admin_ranks = list() //list of all ranks with associated rights /proc/load_admins() //clear the datums references admin_datums.Cut() - for(var/client/C in admins) + for(var/client/C in GLOB.admins) C.remove_admin_verbs() C.holder = null - admins.Cut() + GLOB.admins.Cut() if(config.admin_legacy_system) load_admin_ranks() @@ -97,7 +97,7 @@ var/list/admin_ranks = list() //list of all ranks with associated rights var/datum/admins/D = new /datum/admins(rank, rights, ckey) //find the client for a ckey if they are connected and associate them with the new admin datum - D.associate(directory[ckey]) + D.associate(GLOB.directory[ckey]) else //The current admin system uses SQL @@ -121,7 +121,7 @@ var/list/admin_ranks = list() //list of all ranks with associated rights var/datum/admins/D = new /datum/admins(rank, rights, ckey) //find the client for a ckey if they are connected and associate them with the new admin datum - D.associate(directory[ckey]) + D.associate(GLOB.directory[ckey]) if(!admin_datums) log_world("The database query in load_admins() resulted in no admins being added to the list. Reverting to legacy system.") config.admin_legacy_system = 1 diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index bbff1eb2c2e..dd0a67021b6 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -445,10 +445,10 @@ var/list/admin_verbs_ticket = list( /client/proc/findStealthKey(txt) if(txt) - for(var/P in stealthminID) - if(stealthminID[P] == txt) + for(var/P in GLOB.stealthminID) + if(GLOB.stealthminID[P] == txt) return P - txt = stealthminID[ckey] + txt = GLOB.stealthminID[ckey] return txt /client/proc/createStealthKey() @@ -456,11 +456,11 @@ var/list/admin_verbs_ticket = list( var/i = 0 while(i == 0) i = 1 - for(var/P in stealthminID) - if(num == stealthminID[P]) + for(var/P in GLOB.stealthminID) + if(num == GLOB.stealthminID[P]) num++ i = 0 - stealthminID["[ckey]"] = "@[num2text(num)]" + GLOB.stealthminID["[ckey]"] = "@[num2text(num)]" /client/proc/stealth() set category = "Admin" @@ -520,7 +520,7 @@ var/list/admin_verbs_ticket = list( return var/datum/preferences/D - var/client/C = directory[warned_ckey] + var/client/C = GLOB.directory[warned_ckey] if(C) D = C.prefs else D = preferences_datums[warned_ckey] @@ -592,7 +592,7 @@ var/list/admin_verbs_ticket = list( message_admins("[key_name_admin(usr)] created an admin explosion at [epicenter.loc]") feedback_add_details("admin_verb","DB") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/give_spell(mob/T as mob in mob_list) // -- Urist +/client/proc/give_spell(mob/T as mob in GLOB.mob_list) // -- Urist set category = "Event" set name = "Give Spell" set desc = "Gives a spell to a mob." @@ -617,7 +617,7 @@ var/list/admin_verbs_ticket = list( log_admin("[key_name(usr)] gave [key_name(T)] the spell [S].") message_admins("[key_name_admin(usr)] gave [key_name(T)] the spell [S].", 1) -/client/proc/give_disease(mob/T in mob_list) +/client/proc/give_disease(mob/T in GLOB.mob_list) set category = "Event" set name = "Give Disease" set desc = "Gives a Disease to a mob." @@ -704,7 +704,7 @@ var/list/admin_verbs_ticket = list( message_admins("[key_name_admin(usr)] deadmined themself.") deadmin() verbs += /client/proc/readmin - deadmins += ckey + GLOB.deadmins += ckey to_chat(src, "You are now a normal player.") feedback_add_details("admin_verb","DAS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -762,17 +762,17 @@ var/list/admin_verbs_ticket = list( flags = text2num(flags) D = new(admin_rank, flags, ckey) - var/client/C = directory[ckey] + var/client/C = GLOB.directory[ckey] D.associate(C) message_admins("[key_name_admin(usr)] re-adminned themselves.") log_admin("[key_name(usr)] re-adminned themselves.") - deadmins -= ckey + GLOB.deadmins -= ckey feedback_add_details("admin_verb","RAS") return else to_chat(src, "You are already an admin.") verbs -= /client/proc/readmin - deadmins -= ckey + GLOB.deadmins -= ckey return /client/proc/toggle_log_hrefs() @@ -806,7 +806,7 @@ var/list/admin_verbs_ticket = list( if(!check_rights(R_ADMIN)) return - var/mob/living/silicon/S = input("Select silicon.", "Manage Silicon Laws") as null|anything in silicon_mob_list + var/mob/living/silicon/S = input("Select silicon.", "Manage Silicon Laws") as null|anything in GLOB.silicon_mob_list if(!S) return var/datum/nano_module/law_manager/L = new(S) @@ -814,7 +814,7 @@ var/list/admin_verbs_ticket = list( log_and_message_admins("has opened [S]'s law manager.") feedback_add_details("admin_verb","MSL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/change_human_appearance_admin(mob/living/carbon/human/H in mob_list) +/client/proc/change_human_appearance_admin(mob/living/carbon/human/H in GLOB.mob_list) set name = "C.M.A. - Admin" set desc = "Allows you to change the mob appearance" set category = "Admin" @@ -840,7 +840,7 @@ var/list/admin_verbs_ticket = list( H.change_appearance(APPEARANCE_ALL, usr, usr, check_species_whitelist = 0) feedback_add_details("admin_verb","CHAA") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/change_human_appearance_self(mob/living/carbon/human/H in mob_list) +/client/proc/change_human_appearance_self(mob/living/carbon/human/H in GLOB.mob_list) set name = "C.M.A. - Self" set desc = "Allows the mob to change its appearance" set category = "Admin" @@ -976,7 +976,7 @@ var/list/admin_verbs_ticket = list( else to_chat(usr, "You now won't get debug log messages") -/client/proc/man_up(mob/T as mob in mob_list) +/client/proc/man_up(mob/T as mob in GLOB.mob_list) set category = "Admin" set name = "Man Up" set desc = "Tells mob to man up and deal with it." @@ -1002,7 +1002,7 @@ var/list/admin_verbs_ticket = list( var/confirm = alert("Are you sure you want to send the global message?", "Confirm Man Up Global", "Yes", "No") if(confirm == "Yes") - for(var/mob/T as mob in mob_list) + for(var/mob/T as mob in GLOB.mob_list) to_chat(T, "
Man up.
Deal with it.

Move on.

") T << 'sound/voice/ManUp1.ogg' diff --git a/code/modules/admin/holder2.dm b/code/modules/admin/holder2.dm index f3715eaab31..ebf8a70cde3 100644 --- a/code/modules/admin/holder2.dm +++ b/code/modules/admin/holder2.dm @@ -35,11 +35,11 @@ var/list/admin_datums = list() owner.on_holder_add() owner.add_admin_verbs() //TODO owner.verbs -= /client/proc/readmin - admins |= C + GLOB.admins |= C /datum/admins/proc/disassociate() if(owner) - admins -= owner + GLOB.admins -= owner owner.remove_admin_verbs() owner.holder = null owner = null diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index 78b175b4656..9a39c51d971 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -427,7 +427,7 @@ else dat += "Nuclear Operative not found!" dat += "
" - for(var/obj/item/disk/nuclear/N in poi_list) + for(var/obj/item/disk/nuclear/N in GLOB.poi_list) dat += "
Nuclear Disk(s)
[N.name], " var/atom/disk_loc = N.loc while(!istype(disk_loc, /turf)) diff --git a/code/modules/admin/sql_notes.dm b/code/modules/admin/sql_notes.dm index 7b237db72e5..9024959b943 100644 --- a/code/modules/admin/sql_notes.dm +++ b/code/modules/admin/sql_notes.dm @@ -121,7 +121,7 @@ var/ruler ruler = "
" navbar = "\[All\]|\[#\]" - for(var/letter in alphabet) + for(var/letter in GLOB.alphabet) navbar += "|\[[letter]\]" navbar += "
\ \ diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 31600856238..4edd7e709ab 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -146,7 +146,7 @@ var/mob/playermob - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.ckey == banckey) playermob = M break @@ -238,7 +238,7 @@ else D = new /datum/admins(new_rank, rights, adm_ckey) - var/client/C = directory[adm_ckey] //find the client with the specified ckey (if they are logged in) + var/client/C = GLOB.directory[adm_ckey] //find the client with the specified ckey (if they are logged in) D.associate(C) //link up with the client and add verbs updateranktodb(adm_ckey, new_rank) @@ -1259,7 +1259,7 @@ message_admins("[key_name_admin(usr)] has sent [key_name_admin(M)] back to the Lobby.") var/mob/new_player/NP = new() - non_respawnable_keys -= M.ckey + GLOB.non_respawnable_keys -= M.ckey NP.ckey = M.ckey qdel(M) @@ -1552,7 +1552,7 @@ if(is_mhelp) helptype = "MENTORHELP" var/take_msg = "[helptype]: [key_name(usr.client)] is attending to [key_name(M)]'s question." - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(check_rights(R_ADMIN, 0, X.mob)) to_chat(X, take_msg) else if(is_mhelp && check_rights(R_MOD|R_MENTOR, 0, X.mob)) @@ -1583,7 +1583,7 @@ if (H.current) to_chat(H.current, "[ticker.cultdat.entity_name] murmurs, [input]") - for(var/mob/dead/observer/O in player_list) + for(var/mob/dead/observer/O in GLOB.player_list) to_chat(O, "[ticker.cultdat.entity_name] murmurs, [input]") message_admins("Admin [key_name_admin(usr)] has talked with the Voice of [ticker.cultdat.entity_name].") @@ -1916,7 +1916,7 @@ if("Crew Traitor") logmsg = "crew traitor." var/list/possible_traitors = list() - for(var/mob/living/player in living_mob_list) + for(var/mob/living/player in GLOB.living_mob_list) if(player.client && player.mind && !player.mind.special_role && player.stat != DEAD && player != H) if(ishuman(player)) if(player.client && (ROLE_TRAITOR in player.client.prefs.be_special) && !jobban_isbanned(player, ROLE_TRAITOR) && !jobban_isbanned(player, "Syndicate")) @@ -2509,14 +2509,14 @@ if("monkey") feedback_inc("admin_secrets_fun_used",1) feedback_add_details("admin_secrets_fun_used","M") - for(var/mob/living/carbon/human/H in mob_list) + for(var/mob/living/carbon/human/H in GLOB.mob_list) spawn(0) H.monkeyize() ok = 1 if("corgi") feedback_inc("admin_secrets_fun_used",1) feedback_add_details("admin_secrets_fun_used","M") - for(var/mob/living/carbon/human/H in mob_list) + for(var/mob/living/carbon/human/H in GLOB.mob_list) spawn(0) H.corgize() ok = 1 @@ -2587,7 +2587,7 @@ feedback_inc("admin_secrets_fun_used",1) feedback_add_details("admin_secrets_fun_used","PW") message_admins("[key_name_admin(usr)] teleported all players to the prison station.", 1) - for(var/mob/living/carbon/human/H in mob_list) + for(var/mob/living/carbon/human/H in GLOB.mob_list) var/turf/loc = find_loc(H) var/security = 0 if(!is_station_level(loc.z) || prisonwarped.Find(H)) @@ -2631,7 +2631,7 @@ return feedback_inc("admin_secrets_fun_used",1) feedback_add_details("admin_secrets_fun_used","TA([objective])") - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) if(H.stat == 2 || !H.client || !H.mind) continue if(is_special_character(H)) continue //traitorize(H, objective, 0) @@ -2644,7 +2644,7 @@ ticker.mode.greet_traitor(H.mind) //ticker.mode.forge_traitor_objectives(H.mind) ticker.mode.finalize_traitor(H.mind) - for(var/mob/living/silicon/A in player_list) + for(var/mob/living/silicon/A in GLOB.player_list) ticker.mode.traitors += A.mind A.mind.special_role = SPECIAL_ROLE_TRAITOR var/datum/objective/new_objective = new @@ -2681,7 +2681,7 @@ feedback_add_details("admin_secrets_fun_used","FL") while(!usr.stat) //knock yourself out to stop the ghosts - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.stat != 2 && prob(25)) var/area/AffectedArea = get_area(M) if(AffectedArea.name != "Space" && AffectedArea.name != "Engine Walls" && AffectedArea.name != "Chemical Lab Test Chamber" && AffectedArea.name != "Escape Shuttle" && AffectedArea.name != "Arrival Area" && AffectedArea.name != "Arrival Shuttle" && AffectedArea.name != "start area" && AffectedArea.name != "Engine Combustion Chamber") @@ -2704,7 +2704,7 @@ if(prob(25) && !W.anchored) step_rand(W) sleep(rand(100,1000)) - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.stat != 2) M.show_message(text("The chilling wind suddenly stops..."), 1) if("lightout") @@ -2717,13 +2717,13 @@ feedback_inc("admin_secrets_fun_used",1) feedback_add_details("admin_secrets_fun_used","BO") message_admins("[key_name_admin(usr)] broke all lights", 1) - for(var/obj/machinery/light/L in machines) + for(var/obj/machinery/light/L in GLOB.machines) L.broken() if("whiteout") feedback_inc("admin_secrets_fun_used",1) feedback_add_details("admin_secrets_fun_used","WO") message_admins("[key_name_admin(usr)] fixed all lights", 1) - for(var/obj/machinery/light/L in machines) + for(var/obj/machinery/light/L in GLOB.machines) L.fix() if("floorlava") feedback_inc("admin_secrets_fun_used", 1) @@ -2752,7 +2752,7 @@ if("retardify") feedback_inc("admin_secrets_fun_used",1) feedback_add_details("admin_secrets_fun_used","RET") - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) to_chat(H, "You suddenly feel stupid.") H.setBrainLoss(60) message_admins("[key_name_admin(usr)] made everybody retarded") @@ -2778,7 +2778,7 @@ if("eagles")//SCRAW feedback_inc("admin_secrets_fun_used",1) feedback_add_details("admin_secrets_fun_used","EgL") - for(var/obj/machinery/door/airlock/W in airlocks) + for(var/obj/machinery/door/airlock/W in GLOB.airlocks) if(is_station_level(W.z) && !istype(get_area(W), /area/bridge) && !istype(get_area(W), /area/crew_quarters) && !istype(get_area(W), /area/security/prison)) W.req_access = list() message_admins("[key_name_admin(usr)] activated Egalitarian Station mode") @@ -2918,7 +2918,7 @@ if("manifest") var/dat = "Showing Crew Manifest.
" dat += "" - for(var/mob/living/carbon/human/H in mob_list) + for(var/mob/living/carbon/human/H in GLOB.mob_list) if(H.ckey) dat += text("", H.name, H.get_assignment()) dat += "
NamePosition
[][]
" @@ -2928,7 +2928,7 @@ if("DNA") var/dat = "Showing DNA from blood.
" dat += "" - for(var/mob/living/carbon/human/H in mob_list) + for(var/mob/living/carbon/human/H in GLOB.mob_list) if(H.dna && H.ckey) dat += "" dat += "
NameDNABlood Type
[H][H.dna.unique_enzymes][H.b_type]
" @@ -2936,7 +2936,7 @@ if("fingerprints") var/dat = "Showing Fingerprints.
" dat += "" - for(var/mob/living/carbon/human/H in mob_list) + for(var/mob/living/carbon/human/H in GLOB.mob_list) if(H.ckey) if(H.dna && H.dna.uni_identity) dat += "" @@ -2982,12 +2982,12 @@ dat += "No-one has done anything this round!" usr << browse(dat, "window=admin_log") if("maint_access_brig") - for(var/obj/machinery/door/airlock/maintenance/M in airlocks) + for(var/obj/machinery/door/airlock/maintenance/M in GLOB.airlocks) if(access_maint_tunnels in M.req_access) M.req_access = list(access_brig) message_admins("[key_name_admin(usr)] made all maint doors brig access-only.") if("maint_access_engiebrig") - for(var/obj/machinery/door/airlock/maintenance/M in airlocks) + for(var/obj/machinery/door/airlock/maintenance/M in GLOB.airlocks) if(access_maint_tunnels in M.req_access) M.req_access = list() M.req_one_access = list(access_brig,access_engine) diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm index 9d972598376..997b586149a 100644 --- a/code/modules/admin/verbs/adminhelp.dm +++ b/code/modules/admin/verbs/adminhelp.dm @@ -38,7 +38,7 @@ var/list/adminhelp_ignored_words = list("unknown","the","a","an","of","monkey"," var/list/surnames = list() var/list/forenames = list() var/list/ckeys = list() - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) var/list/indexing = list(M.real_name, M.name) if(M.mind) indexing += M.mind.name @@ -94,7 +94,7 @@ var/list/adminhelp_ignored_words = list("unknown","the","a","an","of","monkey"," var/list/mentorholders = list() var/list/modholders = list() var/list/adminholders = list() - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(check_rights(R_ADMIN, 0, X.mob)) if(X.is_afk()) admin_number_afk++ @@ -152,7 +152,7 @@ var/list/adminhelp_ignored_words = list("unknown","the","a","an","of","monkey"," var/admin_number_afk = 0 //Holds the number of admins who are afk var/admin_number_ignored = 0 //Holds the number of admins without +BAN (so admins who are not really admins) var/admin_number_decrease = 0 //Holds the number of admins with are afk, ignored or both - for(var/client/X in admins) + for(var/client/X in GLOB.admins) admin_number_total++; var/invalid = 0 if(requiredflags != 0 && !check_rights_for(X, requiredflags)) diff --git a/code/modules/admin/verbs/adminjump.dm b/code/modules/admin/verbs/adminjump.dm index 2512171e80d..562f087dbb5 100644 --- a/code/modules/admin/verbs/adminjump.dm +++ b/code/modules/admin/verbs/adminjump.dm @@ -42,7 +42,7 @@ feedback_add_details("admin_verb","JT") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return -/client/proc/jumptomob(var/mob/M in mob_list) +/client/proc/jumptomob(var/mob/M in GLOB.mob_list) set category = "Admin" set name = "Jump to Mob" @@ -83,7 +83,7 @@ return var/list/keys = list() - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) keys += M.client var/selection = input("Please, select a player!", "Admin Jumping", null, null) as null|anything in sortKey(keys) if(!selection) @@ -98,7 +98,7 @@ feedback_add_details("admin_verb","JK") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/Getmob(var/mob/M in mob_list) +/client/proc/Getmob(var/mob/M in GLOB.mob_list) set category = "Admin" set name = "Get Mob" set desc = "Mob to teleport" @@ -120,7 +120,7 @@ return var/list/keys = list() - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) keys += M.client var/selection = input("Please, select a player!", "Admin Jumping", null, null) as null|anything in sortKey(keys) if(!selection) @@ -136,7 +136,7 @@ admin_forcemove(usr, M.loc) feedback_add_details("admin_verb","GK") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/sendmob(var/mob/M in mob_list) +/client/proc/sendmob(var/mob/M in GLOB.mob_list) set category = "Admin" set name = "Send Mob" diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 1287b96181a..76bb536a726 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -1,5 +1,5 @@ //allows right clicking mobs to send an admin PM to their client, forwards the selected mob's client to cmd_admin_pm -/client/proc/cmd_admin_pm_context(mob/M as mob in mob_list) +/client/proc/cmd_admin_pm_context(mob/M as mob in GLOB.mob_list) set category = null set name = "Admin PM Mob" if(!holder) @@ -67,7 +67,7 @@ if(istext(whom)) if(cmptext(copytext(whom,1,2),"@")) whom = findStealthKey(whom) - C = directory[whom] + C = GLOB.directory[whom] else if(istype(whom,/client)) C = whom @@ -167,7 +167,7 @@ log_admin("PM: [key_name(src)]->[key_name(C)]: [msg]") //we don't use message_admins here because the sender/receiver might get it too - for(var/client/X in admins) + for(var/client/X in GLOB.admins) //check client/X is an admin and isn't the sender or recipient if(X == C || X == src) continue @@ -224,7 +224,7 @@ to_chat(src, "IRC PM to-IRC-Admins: [msg]") log_admin("PM: [key_name(src)]->IRC: [msg]") - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(X == src) continue if(check_rights(R_ADMIN|R_MOD|R_MENTOR, 0, X.mob)) diff --git a/code/modules/admin/verbs/adminsay.dm b/code/modules/admin/verbs/adminsay.dm index 2a0f78351e4..e3fe5af3263 100644 --- a/code/modules/admin/verbs/adminsay.dm +++ b/code/modules/admin/verbs/adminsay.dm @@ -10,7 +10,7 @@ log_adminsay(msg, src) if(check_rights(R_ADMIN,0)) - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(R_ADMIN & C.holder.rights) msg = "[msg]" to_chat(C, "ADMIN: [key_name(usr, 1)] ([admin_jump_link(mob)]): [msg]") @@ -31,7 +31,7 @@ if(!msg) return - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(check_rights(R_ADMIN|R_MOD|R_MENTOR, 0, C.mob)) var/display_name = key if(holder.fakekey) @@ -62,7 +62,7 @@ enabling = TRUE admin_verbs_mentor += msay - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(check_rights(R_ADMIN|R_MOD, 0, C.mob)) continue if(!check_rights(R_MENTOR, 0, C.mob)) diff --git a/code/modules/admin/verbs/alt_check.dm b/code/modules/admin/verbs/alt_check.dm index c356ba00b6b..d5118d4eb8f 100644 --- a/code/modules/admin/verbs/alt_check.dm +++ b/code/modules/admin/verbs/alt_check.dm @@ -7,7 +7,7 @@
"} if(dbcon.IsConnected()) - for(var/client/C in clients) + for(var/client/C in GLOB.clients) dat += "

[C.ckey] (Player Age: [C.player_age]) - [C.computer_id] / [C.address]
" if(C.related_accounts_cid.len) dat += "--Accounts associated with CID: " diff --git a/code/modules/admin/verbs/antag-ooc.dm b/code/modules/admin/verbs/antag-ooc.dm index 2e0c044c424..8dbb539657c 100644 --- a/code/modules/admin/verbs/antag-ooc.dm +++ b/code/modules/admin/verbs/antag-ooc.dm @@ -12,7 +12,7 @@ if(holder && holder.fakekey) display_name = holder.fakekey - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if((M.mind && M.mind.special_role && M.client) || (M.client && M.client.holder && (M.client.holder.rights & R_ADMIN)) ) to_chat(M, "AOOC: [display_name]: [msg]") diff --git a/code/modules/admin/verbs/custom_event.dm b/code/modules/admin/verbs/custom_event.dm index 546955136f7..10273b529a5 100644 --- a/code/modules/admin/verbs/custom_event.dm +++ b/code/modules/admin/verbs/custom_event.dm @@ -61,7 +61,7 @@ custom_event_admin_msg = input - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(check_rights(R_EVENT,0,X.mob)) to_chat(X, "

Custom Admin Event Info

") to_chat(X, "

A custom event is starting. OOC Admin Info:

") diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 0b7797b84e3..97fe4d4567d 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -208,7 +208,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that usr.show_message(t, 1) feedback_add_details("admin_verb","ASL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/cmd_admin_robotize(var/mob/M in mob_list) +/client/proc/cmd_admin_robotize(var/mob/M in GLOB.mob_list) set category = "Event" set name = "Make Robot" @@ -226,7 +226,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that else alert("Invalid mob") -/client/proc/cmd_admin_animalize(var/mob/M in mob_list) +/client/proc/cmd_admin_animalize(var/mob/M in GLOB.mob_list) set category = "Event" set name = "Make Simple Animal" @@ -250,7 +250,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that M.Animalize() -/client/proc/makepAI(var/turf/T in mob_list) +/client/proc/makepAI(var/turf/T in GLOB.mob_list) set category = "Event" set name = "Make pAI" set desc = "Specify a location to spawn a pAI device, then specify a key to play that pAI" @@ -259,7 +259,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that return var/list/available = list() - for(var/mob/C in mob_list) + for(var/mob/C in GLOB.mob_list) if(C.key) available.Add(C) var/mob/choice = input("Choose a player to play the pAI", "Spawn pAI") in available @@ -286,7 +286,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that paiController.pai_candidates.Remove(candidate) feedback_add_details("admin_verb","MPAI") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/cmd_admin_alienize(var/mob/M in mob_list) +/client/proc/cmd_admin_alienize(var/mob/M in GLOB.mob_list) set category = "Event" set name = "Make Alien" @@ -306,7 +306,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that else alert("Invalid mob") -/client/proc/cmd_admin_slimeize(var/mob/M in mob_list) +/client/proc/cmd_admin_slimeize(var/mob/M in GLOB.mob_list) set category = "Event" set name = "Make slime" @@ -326,7 +326,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that else alert("Invalid mob") -/client/proc/cmd_admin_super(var/mob/M in mob_list) +/client/proc/cmd_admin_super(var/mob/M in GLOB.mob_list) set category = "Event" set name = "Make Superhero" @@ -337,8 +337,8 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that alert("Wait until the game starts") return if(ishuman(M)) - var/type = input("Pick the Superhero","Superhero") as null|anything in all_superheroes - var/datum/superheroes/S = all_superheroes[type] + var/type = input("Pick the Superhero","Superhero") as null|anything in GLOB.all_superheroes + var/datum/superheroes/S = GLOB.all_superheroes[type] if(S) S.create(M) log_admin("[key_name(src)] has turned [M.key] into a Superhero.") @@ -377,7 +377,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that if(confirm != "Yes") return - for(var/I in singularities) + for(var/I in GLOB.singularities) var/obj/singularity/S = I if(!is_level_reachable(S.z)) continue @@ -398,7 +398,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that message_admins("[key_name_admin(src)] has remade the powernets. makepowernets() called.", 0) feedback_add_details("admin_verb","MPWN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/cmd_admin_grantfullaccess(var/mob/M in mob_list) +/client/proc/cmd_admin_grantfullaccess(var/mob/M in GLOB.mob_list) set category = "Admin" set name = "Grant Full Access" @@ -432,7 +432,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that log_admin("[key_name(src)] has granted [M.key] full access.") message_admins("[key_name_admin(usr)] has granted [M.key] full access.", 1) -/client/proc/cmd_assume_direct_control(var/mob/M in mob_list) +/client/proc/cmd_assume_direct_control(var/mob/M in GLOB.mob_list) set category = "Admin" set name = "Assume direct control" set desc = "Direct intervention" @@ -569,7 +569,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that for(var/areatype in areas_without_camera) to_chat(world, "* [areatype]") -/client/proc/cmd_admin_dress(var/mob/living/carbon/human/M in mob_list) +/client/proc/cmd_admin_dress(var/mob/living/carbon/human/M in GLOB.mob_list) set category = "Event" set name = "Select equipment" @@ -691,11 +691,11 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that if(alert("Are you sure? This will start up the engine. Should only be used during debug!",,"Yes","No") != "Yes") return - for(var/obj/machinery/power/emitter/E in machines) + for(var/obj/machinery/power/emitter/E in GLOB.machines) if(E.anchored) E.active = 1 - for(var/obj/machinery/field/generator/F in machines) + for(var/obj/machinery/field/generator/F in GLOB.machines) if(F.active == 0) F.active = 1 F.state = 2 @@ -706,13 +706,13 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that F.update_icon() spawn(30) - for(var/obj/machinery/the_singularitygen/G in machines) + for(var/obj/machinery/the_singularitygen/G in GLOB.machines) if(G.anchored) var/obj/singularity/S = new /obj/singularity(get_turf(G)) S.energy = 800 break - for(var/obj/machinery/power/rad_collector/Rad in machines) + for(var/obj/machinery/power/rad_collector/Rad in GLOB.machines) if(Rad.anchored) if(!Rad.P) var/obj/item/tank/plasma/Plasma = new/obj/item/tank/plasma(Rad) @@ -724,7 +724,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that if(!Rad.active) Rad.toggle_power() - for(var/obj/machinery/power/smes/SMES in machines) + for(var/obj/machinery/power/smes/SMES in GLOB.machines) if(SMES.anchored) SMES.input_attempt = 1 @@ -738,21 +738,21 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that switch(input("Which list?") in list("Players","Admins","Mobs","Living Mobs","Dead Mobs","Silicons","Clients","Respawnable Mobs")) if("Players") - to_chat(usr, jointext(player_list,",")) + to_chat(usr, jointext(GLOB.player_list,",")) if("Admins") - to_chat(usr, jointext(admins,",")) + to_chat(usr, jointext(GLOB.admins,",")) if("Mobs") - to_chat(usr, jointext(mob_list,",")) + to_chat(usr, jointext(GLOB.mob_list,",")) if("Living Mobs") - to_chat(usr, jointext(living_mob_list,",")) + to_chat(usr, jointext(GLOB.living_mob_list,",")) if("Dead Mobs") - to_chat(usr, jointext(dead_mob_list,",")) + to_chat(usr, jointext(GLOB.dead_mob_list,",")) if("Silicons") - to_chat(usr, jointext(silicon_mob_list,",")) + to_chat(usr, jointext(GLOB.silicon_mob_list,",")) if("Clients") - to_chat(usr, jointext(clients,",")) + to_chat(usr, jointext(GLOB.clients,",")) if("Respawnable Mobs") - to_chat(usr, jointext(respawnable_list,",")) + to_chat(usr, jointext(GLOB.respawnable_list,",")) /client/proc/cmd_display_del_log() set category = "Debug" @@ -866,7 +866,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that return var/list/names = list() - for(var/i in ruin_landmarks) + for(var/i in GLOB.ruin_landmarks) var/obj/effect/landmark/ruin/ruin_landmark = i var/datum/map_template/ruin/template = ruin_landmark.ruin_template diff --git a/code/modules/admin/verbs/freeze.dm b/code/modules/admin/verbs/freeze.dm index 9439c63e861..67ae72817f9 100644 --- a/code/modules/admin/verbs/freeze.dm +++ b/code/modules/admin/verbs/freeze.dm @@ -6,7 +6,7 @@ //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// var/global/list/frozen_mob_list = list() -/client/proc/freeze(var/mob/living/M as mob in mob_list) +/client/proc/freeze(var/mob/living/M as mob in GLOB.mob_list) set category = "Admin" set name = "Freeze" @@ -84,7 +84,7 @@ var/global/list/frozen_mob_list = list() //////////////////////////Freeze Mech -/client/proc/freezemecha(var/obj/mecha/O as obj in mechas_list) +/client/proc/freezemecha(var/obj/mecha/O as obj in GLOB.mechas_list) set category = "Admin" set name = "Freeze Mech" diff --git a/code/modules/admin/verbs/gimmick_team.dm b/code/modules/admin/verbs/gimmick_team.dm index 6192ad6b2ac..9790a073401 100644 --- a/code/modules/admin/verbs/gimmick_team.dm +++ b/code/modules/admin/verbs/gimmick_team.dm @@ -42,7 +42,7 @@ var/list/players_to_spawn = list() if(pick_manually) var/list/possible_ghosts = list() - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) if(!G.client.is_afk()) if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD)) possible_ghosts += G diff --git a/code/modules/admin/verbs/honksquad.dm b/code/modules/admin/verbs/honksquad.dm index 1e72c1836da..c9068049c75 100644 --- a/code/modules/admin/verbs/honksquad.dm +++ b/code/modules/admin/verbs/honksquad.dm @@ -38,7 +38,7 @@ var/global/sent_honksquad = 0 //Generates a list of HONKsquad from active ghosts. Then the user picks which characters to respawn as the commandos. var/list/candidates = list() //candidates for being a commando out of all the active ghosts in world. var/list/commandos = list() //actual commando ghosts as picked by the user. - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) if(!G.client.holder && !G.client.is_afk()) //Whoever called/has the proc won't be added to the list. if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD)) candidates += G.key @@ -48,7 +48,7 @@ var/global/sent_honksquad = 0 commandos += candidate//Add their ghost to commandos. //Spawns HONKsquad and equips them. - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(honksquad_number<=0) break if(L.name == "HONKsquad") honk_leader_selected = honksquad_number == 1?1:0 @@ -77,7 +77,7 @@ var/global/sent_honksquad = 0 var/mob/living/carbon/human/new_honksquad = new(spawn_location.loc) var/honksquad_leader_rank = pick("Lieutenant", "Captain", "Major") var/honksquad_rank = pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant 1st Class", "Master Sergeant", "Sergeant Major") - var/honksquad_name = pick(clown_names) + var/honksquad_name = pick(GLOB.clown_names) var/datum/preferences/A = new()//Randomize appearance for the commando. if(honk_leader_selected) diff --git a/code/modules/admin/verbs/infiltratorteam_syndicate.dm b/code/modules/admin/verbs/infiltratorteam_syndicate.dm index a3f30117cdd..274a4839222 100644 --- a/code/modules/admin/verbs/infiltratorteam_syndicate.dm +++ b/code/modules/admin/verbs/infiltratorteam_syndicate.dm @@ -48,7 +48,7 @@ var/global/sent_syndicate_infiltration_team = 0 if(pick_manually) var/list/possible_ghosts = list() - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) if(!G.client.is_afk()) if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD)) possible_ghosts += G @@ -69,7 +69,7 @@ var/global/sent_syndicate_infiltration_team = 0 var/list/sit_spawns = list() var/list/sit_spawns_leader = list() var/list/sit_spawns_mgmt = list() - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name == "Syndicate-Infiltrator") sit_spawns += L if(L.name == "Syndicate-Infiltrator-Leader") diff --git a/code/modules/admin/verbs/massmodvar.dm b/code/modules/admin/verbs/massmodvar.dm index b26a27b3aa6..bafa7d629d3 100644 --- a/code/modules/admin/verbs/massmodvar.dm +++ b/code/modules/admin/verbs/massmodvar.dm @@ -212,19 +212,19 @@ typecache = typecacheof(typecache) . = list() if(ispath(T, /mob)) - for(var/mob/thing in mob_list) + for(var/mob/thing in GLOB.mob_list) if(typecache[thing.type]) . += thing CHECK_TICK else if(ispath(T, /obj/machinery/door)) - for(var/obj/machinery/door/thing in airlocks) + for(var/obj/machinery/door/thing in GLOB.airlocks) if(typecache[thing.type]) . += thing CHECK_TICK else if(ispath(T, /obj/machinery)) - for(var/obj/machinery/thing in machines) + for(var/obj/machinery/thing in GLOB.machines) if(typecache[thing.type]) . += thing CHECK_TICK @@ -254,7 +254,7 @@ CHECK_TICK else if(ispath(T, /client)) - for(var/client/thing in clients) + for(var/client/thing in GLOB.clients) if(typecache[thing.type]) . += thing CHECK_TICK diff --git a/code/modules/admin/verbs/modifyvariables.dm b/code/modules/admin/verbs/modifyvariables.dm index d899fda5b56..f3be2161bb2 100644 --- a/code/modules/admin/verbs/modifyvariables.dm +++ b/code/modules/admin/verbs/modifyvariables.dm @@ -195,7 +195,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "step_size", "bound_height", if(VV_CLIENT) - .["value"] = input("Select reference:", "Reference", current_value) as null|anything in clients + .["value"] = input("Select reference:", "Reference", current_value) as null|anything in GLOB.clients if(.["value"] == null) .["class"] = null return diff --git a/code/modules/admin/verbs/one_click_antag.dm b/code/modules/admin/verbs/one_click_antag.dm index c3641766db0..5799916e79c 100644 --- a/code/modules/admin/verbs/one_click_antag.dm +++ b/code/modules/admin/verbs/one_click_antag.dm @@ -57,7 +57,7 @@ client/proc/one_click_antag() log_admin("[key_name(owner)] tried making [antnum] traitors with One-Click-Antag") message_admins("[key_name_admin(owner)] tried making [antnum] traitors with One-Click-Antag") - for(var/mob/living/carbon/human/applicant in player_list) + for(var/mob/living/carbon/human/applicant in GLOB.player_list) if(CandCheck(ROLE_TRAITOR, applicant, temp)) candidates += applicant @@ -88,7 +88,7 @@ client/proc/one_click_antag() log_admin("[key_name(owner)] tried making [antnum] changelings with One-Click-Antag") message_admins("[key_name_admin(owner)] tried making [antnum] changelings with One-Click-Antag") - for(var/mob/living/carbon/human/applicant in player_list) + for(var/mob/living/carbon/human/applicant in GLOB.player_list) if(CandCheck(ROLE_CHANGELING, applicant, temp)) candidates += applicant @@ -118,7 +118,7 @@ client/proc/one_click_antag() log_admin("[key_name(owner)] tried making [antnum] revolutionaries with One-Click-Antag") message_admins("[key_name_admin(owner)] tried making [antnum] revolutionaries with One-Click-Antag") - for(var/mob/living/carbon/human/applicant in player_list) + for(var/mob/living/carbon/human/applicant in GLOB.player_list) if(CandCheck(ROLE_REV, applicant, temp)) candidates += applicant @@ -166,7 +166,7 @@ client/proc/one_click_antag() log_admin("[key_name(owner)] tried making a Cult with One-Click-Antag") message_admins("[key_name_admin(owner)] tried making a Cult with One-Click-Antag") - for(var/mob/living/carbon/human/applicant in player_list) + for(var/mob/living/carbon/human/applicant in GLOB.player_list) if(CandCheck(ROLE_CULTIST, applicant, temp)) candidates += applicant @@ -195,7 +195,7 @@ client/proc/one_click_antag() log_admin("[key_name(owner)] tried making a [antnum] person Nuke Op Team with One-Click-Antag") message_admins("[key_name_admin(owner)] tried making a [antnum] person Nuke Op Team with One-Click-Antag") - for(var/mob/G in respawnable_list) + for(var/mob/G in GLOB.respawnable_list) if(istype(G) && G.client && (ROLE_OPERATIVE in G.client.prefs.be_special)) if(!jobban_isbanned(G, "operative") && !jobban_isbanned(G, "Syndicate")) if(player_old_enough_antag(G.client,ROLE_OPERATIVE)) @@ -328,7 +328,7 @@ client/proc/one_click_antag() var/syndicate_leader_selected = 0 //when the leader is chosen. The last person spawned. //Generates a list of commandos from active ghosts. Then the user picks which characters to respawn as the commandos. - for(var/mob/G in respawnable_list) + for(var/mob/G in GLOB.respawnable_list) if(!jobban_isbanned(G, "Syndicate")) spawn(0) switch(alert(G,"Do you wish to be considered for an elite syndicate strike team being sent in?","Please answer in 30 seconds!","Yes","No")) @@ -399,7 +399,7 @@ client/proc/one_click_antag() var/mob/living/carbon/human/new_syndicate_commando = new(spawn_location.loc) var/syndicate_commando_leader_rank = pick("Lieutenant", "Captain", "Major") var/syndicate_commando_rank = pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant 1st Class", "Master Sergeant", "Sergeant Major") - var/syndicate_commando_name = pick(last_names) + var/syndicate_commando_name = pick(GLOB.last_names) var/datum/preferences/A = new()//Randomize appearance for the commando. if(syndicate_leader_selected) @@ -437,7 +437,7 @@ client/proc/one_click_antag() log_admin("[key_name(owner)] tried making Vox Raiders with One-Click-Antag") message_admins("[key_name_admin(owner)] tried making Vox Raiders with One-Click-Antag") //Generates a list of candidates from active ghosts. - for(var/mob/G in respawnable_list) + for(var/mob/G in GLOB.respawnable_list) if(istype(G) && G.client && (ROLE_RAIDER in G.client.prefs.be_special)) if(player_old_enough_antag(G.client,ROLE_RAIDER)) if(!jobban_isbanned(G, "raider") && !jobban_isbanned(G, "Syndicate")) @@ -542,7 +542,7 @@ client/proc/one_click_antag() log_admin("[key_name(owner)] tried making Vampires with One-Click-Antag") message_admins("[key_name_admin(owner)] tried making Vampires with One-Click-Antag") - for(var/mob/living/carbon/human/applicant in player_list) + for(var/mob/living/carbon/human/applicant in GLOB.player_list) if(CandCheck(ROLE_VAMPIRE, applicant, temp)) candidates += applicant @@ -567,7 +567,7 @@ client/proc/one_click_antag() message_admins("[key_name_admin(owner)] tried making Thunderdone Teams with One-Click-Antag") //Generates a list of candidates from active ghosts. - for(var/mob/G in respawnable_list) + for(var/mob/G in GLOB.respawnable_list) spawn(0) switch(alert(G,"Do you wish to be considered for a Thunderdome match about to start?","Please answer in 30 seconds!","Yes","No")) if("Yes") diff --git a/code/modules/admin/verbs/onlyone.dm b/code/modules/admin/verbs/onlyone.dm index bffaaa9bc9c..6273c9207e6 100644 --- a/code/modules/admin/verbs/onlyone.dm +++ b/code/modules/admin/verbs/onlyone.dm @@ -4,7 +4,7 @@ return var/list/incompatible_species = list(/datum/species/plasmaman, /datum/species/vox) - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) if(H.stat == DEAD || !(H.client)) continue if(is_special_character(H)) @@ -62,7 +62,7 @@ alert("The game hasn't started yet!") return - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) if(H.stat == 2 || !(H.client)) continue if(is_special_character(H)) continue diff --git a/code/modules/admin/verbs/onlyoneteam.dm b/code/modules/admin/verbs/onlyoneteam.dm index 715472128b8..d2490cdf9c3 100644 --- a/code/modules/admin/verbs/onlyoneteam.dm +++ b/code/modules/admin/verbs/onlyoneteam.dm @@ -5,7 +5,7 @@ var/list/incompatible_species = list(/datum/species/plasmaman, /datum/species/vox) var/team_toggle = 0 - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) if(H.stat == DEAD || !(H.client)) continue if(is_special_character(H)) diff --git a/code/modules/admin/verbs/playsound.dm b/code/modules/admin/verbs/playsound.dm index 47709629186..c7d654dbe68 100644 --- a/code/modules/admin/verbs/playsound.dm +++ b/code/modules/admin/verbs/playsound.dm @@ -10,7 +10,7 @@ var/list/sounds_cache = list() log_admin("[key_name(src)] stopped admin sounds.") message_admins("[key_name_admin(src)] stopped admin sounds.", 1) - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) M << awful_sound /client/proc/play_sound(S as sound) @@ -28,7 +28,7 @@ var/list/sounds_cache = list() log_admin("[key_name(src)] played sound [S]") message_admins("[key_name_admin(src)] played sound [S]", 1) - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.client.prefs.sound & SOUND_MIDI) M << uploaded_sound @@ -92,7 +92,7 @@ var/list/sounds_cache = list() if(C == "Yep") ignore_power = 1 - for(var/O in global_intercoms) + for(var/O in GLOB.global_intercoms) var/obj/item/radio/intercom/I = O if(!is_station_level(I.z) && !ignore_z) continue diff --git a/code/modules/admin/verbs/pray.dm b/code/modules/admin/verbs/pray.dm index 0fd53b8b62a..0823a0e75a5 100644 --- a/code/modules/admin/verbs/pray.dm +++ b/code/modules/admin/verbs/pray.dm @@ -31,7 +31,7 @@ log_say("(PRAYER) [msg]", usr) msg = "[bicon(cross)][prayer_type][deity ? " (to [deity])" : ""]:[key_name(src, 1)] (?) (PP) (VV) (SM) ([admin_jump_link(src)]) (CA) (SC) (BLESS) (SMITE): [msg]" - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(check_rights(R_EVENT,0,X.mob)) to_chat(X, msg) to_chat(usr, "Your prayers have been received by the gods.") @@ -41,7 +41,7 @@ /proc/Centcomm_announce(var/text , var/mob/Sender) var/msg = sanitize(copytext(text, 1, MAX_MESSAGE_LEN)) msg = "CENTCOMM: [key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender)]) (CA) (BSA) [ADMIN_CENTCOM_REPLY(Sender)]): [msg]" - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(R_EVENT & X.holder.rights) to_chat(X, msg) if(X.prefs.sound & SOUND_ADMINHELP) @@ -50,7 +50,7 @@ /proc/Syndicate_announce(var/text , var/mob/Sender) var/msg = sanitize(copytext(text, 1, MAX_MESSAGE_LEN)) msg = "SYNDICATE: [key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender)]) (CA) (BSA) [ADMIN_SYNDICATE_REPLY(Sender)]: [msg]" - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(check_rights(R_EVENT,0,X.mob)) to_chat(X, msg) if(X.prefs.sound & SOUND_ADMINHELP) @@ -59,7 +59,7 @@ /proc/HONK_announce(var/text , var/mob/Sender) var/msg = sanitize(copytext(text, 1, MAX_MESSAGE_LEN)) msg = "HONK: [key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender)]) (CA) (BSA) (RPLY): [msg]" - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(R_EVENT & X.holder.rights) to_chat(X, msg) if(X.prefs.sound & SOUND_ADMINHELP) @@ -70,7 +70,7 @@ msg = "ERT REQUEST: [key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender)]) (CA) (BSA) (RESPOND): [msg]" if(repeat_warning) msg += "
WARNING: ERT request has gone 5 minutes with no reply!" - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(check_rights(R_EVENT,0,X.mob)) to_chat(X, msg) if(X.prefs.sound & SOUND_ADMINHELP) @@ -80,7 +80,7 @@ var/nuke_code = get_nuke_code() var/msg = sanitize(copytext(text, 1, MAX_MESSAGE_LEN)) msg = "NUKE CODE REQUEST: [key_name(Sender)] (PP) (VV) (SM) ([admin_jump_link(Sender)]) (CA) (BSA) [ADMIN_CENTCOM_REPLY(Sender)]: [msg]" - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(check_rights(R_EVENT,0,X.mob)) to_chat(X, msg) to_chat(X, "The nuke code is [nuke_code].") diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index 013fd4b2e40..38442d9011f 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -1,4 +1,4 @@ -/client/proc/cmd_admin_drop_everything(mob/M as mob in mob_list) +/client/proc/cmd_admin_drop_everything(mob/M as mob in GLOB.mob_list) set category = null set name = "Drop Everything" @@ -16,7 +16,7 @@ message_admins("[key_name_admin(usr)] made [key_name_admin(M)] drop everything!", 1) feedback_add_details("admin_verb","DEVR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/cmd_admin_prison(mob/M as mob in mob_list) +/client/proc/cmd_admin_prison(mob/M as mob in GLOB.mob_list) set category = "Admin" set name = "Prison" @@ -44,7 +44,7 @@ message_admins("[key_name_admin(usr)] sent [key_name_admin(M)] to the prison station.", 1) feedback_add_details("admin_verb","PRISON") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/cmd_admin_subtle_message(mob/M as mob in mob_list) +/client/proc/cmd_admin_subtle_message(mob/M as mob in GLOB.mob_list) set category = "Event" set name = "Subtle Message" @@ -83,7 +83,7 @@ var/missing_ages = 0 var/msg = "" - for(var/client/C in clients) + for(var/client/C in GLOB.clients) if(C.player_age == "Requires database") missing_ages = 1 continue @@ -144,13 +144,13 @@ -/client/proc/cmd_admin_headset_message(mob/M in mob_list) +/client/proc/cmd_admin_headset_message(mob/M in GLOB.mob_list) set category = "Event" set name = "Headset Message" admin_headset_message(M) -/client/proc/admin_headset_message(mob/M in mob_list, sender = null) +/client/proc/admin_headset_message(mob/M in GLOB.mob_list, sender = null) var/mob/living/carbon/human/H = M if(!check_rights(R_ADMIN)) @@ -181,7 +181,7 @@ -/client/proc/cmd_admin_godmode(mob/M as mob in mob_list) +/client/proc/cmd_admin_godmode(mob/M as mob in GLOB.mob_list) set category = "Admin" set name = "Godmode" @@ -342,7 +342,7 @@ Traitors and the like can also be revived with the previous role mostly intact. return var/mob/dead/observer/G_found - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) if(G.ckey == input) G_found = G break @@ -490,7 +490,7 @@ Traitors and the like can also be revived with the previous role mostly intact. /proc/create_xeno(ckey) if(!ckey) var/list/candidates = list() - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.stat != DEAD) continue //we are not dead! if(!(ROLE_ALIEN in M.client.prefs.be_special)) continue //we don't want to be an alium if(jobban_isbanned(M, "alien") || jobban_isbanned(M, "Syndicate")) continue //we are jobbanned @@ -525,7 +525,7 @@ Traitors and the like can also be revived with the previous role mostly intact. var/list/mobs = list() var/list/ghosts = list() - var/list/sortmob = sortAtom(mob_list) // get the mob list. + var/list/sortmob = sortAtom(GLOB.mob_list) // get the mob list. /var/any=0 for(var/mob/dead/observer/M in sortmob) mobs.Add(M) //filter it where it's only ghosts @@ -564,7 +564,7 @@ Traitors and the like can also be revived with the previous role mostly intact. feedback_add_details("admin_verb","IONC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/cmd_admin_rejuvenate(mob/living/M as mob in mob_list) +/client/proc/cmd_admin_rejuvenate(mob/living/M as mob in GLOB.mob_list) set category = "Event" set name = "Rejuvenate" @@ -721,7 +721,7 @@ Traitors and the like can also be revived with the previous role mostly intact. else return -/client/proc/cmd_admin_gib(mob/M as mob in mob_list) +/client/proc/cmd_admin_gib(mob/M as mob in GLOB.mob_list) set category = "Admin" set name = "Gib" @@ -761,7 +761,7 @@ Traitors and the like can also be revived with the previous role mostly intact. message_admins("[key_name_admin(usr)] used gibself.", 1) feedback_add_details("admin_verb","GIBS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/cmd_admin_check_contents(mob/living/M as mob in mob_list) +/client/proc/cmd_admin_check_contents(mob/living/M as mob in GLOB.mob_list) set category = "Admin" set name = "Check Contents" @@ -861,7 +861,7 @@ Traitors and the like can also be revived with the previous role mostly intact. log_admin("[key_name(src)] has [SSshuttle.emergencyNoEscape ? "denied" : "allowed"] the shuttle to be called.") message_admins("[key_name_admin(usr)] has [SSshuttle.emergencyNoEscape ? "denied" : "allowed"] the shuttle to be called.") -/client/proc/cmd_admin_attack_log(mob/M as mob in mob_list) +/client/proc/cmd_admin_attack_log(mob/M as mob in GLOB.mob_list) set category = "Admin" set name = "Attack Log" @@ -942,7 +942,7 @@ Traitors and the like can also be revived with the previous role mostly intact. var/datum/TCS_Compiler/C = S.Compiler S.rawcode = "" C.Compile("") - for(var/obj/machinery/computer/telecomms/traffic/T in machines) + for(var/obj/machinery/computer/telecomms/traffic/T in GLOB.machines) T.storedcode = "" log_admin("[key_name(usr)] blanked all telecomms scripts.") message_admins("[key_name_admin(usr)] blanked all telecomms scripts.") @@ -963,7 +963,7 @@ Traitors and the like can also be revived with the previous role mostly intact. var/job_string var/key_string var/role_string - for(var/mob/living/carbon/human/H in living_mob_list) + for(var/mob/living/carbon/human/H in GLOB.living_mob_list) if(!isLivingSSD(H)) continue mins_ssd = round((world.time - H.last_logout) / 600) diff --git a/code/modules/admin/verbs/striketeam.dm b/code/modules/admin/verbs/striketeam.dm index 1e809bcd948..0a481460344 100644 --- a/code/modules/admin/verbs/striketeam.dm +++ b/code/modules/admin/verbs/striketeam.dm @@ -48,7 +48,7 @@ var/global/sent_strike_team = 0 var/commando_number = commandos_possible //for selecting a leader var/is_leader = TRUE // set to FALSE after leader is spawned - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(commando_number <= 0) break @@ -108,7 +108,7 @@ var/global/sent_strike_team = 0 commando_number-- //Spawns the rest of the commando gear. - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name == "Commando_Manual") //new /obj/item/gun/energy/pulse_rifle(L.loc) var/obj/item/paper/P = new(L.loc) @@ -119,7 +119,7 @@ var/global/sent_strike_team = 0 P.stamp(stamp) qdel(stamp) - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name == "Commando-Bomb") new /obj/effect/spawner/newbomb/timer/syndicate(L.loc) qdel(L) @@ -132,7 +132,7 @@ var/global/sent_strike_team = 0 var/mob/living/carbon/human/new_commando = new(spawn_location.loc) var/commando_leader_rank = pick("Lieutenant", "Captain", "Major") var/commando_rank = pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant 1st Class", "Master Sergeant", "Sergeant Major") - var/commando_name = pick(last_names) + var/commando_name = pick(GLOB.last_names) var/datum/preferences/A = new()//Randomize appearance for the commando. if(is_leader) diff --git a/code/modules/admin/verbs/striketeam_syndicate.dm b/code/modules/admin/verbs/striketeam_syndicate.dm index c5f46c98592..bb5776f782c 100644 --- a/code/modules/admin/verbs/striketeam_syndicate.dm +++ b/code/modules/admin/verbs/striketeam_syndicate.dm @@ -53,7 +53,7 @@ var/global/sent_syndicate_strike_team = 0 sent_syndicate_strike_team = 1 //Spawns commandos and equips them. - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(syndicate_commando_number <= 0) break @@ -88,7 +88,7 @@ var/global/sent_syndicate_strike_team = 0 is_leader = FALSE syndicate_commando_number-- - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name == "Syndicate-Commando-Bomb") new /obj/effect/spawner/newbomb/timer/syndicate(L.loc) qdel(L) @@ -101,7 +101,7 @@ var/global/sent_syndicate_strike_team = 0 var/mob/living/carbon/human/new_syndicate_commando = new(spawn_location.loc) var/syndicate_commando_leader_rank = pick("Lieutenant", "Captain", "Major") var/syndicate_commando_rank = pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant 1st Class", "Master Sergeant", "Sergeant Major") - var/syndicate_commando_name = pick(last_names) + var/syndicate_commando_name = pick(GLOB.last_names) var/datum/preferences/A = new()//Randomize appearance for the commando. if(is_leader) diff --git a/code/modules/atmos_automation/implementation/emitters.dm b/code/modules/atmos_automation/implementation/emitters.dm index 10469de1db8..100d68708cd 100644 --- a/code/modules/atmos_automation/implementation/emitters.dm +++ b/code/modules/atmos_automation/implementation/emitters.dm @@ -31,7 +31,7 @@ return 1 if(href_list["set_subject"]) var/list/emitters=list() - for(var/obj/machinery/power/emitter/E in machines) + for(var/obj/machinery/power/emitter/E in GLOB.machines) if(!isnull(E.id_tag) && E.frequency == parent.frequency) emitters|=E.id_tag if(emitters.len==0) diff --git a/code/modules/atmos_automation/implementation/injectors.dm b/code/modules/atmos_automation/implementation/injectors.dm index fee6cf1e33c..cc17dd27921 100644 --- a/code/modules/atmos_automation/implementation/injectors.dm +++ b/code/modules/atmos_automation/implementation/injectors.dm @@ -35,7 +35,7 @@ return 1 if(href_list["set_injector"]) var/list/injector_names=list() - for(var/obj/machinery/atmospherics/unary/outlet_injector/I in machines) + for(var/obj/machinery/atmospherics/unary/outlet_injector/I in GLOB.machines) if(!isnull(I.id_tag) && I.frequency == parent.frequency) injector_names|=I.id_tag injector = input("Select an injector:", "Sensor Data", injector) as null|anything in injector_names @@ -75,7 +75,7 @@ return 1 if(href_list["set_injector"]) var/list/injector_names=list() - for(var/obj/machinery/atmospherics/unary/outlet_injector/I in machines) + for(var/obj/machinery/atmospherics/unary/outlet_injector/I in GLOB.machines) if(!isnull(I.id_tag) && I.frequency == parent.frequency) injector_names|=I.id_tag injector = input("Select an injector:", "Sensor Data", injector) as null|anything in injector_names diff --git a/code/modules/atmos_automation/implementation/scrubbers.dm b/code/modules/atmos_automation/implementation/scrubbers.dm index 158ac1d835f..4188773a6a4 100644 --- a/code/modules/atmos_automation/implementation/scrubbers.dm +++ b/code/modules/atmos_automation/implementation/scrubbers.dm @@ -35,7 +35,7 @@ return 1 if(href_list["set_scrubber"]) var/list/injector_names=list() - for(var/obj/machinery/atmospherics/unary/vent_scrubber/S in machines) + for(var/obj/machinery/atmospherics/unary/vent_scrubber/S in GLOB.machines) if(!isnull(S.id_tag) && S.frequency == parent.frequency) injector_names|=S.id_tag scrubber = input("Select a scrubber:", "Scrubbers", scrubber) as null|anything in injector_names @@ -77,7 +77,7 @@ return 1 if(href_list["set_scrubber"]) var/list/injector_names=list() - for(var/obj/machinery/atmospherics/unary/vent_scrubber/S in machines) + for(var/obj/machinery/atmospherics/unary/vent_scrubber/S in GLOB.machines) if(!isnull(S.id_tag) && S.frequency == parent.frequency) injector_names|=S.id_tag scrubber = input("Select a scrubber:", "Scrubbers", scrubber) as null|anything in injector_names @@ -145,7 +145,7 @@ var/global/list/gas_labels=list( return 1 if(href_list["set_scrubber"]) var/list/injector_names=list() - for(var/obj/machinery/atmospherics/unary/vent_scrubber/S in machines) + for(var/obj/machinery/atmospherics/unary/vent_scrubber/S in GLOB.machines) if(!isnull(S.id_tag) && S.frequency == parent.frequency) injector_names|=S.id_tag scrubber = input("Select a scrubber:", "Scrubbers", scrubber) as null|anything in injector_names diff --git a/code/modules/atmos_automation/implementation/sensors.dm b/code/modules/atmos_automation/implementation/sensors.dm index 8b3b1ece5b5..487298aa266 100644 --- a/code/modules/atmos_automation/implementation/sensors.dm +++ b/code/modules/atmos_automation/implementation/sensors.dm @@ -45,10 +45,10 @@ return 1 if(href_list["set_sensor"]) var/list/sensor_list = list() - for(var/obj/machinery/air_sensor/G in machines) + for(var/obj/machinery/air_sensor/G in GLOB.machines) if(!isnull(G.id_tag) && G.frequency == parent.frequency) sensor_list|=G.id_tag - for(var/obj/machinery/meter/M in machines) + for(var/obj/machinery/meter/M in GLOB.machines) if(!isnull(M.id_tag) && M.frequency == parent.frequency) sensor_list|=M.id_tag sensor = input("Select a sensor:", "Sensor Data", field) as null|anything in sensor_list diff --git a/code/modules/atmos_automation/implementation/vent_pump.dm b/code/modules/atmos_automation/implementation/vent_pump.dm index 9a8949ccde2..71d728b316d 100644 --- a/code/modules/atmos_automation/implementation/vent_pump.dm +++ b/code/modules/atmos_automation/implementation/vent_pump.dm @@ -41,7 +41,7 @@ if(href_list["set_vent_pump"]) var/list/injector_names = list() if(!vent_type) - for(var/obj/machinery/atmospherics/unary/vent_pump/I in machines) + for(var/obj/machinery/atmospherics/unary/vent_pump/I in GLOB.machines) if(!isnull(I.id_tag) && I.frequency == parent.frequency) injector_names |= I.id_tag else @@ -98,7 +98,7 @@ if(href_list["set_vent_pump"]) var/list/injector_names=list() if(!mode) - for(var/obj/machinery/atmospherics/unary/vent_pump/I in machines) + for(var/obj/machinery/atmospherics/unary/vent_pump/I in GLOB.machines) if(!isnull(I.id_tag) && I.frequency == parent.frequency) injector_names|=I.id_tag else @@ -190,7 +190,7 @@ if(!isnull(I.id_tag) && I.frequency == parent.frequency) injector_names|=I.id_tag else - for(var/obj/machinery/atmospherics/unary/vent_pump/I in machines) + for(var/obj/machinery/atmospherics/unary/vent_pump/I in GLOB.machines) if(!isnull(I.id_tag) && I.frequency == parent.frequency) injector_names|=I.id_tag vent_pump = input("Select a vent:", "Vent Pumps", vent_pump) as null|anything in injector_names @@ -282,7 +282,7 @@ checks bitflags if(!isnull(I.id_tag) && I.frequency == parent.frequency) injector_names|=I.id_tag else - for(var/obj/machinery/atmospherics/unary/vent_pump/I in machines) + for(var/obj/machinery/atmospherics/unary/vent_pump/I in GLOB.machines) if(!isnull(I.id_tag) && I.frequency == parent.frequency) injector_names|=I.id_tag vent_pump = input("Select a vent:", "Vent Pumps", vent_pump) as null|anything in injector_names diff --git a/code/modules/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm index 5f25aa8a642..f67d1ac6c0b 100644 --- a/code/modules/awaymissions/corpse.dm +++ b/code/modules/awaymissions/corpse.dm @@ -51,11 +51,11 @@ if(instant || (roundstart && (ticker && ticker.current_state > GAME_STATE_SETTING_UP))) create() else - poi_list |= src + GLOB.poi_list |= src LAZYADD(GLOB.mob_spawners[name], src) /obj/effect/mob_spawn/Destroy() - poi_list -= src + GLOB.poi_list -= src var/list/spawners = GLOB.mob_spawners[name] LAZYREMOVE(spawners, src) if(!LAZYLEN(spawners)) @@ -70,6 +70,9 @@ /obj/effect/mob_spawn/proc/create(ckey, flavour = TRUE, name) var/mob/living/M = new mob_type(get_turf(src)) //living mobs only + var/mob/living/carbon/human/H = M + if(H && !H.dna) + H.Initialize(null) if(!random) M.real_name = mob_name ? mob_name : M.name if(!mob_gender) @@ -338,7 +341,7 @@ outfit = /datum/outfit/job/clown /obj/effect/mob_spawn/human/clown/Initialize() - mob_name = pick(clown_names) + mob_name = pick(GLOB.clown_names) ..() /obj/effect/mob_spawn/human/corpse/clownmili @@ -346,7 +349,7 @@ outfit = /datum/outfit/clownsoldier /obj/effect/mob_spawn/human/corpse/clownmili/Initialize() - mob_name = "Officer [pick(clown_names)]" + mob_name = "Officer [pick(GLOB.clown_names)]" ..() /obj/effect/mob_spawn/human/corpse/clownoff @@ -354,7 +357,7 @@ outfit = /datum/outfit/clownofficer /obj/effect/mob_spawn/human/corpse/clownoff/Initialize() - mob_name = "Honk Specialist [pick(clown_names)]" + mob_name = "Honk Specialist [pick(GLOB.clown_names)]" ..() @@ -385,7 +388,7 @@ outfit = /datum/outfit/job/mime /obj/effect/mob_spawn/human/mime/Initialize() - mob_name = pick(mime_names) + mob_name = pick(GLOB.mime_names) ..() /obj/effect/mob_spawn/human/scientist diff --git a/code/modules/awaymissions/mission_code/UO71-terrorspiders.dm b/code/modules/awaymissions/mission_code/UO71-terrorspiders.dm index e74da2a6628..0e9847cdf01 100644 --- a/code/modules/awaymissions/mission_code/UO71-terrorspiders.dm +++ b/code/modules/awaymissions/mission_code/UO71-terrorspiders.dm @@ -248,7 +248,7 @@ spawn(1) beenused = 1 var/unlocked_something = 0 - for(var/obj/machinery/door/poddoor/P in airlocks) + for(var/obj/machinery/door/poddoor/P in GLOB.airlocks) if(P.density && P.id_tag == door_to_open && P.z == z) P.open() unlocked_something = 1 diff --git a/code/modules/awaymissions/mission_code/stationCollision.dm b/code/modules/awaymissions/mission_code/stationCollision.dm index e4b2cd0ddfe..17ece10d71a 100644 --- a/code/modules/awaymissions/mission_code/stationCollision.dm +++ b/code/modules/awaymissions/mission_code/stationCollision.dm @@ -152,7 +152,7 @@ var/sc_safecode5 = "[rand(0,9)]" new /obj/item/clothing/head/helmet/space/cult(src) new /obj/item/clothing/suit/space/cult(src) //new /obj/item/teleportation_scroll(src) - new /obj/item/ore/diamond(src) + new /obj/item/stack/ore/diamond(src) /* * Modified Nar-Sie diff --git a/code/modules/awaymissions/mission_code/wildwest.dm b/code/modules/awaymissions/mission_code/wildwest.dm index 90d27fbf7ed..73509693012 100644 --- a/code/modules/awaymissions/mission_code/wildwest.dm +++ b/code/modules/awaymissions/mission_code/wildwest.dm @@ -177,8 +177,8 @@ spawn(rand(800,1200)) if(C.stat == DEAD) - dead_mob_list -= C - living_mob_list += C + GLOB.dead_mob_list -= C + GLOB.living_mob_list += C C.stat = CONSCIOUS C.timeofdeath = 0 C.setToxLoss(0) @@ -237,7 +237,7 @@ to_chat(user, "The communicator buzzes, and you hear the voice again: 'Really? I think not. Get them!'") if(option_threat) to_chat(user, "The communicator buzzes, and you hear the voice again: 'Oh really now?' You hear a clicking sound. 'Team, get back here. We have trouble'. Then the line goes dead.") - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name == "wildwest_syndipod") var/obj/spacepod/syndi/P = new /obj/spacepod/syndi(get_turf(L)) P.name = "Syndi Recon Pod" @@ -250,7 +250,7 @@ used = TRUE /obj/item/wildwest_communicator/proc/stand_down() - for(var/mob/living/simple_animal/hostile/syndicate/ranged/wildwest/W in living_mob_list) + for(var/mob/living/simple_animal/hostile/syndicate/ranged/wildwest/W in GLOB.living_mob_list) W.on_alert = FALSE /mob/living/simple_animal/hostile/syndicate/ranged/wildwest @@ -265,6 +265,6 @@ // putting this up here so we don't say anything after deathgasp if(can_die() && !on_alert) say("How could you betray the Syndicate?") - for(var/mob/living/simple_animal/hostile/syndicate/ranged/wildwest/W in living_mob_list) + for(var/mob/living/simple_animal/hostile/syndicate/ranged/wildwest/W in GLOB.living_mob_list) W.on_alert = TRUE return ..(gibbed) diff --git a/code/modules/awaymissions/zlevel.dm b/code/modules/awaymissions/zlevel.dm index c0bc96489b4..c617b90030f 100644 --- a/code/modules/awaymissions/zlevel.dm +++ b/code/modules/awaymissions/zlevel.dm @@ -59,7 +59,7 @@ var/global/list/potentialRandomZlevels = generateMapList(filename = "config/away space_manager.remove_dirt(zlev) log_world(" Away mission loaded: [map]") - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name != "awaystart") continue awaydestinations.Add(L) @@ -92,7 +92,7 @@ var/global/list/potentialRandomZlevels = generateMapList(filename = "config/away //map_transition_config.Add(AWAY_MISSION_LIST) - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(L.name != "awaystart") continue awaydestinations.Add(L) diff --git a/code/modules/awaymissions/zvis.dm b/code/modules/awaymissions/zvis.dm index 4324377149d..03adaeda629 100644 --- a/code/modules/awaymissions/zvis.dm +++ b/code/modules/awaymissions/zvis.dm @@ -159,12 +159,12 @@ /obj/effect/view_portal/New() ..() - portals += src + GLOB.portals += src /obj/effect/view_portal/Initialize() ..() if(id) - for(var/obj/effect/view_portal/O in portals) + for(var/obj/effect/view_portal/O in GLOB.portals) if(id == O.id && O != src && can_link(O)) other = O O.other = src @@ -174,7 +174,7 @@ return /obj/effect/view_portal/Destroy() - portals -= src + GLOB.portals -= src return ..() /obj/effect/view_portal/proc/can_link(obj/effect/view_portal/P) diff --git a/code/modules/buildmode/buildmode.dm b/code/modules/buildmode/buildmode.dm index 934eba8117c..3c91dc49a4b 100644 --- a/code/modules/buildmode/buildmode.dm +++ b/code/modules/buildmode/buildmode.dm @@ -108,7 +108,7 @@ /datum/click_intercept/buildmode/InterceptClickOn(user, params, atom/object) mode.handle_click(user, params, object) -/proc/togglebuildmode(mob/M in player_list) +/proc/togglebuildmode(mob/M in GLOB.player_list) set name = "Toggle Build Mode" set category = "Event" diff --git a/code/modules/buildmode/submodes/link.dm b/code/modules/buildmode/submodes/link.dm index 153b5a7698e..90709463363 100644 --- a/code/modules/buildmode/submodes/link.dm +++ b/code/modules/buildmode/submodes/link.dm @@ -89,6 +89,6 @@ for(var/obj/machinery/door/airlock/P in range(M.range,M)) if(P.id_tag == M.id) form_connection(M, P, M.normaldoorcontrol) - for(var/obj/machinery/door/poddoor/P in airlocks) + for(var/obj/machinery/door/poddoor/P in GLOB.airlocks) if(P.id_tag == M.id) form_connection(M, P, !M.normaldoorcontrol) diff --git a/code/modules/client/asset_cache.dm b/code/modules/client/asset_cache.dm index 0fe05e8ff92..4c595b23411 100644 --- a/code/modules/client/asset_cache.dm +++ b/code/modules/client/asset_cache.dm @@ -147,7 +147,7 @@ proc/getFilesSlow(var/client/client, var/list/files, var/register_asset = TRUE) var/datum/asset/A = new type() A.register() - for(var/client/C in clients) + for(var/client/C in GLOB.clients) //doing this to a client too soon after they've connected can cause issues, also the proc we call sleeps spawn(10) getFilesSlow(C, asset_cache, FALSE) diff --git a/code/modules/client/client procs.dm b/code/modules/client/client procs.dm index 99f7fa69746..bff5bd23ce4 100644 --- a/code/modules/client/client procs.dm +++ b/code/modules/client/client procs.dm @@ -306,13 +306,13 @@ to_chat(src, "If the title screen is black, resources are still downloading. Please be patient until the title screen appears.") - clients += src - directory[ckey] = src + GLOB.clients += src + GLOB.directory[ckey] = src //Admin Authorisation holder = admin_datums[ckey] if(holder) - admins += src + GLOB.admins += src holder.owner = src donator_check() @@ -392,9 +392,9 @@ /client/Del() if(holder) holder.owner = null - admins -= src - directory -= ckey - clients -= src + GLOB.admins -= src + GLOB.directory -= ckey + GLOB.clients -= src Master.UpdateTickRate() return ..() @@ -648,8 +648,8 @@ //For debugging purposes /client/proc/list_all_languages() - for(var/L in all_languages) - var/datum/language/lang = all_languages[L] + for(var/L in GLOB.all_languages) + var/datum/language/lang = GLOB.all_languages[L] var/message = "[lang.name] : [lang.type]" if(lang.flags & RESTRICTED) message += " (RESTRICTED)" diff --git a/code/modules/client/preference/preferences.dm b/code/modules/client/preference/preferences.dm index 0470ac9e274..e0ab0087b97 100644 --- a/code/modules/client/preference/preferences.dm +++ b/code/modules/client/preference/preferences.dm @@ -321,7 +321,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts dat += "Hair: " dat += "[h_style]" dat += "Color [color_square(h_colour)]" - var/datum/sprite_accessory/temp_hair_style = hair_styles_public_list[h_style] + var/datum/sprite_accessory/temp_hair_style = GLOB.hair_styles_public_list[h_style] if(temp_hair_style && temp_hair_style.secondary_theme && !temp_hair_style.no_sec_colour) dat += " Color #2 [color_square(h_sec_colour)]" dat += "
" @@ -329,7 +329,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts dat += "Facial Hair: " dat += "[f_style ? "[f_style]" : "Shaved"]" dat += "Color [color_square(f_colour)]" - var/datum/sprite_accessory/temp_facial_hair_style = facial_hair_styles_list[f_style] + var/datum/sprite_accessory/temp_facial_hair_style = GLOB.facial_hair_styles_list[f_style] if(temp_facial_hair_style && temp_facial_hair_style.secondary_theme && !temp_facial_hair_style.no_sec_colour) dat += " Color #2 [color_square(f_sec_colour)]" dat += "
" @@ -1252,7 +1252,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if(S.bodyflags & HAS_SKIN_COLOR) s_colour = rand_hex_color() if("bag") - backbag = pick(backbaglist) + backbag = pick(GLOB.backbaglist) /*if("skin_style") h_style = random_skin_style(gender)*/ if("all") @@ -1281,14 +1281,14 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts // var/whitelisted = 0 if(config.usealienwhitelist) //If we're using the whitelist, make sure to check it! - for(var/Spec in whitelisted_species) + for(var/Spec in GLOB.whitelisted_species) if(is_alien_whitelisted(user,Spec)) new_species += Spec // whitelisted = 1 // if(!whitelisted) // alert(user, "You cannot change your species as you need to be whitelisted. If you wish to be whitelisted contact an admin in-game, on the forums, or on IRC.") else //Not using the whitelist? Aliens for everyone! - new_species += whitelisted_species + new_species += GLOB.whitelisted_species species = input("Please select a species", "Character Generation", null) in new_species var/datum/species/NS = GLOB.all_species[species] @@ -1334,15 +1334,15 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts m_colours["tail"] = "#000000" // Don't wear another species' underwear! - var/datum/sprite_accessory/SA = underwear_list[underwear] + var/datum/sprite_accessory/SA = GLOB.underwear_list[underwear] if(!SA || !(species in SA.species_allowed)) underwear = random_underwear(gender, species) - SA = undershirt_list[undershirt] + SA = GLOB.undershirt_list[undershirt] if(!SA || !(species in SA.species_allowed)) undershirt = random_undershirt(gender, species) - SA = socks_list[socks] + SA = GLOB.socks_list[socks] if(!SA || !(species in SA.species_allowed)) socks = random_socks(gender, species) @@ -1373,8 +1373,8 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts var/list/new_languages = list("None") /* if(config.usealienwhitelist) - for(var/L in all_languages) - var/datum/language/lang = all_languages[L] + for(var/L in GLOB.all_languages) + var/datum/language/lang = GLOB.all_languages[L] if((!(lang.flags & RESTRICTED)) && (is_alien_whitelisted(user, L)||(!( lang.flags & WHITELISTED )))) new_languages += lang languages_available = 1 @@ -1383,8 +1383,8 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts alert(user, "There are not currently any available secondary languages.") else */ - for(var/L in all_languages) - var/datum/language/lang = all_languages[L] + for(var/L in GLOB.all_languages) + var/datum/language/lang = GLOB.all_languages[L] if(!(lang.flags & RESTRICTED)) new_languages += lang.name @@ -1415,7 +1415,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("secondary_hair") if(species in list("Human", "Unathi", "Tajaran", "Skrell", "Machine", "Vulpkanin", "Vox")) - var/datum/sprite_accessory/hair_style = hair_styles_public_list[h_style] + var/datum/sprite_accessory/hair_style = GLOB.hair_styles_public_list[h_style] if(hair_style.secondary_theme && !hair_style.no_sec_colour) var/new_hair = input(user, "Choose your character's secondary hair colour:", "Character Preference", h_sec_colour) as color|null if(new_hair) @@ -1423,8 +1423,8 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("h_style") var/list/valid_hairstyles = list() - for(var/hairstyle in hair_styles_public_list) - var/datum/sprite_accessory/SA = hair_styles_public_list[hairstyle] + for(var/hairstyle in GLOB.hair_styles_public_list) + var/datum/sprite_accessory/SA = GLOB.hair_styles_public_list[hairstyle] if(hairstyle == "Bald") //Just in case. valid_hairstyles += hairstyle @@ -1460,8 +1460,8 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("ha_style") if(S.bodyflags & HAS_HEAD_ACCESSORY) //Species with head accessories. var/list/valid_head_accessory_styles = list() - for(var/head_accessory_style in head_accessory_styles_list) - var/datum/sprite_accessory/H = head_accessory_styles_list[head_accessory_style] + for(var/head_accessory_style in GLOB.head_accessory_styles_list) + var/datum/sprite_accessory/H = GLOB.head_accessory_styles_list[head_accessory_style] if(!(species in H.species_allowed)) continue @@ -1476,9 +1476,9 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts return if(S.bodyflags & HAS_ALT_HEADS) //Species with alt heads. var/list/valid_alt_heads = list() - valid_alt_heads["None"] = alt_heads_list["None"] //The only null entry should be the "None" option - for(var/alternate_head in alt_heads_list) - var/datum/sprite_accessory/alt_heads/head = alt_heads_list[alternate_head] + valid_alt_heads["None"] = GLOB.alt_heads_list["None"] //The only null entry should be the "None" option + for(var/alternate_head in GLOB.alt_heads_list) + var/datum/sprite_accessory/alt_heads/head = GLOB.alt_heads_list[alternate_head] if(!(species in head.species_allowed)) continue @@ -1489,16 +1489,16 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts alt_head = new_alt_head if(m_styles["head"]) var/head_marking = m_styles["head"] - var/datum/sprite_accessory/body_markings/head/head_marking_style = marking_styles_list[head_marking] + var/datum/sprite_accessory/body_markings/head/head_marking_style = GLOB.marking_styles_list[head_marking] if(!head_marking_style.heads_allowed || (!("All" in head_marking_style.heads_allowed) && !(alt_head in head_marking_style.heads_allowed))) m_styles["head"] = "None" if("m_style_head") if(S.bodyflags & HAS_HEAD_MARKINGS) //Species with head markings. var/list/valid_markings = list() - valid_markings["None"] = marking_styles_list["None"] - for(var/markingstyle in marking_styles_list) - var/datum/sprite_accessory/body_markings/head/M = marking_styles_list[markingstyle] + valid_markings["None"] = GLOB.marking_styles_list["None"] + for(var/markingstyle in GLOB.marking_styles_list) + var/datum/sprite_accessory/body_markings/head/M = GLOB.marking_styles_list[markingstyle] if(!(species in M.species_allowed)) continue if(M.marking_location != "head") @@ -1539,9 +1539,9 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("m_style_body") if(S.bodyflags & HAS_BODY_MARKINGS) //Species with body markings/tattoos. var/list/valid_markings = list() - valid_markings["None"] = marking_styles_list["None"] - for(var/markingstyle in marking_styles_list) - var/datum/sprite_accessory/M = marking_styles_list[markingstyle] + valid_markings["None"] = GLOB.marking_styles_list["None"] + for(var/markingstyle in GLOB.marking_styles_list) + var/datum/sprite_accessory/M = GLOB.marking_styles_list[markingstyle] if(!(species in M.species_allowed)) continue if(M.marking_location != "body") @@ -1563,9 +1563,9 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("m_style_tail") if(S.bodyflags & HAS_TAIL_MARKINGS) //Species with tail markings. var/list/valid_markings = list() - valid_markings["None"] = marking_styles_list["None"] - for(var/markingstyle in marking_styles_list) - var/datum/sprite_accessory/body_markings/tail/M = marking_styles_list[markingstyle] + valid_markings["None"] = GLOB.marking_styles_list["None"] + for(var/markingstyle in GLOB.marking_styles_list) + var/datum/sprite_accessory/body_markings/tail/M = GLOB.marking_styles_list[markingstyle] if(M.marking_location != "tail") continue if(!(species in M.species_allowed)) @@ -1616,7 +1616,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("secondary_facial") if(species in list("Human", "Unathi", "Tajaran", "Skrell", "Machine", "Vulpkanin", "Vox")) - var/datum/sprite_accessory/facial_hair_style = facial_hair_styles_list[f_style] + var/datum/sprite_accessory/facial_hair_style = GLOB.facial_hair_styles_list[f_style] if(facial_hair_style.secondary_theme && !facial_hair_style.no_sec_colour) var/new_facial = input(user, "Choose your character's secondary facial-hair colour:", "Character Preference", f_sec_colour) as color|null if(new_facial) @@ -1624,8 +1624,8 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("f_style") var/list/valid_facial_hairstyles = list() - for(var/facialhairstyle in facial_hair_styles_list) - var/datum/sprite_accessory/SA = facial_hair_styles_list[facialhairstyle] + for(var/facialhairstyle in GLOB.facial_hair_styles_list) + var/datum/sprite_accessory/SA = GLOB.facial_hair_styles_list[facialhairstyle] if(facialhairstyle == "Shaved") //Just in case. valid_facial_hairstyles += facialhairstyle @@ -1657,30 +1657,30 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("underwear") var/list/valid_underwear = list() - for(var/underwear in underwear_list) - var/datum/sprite_accessory/SA = underwear_list[underwear] + for(var/underwear in GLOB.underwear_list) + var/datum/sprite_accessory/SA = GLOB.underwear_list[underwear] if(gender == MALE && SA.gender == FEMALE) continue if(gender == FEMALE && SA.gender == MALE) continue if(!(species in SA.species_allowed)) continue - valid_underwear[underwear] = underwear_list[underwear] + valid_underwear[underwear] = GLOB.underwear_list[underwear] var/new_underwear = input(user, "Choose your character's underwear:", "Character Preference") as null|anything in valid_underwear ShowChoices(user) if(new_underwear) underwear = new_underwear if("undershirt") var/list/valid_undershirts = list() - for(var/undershirt in undershirt_list) - var/datum/sprite_accessory/SA = undershirt_list[undershirt] + for(var/undershirt in GLOB.undershirt_list) + var/datum/sprite_accessory/SA = GLOB.undershirt_list[undershirt] if(gender == MALE && SA.gender == FEMALE) continue if(gender == FEMALE && SA.gender == MALE) continue if(!(species in SA.species_allowed)) continue - valid_undershirts[undershirt] = undershirt_list[undershirt] + valid_undershirts[undershirt] = GLOB.undershirt_list[undershirt] var/new_undershirt = input(user, "Choose your character's undershirt:", "Character Preference") as null|anything in valid_undershirts ShowChoices(user) if(new_undershirt) @@ -1688,15 +1688,15 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("socks") var/list/valid_sockstyles = list() - for(var/sockstyle in socks_list) - var/datum/sprite_accessory/SA = socks_list[sockstyle] + for(var/sockstyle in GLOB.socks_list) + var/datum/sprite_accessory/SA = GLOB.socks_list[sockstyle] if(gender == MALE && SA.gender == FEMALE) continue if(gender == FEMALE && SA.gender == MALE) continue if(!(species in SA.species_allowed)) continue - valid_sockstyles[sockstyle] = socks_list[sockstyle] + valid_sockstyles[sockstyle] = GLOB.socks_list[sockstyle] var/new_socks = input(user, "Choose your character's socks:", "Character Preference") as null|anything in valid_sockstyles ShowChoices(user) if(new_socks) @@ -1738,7 +1738,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts ooccolor = new_ooccolor if("bag") - var/new_backbag = input(user, "Choose your character's style of bag:", "Character Preference") as null|anything in backbaglist + var/new_backbag = input(user, "Choose your character's style of bag:", "Character Preference") as null|anything in GLOB.backbaglist if(new_backbag) backbag = new_backbag @@ -1816,8 +1816,8 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("Normal") if(limb == "head") m_styles["head"] = "None" - h_style = hair_styles_public_list["Bald"] - f_style = facial_hair_styles_list["Shaved"] + h_style = GLOB.hair_styles_public_list["Bald"] + f_style = GLOB.facial_hair_styles_list["Shaved"] organ_data[limb] = null rlimb_data[limb] = null if(third_limb) @@ -1867,8 +1867,8 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if(limb == "head") ha_style = "None" alt_head = null - h_style = hair_styles_public_list["Bald"] - f_style = facial_hair_styles_list["Shaved"] + h_style = GLOB.hair_styles_public_list["Bald"] + f_style = GLOB.facial_hair_styles_list["Shaved"] m_styles["head"] = "None" rlimb_data[limb] = choice organ_data[limb] = "cyborg" @@ -2092,9 +2092,9 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts var/firstspace = findtext(real_name, " ") var/name_length = length(real_name) if(!firstspace) //we need a surname - real_name += " [pick(last_names)]" + real_name += " [pick(GLOB.last_names)]" else if(firstspace == name_length) - real_name += "[pick(last_names)]" + real_name += "[pick(GLOB.last_names)]" character.add_language(language) diff --git a/code/modules/client/preference/preferences_mysql.dm b/code/modules/client/preference/preferences_mysql.dm index 318cf8fb0bb..086040b5595 100644 --- a/code/modules/client/preference/preferences_mysql.dm +++ b/code/modules/client/preference/preferences_mysql.dm @@ -272,12 +272,12 @@ for(var/marking_location in m_colours) m_colours[marking_location] = sanitize_hexcolor(m_colours[marking_location], DEFAULT_MARKING_COLOURS[marking_location]) hacc_colour = sanitize_hexcolor(hacc_colour) - h_style = sanitize_inlist(h_style, hair_styles_public_list, initial(h_style)) - f_style = sanitize_inlist(f_style, facial_hair_styles_list, initial(f_style)) + h_style = sanitize_inlist(h_style, GLOB.hair_styles_public_list, initial(h_style)) + f_style = sanitize_inlist(f_style, GLOB.facial_hair_styles_list, initial(f_style)) for(var/marking_location in m_styles) - m_styles[marking_location] = sanitize_inlist(m_styles[marking_location], marking_styles_list, DEFAULT_MARKING_STYLES[marking_location]) - ha_style = sanitize_inlist(ha_style, head_accessory_styles_list, initial(ha_style)) - alt_head = sanitize_inlist(alt_head, alt_heads_list, initial(alt_head)) + m_styles[marking_location] = sanitize_inlist(m_styles[marking_location], GLOB.marking_styles_list, DEFAULT_MARKING_STYLES[marking_location]) + ha_style = sanitize_inlist(ha_style, GLOB.head_accessory_styles_list, initial(ha_style)) + alt_head = sanitize_inlist(alt_head, GLOB.alt_heads_list, initial(alt_head)) e_colour = sanitize_hexcolor(e_colour) underwear = sanitize_text(underwear, initial(underwear)) undershirt = sanitize_text(undershirt, initial(undershirt)) diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index 968d12d9baf..d2e7d7687bb 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -247,7 +247,7 @@ var/image/I = image(icon = 'icons/mob/robots.dmi' , icon_state = "robot", loc = H) I.override = 1 I.overlays += image(icon = 'icons/mob/robots.dmi' , icon_state = "eyes-robot") //gotta look realistic - H.add_alt_appearance("standard_borg_disguise", I, silicon_mob_list+H) //you look like a robot to robots! (including yourself because you're totally a robot) + H.add_alt_appearance("standard_borg_disguise", I, GLOB.silicon_mob_list+H) //you look like a robot to robots! (including yourself because you're totally a robot) /obj/item/clothing/suit/snowman name = "snowman outfit" diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index a243e734ef6..2abadbc55f9 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -390,7 +390,7 @@ icon_state = "necklace" item_state = "necklace" item_color = "necklace" - slot_flags = SLOT_MASK | SLOT_TIE + slot_flags = SLOT_TIE /obj/item/clothing/accessory/necklace/locket name = "gold locket" @@ -398,7 +398,7 @@ icon_state = "locket" item_state = "locket" item_color = "locket" - slot_flags = SLOT_MASK | SLOT_TIE + slot_flags = SLOT_TIE var/base_icon var/open var/obj/item/held //Item inside locket. diff --git a/code/modules/clothing/under/color.dm b/code/modules/clothing/under/color.dm index 7b6b85326c3..08c7c403ff5 100644 --- a/code/modules/clothing/under/color.dm +++ b/code/modules/clothing/under/color.dm @@ -61,7 +61,7 @@ desc = "A terribly ragged and frayed grey jumpsuit. It looks like it hasn't been washed in over a decade." /obj/item/clothing/under/color/grey/glorf/hit_reaction(mob/living/carbon/human/owner) - owner.forcesay(hit_appends) + owner.forcesay(GLOB.hit_appends) return 0 /obj/item/clothing/under/color/orange diff --git a/code/modules/countdown/countdown.dm b/code/modules/countdown/countdown.dm index 54ec874c743..d860ba9c4cd 100644 --- a/code/modules/countdown/countdown.dm +++ b/code/modules/countdown/countdown.dm @@ -28,13 +28,13 @@ /obj/effect/countdown/proc/start() if(!started) - fast_processing += src + GLOB.fast_processing += src started = TRUE /obj/effect/countdown/proc/stop() if(started) maptext = null - fast_processing -= src + GLOB.fast_processing -= src started = FALSE /obj/effect/countdown/proc/get_value() @@ -57,7 +57,7 @@ /obj/effect/countdown/Destroy() attached_to = null - fast_processing -= src + GLOB.fast_processing -= src return ..() /obj/effect/countdown/ex_act(severity) //immune to explosions diff --git a/code/modules/crafting/craft.dm b/code/modules/crafting/craft.dm index fe8e84163e3..37fa041af77 100644 --- a/code/modules/crafting/craft.dm +++ b/code/modules/crafting/craft.dm @@ -252,7 +252,7 @@ var/list/surroundings = get_surroundings(user) var/list/can_craft = list() var/list/cant_craft = list() - for(var/rec in crafting_recipes) + for(var/rec in GLOB.crafting_recipes) var/datum/crafting_recipe/R = rec if(R.category != cur_category) continue diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index caa13863937..2c4703967d6 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -53,7 +53,7 @@ to_chat(user, "[target] already has body markings, any more would look silly!") return - var/datum/sprite_accessory/body_markings/tattoo/temp_tatt = marking_styles_list[tattoo_icon] + var/datum/sprite_accessory/body_markings/tattoo/temp_tatt = GLOB.marking_styles_list[tattoo_icon] if(!(target.dna.species.name in temp_tatt.species_allowed)) to_chat(user, "You can't think of a way to make the [tattoo_name] design work on [target == user ? "your" : "[target]'s"] body type.") return @@ -1021,6 +1021,17 @@ flags_inv = HIDEEARS //////////// Uniforms //////////// +/obj/item/clothing/under/fluff/counterfeitguise_uniform // thatdanguy23 : Rissa Williams + icon = 'icons/obj/custom_items.dmi' + name = "Rissa's hand-me-downs" + desc = "An old, hand-me-down baggy sweater and sweatpants combo. A label on the neck reads 'RISSA' in scruffy handwriting." + lefthand_file = 'icons/mob/inhands/fluff_lefthand.dmi' + righthand_file = 'icons/mob/inhands/fluff_righthand.dmi' + icon_state = "counterfeitguise" + item_state = "counterfeitguise" + item_color = "counterfeitguise" + flags_size = ONESIZEFITSALL + /obj/item/clothing/under/fluff/benjaminfallout // Benjaminfallout: Pretzel Brassheart icon = 'icons/obj/custom_items.dmi' name = "Pretzel's dress" diff --git a/code/modules/economy/ATM.dm b/code/modules/economy/ATM.dm index e43797ef9dd..595eace858e 100644 --- a/code/modules/economy/ATM.dm +++ b/code/modules/economy/ATM.dm @@ -74,7 +74,7 @@ log transactions authenticated_account.charge(-cash_amount, null, "Credit deposit", terminal_id = machine_id, dest_name = "Terminal") /obj/machinery/atm/proc/reconnect_database() - for(var/obj/machinery/computer/account_database/DB in machines) + for(var/obj/machinery/computer/account_database/DB in GLOB.machines) if(DB.z == z && !(DB.stat & NOPOWER) && DB.activated) linked_db = DB break diff --git a/code/modules/economy/Accounts.dm b/code/modules/economy/Accounts.dm index f1f283fe56a..6001cf3f84e 100644 --- a/code/modules/economy/Accounts.dm +++ b/code/modules/economy/Accounts.dm @@ -65,7 +65,7 @@ var/global/list/all_money_accounts = list() T.amount = starting_funds if(!source_db) //set a random date, time and location some time over the past few decades - T.date = "[num2text(rand(1,31))] [pick(month_names)], [rand(game_year - 20,game_year - 1)]" + T.date = "[num2text(rand(1,31))] [pick(GLOB.month_names)], [rand(game_year - 20,game_year - 1)]" T.time = "[rand(0,23)]:[rand(0,59)]:[rand(0,59)]" T.source_terminal = "NTGalaxyNet Terminal #[rand(111,1111)]" diff --git a/code/modules/economy/EFTPOS.dm b/code/modules/economy/EFTPOS.dm index b636a96e2aa..f9bb22fcda4 100644 --- a/code/modules/economy/EFTPOS.dm +++ b/code/modules/economy/EFTPOS.dm @@ -49,7 +49,7 @@ if(!location) return - for(var/obj/machinery/computer/account_database/DB in machines) + for(var/obj/machinery/computer/account_database/DB in GLOB.machines) if(DB.z == location.z) linked_db = DB break diff --git a/code/modules/economy/Economy_Events_Mundane.dm b/code/modules/economy/Economy_Events_Mundane.dm index 6d408af2901..1b5467a3a1c 100644 --- a/code/modules/economy/Economy_Events_Mundane.dm +++ b/code/modules/economy/Economy_Events_Mundane.dm @@ -109,9 +109,9 @@ newMsg.body += "and their partner announced the birth of their [pick("first","second","third")] child on [affected_dest.name] early this morning. \ Doctors say the child is well, and the parents are considering " if(prob(50)) - newMsg.body += capitalize(pick(first_names_female)) + newMsg.body += capitalize(pick(GLOB.first_names_female)) else - newMsg.body += capitalize(pick(first_names_male)) + newMsg.body += capitalize(pick(GLOB.first_names_male)) newMsg.body += " for the name." else if(prob(50)) newMsg.body += "announced their [pick("split","break up","marriage","engagement")] with [pick("TV host","webcast personality","superstar","model","actor","singer")] \ diff --git a/code/modules/events/alien_infestation.dm b/code/modules/events/alien_infestation.dm index 288fbe3f809..7e4473cb0d2 100644 --- a/code/modules/events/alien_infestation.dm +++ b/code/modules/events/alien_infestation.dm @@ -24,7 +24,7 @@ var/obj/vent = pick_n_take(vents) var/mob/C = pick_n_take(candidates) if(C) - respawnable_list -= C.client + GLOB.respawnable_list -= C.client var/mob/living/carbon/alien/larva/new_xeno = new(vent.loc) new_xeno.key = C.key if(ticker && ticker.mode) diff --git a/code/modules/events/aurora_caelus.dm b/code/modules/events/aurora_caelus.dm index 6cf5e1b1ce7..dfdb503cc54 100644 --- a/code/modules/events/aurora_caelus.dm +++ b/code/modules/events/aurora_caelus.dm @@ -11,7 +11,7 @@ Nanotrasen has approved a short break for all employees to relax and observe thi During this time, starlight will be bright but gentle, shifting between quiet green and blue colors. \ Any staff who would like to view these lights for themselves may proceed to the area nearest to them with viewing ports to open space. \ We hope you enjoy the lights.", "Harmless ions approaching", new_sound = 'sound/misc/notice2.ogg', from = "Nanotrasen Meteorology Division") - for(var/V in player_list) + for(var/V in GLOB.player_list) var/mob/M = V if((M.client.prefs.toggles & SOUND_MIDI) && is_station_level(M.z)) M.playsound_local(null, 'sound/ambience/aurora_caelus.ogg', 20, FALSE, pressure_affected = FALSE) diff --git a/code/modules/events/blob.dm b/code/modules/events/blob.dm index a482642f023..7ea71547123 100644 --- a/code/modules/events/blob.dm +++ b/code/modules/events/blob.dm @@ -13,7 +13,7 @@ if(!candidates.len) return kill() var/list/vents = list() - for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in all_vent_pumps) + for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in GLOB.all_vent_pumps) if(is_station_level(temp_vent.loc.z) && !temp_vent.welded) if(temp_vent.parent.other_atmosmch.len > 50) vents += temp_vent diff --git a/code/modules/events/brand_intelligence.dm b/code/modules/events/brand_intelligence.dm index f687f33803d..eef486ee5cd 100644 --- a/code/modules/events/brand_intelligence.dm +++ b/code/modules/events/brand_intelligence.dm @@ -17,7 +17,7 @@ event_announcement.Announce("Rampant brand intelligence has been detected aboard [station_name()], please stand-by. The origin is believed to be \a [originMachine.name].", "Machine Learning Alert") /datum/event/brand_intelligence/start() - for(var/obj/machinery/vending/V in machines) + for(var/obj/machinery/vending/V in GLOB.machines) if(!is_station_level(V.z)) continue vendingMachines.Add(V) diff --git a/code/modules/events/carp_migration.dm b/code/modules/events/carp_migration.dm index cd9b0c02206..215deea4d9f 100644 --- a/code/modules/events/carp_migration.dm +++ b/code/modules/events/carp_migration.dm @@ -23,7 +23,7 @@ /datum/event/carp_migration/start() if(severity == EVENT_LEVEL_MAJOR) - spawn_fish(landmarks_list.len) + spawn_fish(GLOB.landmarks_list.len) else if(severity == EVENT_LEVEL_MODERATE) spawn_fish(rand(4, 6)) //12 to 30 carp, in small groups else @@ -32,7 +32,7 @@ /datum/event/carp_migration/proc/spawn_fish(var/num_groups, var/group_size_min=3, var/group_size_max=5) var/list/spawn_locations = list() - for(var/obj/effect/landmark/C in landmarks_list) + for(var/obj/effect/landmark/C in GLOB.landmarks_list) if(C.name == "carpspawn") spawn_locations.Add(C.loc) spawn_locations = shuffle(spawn_locations) diff --git a/code/modules/events/communications_blackout.dm b/code/modules/events/communications_blackout.dm index 1b499027150..58fc9af56a3 100644 --- a/code/modules/events/communications_blackout.dm +++ b/code/modules/events/communications_blackout.dm @@ -6,7 +6,7 @@ "Ionospheri:%? MCayj^j<.3-BZZZZZZT", \ "#4nd%;f4y6,>?%-BZZZZZZZT") - for(var/mob/living/silicon/ai/A in player_list) //AIs are always aware of communication blackouts. + for(var/mob/living/silicon/ai/A in GLOB.player_list) //AIs are always aware of communication blackouts. to_chat(A, "
") to_chat(A, "[alert]") to_chat(A, "
") @@ -22,7 +22,7 @@ if(!silent) event_announcement.Announce("Ionospheric anomalies detected. Temporary telecommunication failure imminent. Please contact you-BZZT", new_sound = 'sound/misc/interference.ogg') else // AIs will always know if there's a comm blackout, rogue AIs could then lie about comm blackouts in the future while they shutdown comms - for(var/mob/living/silicon/ai/A in player_list) + for(var/mob/living/silicon/ai/A in GLOB.player_list) to_chat(A, "
") to_chat(A, "Ionospheric anomalies detected. Temporary telecommunication failure imminent. Please contact you-BZZT") to_chat(A, "
") diff --git a/code/modules/events/disease_outbreak.dm b/code/modules/events/disease_outbreak.dm index 87836f217b8..e42030b6622 100644 --- a/code/modules/events/disease_outbreak.dm +++ b/code/modules/events/disease_outbreak.dm @@ -13,7 +13,7 @@ if(!virus_type) virus_type = pick(/datum/disease/advance/flu, /datum/disease/advance/cold, /datum/disease/brainrot, /datum/disease/magnitis, /datum/disease/beesease, /datum/disease/anxiety, /datum/disease/fake_gbs, /datum/disease/fluspanish, /datum/disease/pierrot_throat, /datum/disease/lycan) - for(var/mob/living/carbon/human/H in shuffle(living_mob_list)) + for(var/mob/living/carbon/human/H in shuffle(GLOB.living_mob_list)) if(issmall(H)) //don't infect monkies; that's a waste continue if(!H.client) diff --git a/code/modules/events/electrical_storm.dm b/code/modules/events/electrical_storm.dm index 94ef81ceee5..7eb95454250 100644 --- a/code/modules/events/electrical_storm.dm +++ b/code/modules/events/electrical_storm.dm @@ -10,7 +10,7 @@ for(var/i=1, i <= lightsoutAmount, i++) var/list/possibleEpicentres = list() - for(var/obj/effect/landmark/newEpicentre in landmarks_list) + for(var/obj/effect/landmark/newEpicentre in GLOB.landmarks_list) if(newEpicentre.name == "lightsout" && !(newEpicentre in epicentreList)) possibleEpicentres += newEpicentre if(possibleEpicentres.len) diff --git a/code/modules/events/event_container.dm b/code/modules/events/event_container.dm index 888e2b38dd1..0a99ed6fd14 100644 --- a/code/modules/events/event_container.dm +++ b/code/modules/events/event_container.dm @@ -92,7 +92,7 @@ var/list/event_last_fired = list() // Otherwise, follow the standard setup process else var/playercount_modifier = 1 - switch(player_list.len) + switch(GLOB.player_list.len) if(0 to 10) playercount_modifier = 1.2 if(11 to 15) diff --git a/code/modules/events/event_manager.dm b/code/modules/events/event_manager.dm index 6b230e48e09..1545ddbbdf0 100644 --- a/code/modules/events/event_manager.dm +++ b/code/modules/events/event_manager.dm @@ -355,7 +355,7 @@ /datum/event/proc/num_players() var/players = 0 - for(var/mob/living/carbon/human/P in player_list) + for(var/mob/living/carbon/human/P in GLOB.player_list) if(P.client) players++ return players @@ -373,9 +373,9 @@ active_with_role["Cyborg"] = 0 active_with_role["Janitor"] = 0 active_with_role["Botanist"] = 0 - active_with_role["Any"] = player_list.len + active_with_role["Any"] = GLOB.player_list.len - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(!M.mind || !M.client || M.client.inactivity > 10 * 10 * 60) // longer than 10 minutes AFK counts them as inactive continue diff --git a/code/modules/events/grid_check.dm b/code/modules/events/grid_check.dm index c0b16ab43a6..8c099f22a91 100644 --- a/code/modules/events/grid_check.dm +++ b/code/modules/events/grid_check.dm @@ -20,7 +20,7 @@ var/list/skipped_areas = list(/area/turret_protected/ai) var/list/skipped_areas_apc = list(/area/engine/engineering) - for(var/obj/machinery/power/smes/S in machines) + for(var/obj/machinery/power/smes/S in GLOB.machines) var/area/current_area = get_area(S) if((current_area.type in skipped_areas) || !is_station_level(S.z)) continue @@ -33,7 +33,7 @@ S.update_icon() S.power_change() - for(var/obj/machinery/power/apc/C in apcs) + for(var/obj/machinery/power/apc/C in GLOB.apcs) var/area/current_area = get_area(C) if((current_area.type in skipped_areas_apc) || !is_station_level(C.z)) continue @@ -46,13 +46,13 @@ if(announce) event_announcement.Announce("Power has been restored to [station_name()]. We apologize for the inconvenience.", "Power Systems Nominal", new_sound = 'sound/AI/poweron.ogg') - for(var/obj/machinery/power/apc/C in apcs) + for(var/obj/machinery/power/apc/C in GLOB.apcs) var/area/current_area = get_area(C) if((current_area.type in skipped_areas_apc) || !is_station_level(C.z)) continue if(C.cell) C.cell.charge = C.cell.maxcharge - for(var/obj/machinery/power/smes/S in machines) + for(var/obj/machinery/power/smes/S in GLOB.machines) var/area/current_area = get_area(S) if((current_area.type in skipped_areas) || !is_station_level(S.z)) continue @@ -65,7 +65,7 @@ /proc/power_restore_quick(var/announce = 1) if(announce) event_announcement.Announce("All SMESs on [station_name()] have been recharged. We apologize for the inconvenience.", "Power Systems Nominal", new_sound = 'sound/AI/poweron.ogg') - for(var/obj/machinery/power/smes/S in machines) + for(var/obj/machinery/power/smes/S in GLOB.machines) if(!is_station_level(S.z)) continue S.charge = S.capacity diff --git a/code/modules/events/holidays/Christmas.dm b/code/modules/events/holidays/Christmas.dm index d622fcde28f..e04471482a5 100644 --- a/code/modules/events/holidays/Christmas.dm +++ b/code/modules/events/holidays/Christmas.dm @@ -4,7 +4,7 @@ for(var/turf/simulated/floor/T in orange(1,xmas)) for(var/i=1,i<=rand(1,5),i++) new /obj/item/a_gift(T) - for(var/mob/living/simple_animal/corgi/Ian/Ian in mob_list) + for(var/mob/living/simple_animal/corgi/Ian/Ian in GLOB.mob_list) Ian.place_on_head(new /obj/item/clothing/head/helmet/space/santahat(Ian)) /proc/ChristmasEvent() diff --git a/code/modules/events/immovable_rod.dm b/code/modules/events/immovable_rod.dm index d11ffa2ba78..1a6ac2d7706 100644 --- a/code/modules/events/immovable_rod.dm +++ b/code/modules/events/immovable_rod.dm @@ -41,7 +41,7 @@ In my current plan for it, 'solid' will be defined as anything with density == 1 notify_ghosts("\A [src] is inbound!", enter_link="(Click to follow)", source=src, action=NOTIFY_FOLLOW) - poi_list |= src + GLOB.poi_list |= src if(end && end.z==z_original) walk_towards(src, destination, move_delay) @@ -52,7 +52,7 @@ In my current plan for it, 'solid' will be defined as anything with density == 1 ghost.ManualFollow(src) /obj/effect/immovablerod/Destroy() - poi_list.Remove(src) + GLOB.poi_list.Remove(src) return ..() /obj/effect/immovablerod/ex_act(test) diff --git a/code/modules/events/ion_storm.dm b/code/modules/events/ion_storm.dm index a66dcd66d0e..7441abc79ba 100644 --- a/code/modules/events/ion_storm.dm +++ b/code/modules/events/ion_storm.dm @@ -22,7 +22,7 @@ /datum/event/ion_storm/start() //AI laws - for(var/mob/living/silicon/ai/M in living_mob_list) + for(var/mob/living/silicon/ai/M in GLOB.living_mob_list) if(M.stat != 2 && M.see_in_dark != 0) var/message = generate_ion_law(ionMessage) if(message) @@ -32,7 +32,7 @@ to_chat(M, "
") if(botEmagChance) - for(var/mob/living/simple_animal/bot/bot in machines) + for(var/mob/living/simple_animal/bot/bot in GLOB.machines) if(prob(botEmagChance)) bot.emag_act() @@ -492,7 +492,7 @@ /proc/generate_static_ion_law() /var/list/players = list() - for(var/mob/living/carbon/human/player in player_list) + for(var/mob/living/carbon/human/player in GLOB.player_list) if( !player.mind || player.mind.assigned_role == player.mind.special_role || player.client.inactivity > MinutesToTicks(10)) continue players += player.real_name diff --git a/code/modules/events/koi_mirgration.dm b/code/modules/events/koi_mirgration.dm index 868457721b2..cd82f54e37d 100644 --- a/code/modules/events/koi_mirgration.dm +++ b/code/modules/events/koi_mirgration.dm @@ -6,4 +6,4 @@ /datum/event/carp_migration/koi/start() - spawn_fish(landmarks_list.len) \ No newline at end of file + spawn_fish(GLOB.landmarks_list.len) \ No newline at end of file diff --git a/code/modules/events/mass_hallucination.dm b/code/modules/events/mass_hallucination.dm index 321a8135150..5b2554faf15 100644 --- a/code/modules/events/mass_hallucination.dm +++ b/code/modules/events/mass_hallucination.dm @@ -2,7 +2,7 @@ announceWhen = rand(0, 20) /datum/event/mass_hallucination/start() - for(var/mob/living/carbon/human/H in living_mob_list) + for(var/mob/living/carbon/human/H in GLOB.living_mob_list) var/armor = H.getarmor(type = "rad") if((RADIMMUNE in H.dna.species.species_traits) || armor >= 75) // Leave radiation-immune species/rad armored players completely unaffected continue diff --git a/code/modules/events/money_spam.dm b/code/modules/events/money_spam.dm index 03090ede045..d60d120c236 100644 --- a/code/modules/events/money_spam.dm +++ b/code/modules/events/money_spam.dm @@ -52,7 +52,7 @@ if(2) sender = pick(300;"QuickDatingSystem",200;"Find your russian bride",50;"Tajaran beauties are waiting",50;"Find your secret skrell crush",50;"Beautiful unathi brides") message = pick("Your profile caught my attention and I wanted to write and say hello (QuickDating).",\ - "If you will write to me on my email [pick(first_names_female)]@[pick(last_names)].[pick("ru","ck","tj","ur","nt")] I shall necessarily send you a photo (QuickDating).",\ + "If you will write to me on my email [pick(GLOB.first_names_female)]@[pick(GLOB.last_names)].[pick("ru","ck","tj","ur","nt")] I shall necessarily send you a photo (QuickDating).",\ "I want that we write each other and I hope, that you will like my profile and you will answer me (QuickDating).",\ "You have (1) new message!",\ "You have (2) new profile views!") @@ -98,7 +98,7 @@ last_spam_time = world.time if(prob(50)) //Give the AI an increased chance to intercept the message - for(var/mob/living/silicon/ai/ai in mob_list) + for(var/mob/living/silicon/ai/ai in GLOB.mob_list) // Allows other AIs to intercept the message but the AI won't intercept their own message. if(ai.aiPDA != P && ai.aiPDA != src) ai.show_message("Intercepted message from [sender] (Unknown / spam?) to [P:owner]: [message]") diff --git a/code/modules/events/prison_break.dm b/code/modules/events/prison_break.dm index 2ea618acd32..4d71cbc8b8e 100644 --- a/code/modules/events/prison_break.dm +++ b/code/modules/events/prison_break.dm @@ -49,7 +49,7 @@ var/rc_message = "An unknown malicious program has been detected in the [english_list(areaName)] lighting and airlock control systems at [station_time_timestamp()]. Systems will be fully compromised within approximately three minutes. Direct intervention is required immediately.
" for(var/obj/machinery/message_server/MS in world) MS.send_rc_message("Engineering", my_department, rc_message, "", "", 2) - for(var/mob/living/silicon/ai/A in player_list) + for(var/mob/living/silicon/ai/A in GLOB.player_list) to_chat(A, "Malicious program detected in the [english_list(areaName)] lighting and airlock control systems by [my_department].") else diff --git a/code/modules/events/rogue_drones.dm b/code/modules/events/rogue_drones.dm index 6be28375305..c4f1f8ac40a 100644 --- a/code/modules/events/rogue_drones.dm +++ b/code/modules/events/rogue_drones.dm @@ -6,7 +6,7 @@ /datum/event/rogue_drone/start() //spawn them at the same place as carp var/list/possible_spawns = list() - for(var/obj/effect/landmark/C in landmarks_list) + for(var/obj/effect/landmark/C in GLOB.landmarks_list) if(C.name == "carpspawn") possible_spawns.Add(C) diff --git a/code/modules/events/sentience.dm b/code/modules/events/sentience.dm index f926f8b6aea..03f56ac701b 100644 --- a/code/modules/events/sentience.dm +++ b/code/modules/events/sentience.dm @@ -6,11 +6,11 @@ var/list/potential = list() var/sentience_type = SENTIENCE_ORGANIC - for(var/mob/living/simple_animal/L in living_mob_list) + for(var/mob/living/simple_animal/L in GLOB.living_mob_list) var/turf/T = get_turf(L) if (T.z != 1) continue - if(!(L in player_list) && !L.mind && (L.sentience_type == sentience_type)) + if(!(L in GLOB.player_list) && !L.mind && (L.sentience_type == sentience_type)) potential += L if(!candidates.len || !potential.len) //if there are no players or simple animals to choose from, then end diff --git a/code/modules/events/slaughterevent.dm b/code/modules/events/slaughterevent.dm index f46ebcfd605..cbd81f52315 100644 --- a/code/modules/events/slaughterevent.dm +++ b/code/modules/events/slaughterevent.dm @@ -16,13 +16,13 @@ var/datum/mind/player_mind = new /datum/mind(key_of_slaughter) player_mind.active = 1 var/list/spawn_locs = list() - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(isturf(L.loc)) switch(L.name) if("revenantspawn") spawn_locs += L.loc if(!spawn_locs) //If we can't find any revenant spawns, try the carp spawns - for(var/obj/effect/landmark/L in landmarks_list) + for(var/obj/effect/landmark/L in GLOB.landmarks_list) if(isturf(L.loc)) switch(L.name) if("carpspawn") diff --git a/code/modules/events/spider_terror.dm b/code/modules/events/spider_terror.dm index c956d2fa551..413d27dcbc9 100644 --- a/code/modules/events/spider_terror.dm +++ b/code/modules/events/spider_terror.dm @@ -13,7 +13,7 @@ /datum/event/spider_terror/start() var/list/vents = list() - for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in all_vent_pumps) + for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in GLOB.all_vent_pumps) if(is_station_level(temp_vent.loc.z) && !temp_vent.welded) if(temp_vent.parent.other_atmosmch.len > 50) vents += temp_vent diff --git a/code/modules/events/spontaneous_appendicitis.dm b/code/modules/events/spontaneous_appendicitis.dm index 237db170612..fb9c146d7cd 100644 --- a/code/modules/events/spontaneous_appendicitis.dm +++ b/code/modules/events/spontaneous_appendicitis.dm @@ -1,5 +1,5 @@ /datum/event/spontaneous_appendicitis/start() - for(var/mob/living/carbon/human/H in shuffle(living_mob_list)) + for(var/mob/living/carbon/human/H in shuffle(GLOB.living_mob_list)) if(issmall(H)) //don't infect monkies; that's a waste. continue if(!H.client) diff --git a/code/modules/events/traders.dm b/code/modules/events/traders.dm index cbeceac1696..0bb832ae1b4 100644 --- a/code/modules/events/traders.dm +++ b/code/modules/events/traders.dm @@ -17,7 +17,7 @@ var/global/list/unused_trade_stations = list("sol") if(!station) // If there are no unused stations, just no. return var/list/spawnlocs = list() - for(var/obj/effect/landmark/landmark in landmarks_list) + for(var/obj/effect/landmark/landmark in GLOB.landmarks_list) if(landmark.name == "traderstart_[station]") spawnlocs += get_turf(landmark) if(!spawnlocs.len) @@ -36,7 +36,7 @@ var/global/list/unused_trade_stations = list("sol") index++ var/mob/C = pick_n_take(candidates) if(C) - respawnable_list -= C.client + GLOB.respawnable_list -= C.client var/mob/living/carbon/human/M = create_trader(picked_loc) M.ckey = C.ckey M.mind.objectives += trader_objectives diff --git a/code/modules/events/undead.dm b/code/modules/events/undead.dm index f705b63611c..57eccc85ceb 100644 --- a/code/modules/events/undead.dm +++ b/code/modules/events/undead.dm @@ -36,5 +36,5 @@ new undeadtype(T) /datum/event/undead/announce() - for(var/mob/living/M in player_list) + for(var/mob/living/M in GLOB.player_list) to_chat(M, "You feel [pick("a chill","a deathly chill","the undead","dirty", "creeped out","afraid","fear")]!") diff --git a/code/modules/events/vent_clog.dm b/code/modules/events/vent_clog.dm index 564194f413b..b45a6882e80 100644 --- a/code/modules/events/vent_clog.dm +++ b/code/modules/events/vent_clog.dm @@ -10,7 +10,7 @@ /datum/event/vent_clog/setup() endWhen = rand(25, 100) - for(var/obj/machinery/atmospherics/unary/vent_scrubber/temp_vent in machines) + for(var/obj/machinery/atmospherics/unary/vent_scrubber/temp_vent in GLOB.machines) if(is_station_level(temp_vent.loc.z)) if(temp_vent.parent.other_atmosmch.len > 50) vents += temp_vent diff --git a/code/modules/events/wormholes.dm b/code/modules/events/wormholes.dm index 91a4612cb16..be145752671 100644 --- a/code/modules/events/wormholes.dm +++ b/code/modules/events/wormholes.dm @@ -56,8 +56,8 @@ if(istype(M, /atom/movable)) var/turf/target - if(portals.len) - var/obj/effect/portal/P = pick(portals) + if(GLOB.portals.len) + var/obj/effect/portal/P = pick(GLOB.portals) if(P && isturf(P.loc)) target = P.loc if(!target) return diff --git a/code/modules/examine/descriptions/structures.dm b/code/modules/examine/descriptions/structures.dm index d8e9b337606..0f7d6c98834 100644 --- a/code/modules/examine/descriptions/structures.dm +++ b/code/modules/examine/descriptions/structures.dm @@ -14,7 +14,7 @@ description_info = "Add a metal floor tile to build a floor on top of the lattice.
\ Lattices can be made by applying metal rods to a space tile." -/obj/structure/stool/bed +/obj/structure/bed description_info = "Click and drag yourself (or anyone) to this to buckle in. Click on this with an empty hand to undo the buckles.
\
\ Anyone with restraints, such as handcuffs, will not be able to unbuckle themselves. They must use the Resist button, or verb, to break free of \ diff --git a/code/modules/flufftext/Dreaming.dm b/code/modules/flufftext/Dreaming.dm index e31a6543ce3..075f119113c 100644 --- a/code/modules/flufftext/Dreaming.dm +++ b/code/modules/flufftext/Dreaming.dm @@ -2,7 +2,7 @@ /mob/living/carbon/proc/dream() - var/list/dreams = custom_dreams(dream_strings, src) + var/list/dreams = custom_dreams(GLOB.dream_strings, src) for(var/obj/item/bedsheet/sheet in loc) dreams += sheet.dream_messages @@ -24,7 +24,7 @@ //NIGHTMARES /mob/living/carbon/proc/nightmare() - var/list/nightmares = nightmare_strings.Copy() + var/list/nightmares = GLOB.nightmare_strings.Copy() for(var/obj/item/bedsheet/sheet in loc) nightmares += sheet.nightmare_messages diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index 2f0032d619f..f9f147e9bf8 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -222,7 +222,7 @@ Gunshots/explosions/opening doors/less rare audio (done) /obj/effect/hallucination/simple/clown/New(loc, mob/living/carbon/T, duration) ..(loc, T) - name = pick(clown_names) + name = pick(GLOB.clown_names) sleep(duration) qdel(src) @@ -444,7 +444,7 @@ Gunshots/explosions/opening doors/less rare audio (done) target = T var/image/A = null var/kind = force_kind ? force_kind : pick("clown", "corgi", "carp", "skeleton", "demon","zombie") - for(var/mob/living/carbon/human/H in living_mob_list) + for(var/mob/living/carbon/human/H in GLOB.living_mob_list) if(H == target) continue if(skip_nearby && (H in view(target))) @@ -523,7 +523,7 @@ Gunshots/explosions/opening doors/less rare audio (done) var/mob/living/carbon/human/clone = null var/clone_weapon = null - for(var/mob/living/carbon/human/H in living_mob_list) + for(var/mob/living/carbon/human/H in GLOB.living_mob_list) if(H.stat || H.lying) continue clone = H @@ -735,7 +735,7 @@ var/list/non_fakeattack_weapons = list(/obj/item/gun/projectile, /obj/item/ammo_ target.client.images.Remove(speech_overlay) else // Radio talk var/list/humans = list() - for(var/mob/living/carbon/human/H in living_mob_list) + for(var/mob/living/carbon/human/H in GLOB.living_mob_list) humans += H person = pick(humans) target.hear_radio(pick(radio_messages),language = pick(person.languages),speaker = person, part_a = "\[[get_frequency_name(PUB_FREQ)]\] ", part_b = " ") @@ -1005,7 +1005,7 @@ var/list/non_fakeattack_weapons = list(/obj/item/gun/projectile, /obj/item/ammo_ SetSleeping(20, no_alert = TRUE) if(prob(50)) var/list/dead_people = list() - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) dead_people += G var/mob/dead/observer/fakemob = pick(dead_people) if(fakemob) diff --git a/code/modules/food_and_drinks/drinks/bottler/bottler_recipes.dm b/code/modules/food_and_drinks/drinks/bottler/bottler_recipes.dm index d960a944044..2717379ec4d 100644 --- a/code/modules/food_and_drinks/drinks/bottler/bottler_recipes.dm +++ b/code/modules/food_and_drinks/drinks/bottler/bottler_recipes.dm @@ -70,7 +70,7 @@ There is no excuse to do this wrong now that there is an example for you. --Fals /datum/bottler_recipe/Meteor_Malt name = "Meteor Malt" description = "Soft drinks have been detected on collision course with your tastebuds." - ingredients = list(/obj/item/ore, + ingredients = list(/obj/item/stack/ore, /obj/item/reagent_containers/food/snacks/grown/wheat, - /obj/item/ore) + /obj/item/stack/ore) result = "meteor_malt" diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 91ee910c8d4..e64b74f1635 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -202,7 +202,7 @@ /obj/item/reagent_containers/food/drinks/ice name = "Ice Cup" desc = "Careful, cold ice, do not chew." - icon_state = "coffee" + icon_state = "icecup" list_reagents = list("ice" = 30) /obj/item/reagent_containers/food/drinks/tea @@ -241,14 +241,14 @@ /obj/item/reagent_containers/food/drinks/weightloss name = "Weight-Loss Shake" desc = "A shake designed to cause weight loss. The package proudly proclaims that it is 'tapeworm free.'" - icon_state = "coffee" + icon_state = "weightshake" list_reagents = list("lipolicide" = 30, "chocolate" = 5) /obj/item/reagent_containers/food/drinks/dry_ramen name = "Cup Ramen" desc = "Just add 10ml of water, self heats! A taste that reminds you of your school years." icon_state = "ramen" - item_state = "coffee" + item_state = "ramen" list_reagents = list("dry_ramen" = 30) /obj/item/reagent_containers/food/drinks/dry_ramen/New() @@ -257,10 +257,10 @@ reagents.add_reagent("enzyme", 3) /obj/item/reagent_containers/food/drinks/chicken_soup - name = "Cup Chicken Soup" - desc = "A delicious and soothing cup of chicken noodle soup; just like spessmom used to make it." - icon_state = "ramen" - item_state = "coffee" + name = "Canned Chicken Soup" + desc = "A delicious and soothing can of chicken noodle soup; just like spessmom used to microwave it." + icon_state = "soupcan" + item_state = "soupcan" list_reagents = list("chicken_soup" = 30) /obj/item/reagent_containers/food/drinks/sillycup diff --git a/code/modules/food_and_drinks/recipes/recipes_microwave.dm b/code/modules/food_and_drinks/recipes/recipes_microwave.dm index 70169476c9d..81fbe20e3d4 100644 --- a/code/modules/food_and_drinks/recipes/recipes_microwave.dm +++ b/code/modules/food_and_drinks/recipes/recipes_microwave.dm @@ -471,7 +471,7 @@ datum/recipe/microwave/slimesandwich /datum/recipe/microwave/clownstears reagents = list("water" = 10) items = list( - /obj/item/ore/bananium, + /obj/item/stack/ore/bananium, /obj/item/reagent_containers/food/snacks/grown/banana ) result = /obj/item/reagent_containers/food/snacks/clownstears diff --git a/code/modules/holiday/christmas.dm b/code/modules/holiday/christmas.dm index bd5d97d1580..7b00171b348 100644 --- a/code/modules/holiday/christmas.dm +++ b/code/modules/holiday/christmas.dm @@ -4,7 +4,7 @@ for(var/turf/simulated/floor/T in orange(1,xmas)) for(var/i=1,i<=rand(1,5),i++) new /obj/item/a_gift(T) - for(var/mob/living/simple_animal/pet/corgi/Ian/Ian in mob_list) + for(var/mob/living/simple_animal/pet/corgi/Ian/Ian in GLOB.mob_list) Ian.place_on_head(new /obj/item/clothing/head/helmet/space/santahat(Ian)) /datum/holiday/xmas/handle_event() diff --git a/code/modules/hydroponics/beekeeping/honeycomb.dm b/code/modules/hydroponics/beekeeping/honeycomb.dm index 06a80f72edb..50bbae4a6c4 100644 --- a/code/modules/hydroponics/beekeeping/honeycomb.dm +++ b/code/modules/hydroponics/beekeeping/honeycomb.dm @@ -30,7 +30,7 @@ /obj/item/reagent_containers/honeycomb/proc/set_reagent(reagent) - var/datum/reagent/R = chemical_reagents_list[reagent] + var/datum/reagent/R = GLOB.chemical_reagents_list[reagent] if(istype(R)) name = "honeycomb ([R.name])" honey_color = R.color diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 3fde90ebbb5..772e9f5d856 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -66,7 +66,7 @@ var/reag_txt = "" if(seed) for(var/reagent_id in seed.reagents_add) - var/datum/reagent/R = chemical_reagents_list[reagent_id] + var/datum/reagent/R = GLOB.chemical_reagents_list[reagent_id] var/amt = reagents.get_reagent_amount(reagent_id) reag_txt += "\n- [R.name]: [amt]" diff --git a/code/modules/hydroponics/grown/replicapod.dm b/code/modules/hydroponics/grown/replicapod.dm index 4a1e6f09cf8..f8f77836b3a 100644 --- a/code/modules/hydroponics/grown/replicapod.dm +++ b/code/modules/hydroponics/grown/replicapod.dm @@ -59,7 +59,7 @@ var/ckey_holder = null if(config.revival_pod_plants) if(ckey) - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(isobserver(M)) var/mob/dead/observer/O = M if(O.ckey == ckey && O.can_reenter_corpse) @@ -70,7 +70,7 @@ make_podman = 1 break else //If the player has ghosted from his corpse before blood was drawn, his ckey is no longer attached to the mob, so we need to match up the cloned player through the mind key - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(mind && M.mind && ckey(M.mind.key) == ckey(mind.key) && M.ckey && M.client && M.stat == DEAD && !M.suiciding) if(isobserver(M)) var/mob/dead/observer/O = M diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index 84db02cb89c..1a9dc008376 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -107,7 +107,7 @@ reagent_id = reag_id name = "UNKNOWN" - var/datum/reagent/R = chemical_reagents_list[reag_id] + var/datum/reagent/R = GLOB.chemical_reagents_list[reag_id] if(R && R.id == reagent_id) name = R.name diff --git a/code/modules/karma/karma.dm b/code/modules/karma/karma.dm index cfc44382d64..d148276d4d6 100644 --- a/code/modules/karma/karma.dm +++ b/code/modules/karma/karma.dm @@ -59,7 +59,7 @@ var/list/karma_spenders = list() if(config.disable_karma) to_chat(src, "Karma is disabled.") return FALSE - if(!ticker || !player_list.len || (ticker.current_state == GAME_STATE_PREGAME)) + if(!ticker || !GLOB.player_list.len || (ticker.current_state == GAME_STATE_PREGAME)) to_chat(src, "You can't award karma until the game has started.") return FALSE if(client.karma_spent || (ckey in karma_spenders)) @@ -97,7 +97,7 @@ var/list/karma_spenders = list() return var/list/karma_list = list() - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(!(M.client && M.mind)) continue if(M == src) diff --git a/code/modules/martial_arts/adminfu.dm b/code/modules/martial_arts/adminfu.dm index eaec2b1c3c8..ae48795f2f9 100644 --- a/code/modules/martial_arts/adminfu.dm +++ b/code/modules/martial_arts/adminfu.dm @@ -74,7 +74,7 @@ D.revive() D.suiciding = 0 if(!D.ckey) - for(var/mob/dead/observer/ghost in player_list) + for(var/mob/dead/observer/ghost in GLOB.player_list) if(D.real_name == ghost.real_name) ghost.reenter_corpse() break diff --git a/code/modules/martial_arts/brawling.dm b/code/modules/martial_arts/brawling.dm index f7c4d307968..520f4c1a96a 100644 --- a/code/modules/martial_arts/brawling.dm +++ b/code/modules/martial_arts/brawling.dm @@ -40,9 +40,9 @@ "[A] has knocked [D] out with a haymaker!") D.apply_effect(10,WEAKEN,armor_block) D.SetSleeping(5) - D.forcesay(hit_appends) + D.forcesay(GLOB.hit_appends) else if(D.lying) - D.forcesay(hit_appends) + D.forcesay(GLOB.hit_appends) return 1 /datum/martial_art/drunk_brawling @@ -99,7 +99,7 @@ "[A] has knocked [D] out with a haymaker!") D.apply_effect(10,WEAKEN,armor_block) D.Paralyse(5) - D.forcesay(hit_appends) + D.forcesay(GLOB.hit_appends) else if(D.lying) - D.forcesay(hit_appends) + D.forcesay(GLOB.hit_appends) return 1 diff --git a/code/modules/martial_arts/martial.dm b/code/modules/martial_arts/martial.dm index bff0cf0d2e4..3e3af7963b0 100644 --- a/code/modules/martial_arts/martial.dm +++ b/code/modules/martial_arts/martial.dm @@ -66,9 +66,9 @@ D.visible_message("[A] has weakened [D]!!", \ "[A] has weakened [D]!") D.apply_effect(4, WEAKEN, armor_block) - D.forcesay(hit_appends) + D.forcesay(GLOB.hit_appends) else if(D.lying) - D.forcesay(hit_appends) + D.forcesay(GLOB.hit_appends) return 1 /datum/martial_art/proc/teach(var/mob/living/carbon/human/H,var/make_temporary=0) diff --git a/code/modules/mining/abandonedcrates.dm b/code/modules/mining/abandonedcrates.dm index ae8e69db32c..a413c328870 100644 --- a/code/modules/mining/abandonedcrates.dm +++ b/code/modules/mining/abandonedcrates.dm @@ -36,8 +36,7 @@ if(11 to 15) new /obj/item/reagent_containers/glass/beaker/bluespace(src) if(16 to 20) - for(var/i in 1 to 10) - new /obj/item/ore/diamond(src) + new /obj/item/stack/ore/diamond(src, 10) if(21 to 25) for(var/i in 1 to 5) new /obj/item/poster/random_contraband(src) @@ -83,8 +82,7 @@ var /newitem = pick(subtypesof(/obj/item/stock_parts) - /obj/item/stock_parts/subspace) new newitem(src) if(69 to 70) - for(var/i in 1 to 5) - new /obj/item/ore/bluespace_crystal(src) + new /obj/item/stack/ore/bluespace_crystal(src, 5) if(71 to 72) new /obj/item/pickaxe/drill(src) if(73 to 74) @@ -184,7 +182,7 @@ if(attempts == 1) to_chat(user, "* Anti-Tamper Bomb will activate on next failed access attempt.") else - to_chat(user, "* Anti-Tamper Bomb will activate after [src.attempts] failed access attempts.") + to_chat(user, "* Anti-Tamper Bomb will activate after [attempts] failed access attempts.") if(lastattempt != null) var/bulls = 0 var/cows = 0 diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm index 3d3c67701e8..61e1f2efeed 100644 --- a/code/modules/mining/equipment_locker.dm +++ b/code/modules/mining/equipment_locker.dm @@ -70,12 +70,12 @@ point_upgrade = point_upgrade_temp sheet_per_ore = sheet_per_ore_temp -/obj/machinery/mineral/ore_redemption/proc/smelt_ore(obj/item/ore/O) +/obj/machinery/mineral/ore_redemption/proc/smelt_ore(obj/item/stack/ore/O) ore_buffer -= O if(O && O.refined_type) - points += O.points * point_upgrade + points += O.points * point_upgrade * O.amount GET_COMPONENT(materials, /datum/component/material_container) var/material_amount = materials.get_item_material_amount(O) @@ -83,7 +83,7 @@ if(!material_amount) qdel(O) //no materials, incinerate it - else if(!materials.has_space(material_amount * sheet_per_ore)) //if there is no space, eject it + else if(!materials.has_space(material_amount * sheet_per_ore * O.amount)) //if there is no space, eject it unload_mineral(O) else @@ -157,7 +157,7 @@ if(OB) input = OB - for(var/obj/item/ore/O in input) + for(var/obj/item/stack/ore/O in input) if(QDELETED(O)) continue ore_buffer |= O diff --git a/code/modules/mining/lavaland/loot/ashdragon_loot.dm b/code/modules/mining/lavaland/loot/ashdragon_loot.dm index d88ec709dce..130e425d559 100644 --- a/code/modules/mining/lavaland/loot/ashdragon_loot.dm +++ b/code/modules/mining/lavaland/loot/ashdragon_loot.dm @@ -36,14 +36,14 @@ ..() spirits = list() processing_objects.Add(src) - poi_list |= src + GLOB.poi_list |= src /obj/item/melee/ghost_sword/Destroy() for(var/mob/dead/observer/G in spirits) G.invisibility = initial(G.invisibility) spirits.Cut() processing_objects.Remove(src) - poi_list -= src + GLOB.poi_list -= src . = ..() /obj/item/melee/ghost_sword/attack_self(mob/user) @@ -71,7 +71,7 @@ var/list/contents = T.GetAllContents() var/mob/dead/observer/current_spirits = list() - for(var/mob/dead/observer/O in player_list) + for(var/mob/dead/observer/O in GLOB.player_list) if(is_type_in_list(O.following, contents)) ghost_counter++ O.invisibility = 0 diff --git a/code/modules/mining/lavaland/loot/bubblegum_loot.dm b/code/modules/mining/lavaland/loot/bubblegum_loot.dm index 613239b58a9..cecfdcf8478 100644 --- a/code/modules/mining/lavaland/loot/bubblegum_loot.dm +++ b/code/modules/mining/lavaland/loot/bubblegum_loot.dm @@ -44,7 +44,7 @@ return used = TRUE - var/choice = input(user,"Who do you want dead?","Choose Your Victim") as null|anything in player_list + var/choice = input(user,"Who do you want dead?","Choose Your Victim") as null|anything in GLOB.player_list if(!choice) used = FALSE @@ -72,7 +72,7 @@ var/obj/effect/mine/pickup/bloodbath/B = new(L) B.mineEffect(L) - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) if(H == L) continue to_chat(H, "You have an overwhelming desire to kill [L]. [L.p_they(TRUE)] [L.p_have()] been marked red! Go kill [L.p_them()]!") diff --git a/code/modules/mining/machine_processing.dm b/code/modules/mining/machine_processing.dm index 800e21b1d42..3fc2980ddc2 100644 --- a/code/modules/mining/machine_processing.dm +++ b/code/modules/mining/machine_processing.dm @@ -96,7 +96,7 @@ /obj/machinery/mineral/processing_unit/process() var/turf/T = get_step(src, input_dir) if(T) - for(var/obj/item/ore/O in T) + for(var/obj/item/stack/ore/O in T) process_ore(O) CHECK_TICK if(on) @@ -111,7 +111,7 @@ CONSOLE.updateUsrDialog() -/obj/machinery/mineral/processing_unit/proc/process_ore(obj/item/ore/O) +/obj/machinery/mineral/processing_unit/proc/process_ore(obj/item/stack/ore/O) GET_COMPONENT(materials, /datum/component/material_container) var/material_amount = materials.get_item_material_amount(O) if(!materials.has_space(material_amount)) diff --git a/code/modules/mining/machine_unloading.dm b/code/modules/mining/machine_unloading.dm index 8f604e522e4..78a63bc6c2d 100644 --- a/code/modules/mining/machine_unloading.dm +++ b/code/modules/mining/machine_unloading.dm @@ -16,7 +16,7 @@ if(T) var/limit for(var/obj/structure/ore_box/B in T) - for(var/obj/item/ore/O in B) + for(var/obj/item/stack/ore/O in B) B.contents -= O unload_mineral(O) limit++ diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 6a5ae52ce27..303b34aed34 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -56,7 +56,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/New() ..() - mineral_turfs += src + GLOB.mineral_turfs += src if(mineralType && mineralAmt && spread && spreadChance) for(var/dir in cardinal) @@ -79,7 +79,7 @@ var/global/list/rockTurfEdgeCache = list( /hook/startup/proc/add_mineral_edges() var/watch = start_watch() log_startup_progress("Reticulating splines...") - for(var/turf/simulated/mineral/M in mineral_turfs) + for(var/turf/simulated/mineral/M in GLOB.mineral_turfs) M.add_edges() log_startup_progress(" Splines reticulated in [stop_watch(watch)]s.") return 1 @@ -187,7 +187,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/iron name = "iron deposit" icon_state = "rock_Iron" - mineralType = /obj/item/ore/iron + mineralType = /obj/item/stack/ore/iron mineralName = "Iron" spreadChance = 20 spread = 1 @@ -195,7 +195,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/uranium name = "uranium deposit" - mineralType = /obj/item/ore/uranium + mineralType = /obj/item/stack/ore/uranium mineralName = "Uranium" spreadChance = 5 spread = 1 @@ -204,7 +204,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/diamond name = "diamond deposit" - mineralType = /obj/item/ore/diamond + mineralType = /obj/item/stack/ore/diamond mineralName = "Diamond" spreadChance = 0 spread = 1 @@ -213,7 +213,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/gold name = "gold deposit" - mineralType = /obj/item/ore/gold + mineralType = /obj/item/stack/ore/gold mineralName = "Gold" spreadChance = 5 spread = 1 @@ -222,7 +222,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/silver name = "silver deposit" - mineralType = /obj/item/ore/silver + mineralType = /obj/item/stack/ore/silver mineralName = "Silver" spreadChance = 5 spread = 1 @@ -231,7 +231,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/titanium name = "titanium deposit" - mineralType = /obj/item/ore/titanium + mineralType = /obj/item/stack/ore/titanium spreadChance = 5 spread = 1 hidden = 1 @@ -240,7 +240,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/plasma name = "plasma deposit" icon_state = "rock_Plasma" - mineralType = /obj/item/ore/plasma + mineralType = /obj/item/stack/ore/plasma mineralName = "Plasma" spreadChance = 8 spread = 1 @@ -250,7 +250,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/clown name = "bananium deposit" icon_state = "rock_Clown" - mineralType = /obj/item/ore/bananium + mineralType = /obj/item/stack/ore/bananium mineralName = "Bananium" mineralAmt = 3 spreadChance = 0 @@ -260,7 +260,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/mime name = "tranquillite deposit" icon_state = "rock_Mime" - mineralType = /obj/item/ore/tranquillite + mineralType = /obj/item/stack/ore/tranquillite mineralAmt = 3 spreadChance = 0 spread = 0 @@ -269,7 +269,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/mineral/bscrystal name = "bluespace crystal deposit" icon_state = "rock_BScrystal" - mineralType = /obj/item/ore/bluespace_crystal + mineralType = /obj/item/stack/ore/bluespace_crystal mineralName = "Bluespace crystal" mineralAmt = 1 spreadChance = 0 @@ -518,7 +518,7 @@ var/global/list/rockTurfEdgeCache = list( if(istype(W,/obj/item/storage/bag/ore)) var/obj/item/storage/bag/ore/S = W if(S.collection_mode == 1) - for(var/obj/item/ore/O in src.contents) + for(var/obj/item/stack/ore/O in src.contents) O.attackby(W,user) return @@ -531,11 +531,7 @@ var/global/list/rockTurfEdgeCache = list( /turf/simulated/floor/plating/airless/asteroid/proc/gets_dug() if(dug) return - new/obj/item/ore/glass(src) - new/obj/item/ore/glass(src) - new/obj/item/ore/glass(src) - new/obj/item/ore/glass(src) - new/obj/item/ore/glass(src) + new/obj/item/stack/ore/glass(src, 5) dug = 1 playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE icon_plating = "asteroid_dug" diff --git a/code/modules/mining/minebot.dm b/code/modules/mining/minebot.dm index 490d8c8fe0d..30e093633f5 100644 --- a/code/modules/mining/minebot.dm +++ b/code/modules/mining/minebot.dm @@ -36,10 +36,10 @@ projectiletype = /obj/item/projectile/kinetic projectilesound = 'sound/weapons/Gunshot4.ogg' speak_emote = list("states") - wanted_objects = list(/obj/item/ore/diamond, /obj/item/ore/gold, /obj/item/ore/silver, - /obj/item/ore/plasma, /obj/item/ore/uranium, /obj/item/ore/iron, - /obj/item/ore/bananium, /obj/item/ore/tranquillite, /obj/item/ore/glass, - /obj/item/ore/titanium) + wanted_objects = list(/obj/item/stack/ore/diamond, /obj/item/stack/ore/gold, /obj/item/stack/ore/silver, + /obj/item/stack/ore/plasma, /obj/item/stack/ore/uranium, /obj/item/stack/ore/iron, + /obj/item/stack/ore/bananium, /obj/item/stack/ore/tranquillite, /obj/item/stack/ore/glass, + /obj/item/stack/ore/titanium) healable = 0 var/mode = MINEDRONE_COLLECT var/light_on = 0 @@ -97,7 +97,7 @@ if(!.) return FALSE visible_message("[src] is destroyed!") - new /obj/effect/decal/cleanable/blood/gibs/robot(src.loc) + new /obj/effect/decal/cleanable/blood/gibs/robot(loc) DropOre(0) qdel(src) @@ -135,20 +135,14 @@ to_chat(src, "You are set to attack mode. You can now attack from range.") /mob/living/simple_animal/hostile/mining_drone/AttackingTarget() - if(istype(target, /obj/item/ore) && mode == MINEDRONE_COLLECT) + if(istype(target, /obj/item/stack/ore) && mode == MINEDRONE_COLLECT) CollectOre() return ..() /mob/living/simple_animal/hostile/mining_drone/proc/CollectOre() - var/obj/item/ore/O - for(O in src.loc) + for(var/obj/item/stack/ore/O in range(1, src)) O.forceMove(src) - for(var/dir in alldirs) - var/turf/T = get_step(src,dir) - for(O in T) - O.forceMove(src) - return /mob/living/simple_animal/hostile/mining_drone/proc/DropOre(message = 1) if(!contents.len) @@ -157,7 +151,7 @@ return if(message) to_chat(src, "You dump your stored ore.") - for(var/obj/item/ore/O in contents) + for(var/obj/item/stack/ore/O in contents) contents -= O O.forceMove(loc) return diff --git a/code/modules/mining/ore.dm b/code/modules/mining/ore.dm index b1ae6b07e6a..08b81e1fd78 100644 --- a/code/modules/mining/ore.dm +++ b/code/modules/mining/ore.dm @@ -1,22 +1,37 @@ -/obj/item/ore +#define GIBTONITE_QUALITY_LOW 1 +#define GIBTONITE_QUALITY_MEDIUM 2 +#define GIBTONITE_QUALITY_HIGH 3 +#define PROBABILITY_REFINE_BY_FIRE 50 +#define ORESTACK_OVERLAYS_MAX 10 +/**********************Mineral ores**************************/ + +/obj/item/stack/ore name = "rock" icon = 'icons/obj/mining.dmi' icon_state = "ore" + max_amount = 50 + singular_name = "ore chunk" var/points = 0 //How many points this ore gets you from the ore redemption machine var/refined_type = null //What this ore defaults to being refined into - var/datum/geosample/geologic_data -/obj/item/ore/attackby(obj/item/I as obj, mob/user as mob, params) +/obj/item/stack/ore/New() + ..() + pixel_x = rand(0, 16) - 8 + pixel_y = rand(0, 8) - 8 + if(is_mining_level(z)) + score_oremined++ //When ore spawns, increment score. Only include ore spawned on mining asteroid (No Clown Planet) + +/obj/item/stack/ore/attackby(obj/item/I, mob/user, params) + ..() if(istype(I, /obj/item/weldingtool)) var/obj/item/weldingtool/W = I if(W.remove_fuel(15) && refined_type) - new refined_type(get_turf(src.loc)) + new refined_type(get_turf(src.loc), amount) qdel(src) else if(W.isOn()) to_chat(user, "Not enough fuel to smelt [src].") - ..() -/obj/item/ore/Crossed(AM as mob|obj) +/obj/item/stack/ore/Crossed(atom/movable/AM) var/obj/item/storage/bag/ore/OB var/turf/simulated/floor/F = get_turf(src) if(loc != F) @@ -37,64 +52,88 @@ F.attackby(OB, AM) return ..() +/obj/item/stack/ore/fire_act() + ..() + if(isnull(refined_type)) + return + else + var/amountrefined = round((PROBABILITY_REFINE_BY_FIRE / 100) * amount, 1) + if(amountrefined < 1) + qdel(src) + else + new refined_type(get_turf(loc), amountrefined) + qdel(src) - -/obj/item/ore/uranium +/obj/item/stack/ore/uranium name = "uranium ore" icon_state = "Uranium ore" origin_tech = "materials=5" + singular_name = "uranium ore chunk" points = 30 refined_type = /obj/item/stack/sheet/mineral/uranium materials = list(MAT_URANIUM=MINERAL_MATERIAL_AMOUNT) -/obj/item/ore/iron +/obj/item/stack/ore/iron name = "iron ore" icon_state = "Iron ore" origin_tech = "materials=1" + singular_name = "iron ore chunk" points = 1 refined_type = /obj/item/stack/sheet/metal materials = list(MAT_METAL=MINERAL_MATERIAL_AMOUNT) -/obj/item/ore/glass +/obj/item/stack/ore/glass name = "sand pile" icon_state = "Glass ore" origin_tech = "materials=1" + singular_name = "sand pile" points = 1 refined_type = /obj/item/stack/sheet/glass materials = list(MAT_GLASS=MINERAL_MATERIAL_AMOUNT) -/obj/item/ore/glass/basalt +GLOBAL_LIST_INIT(sand_recipes, list(\ + new /datum/stack_recipe("sandstone", /obj/item/stack/sheet/mineral/sandstone, 1, 1, 50)\ + )) + +/obj/item/stack/ore/glass/Initialize(mapload, new_amount, merge = TRUE) + recipes = GLOB.sand_recipes + . = ..() + +/obj/item/stack/ore/glass/throw_impact(atom/hit_atom) + if(..() || !ishuman(hit_atom)) + return + var/mob/living/carbon/human/C = hit_atom + if(C.head && C.head.flags_cover & HEADCOVERSEYES) + visible_message("[C]'s headgear blocks the sand!") + return + if(C.wear_mask && C.wear_mask.flags_cover & MASKCOVERSEYES) + visible_message("[C]'s mask blocks the sand!") + return + if(C.glasses && C.glasses.flags_cover & GLASSESCOVERSEYES) + visible_message("[C]'s glasses block the sand!") + return + C.EyeBlurry(6) + C.adjustStaminaLoss(15)//the pain from your eyes burning does stamina damage + C.AdjustConfused(5) + to_chat(C, "[src] gets into your eyes! The pain, it burns!") + qdel(src) + +/obj/item/stack/ore/glass/basalt name = "volcanic ash" icon_state = "volcanic_sand" + icon_state = "volcanic_sand" + singular_name = "volcanic ash pile" -/obj/item/ore/glass/attack_self(mob/living/user as mob) - to_chat(user, "You use the sand to make sandstone.") - var/sandAmt = 1 - for(var/obj/item/ore/glass/G in user.loc) // The sand on the floor - sandAmt += 1 - qdel(G) - while(sandAmt > 0) - var/obj/item/stack/sheet/mineral/sandstone/SS = new /obj/item/stack/sheet/mineral/sandstone(user.loc) - if(sandAmt >= SS.max_amount) - SS.amount = SS.max_amount - else - SS.amount = sandAmt - for(var/obj/item/stack/sheet/mineral/sandstone/SA in user.loc) - if(SA != SS && SA.amount < SA.max_amount) - SA.attackby(SS, user) //we try to transfer all old unfinished stacks to the new stack we created. - sandAmt -= SS.max_amount - qdel(src) - return - -/obj/item/ore/plasma +/obj/item/stack/ore/plasma name = "plasma ore" icon_state = "Plasma ore" origin_tech = "plasmatech=2;materials=2" + singular_name = "plasma ore chunk" points = 15 refined_type = /obj/item/stack/sheet/mineral/plasma materials = list(MAT_PLASMA=MINERAL_MATERIAL_AMOUNT) -/obj/item/ore/plasma/attackby(obj/item/I as obj, mob/user as mob, params) +/obj/item/stack/ore/plasma/attackby(obj/item/I as obj, mob/user as mob, params) if(istype(I, /obj/item/weldingtool)) var/obj/item/weldingtool/W = I if(W.welding) @@ -102,57 +141,64 @@ else ..() -/obj/item/ore/silver +/obj/item/stack/ore/silver name = "silver ore" icon_state = "Silver ore" origin_tech = "materials=3" + singular_name = "silver ore chunk" points = 16 refined_type = /obj/item/stack/sheet/mineral/silver materials = list(MAT_SILVER=MINERAL_MATERIAL_AMOUNT) -/obj/item/ore/gold +/obj/item/stack/ore/gold name = "gold ore" icon_state = "Gold ore" origin_tech = "materials=4" + singular_name = "gold ore chunk" points = 18 refined_type = /obj/item/stack/sheet/mineral/gold materials = list(MAT_GOLD=MINERAL_MATERIAL_AMOUNT) -/obj/item/ore/diamond +/obj/item/stack/ore/diamond name = "diamond ore" icon_state = "Diamond ore" origin_tech = "materials=6" + singular_name = "diamond ore chunk" points = 50 refined_type = /obj/item/stack/sheet/mineral/diamond materials = list(MAT_DIAMOND=MINERAL_MATERIAL_AMOUNT) -/obj/item/ore/bananium +/obj/item/stack/ore/bananium name = "bananium ore" icon_state = "Clown ore" origin_tech = "materials=4" + singular_name = "bananium ore chunk" points = 60 refined_type = /obj/item/stack/sheet/mineral/bananium materials = list(MAT_BANANIUM=MINERAL_MATERIAL_AMOUNT) -/obj/item/ore/tranquillite +/obj/item/stack/ore/tranquillite name = "tranquillite ore" icon_state = "Mime ore" origin_tech = "materials=4" + singular_name = "transquillite ore chunk" points = 60 refined_type = /obj/item/stack/sheet/mineral/tranquillite materials = list(MAT_TRANQUILLITE=MINERAL_MATERIAL_AMOUNT) -/obj/item/ore/titanium +/obj/item/stack/ore/titanium name = "titanium ore" icon_state = "Titanium ore" + singular_name = "titanium ore chunk" points = 50 materials = list(MAT_TITANIUM=MINERAL_MATERIAL_AMOUNT) refined_type = /obj/item/stack/sheet/mineral/titanium -/obj/item/ore/slag +/obj/item/stack/ore/slag name = "slag" desc = "Completely useless" icon_state = "slag" + singular_name = "slag chunk" /obj/item/twohanded/required/gibtonite name = "gibtonite ore" @@ -165,7 +211,7 @@ anchored = 1 //Forces people to carry it by hand, no pulling! var/primed = 0 var/det_time = 100 - var/quality = 1 //How pure this gibtonite is, determines the explosion produced by it and is derived from the det_time of the rock wall it was taken from, higher value = better + var/quality = GIBTONITE_QUALITY_LOW //How pure this gibtonite is, determines the explosion produced by it and is derived from the det_time of the rock wall it was taken from, higher value = better var/attacher = "UNKNOWN" var/datum/wires/explosive/gibtonite/wires @@ -195,7 +241,7 @@ primed = 0 user.visible_message("The chain reaction was stopped! ...The ore's quality looks diminished.", "You stopped the chain reaction. ...The ore's quality looks diminished.") icon_state = "Gibtonite ore" - quality = 1 + quality = GIBTONITE_QUALITY_LOW return ..() @@ -222,40 +268,40 @@ primed = 1 icon_state = "Gibtonite active" var/turf/bombturf = get_turf(src) - var/area/A = get_area(bombturf) var/notify_admins = 0 if(z != 5)//Only annoy the admins ingame if we're triggered off the mining zlevel notify_admins = 1 if(notify_admins) if(triggered_by == 1) - message_admins("An explosion has triggered a [name] to detonate at [A.name] (JMP).") + message_admins("An explosion has triggered a [name] to detonate at [ADMIN_COORDJMP(bombturf)].") else if(triggered_by == 2) - message_admins("A signal has triggered a [name] to detonate at [A.name] (JMP). Igniter attacher: [key_name_admin(attacher)]") + message_admins("A signal has triggered a [name] to detonate at [ADMIN_COORDJMP(bombturf)]. Igniter attacher: [key_name_admin(attacher)]") else - message_admins("[key_name_admin(user)] has triggered a [name] to detonate at [A.name] (JMP).") + message_admins("[key_name_admin(user)] has triggered a [name] to detonate at [ADMIN_COORDJMP(bombturf)].") if(triggered_by == 1) - log_game("An explosion has primed a [name] for detonation at [A.name]([bombturf.x],[bombturf.y],[bombturf.z])") + log_game("An explosion has primed a [name] for detonation at [AREACOORD(bombturf)]") else if(triggered_by == 2) - log_game("A signal has primed a [name] for detonation at [A.name]([bombturf.x],[bombturf.y],[bombturf.z]). Igniter attacher: [key_name(attacher)].") + log_game("A signal has primed a [name] for detonation at [AREACOORD(bombturf)]). Igniter attacher: [key_name(attacher)].") else user.visible_message("[user] strikes \the [src], causing a chain reaction!", "You strike \the [src], causing a chain reaction.") - log_game("[key_name(user)] has primed a [name] for detonation at [A.name]([bombturf.x],[bombturf.y],[bombturf.z])") + log_game("[key_name(user)] has primed a [name] for detonation at [AREACOORD(bombturf)])") spawn(det_time) if(primed) - if(quality == 3) + if(quality == GIBTONITE_QUALITY_HIGH) explosion(src.loc,2,4,9,adminlog = notify_admins) - if(quality == 2) + if(quality == GIBTONITE_QUALITY_MEDIUM) explosion(src.loc,1,2,5,adminlog = notify_admins) - if(quality == 1) + if(quality == GIBTONITE_QUALITY_LOW) explosion(src.loc,-1,1,3,adminlog = notify_admins) qdel(src) -/obj/item/ore/New() - pixel_x = rand(0,16)-8 - pixel_y = rand(0,8)-8 - if(is_mining_level(src.z)) - score_oremined++ //When ore spawns, increment score. Only include ore spawned on mining asteroid (No Clown Planet) -/obj/item/ore/ex_act() - return \ No newline at end of file +/obj/item/stack/ore/ex_act() + return + +#undef GIBTONITE_QUALITY_LOW +#undef GIBTONITE_QUALITY_MEDIUM +#undef GIBTONITE_QUALITY_HIGH +#undef PROBABILITY_REFINE_BY_FIRE +#undef ORESTACK_OVERLAYS_MAX diff --git a/code/modules/mining/satchel_ore_boxdm.dm b/code/modules/mining/satchel_ore_boxdm.dm index 33334d49382..0edb81c8321 100644 --- a/code/modules/mining/satchel_ore_boxdm.dm +++ b/code/modules/mining/satchel_ore_boxdm.dm @@ -13,78 +13,40 @@ if(istype(W, /obj/item/t_scanner/adv_mining_scanner)) attack_hand(user) return - if(istype(W, /obj/item/ore)) + else if(istype(W, /obj/item/stack/ore)) if(!user.drop_item()) return W.forceMove(src) - if(istype(W, /obj/item/storage)) + else if(istype(W, /obj/item/storage)) var/obj/item/storage/S = W S.hide_from(usr) - for(var/obj/item/ore/O in S.contents) + for(var/obj/item/stack/ore/O in S.contents) S.remove_from_storage(O, src) //This will move the item to this item's contents CHECK_TICK to_chat(user, "You empty the satchel into the box.") + else if(istype(W, /obj/item/crowbar)) + playsound(src, W.usesound, 50, 1) + var/obj/item/crowbar/C = W + if(do_after(user, 50 * C.toolspeed, target = src)) + user.visible_message("[user] pries [src] apart.", "You pry apart [src].", "You hear splitting wood.") + deconstruct(TRUE, user) /obj/structure/ore_box/attack_hand(mob/user) - var/amt_gold = 0 - var/amt_silver = 0 - var/amt_diamond = 0 - var/amt_glass = 0 - var/amt_iron = 0 - var/amt_plasma = 0 - var/amt_uranium = 0 - var/amt_titanium = 0 - var/amt_clown = 0 - var/amt_mime = 0 - var/amt_bluespace = 0 + if(Adjacent(user)) + show_contents(user) - for(var/obj/item/ore/C in contents) - if(istype(C,/obj/item/ore/diamond)) - amt_diamond++ - if(istype(C,/obj/item/ore/glass)) - amt_glass++ - if(istype(C,/obj/item/ore/plasma)) - amt_plasma++ - if(istype(C,/obj/item/ore/iron)) - amt_iron++ - if(istype(C,/obj/item/ore/silver)) - amt_silver++ - if(istype(C,/obj/item/ore/gold)) - amt_gold++ - if(istype(C,/obj/item/ore/uranium)) - amt_uranium++ - if(istype(C,/obj/item/ore/bananium)) - amt_clown++ - if(istype(C,/obj/item/ore/tranquillite)) - amt_mime++ - if(istype(C, /obj/item/ore/titanium)) - amt_titanium++ - if(istype(C,/obj/item/ore/bluespace_crystal)) - amt_bluespace++ +/obj/structure/ore_box/attack_robot(mob/user) + if(Adjacent(user)) + show_contents(user) +/obj/structure/ore_box/proc/show_contents(mob/user) var/dat = text("The contents of the ore box reveal...
") - if(amt_gold) - dat += text("Gold ore: [amt_gold]
") - if(amt_silver) - dat += text("Silver ore: [amt_silver]
") - if(amt_iron) - dat += text("Metal ore: [amt_iron]
") - if(amt_glass) - dat += text("Sand: [amt_glass]
") - if(amt_diamond) - dat += text("Diamond ore: [amt_diamond]
") - if(amt_plasma) - dat += text("Plasma ore: [amt_plasma]
") - if(amt_uranium) - dat += text("Uranium ore: [amt_uranium]
") - if(amt_titanium) - dat += text("Titanium ore: [amt_titanium]
") - if(amt_clown) - dat += text("Bananium ore: [amt_clown]
") - if(amt_mime) - dat += text("Tranquillite ore: [amt_mime]
") - if(amt_bluespace) - dat += text("Bluespace crystals: [amt_bluespace]
") + var/list/assembled = list() + for(var/obj/item/stack/ore/O in src) + assembled[O.type] += O.amount + for(var/type in assembled) + var/obj/item/stack/ore/O = type + dat += "[initial(O.name)] - [assembled[type]]
" dat += text("

Empty box") var/datum/browser/popup = new(user, "orebox", name, 400, 400) @@ -97,10 +59,7 @@ usr.set_machine(src) add_fingerprint(usr) if(href_list["removeall"]) - for(var/obj/item/ore/O in contents) - contents -= O - O.forceMove(loc) - CHECK_TICK + dump_box_contents() to_chat(usr, "You empty the box.") updateUsrDialog() @@ -108,20 +67,31 @@ obj/structure/ore_box/ex_act(severity, target) if(prob(100 / severity) && severity < 3) qdel(src) //nothing but ores can get inside unless its a bug and ores just return nothing on ex_act, not point in calling it on them +/obj/structure/ore_box/deconstruct(disassembled = TRUE, mob/user) + var/obj/item/stack/sheet/wood/W = new (loc, 4) + if(user) + W.add_fingerprint(user) + dump_box_contents() + qdel(src) + +/obj/structure/ore_box/proc/dump_box_contents() + for(var/obj/item/stack/ore/O in src) + if(QDELETED(O)) + continue + if(QDELETED(src)) + break + O.forceMove(loc) + CHECK_TICK /obj/structure/ore_box/verb/empty_box() set name = "Empty Ore Box" set category = "Object" set src in view(1) - if(!ishuman(usr)) //Only living, intelligent creatures with hands can empty ore boxes. - to_chat(usr, "You are physically incapable of emptying the ore box.") - return - if(usr.incapacitated()) return - if(!Adjacent(usr)) //You can only empty the box if you can physically reach it + if(!Adjacent(usr)) to_chat(usr, "You cannot reach the ore box.") return @@ -131,8 +101,5 @@ obj/structure/ore_box/ex_act(severity, target) to_chat(usr, "The ore box is empty.") return - for(var/obj/item/ore/O in contents) - contents -= O - O.forceMove(loc) - CHECK_TICK - to_chat(usr, "You empty the ore box.") \ No newline at end of file + dump_box_contents() + to_chat(usr, "You empty the ore box.") diff --git a/code/modules/mob/dead/observer/login.dm b/code/modules/mob/dead/observer/login.dm index eab9faf9a7a..0990b085264 100644 --- a/code/modules/mob/dead/observer/login.dm +++ b/code/modules/mob/dead/observer/login.dm @@ -4,8 +4,8 @@ ghostimage.icon_state = src.icon_state updateghostimages() - if(non_respawnable_keys[ckey]) + if(GLOB.non_respawnable_keys[ckey]) can_reenter_corpse = 0 - respawnable_list -= src + GLOB.respawnable_list -= src update_interface() \ No newline at end of file diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index 36afcd3868e..ba23b1c2153 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -64,9 +64,9 @@ var/list/image/ghost_darkness_images = list() //this is a list of images for thi name = body.real_name else if(gender == MALE) - name = capitalize(pick(first_names_male)) + " " + capitalize(pick(last_names)) + name = capitalize(pick(GLOB.first_names_male)) + " " + capitalize(pick(GLOB.last_names)) else - name = capitalize(pick(first_names_female)) + " " + capitalize(pick(last_names)) + name = capitalize(pick(GLOB.first_names_female)) + " " + capitalize(pick(GLOB.last_names)) mind = body.mind //we don't transfer the mind but we keep a reference to it. @@ -82,7 +82,7 @@ var/list/image/ghost_darkness_images = list() //this is a list of images for thi forceMove(T) if(!name) //To prevent nameless ghosts - name = capitalize(pick(first_names_male)) + " " + capitalize(pick(last_names)) + name = capitalize(pick(GLOB.first_names_male)) + " " + capitalize(pick(GLOB.last_names)) real_name = name ..() @@ -125,15 +125,15 @@ Works together with spawning an observer, noted above. /mob/proc/ghostize(var/flags = GHOST_CAN_REENTER) if(key) - if(non_respawnable_keys[ckey]) + if(GLOB.non_respawnable_keys[ckey]) flags &= ~GHOST_CAN_REENTER var/mob/dead/observer/ghost = new(src, flags) //Transfer safety to observer spawning proc. ghost.timeofdeath = src.timeofdeath //BS12 EDIT - respawnable_list -= src + GLOB.respawnable_list -= src if(ghost.can_reenter_corpse) - respawnable_list += ghost + GLOB.respawnable_list += ghost else - non_respawnable_keys[ckey] = 1 + GLOB.non_respawnable_keys[ckey] = 1 ghost.key = key if(!(ghost.client && ghost.client.holder) && !config.antag_hud_allowed) // For new ghosts we remove the verb from even showing up if it's not allowed. ghost.verbs -= /mob/dead/observer/verb/toggle_antagHUD // Poor guys, don't know what they are missing! @@ -159,7 +159,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp warningmsg = "You have committed suicide too early in the round" else if(stat != DEAD) warningmsg = "You are alive" - else if(non_respawnable_keys[ckey]) + else if(GLOB.non_respawnable_keys[ckey]) warningmsg = "You have lost your right to respawn" if(!warningmsg) @@ -223,7 +223,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(client.statpanel == "Status") show_stat_station_time() show_stat_emergency_shuttle_eta() - stat(null, "Respawnability: [(src in respawnable_list) ? "Yes" : "No"]") + stat(null, "Respawnability: [(src in GLOB.respawnable_list) ? "Yes" : "No"]") /mob/dead/observer/verb/reenter_corpse() set category = "Ghost" @@ -318,8 +318,8 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp var/response = alert(src, "If you turn this on, you will not be able to take any part in the round.","Are you sure you want to turn this feature on?","Yes","No") if(response == "No") return M.can_reenter_corpse = 0 - if(M in respawnable_list) - respawnable_list -= M + if(M in GLOB.respawnable_list) + GLOB.respawnable_list -= M if(!M.has_enabled_antagHUD && !check_rights(R_ADMIN|R_MOD,0)) M.has_enabled_antagHUD = 1 @@ -573,7 +573,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp var/mob/target = locate(href_list["jump"]) var/mob/A = usr; to_chat(A, "Teleporting to [target]...") - //var/mob/living/silicon/ai/A = locate(href_list["track2"]) in mob_list + //var/mob/living/silicon/ai/A = locate(href_list["track2"]) in GLOB.mob_list if(target && target != usr) spawn(0) var/turf/pos = get_turf(A) @@ -624,7 +624,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp updateghostimages() /proc/updateallghostimages() - for(var/mob/dead/observer/O in player_list) + for(var/mob/dead/observer/O in GLOB.player_list) O.updateghostimages() /mob/dead/observer/proc/updateghostimages() diff --git a/code/modules/mob/emote.dm b/code/modules/mob/emote.dm index 6c4e847fe32..0ec193c69e8 100644 --- a/code/modules/mob/emote.dm +++ b/code/modules/mob/emote.dm @@ -56,7 +56,7 @@ //Hearing gasp and such every five seconds is not good emotes were not global for a reason. // Maybe some people are okay with that. - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(!M.client) continue //skip monkeys and leavers if(istype(M, /mob/new_player)) @@ -126,7 +126,7 @@ if(message) - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(istype(M, /mob/new_player)) continue diff --git a/code/modules/mob/language.dm b/code/modules/mob/language.dm index 1a6f29a6dd0..43a18678dd9 100644 --- a/code/modules/mob/language.dm +++ b/code/modules/mob/language.dm @@ -25,9 +25,9 @@ /datum/language/proc/get_random_name(gender, name_count=2, syllable_count=4) if(!syllables || !syllables.len || english_names) if(gender==FEMALE) - return capitalize(pick(first_names_female)) + " " + capitalize(pick(last_names)) + return capitalize(pick(GLOB.first_names_female)) + " " + capitalize(pick(GLOB.last_names)) else - return capitalize(pick(first_names_male)) + " " + capitalize(pick(last_names)) + return capitalize(pick(GLOB.first_names_male)) + " " + capitalize(pick(GLOB.last_names)) var/full_name = "" var/new_name = "" @@ -105,7 +105,7 @@ speaker_mask = speaker.name var/msg = "[name], [speaker_mask] [format_message(message, get_spoken_verb(message))]" - for(var/mob/player in player_list) + for(var/mob/player in GLOB.player_list) if(istype(player,/mob/dead) && follow) var/msg_dead = "[name], [speaker_mask] ([ghost_follow_link(speaker, ghost=player)]) [format_message(message, get_spoken_verb(message))]" to_chat(player, msg_dead) @@ -232,7 +232,7 @@ while(i <= sounds) i++ - newname += pick(vox_name_syllables) + newname += pick(GLOB.vox_name_syllables) return capitalize(newname) /datum/language/diona @@ -267,7 +267,7 @@ if(prob(70)) new_name = "[pick(list("PBU","HIU","SINA","ARMA","OSI"))]-[rand(100, 999)]" else - new_name = pick(ai_names) + new_name = pick(GLOB.ai_names) return new_name /datum/language/kidan @@ -567,12 +567,12 @@ var/message_start = "[name], [speaker.name]" var/message_body = "[speaker.say_quote(message)],\"[message]\"
" - for(var/mob/M in dead_mob_list) + for(var/mob/M in GLOB.dead_mob_list) if(!isnewplayer(M) && !isbrain(M)) var/message_start_dead = "[name], [speaker.name] ([ghost_follow_link(speaker, ghost=M)])" M.show_message("[message_start_dead] [message_body]", 2) - for(var/mob/living/S in living_mob_list) + for(var/mob/living/S in GLOB.living_mob_list) if(drone_only && !istype(S,/mob/living/silicon/robot/drone)) continue else if(isAI(S)) @@ -627,7 +627,7 @@ // Language handling. /mob/proc/add_language(language) - var/datum/language/new_language = all_languages[language] + var/datum/language/new_language = GLOB.all_languages[language] if(!istype(new_language) || new_language in languages) return FALSE @@ -636,12 +636,12 @@ return TRUE /mob/proc/remove_language(rem_language) - var/datum/language/L = all_languages[rem_language] + var/datum/language/L = GLOB.all_languages[rem_language] . = (L in languages) languages.Remove(L) /mob/living/remove_language(rem_language) - var/datum/language/L = all_languages[rem_language] + var/datum/language/L = GLOB.all_languages[rem_language] if(default_language == L) default_language = null return ..() @@ -686,7 +686,7 @@ if(href_list["default_lang"] == "reset") set_default_language(null) else - var/datum/language/L = all_languages[href_list["default_lang"]] + var/datum/language/L = GLOB.all_languages[href_list["default_lang"]] if(L) set_default_language(L) check_languages() diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm index 7d2b92b1d14..dea7c447191 100644 --- a/code/modules/mob/living/carbon/alien/alien.dm +++ b/code/modules/mob/living/carbon/alien/alien.dm @@ -34,7 +34,7 @@ /mob/living/carbon/alien/get_default_language() if(default_language) return default_language - return all_languages["Xenomorph"] + return GLOB.all_languages["Xenomorph"] /mob/living/carbon/alien/say_quote(var/message, var/datum/language/speaking = null) var/verb = "hisses" @@ -194,7 +194,7 @@ Des: Gives the client of the alien an image on each infected mob. ----------------------------------------*/ /mob/living/carbon/alien/proc/AddInfectionImages() if(client) - for(var/mob/living/C in mob_list) + for(var/mob/living/C in GLOB.mob_list) if(C.status_flags & XENO_HOST) var/obj/item/organ/internal/body_egg/alien_embryo/A = C.get_int_organ(/obj/item/organ/internal/body_egg/alien_embryo) if(A) diff --git a/code/modules/mob/living/carbon/alien/death.dm b/code/modules/mob/living/carbon/alien/death.dm index e8982bb89e6..e11eaf3c4e4 100644 --- a/code/modules/mob/living/carbon/alien/death.dm +++ b/code/modules/mob/living/carbon/alien/death.dm @@ -15,7 +15,7 @@ flick("gibbed-a", animation) xgibs(loc) - dead_mob_list -= src + GLOB.dead_mob_list -= src spawn(15) if(animation) qdel(animation) @@ -36,7 +36,7 @@ flick("dust-a", animation) new /obj/effect/decal/remains/xeno(loc) - dead_mob_list -= src + GLOB.dead_mob_list -= src spawn(15) if(animation) qdel(animation) diff --git a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm index 06c4abccae2..a6454111397 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm @@ -46,7 +46,7 @@ Doesn't work on other aliens/AI.*/ log_say("(AWHISPER to [key_name(M)]) [msg]", src) to_chat(M, "You hear a strange, alien voice in your head...[msg]") to_chat(src, "You said: [msg] to [M]") - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) G.show_message("Alien message from [src] ([ghost_follow_link(src, ghost=G)]) to [M] ([ghost_follow_link(M, ghost=G)]): [msg]") return diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm index 1249c0f462c..8e261f56d8d 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm @@ -26,7 +26,7 @@ if(powerc(500)) // Queen check var/no_queen = 1 - for(var/mob/living/carbon/alien/humanoid/queen/Q in living_mob_list) + for(var/mob/living/carbon/alien/humanoid/queen/Q in GLOB.living_mob_list) if(!Q.key && Q.get_int_organ(/obj/item/organ/internal/brain/)) continue no_queen = 0 diff --git a/code/modules/mob/living/carbon/alien/humanoid/empress.dm b/code/modules/mob/living/carbon/alien/humanoid/empress.dm index 7db3ea5b1c5..f5355a38d67 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/empress.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/empress.dm @@ -33,7 +33,7 @@ create_reagents(100) //there should only be one queen - for(var/mob/living/carbon/alien/humanoid/empress/E in living_mob_list) + for(var/mob/living/carbon/alien/humanoid/empress/E in GLOB.living_mob_list) if(E == src) continue if(E.stat == DEAD) continue if(E.client) diff --git a/code/modules/mob/living/carbon/alien/humanoid/queen.dm b/code/modules/mob/living/carbon/alien/humanoid/queen.dm index a8f17714b0e..d80d773325e 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/queen.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/queen.dm @@ -13,7 +13,7 @@ create_reagents(100) //there should only be one queen - for(var/mob/living/carbon/alien/humanoid/queen/Q in living_mob_list) + for(var/mob/living/carbon/alien/humanoid/queen/Q in GLOB.living_mob_list) if(Q == src) continue if(Q.stat == DEAD) continue if(Q.client) diff --git a/code/modules/mob/living/carbon/alien/special/alien_embryo.dm b/code/modules/mob/living/carbon/alien/special/alien_embryo.dm index e09340872b9..d489443cb36 100644 --- a/code/modules/mob/living/carbon/alien/special/alien_embryo.dm +++ b/code/modules/mob/living/carbon/alien/special/alien_embryo.dm @@ -112,7 +112,7 @@ Proc: AddInfectionImages(C) Des: Adds the infection image to all aliens for this embryo ----------------------------------------*/ /obj/item/organ/internal/body_egg/alien_embryo/AddInfectionImages() - for(var/mob/living/carbon/alien/alien in player_list) + for(var/mob/living/carbon/alien/alien in GLOB.player_list) if(alien.client) var/I = image('icons/mob/alien.dmi', loc = owner, icon_state = "infected[stage]") alien.client.images += I @@ -122,7 +122,7 @@ Proc: RemoveInfectionImage(C) Des: Removes all images from the mob infected by this embryo ----------------------------------------*/ /obj/item/organ/internal/body_egg/alien_embryo/RemoveInfectionImages() - for(var/mob/living/carbon/alien/alien in player_list) + for(var/mob/living/carbon/alien/alien in GLOB.player_list) if(alien.client) for(var/image/I in alien.client.images) if(dd_hasprefix_case(I.icon_state, "infected") && I.loc == owner) diff --git a/code/modules/mob/living/carbon/brain/MMI.dm b/code/modules/mob/living/carbon/brain/MMI.dm index 9d50d8bf2ea..67d7ddc9f33 100644 --- a/code/modules/mob/living/carbon/brain/MMI.dm +++ b/code/modules/mob/living/carbon/brain/MMI.dm @@ -40,9 +40,9 @@ brainmob.loc = src brainmob.container = src brainmob.stat = CONSCIOUS - respawnable_list -= brainmob - dead_mob_list -= brainmob//Update dem lists - living_mob_list += brainmob + GLOB.respawnable_list -= brainmob + GLOB.dead_mob_list -= brainmob//Update dem lists + GLOB.living_mob_list += brainmob held_brain = B if(istype(O,/obj/item/organ/internal/brain/xeno)) // kept the type check, as it still does other weird stuff @@ -146,8 +146,8 @@ brainmob.container = null//Reset brainmob mmi var. brainmob.loc = held_brain//Throw mob into brain. - respawnable_list += brainmob - living_mob_list -= brainmob//Get outta here + GLOB.respawnable_list += brainmob + GLOB.living_mob_list -= brainmob//Get outta here held_brain.brainmob = brainmob//Set the brain to use the brainmob held_brain.brainmob.cancel_camera() brainmob = null//Set mmi brainmob var to null diff --git a/code/modules/mob/living/carbon/brain/robotic_brain.dm b/code/modules/mob/living/carbon/brain/robotic_brain.dm index ea83ab90206..b766d419d09 100644 --- a/code/modules/mob/living/carbon/brain/robotic_brain.dm +++ b/code/modules/mob/living/carbon/brain/robotic_brain.dm @@ -52,7 +52,7 @@ to_chat(brainmob, "Your internal speaker has been toggled [silenced ? "off" : "on"].") /obj/item/mmi/robotic_brain/proc/request_player() - for(var/mob/dead/observer/O in player_list) + for(var/mob/dead/observer/O in GLOB.player_list) if(check_observer(O)) to_chat(O, "\A [src] has been activated. (Teleport | Sign Up)") @@ -204,7 +204,7 @@ brainmob.container = src brainmob.stat = CONSCIOUS brainmob.SetSilence(0) - dead_mob_list -= brainmob + GLOB.dead_mob_list -= brainmob ..() /obj/item/mmi/robotic_brain/attack_ghost(mob/dead/observer/O) diff --git a/code/modules/mob/living/carbon/give.dm b/code/modules/mob/living/carbon/give.dm index 9dfa6efac89..55c4db791ac 100644 --- a/code/modules/mob/living/carbon/give.dm +++ b/code/modules/mob/living/carbon/give.dm @@ -56,6 +56,7 @@ target.update_inv_l_hand() target.update_inv_r_hand() target.visible_message(" [usr.name] handed \the [I.name] to [target.name].") + I.on_give(usr, target) if("No") target.visible_message(" [usr.name] tried to hand [I.name] to [target.name] but [target.name] didn't want it.") else diff --git a/code/modules/mob/living/carbon/human/appearance.dm b/code/modules/mob/living/carbon/human/appearance.dm index d19051692ca..cb0e04f84f4 100644 --- a/code/modules/mob/living/carbon/human/appearance.dm +++ b/code/modules/mob/living/carbon/human/appearance.dm @@ -10,11 +10,11 @@ gender = new_gender - var/datum/sprite_accessory/hair/current_hair = hair_styles_full_list[H.h_style] + var/datum/sprite_accessory/hair/current_hair = GLOB.hair_styles_full_list[H.h_style] if(current_hair.gender != NEUTER && current_hair.gender != gender) reset_head_hair() - var/datum/sprite_accessory/hair/current_fhair = facial_hair_styles_list[H.f_style] + var/datum/sprite_accessory/hair/current_fhair = GLOB.facial_hair_styles_list[H.f_style] if(current_fhair.gender != NEUTER && current_fhair.gender != gender) reset_facial_hair() @@ -29,7 +29,7 @@ if(!hair_style || !H || H.h_style == hair_style) return - if(!(fluff || (hair_style in hair_styles_public_list))) + if(!(fluff || (hair_style in GLOB.hair_styles_public_list))) return H.h_style = hair_style @@ -40,7 +40,7 @@ /mob/living/carbon/human/proc/change_facial_hair(var/facial_hair_style) var/obj/item/organ/external/head/H = get_organ("head") - if(!facial_hair_style || !H || H.f_style == facial_hair_style || !(facial_hair_style in facial_hair_styles_list)) + if(!facial_hair_style || !H || H.f_style == facial_hair_style || !(facial_hair_style in GLOB.facial_hair_styles_list)) return H.f_style = facial_hair_style @@ -50,7 +50,7 @@ /mob/living/carbon/human/proc/change_head_accessory(var/head_accessory_style) var/obj/item/organ/external/head/H = get_organ("head") - if(!head_accessory_style || !H || H.ha_style == head_accessory_style || !(head_accessory_style in head_accessory_styles_list)) + if(!head_accessory_style || !H || H.ha_style == head_accessory_style || !(head_accessory_style in GLOB.head_accessory_styles_list)) return H.ha_style = head_accessory_style @@ -59,10 +59,10 @@ return 1 /mob/living/carbon/human/proc/change_markings(var/marking_style, var/location = "body") - if(!marking_style || m_styles[location] == marking_style || !(marking_style in marking_styles_list)) + if(!marking_style || m_styles[location] == marking_style || !(marking_style in GLOB.marking_styles_list)) return - var/datum/sprite_accessory/body_markings/marking = marking_styles_list[marking_style] + var/datum/sprite_accessory/body_markings/marking = GLOB.marking_styles_list[marking_style] if(marking.name != "None" && marking.marking_location != location) return @@ -72,18 +72,18 @@ return if(head_organ.alt_head && head_organ.alt_head != "None") - var/datum/sprite_accessory/body_markings/head/H = marking_styles_list[marking_style] + var/datum/sprite_accessory/body_markings/head/H = GLOB.marking_styles_list[marking_style] if(marking.name != "None" && (!H.heads_allowed || (!("All" in H.heads_allowed) && !(head_organ.alt_head in H.heads_allowed)))) return else if(!head_organ.alt_head || head_organ.alt_head == "None") head_organ.alt_head = "None" - var/datum/sprite_accessory/body_markings/head/H = marking_styles_list[marking_style] + var/datum/sprite_accessory/body_markings/head/H = GLOB.marking_styles_list[marking_style] if(H.heads_allowed && !("All" in H.heads_allowed)) return if(location == "tail" && marking.name != "None") - var/datum/sprite_accessory/body_markings/tail/tail_marking = marking_styles_list[marking_style] + var/datum/sprite_accessory/body_markings/tail/tail_marking = GLOB.marking_styles_list[marking_style] if(!body_accessory) if(tail_marking.tails_allowed) return @@ -118,7 +118,7 @@ /mob/living/carbon/human/proc/change_alt_head(var/alternate_head) var/obj/item/organ/external/head/H = get_organ("head") - if(!H || H.alt_head == alternate_head || H.is_robotic() || (!(dna.species.bodyflags & HAS_ALT_HEADS) && alternate_head != "None") || !(alternate_head in alt_heads_list)) + if(!H || H.alt_head == alternate_head || H.is_robotic() || (!(dna.species.bodyflags & HAS_ALT_HEADS) && alternate_head != "None") || !(alternate_head in GLOB.alt_heads_list)) return H.alt_head = alternate_head @@ -126,7 +126,7 @@ //Handle head markings if they're incompatible with the new alt head. if(m_styles["head"]) var/head_marking = m_styles["head"] - var/datum/sprite_accessory/body_markings/head/head_marking_style = marking_styles_list[head_marking] + var/datum/sprite_accessory/body_markings/head/head_marking_style = GLOB.marking_styles_list[head_marking] if(!head_marking_style.heads_allowed || (!("All" in head_marking_style.heads_allowed) && !(H.alt_head in head_marking_style.heads_allowed))) m_styles["head"] = "None" update_markings() @@ -331,8 +331,8 @@ if(!H) return //No head, no hair. - for(var/hairstyle in hair_styles_public_list) - var/datum/sprite_accessory/S = hair_styles_public_list[hairstyle] + for(var/hairstyle in GLOB.hair_styles_public_list) + var/datum/sprite_accessory/S = GLOB.hair_styles_public_list[hairstyle] if(hairstyle == "Bald") //Just in case. valid_hairstyles += hairstyle @@ -359,8 +359,8 @@ if(!H) return //No head, no hair. - for(var/facialhairstyle in facial_hair_styles_list) - var/datum/sprite_accessory/S = facial_hair_styles_list[facialhairstyle] + for(var/facialhairstyle in GLOB.facial_hair_styles_list) + var/datum/sprite_accessory/S = GLOB.facial_hair_styles_list[facialhairstyle] if(facialhairstyle == "Shaved") //Just in case. valid_facial_hairstyles += facialhairstyle @@ -388,8 +388,8 @@ if(!H) return //No head, no head accessory. - for(var/head_accessory in head_accessory_styles_list) - var/datum/sprite_accessory/S = head_accessory_styles_list[head_accessory] + for(var/head_accessory in GLOB.head_accessory_styles_list) + var/datum/sprite_accessory/S = GLOB.head_accessory_styles_list[head_accessory] if(!(H.dna.species.name in S.species_allowed)) //If the user's head is not of a species the head accessory style allows, skip it. Otherwise, add it to the list. continue @@ -403,8 +403,8 @@ if(!H && location == "head") return //No head, no head markings. - for(var/marking in marking_styles_list) - var/datum/sprite_accessory/body_markings/S = marking_styles_list[marking] + for(var/marking in GLOB.marking_styles_list) + var/datum/sprite_accessory/body_markings/S = GLOB.marking_styles_list[marking] if(S.name == "None") valid_markings += marking continue @@ -420,7 +420,7 @@ if(!S.tails_allowed || !(body_accessory.name in S.tails_allowed)) continue if(location == "head") - var/datum/sprite_accessory/body_markings/head/M = marking_styles_list[S.name] + var/datum/sprite_accessory/body_markings/head/M = GLOB.marking_styles_list[S.name] if(H.dna.species.bodyflags & ALL_RPARTS) //If the user is a species that can have a robotic head... var/datum/robolimb/robohead = all_robolimbs[H.model] if(!(S.models_allowed && (robohead.company in S.models_allowed))) //Make sure they don't get markings incompatible with their head. @@ -455,9 +455,9 @@ var/obj/item/organ/external/head/H = get_organ("head") if(!H) return //No head, no alt heads. - valid_alt_heads["None"] = alt_heads_list["None"] //The only null entry should be the "None" option, and there should always be a "None" option. - for(var/alternate_head in alt_heads_list) - var/datum/sprite_accessory/alt_heads/head = alt_heads_list[alternate_head] + valid_alt_heads["None"] = GLOB.alt_heads_list["None"] //The only null entry should be the "None" option, and there should always be a "None" option. + for(var/alternate_head in GLOB.alt_heads_list) + var/datum/sprite_accessory/alt_heads/head = GLOB.alt_heads_list[alternate_head] if(!(H.dna.species.name in head.species_allowed)) continue diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 69653dfe1e8..ccd4c1540f6 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -841,7 +841,7 @@ to_chat(viewers(src), "[src] farts on the Bible!") var/image/cross = image('icons/obj/storage.dmi', "bible") var/adminbfmessage = "[bicon(cross)] Bible Fart: [key_name(src, 1)] (?) (PP) (VV) (SM) ([admin_jump_link(src)]) (CA) (SMITE):
" - for(var/client/X in admins) + for(var/client/X in GLOB.admins) if(check_rights(R_EVENT, 0, X.mob)) to_chat(X, adminbfmessage) else if(TOXIC_FARTS in mutations) @@ -941,7 +941,7 @@ //Hearing gasp and such every five seconds is not good emotes were not global for a reason. // Maybe some people are okay with that. - for(var/mob/M in dead_mob_list) + for(var/mob/M in GLOB.dead_mob_list) if(!M.client || istype(M, /mob/new_player)) continue //skip monkeys, leavers and new players if(M.stat == DEAD && M.get_preference(CHAT_GHOSTSIGHT) && !(M in viewers(src,null))) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index a39d2843501..165478697fb 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -180,7 +180,7 @@ if(!key) var/foundghost = FALSE if(mind) - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) if(G.mind == mind) foundghost = TRUE if(G.can_reenter_corpse == 0) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index fd72a50bca1..731380b68d4 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1457,7 +1457,7 @@ if(!dna.species) return null - return dna.species.default_language ? all_languages[dna.species.default_language] : null + return dna.species.default_language ? GLOB.all_languages[dna.species.default_language] : null /mob/living/carbon/human/proc/bloody_doodle() set category = "IC" @@ -1525,7 +1525,7 @@ /mob/living/carbon/human/proc/get_eye_shine() //Referenced cult constructs for shining in the dark. Needs to be above lighting effects such as shading. var/obj/item/organ/external/head/head_organ = get_organ("head") - var/datum/sprite_accessory/hair/hair_style = hair_styles_full_list[head_organ.h_style] + var/datum/sprite_accessory/hair/hair_style = GLOB.hair_styles_full_list[head_organ.h_style] var/icon/hair = new /icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s") return image(get_icon_difference(get_eyecon(), hair), layer = LIGHTING_LAYER + 1) //Cut the hair's pixels from the eyes icon so eyes covered by bangs stay hidden even while on a higher layer. diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 6e1d35fb0d2..98274ea7e1f 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -288,7 +288,7 @@ emp_act if(Iforce > 10 || Iforce >= 5 && prob(33)) - forcesay(hit_appends) //forcesay checks stat already + forcesay(GLOB.hit_appends) //forcesay checks stat already //this proc handles being hit by a thrown atom /mob/living/carbon/human/hitby(atom/movable/AM, skipcatch = 0, hitpush = 1, blocked = 0) diff --git a/code/modules/mob/living/carbon/human/interactive/interactive.dm b/code/modules/mob/living/carbon/human/interactive/interactive.dm index abdcf9d7373..3eb2f4e65fd 100644 --- a/code/modules/mob/living/carbon/human/interactive/interactive.dm +++ b/code/modules/mob/living/carbon/human/interactive/interactive.dm @@ -191,7 +191,7 @@ var/shouldDoppel = input("Do you want the SNPC to disguise themself as a crewmember?") as anything in list("Yes", "No") if(shouldDoppel == "Yes") var/list/validchoices = list() - for(var/mob/living/carbon/human/M in mob_list) + for(var/mob/living/carbon/human/M in GLOB.mob_list) validchoices += M var/mob/living/carbon/human/chosen = input("Which crewmember?") as null|anything in validchoices @@ -410,7 +410,7 @@ /mob/living/carbon/human/interactive/LateInitialize() . = ..() - snpc_list += src + GLOB.snpc_list += src create_mob_hud() @@ -419,7 +419,7 @@ doSetup() START_PROCESSING(SSnpcpool, src) loadVoice() - hear_radio_list += src + GLOB.hear_radio_list += src // a little bit of variation to make individuals more unique robustness += rand(-10, 10) diff --git a/code/modules/mob/living/carbon/human/species/_species.dm b/code/modules/mob/living/carbon/human/species/_species.dm index ea6abc3a65c..6ad70f09262 100644 --- a/code/modules/mob/living/carbon/human/species/_species.dm +++ b/code/modules/mob/living/carbon/human/species/_species.dm @@ -161,7 +161,7 @@ unarmed = new unarmed_type() /datum/species/proc/get_random_name(gender) - var/datum/language/species_language = all_languages[language] + var/datum/language/species_language = GLOB.all_languages[language] return species_language.get_random_name(gender) /datum/species/proc/create_organs(mob/living/carbon/human/H) //Handles creation of mob organs. @@ -361,9 +361,9 @@ target.visible_message("[user] has weakened [target]!", \ "[user] has weakened [target]!") target.apply_effect(4, WEAKEN, armor_block) - target.forcesay(hit_appends) + target.forcesay(GLOB.hit_appends) else if(target.lying) - target.forcesay(hit_appends) + target.forcesay(GLOB.hit_appends) /datum/species/proc/disarm(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style) if(attacker_style && attacker_style.disarm_act(user, target)) diff --git a/code/modules/mob/living/carbon/human/species/machine.dm b/code/modules/mob/living/carbon/human/species/machine.dm index 19af6cee849..d86040d3dcc 100644 --- a/code/modules/mob/living/carbon/human/species/machine.dm +++ b/code/modules/mob/living/carbon/human/species/machine.dm @@ -122,8 +122,8 @@ else if(robohead.is_monitor) //Means that the character's head is a monitor (has a screen). Time to customize. var/list/hair = list() - for(var/i in hair_styles_public_list) - var/datum/sprite_accessory/hair/tmp_hair = hair_styles_public_list[i] + for(var/i in GLOB.hair_styles_public_list) + var/datum/sprite_accessory/hair/tmp_hair = GLOB.hair_styles_public_list[i] if((head_organ.dna.species.name in tmp_hair.species_allowed) && (robohead.company in tmp_hair.models_allowed)) //Populate the list of available monitor styles only with styles that the monitor-head is allowed to use. hair += i diff --git a/code/modules/mob/living/carbon/human/species/wryn.dm b/code/modules/mob/living/carbon/human/species/wryn.dm index 219be4111b3..8c576f9e30e 100644 --- a/code/modules/mob/living/carbon/human/species/wryn.dm +++ b/code/modules/mob/living/carbon/human/species/wryn.dm @@ -50,7 +50,7 @@ /datum/species/wryn/handle_death(mob/living/carbon/human/H) - for(var/mob/living/carbon/C in living_mob_list) + for(var/mob/living/carbon/C in GLOB.living_mob_list) if(C.get_int_organ(/obj/item/organ/internal/wryn/hivenode)) to_chat(C, "Your antennae tingle as you are overcome with pain...") to_chat(C, "It feels like part of you has died.") // This is bullshit diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 450b7a6c1a4..8dff1863061 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -318,18 +318,18 @@ var/global/list/damage_icon_parts = list() var/icon/underwear_standing = new/icon('icons/mob/underwear.dmi',"nude") if(underwear && dna.species.clothing_flags & HAS_UNDERWEAR) - var/datum/sprite_accessory/underwear/U = underwear_list[underwear] + var/datum/sprite_accessory/underwear/U = GLOB.underwear_list[underwear] if(U) underwear_standing.Blend(new /icon(U.icon, "uw_[U.icon_state]_s"), ICON_OVERLAY) if(undershirt && dna.species.clothing_flags & HAS_UNDERSHIRT) - var/datum/sprite_accessory/undershirt/U2 = undershirt_list[undershirt] + var/datum/sprite_accessory/undershirt/U2 = GLOB.undershirt_list[undershirt] if(U2) underwear_standing.Blend(new /icon(U2.icon, "us_[U2.icon_state]_s"), ICON_OVERLAY) if(socks && dna.species.clothing_flags & HAS_SOCKS) - var/datum/sprite_accessory/socks/U3 = socks_list[socks] + var/datum/sprite_accessory/socks/U3 = GLOB.socks_list[socks] if(U3) underwear_standing.Blend(new /icon(U3.icon, "sk_[U3.icon_state]_s"), ICON_OVERLAY) @@ -369,7 +369,7 @@ var/global/list/damage_icon_parts = list() var/obj/item/organ/external/chest/chest_organ = get_organ("chest") if(chest_organ && m_styles["body"]) var/body_marking = m_styles["body"] - var/datum/sprite_accessory/body_marking_style = marking_styles_list[body_marking] + var/datum/sprite_accessory/body_marking_style = GLOB.marking_styles_list[body_marking] if(body_marking_style && body_marking_style.species_allowed && (dna.species.name in body_marking_style.species_allowed)) var/icon/b_marking_s = new/icon("icon" = body_marking_style.icon, "icon_state" = "[body_marking_style.icon_state]_s") if(body_marking_style.do_colouration) @@ -379,7 +379,7 @@ var/global/list/damage_icon_parts = list() var/obj/item/organ/external/head/head_organ = get_organ("head") if(head_organ && m_styles["head"]) //If the head is destroyed, forget the head markings. This prevents floating optical markings on decapitated IPCs, for example. var/head_marking = m_styles["head"] - var/datum/sprite_accessory/head_marking_style = marking_styles_list[head_marking] + var/datum/sprite_accessory/head_marking_style = GLOB.marking_styles_list[head_marking] if(head_marking_style && head_marking_style.species_allowed && (head_organ.dna.species.name in head_marking_style.species_allowed)) var/icon/h_marking_s = new/icon("icon" = head_marking_style.icon, "icon_state" = "[head_marking_style.icon_state]_s") if(head_marking_style.do_colouration) @@ -409,7 +409,7 @@ var/global/list/damage_icon_parts = list() //base icons var/icon/head_accessory_standing = new /icon('icons/mob/body_accessory.dmi',"accessory_none_s") if(head_organ.ha_style && (head_organ.dna.species.bodyflags & HAS_HEAD_ACCESSORY)) - var/datum/sprite_accessory/head_accessory/head_accessory_style = head_accessory_styles_list[head_organ.ha_style] + var/datum/sprite_accessory/head_accessory/head_accessory_style = GLOB.head_accessory_styles_list[head_organ.ha_style] if(head_accessory_style && head_accessory_style.species_allowed) if(head_organ.dna.species.name in head_accessory_style.species_allowed) var/icon/head_accessory_s = new/icon("icon" = head_accessory_style.icon, "icon_state" = "[head_accessory_style.icon_state]_s") @@ -448,7 +448,7 @@ var/global/list/damage_icon_parts = list() //var/icon/debrained_s = new /icon("icon"='icons/mob/human_face.dmi', "icon_state" = "debrained_s") if(head_organ.h_style && !(head && (head.flags & BLOCKHEADHAIR) && !(isSynthetic()))) - var/datum/sprite_accessory/hair/hair_style = hair_styles_full_list[head_organ.h_style] + var/datum/sprite_accessory/hair/hair_style = GLOB.hair_styles_full_list[head_organ.h_style] //if(!src.get_int_organ(/obj/item/organ/internal/brain) && !ismachine(src))//make it obvious we have NO BRAIN // hair_standing.Blend(debrained_s, ICON_OVERLAY) if(hair_style && hair_style.species_allowed) @@ -496,7 +496,7 @@ var/global/list/damage_icon_parts = list() var/icon/face_standing = new /icon('icons/mob/human_face.dmi',"bald_s") if(head_organ.f_style) - var/datum/sprite_accessory/facial_hair/facial_hair_style = facial_hair_styles_list[head_organ.f_style] + var/datum/sprite_accessory/facial_hair/facial_hair_style = GLOB.facial_hair_styles_list[head_organ.f_style] if(facial_hair_style && facial_hair_style.species_allowed) if((head_organ.dna.species.name in facial_hair_style.species_allowed) || (head_organ.dna.species.bodyflags & ALL_RPARTS)) //If the head's species is in the list of allowed species for the hairstyle, or the head's species is one flagged to have bodies comprised wholly of cybernetics... var/icon/facial_s = new/icon("icon" = facial_hair_style.icon, "icon_state" = "[facial_hair_style.icon_state]_s") @@ -765,7 +765,7 @@ var/global/list/damage_icon_parts = list() else new_glasses = image("icon" = 'icons/mob/eyes.dmi', "icon_state" = "[glasses.icon_state]") - var/datum/sprite_accessory/hair/hair_style = hair_styles_full_list[head_organ.h_style] + var/datum/sprite_accessory/hair/hair_style = GLOB.hair_styles_full_list[head_organ.h_style] if(hair_style && hair_style.glasses_over) //Select which layer to use based on the properties of the hair style. Hair styles with hair that don't overhang the arms of the glasses should have glasses_over set to a positive value. overlays_standing[GLASSES_OVER_LAYER] = new_glasses else @@ -1029,7 +1029,7 @@ var/global/list/damage_icon_parts = list() var/obj/item/organ/external/head/head_organ = get_organ("head") var/datum/sprite_accessory/alt_heads/alternate_head if(head_organ.alt_head && head_organ.alt_head != "None") - alternate_head = alt_heads_list[head_organ.alt_head] + alternate_head = GLOB.alt_heads_list[head_organ.alt_head] var/image/standing var/icon/mask_icon = new(wear_mask.icon) @@ -1166,7 +1166,7 @@ var/global/list/damage_icon_parts = list() var/datum/sprite_accessory/body_markings/tail/tail_marking_style if(m_styles["tail"] != "None" && (dna.species.bodyflags & HAS_TAIL_MARKINGS)) var/tail_marking = m_styles["tail"] - tail_marking_style = marking_styles_list[tail_marking] + tail_marking_style = GLOB.marking_styles_list[tail_marking] tail_marking_icon = new/icon("icon" = tail_marking_style.icon, "icon_state" = "[tail_marking_style.icon_state]_s") tail_marking_icon.Blend(m_colours["tail"], ICON_ADD) @@ -1233,7 +1233,7 @@ var/global/list/damage_icon_parts = list() var/datum/sprite_accessory/body_markings/tail/tail_marking_style if(m_styles["tail"] != "None" && (dna.species.bodyflags & HAS_TAIL_MARKINGS)) var/tail_marking = m_styles["tail"] - tail_marking_style = marking_styles_list[tail_marking] + tail_marking_style = GLOB.marking_styles_list[tail_marking] tail_marking_icon = new/icon("icon" = tail_marking_style.icon, "icon_state" = "[tail_marking_style.icon_state]w_s") tail_marking_icon.Blend(m_colours["tail"], ICON_ADD) diff --git a/code/modules/mob/living/carbon/slime/slime.dm b/code/modules/mob/living/carbon/slime/slime.dm index 506cc804bd3..be25de1ac14 100644 --- a/code/modules/mob/living/carbon/slime/slime.dm +++ b/code/modules/mob/living/carbon/slime/slime.dm @@ -67,7 +67,7 @@ ..() /mob/living/carbon/slime/Destroy() - for(var/obj/machinery/computer/camera_advanced/xenobio/X in machines) + for(var/obj/machinery/computer/camera_advanced/xenobio/X in GLOB.machines) if(src in X.stored_slimes) X.stored_slimes -= src return ..() diff --git a/code/modules/mob/living/death.dm b/code/modules/mob/living/death.dm index 7987f460815..a760b256cdc 100644 --- a/code/modules/mob/living/death.dm +++ b/code/modules/mob/living/death.dm @@ -78,11 +78,11 @@ timeofdeath = world.time - living_mob_list -= src - dead_mob_list += src + GLOB.living_mob_list -= src + GLOB.dead_mob_list += src if(mind) mind.store_memory("Time of death: [station_time_timestamp("hh:mm:ss", timeofdeath)]", 0) - respawnable_list += src + GLOB.respawnable_list += src if(ticker && ticker.mode) ticker.mode.check_win() diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 2f6bb4628c3..5f577f79d7d 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -253,7 +253,7 @@ proc/get_radio_key_from_channel(var/channel) hearturfs += get_turf(O) listening_obj |= O - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(!M.client) continue //skip monkeys and leavers if(isnewplayer(M)) @@ -315,7 +315,7 @@ proc/get_radio_key_from_channel(var/channel) if(act && type && message) //parent call log_emote(message, src) - for(var/mob/M in dead_mob_list) + for(var/mob/M in GLOB.dead_mob_list) if(!M.client || istype(M, /mob/new_player)) continue //skip monkeys, leavers and new players //who the hell knows why new players are in the dead mob list @@ -431,7 +431,7 @@ proc/get_radio_key_from_channel(var/channel) hearturfs += get_turf(L) //ghosts - for(var/mob/M in dead_mob_list) //does this include players who joined as observers as well? + for(var/mob/M in GLOB.dead_mob_list) //does this include players who joined as observers as well? if(!M.client) continue if(M.stat == DEAD && M.client && M.get_preference(CHAT_GHOSTEARS)) @@ -439,7 +439,7 @@ proc/get_radio_key_from_channel(var/channel) // This, in tandem with "hearturfs", lets nested mobs hear whispers that are in range // Grifted from saycode above. - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(!M.client || isnewplayer(M)) continue //skip monkeys and leavers if(get_turf(M) in hearturfs) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index daf723597de..023a18a96bb 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -119,12 +119,12 @@ var/list/ai_verbs_default = list( announcement.announcer = name announcement.newscast = 0 - var/list/possibleNames = ai_names + var/list/possibleNames = GLOB.ai_names var/pickedName = null while(!pickedName) - pickedName = pick(ai_names) - for(var/mob/living/silicon/ai/A in mob_list) + pickedName = pick(GLOB.ai_names) + for(var/mob/living/silicon/ai/A in GLOB.mob_list) if(A.real_name == pickedName && possibleNames.len > 1) //fixing the theoretically possible infinite loop possibleNames -= pickedName pickedName = null @@ -199,7 +199,7 @@ var/list/ai_verbs_default = list( builtInCamera.network = list("SS13") ai_list += src - shuttle_caller_list += src + GLOB.shuttle_caller_list += src ..() /mob/living/silicon/ai/proc/on_mob_init() @@ -264,7 +264,7 @@ var/list/ai_verbs_default = list( /mob/living/silicon/ai/Destroy() ai_list -= src - shuttle_caller_list -= src + GLOB.shuttle_caller_list -= src SSshuttle.autoEvac() QDEL_NULL(eyeobj) // No AI, no Eye if(malfhacking) @@ -612,7 +612,7 @@ var/list/ai_verbs_default = list( return if(href_list["track"]) - var/mob/living/target = locate(href_list["track"]) in mob_list + var/mob/living/target = locate(href_list["track"]) in GLOB.mob_list if(target && target.can_track()) ai_actual_track(target) else @@ -620,7 +620,7 @@ var/list/ai_verbs_default = list( return if(href_list["trackbot"]) - var/mob/living/simple_animal/bot/target = locate(href_list["trackbot"]) in simple_animal_list + var/mob/living/simple_animal/bot/target = locate(href_list["trackbot"]) in GLOB.simple_animal_list if(target) ai_actual_track(target) else @@ -628,7 +628,7 @@ var/list/ai_verbs_default = list( return if(href_list["callbot"]) //Command a bot to move to a selected location. - Bot = locate(href_list["callbot"]) in simple_animal_list + Bot = locate(href_list["callbot"]) in GLOB.simple_animal_list if(!Bot || Bot.remote_disabled || control_disabled) return //True if there is no bot found, the bot is manually emagged, or the AI is carded with wireless off. waypoint_mode = 1 @@ -636,7 +636,7 @@ var/list/ai_verbs_default = list( return if(href_list["interface"]) //Remotely connect to a bot! - Bot = locate(href_list["interface"]) in simple_animal_list + Bot = locate(href_list["interface"]) in GLOB.simple_animal_list if(!Bot || Bot.remote_disabled || control_disabled) return Bot.attack_ai(src) @@ -663,8 +663,8 @@ var/list/ai_verbs_default = list( M.transfer_ai(AI_MECH_HACK,src, usr) //Called om the mech itself. else if(href_list["faketrack"]) - var/mob/target = locate(href_list["track"]) in mob_list - var/mob/living/silicon/ai/A = locate(href_list["track2"]) in mob_list + var/mob/target = locate(href_list["track"]) in GLOB.mob_list + var/mob/living/silicon/ai/A = locate(href_list["track2"]) in GLOB.mob_list if(A && target) A.cameraFollow = target @@ -678,7 +678,7 @@ var/list/ai_verbs_default = list( continue else if(href_list["open"]) - var/mob/target = locate(href_list["open"]) in mob_list + var/mob/target = locate(href_list["open"]) in GLOB.mob_list if(target) open_nearest_door(target) @@ -715,7 +715,7 @@ var/list/ai_verbs_default = list( d += "Query network status
" d += "
NameFingerprints
[H][md5(H.dna.uni_identity)]
" - for(var/mob/living/simple_animal/bot/Bot in simple_animal_list) + for(var/mob/living/simple_animal/bot/Bot in GLOB.simple_animal_list) if(is_ai_allowed(Bot.z) && !Bot.remote_disabled) //Only non-emagged bots on the allowed Z-level are detected! bot_area = get_area(Bot) d += "" @@ -791,7 +791,7 @@ var/list/ai_verbs_default = list( if(!C.can_use()) continue - var/list/tempnetwork = difflist(C.network,restricted_camera_networks,1) + var/list/tempnetwork = difflist(C.network,GLOB.restricted_camera_networks,1) if(tempnetwork.len) for(var/i in tempnetwork) cameralist[i] = i @@ -841,7 +841,7 @@ var/list/ai_verbs_default = list( if(check_unable()) return - for(var/obj/machinery/M in machines) //change status + for(var/obj/machinery/M in GLOB.machines) //change status if(istype(M, /obj/machinery/ai_status_display)) var/obj/machinery/ai_status_display/AISD = M AISD.emotion = emote diff --git a/code/modules/mob/living/silicon/ai/death.dm b/code/modules/mob/living/silicon/ai/death.dm index ca4d2da70bd..ba418ef44c6 100644 --- a/code/modules/mob/living/silicon/ai/death.dm +++ b/code/modules/mob/living/silicon/ai/death.dm @@ -12,13 +12,13 @@ if(eyeobj) eyeobj.setLoc(get_turf(src)) - shuttle_caller_list -= src + GLOB.shuttle_caller_list -= src SSshuttle.autoEvac() if(nuking) set_security_level("red") nuking = 0 - for(var/obj/item/pinpointer/point in pinpointer_list) + for(var/obj/item/pinpointer/point in GLOB.pinpointer_list) point.the_disk = null //Point back to the disk. if(doomsday_device) diff --git a/code/modules/mob/living/silicon/ai/latejoin.dm b/code/modules/mob/living/silicon/ai/latejoin.dm index 606420e7cf1..41e7d20fb1e 100644 --- a/code/modules/mob/living/silicon/ai/latejoin.dm +++ b/code/modules/mob/living/silicon/ai/latejoin.dm @@ -1,7 +1,7 @@ var/global/list/empty_playable_ai_cores = list() /hook/roundstart/proc/spawn_empty_ai() - for(var/obj/effect/landmark/start/S in landmarks_list) + for(var/obj/effect/landmark/start/S in GLOB.landmarks_list) if(S.name != "AI") continue if(locate(/mob/living) in S.loc) @@ -42,21 +42,21 @@ var/global/list/empty_playable_ai_cores = list() // TODO: Move away from the insane name-based landmark system /mob/living/silicon/ai/proc/moveToAILandmark() var/obj/loc_landmark - for(var/obj/effect/landmark/start/sloc in landmarks_list) + for(var/obj/effect/landmark/start/sloc in GLOB.landmarks_list) if(sloc.name != "AI") continue if(locate(/mob/living) in sloc.loc) continue loc_landmark = sloc if(!loc_landmark) - for(var/obj/effect/landmark/tripai in landmarks_list) + for(var/obj/effect/landmark/tripai in GLOB.landmarks_list) if(tripai.name == "tripai") if(locate(/mob/living) in tripai.loc) continue loc_landmark = tripai if(!loc_landmark) to_chat(src, "Oh god sorry we can't find an unoccupied AI spawn location, so we're spawning you on top of someone.") - for(var/obj/effect/landmark/start/sloc in landmarks_list) + for(var/obj/effect/landmark/start/sloc in GLOB.landmarks_list) if(sloc.name == "AI") loc_landmark = sloc diff --git a/code/modules/mob/living/silicon/ai/laws.dm b/code/modules/mob/living/silicon/ai/laws.dm index 4ce1dbda48c..19e0b784a58 100755 --- a/code/modules/mob/living/silicon/ai/laws.dm +++ b/code/modules/mob/living/silicon/ai/laws.dm @@ -17,7 +17,7 @@ /mob/living/silicon/ai/add_ion_law(var/law) ..() - for(var/mob/living/silicon/robot/R in mob_list) + for(var/mob/living/silicon/robot/R in GLOB.mob_list) if(R.lawupdate && (R.connected_ai == src)) R.show_laws() diff --git a/code/modules/mob/living/silicon/ai/login.dm b/code/modules/mob/living/silicon/ai/login.dm index 7d3a65445ff..a71fc9d6f2d 100644 --- a/code/modules/mob/living/silicon/ai/login.dm +++ b/code/modules/mob/living/silicon/ai/login.dm @@ -1,4 +1,4 @@ -/mob/living/silicon/ai/Login() //ThisIsDumb(TM) TODO: tidy this up ¬_¬ ~Carn +/mob/living/silicon/ai/Login() //ThisIsDumb(TM) TODO: tidy this up �_� ~Carn ..() for(var/obj/effect/rune/rune in world) var/image/blood = image(loc = rune) @@ -7,7 +7,7 @@ regenerate_icons() if(stat != DEAD) - for(var/obj/machinery/ai_status_display/O in machines) //change status + for(var/obj/machinery/ai_status_display/O in GLOB.machines) //change status O.mode = 1 O.emotion = "Neutral" view_core() \ No newline at end of file diff --git a/code/modules/mob/living/silicon/ai/say.dm b/code/modules/mob/living/silicon/ai/say.dm index d35983a1390..431cf44a331 100644 --- a/code/modules/mob/living/silicon/ai/say.dm +++ b/code/modules/mob/living/silicon/ai/say.dm @@ -148,7 +148,7 @@ var/const/VOX_PATH = "sound/vox_fem/" // If there is no single listener, broadcast to everyone in the same z level if(!only_listener) // Play voice for all mobs in the z level - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.client) var/turf/T = get_turf(M) if(T && T.z == z_level && M.can_hear()) diff --git a/code/modules/mob/living/silicon/death.dm b/code/modules/mob/living/silicon/death.dm index b5c658c6c62..1c6fa2705f1 100644 --- a/code/modules/mob/living/silicon/death.dm +++ b/code/modules/mob/living/silicon/death.dm @@ -16,7 +16,7 @@ // flick("gibbed-r", animation) robogibs(loc) - dead_mob_list -= src + GLOB.dead_mob_list -= src spawn(15) if(animation) qdel(animation) if(src) qdel(src) @@ -37,7 +37,7 @@ // flick("dust-r", animation) new /obj/effect/decal/remains/robot(loc) - dead_mob_list -= src + GLOB.dead_mob_list -= src spawn(15) if(animation) qdel(animation) if(src) qdel(src) diff --git a/code/modules/mob/living/silicon/pai/recruit.dm b/code/modules/mob/living/silicon/pai/recruit.dm index 387fdf9880e..45e28a85ee4 100644 --- a/code/modules/mob/living/silicon/pai/recruit.dm +++ b/code/modules/mob/living/silicon/pai/recruit.dm @@ -26,7 +26,7 @@ var/datum/paiController/paiController // Global handler for pAI candidates if("signup" in href_list) var/mob/dead/observer/O = locate(href_list["signup"]) if(!O) return - if(!(O in respawnable_list)) + if(!(O in GLOB.respawnable_list)) to_chat(O, "You've given up your ability to respawn!") return if(!check_recruit(O)) return @@ -41,7 +41,7 @@ var/datum/paiController/paiController // Global handler for pAI candidates if(istype(card,/obj/item/paicard) && istype(candidate,/datum/paiCandidate)) var/mob/living/silicon/pai/pai = new(card) if(!candidate.name) - pai.name = pick(ninja_names) + pai.name = pick(GLOB.ninja_names) else pai.name = candidate.name pai.real_name = pai.name @@ -237,7 +237,7 @@ var/datum/paiController/paiController // Global handler for pAI candidates for(var/datum/paiCandidate/c in paiController.pai_candidates) if(c.ready) var/found = 0 - for(var/mob/o in respawnable_list) + for(var/mob/o in GLOB.respawnable_list) if(o.key == c.key) found = 1 if(found) @@ -348,7 +348,7 @@ var/datum/paiController/paiController // Global handler for pAI candidates user << browse(dat, "window=findPai") /datum/paiController/proc/requestRecruits(var/obj/item/paicard/P, mob/user) - for(var/mob/dead/observer/O in player_list) + for(var/mob/dead/observer/O in GLOB.player_list) if(O.client && (ROLE_PAI in O.client.prefs.be_special)) if(player_old_enough_antag(O.client,ROLE_PAI)) if(check_recruit(O)) @@ -362,7 +362,7 @@ var/datum/paiController/paiController // Global handler for pAI candidates return 0 if(cannotPossess(O)) return 0 - if(!(O in respawnable_list)) + if(!(O in GLOB.respawnable_list)) return 0 if(O.client) return 1 diff --git a/code/modules/mob/living/silicon/pai/software_modules.dm b/code/modules/mob/living/silicon/pai/software_modules.dm index 48c1c1d7d10..67449c4c32b 100644 --- a/code/modules/mob/living/silicon/pai/software_modules.dm +++ b/code/modules/mob/living/silicon/pai/software_modules.dm @@ -383,7 +383,7 @@ /mob/living/silicon/pai/proc/hackloop() var/turf/T = get_turf_or_move(src.loc) - for(var/mob/living/silicon/ai/AI in player_list) + for(var/mob/living/silicon/ai/AI in GLOB.player_list) if(!T || !is_station_contact(T.z)) break if(T.loc) diff --git a/code/modules/mob/living/silicon/robot/death.dm b/code/modules/mob/living/silicon/robot/death.dm index f9432ab7836..54049d9d06f 100644 --- a/code/modules/mob/living/silicon/robot/death.dm +++ b/code/modules/mob/living/silicon/robot/death.dm @@ -16,8 +16,8 @@ flick("gibbed-r", animation) robogibs(loc) - living_mob_list -= src - dead_mob_list -= src + GLOB.living_mob_list -= src + GLOB.dead_mob_list -= src spawn(15) if(animation) qdel(animation) if(src) qdel(src) @@ -39,7 +39,7 @@ new /obj/effect/decal/remains/robot(loc) if(mmi) qdel(mmi) //Delete the MMI first so that it won't go popping out. - dead_mob_list -= src + GLOB.dead_mob_list -= src spawn(15) if(animation) qdel(animation) if(src) qdel(src) diff --git a/code/modules/mob/living/silicon/robot/drone/drone.dm b/code/modules/mob/living/silicon/robot/drone/drone.dm index eb1596c55c6..0a24b6414ca 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone.dm @@ -254,7 +254,7 @@ //Reboot procs. /mob/living/silicon/robot/drone/proc/request_player() - for(var/mob/dead/observer/O in player_list) + for(var/mob/dead/observer/O in GLOB.player_list) if(cannotPossess(O)) continue if(jobban_isbanned(O,"nonhumandept") || jobban_isbanned(O,"Drone")) diff --git a/code/modules/mob/living/silicon/robot/drone/drone_abilities.dm b/code/modules/mob/living/silicon/robot/drone/drone_abilities.dm index b3e6a62cb2e..44eff377f77 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_abilities.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_abilities.dm @@ -4,14 +4,14 @@ set desc = "Tag yourself for delivery through the disposals system." set category = "Drone" - var/tag = input("Select the desired destination.", "Set Mail Tag", null) as null|anything in TAGGERLOCATIONS + var/tag = input("Select the desired destination.", "Set Mail Tag", null) as null|anything in GLOB.TAGGERLOCATIONS - if(!tag || TAGGERLOCATIONS[tag]) + if(!tag || GLOB.TAGGERLOCATIONS[tag]) mail_destination = 0 return to_chat(src, "You configure your internal beacon, tagging yourself for delivery to '[tag]'.") - mail_destination = TAGGERLOCATIONS.Find(tag) + mail_destination = GLOB.TAGGERLOCATIONS.Find(tag) //Auto flush if we use this verb inside a disposal chute. var/obj/machinery/disposal/D = src.loc diff --git a/code/modules/mob/living/silicon/robot/drone/drone_console.dm b/code/modules/mob/living/silicon/robot/drone/drone_console.dm index cb632ce0ffd..167bf45ca6e 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_console.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_console.dm @@ -63,9 +63,9 @@ if(href_list["setarea"]) //Probably should consider using another list, but this one will do. - var/t_area = input("Select the area to ping.", "Set Target Area", null) as null|anything in TAGGERLOCATIONS + var/t_area = input("Select the area to ping.", "Set Target Area", null) as null|anything in GLOB.TAGGERLOCATIONS - if(!t_area || TAGGERLOCATIONS[t_area]) + if(!t_area || GLOB.TAGGERLOCATIONS[t_area]) return drone_call_area = t_area diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm index 88d566ad692..124a8d90fae 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -29,7 +29,7 @@ /obj/item/tank, /obj/item/circuitboard, /obj/item/stack/tile/light, - /obj/item/ore/bluespace_crystal + /obj/item/stack/ore/bluespace_crystal ) //Item currently being held. diff --git a/code/modules/mob/living/silicon/robot/drone/drone_say.dm b/code/modules/mob/living/silicon/robot/drone/drone_say.dm index 779b3a2de14..741207d6f2d 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_say.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_say.dm @@ -5,7 +5,7 @@ if(!speaking) speaking = parse_language(message) if(!speaking) - speaking = istype(get_default_language(), /datum/language) ? get_default_language() : all_languages[get_default_language()] + speaking = istype(get_default_language(), /datum/language) ? get_default_language() : GLOB.all_languages[get_default_language()] message = speaking.key + " " + message; // Prepend key to prevent the message from getting trimmed if(speaking) return ..() diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index b7a64908a42..b667dbd15bd 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -35,7 +35,7 @@ var/obj/item/radio/common_radio /mob/living/silicon/New() - silicon_mob_list |= src + GLOB.silicon_mob_list |= src ..() var/datum/atom_hud/data/diagnostic/diag_hud = huds[DATA_HUD_DIAGNOSTIC] diag_hud.add_to_hud(src) @@ -51,7 +51,7 @@ return //we use a different hud /mob/living/silicon/Destroy() - silicon_mob_list -= src + GLOB.silicon_mob_list -= src for(var/datum/alarm_handler/AH in alarm_handlers) AH.unregister(src) return ..() @@ -163,7 +163,7 @@ /mob/living/silicon/add_language(var/language, var/can_speak=1) if(..(language) && can_speak) - speech_synthesizer_langs.Add(all_languages[language]) + speech_synthesizer_langs.Add(GLOB.all_languages[language]) return 1 /mob/living/silicon/remove_language(var/rem_language) diff --git a/code/modules/mob/living/simple_animal/bot/bot.dm b/code/modules/mob/living/simple_animal/bot/bot.dm index 72184f36e2f..8414f928544 100644 --- a/code/modules/mob/living/simple_animal/bot/bot.dm +++ b/code/modules/mob/living/simple_animal/bot/bot.dm @@ -137,7 +137,7 @@ /mob/living/simple_animal/bot/New() ..() - bots_list += src + GLOB.bots_list += src icon_living = icon_state icon_dead = icon_state access_card = new /obj/item/card/id(src) @@ -151,7 +151,7 @@ add_language("Tradeband", 1) add_language("Gutter", 1) add_language("Trinary", 1) - default_language = all_languages["Galactic Common"] + default_language = GLOB.all_languages["Galactic Common"] bot_core = new bot_core_type(src) spawn(30) @@ -190,7 +190,7 @@ if(path_hud) QDEL_NULL(path_hud) path_hud = null - bots_list -= src + GLOB.bots_list -= src QDEL_NULL(Radio) QDEL_NULL(access_card) if(reset_access_timer_id) @@ -659,7 +659,7 @@ Pass a positive integer as an argument to override a bot's default speed. /mob/living/simple_animal/bot/proc/get_next_patrol_target() // search the beacon list for the next target in the list. - for(var/obj/machinery/navbeacon/NB in navbeacons["[z]"]) + for(var/obj/machinery/navbeacon/NB in GLOB.navbeacons["[z]"]) if(NB.location == next_destination) //Does the Beacon location text match the destination? destination = new_destination //We now know the name of where we want to go. patrol_target = NB.loc //Get its location and set it as the target. @@ -667,7 +667,7 @@ Pass a positive integer as an argument to override a bot's default speed. return 1 /mob/living/simple_animal/bot/proc/find_nearest_beacon() - for(var/obj/machinery/navbeacon/NB in navbeacons["[z]"]) + for(var/obj/machinery/navbeacon/NB in GLOB.navbeacons["[z]"]) var/dist = get_dist(src, NB) if(nearest_beacon) //Loop though the beacon net to find the true closest beacon. //Ignore the beacon if were are located on it. diff --git a/code/modules/mob/living/simple_animal/bot/medbot.dm b/code/modules/mob/living/simple_animal/bot/medbot.dm index dc4805462fa..52de4660908 100644 --- a/code/modules/mob/living/simple_animal/bot/medbot.dm +++ b/code/modules/mob/living/simple_animal/bot/medbot.dm @@ -543,7 +543,7 @@ return /mob/living/simple_animal/bot/medbot/proc/check_overdose(mob/living/carbon/patient,reagent_id,injection_amount) - var/datum/reagent/R = chemical_reagents_list[reagent_id] + var/datum/reagent/R = GLOB.chemical_reagents_list[reagent_id] if(!R.overdose_threshold) return 0 var/current_volume = patient.reagents.get_reagent_amount(reagent_id) diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index 619d0316349..a65e0198539 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -214,7 +214,7 @@ if(mode == BOT_IDLE || mode == BOT_DELIVER) start_home() if("destination") - var/new_dest = input(usr, "Enter Destination:", name, destination) as null|anything in deliverybeacontags + var/new_dest = input(usr, "Enter Destination:", name, destination) as null|anything in GLOB.deliverybeacontags if(new_dest) set_destination(new_dest) if("setid") @@ -222,7 +222,7 @@ if(new_id) set_suffix(new_id) if("sethome") - var/new_home = input(usr, "Enter Home:", name, home_destination) as null|anything in deliverybeacontags + var/new_home = input(usr, "Enter Home:", name, home_destination) as null|anything in GLOB.deliverybeacontags if(new_home) home_destination = new_home if("unload") @@ -401,9 +401,16 @@ M.layer = layer + 0.1 else //post unbuckling - load = null - M.layer = initial(M.layer) - M.pixel_y = initial(M.pixel_y) + reset_buckled_mob(M) + +/mob/living/simple_animal/bot/mulebot/post_unbuckle_mob(mob/living/M) + . = ..() + reset_buckled_mob(M) + +/mob/living/simple_animal/bot/mulebot/proc/reset_buckled_mob(mob/living/M) + load = null + M.layer = initial(M.layer) + M.pixel_y = initial(M.pixel_y) // called to unload the bot // argument is optional direction to unload @@ -809,7 +816,7 @@ if(!on || !wires.BeaconRX()) return - for(var/obj/machinery/navbeacon/NB in deliverybeacons) + for(var/obj/machinery/navbeacon/NB in GLOB.deliverybeacons) if(NB.location == new_destination) // if the beacon location matches the set destination destination = new_destination // the we will navigate there target = NB.loc diff --git a/code/modules/mob/living/simple_animal/corpse.dm b/code/modules/mob/living/simple_animal/corpse.dm index 3f79f27cce2..a55b3cdae16 100644 --- a/code/modules/mob/living/simple_animal/corpse.dm +++ b/code/modules/mob/living/simple_animal/corpse.dm @@ -104,7 +104,7 @@ outfit = /datum/outfit/wizardcorpse /obj/effect/mob_spawn/human/corpse/clownoff/Initialize() - mob_name = "[pick(wizard_first)], [pick(wizard_second)]" + mob_name = "[pick(GLOB.wizard_first)], [pick(GLOB.wizard_second)]" ..() /datum/outfit/wizardcorpse diff --git a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm index 37ed25f15e8..424d852d56b 100644 --- a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm +++ b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm @@ -57,12 +57,12 @@ if(!B.brainmob.key) var/ghost_can_reenter = 0 if(B.brainmob.mind) - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) if(G.can_reenter_corpse && G.mind == B.brainmob.mind) ghost_can_reenter = 1 break - for(var/mob/living/simple_animal/S in player_list) - if(S in respawnable_list) + for(var/mob/living/simple_animal/S in GLOB.player_list) + if(S in GLOB.respawnable_list) ghost_can_reenter = 1 break if(!ghost_can_reenter) diff --git a/code/modules/mob/living/simple_animal/hostile/bees.dm b/code/modules/mob/living/simple_animal/hostile/bees.dm index 0b10513b7cd..9702d47d9af 100644 --- a/code/modules/mob/living/simple_animal/hostile/bees.dm +++ b/code/modules/mob/living/simple_animal/hostile/bees.dm @@ -263,7 +263,7 @@ else to_chat(user, "You don't have enough royal bee jelly to split a bee in two!") else - var/datum/reagent/R = chemical_reagents_list[S.reagents.get_master_reagent_id()] + var/datum/reagent/R = GLOB.chemical_reagents_list[S.reagents.get_master_reagent_id()] if(R && S.reagents.has_reagent(R.id, 5)) S.reagents.remove_reagent(R.id,5) queen.assign_reagent(R) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm index 3c72042efce..66d66e706a7 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm @@ -107,7 +107,7 @@ Difficulty: Hard /mob/living/simple_animal/hostile/megafauna/bubblegum/New() ..() - for(var/mob/living/simple_animal/hostile/megafauna/bubblegum/B in mob_list) + for(var/mob/living/simple_animal/hostile/megafauna/bubblegum/B in GLOB.mob_list) if(B != src) qdel(src) //There can be only one break diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm index 01217f0f3b9..e5bb62ecd9b 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm @@ -47,7 +47,7 @@ Difficulty: Very Hard medal_type = MEDAL_PREFIX score_type = COLOSSUS_SCORE loot = list(/obj/machinery/anomalous_crystal/random, /obj/item/organ/internal/vocal_cords/colossus) - butcher_results = list(/obj/item/ore/diamond = 5, /obj/item/stack/sheet/sinew = 5, /obj/item/stack/sheet/animalhide/ashdrake = 10, /obj/item/stack/sheet/bone = 30) + butcher_results = list(/obj/item/stack/ore/diamond = 5, /obj/item/stack/sheet/sinew = 5, /obj/item/stack/sheet/animalhide/ashdrake = 10, /obj/item/stack/sheet/bone = 30) deathmessage = "disintegrates, leaving a glowing core in its wake." death_sound = 'sound/misc/demon_dies.ogg' diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm index 6027070dfc9..82e4af1862f 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm @@ -45,7 +45,7 @@ Difficulty: Medium ranged = 1 pixel_x = -16 loot = list(/obj/structure/closet/crate/necropolis/dragon) - butcher_results = list(/obj/item/ore/diamond = 5, /obj/item/stack/sheet/sinew = 5, /obj/item/stack/sheet/animalhide/ashdrake = 10, /obj/item/stack/sheet/bone = 30) + butcher_results = list(/obj/item/stack/ore/diamond = 5, /obj/item/stack/sheet/sinew = 5, /obj/item/stack/sheet/animalhide/ashdrake = 10, /obj/item/stack/sheet/bone = 30) var/swooping = 0 var/swoop_cooldown = 0 medal_type = MEDAL_PREFIX diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm index ae37f388b8a..e3c9dbbf61b 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm @@ -124,7 +124,7 @@ Difficulty: Medium else // this must come before the parent call due to the setting of `loot` here var/last_legion = TRUE - for(var/mob/living/simple_animal/hostile/megafauna/legion/other in mob_list) + for(var/mob/living/simple_animal/hostile/megafauna/legion/other in GLOB.mob_list) if(other != src) last_legion = FALSE break diff --git a/code/modules/mob/living/simple_animal/hostile/mining/goldgrub.dm b/code/modules/mob/living/simple_animal/hostile/mining/goldgrub.dm index 0c54b414e72..cd73868a9e7 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining/goldgrub.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining/goldgrub.dm @@ -24,8 +24,8 @@ throw_message = "sinks in slowly, before being pushed out of " status_flags = CANPUSH search_objects = 1 - wanted_objects = list(/obj/item/ore/diamond, /obj/item/ore/gold, /obj/item/ore/silver, - /obj/item/ore/uranium) + wanted_objects = list(/obj/item/stack/ore/diamond, /obj/item/stack/ore/gold, /obj/item/stack/ore/silver, + /obj/item/stack/ore/uranium) var/chase_time = 100 var/will_burrow = TRUE @@ -34,17 +34,17 @@ ..() var/i = rand(1,3) while(i) - loot += pick(/obj/item/ore/silver, /obj/item/ore/gold, /obj/item/ore/uranium, /obj/item/ore/diamond) + loot += pick(/obj/item/stack/ore/silver, /obj/item/stack/ore/gold, /obj/item/stack/ore/uranium, /obj/item/stack/ore/diamond) i-- /mob/living/simple_animal/hostile/asteroid/goldgrub/GiveTarget(new_target) target = new_target if(target != null) - if(istype(target, /obj/item/ore) && loot.len < 10) - visible_message("The [src.name] looks at [target.name] with hungry eyes.") + if(istype(target, /obj/item/stack/ore) && loot.len < 10) + visible_message("The [name] looks at [target.name] with hungry eyes.") else if(isliving(target)) Aggro() - visible_message("The [src.name] tries to flee from [target.name]!") + visible_message("The [name] tries to flee from [target.name]!") retreat_distance = 10 minimum_distance = 10 if(will_burrow) @@ -52,18 +52,21 @@ Burrow() /mob/living/simple_animal/hostile/asteroid/goldgrub/AttackingTarget() - if(istype(target, /obj/item/ore)) + if(istype(target, /obj/item/stack/ore)) EatOre(target) return ..() /mob/living/simple_animal/hostile/asteroid/goldgrub/proc/EatOre(var/atom/targeted_ore) - for(var/obj/item/ore/O in targeted_ore.loc) + for(var/obj/item/stack/ore/O in get_turf(targeted_ore)) if(loot.len < 10) - loot += O.type - qdel(O) + var/using = min(10 - loot.len, O.amount) + for(var/i in 1 to using) + loot += O.type + O.use(using) visible_message("The ore was swallowed whole!") + /mob/living/simple_animal/hostile/asteroid/goldgrub/proc/Burrow()//Begin the chase to kill the goldgrub in time if(!stat) visible_message("The [src.name] buries into the ground, vanishing from sight!") @@ -75,4 +78,4 @@ /mob/living/simple_animal/hostile/asteroid/goldgrub/adjustHealth(damage) idle_vision_range = 9 - . = ..() \ No newline at end of file + . = ..() diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm index 2edfb7cea5d..39799d6e493 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm @@ -77,8 +77,8 @@ aggro_vision_range = 9 idle_vision_range = 2 turns_per_move = 5 - loot = list(/obj/item/ore/diamond{layer = 4.1}, - /obj/item/ore/diamond{layer = 4.1}) + loot = list(/obj/item/stack/ore/diamond{layer = 4.1}, + /obj/item/stack/ore/diamond{layer = 4.1}) /obj/item/projectile/temp/basilisk name = "freezing blast" diff --git a/code/modules/mob/living/simple_animal/hostile/statue.dm b/code/modules/mob/living/simple_animal/hostile/statue.dm index b3bc11e6c1f..88326747247 100644 --- a/code/modules/mob/living/simple_animal/hostile/statue.dm +++ b/code/modules/mob/living/simple_animal/hostile/statue.dm @@ -179,7 +179,7 @@ range = 10 /obj/effect/proc_holder/spell/aoe_turf/blindness/cast(list/targets, mob/user = usr) - for(var/mob/living/L in living_mob_list) + for(var/mob/living/L in GLOB.living_mob_list) if(L == user) continue var/turf/T = get_turf(L.loc) diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate.dm b/code/modules/mob/living/simple_animal/hostile/syndicate.dm index 1b77d09a32f..2cd1c2bb8df 100644 --- a/code/modules/mob/living/simple_animal/hostile/syndicate.dm +++ b/code/modules/mob/living/simple_animal/hostile/syndicate.dm @@ -98,7 +98,7 @@ /mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/New() ..() - name = "[name] [pick(last_names)]" + name = "[name] [pick(GLOB.last_names)]" depotarea = areaMaster spawn_turf = get_turf(src) @@ -219,7 +219,7 @@ /mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/armory/LateInitialize() if(istype(depotarea)) var/list/key_candidates = list() - for(var/mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/officer/O in living_mob_list) + for(var/mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/officer/O in GLOB.living_mob_list) key_candidates += O if(key_candidates.len) var/mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/officer/O = pick(key_candidates) diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/ghost.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/ghost.dm index b52abff90c9..dd170c1c177 100644 --- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/ghost.dm +++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/ghost.dm @@ -40,5 +40,5 @@ to_chat(user, "Someone else already took this spider.") return key = user.key - for(var/mob/dead/observer/G in player_list) + for(var/mob/dead/observer/G in GLOB.player_list) G.show_message("A ghost has taken control of [src]. ([ghost_follow_link(src, ghost=G)]).") \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/queen.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/queen.dm index 54531e62d09..7ce29acb172 100644 --- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/queen.dm +++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/queen.dm @@ -224,7 +224,7 @@ /mob/living/simple_animal/hostile/poison/terror_spider/queen/proc/MassFlicker() var/list/target_lights = list() - for(var/mob/living/carbon/human/H in player_list) + for(var/mob/living/carbon/human/H in GLOB.player_list) if(H.z != z) continue if(H.stat == DEAD) diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_ai.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_ai.dm index 8c48b9b409b..b67ff001fb7 100644 --- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_ai.dm +++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_ai.dm @@ -316,6 +316,6 @@ // -------------------------------------------------------------------------------- /mob/living/simple_animal/hostile/poison/terror_spider/proc/UnlockBlastDoors(target_id_tag) - for(var/obj/machinery/door/poddoor/P in airlocks) + for(var/obj/machinery/door/poddoor/P in GLOB.airlocks) if(P.density && P.id_tag == target_id_tag && P.z == z && !P.operating) P.open() diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm index 46b903774f3..42b7e2d48d8 100644 --- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm +++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm @@ -241,7 +241,7 @@ var/global/list/ts_spiderling_list = list() add_language("Spider Hivemind") if(spider_tier >= TS_TIER_2) add_language("Galactic Common") - default_language = all_languages["Spider Hivemind"] + default_language = GLOB.all_languages["Spider Hivemind"] web_action = new() web_action.Grant(src) diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index 2120925a164..a60ae1d323e 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -91,7 +91,7 @@ /mob/living/simple_animal/parrot/New() ..() - hear_radio_list += src + GLOB.hear_radio_list += src if(!ears) var/headset = pick(/obj/item/radio/headset/headset_sec, \ /obj/item/radio/headset/headset_eng, \ @@ -109,7 +109,7 @@ /mob/living/simple_animal/parrot/proc/perch_player) /mob/living/simple_animal/parrot/Destroy() - hear_radio_list -= src + GLOB.hear_radio_list -= src return ..() /mob/living/simple_animal/parrot/death(gibbed) diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 0015327bca7..046d55c4566 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -82,7 +82,7 @@ /mob/living/simple_animal/Initialize() ..() - simple_animal_list += src + GLOB.simple_animal_list += src verbs -= /mob/verb/observe if(!can_hide) verbs -= /mob/living/simple_animal/verb/hide @@ -96,7 +96,7 @@ collar.forceMove(loc) collar = null master_commander = null - simple_animal_list -= src + GLOB.simple_animal_list -= src return ..() /mob/living/simple_animal/Login() diff --git a/code/modules/mob/living/stat_states.dm b/code/modules/mob/living/stat_states.dm index c9c51e2c5ab..f4483a10c8e 100644 --- a/code/modules/mob/living/stat_states.dm +++ b/code/modules/mob/living/stat_states.dm @@ -47,10 +47,10 @@ create_attack_log("Came back to life at [atom_loc_line(get_turf(src))]") log_game("[key_name(src)] came back to life at [atom_loc_line(get_turf(src))]") stat = CONSCIOUS - dead_mob_list -= src - living_mob_list += src + GLOB.dead_mob_list -= src + GLOB.living_mob_list += src if(mind) - respawnable_list -= src + GLOB.respawnable_list -= src timeofdeath = null if(updating) update_canmove() diff --git a/code/modules/mob/login.dm b/code/modules/mob/login.dm index a5883fe93f2..1da97adf801 100644 --- a/code/modules/mob/login.dm +++ b/code/modules/mob/login.dm @@ -6,7 +6,7 @@ log_access_in(client) create_attack_log("Logged in at [atom_loc_line(get_turf(src))]") if(config.log_access) - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M == src) continue if( M.key && (M.key != key) ) var/matches @@ -26,7 +26,7 @@ log_adminwarn("Notice: [key_name(src)] has the same [matches] as [key_name(M)] (no longer logged in).") /mob/Login() - player_list |= src + GLOB.player_list |= src update_Login_details() world.update_status() @@ -47,7 +47,7 @@ reset_perspective(loc) - if(ckey in deadmins) + if(ckey in GLOB.deadmins) verbs += /client/proc/readmin //Clear ability list and update from mob. diff --git a/code/modules/mob/logout.dm b/code/modules/mob/logout.dm index cbcd51c44a7..762607bd501 100644 --- a/code/modules/mob/logout.dm +++ b/code/modules/mob/logout.dm @@ -1,7 +1,7 @@ /mob/Logout() SSnanoui.user_logout(src) // this is used to clean up (remove) this user's Nano UIs unset_machine() - player_list -= src + GLOB.player_list -= src log_access_out(src) create_attack_log("Logged out at [atom_loc_line(get_turf(src))]") // `holder` is nil'd out by now, so we check the `admin_datums` array directly diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 4560e935547..1c4507c5291 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -1,7 +1,7 @@ /mob/Destroy()//This makes sure that mobs with clients/keys are not just deleted from the game. - mob_list -= src - dead_mob_list -= src - living_mob_list -= src + GLOB.mob_list -= src + GLOB.dead_mob_list -= src + GLOB.living_mob_list -= src QDEL_NULL(hud_used) if(mind && mind.current == src) spellremove(src) @@ -25,11 +25,11 @@ return QDEL_HINT_HARDDEL /mob/Initialize() - mob_list += src + GLOB.mob_list += src if(stat == DEAD) - dead_mob_list += src + GLOB.dead_mob_list += src else - living_mob_list += src + GLOB.living_mob_list += src prepare_huds() ..() @@ -164,7 +164,7 @@ M.show_message( message, 2, deaf_message, 1) /mob/proc/findname(msg) - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(M.real_name == text("[]", msg)) return M return 0 @@ -810,7 +810,7 @@ var/list/slot_equipment_priority = list( \ creatures[name] = O - for(var/mob/M in sortAtom(mob_list)) + for(var/mob/M in sortAtom(GLOB.mob_list)) var/name = M.name if(names.Find(name)) namecounts[name]++ @@ -1095,26 +1095,26 @@ var/list/slot_equipment_priority = list( \ to_chat(src, "You can't respawn as an NPC before the game starts!") return - if((usr in respawnable_list) && (stat==2 || istype(usr,/mob/dead/observer))) + if((usr in GLOB.respawnable_list) && (stat==2 || istype(usr,/mob/dead/observer))) var/list/creatures = list("Mouse") - for(var/mob/living/L in living_mob_list) + for(var/mob/living/L in GLOB.living_mob_list) if(safe_respawn(L.type) && L.stat!=2) if(!L.key) creatures += L var/picked = input("Please select an NPC to respawn as", "Respawn as NPC") as null|anything in creatures switch(picked) if("Mouse") - respawnable_list -= usr + GLOB.respawnable_list -= usr become_mouse() spawn(5) - respawnable_list += usr + GLOB.respawnable_list += usr else var/mob/living/NPC = picked if(istype(NPC) && !NPC.key) - respawnable_list -= usr + GLOB.respawnable_list -= usr NPC.key = key spawn(5) - respawnable_list += usr + GLOB.respawnable_list += usr else to_chat(usr, "You are not dead or you have given up your right to be respawned!") return diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index c0862b31404..659a50880a0 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -308,7 +308,7 @@ proc/muffledspeech(phrase) /proc/findname(msg) - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) if(M.real_name == text("[msg]")) return 1 return 0 @@ -435,7 +435,7 @@ var/list/intents = list(INTENT_HELP,INTENT_DISARM,INTENT_GRAB,INTENT_HARM) else name = realname - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.client && ((!istype(M, /mob/new_player) && M.stat == DEAD) || check_rights(R_ADMIN|R_MOD,0,M)) && M.get_preference(CHAT_DEAD)) var/follow var/lname @@ -460,7 +460,7 @@ var/list/intents = list(INTENT_HELP,INTENT_DISARM,INTENT_GRAB,INTENT_HARM) to_chat(M, "[lname][follow][message]") /proc/notify_ghosts(message, ghost_sound = null, enter_link = null, title = null, atom/source = null, image/alert_overlay = null, flashwindow = TRUE, var/action = NOTIFY_JUMP) //Easy notification of ghosts. - for(var/mob/dead/observer/O in player_list) + for(var/mob/dead/observer/O in GLOB.player_list) if(O.client) to_chat(O, "[message][(enter_link) ? " [enter_link]" : ""]") if(ghost_sound) @@ -561,7 +561,7 @@ var/list/intents = list(INTENT_HELP,INTENT_DISARM,INTENT_GRAB,INTENT_HARM) return //took too long newname = reject_bad_name(newname,allow_numbers) //returns null if the name doesn't meet some basic requirements. Tidies up a few other things like bad-characters. - for(var/mob/living/M in player_list) + for(var/mob/living/M in GLOB.player_list) if(M == src) continue if(!newname || M.real_name == newname) diff --git a/code/modules/mob/new_player/login.dm b/code/modules/mob/new_player/login.dm index 99047b0382c..1c7b06b1ce1 100644 --- a/code/modules/mob/new_player/login.dm +++ b/code/modules/mob/new_player/login.dm @@ -15,11 +15,11 @@ lastarea = loc sight |= SEE_TURFS - player_list |= src + GLOB.player_list |= src /* var/list/watch_locations = list() - for(var/obj/effect/landmark/landmark in landmarks_list) + for(var/obj/effect/landmark/landmark in GLOB.landmarks_list) if(landmark.tag == "landmark*new_player") watch_locations += landmark.loc @@ -47,7 +47,7 @@ if(newpoll) client.handle_player_polling() - if(ckey in deadmins) + if(ckey in GLOB.deadmins) verbs += /client/proc/readmin spawn(40) if(client) @@ -57,7 +57,7 @@ if(src.client.holder) return //admins are immune to overflow rerouting if(config.overflow_whitelist.Find(lowertext(src.ckey))) return //Whitelisted people are immune to overflow rerouting. var/tally = 0 - for(var/client/C in clients) + for(var/client/C in GLOB.clients) tally++ if(tally > config.player_overflow_cap) src << link(config.overflow_server_url) diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index ecd4bf46c32..a1be1db4c63 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -16,7 +16,7 @@ anchored = 1 // don't get pushed around /mob/new_player/New() - mob_list += src + GLOB.mob_list += src /mob/new_player/verb/new_player_panel() set src = usr @@ -129,7 +129,7 @@ stat("Players Ready:", "[totalPlayersReady]") totalPlayers = 0 totalPlayersReady = 0 - for(var/mob/new_player/player in player_list) + for(var/mob/new_player/player in GLOB.player_list) if(check_rights(R_ADMIN, 0, src)) stat("[player.key]", (player.ready)?("(Playing)"):(null)) totalPlayers++ @@ -209,7 +209,7 @@ if(!client.holder && !config.antag_hud_allowed) // For new ghosts we remove the verb from even showing up if it's not allowed. observer.verbs -= /mob/dead/observer/verb/toggle_antagHUD // Poor guys, don't know what they are missing! observer.key = key - respawnable_list += observer + GLOB.respawnable_list += observer qdel(src) return 1 if(href_list["tos"]) @@ -224,7 +224,7 @@ to_chat(usr, "The round is either not ready, or has already finished...") return - if(client.prefs.species in whitelisted_species) + if(client.prefs.species in GLOB.whitelisted_species) if(!is_alien_whitelisted(src, client.prefs.species) && config.usealienwhitelist) to_chat(src, alert("You are currently not whitelisted to play [client.prefs.species].")) @@ -244,7 +244,7 @@ if(client.prefs.randomslot) client.prefs.load_random_character_slot(client) - if(client.prefs.species in whitelisted_species) + if(client.prefs.species in GLOB.whitelisted_species) if(!is_alien_whitelisted(src, client.prefs.species) && config.usealienwhitelist) to_chat(src, alert("You are currently not whitelisted to play [client.prefs.species].")) return 0 @@ -385,7 +385,7 @@ /mob/new_player/proc/AnnounceArrival(var/mob/living/carbon/human/character, var/rank, var/join_message) if(ticker.current_state == GAME_STATE_PLAYING) var/ailist[] = list() - for(var/mob/living/silicon/ai/A in living_mob_list) + for(var/mob/living/silicon/ai/A in GLOB.living_mob_list) ailist += A if(ailist.len) var/mob/living/silicon/ai/announcer = pick(ailist) @@ -410,7 +410,7 @@ /mob/new_player/proc/AnnounceCyborg(var/mob/living/character, var/rank, var/join_message) if(ticker.current_state == GAME_STATE_PLAYING) var/ailist[] = list() - for(var/mob/living/silicon/ai/A in living_mob_list) + for(var/mob/living/silicon/ai/A in GLOB.living_mob_list) ailist += A if(ailist.len) var/mob/living/silicon/ai/announcer = pick(ailist) @@ -469,7 +469,7 @@ activePlayers[job] = 0 var/categorized = 0 // Only players with the job assigned and AFK for less than 10 minutes count as active - for(var/mob/M in player_list) if(M.mind && M.client && M.mind.assigned_role == job.title && M.client.inactivity <= 10 MINUTES) + for(var/mob/M in GLOB.player_list) if(M.mind && M.client && M.mind.assigned_role == job.title && M.client.inactivity <= 10 MINUTES) activePlayers[job]++ for(var/jobcat in categorizedJobs) var/list/jobs = categorizedJobs[jobcat]["jobs"] @@ -533,10 +533,10 @@ if(mind) mind.active = 0 //we wish to transfer the key manually if(mind.assigned_role == "Clown") //give them a clownname if they are a clown - new_character.real_name = pick(clown_names) //I hate this being here of all places but unfortunately dna is based on real_name! + new_character.real_name = pick(GLOB.clown_names) //I hate this being here of all places but unfortunately dna is based on real_name! new_character.rename_self("clown") else if(mind.assigned_role == "Mime") - new_character.real_name = pick(mime_names) + new_character.real_name = pick(GLOB.mime_names) new_character.rename_self("mime") mind.original = new_character mind.transfer_to(new_character) //won't transfer key since the mind is not active @@ -558,7 +558,7 @@ var/datum/language/chosen_language if(client.prefs.language) - chosen_language = all_languages[client.prefs.language] + chosen_language = GLOB.all_languages[client.prefs.language] if((chosen_language == null && client.prefs.language != "None") || (chosen_language && chosen_language.flags & RESTRICTED)) log_runtime(EXCEPTION("[src] had language [client.prefs.language], though they weren't supposed to. Setting to None."), src) client.prefs.language = "None" diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index fc97658896f..84ac1ed9eb0 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -244,7 +244,7 @@ preview_icon.Blend(new /icon(icobase, "groin_[g]"), ICON_OVERLAY) var/head = "head" if(alt_head && current_species.bodyflags & HAS_ALT_HEADS) - var/datum/sprite_accessory/alt_heads/H = alt_heads_list[alt_head] + var/datum/sprite_accessory/alt_heads/H = GLOB.alt_heads_list[alt_head] if(H.icon_state) head = H.icon_state preview_icon.Blend(new /icon(icobase, "[head]_[g]"), ICON_OVERLAY) @@ -308,7 +308,7 @@ if(current_species && (current_species.bodyflags & HAS_TAIL_MARKINGS)) var/tail_marking = m_styles["tail"] - var/datum/sprite_accessory/tail_marking_style = marking_styles_list[tail_marking] + var/datum/sprite_accessory/tail_marking_style = GLOB.marking_styles_list[tail_marking] if(tail_marking_style && tail_marking_style.species_allowed) var/icon/t_marking_s = new/icon("icon" = tail_marking_style.icon, "icon_state" = "[tail_marking_style.icon_state]_s") t_marking_s.Blend(m_colours["tail"], ICON_ADD) @@ -320,14 +320,14 @@ if(current_species && ((current_species.bodyflags & HAS_HEAD_MARKINGS) || (current_species.bodyflags & HAS_BODY_MARKINGS))) if(current_species.bodyflags & HAS_BODY_MARKINGS) //Body markings. var/body_marking = m_styles["body"] - var/datum/sprite_accessory/body_marking_style = marking_styles_list[body_marking] + var/datum/sprite_accessory/body_marking_style = GLOB.marking_styles_list[body_marking] if(body_marking_style && body_marking_style.species_allowed) var/icon/b_marking_s = new/icon("icon" = body_marking_style.icon, "icon_state" = "[body_marking_style.icon_state]_s") b_marking_s.Blend(m_colours["body"], ICON_ADD) preview_icon.Blend(b_marking_s, ICON_OVERLAY) if(current_species.bodyflags & HAS_HEAD_MARKINGS) //Head markings. var/head_marking = m_styles["head"] - var/datum/sprite_accessory/head_marking_style = marking_styles_list[head_marking] + var/datum/sprite_accessory/head_marking_style = GLOB.marking_styles_list[head_marking] if(head_marking_style && head_marking_style.species_allowed) var/icon/h_marking_s = new/icon("icon" = head_marking_style.icon, "icon_state" = "[head_marking_style.icon_state]_s") h_marking_s.Blend(m_colours["head"], ICON_ADD) @@ -341,7 +341,7 @@ face_s.Blend(eyes_s, ICON_OVERLAY) - var/datum/sprite_accessory/hair_style = hair_styles_full_list[h_style] + var/datum/sprite_accessory/hair_style = GLOB.hair_styles_full_list[h_style] if(hair_style) var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s") if(current_species.name == "Slime People") // whee I am part of the problem @@ -359,13 +359,13 @@ //Head Accessory if(current_species && (current_species.bodyflags & HAS_HEAD_ACCESSORY)) - var/datum/sprite_accessory/head_accessory_style = head_accessory_styles_list[ha_style] + var/datum/sprite_accessory/head_accessory_style = GLOB.head_accessory_styles_list[ha_style] if(head_accessory_style && head_accessory_style.species_allowed) var/icon/head_accessory_s = new/icon("icon" = head_accessory_style.icon, "icon_state" = "[head_accessory_style.icon_state]_s") head_accessory_s.Blend(hacc_colour, ICON_ADD) face_s.Blend(head_accessory_s, ICON_OVERLAY) - var/datum/sprite_accessory/facial_hair_style = facial_hair_styles_list[f_style] + var/datum/sprite_accessory/facial_hair_style = GLOB.facial_hair_styles_list[f_style] if(facial_hair_style && facial_hair_style.species_allowed) var/icon/facial_s = new/icon("icon" = facial_hair_style.icon, "icon_state" = "[facial_hair_style.icon_state]_s") if(current_species.name == "Slime People") // whee I am part of the problem @@ -383,19 +383,19 @@ var/icon/underwear_s = null if(underwear && (current_species.clothing_flags & HAS_UNDERWEAR)) - var/datum/sprite_accessory/underwear/U = underwear_list[underwear] + var/datum/sprite_accessory/underwear/U = GLOB.underwear_list[underwear] if(U) underwear_s = new/icon(U.icon, "uw_[U.icon_state]_s", ICON_OVERLAY) var/icon/undershirt_s = null if(undershirt && (current_species.clothing_flags & HAS_UNDERSHIRT)) - var/datum/sprite_accessory/undershirt/U2 = undershirt_list[undershirt] + var/datum/sprite_accessory/undershirt/U2 = GLOB.undershirt_list[undershirt] if(U2) undershirt_s = new/icon(U2.icon, "us_[U2.icon_state]_s", ICON_OVERLAY) var/icon/socks_s = null if(socks && (current_species.clothing_flags & HAS_SOCKS)) - var/datum/sprite_accessory/socks/U3 = socks_list[socks] + var/datum/sprite_accessory/socks/U3 = GLOB.socks_list[socks] if(U3) socks_s = new/icon(U3.icon, "sk_[U3.icon_state]_s", ICON_OVERLAY) diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index d010bdfa135..a1236e9c719 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -137,11 +137,11 @@ /mob/proc/parse_language(var/message) var/prefix = copytext(message, 1, 2) if(length(message) >= 1 && prefix == "!") - return all_languages["Noise"] + return GLOB.all_languages["Noise"] if(length(message) >= 2) var/language_prefix = trim_right(lowertext(copytext(message, 1 ,4))) - var/datum/language/L = language_keys[language_prefix] + var/datum/language/L = GLOB.language_keys[language_prefix] if(can_speak_language(L)) return L diff --git a/code/modules/modular_computers/NTNet/NTNet.dm b/code/modules/modular_computers/NTNet/NTNet.dm index 79e1a9ed2d1..000131d6c03 100644 --- a/code/modules/modular_computers/NTNet/NTNet.dm +++ b/code/modules/modular_computers/NTNet/NTNet.dm @@ -28,7 +28,7 @@ var/global/datum/ntnet/ntnet_global = new() /datum/ntnet/New() if(ntnet_global && (ntnet_global != src)) ntnet_global = src // There can be only one. - for(var/obj/machinery/ntnet_relay/R in machines) + for(var/obj/machinery/ntnet_relay/R in GLOB.machines) relays.Add(R) R.NTNet = src build_software_lists() diff --git a/code/modules/modular_computers/file_system/programs/command/card.dm b/code/modules/modular_computers/file_system/programs/command/card.dm index b570687569a..2afebbae666 100644 --- a/code/modules/modular_computers/file_system/programs/command/card.dm +++ b/code/modules/modular_computers/file_system/programs/command/card.dm @@ -103,7 +103,7 @@ /datum/computer_file/program/card_mod/proc/can_open_job(datum/job/job) if(job) if(!job_blacklisted(job)) - if((job.total_positions <= player_list.len * (max_relative_positions / 100))) + if((job.total_positions <= GLOB.player_list.len * (max_relative_positions / 100))) var/delta = (world.time / 10) - time_last_changed_position if((change_position_cooldown < delta) || (opened_positions[job.title] < 0)) return 1 diff --git a/code/modules/modular_computers/file_system/programs/command/comms.dm b/code/modules/modular_computers/file_system/programs/command/comms.dm index dcea2b42dce..7cfc6ad29a4 100644 --- a/code/modules/modular_computers/file_system/programs/command/comms.dm +++ b/code/modules/modular_computers/file_system/programs/command/comms.dm @@ -28,12 +28,12 @@ var/datum/announcement/priority/crew_announcement = new /datum/computer_file/program/comm/New() - shuttle_caller_list += src + GLOB.shuttle_caller_list += src ..() crew_announcement.newscast = 0 /datum/computer_file/program/comm/Destroy() - shuttle_caller_list -= src + GLOB.shuttle_caller_list -= src SSshuttle.autoEvac() return ..() diff --git a/code/modules/modular_computers/file_system/programs/research/airestorer.dm b/code/modules/modular_computers/file_system/programs/research/airestorer.dm index 9bec60c9779..a39adb8a48e 100644 --- a/code/modules/modular_computers/file_system/programs/research/airestorer.dm +++ b/code/modules/modular_computers/file_system/programs/research/airestorer.dm @@ -77,8 +77,8 @@ if(A.health >= 0 && A.stat == DEAD) A.stat = CONSCIOUS A.lying = 0 - dead_mob_list -= A - living_mob_list += A + GLOB.dead_mob_list -= A + GLOB.living_mob_list += A // Finished restoring if(A.health >= 100) ai_slot.locked = FALSE diff --git a/code/modules/nano/modules/atmos_control.dm b/code/modules/nano/modules/atmos_control.dm index 58c4acc6704..9936895e473 100644 --- a/code/modules/nano/modules/atmos_control.dm +++ b/code/modules/nano/modules/atmos_control.dm @@ -11,7 +11,7 @@ access.req_one_access = req_one_access if(monitored_alarm_ids) - for(var/obj/machinery/alarm/alarm in machines) + for(var/obj/machinery/alarm/alarm in GLOB.machines) if(alarm.alarm_id && alarm.alarm_id in monitored_alarm_ids) monitored_alarms += alarm // machines may not yet be ordered at this point @@ -23,7 +23,7 @@ if(href_list["alarm"]) if(ui_ref) - var/obj/machinery/alarm/alarm = locate(href_list["alarm"]) in (monitored_alarms ? monitored_alarms : machines) + var/obj/machinery/alarm/alarm = locate(href_list["alarm"]) in (monitored_alarms ? monitored_alarms : GLOB.machines) if(alarm) var/datum/topic_state/air_alarm/TS = generate_state(alarm) alarm.ui_interact(usr, master_ui = ui_ref, state = TS) diff --git a/code/modules/nano/modules/crew_monitor.dm b/code/modules/nano/modules/crew_monitor.dm index 19e6dfef3f7..755009ac0be 100644 --- a/code/modules/nano/modules/crew_monitor.dm +++ b/code/modules/nano/modules/crew_monitor.dm @@ -11,7 +11,7 @@ if(href_list["track"]) if(isAI(usr)) var/mob/living/silicon/ai/AI = usr - var/mob/living/carbon/human/H = locate(href_list["track"]) in mob_list + var/mob/living/carbon/human/H = locate(href_list["track"]) in GLOB.mob_list if(hassensorlevel(H, SUIT_SENSOR_TRACKING)) AI.ai_actual_track(H) return 1 diff --git a/code/modules/nano/modules/ert_manager.dm b/code/modules/nano/modules/ert_manager.dm index 1d70157f079..080ed3d56ff 100644 --- a/code/modules/nano/modules/ert_manager.dm +++ b/code/modules/nano/modules/ert_manager.dm @@ -11,7 +11,7 @@ var/autoclose = 0 -/datum/nano_module/ert_manager/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1, var/datum/topic_state/state = default_state) +/datum/nano_module/ert_manager/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1, var/datum/topic_state/state = admin_state) ui = SSnanoui.try_update_ui(user, src, ui_key, ui, force_open) if(ui && autoclose) ui.close() diff --git a/code/modules/paperwork/faxmachine.dm b/code/modules/paperwork/faxmachine.dm index 2b699c36530..a43e0b66a95 100644 --- a/code/modules/paperwork/faxmachine.dm +++ b/code/modules/paperwork/faxmachine.dm @@ -317,7 +317,7 @@ var/list/alldepartments = list() /obj/machinery/photocopier/faxmachine/proc/message_admins(var/mob/sender, var/faxname, var/faxtype, var/obj/item/sent, font_colour="#9A04D1") var/msg = "[faxname]: [key_name_admin(sender)] | REPLY: (RADIO) (FAX) (SM) | REJECT: (TEMPLATE) (BSA) (EVILFAX) : Receiving '[sent.name]' via secure connection... view message" - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(check_rights(R_EVENT, 0, C.mob)) to_chat(C, msg) if(C.prefs.sound & SOUND_ADMINHELP) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 2fe57c5698f..f8c47a0214c 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -71,7 +71,7 @@ assets.send(user) var/data - if((!user.say_understands(null, all_languages["Galactic Common"]) && !forceshow) || forcestars) //assuming all paper is written in common is better than hardcoded type checks + if((!user.say_understands(null, GLOB.all_languages["Galactic Common"]) && !forceshow) || forcestars) //assuming all paper is written in common is better than hardcoded type checks data = "[name][stars(info)][stamps]" if(view) usr << browse(data, "window=[name];size=[paper_width]x[paper_height]") diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm index 40759ab792c..3b37e551e0f 100644 --- a/code/modules/paperwork/photography.dm +++ b/code/modules/paperwork/photography.dm @@ -545,13 +545,13 @@ var/list/SpookyGhosts = list("ghost","shade","shade2","ghost-narsie","horror","s if(camera && on) if(get_dist(src, M) <= canhear_range) talk_into(M, msg) - for(var/obj/machinery/computer/security/telescreen/T in machines) + for(var/obj/machinery/computer/security/telescreen/T in GLOB.machines) if(T.watchers[M] == camera) T.audible_message("(Newscaster) [M] says, '[msg]'", hearing_distance = 2) /obj/item/videocam/hear_message(mob/M as mob, msg) if(camera && on) - for(var/obj/machinery/computer/security/telescreen/T in machines) + for(var/obj/machinery/computer/security/telescreen/T in GLOB.machines) if(T.watchers[M] == camera) T.audible_message("(Newscaster) [M] [msg]", hearing_distance = 2) diff --git a/code/modules/pda/cart_apps.dm b/code/modules/pda/cart_apps.dm index 78f0eec355d..b92253d4ae9 100644 --- a/code/modules/pda/cart_apps.dm +++ b/code/modules/pda/cart_apps.dm @@ -367,7 +367,7 @@ else JaniData["user_loc"] = list("x" = 0, "y" = 0) var/MopData[0] - for(var/obj/item/mop/M in janitorial_equipment) + for(var/obj/item/mop/M in GLOB.janitorial_equipment) var/turf/ml = get_turf(M) if(ml) if(ml.z != cl.z) @@ -380,7 +380,7 @@ var/BucketData[0] - for(var/obj/structure/mopbucket/B in janitorial_equipment) + for(var/obj/structure/mopbucket/B in GLOB.janitorial_equipment) var/turf/bl = get_turf(B) if(bl) if(bl.z != cl.z) @@ -392,7 +392,7 @@ BucketData[++BucketData.len] = list("x" = 0, "y" = 0, dir=null, status = null) var/CbotData[0] - for(var/mob/living/simple_animal/bot/cleanbot/B in simple_animal_list) + for(var/mob/living/simple_animal/bot/cleanbot/B in GLOB.simple_animal_list) var/turf/bl = get_turf(B) if(bl) if(bl.z != cl.z) @@ -404,7 +404,7 @@ if(!CbotData.len) CbotData[++CbotData.len] = list("x" = 0, "y" = 0, dir=null, status = null) var/CartData[0] - for(var/obj/structure/janitorialcart/B in janitorial_equipment) + for(var/obj/structure/janitorialcart/B in GLOB.janitorial_equipment) var/turf/bl = get_turf(B) if(bl) if(bl.z != cl.z) diff --git a/code/modules/pda/radio.dm b/code/modules/pda/radio.dm index b9dfe8ff7e4..a6328dacd6f 100644 --- a/code/modules/pda/radio.dm +++ b/code/modules/pda/radio.dm @@ -129,8 +129,8 @@ post_signal(control_freq, "command", "unload", "active", active, s_filter = RADIO_MULEBOT) if("setdest") - if(deliverybeacons) - var/dest = input("Select Bot Destination", "Mulebot [active.suffix] Interlink", active.destination) as null|anything in deliverybeacontags + if(GLOB.deliverybeacons) + var/dest = input("Select Bot Destination", "Mulebot [active.suffix] Interlink", active.destination) as null|anything in GLOB.deliverybeacontags if(dest) spawn(0) post_signal(control_freq, "command", "target", "active", active, "destination", dest, s_filter = RADIO_MULEBOT) diff --git a/code/modules/pda/utilities.dm b/code/modules/pda/utilities.dm index e144841a144..a03a36e005a 100644 --- a/code/modules/pda/utilities.dm +++ b/code/modules/pda/utilities.dm @@ -29,7 +29,7 @@ var/remote_door_id = "" /datum/data/pda/utility/toggle_door/start() - for(var/obj/machinery/door/poddoor/M in airlocks) + for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) if(M.id_tag == remote_door_id) if(M.density) M.open() diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index f4894b2c120..5f7ddcc035c 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -145,8 +145,8 @@ if(!armor) armor = list(melee = 20, bullet = 20, laser = 10, energy = 100, bomb = 30, bio = 100, rad = 100) ..() - apcs += src - apcs = sortAtom(apcs) + GLOB.apcs += src + GLOB.apcs = sortAtom(GLOB.apcs) wires = new(src) // offset 24 pixels in direction of dir @@ -172,7 +172,7 @@ src.update() /obj/machinery/power/apc/Destroy() - apcs -= src + GLOB.apcs -= src if(malfai && operating) malfai.malf_picker.processing_time = Clamp(malfai.malf_picker.processing_time - 10,0,1000) area.power_light = 0 @@ -1036,7 +1036,7 @@ occupier.verbs += /mob/living/silicon/ai/proc/corereturn occupier.cancel_camera() if((seclevel2num(get_security_level()) == SEC_LEVEL_DELTA) && malf.nuking) - for(var/obj/item/pinpointer/point in pinpointer_list) + for(var/obj/item/pinpointer/point in GLOB.pinpointer_list) point.the_disk = src //the pinpointer will detect the shunted AI /obj/machinery/power/apc/proc/malfvacate(forced) @@ -1049,7 +1049,7 @@ occupier.parent.cancel_camera() qdel(occupier) if(seclevel2num(get_security_level()) == SEC_LEVEL_DELTA) - for(var/obj/item/pinpointer/point in pinpointer_list) + for(var/obj/item/pinpointer/point in GLOB.pinpointer_list) for(var/mob/living/silicon/ai/A in ai_list) if((A.stat != DEAD) && A.nuking) point.the_disk = A //The pinpointer tracks the AI back into its core. @@ -1059,7 +1059,7 @@ occupier.loc = loc occupier.death() occupier.gib() - for(var/obj/item/pinpointer/point in pinpointer_list) + for(var/obj/item/pinpointer/point in GLOB.pinpointer_list) point.the_disk = null //Pinpointers go back to tracking the nuke disk /obj/machinery/power/apc/proc/ion_act() diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index ed1458c1cae..5860bcd1e3a 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -134,9 +134,9 @@ By design, d1 is the smallest direction and d2 is the highest return if(src.d1) // 0-X cables are 1 unit, X-X cables are 2 units long - new/obj/item/stack/cable_coil(T, 2, color) + new/obj/item/stack/cable_coil(T, 2, paramcolor = color) else - new/obj/item/stack/cable_coil(T, 1, color) + new/obj/item/stack/cable_coil(T, 1, paramcolor = color) for(var/mob/O in viewers(src, null)) O.show_message("[user] cuts the cable.", 1) @@ -209,12 +209,12 @@ By design, d1 is the smallest direction and d2 is the highest qdel(src) // qdel if(2.0) if(prob(50)) - new/obj/item/stack/cable_coil(get_turf(src), src.d1 ? 2 : 1, color) + new/obj/item/stack/cable_coil(get_turf(src), src.d1 ? 2 : 1, paramcolor = color) qdel(src) // qdel if(3.0) if(prob(25)) - new/obj/item/stack/cable_coil(get_turf(src), src.d1 ? 2 : 1, color) + new/obj/item/stack/cable_coil(get_turf(src), src.d1 ? 2 : 1, paramcolor = color) qdel(src) // qdel return @@ -502,13 +502,13 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list( toolspeed = 1 /obj/item/stack/cable_coil/suicide_act(mob/user) - if(locate(/obj/structure/stool) in user.loc) + if(locate(/obj/structure/chair/stool) in user.loc) user.visible_message("[user] is making a noose with the [name]! It looks like [user.p_theyre()] trying to commit suicide.") else user.visible_message("[user] is strangling [user.p_them()]self with the [name]! It looks like [user.p_theyre()] trying to commit suicide.") return(OXYLOSS) -/obj/item/stack/cable_coil/New(loc, length = MAXCOIL, var/paramcolor = null) +/obj/item/stack/cable_coil/New(loc, length = MAXCOIL, paramcolor = null) ..() amount = length if(paramcolor) @@ -694,7 +694,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list( if(C.shock(user, 50)) if(prob(50)) //fail - new /obj/item/stack/cable_coil(get_turf(C), 1, C.color) + new /obj/item/stack/cable_coil(get_turf(C), 1, paramcolor = C.color) qdel(C) // qdel return C @@ -777,7 +777,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list( if(C.shock(user, 50)) if(prob(50)) //fail - new/obj/item/stack/cable_coil(get_turf(C), 2, C.color) + new/obj/item/stack/cable_coil(get_turf(C), 2, paramcolor = C.color) qdel(C) // qdel return diff --git a/code/modules/power/gravitygenerator.dm b/code/modules/power/gravitygenerator.dm index 8f9d9fb14cd..c65f7d56158 100644 --- a/code/modules/power/gravitygenerator.dm +++ b/code/modules/power/gravitygenerator.dm @@ -366,7 +366,7 @@ var/const/GRAV_NEEDS_WRENCH = 3 /obj/machinery/gravity_generator/main/proc/shake_everyone() var/turf/our_turf = get_turf(src) var/sound/alert_sound = sound('sound/effects/alert.ogg') - for(var/shaked in mob_list) + for(var/shaked in GLOB.mob_list) var/mob/M = shaked var/turf/their_turf = get_turf(M) if(their_turf && their_turf.z == our_turf.z) diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 38b9d9220d5..d978e39a7f0 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -66,7 +66,7 @@ src.icon_state = "tube-construct-stage1" if("bulb") src.icon_state = "bulb-construct-stage1" - new /obj/item/stack/cable_coil(get_turf(src.loc), 1, COLOR_RED) + new /obj/item/stack/cable_coil(get_turf(src.loc), 1, paramcolor = COLOR_RED) user.visible_message("[user.name] removes the wiring from [src].", \ "You remove the wiring from [src].", "You hear a noise.") playsound(loc, W.usesound, 100, 1) diff --git a/code/modules/power/singularity/field_generator.dm b/code/modules/power/singularity/field_generator.dm index 0f281c634e3..40947d79368 100644 --- a/code/modules/power/singularity/field_generator.dm +++ b/code/modules/power/singularity/field_generator.dm @@ -313,7 +313,7 @@ field_generator power level display //I want to avoid using global variables. spawn(1) var/temp = 1 //stops spam - for(var/obj/singularity/O in singularities) + for(var/obj/singularity/O in GLOB.singularities) if(O.last_warning && temp) if((world.time - O.last_warning) > 50) //to stop message-spam temp = 0 diff --git a/code/modules/power/singularity/narsie.dm b/code/modules/power/singularity/narsie.dm index b443fe1b853..e15c727accb 100644 --- a/code/modules/power/singularity/narsie.dm +++ b/code/modules/power/singularity/narsie.dm @@ -93,7 +93,7 @@ /obj/singularity/narsie/proc/pickcultist() //Narsie rewards his cultists with being devoured first, then picks a ghost to follow. --NEO var/list/cultists = list() var/list/noncultists = list() - for(var/mob/living/carbon/food in living_mob_list) //we don't care about constructs or cult-Ians or whatever. cult-monkeys are fair game i guess + for(var/mob/living/carbon/food in GLOB.living_mob_list) //we don't care about constructs or cult-Ians or whatever. cult-monkeys are fair game i guess var/turf/pos = get_turf(food) if(pos.z != src.z) continue @@ -112,7 +112,7 @@ return //no living humans, follow a ghost instead. - for(var/mob/dead/observer/ghost in player_list) + for(var/mob/dead/observer/ghost in GLOB.player_list) if(!ghost.client) continue var/turf/pos = get_turf(ghost) diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm index 0abb564fa28..67238444eaa 100644 --- a/code/modules/power/singularity/singularity.dm +++ b/code/modules/power/singularity/singularity.dm @@ -35,17 +35,17 @@ src.energy = starting_energy ..() processing_objects.Add(src) - poi_list |= src - singularities += src - for(var/obj/machinery/power/singularity_beacon/singubeacon in machines) + GLOB.poi_list |= src + GLOB.singularities += src + for(var/obj/machinery/power/singularity_beacon/singubeacon in GLOB.machines) if(singubeacon.active) target = singubeacon break /obj/singularity/Destroy() processing_objects.Remove(src) - poi_list.Remove(src) - singularities -= src + GLOB.poi_list.Remove(src) + GLOB.singularities -= src target = null return ..() diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index 125706bff28..dfb8da3811d 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -99,7 +99,7 @@ /obj/machinery/power/supermatter_shard/New() . = ..() - poi_list |= src + GLOB.poi_list |= src //Added to the atmos_machine process as the SM is highly coupled with the atmospherics system. //Having the SM run at a different rate then atmospherics causes odd behavior. SSair.atmos_machinery += src @@ -137,7 +137,7 @@ if(damage > emergency_point) emergency_lighting(0) QDEL_NULL(radio) - poi_list.Remove(src) + GLOB.poi_list.Remove(src) SSair.atmos_machinery -= src return ..() @@ -182,7 +182,7 @@ if(damage > explosion_point) if(get_turf(src)) var/turf/position = get_turf(src) - for(var/mob/living/mob in living_mob_list) + for(var/mob/living/mob in GLOB.living_mob_list) var/turf/mob_pos = get_turf(mob) if(mob_pos && mob_pos.z == position.z) if(ishuman(mob)) @@ -301,7 +301,7 @@ investigate_log("Supermatter shard consumed by singularity.","singulo") message_admins("Singularity has consumed a supermatter shard and can now become stage six.(JMP).") visible_message("[src] is consumed by the singularity!") - for(var/mob/M in mob_list) + for(var/mob/M in GLOB.mob_list) M << 'sound/effects/supermatter.ogg' //everyone gunna know bout this to_chat(M, "A horrible screeching fills your ears, and a wave of dread washes over you...") qdel(src) diff --git a/code/modules/power/tesla/energy_ball.dm b/code/modules/power/tesla/energy_ball.dm index 9cfd526585e..e5005708c67 100644 --- a/code/modules/power/tesla/energy_ball.dm +++ b/code/modules/power/tesla/energy_ball.dm @@ -118,7 +118,7 @@ /obj/singularity/energy_ball/orbit(obj/singularity/energy_ball/target) if(istype(target)) target.orbiting_balls += src - poi_list -= src + GLOB.poi_list -= src target.dissipate_strength = target.orbiting_balls.len . = ..() diff --git a/code/modules/power/treadmill.dm b/code/modules/power/treadmill.dm index 4f7e7e9c895..92464413c5c 100644 --- a/code/modules/power/treadmill.dm +++ b/code/modules/power/treadmill.dm @@ -140,7 +140,7 @@ /obj/machinery/treadmill_monitor/Initialize() ..() if(id) - for(var/obj/machinery/power/treadmill/T in machines) + for(var/obj/machinery/power/treadmill/T in GLOB.machines) if(T.id == id) treadmill = T break diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index ccb28890786..f0816022b64 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -160,8 +160,9 @@ S.use(1) power_supply.give(1000) to_chat(user, "You insert [A] in [src], recharging it.") - else if(istype(A, /obj/item/ore/plasma)) - qdel(A) + else if(istype(A, /obj/item/stack/ore/plasma)) + var/obj/item/stack/ore/S = A + S.use(1) power_supply.give(500) to_chat(user, "You insert [A] in [src], recharging it.") else diff --git a/code/modules/projectiles/guns/energy/telegun.dm b/code/modules/projectiles/guns/energy/telegun.dm index 1c5da40e38e..834949c1512 100644 --- a/code/modules/projectiles/guns/energy/telegun.dm +++ b/code/modules/projectiles/guns/energy/telegun.dm @@ -18,7 +18,7 @@ var/list/L = list() var/list/areaindex = list() - for(var/obj/item/radio/beacon/R in beacons) + for(var/obj/item/radio/beacon/R in GLOB.beacons) var/turf/T = get_turf(R) if(!T) continue diff --git a/code/modules/projectiles/projectile/magic.dm b/code/modules/projectiles/projectile/magic.dm index 854fd1edbaf..ef6ec862290 100644 --- a/code/modules/projectiles/projectile/magic.dm +++ b/code/modules/projectiles/projectile/magic.dm @@ -79,7 +79,7 @@ target.suiciding = 0 target.revive() if(!target.ckey) - for(var/mob/dead/observer/ghost in player_list) + for(var/mob/dead/observer/ghost in GLOB.player_list) if(target.real_name == ghost.real_name) ghost.reenter_corpse() break diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index c76129fc27f..dacd44a5035 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -18,21 +18,21 @@ var/const/INGEST = 2 if(!(flags & REAGENT_NOREACT)) processing_objects |= src //I dislike having these here but map-objects are initialised before world/New() is called. >_> - if(!chemical_reagents_list) + if(!GLOB.chemical_reagents_list) //Chemical Reagents - Initialises all /datum/reagent into a list indexed by reagent id var/paths = subtypesof(/datum/reagent) - chemical_reagents_list = list() + GLOB.chemical_reagents_list = list() for(var/path in paths) var/datum/reagent/D = new path() - chemical_reagents_list[D.id] = D - if(!chemical_reactions_list) + GLOB.chemical_reagents_list[D.id] = D + if(!GLOB.chemical_reactions_list) //Chemical Reactions - Initialises all /datum/chemical_reaction into a list // It is filtered into multiple lists within a list. // For example: // chemical_reaction_list["plasma"] is a list of all reactions relating to plasma var/paths = subtypesof(/datum/chemical_reaction) - chemical_reactions_list = list() + GLOB.chemical_reactions_list = list() for(var/path in paths) @@ -45,9 +45,9 @@ var/const/INGEST = 2 // Create filters based on each reagent id in the required reagents list for(var/id in reaction_ids) - if(!chemical_reactions_list[id]) - chemical_reactions_list[id] = list() - chemical_reactions_list[id] += D + if(!GLOB.chemical_reactions_list[id]) + GLOB.chemical_reactions_list[id] = list() + GLOB.chemical_reactions_list[id] += D break // Don't bother adding ourselves to other reagent ids, it is redundant. /datum/reagents/proc/remove_any(amount=1) @@ -377,7 +377,7 @@ var/const/INGEST = 2 do reaction_occured = 0 for(var/datum/reagent/R in reagent_list) // Usually a small list - for(var/reaction in chemical_reactions_list[R.id]) // Was a big list but now it should be smaller since we filtered it with our reagent id + for(var/reaction in GLOB.chemical_reactions_list[R.id]) // Was a big list but now it should be smaller since we filtered it with our reagent id if(!reaction) continue @@ -570,7 +570,7 @@ var/const/INGEST = 2 handle_reactions() return 0 - var/datum/reagent/D = chemical_reagents_list[reagent] + var/datum/reagent/D = GLOB.chemical_reagents_list[reagent] if(D) var/datum/reagent/R = new D.type() diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index cf291fba675..88d7318e962 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -142,7 +142,7 @@ var/chemicals[0] for(var/re in dispensable_reagents) - var/datum/reagent/temp = chemical_reagents_list[re] + var/datum/reagent/temp = GLOB.chemical_reagents_list[re] if(temp) chemicals.Add(list(list("title" = temp.name, "id" = temp.id, "commands" = list("dispense" = temp.id)))) // list in a list because Byond merges the first list... data["chemicals"] = chemicals diff --git a/code/modules/reagents/chemistry/machinery/pandemic.dm b/code/modules/reagents/chemistry/machinery/pandemic.dm index 1d300767488..aa1f8aaf385 100644 --- a/code/modules/reagents/chemistry/machinery/pandemic.dm +++ b/code/modules/reagents/chemistry/machinery/pandemic.dm @@ -160,7 +160,7 @@ if(archive_diseases[id]) var/datum/disease/advance/A = archive_diseases[id] A.AssignName(new_name) - for(var/datum/disease/advance/AD in active_diseases) + for(var/datum/disease/advance/AD in GLOB.active_diseases) AD.Refresh() updateUsrDialog() else if(href_list["print_form"]) diff --git a/code/modules/reagents/chemistry/reagents/misc.dm b/code/modules/reagents/chemistry/reagents/misc.dm index c86a839c4e2..fb819a1d558 100644 --- a/code/modules/reagents/chemistry/reagents/misc.dm +++ b/code/modules/reagents/chemistry/reagents/misc.dm @@ -333,8 +333,8 @@ if(ishuman(M)) var/mob/living/carbon/human/H = M var/obj/item/organ/external/head/head_organ = H.get_organ("head") - var/datum/sprite_accessory/tmp_hair_style = hair_styles_full_list["Very Long Hair"] - var/datum/sprite_accessory/tmp_facial_hair_style = facial_hair_styles_list["Very Long Beard"] + var/datum/sprite_accessory/tmp_hair_style = GLOB.hair_styles_full_list["Very Long Hair"] + var/datum/sprite_accessory/tmp_facial_hair_style = GLOB.facial_hair_styles_list["Very Long Beard"] if(head_organ.dna.species.name in tmp_hair_style.species_allowed) //If 'Very Long Hair' is a style the person's species can have, give it to them. head_organ.h_style = "Very Long Hair" diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm index 4df7a525b88..d565ef624d2 100644 --- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm +++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm @@ -564,7 +564,7 @@ /datum/chemical_reaction/slimecrystal/on_reaction(datum/reagents/holder, created_volume) feedback_add_details("slime_cores_used","[type]") if(holder.my_atom) - var/obj/item/ore/bluespace_crystal/BC = new(get_turf(holder.my_atom)) + var/obj/item/stack/ore/bluespace_crystal/BC = new(get_turf(holder.my_atom)) BC.visible_message("The [BC.name] appears out of thin air!") //Cerulean diff --git a/code/modules/reagents/reagent_containers/borghydro.dm b/code/modules/reagents/reagent_containers/borghydro.dm index ad8b3438ee4..bd037c49239 100644 --- a/code/modules/reagents/reagent_containers/borghydro.dm +++ b/code/modules/reagents/reagent_containers/borghydro.dm @@ -82,7 +82,7 @@ R.add_reagent(M) if(M.reagents) - var/datum/reagent/injected = chemical_reagents_list[reagent_ids[mode]] + var/datum/reagent/injected = GLOB.chemical_reagents_list[reagent_ids[mode]] var/contained = injected.name var/trans = R.trans_to(M, amount_per_transfer_from_this) add_attack_logs(M, user, "Injected with [name] containing [contained], transfered [trans] units") @@ -97,7 +97,7 @@ mode = 1 charge_tick = 0 //Prevents wasted chems/cell charge if you're cycling through modes. - var/datum/reagent/R = chemical_reagents_list[reagent_ids[mode]] + var/datum/reagent/R = GLOB.chemical_reagents_list[reagent_ids[mode]] to_chat(user, "Synthesizer is now producing '[R.name]'.") return diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm index 8593de82ba5..daf799f31d2 100644 --- a/code/modules/recycling/disposal.dm +++ b/code/modules/recycling/disposal.dm @@ -1001,7 +1001,7 @@ /obj/structure/disposalpipe/sortjunction/proc/updatedesc() desc = "An underfloor disposal pipe with a package sorting mechanism." if(sortType>0) - var/tag = uppertext(TAGGERLOCATIONS[sortType]) + var/tag = uppertext(GLOB.TAGGERLOCATIONS[sortType]) desc += "\nIt's tagged with [tag]" /obj/structure/disposalpipe/sortjunction/proc/updatedir() @@ -1033,7 +1033,7 @@ if(O.currTag > 0)// Tag set sortType = O.currTag playsound(src.loc, 'sound/machines/twobeep.ogg', 100, 1) - var/tag = uppertext(TAGGERLOCATIONS[O.currTag]) + var/tag = uppertext(GLOB.TAGGERLOCATIONS[O.currTag]) to_chat(user, "Changed filter to [tag]") updatedesc() diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm index a98e8e60adc..8cf0f52d847 100755 --- a/code/modules/recycling/sortingmachinery.dm +++ b/code/modules/recycling/sortingmachinery.dm @@ -30,7 +30,7 @@ var/obj/item/destTagger/O = W if(sortTag != O.currTag) - var/tag = uppertext(TAGGERLOCATIONS[O.currTag]) + var/tag = uppertext(GLOB.TAGGERLOCATIONS[O.currTag]) to_chat(user, "*[tag]*") sortTag = O.currTag playsound(loc, 'sound/machines/twobeep.ogg', 100, 1) @@ -94,7 +94,7 @@ var/obj/item/destTagger/O = W if(sortTag != O.currTag) - var/tag = uppertext(TAGGERLOCATIONS[O.currTag]) + var/tag = uppertext(GLOB.TAGGERLOCATIONS[O.currTag]) to_chat(user, "*[tag]*") sortTag = O.currTag playsound(loc, 'sound/machines/twobeep.ogg', 100, 1) @@ -227,13 +227,13 @@ var/dat = "

TagMaster 2.2

" dat += "

Name

Status

Location

Control

[Bot.hacked ? "(!) [Bot.name]" : Bot.name] ([Bot.model])
" - for(var/i = 1, i <= TAGGERLOCATIONS.len, i++) - dat += "" + for(var/i = 1, i <= GLOB.TAGGERLOCATIONS.len, i++) + dat += "" if(i%4==0) dat += "" - dat += "
[TAGGERLOCATIONS[i]][GLOB.TAGGERLOCATIONS[i]]

Current Selection: [currTag ? TAGGERLOCATIONS[currTag] : "None"]
" + dat += "

Current Selection: [currTag ? GLOB.TAGGERLOCATIONS[currTag] : "None"]" user << browse(dat, "window=destTagScreen;size=450x350") onclose(user, "destTagScreen") @@ -426,7 +426,7 @@ /obj/item/shippingPackage/proc/update_desc() desc = "A pre-labeled package for shipping an item to coworkers." if(sortTag) - desc += " The label says \"Deliver to [TAGGERLOCATIONS[sortTag]]\"." + desc += " The label says \"Deliver to [GLOB.TAGGERLOCATIONS[sortTag]]\"." if(!sealed) desc += " The package is not sealed." diff --git a/code/modules/research/designs/bluespace_designs.dm b/code/modules/research/designs/bluespace_designs.dm index cf6e4b53882..029936e1f3a 100644 --- a/code/modules/research/designs/bluespace_designs.dm +++ b/code/modules/research/designs/bluespace_designs.dm @@ -8,7 +8,7 @@ req_tech = list("bluespace" = 3, "materials" = 6, "plasmatech" = 4) build_type = PROTOLATHE materials = list(MAT_DIAMOND = 1500, MAT_PLASMA = 1500) - build_path = /obj/item/ore/bluespace_crystal/artificial + build_path = /obj/item/stack/ore/bluespace_crystal/artificial category = list("Bluespace") /datum/design/bag_holding diff --git a/code/modules/research/experimentor.dm b/code/modules/research/experimentor.dm index f6e4f2c0877..9e72a12c98e 100644 --- a/code/modules/research/experimentor.dm +++ b/code/modules/research/experimentor.dm @@ -89,8 +89,8 @@ component_parts += new /obj/item/stock_parts/micro_laser(src) component_parts += new /obj/item/stock_parts/micro_laser(src) spawn(1) - trackedIan = locate(/mob/living/simple_animal/pet/corgi/Ian) in mob_list - trackedRuntime = locate(/mob/living/simple_animal/pet/cat/Runtime) in mob_list + trackedIan = locate(/mob/living/simple_animal/pet/corgi/Ian) in GLOB.mob_list + trackedRuntime = locate(/mob/living/simple_animal/pet/cat/Runtime) in GLOB.mob_list SetTypeReactions() RefreshParts() diff --git a/code/modules/research/message_server.dm b/code/modules/research/message_server.dm index 88ecedbf555..fa5015987e5 100644 --- a/code/modules/research/message_server.dm +++ b/code/modules/research/message_server.dm @@ -267,7 +267,7 @@ var/obj/machinery/blackbox_recorder/blackbox var/pda_msg_amt = 0 var/rc_msg_amt = 0 - for(var/obj/machinery/message_server/MS in machines) + for(var/obj/machinery/message_server/MS in GLOB.machines) if(MS.pda_msgs.len > pda_msg_amt) pda_msg_amt = MS.pda_msgs.len if(MS.rc_msgs.len > rc_msg_amt) diff --git a/code/modules/research/rdmachines.dm b/code/modules/research/rdmachines.dm index 1e884e35c3a..328faf6d645 100644 --- a/code/modules/research/rdmachines.dm +++ b/code/modules/research/rdmachines.dm @@ -22,7 +22,7 @@ /obj/machinery/r_n_d/New() materials = AddComponent(/datum/component/material_container, list(MAT_METAL, MAT_GLASS, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_PLASMA, MAT_URANIUM, MAT_BANANIUM, MAT_TRANQUILLITE, MAT_TITANIUM, MAT_BLUESPACE, MAT_PLASTIC), 0, - FALSE, list(/obj/item/stack, /obj/item/ore/bluespace_crystal), CALLBACK(src, .proc/is_insertion_ready), CALLBACK(src, .proc/AfterMaterialInsert)) + FALSE, list(/obj/item/stack, /obj/item/stack/ore/bluespace_crystal), CALLBACK(src, .proc/is_insertion_ready), CALLBACK(src, .proc/AfterMaterialInsert)) materials.precise_insertion = TRUE ..() wires["Red"] = 0 @@ -121,7 +121,7 @@ /obj/machinery/r_n_d/proc/AfterMaterialInsert(type_inserted, id_inserted, amount_inserted) var/stack_name - if(ispath(type_inserted, /obj/item/ore/bluespace_crystal)) + if(ispath(type_inserted, /obj/item/stack/ore/bluespace_crystal)) stack_name = "bluespace polycrystal" use_power(MINERAL_MATERIAL_AMOUNT / 10) else diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index cba25522d7d..908f0bef139 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -106,7 +106,7 @@ // Backup files to CentComm to help admins recover data after griefer attacks /obj/machinery/r_n_d/server/proc/griefProtection() - for(var/obj/machinery/r_n_d/server/centcom/C in machines) + for(var/obj/machinery/r_n_d/server/centcom/C in GLOB.machines) files.push_data(C.files) /obj/machinery/r_n_d/server/proc/produce_heat(heat_amt) @@ -166,7 +166,7 @@ ..() var/list/no_id_servers = list() var/list/server_ids = list() - for(var/obj/machinery/r_n_d/server/S in machines) + for(var/obj/machinery/r_n_d/server/S in GLOB.machines) switch(S.server_id) if(-1) continue @@ -218,20 +218,20 @@ temp_server = null consoles = list() servers = list() - for(var/obj/machinery/r_n_d/server/S in machines) + for(var/obj/machinery/r_n_d/server/S in GLOB.machines) if(S.server_id == text2num(href_list["access"]) || S.server_id == text2num(href_list["data"]) || S.server_id == text2num(href_list["transfer"])) temp_server = S break if(href_list["access"]) screen = 1 - for(var/obj/machinery/computer/rdconsole/C in machines) + for(var/obj/machinery/computer/rdconsole/C in GLOB.machines) if(C.sync) consoles += C else if(href_list["data"]) screen = 2 else if(href_list["transfer"]) screen = 3 - for(var/obj/machinery/r_n_d/server/S in machines) + for(var/obj/machinery/r_n_d/server/S in GLOB.machines) if(S == src) continue servers += S @@ -283,7 +283,7 @@ if(0) //Main Menu dat += "Connected Servers:

" - for(var/obj/machinery/r_n_d/server/S in machines) + for(var/obj/machinery/r_n_d/server/S in GLOB.machines) if(istype(S, /obj/machinery/r_n_d/server/centcom) && !badmin) continue dat += "[S.name] || " diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index dd672e7938d..56ef19b7c1a 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -485,7 +485,7 @@ /obj/effect/timestop/New() ..() - for(var/mob/living/M in player_list) + for(var/mob/living/M in GLOB.player_list) for(var/obj/effect/proc_holder/spell/aoe_turf/conjure/timestop/T in M.mind.spell_list) //People who can stop time are immune to timestop immune |= M diff --git a/code/modules/response_team/ert.dm b/code/modules/response_team/ert.dm index 8614df8135b..d678a541912 100644 --- a/code/modules/response_team/ert.dm +++ b/code/modules/response_team/ert.dm @@ -77,10 +77,10 @@ var/ert_request_answered = FALSE for(var/mob/dead/observer/M in ert_candidates) if(jobban_isbanned(M, ROLE_TRAITOR) || jobban_isbanned(M, "Security Officer") || jobban_isbanned(M, "Captain") || jobban_isbanned(M, "Cyborg")) continue - if((M in respawnable_list) && M.JoinResponseTeam()) + if((M in GLOB.respawnable_list) && M.JoinResponseTeam()) response_team_members |= M // If there's still open slots, non-respawnable players can fill them - for(var/mob/dead/observer/M in (ert_candidates - respawnable_list)) + for(var/mob/dead/observer/M in (ert_candidates - GLOB.respawnable_list)) if(M.JoinResponseTeam()) response_team_members |= M @@ -161,7 +161,7 @@ var/ert_request_answered = FALSE head_organ.h_style = random_hair_style(M.gender, head_organ.dna.species.name) head_organ.f_style = random_facial_hair_style(M.gender, head_organ.dna.species.name) - M.rename_character(null, "[pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant First Class", "Master Sergeant", "Sergeant Major")] [pick(last_names)]") + M.rename_character(null, "[pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant First Class", "Master Sergeant", "Sergeant Major")] [pick(GLOB.last_names)]") M.age = rand(23,35) M.regenerate_icons() M.update_body() @@ -284,7 +284,7 @@ var/ert_request_answered = FALSE command_slots = 0 // Override name and age for the commander - M.rename_character(null, "[pick("Lieutenant", "Captain", "Major")] [pick(last_names)]") + M.rename_character(null, "[pick("Lieutenant", "Captain", "Major")] [pick(GLOB.last_names)]") M.age = rand(35,45) M.equipOutfit(command_outfit) diff --git a/code/modules/security_levels/keycard authentication.dm b/code/modules/security_levels/keycard authentication.dm index afe433cd0cf..8203394f09a 100644 --- a/code/modules/security_levels/keycard authentication.dm +++ b/code/modules/security_levels/keycard authentication.dm @@ -162,7 +162,7 @@ print_centcom_report(ert_reason, station_time_timestamp() + " ERT Request") var/fullmin_count = 0 - for(var/client/C in admins) + for(var/client/C in GLOB.admins) if(check_rights(R_EVENT, 0, C.mob)) fullmin_count++ if(fullmin_count) diff --git a/code/modules/security_levels/security levels.dm b/code/modules/security_levels/security levels.dm index 327ab65ed94..f5d3fe7e1bf 100644 --- a/code/modules/security_levels/security levels.dm +++ b/code/modules/security_levels/security levels.dm @@ -38,7 +38,7 @@ post_status("alert", "outline") - for(var/obj/machinery/firealarm/FA in machines) + for(var/obj/machinery/firealarm/FA in GLOB.machines) if(is_station_contact(FA.z)) FA.overlays.Cut() FA.overlays += image('icons/obj/monitors.dmi', "overlay_green") @@ -52,7 +52,7 @@ post_status("alert", "outline") - for(var/obj/machinery/firealarm/FA in machines) + for(var/obj/machinery/firealarm/FA in GLOB.machines) if(is_station_contact(FA.z)) FA.overlays.Cut() FA.overlays += image('icons/obj/monitors.dmi', "overlay_blue") @@ -64,14 +64,14 @@ security_announcement_down.Announce("The station's self-destruct mechanism has been deactivated, but there is still an immediate and serious threat to the station. Security may have weapons unholstered at all times. Random searches are allowed and advised.","Attention! Code Red!") security_level = SEC_LEVEL_RED - var/obj/machinery/door/airlock/highsecurity/red/R = locate(/obj/machinery/door/airlock/highsecurity/red) in airlocks + var/obj/machinery/door/airlock/highsecurity/red/R = locate(/obj/machinery/door/airlock/highsecurity/red) in GLOB.airlocks if(R && is_station_level(R.z)) R.locked = 0 R.update_icon() post_status("alert", "redalert") - for(var/obj/machinery/firealarm/FA in machines) + for(var/obj/machinery/firealarm/FA in GLOB.machines) if(is_station_contact(FA.z)) FA.overlays.Cut() FA.overlays += image('icons/obj/monitors.dmi', "overlay_red") @@ -83,19 +83,19 @@ move_gamma_ship() if(security_level < SEC_LEVEL_RED) - for(var/obj/machinery/door/airlock/highsecurity/red/R in airlocks) + for(var/obj/machinery/door/airlock/highsecurity/red/R in GLOB.airlocks) if(is_station_level(R.z)) R.locked = 0 R.update_icon() - for(var/obj/machinery/door/airlock/hatch/gamma/H in airlocks) + for(var/obj/machinery/door/airlock/hatch/gamma/H in GLOB.airlocks) if(is_station_level(H.z)) H.locked = 0 H.update_icon() post_status("alert", "gammaalert") - for(var/obj/machinery/firealarm/FA in machines) + for(var/obj/machinery/firealarm/FA in GLOB.machines) if(is_station_contact(FA.z)) FA.overlays.Cut() FA.overlays += image('icons/obj/monitors.dmi', "overlay_gamma") @@ -107,7 +107,7 @@ post_status("alert", "epsilonalert") - for(var/obj/machinery/firealarm/FA in machines) + for(var/obj/machinery/firealarm/FA in GLOB.machines) if(is_station_contact(FA.z)) FA.overlays.Cut() FA.overlays += image('icons/obj/monitors.dmi', "overlay_epsilon") @@ -118,7 +118,7 @@ post_status("alert", "deltaalert") - for(var/obj/machinery/firealarm/FA in machines) + for(var/obj/machinery/firealarm/FA in GLOB.machines) if(is_station_contact(FA.z)) FA.overlays.Cut() FA.overlays += image('icons/obj/monitors.dmi', "overlay_delta") diff --git a/code/modules/shuttle/assault_pod.dm b/code/modules/shuttle/assault_pod.dm index 5ae40139819..5d190cad84d 100644 --- a/code/modules/shuttle/assault_pod.dm +++ b/code/modules/shuttle/assault_pod.dm @@ -51,7 +51,7 @@ landing_zone.dir = lz_dir landing_zone.register() //new docking ports must be registered - for(var/obj/machinery/computer/shuttle/S in machines) + for(var/obj/machinery/computer/shuttle/S in GLOB.machines) if(S.shuttleId == shuttle_id) S.possible_destinations = "[landing_zone.id]" diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 23b3c5950a1..80760e1cb50 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -173,7 +173,7 @@ emergency_shuttle_recalled.Announce("The emergency shuttle has been recalled.[SSshuttle.emergencyLastCallLoc ? " Recall signal traced. Results can be viewed on any communications console." : "" ]") /obj/docking_port/mobile/emergency/proc/is_hijacked() - for(var/mob/living/player in player_list) + for(var/mob/living/player in GLOB.player_list) if(player.mind) if(player.stat != DEAD) if(issilicon(player)) //Borgs are technically dead anyways @@ -268,7 +268,7 @@ mode = SHUTTLE_ESCAPE timer = world.time priority_announcement.Announce("The Emergency Shuttle has left the station. Estimate [timeLeft(600)] minutes until the shuttle docks at Central Command.") - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(!isnewplayer(M) && !M.client.karma_spent && !(M.client.ckey in karma_spenders) && !M.get_preference(DISABLE_KARMA_REMINDER)) to_chat(M, "You have not yet spent your karma for the round; was there a player worthy of receiving your reward? Look under Special Verbs tab, Award Karma.") diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm index efb810cae20..8ebbecb39cc 100644 --- a/code/modules/shuttle/shuttle.dm +++ b/code/modules/shuttle/shuttle.dm @@ -553,7 +553,7 @@ if(!istype(S0)) return 1 - for(var/obj/machinery/door/airlock/A in airlocks) + for(var/obj/machinery/door/airlock/A in GLOB.airlocks) if(A.id_tag == S0.id) spawn(-1) A.close() @@ -563,7 +563,7 @@ if(!istype(S1)) return 0 - for(var/obj/machinery/door/airlock/A in airlocks) + for(var/obj/machinery/door/airlock/A in GLOB.airlocks) if(A.id_tag == S1.id) spawn(-1) if(A.locked) diff --git a/code/modules/shuttle/supply.dm b/code/modules/shuttle/supply.dm index e7e455676b0..4254f5dd130 100644 --- a/code/modules/shuttle/supply.dm +++ b/code/modules/shuttle/supply.dm @@ -177,7 +177,7 @@ if(cost) SSshuttle.techLevels[tech.id] = tech.level SSshuttle.points += cost - for(var/mob/M in player_list) + for(var/mob/M in GLOB.player_list) if(M.mind) for(var/datum/job_objective/further_research/objective in M.mind.job_objectives) objective.unit_completed(cost) diff --git a/code/modules/spacepods/equipment.dm b/code/modules/spacepods/equipment.dm index 52273af71fe..a4195175338 100644 --- a/code/modules/spacepods/equipment.dm +++ b/code/modules/spacepods/equipment.dm @@ -203,7 +203,7 @@ icon_state = "cargo_ore" /obj/item/spacepod_equipment/cargo/ore/passover(var/obj/item/I) - if(storage && istype(I,/obj/item/ore)) + if(storage && istype(I,/obj/item/stack/ore)) I.forceMove(storage) // Crate System diff --git a/code/modules/spacepods/spacepod.dm b/code/modules/spacepods/spacepod.dm index d4e7514e262..dffb6da79b9 100644 --- a/code/modules/spacepods/spacepod.dm +++ b/code/modules/spacepods/spacepod.dm @@ -119,7 +119,7 @@ pr_give_air = new /datum/global_iterator/pod_tank_give_air(list(src)) equipment_system = new(src) equipment_system.installed_modules += battery - spacepods_list += src + GLOB.spacepods_list += src cargo_hold = new/obj/item/storage/internal(src) cargo_hold.w_class = 5 //so you can put bags in cargo_hold.storage_slots = 0 //You need to install cargo modules to use it. @@ -145,7 +145,7 @@ for(var/mob/M in passengers) M.forceMove(get_turf(src)) passengers -= M - spacepods_list -= src + GLOB.spacepods_list -= src return ..() /obj/spacepod/process() diff --git a/code/modules/station_goals/bsa.dm b/code/modules/station_goals/bsa.dm index 0783aed0a5c..9f8b866981c 100644 --- a/code/modules/station_goals/bsa.dm +++ b/code/modules/station_goals/bsa.dm @@ -235,7 +235,7 @@ build_path = /obj/machinery/bsa/middle origin_tech = "engineering=2;combat=2;bluespace=2" req_components = list( - /obj/item/ore/bluespace_crystal = 20, + /obj/item/stack/ore/bluespace_crystal = 20, /obj/item/stack/cable_coil = 2) /obj/item/circuitboard/machine/bsa/front diff --git a/code/modules/station_goals/dna_vault.dm b/code/modules/station_goals/dna_vault.dm index c84742445ed..3c52246cb23 100644 --- a/code/modules/station_goals/dna_vault.dm +++ b/code/modules/station_goals/dna_vault.dm @@ -51,7 +51,7 @@ /datum/station_goal/dna_vault/check_completion() if(..()) return TRUE - for(var/obj/machinery/dna_vault/V in machines) + for(var/obj/machinery/dna_vault/V in GLOB.machines) if(V.animals.len >= animal_count && V.plants.len >= plant_count && V.dna.len >= human_count && is_station_contact(V.z)) return TRUE return FALSE diff --git a/code/modules/station_goals/shield.dm b/code/modules/station_goals/shield.dm index 26c4838897c..a4444938d96 100644 --- a/code/modules/station_goals/shield.dm +++ b/code/modules/station_goals/shield.dm @@ -28,7 +28,7 @@ /datum/station_goal/proc/get_coverage() var/list/coverage = list() - for(var/obj/machinery/satellite/meteor_shield/A in machines) + for(var/obj/machinery/satellite/meteor_shield/A in GLOB.machines) if(!A.active || !is_station_level(A.z)) continue coverage |= view(A.kill_range, A) @@ -67,7 +67,7 @@ . = TRUE /obj/machinery/computer/sat_control/proc/toggle(id) - for(var/obj/machinery/satellite/S in machines) + for(var/obj/machinery/satellite/S in GLOB.machines) if(S.id == id && atoms_share_level(src, S)) S.toggle() @@ -75,7 +75,7 @@ var/list/data = list() data["satellites"] = list() - for(var/obj/machinery/satellite/S in machines) + for(var/obj/machinery/satellite/S in GLOB.machines) data["satellites"] += list(list( "id" = S.id, "active" = S.active, @@ -156,7 +156,7 @@ /obj/machinery/satellite/meteor_shield/process() if(!active) return - for(var/obj/effect/meteor/M in meteor_list) + for(var/obj/effect/meteor/M in GLOB.meteor_list) if(M.z != z) continue if(get_dist(M, src) > kill_range) diff --git a/code/modules/station_goals/station_goal.dm b/code/modules/station_goals/station_goal.dm index 5a97f0ee2f3..754e09b4185 100644 --- a/code/modules/station_goals/station_goal.dm +++ b/code/modules/station_goals/station_goal.dm @@ -13,7 +13,7 @@ /datum/station_goal/proc/send_report() priority_announcement.Announce("Priority Nanotrasen directive received. Project \"[name]\" details inbound.", "Incoming Priority Message", 'sound/AI/commandreport.ogg') - print_command_report(get_report(), "Nanotrasen Directive [pick(phonetic_alphabet)] \Roman[rand(1,50)]") + print_command_report(get_report(), "Nanotrasen Directive [pick(GLOB.phonetic_alphabet)] \Roman[rand(1,50)]") on_report() /datum/station_goal/proc/on_report() diff --git a/code/modules/surgery/helpers.dm b/code/modules/surgery/helpers.dm index 1ae29143496..dae7d2a7773 100644 --- a/code/modules/surgery/helpers.dm +++ b/code/modules/surgery/helpers.dm @@ -15,7 +15,7 @@ current_surgery = S if(!current_surgery) - var/list/all_surgeries = surgeries_list.Copy() + var/list/all_surgeries = GLOB.surgeries_list.Copy() var/list/available_surgeries = list() for(var/datum/surgery/S in all_surgeries) @@ -106,7 +106,7 @@ return 1 else if(locate(/obj/structure/table, T)) return 0.8 - else if(locate(/obj/structure/stool/bed, T)) + else if(locate(/obj/structure/bed, T)) return 0.7 else return 0.5 diff --git a/code/modules/surgery/organs/blood.dm b/code/modules/surgery/organs/blood.dm index 2a7057516f9..05f6ac5c7cd 100644 --- a/code/modules/surgery/organs/blood.dm +++ b/code/modules/surgery/organs/blood.dm @@ -102,7 +102,7 @@ if(!(NO_BLOOD in dna.species.species_traits)) ..() if(dna.species.exotic_blood) - var/datum/reagent/R = chemical_reagents_list[get_blood_id()] + var/datum/reagent/R = GLOB.chemical_reagents_list[get_blood_id()] if(istype(R) && isturf(loc)) R.reaction_turf(get_turf(src), amt) diff --git a/code/modules/surgery/organs/organ_icon.dm b/code/modules/surgery/organs/organ_icon.dm index 43d699c0408..f291f61c96d 100644 --- a/code/modules/surgery/organs/organ_icon.dm +++ b/code/modules/surgery/organs/organ_icon.dm @@ -112,7 +112,7 @@ var/global/list/limb_icon_cache = list() var/head_marking = owner.m_styles["head"] if(head_marking && head_marking != "None") - var/datum/sprite_accessory/head_marking_style = marking_styles_list[head_marking] + var/datum/sprite_accessory/head_marking_style = GLOB.marking_styles_list[head_marking] if(head_marking_style && head_marking_style.species_allowed && (dna.species.name in head_marking_style.species_allowed) && head_marking_style.marking_location == "head") var/icon/h_marking_s = new/icon("icon" = head_marking_style.icon, "icon_state" = "[head_marking_style.icon_state]_s") if(head_marking_style.do_colouration) @@ -120,7 +120,7 @@ var/global/list/limb_icon_cache = list() overlays |= h_marking_s if(ha_style) - var/datum/sprite_accessory/head_accessory_style = head_accessory_styles_list[ha_style] + var/datum/sprite_accessory/head_accessory_style = GLOB.head_accessory_styles_list[ha_style] if(head_accessory_style && head_accessory_style.species_allowed && (dna.species.name in head_accessory_style.species_allowed)) var/icon/head_accessory_s = new/icon("icon" = head_accessory_style.icon, "icon_state" = "[head_accessory_style.icon_state]_s") if(head_accessory_style.do_colouration) @@ -128,7 +128,7 @@ var/global/list/limb_icon_cache = list() overlays |= head_accessory_s if(f_style) - var/datum/sprite_accessory/facial_hair_style = facial_hair_styles_list[f_style] + var/datum/sprite_accessory/facial_hair_style = GLOB.facial_hair_styles_list[f_style] if(facial_hair_style && ((facial_hair_style.species_allowed && (dna.species.name in facial_hair_style.species_allowed)) || (dna.species.bodyflags & ALL_RPARTS))) var/icon/facial_s = new/icon("icon" = facial_hair_style.icon, "icon_state" = "[facial_hair_style.icon_state]_s") if(istype(dna.species, /datum/species/slime)) // I am el worstos @@ -138,7 +138,7 @@ var/global/list/limb_icon_cache = list() overlays |= facial_s if(h_style && !(owner.head && (owner.head.flags & BLOCKHEADHAIR))) - var/datum/sprite_accessory/hair_style = hair_styles_full_list[h_style] + var/datum/sprite_accessory/hair_style = GLOB.hair_styles_full_list[h_style] if(hair_style && ((dna.species.name in hair_style.species_allowed) || (dna.species.bodyflags & ALL_RPARTS))) var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s") if(istype(dna.species, /datum/species/slime)) // I am el worstos diff --git a/code/modules/surgery/organs/subtypes/standard.dm b/code/modules/surgery/organs/subtypes/standard.dm index e04c27284ae..831f80331d4 100644 --- a/code/modules/surgery/organs/subtypes/standard.dm +++ b/code/modules/surgery/organs/subtypes/standard.dm @@ -211,8 +211,8 @@ disfigure() /obj/item/organ/external/head/proc/handle_alt_icon() - if(alt_head && alt_heads_list[alt_head]) - var/datum/sprite_accessory/alt_heads/alternate_head = alt_heads_list[alt_head] + if(alt_head && GLOB.alt_heads_list[alt_head]) + var/datum/sprite_accessory/alt_heads/alternate_head = GLOB.alt_heads_list[alt_head] if(alternate_head.icon_state) icon_name = alternate_head.icon_state else //If alternate_head.icon_state doesn't exist, that means alternate_head is "None", so default icon_name back to "head". diff --git a/code/modules/surgery/surgery.dm b/code/modules/surgery/surgery.dm index 8d201f32897..f8272b4f9ae 100644 --- a/code/modules/surgery/surgery.dm +++ b/code/modules/surgery/surgery.dm @@ -209,7 +209,7 @@ E.germ_level += germs /proc/sort_surgeries() - var/gap = surgery_steps.len + var/gap = GLOB.surgery_steps.len var/swapped = 1 while(gap > 1 || swapped) swapped = 0 @@ -217,9 +217,9 @@ gap = round(gap / 1.247330950103979) if(gap < 1) gap = 1 - for(var/i = 1; gap + i <= surgery_steps.len; i++) - var/datum/surgery_step/l = surgery_steps[i] //Fucking hate - var/datum/surgery_step/r = surgery_steps[gap+i] //how lists work here + for(var/i = 1; gap + i <= GLOB.surgery_steps.len; i++) + var/datum/surgery_step/l = GLOB.surgery_steps[i] //Fucking hate + var/datum/surgery_step/r = GLOB.surgery_steps[gap+i] //how lists work here if(l.priority < r.priority) - surgery_steps.Swap(i, gap + i) + GLOB.surgery_steps.Swap(i, gap + i) swapped = 1 diff --git a/code/modules/telesci/bscrystal.dm b/code/modules/telesci/bscrystal.dm index 2c955920122..250ddea1f0f 100644 --- a/code/modules/telesci/bscrystal.dm +++ b/code/modules/telesci/bscrystal.dm @@ -1,5 +1,5 @@ // Bluespace crystals, used in telescience and when crushed it will blink you to a random turf. -/obj/item/ore/bluespace_crystal +/obj/item/stack/ore/bluespace_crystal name = "bluespace crystal" desc = "A glowing bluespace crystal, not much is known about how they work. It looks very delicate." icon = 'icons/obj/telescience.dmi' @@ -13,38 +13,38 @@ toolspeed = 1 usesound = 'sound/items/Deconstruct.ogg' -/obj/item/ore/bluespace_crystal/New() +/obj/item/stack/ore/bluespace_crystal/New() ..() pixel_x = rand(-5, 5) pixel_y = rand(-5, 5) -/obj/item/ore/bluespace_crystal/attack_self(var/mob/user) +/obj/item/stack/ore/bluespace_crystal/attack_self(var/mob/user) blink_mob(user) user.drop_item() user.visible_message("[user] crushes the [src]!") qdel(src) -/obj/item/ore/bluespace_crystal/proc/blink_mob(var/mob/living/L) +/obj/item/stack/ore/bluespace_crystal/proc/blink_mob(var/mob/living/L) if(!is_teleport_allowed(L.z)) src.visible_message("[src]'s fragments begin rapidly vibrating and blink out of existence.") qdel(src) return do_teleport(L, get_turf(L), blink_range, asoundin = 'sound/effects/phasein.ogg') -/obj/item/ore/bluespace_crystal/throw_impact(atom/hit_atom) +/obj/item/stack/ore/bluespace_crystal/throw_impact(atom/hit_atom) ..() if(isliving(hit_atom)) blink_mob(hit_atom) qdel(src) -// Blueapce crystal fragments (stops point farming) -/obj/item/ore/bluespace_crystal/refined +// Bluespace crystal fragments (stops point farming) +/obj/item/stack/ore/bluespace_crystal/refined name = "refined bluespace crystal" points = 0 refined_type = null // Artifical bluespace crystal, doesn't give you much research. -/obj/item/ore/bluespace_crystal/artificial +/obj/item/stack/ore/bluespace_crystal/artificial name = "artificial bluespace crystal" desc = "An artificially made bluespace crystal, it looks delicate." origin_tech = "bluespace=3;plasmatech=4" @@ -55,7 +55,7 @@ // Polycrystals, aka stacks -var/global/list/datum/stack_recipe/bluespace_crystal_recipes = list(new/datum/stack_recipe("Breakdown into bluespace crystal", /obj/item/ore/bluespace_crystal/refined, 1)) +var/global/list/datum/stack_recipe/bluespace_crystal_recipes = list(new/datum/stack_recipe("Breakdown into bluespace crystal", /obj/item/stack/ore/bluespace_crystal/refined, 1)) /obj/item/stack/sheet/bluespace_crystal name = "bluespace polycrystal" diff --git a/code/modules/telesci/gps.dm b/code/modules/telesci/gps.dm index 467f92d095e..3672070e8f0 100644 --- a/code/modules/telesci/gps.dm +++ b/code/modules/telesci/gps.dm @@ -140,7 +140,7 @@ var/list/GPS_list = list() /obj/item/gps/visible_debug/New() . = ..() tagged = list() - fast_processing.Add(src) + GLOB.fast_processing.Add(src) /obj/item/gps/visible_debug/process() var/turf/T = get_turf(src) @@ -161,5 +161,5 @@ var/list/GPS_list = list() if(tagged) clear() tagged = null - fast_processing.Remove(src) + GLOB.fast_processing.Remove(src) . = ..() diff --git a/code/modules/telesci/telepad.dm b/code/modules/telesci/telepad.dm index 09f4ffa7920..73da331e342 100644 --- a/code/modules/telesci/telepad.dm +++ b/code/modules/telesci/telepad.dm @@ -14,8 +14,7 @@ ..() component_parts = list() component_parts += new /obj/item/circuitboard/telesci_pad(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) + component_parts += new /obj/item/stack/ore/bluespace_crystal/artificial(null, 2) component_parts += new /obj/item/stock_parts/capacitor(null) component_parts += new /obj/item/stock_parts/console_screen(null) component_parts += new /obj/item/stack/cable_coil(null, 1) @@ -25,8 +24,7 @@ ..() component_parts = list() component_parts += new /obj/item/circuitboard/telesci_pad(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) - component_parts += new /obj/item/ore/bluespace_crystal/artificial(null) + component_parts += new /obj/item/stack/ore/bluespace_crystal/artificial(null, 2) component_parts += new /obj/item/stock_parts/capacitor/super(null) component_parts += new /obj/item/stock_parts/console_screen(null) component_parts += new /obj/item/stack/cable_coil(null, 1) diff --git a/code/modules/telesci/telesci_computer.dm b/code/modules/telesci/telesci_computer.dm index f0f1654ac30..2e3cd109062 100644 --- a/code/modules/telesci/telesci_computer.dm +++ b/code/modules/telesci/telesci_computer.dm @@ -26,9 +26,8 @@ var/teleport_cooldown = 0 // every index requires a bluespace crystal var/list/power_options = list(5, 10, 20, 25, 30, 40, 50, 80) var/teleporting = 0 - var/starting_crystals = 0 + var/crystals = 0 var/max_crystals = 4 - var/list/crystals = list() var/obj/item/gps/inserted_gps /obj/machinery/computer/telescience/New() @@ -44,29 +43,27 @@ /obj/machinery/computer/telescience/examine(mob/user) ..(user) - to_chat(user, "There are [crystals.len ? crystals.len : "no"] bluespace crystal\s in the crystal slots.") + to_chat(user, "There are [crystals ? crystals : "no"] bluespace crystal\s in the crystal slots.") /obj/machinery/computer/telescience/Initialize() ..() - for(var/i = 1; i <= starting_crystals; i++) - crystals += new /obj/item/ore/bluespace_crystal/artificial(null) // starting crystals /obj/machinery/computer/telescience/attackby(obj/item/W, mob/user, params) - if(istype(W, /obj/item/ore/bluespace_crystal)) - if(crystals.len >= max_crystals) + if(istype(W, /obj/item/stack/ore/bluespace_crystal)) + var/obj/item/stack/ore/bluespace_crystal/B = W + if(crystals >= max_crystals) to_chat(user, "There are not enough crystal slots.") return - user.drop_item() - crystals += W - W.loc = null - user.visible_message("[user] inserts [W] into \the [src]'s crystal slot.") + crystals += 1 + user.visible_message("[user] inserts a [B.singular_name] into [src]'s crystal slot.") + B.use(1) updateUsrDialog() else if(istype(W, /obj/item/gps)) if(!inserted_gps) inserted_gps = W user.unEquip(W) W.loc = src - user.visible_message("[user] inserts [W] into \the [src]'s GPS device slot.") + user.visible_message("[user] inserts [W] into [src]'s GPS device slot.") updateUsrDialog() else if(istype(W, /obj/item/multitool)) var/obj/item/multitool/M = W @@ -115,7 +112,7 @@ t += "
" for(var/i = 1; i <= power_options.len; i++) - if(crystals.len + telepad.efficiency < i) + if(crystals + telepad.efficiency < i) t += "[power_options[i]]" continue if(power == power_options[i]) @@ -322,11 +319,11 @@ return /obj/machinery/computer/telescience/proc/eject() - - for(var/obj/item/I in crystals) - I.loc = loc - I.pixel_y = -9 - crystals -= I + var/to_eject + for(var/i in 1 to crystals) + to_eject += 1 + crystals -= 1 + new /obj/item/stack/ore/bluespace_crystal/artificial(drop_location(), to_eject) power = 0 /obj/machinery/computer/telescience/Topic(href, href_list) @@ -355,7 +352,7 @@ var/index = href_list["setpower"] index = text2num(index) if(index != null && power_options[index]) - if(crystals.len + telepad.efficiency >= index) + if(crystals + telepad.efficiency >= index) power = power_options[index] if(href_list["setz"]) diff --git a/code/modules/vr/vr_controller.dm b/code/modules/vr/vr_controller.dm index 564291b2999..30b33e0baa3 100644 --- a/code/modules/vr/vr_controller.dm +++ b/code/modules/vr/vr_controller.dm @@ -20,7 +20,7 @@ proc/make_vr_room(name, template, expires) vr_rooms[R.name] = R R.template.load(locate(R.chunk.x,R.chunk.y,R.chunk.zpos), centered = FALSE) - for(var/atom/landmark in R.chunk.search_chunk(landmarks_list)) + for(var/atom/landmark in R.chunk.search_chunk(GLOB.landmarks_list)) if(landmark.name == "avatarspawn") R.spawn_points.Add(landmark) diff --git a/html/changelog.html b/html/changelog.html index 4332a0644bb..1d19c855ad3 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -56,6 +56,48 @@ -->
+

12 October 2018

+

Alonefromhell updated:

+
    +
  • META - Cargo shuttle blast doors now reacts to the right button.
  • +
  • META - Cargo shuttle airlocks now bolt properly.
  • +
  • META - Cargo shuttle flaps are now airtight. All hail Cargonia.
  • +
+

variableundefined updated:

+
    +
  • Ore now represented by stack that holds up to 50 items. Should reduce lag with ORM greatly.
  • +
  • Satchel can only carry ten items instead of 50 items. You should end up carrying more ore in total however
  • +
  • Fire acting on ore means they would be refined with 50% efficiency.
  • +
  • Stack merges automatically if dropped on the floor, or a new stack is created. This doesn't happens on your body.
  • +
  • They also merge if you drag them over eachother.
  • +
  • Alt-click split a stack
  • +
  • You can throw sand into people's eyes! Pocket sand!
  • +
  • Phazon take 5 bluespace crystal to construct now instead of 1. remove: Transfer prompt when you click on a stack of the same type with a stack
  • +
+ +

11 October 2018

+

Citinited updated:

+
    +
  • Fixes an oversight in autopsy report drawer's description.
  • +
+

Farie82 updated:

+
    +
  • NPC's now initialise correctly. Removing a lot of runtime errors.
  • +
+

Kyep updated:

+
    +
  • Fixed the admin ERT panel not working correctly if the admin using it was playing as a carbon mob.
  • +
+

Stork Industries updated:

+
    +
  • Fixes "Arachno-Man's" boots
  • +
+

Triiodine updated:

+
    +
  • SLOT_MASK from necklaces.
  • +
  • thatdanguy23's fluff item
  • +
+

10 October 2018

Alonefromhell updated:

    @@ -64,6 +106,8 @@

    Birdtalon updated:

    • Small runtime in tickets.dm
    • +
    • Mulebot teleportation exploit.
    • +
    • Iron sand icons now render correctly.

    Citinited updated:

      @@ -71,6 +115,20 @@
    • Examining airlocks displays the proper icon now
    • Holopads don't work when unanchored any more.
    +

    Purpose updated:

    +
      +
    • Fixes a few broken tiles in maintenance, by breaking those tiles properly.
    • +
    +

    Purpose & AndrewMontagne updated:

    +
      +
    • New grimy dirt sprites.
    • +
    • Dirty tiles now get dirtier if neighbouring tiles are also dirty.
    • +
    +

    Triiodine updated:

    +
      +
    • new sprites for cup-chicken soup, icecups, weight loss shakes.
    • +
    • cup to can of chicken soup.
    • +

    Ty-Omaha updated:

    • Fixes PAIs
    • @@ -80,6 +138,11 @@
      • added Grey sprite for psysuit, made by dumbdumb
      +

      tigercat2000 updated:

      +
        +
      • Hovering over an inventory slot now shows an indicator for if that item can go in that slot or not. Pretty!
      • +
      • SSOverlays has been added, but not implemented!
      • +

      09 October 2018

      Alonefromhell updated:

      diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index d35eabbaf68..4a3974e3afd 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -7400,13 +7400,58 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. - bugfix: You should no longer be able to relight a burned match by using a shoe. Birdtalon: - bugfix: Small runtime in tickets.dm + - bugfix: Mulebot teleportation exploit. + - bugfix: Iron sand icons now render correctly. Citinited: - bugfix: Emagging a locker will keep the original description instead of telling you it was emagged twice. - bugfix: Examining airlocks displays the proper icon now - bugfix: Holopads don't work when unanchored any more. + Purpose: + - bugfix: Fixes a few broken tiles in maintenance, by breaking those tiles properly. + Purpose & AndrewMontagne: + - rscadd: New grimy dirt sprites. + - rscadd: Dirty tiles now get dirtier if neighbouring tiles are also dirty. + Triiodine: + - rscadd: new sprites for cup-chicken soup, icecups, weight loss shakes. + - tweak: cup to can of chicken soup. Ty-Omaha: - bugfix: Fixes PAIs - bugfix: Ambulances work again Warior4356: - imageadd: added Grey sprite for psysuit, made by dumbdumb + tigercat2000: + - rscadd: Hovering over an inventory slot now shows an indicator for if that item + can go in that slot or not. Pretty! + - wip: SSOverlays has been added, but not implemented! +2018-10-11: + Citinited: + - bugfix: Fixes an oversight in autopsy report drawer's description. + Farie82: + - bugfix: NPC's now initialise correctly. Removing a lot of runtime errors. + Kyep: + - bugfix: Fixed the admin ERT panel not working correctly if the admin using it + was playing as a carbon mob. + Stork Industries: + - bugfix: Fixes "Arachno-Man's" boots + Triiodine: + - rscdel: SLOT_MASK from necklaces. + - rscadd: thatdanguy23's fluff item +2018-10-12: + Alonefromhell: + - bugfix: META - Cargo shuttle blast doors now reacts to the right button. + - bugfix: META - Cargo shuttle airlocks now bolt properly. + - bugfix: META - Cargo shuttle flaps are now airtight. All hail Cargonia. + variableundefined: + - tweak: Ore now represented by stack that holds up to 50 items. Should reduce lag + with ORM greatly. + - tweak: Satchel can only carry ten items instead of 50 items. You should end up + carrying more ore in total however + - rscadd: Fire acting on ore means they would be refined with 50% efficiency. + - rscadd: Stack merges automatically if dropped on the floor, or a new stack is + created. This doesn't happens on your body. + - rscadd: They also merge if you drag them over eachother. + - rscadd: Alt-click split a stack + - rscadd: You can throw sand into people's eyes! Pocket sand! + - tweak: 'Phazon take 5 bluespace crystal to construct now instead of 1. remove: + Transfer prompt when you click on a stack of the same type with a stack' diff --git a/html/changelogs/AutoChangeLog-pr-9677.yml b/html/changelogs/AutoChangeLog-pr-9677.yml new file mode 100644 index 00000000000..ea12e7e55e3 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9677.yml @@ -0,0 +1,4 @@ +author: "DesolateG" +delete-after: True +changes: + - tweak: "Refactors global var lists to use the global subsystem." diff --git a/html/changelogs/AutoChangeLog-pr-9776.yml b/html/changelogs/AutoChangeLog-pr-9776.yml deleted file mode 100644 index 4dd219cfa05..00000000000 --- a/html/changelogs/AutoChangeLog-pr-9776.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "tigercat2000" -delete-after: True -changes: - - rscadd: "Hovering over an inventory slot now shows an indicator for if that item can go in that slot or not. Pretty!" - - wip: "SSOverlays has been added, but not implemented!" diff --git a/html/changelogs/AutoChangeLog-pr-9790.yml b/html/changelogs/AutoChangeLog-pr-9790.yml deleted file mode 100644 index d972804fda8..00000000000 --- a/html/changelogs/AutoChangeLog-pr-9790.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Purpose" -delete-after: True -changes: - - bugfix: "Fixes a few broken tiles in maintenance, by breaking those tiles properly." diff --git a/html/changelogs/AutoChangeLog-pr-9815.yml b/html/changelogs/AutoChangeLog-pr-9815.yml new file mode 100644 index 00000000000..1440dc00ab4 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9815.yml @@ -0,0 +1,4 @@ +author: "TDSSS" +delete-after: True +changes: + - bugfix: "Removed Skrell discrimination, allows ! character in IDs (agent IDs or made via ID computer)" diff --git a/html/changelogs/AutoChangeLog-pr-9817.yml b/html/changelogs/AutoChangeLog-pr-9817.yml new file mode 100644 index 00000000000..49b105caa1e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9817.yml @@ -0,0 +1,5 @@ +author: "Purpose" +delete-after: True +changes: + - bugfix: "Fixes stool's unique suicide message." + - bugfix: "Fixes rollerbeds no longer going through plastic flaps." diff --git a/html/changelogs/AutoChangeLog-pr-9818.yml b/html/changelogs/AutoChangeLog-pr-9818.yml new file mode 100644 index 00000000000..b031aaeb7a5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9818.yml @@ -0,0 +1,6 @@ +author: "Farie82" +delete-after: True +changes: + - rscadd: "Added the on_give proc for items. Was needed for the fixes" + - bugfix: "Giving two handed items like the DIY chainsaw and potted plants now works correctly" + - bugfix: "The DIY chainsaw, doomslayer chainsaw and the potted plants now do damage when given to somebody else and when picked up while the chainsaw was on." diff --git a/html/changelogs/AutoChangeLog-pr-9819.yml b/html/changelogs/AutoChangeLog-pr-9819.yml new file mode 100644 index 00000000000..937b4deacbe --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9819.yml @@ -0,0 +1,4 @@ +author: "Purpose" +delete-after: True +changes: + - tweak: "Cyberiad's grimy tiles are now actually dirty and cleanable." diff --git a/html/changelogs/AutoChangeLog-pr-9820.yml b/html/changelogs/AutoChangeLog-pr-9820.yml new file mode 100644 index 00000000000..33afd4c3702 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9820.yml @@ -0,0 +1,4 @@ +author: "Purpose" +delete-after: True +changes: + - tweak: "Delta's grimy tiles are now actually dirty and cleanable." diff --git a/html/changelogs/AutoChangeLog-pr-9821.yml b/html/changelogs/AutoChangeLog-pr-9821.yml new file mode 100644 index 00000000000..75bb220f482 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9821.yml @@ -0,0 +1,5 @@ +author: "Purpose" +delete-after: True +changes: + - bugfix: "Ironsand is now visible in the Map Maker." + - bugfix: "Away missions updated with the appropriate dirt/grime so that it is now cleanable." diff --git a/icons/effects/dirt.dmi b/icons/effects/dirt.dmi new file mode 100644 index 00000000000..5c8bc8f61a0 Binary files /dev/null and b/icons/effects/dirt.dmi differ diff --git a/icons/mob/inhands/fluff_lefthand.dmi b/icons/mob/inhands/fluff_lefthand.dmi index 9635833f580..20fc1869426 100644 Binary files a/icons/mob/inhands/fluff_lefthand.dmi and b/icons/mob/inhands/fluff_lefthand.dmi differ diff --git a/icons/mob/inhands/fluff_righthand.dmi b/icons/mob/inhands/fluff_righthand.dmi index be5280493c9..678f5190ad7 100644 Binary files a/icons/mob/inhands/fluff_righthand.dmi and b/icons/mob/inhands/fluff_righthand.dmi differ diff --git a/icons/mob/uniform.dmi b/icons/mob/uniform.dmi index bef18a0ddcc..6ba24f30489 100644 Binary files a/icons/mob/uniform.dmi and b/icons/mob/uniform.dmi differ diff --git a/icons/mob/uniform_fat.dmi b/icons/mob/uniform_fat.dmi index 19bce2646a0..a3e5dc73e4e 100644 Binary files a/icons/mob/uniform_fat.dmi and b/icons/mob/uniform_fat.dmi differ diff --git a/icons/obj/custom_items.dmi b/icons/obj/custom_items.dmi index 0d2e22eab68..ec96b276ab6 100644 Binary files a/icons/obj/custom_items.dmi and b/icons/obj/custom_items.dmi differ diff --git a/icons/obj/drinks.dmi b/icons/obj/drinks.dmi index 90c11b659b5..7792347c125 100644 Binary files a/icons/obj/drinks.dmi and b/icons/obj/drinks.dmi differ diff --git a/icons/turf/floors.dmi b/icons/turf/floors.dmi index 9a62da82286..99210d9cf88 100644 Binary files a/icons/turf/floors.dmi and b/icons/turf/floors.dmi differ diff --git a/icons/turf/floors/ironsand.dmi b/icons/turf/floors/ironsand.dmi new file mode 100644 index 00000000000..5b1d645d80f Binary files /dev/null and b/icons/turf/floors/ironsand.dmi differ