diff --git a/_maps/map_files/MetaStation.v39F.dmm b/_maps/map_files/MetaStation.v39G.dmm similarity index 97% rename from _maps/map_files/MetaStation.v39F.dmm rename to _maps/map_files/MetaStation.v39G.dmm index 49217ef76bc..91b92f4ed46 100644 --- a/_maps/map_files/MetaStation.v39F.dmm +++ b/_maps/map_files/MetaStation.v39G.dmm @@ -10,14 +10,14 @@ "aaj" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/prison) "aak" = (/obj/effect/landmark{name = "carpspawn"},/turf/space,/area/space) "aal" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless,/area/space) -"aam" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/security/processing) +"aam" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/flora/kirbyplants{desc = "A plastic potted plant."; layer = 4.1; pixel_y = 3},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "aan" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/simulated/floor/plating/airless,/area/space) "aao" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "aap" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "foreport"; name = "Fore-Port Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/space) "aaq" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/shuttle/escape_pod3/station) "aar" = (/turf/simulated/shuttle/wall{icon_state = "swall12"; dir = 2},/area/shuttle/escape_pod3/station) -"aas" = (/obj/machinery/light/small,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/security/processing) -"aat" = (/turf/simulated/floor/plating{icon_plating = "warnplate"; icon_state = "warnplate"},/area/security/processing) +"aas" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/alarm{pixel_y = 23},/obj/item/clothing/under/assistantformal,/turf/simulated/floor/wood,/area/crew_quarters/sleep) +"aat" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/alarm{pixel_y = 23},/obj/item/clothing/under/suit_jacket/burgundy,/turf/simulated/floor/carpet,/area/crew_quarters/sleep) "aau" = (/turf/simulated/shuttle/wall{icon_state = "swall_s10"; dir = 2},/area/shuttle/escape_pod3/station) "aav" = (/obj/structure/cable,/obj/machinery/power/solar{id = "foreport"; name = "Fore-Port Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/space) "aaw" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/space) @@ -30,16 +30,16 @@ "aaD" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless,/area/space) "aaE" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/space) "aaF" = (/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,/area/space) -"aaG" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/security/processing) +"aaG" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/camera{c_tag = "Labor Shuttle Control Desk"; dir = 4},/obj/machinery/computer/shuttle/labor,/obj/machinery/light{dir = 8},/obj/machinery/door_control{id = "prison release"; name = "Prison Release Lockdown"; pixel_x = -28; pixel_y = 0; req_access_txt = "2"},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aaH" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fore) "aaI" = (/obj/machinery/door/airlock/maintenance_hatch{name = "Supply Bay Bridge Access"; req_access_txt = "0"; req_one_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aaJ" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "aaK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/maintenance/fore) "aaL" = (/turf/simulated/shuttle/wall{icon_state = "swall_s9"; dir = 2},/area/shuttle/escape_pod3/station) "aaM" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/simulated/shuttle/wall{icon_state = "swall_f5"; dir = 2},/area/shuttle/escape_pod3/station) -"aaN" = (/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/security/processing) +"aaN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/maintenance{name = "Brig Maintenance"; req_access_txt = "0"; req_one_access_txt = "63;12"},/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fore) "aaO" = (/obj/structure/lattice,/turf/space,/area/solar/auxport) -"aaP" = (/obj/machinery/door/airlock/external{name = "Security External Airlock"; req_access_txt = "0"; req_one_access_txt = "1:13"},/turf/simulated/floor/plating,/area/security/processing) +"aaP" = (/obj/machinery/computer/prisoner,/obj/machinery/door_control{id = "Secure Gate"; name = "Brig Lockdown Control"; pixel_x = 25; pixel_y = -25; req_access_txt = "2"},/obj/machinery/flasher_button{id = "secentranceflasher"; name = "Brig Entrance Flash Control"; pixel_x = 24; pixel_y = -34; req_access_txt = "1"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "aaQ" = (/turf/simulated/wall,/area/security/main) "aaR" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "aaS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Storage Room"; req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/fore) @@ -48,7 +48,7 @@ "aaV" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/obj/machinery/door_control{id = "Cabin3"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/effect/decal/cleanable/cobweb2,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep) "aaW" = (/obj/machinery/vending/coffee,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "aaX" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) -"aaY" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/wood,/area/crew_quarters/sleep) +"aaY" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/obj/machinery/door/window/westleft{base_state = "right"; dir = 4; icon_state = "right"; name = "Labor Camp Desk"; req_access_txt = "0"},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aaZ" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/light/small{dir = 1},/obj/structure/table/woodentable,/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/item/weapon/lighter/zippo,/turf/simulated/floor/wood,/area/crew_quarters/sleep) "aba" = (/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,/area/space) "abb" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/prison) @@ -57,13 +57,13 @@ "abe" = (/obj/machinery/seed_extractor,/obj/machinery/light/small{dir = 8},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "abf" = (/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},/turf/simulated/floor/plating,/area/security/prison) "abg" = (/obj/machinery/biogenerator,/obj/machinery/light/small{dir = 4},/obj/machinery/camera{c_tag = "Prison Hydroponics"; network = list("SS13","Prison")},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"abh" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/shuttle/laborcamp/station) -"abi" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/processing) -"abj" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/processing) -"abk" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/computer/shuttle/labor,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 26},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/processing) -"abl" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/processing) -"abm" = (/obj/machinery/computer/prisoner,/obj/machinery/power/apc{dir = 1; name = "Prisoner Processing APC"; pixel_y = 24},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/firealarm{dir = 8; pixel_x = -26; pixel_y = 0},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/processing) -"abn" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/security/processing) +"abh" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/security/brig) +"abi" = (/obj/effect/decal/cleanable/blood,/obj/structure/stool/bed/chair,/obj/item/weapon/handcuffs,/obj/effect/decal/remains/human,/obj/item/clothing/under/soviet,/turf/simulated/floor/plating,/area/maintenance/fore) +"abj" = (/obj/machinery/computer/security{name = "Labor Camp Monitoring"; network = list("Labor")},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) +"abk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{icon_plating = "warnplate"; icon_state = "warnplate"},/area/maintenance/fore) +"abl" = (/obj/structure/closet/crate,/obj/item/weapon/handcuffs,/obj/item/bodybag,/obj/item/device/radio,/turf/simulated/floor/plating,/area/maintenance/fore) +"abm" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating{icon_plating = "warnplate"; icon_state = "warnplate"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"abn" = (/obj/structure/table,/obj/item/weapon/storage/box/prisoner,/obj/item/weapon/razor{pixel_x = -6},/obj/item/weapon/paper{desc = ""; info = "Labor Camp Facility Operation Guide

Hello there, proud operator of an NT-Sec Prisoner Rehabilitation Center. A solution to rising crime rates and falling productivity, these facilities are specifically designed for the safe, productive imprisonment of your most dangerous criminals.

To press a long-term prisoner into the service of the station, replace his equipment with prisoners' garb at one of the prison lockers, as per normal operating procedure. Before assigning a prisoner his ID, insert the ID into a prisoner management console and assign the prisoner a quota, based on the severity of his crime.
A single sheet of most materials produces five points for the prisoner, and points can be expected to be produced at a rate of about 100 per minute, though punishments as severe as forced labor should be reserved for serious crimes of sentences not less than five minutes long.
Once you have prepared the prisoner, place him in the secure northern half of the labor shuttle, and send him to the station. Once he meets his quota by feeding sheets to the stacker, he will be allowed to return to the station, and will be able to open the secure door to the prisoner release area.

In the case of dangerous prisoners, surveilance may be needed. To that end, there is a prisoner monitoring room on the mining station, equipped with a remote flasher and a lockdown button. The mine itself is patrolled by a securibot, so the nearby security records console can also be used to secure hostile prisoners on the mine."; name = "Labor Camp Operating Guide"},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "abo" = (/turf/simulated/wall,/area/security/prison) "abp" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "permacell3"; name = "Cell Shutters"; opacity = 0},/obj/machinery/door/airlock/glass{id_tag = "permabolt3"; name = "Cell 3"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "abq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall,/area/security/prison) @@ -75,7 +75,7 @@ "abw" = (/turf/simulated/wall/r_wall,/area/security/hos) "abx" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/sleep) "aby" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/sleep) -"abz" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/carpet,/area/crew_quarters/sleep) +"abz" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor,/area/security/main) "abA" = (/obj/structure/dresser,/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/carpet,/area/crew_quarters/sleep) "abB" = (/obj/machinery/light/small{dir = 1},/obj/effect/decal/cleanable/cobweb,/obj/machinery/door_control{id = "Cabin4"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = -25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/turf/simulated/floor/carpet,/area/crew_quarters/sleep) "abC" = (/turf/space,/area/solar/auxstarboard) @@ -86,9 +86,9 @@ "abH" = (/obj/structure/stool/bed,/obj/machinery/camera{c_tag = "Prison Cell 1"; network = list("SS13","Prison")},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "abI" = (/obj/structure/stool,/obj/machinery/light/small{dir = 1},/obj/machinery/door_control{id = "permabolt1"; name = "Cell Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "abJ" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/prison) -"abK" = (/obj/structure/table,/obj/item/weapon/folder/red,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/laborcamp/station) +"abK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "abL" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/space) -"abM" = (/obj/machinery/door/airlock/external{name = "Escape Pod Two"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/security/processing) +"abM" = (/obj/item/weapon/storage/box/lights/mixed,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/turf/simulated/floor/plating,/area/maintenance/fore) "abN" = (/obj/structure/stool/bed/chair,/turf/simulated/floor{icon_state = "grimy"},/area/security/main) "abO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/starboard) "abP" = (/obj/effect/spawner/lootdrop{loot = list("/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/item/weapon/cigbutt","/obj/item/trash/cheesie","/obj/item/trash/candy","/obj/item/trash/chips","/obj/item/trash/deadmouse","/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/fpmaint2{name = "Port Maintenance"}) @@ -96,7 +96,7 @@ "abR" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/structure/table/woodentable,/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1424; listening = 1; name = "Interrogation Intercom"; pixel_x = 0; pixel_y = -31},/turf/simulated/floor{icon_state = "grimy"},/area/security/main) "abS" = (/obj/structure/closet/crate/medical,/obj/item/stack/cable_coil,/turf/simulated/floor/plating,/area/maintenance/starboard) "abT" = (/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Starboard Solar Access"; req_access_txt = "10"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/starboard) -"abU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/maintenance{name = "Brig Maintenance"; req_access_txt = "0"; req_one_access_txt = "63;12"},/turf/simulated/floor/plating,/area/maintenance/fore) +"abU" = (/obj/machinery/bot/cleanbot{name = "Mopfficer Sweepsky"; on = 0},/turf/simulated/floor/plating,/area/maintenance/fore) "abV" = (/obj/structure/closet,/obj/item/weapon/contraband/poster,/obj/item/weapon/contraband/poster,/obj/item/weapon/contraband/poster,/obj/item/weapon/contraband/poster,/obj/item/weapon/contraband/poster,/turf/simulated/floor/plating,/area/maintenance/starboard) "abW" = (/obj/structure/closet,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/maintenance/starboard) "abX" = (/obj/structure/rack,/obj/item/clothing/suit/hazardvest,/turf/simulated/floor/plating,/area/maintenance/fore) @@ -120,13 +120,13 @@ "acp" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "acq" = (/obj/machinery/door/airlock/glass{name = "space-bridge access"},/obj/machinery/door_control{id = "supplybridge"; name = "Shuttle Bay Space Bridge Control"; pixel_x = 0; pixel_y = 27; req_access_txt = "0"},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "acr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"acs" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/sleeping_agent,/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"acs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/fore) "act" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 3"; req_access_txt = "2"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"acu" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"acu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/fore) "acv" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 1"; req_access_txt = "2"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"acw" = (/obj/structure/table,/obj/item/device/radio/electropack,/obj/item/weapon/storage/box/bodybags,/obj/item/device/assembly/signaler,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 26},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"acx" = (/obj/structure/table,/obj/item/clothing/suit/straight_jacket,/obj/item/clothing/glasses/sunglasses/blindfold,/obj/item/clothing/mask/muzzle,/obj/machinery/light/small{dir = 1},/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Prisoner Education Chamber APC"; pixel_y = 24},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"acy" = (/obj/structure/closet/secure_closet/injection,/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"acw" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/security/brig) +"acx" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/rack,/obj/item/weapon/storage/firstaid/regular,/obj/item/device/healthanalyzer{pixel_y = -2},/obj/machinery/camera{c_tag = "Brig - Infirmary"; dir = 1; network = list("SS13")},/obj/item/clothing/under/rank/medical/purple{pixel_y = -4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 6; icon_state = "whitered"},/area/security/brig) +"acy" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/brig) "acz" = (/turf/simulated/wall/r_wall,/area/prison/solitary{name = "Prisoner Education Chamber"}) "acA" = (/obj/machinery/door/airlock/maintenance{name = "Storage Room"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/fore) "acB" = (/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) @@ -134,12 +134,12 @@ "acD" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "acE" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "acF" = (/obj/effect/landmark/start{name = "Warden"},/obj/structure/stool/bed/chair/office/dark,/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) -"acG" = (/obj/machinery/computer/prisoner,/obj/machinery/door_control{id = "Secure Gate"; name = "Brig Lockdown"; pixel_x = 25; pixel_y = -25; req_access_txt = "2"},/obj/machinery/flasher_button{id = "secentranceflasher"; name = "Brig Entrance Flasher"; pixel_x = 24; pixel_y = -34; req_access_txt = "1"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) +"acG" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/fore) "acH" = (/obj/structure/table,/obj/item/weapon/paper{desc = ""; info = "Labor Camp Facility Operation Guide

Hello there, proud operator of an NT-Sec Prisoner Rehabilitation Center. A solution to rising crime rates and falling productivity, these facilities are specifically designed for the safe, productive imprisonment of your most dangerous criminals.

To press a long-term prisoner into the service of the station, replace his equipment with prisoners' garb at one of the prison lockers, as per normal operating procedure. Before assigning a prisoner his ID, insert the ID into a prisoner management console and assign the prisoner a quota, based on the severity of his crime.
A single sheet of most materials produces five points for the prisoner, and points can be expected to be produced at a rate of about 100 per minute, though punishments as severe as forced labor should be reserved for serious crimes of sentences not less than five minutes long.
Once you have prepared the prisoner, place him in the secure northern half of the labor shuttle, and send him to the station. Once he meets his quota by feeding sheets to the stacker, he will be allowed to return to the station, and will be able to open the secure door to the prisoner release area.

In the case of dangerous prisoners, surveilance may be needed. To that end, there is a prisoner monitoring room on the mining station, equipped with a remote flasher and a lockdown button. The mine itself is patrolled by a securibot, so the nearby security records console can also be used to secure hostile prisoners on the mine."; name = "Labor Camp Operating Guide"},/obj/item/weapon/folder/red,/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; dir = 1; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = -30},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "acI" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/warden) "acJ" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/structure/table/reinforced,/obj/machinery/light_switch{pixel_x = -24; pixel_y = -24},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "acK" = (/turf/simulated/wall,/area/prison/solitary{name = "Prisoner Education Chamber"}) -"acL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/brig) +"acL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fore) "acM" = (/obj/machinery/door/airlock/external{req_access_txt = "13"},/turf/simulated/floor/plating,/area/maintenance/starboard) "acN" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "foreport"; name = "Fore-Port Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/auxport) "acO" = (/obj/structure/cable,/turf/simulated/floor/plating/airless,/area/solar/auxport) @@ -235,14 +235,14 @@ "aeA" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "aeB" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "aeC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"aeD" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/laborcamp/station) +"aeD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/fore) "aeE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "aeF" = (/obj/structure/closet/secure_closet/warden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "aeG" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/device/taperecorder{pixel_x = -4; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/security/main) "aeH" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/device/flash,/turf/simulated/floor,/area/security/main) "aeI" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "aeJ" = (/obj/machinery/door/airlock/maintenance{name = "Storage Room"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"aeK" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/maintenance/fore) +"aeK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aeL" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/obj/item/weapon/tank/air,/turf/simulated/floor/plating,/area/maintenance/fore) "aeM" = (/turf/simulated/wall,/area/security/brig) "aeN" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) @@ -260,7 +260,7 @@ "aeZ" = (/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},/turf/simulated/floor/plating,/area/maintenance/starboard) "afa" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Interrogation Monitoring"; req_access = null; req_access_txt = "0"; req_one_access_txt = "1;4"},/turf/simulated/floor{icon_state = "grimy"},/area/security/main) "afb" = (/obj/machinery/disposal,/obj/machinery/alarm{pixel_y = 28},/obj/structure/disposalpipe/trunk,/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) -"afc" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/turf/simulated/floor,/area/security/main) +"afc" = (/obj/machinery/door/airlock/maintenance{icon = 'icons/obj/doors/Doorint.dmi'; name = "Brig Emergency Storage"; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/fore) "afd" = (/obj/item/weapon/cigbutt,/obj/structure/sign/poster{pixel_y = -32},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "afe" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 9},/area/maintenance/fore) "aff" = (/obj/structure/table/reinforced,/obj/item/weapon/paper,/turf/simulated/floor,/area/security/main) @@ -279,12 +279,12 @@ "afs" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/machinery/newscaster/security_unit{pixel_x = 32; pixel_y = 1},/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "aft" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "redfull"},/area/security/main) "afu" = (/obj/machinery/light_construct/small,/obj/item/weapon/toolbox_tiles_sensor,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"afv" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"afv" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "whitered"},/area/security/brig) "afw" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Evidence Storage"; req_access_txt = "3"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "delivery"},/area/security/warden) -"afx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plating,/area/maintenance/fore) +"afx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small,/turf/simulated/floor{dir = 10; icon_state = "whitered"},/area/security/brig) "afy" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "afz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) -"afA" = (/obj/structure/stool/bed/roller,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor{icon_state = "white"},/area/security/brig) +"afA" = (/obj/structure/table/reinforced,/obj/item/weapon/folder,/obj/item/weapon/folder,/obj/machinery/door/window/westleft{base_state = "right"; dir = 2; icon_state = "right"; name = "windoor"; req_access_txt = "0"},/obj/item/weapon/book/manual/wiki/engineering_hacking,/obj/item/device/tape/random,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "afB" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "afC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "afD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) @@ -303,20 +303,20 @@ "afQ" = (/turf/simulated/wall/r_wall,/area/security/brig) "afR" = (/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "afS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/reagent_dispensers/peppertank{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) -"afT" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/rack,/obj/item/weapon/storage/firstaid/regular,/obj/item/device/healthanalyzer{pixel_y = -2},/obj/machinery/camera{c_tag = "Brig - Infirmary"; dir = 1; network = list("SS13")},/obj/item/clothing/under/rank/medical/purple{pixel_y = -4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{dir = 6; icon_state = "whitered"},/area/security/brig) +"afT" = (/obj/structure/stool/bed/roller,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "white"},/area/security/brig) "afU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "afV" = (/obj/structure/closet/crate,/obj/item/weapon/coin/silver,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "afW" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/security/brig) -"afX" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor{icon_state = "white"},/area/security/brig) +"afX" = (/turf/simulated/floor{dir = 8; icon_state = "whitered"; tag = "icon-whitehall (WEST)"},/area/security/brig) "afY" = (/obj/structure/table,/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/obj/machinery/light{dir = 1},/obj/machinery/camera{c_tag = "Warden's Office"; dir = 2; network = list("SS13")},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "afZ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/fore) "aga" = (/obj/structure/table,/obj/item/weapon/storage/box/evidence,/obj/item/weapon/storage/box/evidence,/obj/item/weapon/storage/box/evidence,/obj/item/weapon/hand_labeler,/turf/simulated/floor{tag = "icon-vault (SOUTHEAST)"; icon_state = "vault"; dir = 6},/area/security/warden) "agb" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/warden) "agc" = (/obj/structure/filingcabinet/security{pixel_x = 4},/obj/machinery/firealarm{dir = 4; pixel_x = 28},/turf/simulated/floor{tag = "icon-vault (SOUTHWEST)"; icon_state = "vault"; dir = 10},/area/security/warden) -"agd" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/brig) +"agd" = (/obj/structure/morgue,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "age" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/brig) -"agf" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor,/area/security/brig) -"agg" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) +"agf" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor,/area/security/brig) +"agg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) "agh" = (/obj/structure/table/reinforced,/obj/item/weapon/crowbar,/obj/item/weapon/screwdriver{pixel_y = 10},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/door_control{id = "Prison Gate"; name = "Prison Wing Lockdown"; pixel_x = -26; pixel_y = 26; req_access_txt = "2"},/obj/item/weapon/wirecutters,/obj/item/device/radio/off,/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "agi" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "redfull"},/area/security/main) "agj" = (/obj/structure/rack,/obj/item/weapon/storage/box/handcuffs,/obj/item/weapon/storage/box/seccarts{pixel_x = -3; pixel_y = -2},/obj/machinery/light/small,/turf/simulated/floor{icon_state = "bot"},/area/security/warden) @@ -329,14 +329,14 @@ "agq" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "agr" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "ags" = (/obj/machinery/hologram/holopad,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "redfull"},/area/security/main) -"agt" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/turf/simulated/floor{icon_state = "whitered"},/area/security/brig) +"agt" = (/obj/structure/table,/obj/item/stack/medical/ointment{pixel_x = 3; pixel_y = -2},/obj/item/stack/medical/bruise_pack{pixel_x = -3; pixel_y = 2},/obj/item/weapon/reagent_containers/syringe/inaprovaline,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/item/weapon/reagent_containers/syringe{pixel_x = -1; pixel_y = 3},/turf/simulated/floor{dir = 10; icon_state = "whitered"},/area/security/brig) "agu" = (/turf/simulated/floor{icon_state = "redfull"},/area/security/main) "agv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "agw" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor{icon_state = "redfull"},/area/security/main) "agx" = (/obj/structure/table,/obj/item/weapon/handcuffs,/obj/item/device/radio/off,/turf/simulated/floor,/area/security/main) "agy" = (/obj/machinery/door/firedoor,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/glass_security{name = "Secure Gear Storage"; req_access_txt = "3"},/turf/simulated/floor{icon_state = "delivery"},/area/security/warden) "agz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"agA" = (/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/turf/simulated/floor/plating,/area/maintenance/fore) +"agA" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor{dir = 8; icon_state = "whiteredcorner"},/area/security/brig) "agB" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Firing Range"; req_access_txt = "0"; req_one_access_txt = "1;4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/range) "agC" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/machinery/light_construct/small{dir = 1},/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/maintenance/starboard) "agD" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/obj/item/weapon/packageWrap,/turf/simulated/floor,/area/security/main) @@ -350,8 +350,8 @@ "agL" = (/obj/structure/stool/bed/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 4; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "agM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "agN" = (/obj/structure/stool/bed/chair{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"agO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) -"agP" = (/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/maintenance/fore) +"agO" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor,/area/security/brig) +"agP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "red"; dir = 5},/area/security/brig) "agQ" = (/obj/structure/rack,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/maintenance/fore) "agR" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/fore) "agS" = (/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/fpmaint2{name = "Port Maintenance"}) @@ -359,8 +359,8 @@ "agU" = (/turf/space,/area/maintenance/auxsolarstarboard) "agV" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "agW" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) -"agX" = (/turf/simulated/floor{dir = 10; icon_state = "whitered"},/area/security/brig) -"agY" = (/obj/structure/morgue,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/brig) +"agX" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/tie/red{pixel_x = -5; pixel_y = 3},/obj/item/clothing/tie/horrible,/obj/item/clothing/tie/blue{pixel_x = 5; pixel_y = -2},/obj/item/weapon/storage/secure/safe{pixel_x = 35; pixel_y = 0},/obj/item/weapon/dice/d8,/obj/item/device/healthanalyzer,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"agY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Labor Camp Shuttle Airlock"; req_access_txt = "0"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "agZ" = (/obj/machinery/door/window/westleft{base_state = "right"; dir = 4; icon_state = "right"; name = "Infirmary"; req_access_txt = "0"},/turf/simulated/floor{dir = 4; icon_state = "whitered"; tag = "icon-whitehall (WEST)"},/area/security/brig) "aha" = (/turf/simulated/shuttle/wall{icon_state = "swall_s5"; dir = 2},/area/shuttle/laborcamp/station) "ahb" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) @@ -371,18 +371,18 @@ "ahg" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/warden) "ahh" = (/obj/machinery/light{dir = 8},/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{icon_state = "showroomfloor"},/area/security/warden) "ahi" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/obj/item/device/flash,/turf/simulated/floor,/area/security/main) -"ahj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 10; icon_state = "whitered"},/area/security/brig) +"ahj" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/hallway/primary/fore) "ahk" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/red{pixel_x = 3},/obj/item/weapon/folder/blue{pixel_x = -2; pixel_y = 3},/turf/simulated/floor,/area/security/main) -"ahl" = (/obj/structure/table/reinforced,/obj/item/weapon/folder,/obj/item/weapon/folder,/obj/machinery/door/window/westleft{base_state = "right"; dir = 2; icon_state = "right"; name = "windoor"; req_access_txt = "0"},/obj/item/weapon/book/manual/wiki/engineering_hacking,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"ahl" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "ahm" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/shuttle/laborcamp/station) "ahn" = (/turf/simulated/wall/r_wall,/area/security/range) "aho" = (/obj/machinery/power/apc{cell_type = 5000; dir = 4; name = "Security Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable/yellow,/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/main) "ahp" = (/turf/simulated/shuttle/wall{icon_state = "swall_s9"; dir = 2},/area/shuttle/laborcamp/station) -"ahq" = (/turf/simulated/wall,/area/security/processing) +"ahq" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/alarm{pixel_y = 23},/obj/item/clothing/under/suit_jacket/navy,/turf/simulated/floor/carpet,/area/crew_quarters/sleep) "ahr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"ahs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/fore) +"ahs" = (/obj/machinery/firealarm{dir = 4; pixel_x = 28},/obj/machinery/light/small{dir = 4},/obj/machinery/camera{c_tag = "Labor Shuttle Dock"; dir = 8; network = list("SS13")},/obj/machinery/flasher{id = "PRelease"; pixel_x = 24; pixel_y = 20},/obj/machinery/door_control{id = "prison release"; name = "Prison Release Lockdown"; pixel_x = 28; pixel_y = -25; req_access_txt = "2"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "aht" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "redfull"},/area/security/main) -"ahu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whiteredcorner"},/area/security/brig) +"ahu" = (/obj/machinery/door/airlock/external{name = "Labor Camp Shuttle Airlock"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "ahv" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/simulated/floor,/area/security/main) "ahw" = (/turf/simulated/wall,/area/security/range) "ahx" = (/obj/item/target,/obj/item/target,/obj/item/target/alien,/obj/item/target/alien,/obj/item/target/alien,/obj/item/target/syndicate,/obj/item/target/syndicate,/obj/item/target/syndicate,/obj/structure/closet/crate/secure{desc = "A secure crate containing various materials for building a customised test-site."; name = "Firing Range Gear Crate"; req_access_txt = "1"},/obj/machinery/power/apc{cell_type = 2500; dir = 4; name = "Shooting Range APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/security/range) @@ -392,7 +392,7 @@ "ahB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/warden) "ahC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) "ahD" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/brig) -"ahE" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "red"; dir = 5},/area/security/brig) +"ahE" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) "ahF" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "1;4;38;12"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) "ahG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "red"; dir = 9},/area/security/brig) "ahH" = (/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/main) @@ -400,7 +400,7 @@ "ahJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) "ahK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor,/area/security/warden) "ahL" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/extinguisher,/turf/simulated/floor/plating,/area/maintenance/fore) -"ahM" = (/obj/machinery/door/airlock/maintenance{icon = 'icons/obj/doors/Doorint.dmi'; name = "Brig Emergency Storage"; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) +"ahM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/sign/pods{pixel_x = 30; pixel_y = 0},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/sleep) "ahN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "ahO" = (/obj/machinery/door/airlock/maintenance{name = "maintenance access"; req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/starboard) "ahP" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) @@ -413,7 +413,7 @@ "ahW" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/main) "ahX" = (/obj/structure/closet/crate,/turf/simulated/shuttle/floor,/area/shuttle/laborcamp/station) "ahY" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"ahZ" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/emcloset,/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"ahZ" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/shuttle/floor,/area/shuttle/laborcamp/station) "aia" = (/obj/structure/closet/emcloset,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aib" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plating,/area/maintenance/fore) "aic" = (/obj/structure/closet/firecloset,/turf/simulated/floor/plating,/area/maintenance/fore) @@ -457,7 +457,7 @@ "aiO" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless,/area/maintenance/auxsolarstarboard) "aiP" = (/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aiQ" = (/obj/structure/rack,/obj/item/clothing/suit/hazardvest,/turf/simulated/floor/plating,/area/maintenance/starboard) -"aiR" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/brig) +"aiR" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/shuttle/laborcamp/station) "aiS" = (/obj/machinery/vending/cigarette,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aiT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aiU" = (/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) @@ -465,7 +465,7 @@ "aiW" = (/turf/simulated/floor/plating{tag = "icon-platingdmg3"; icon_state = "platingdmg3"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aiX" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aiY" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor{dir = 4; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"aiZ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/simulated/floor/plating,/area/space) +"aiZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) "aja" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/shuttle/escape_pod2/station) "ajb" = (/obj/structure/stool/bed/chair{dir = 1},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 32; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod2/station) "ajc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) @@ -479,7 +479,7 @@ "ajk" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/simulated/floor,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "ajl" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/brig) "ajm" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/brig) -"ajn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating{tag = "icon-platingdmg1"; icon_state = "platingdmg1"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"ajn" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/hallway/primary/fore) "ajo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/brig) "ajp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/brig) "ajq" = (/obj/machinery/conveyor{dir = 8; id = "garbage"},/obj/machinery/recycler,/obj/structure/sign/securearea{name = "\improper STAY CLEAR HEAVY MACHINERY"; pixel_y = -32},/turf/simulated/floor/plating,/area/maintenance/disposal) @@ -531,7 +531,7 @@ "akk" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/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{icon_state = "red"; dir = 1},/area/security/main) "akl" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/fore) "akm" = (/obj/structure/closet{name = "Evidence Closet 5"},/obj/item/weapon/storage/backpack{name = "Evidence Bag 5"},/turf/simulated/floor{tag = "icon-vault (EAST)"; icon_state = "vault"; dir = 4},/area/security/warden) -"akn" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"akn" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/hallway/primary/fore) "ako" = (/obj/machinery/deployable/barrier,/obj/machinery/alarm{pixel_y = 28},/turf/simulated/floor{icon_state = "bot"},/area/security/warden) "akp" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/warden) "akq" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) @@ -546,28 +546,28 @@ "akz" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "red"; dir = 5},/area/security/main) "akA" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/brig) "akB" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/simulated/floor/plating,/area/security/brig) -"akC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small,/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/brig) -"akD" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/prison/solitary{name = "Prisoner Education Chamber"}) +"akC" = (/obj/structure/disposalpipe/segment{dir = 4},/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},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"akD" = (/obj/machinery/alarm{pixel_y = 28},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "akE" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "akF" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "akG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "akH" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "akI" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) -"akJ" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/prison/solitary{name = "Prisoner Education Chamber"}) +"akJ" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "akK" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/belt{desc = "Can hold quite a lot of stuff."; name = "mutli-belt"},/obj/item/clothing/gloves/fyellow,/turf/simulated/floor/plating,/area/maintenance/starboard) "akL" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/brig) "akM" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/brig) "akN" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/brig) "akO" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "akP" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/brig) -"akQ" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/yellow,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/prison/solitary{name = "Prisoner Education Chamber"}) -"akR" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/prison/solitary{name = "Prisoner Education Chamber"}) +"akQ" = (/obj/structure/table,/obj/item/clothing/under/suit_jacket/female{pixel_x = 3; pixel_y = 1},/obj/item/clothing/under/suit_jacket/really_black{pixel_x = -2; pixel_y = 0},/obj/machinery/light/small{dir = 1},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 28},/obj/item/clothing/tie/waistcoat,/obj/item/clothing/suit/lawyer/blackjacket,/obj/item/clothing/under/suit_jacket/red,/obj/item/clothing/tie/black,/obj/item/clothing/under/lawyer/blacksuit,/turf/simulated/floor{icon_state = "barber"},/area/crew_quarters/sleep) +"akR" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) "akS" = (/obj/structure/closet{name = "Evidence Closet 2"},/obj/item/weapon/storage/backpack{name = "Evidence Bag 2"},/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/turf/simulated/floor{tag = "icon-vault (NORTH)"; icon_state = "vault"; dir = 1},/area/security/warden) "akT" = (/turf/simulated/wall/r_wall,/area/maintenance/auxsolarport) "akU" = (/obj/machinery/power/solar_control{id = "foreport"; name = "Fore Port Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "akV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "akW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"akX" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/prison/solitary{name = "Prisoner Education Chamber"}) +"akX" = (/obj/machinery/mineral/labor_claim_console{machinedir = 1; pixel_x = 30; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/laborcamp/station) "akY" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fore) "akZ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fore) "ala" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/carpet,/area/security/detectives_office) @@ -591,23 +591,23 @@ "als" = (/obj/structure/table,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack{pixel_x = 10; pixel_y = 2},/obj/item/stack/medical/ointment{pixel_y = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "alt" = (/obj/structure/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "alu" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold{dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"; pipe_color = "blue"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"alv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) +"alv" = (/obj/structure/lattice,/turf/space,/area) "alw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Brig"; req_access_txt = "63"},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/brig) "alx" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/engine/engineering) "aly" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor,/area/engine/engineering) "alz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/engine/engineering) "alA" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor,/area/engine/engineering) "alB" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"alC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"alC" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/security/brig) "alD" = (/turf/simulated/wall/r_wall,/area/maintenance/disposal) -"alE" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 0; icon_state = "off"; initialize_directions = 1; internal_pressure_bound = 4000; on = 0; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"alE" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/security/brig) "alF" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 1; icon_state = "on"; on = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "alG" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/disposal) "alH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/disposal) -"alI" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"alI" = (/turf/space,/area) "alJ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Brig"; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/brig) "alK" = (/obj/machinery/door/window/eastright{dir = 4; name = "Danger: Conveyor Access"; req_access_txt = "12"},/obj/machinery/conveyor{dir = 10; icon_state = "conveyor0"; id = "garbage"},/turf/simulated/floor/plating,/area/maintenance/disposal) -"alL" = (/obj/machinery/door/poddoor{density = 1; icon_state = "closed"; id = "SecJusticeChamber"; name = "Justice Vent"; opacity = 1},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"alL" = (/obj/machinery/mineral/labor_claim_console{machinedir = 2; pixel_x = 30; pixel_y = 30},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/laborcamp/station) "alM" = (/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Port Solar Access"; req_access_txt = "10"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "alN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/simulated/floor{icon_state = "red"; dir = 6},/area/security/brig) "alO" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fore) @@ -628,7 +628,7 @@ "amd" = (/obj/structure/stool{pixel_y = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/crew_quarters/sleep) "ame" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor,/area/crew_quarters/sleep) "amf" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/sleep) -"amg" = (/obj/structure/table,/obj/item/stack/medical/ointment{pixel_x = 3; pixel_y = -2},/obj/item/stack/medical/bruise_pack{pixel_x = -3; pixel_y = 2},/obj/item/weapon/reagent_containers/syringe/inaprovaline,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/item/weapon/reagent_containers/syringe{pixel_x = -1; pixel_y = 3},/turf/simulated/floor{dir = 8; icon_state = "whitered"; tag = "icon-whitehall (WEST)"},/area/security/brig) +"amg" = (/obj/machinery/door/airlock/external{name = "Labor Camp Shuttle Airlock"; req_access_txt = "2"},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "amh" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/sleep) "ami" = (/turf/simulated/floor/engine{name = "Holodeck Projector Floor"},/area/holodeck/alphadeck) "amj" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/crew_quarters/sleep) @@ -657,14 +657,14 @@ "amG" = (/obj/structure/stool/bed/chair,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) "amH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/hydroponics/constructable,/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "amI" = (/obj/structure/stool/bed/chair,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) -"amJ" = (/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/fore) +"amJ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor,/area/security/brig) "amK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/machinery/light/small{dir = 8},/turf/simulated/floor{icon_state = "red"; dir = 9},/area/security/brig) "amL" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/brig) "amM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/machinery/firealarm{dir = 8; pixel_x = -26; pixel_y = 0},/turf/simulated/floor{icon_state = "red"; dir = 10},/area/security/brig) "amN" = (/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "amO" = (/obj/machinery/door/window/westleft{base_state = "left"; dir = 4; icon_state = "left"; name = "Infirmary"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "whitered"; tag = "icon-whitehall (WEST)"},/area/security/brig) -"amP" = (/obj/machinery/atmospherics/pipe/simple/general/hidden,/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"amQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/stool/bed,/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"amP" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Labor Camp Shuttle Airlock"; req_access_txt = "2"},/obj/machinery/door_control{id = "prison release"; name = "Prison Release Lockdown"; pixel_x = 0; pixel_y = -25; req_access_txt = "2"},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) +"amQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/brig) "amR" = (/obj/structure/stool{pixel_y = 8},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "floorgrime"},/area/crew_quarters/sleep) "amS" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/light,/obj/machinery/camera{c_tag = "Brig - Hallway - Starboard"; dir = 1; network = list("SS13")},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/brig) "amT" = (/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/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/engine/engineering) @@ -694,7 +694,7 @@ "anr" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/sleep) "ans" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/fore) "ant" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/light/small{dir = 1},/obj/machinery/power/apc{dir = 1; name = "Dormitories APC"; pixel_x = 0; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/sleep) -"anu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/sleep) +"anu" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/alarm{pixel_y = 23},/obj/item/clothing/under/suit_jacket/tan,/turf/simulated/floor/carpet,/area/crew_quarters/sleep) "anv" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/crew_quarters/sleep) "anw" = (/obj/structure/grille,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/structure/window/reinforced/tinted{dir = 5; health = 120; icon_state = "twindow"; reinf = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/security/detectives_office) "anx" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Detective's Office"; req_access = null; req_access_txt = "4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor,/area/security/detectives_office) @@ -715,9 +715,9 @@ "anM" = (/obj/machinery/computer/secure_data,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/main) "anN" = (/obj/machinery/door/airlock/maintenance{name = "Cargo Bay Warehouse Maintenance"; req_access_txt = "0"; req_one_access_txt = "48;50"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "anO" = (/obj/machinery/door/airlock/maintenance{name = "Mining Dock Maintenance"; req_access_txt = "48"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"anP" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"anP" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/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},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/brig) "anQ" = (/obj/machinery/disposal/deliveryChute{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; layer = 3},/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/disposal) -"anR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"anR" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction,/turf/simulated/floor,/area/security/brig) "anS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/flasher_button{id = "holdingflash"; pixel_x = 0; pixel_y = -26; req_access_txt = "1"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/brig) "anT" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/engine/engineering) "anU" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor,/area/engine/engineering) @@ -740,15 +740,15 @@ "aol" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bikehorn/rubberducky,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aom" = (/obj/structure/mirror{pixel_x = -28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/shower{tag = "icon-shower (EAST)"; icon_state = "shower"; dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aon" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/sleep) -"aoo" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/machinery/light_switch{pixel_x = 28; pixel_y = 0},/obj/machinery/space_heater,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"aoo" = (/obj/machinery/door_control{id = "prison release"; name = "Prison Release Lockdown"; pixel_x = -28; pixel_y = 0; req_access_txt = "2"},/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/laborcamp/station) "aop" = (/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/scrubbers/hidden,/obj/structure/disposalpipe/junction{dir = 4; icon_state = "pipe-j2"; tag = "icon-pipe-j1 (WEST)"},/turf/simulated/floor,/area/crew_quarters/sleep) -"aoq" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/general/hidden,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"aor" = (/obj/machinery/door/window/brigdoor{dir = 2; name = "Justice Chamber"; req_access_txt = "3"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"aos" = (/obj/structure/window/reinforced,/obj/structure/table,/obj/item/weapon/folder/red{pixel_x = 3},/obj/item/device/taperecorder{pixel_x = -3; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"aoq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/security/brig) +"aor" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/security/brig) +"aos" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/machinery/firealarm{dir = 4; pixel_x = 28},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) "aot" = (/obj/structure/closet/crate,/obj/item/stack/sheet/glass{amount = 10},/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/space) "aou" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aov" = (/obj/item/clothing/gloves/rainbow,/obj/item/clothing/shoes/rainbow,/obj/item/clothing/under/rainbow,/obj/item/clothing/head/soft/rainbow,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"aow" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aow" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aox" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fore) "aoy" = (/obj/structure/rack,/obj/item/clothing/mask/gas{pixel_x = 3; pixel_y = 3},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/obj/item/weapon/wrench,/turf/simulated/floor{icon_state = "bot"},/area/security/warden) "aoz" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/brig) @@ -777,23 +777,23 @@ "aoW" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/device/taperecorder{pixel_y = 0},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 1; freerange = 1; frequency = 1424; listening = 0; name = "Interrogation Intercom"; pixel_x = 0; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aoX" = (/obj/structure/stool/bed/chair{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aoY" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/storage/box/lights/mixed,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"aoZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Prisoner Education Chamber"; req_access = null; req_access_txt = "3"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"aoZ" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/fore) "apa" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/brig) "apb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/simulated/floor{icon_state = "red"; dir = 6},/area/security/brig) -"apc" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/brig) +"apc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/fore) "apd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Brig"; req_access = null; req_access_txt = "63; 42"},/turf/simulated/floor,/area/crew_quarters/courtroom) "ape" = (/obj/machinery/conveyor{dir = 2; id = "garbage"},/obj/structure/sign/vacuum{pixel_x = -32},/turf/simulated/floor/plating,/area/maintenance/disposal) "apf" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 1; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/brig) "apg" = (/obj/structure/table/woodentable,/obj/item/device/radio/intercom{broadcasting = 1; dir = 8; listening = 0; name = "Station Intercom (Court)"; pixel_x = 0},/turf/simulated/floor{icon_state = "neutral"; dir = 1},/area/crew_quarters/courtroom) "aph" = (/obj/structure/table/woodentable,/turf/simulated/floor{icon_state = "neutral"; dir = 1},/area/crew_quarters/courtroom) -"api" = (/obj/structure/window/reinforced,/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/obj/machinery/door_control{dir = 2; id = "SecJusticeChamber"; layer = 4; name = "Justice Vent Control"; pixel_x = -24; pixel_y = 8; req_access_txt = "3"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"api" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/shuttle/laborcamp/station) "apj" = (/turf/simulated/floor{icon_state = "neutral"; dir = 5},/area/crew_quarters/courtroom) "apk" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/crew_quarters/courtroom) "apl" = (/obj/machinery/door/window/southleft{name = "Court Cell"; req_access_txt = "2"},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/courtroom) "apm" = (/obj/machinery/washing_machine,/turf/simulated/floor{icon_state = "barber"},/area/crew_quarters/sleep) "apn" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/security/brig) "apo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) -"app" = (/obj/structure/table,/obj/item/clothing/under/suit_jacket/female{pixel_x = 3; pixel_y = 1},/obj/item/clothing/under/suit_jacket/really_black{pixel_x = -2; pixel_y = 0},/obj/machinery/light/small{dir = 1},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 28},/obj/item/clothing/tie/waistcoat,/turf/simulated/floor{icon_state = "barber"},/area/crew_quarters/sleep) +"app" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/shuttle/laborcamp/station) "apq" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/security/brig) "apr" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/machinery/door_timer/cell_3,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/brig) "aps" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/airlock/glass_security{name = "Brig"; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "red"},/area/security/brig) @@ -829,28 +829,28 @@ "apW" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Evidence Storage"; req_access = null; req_access_txt = "0"; req_one_access_txt = "1;4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/warden) "apX" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/alarm{pixel_y = 26},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "apY" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/sleep) -"apZ" = (/obj/structure/lattice,/turf/space,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"apZ" = (/obj/machinery/computer/prisoner,/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aqa" = (/obj/structure/stool{pixel_y = 8},/obj/machinery/camera/autoname{dir = 4; network = list("SS13")},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aqb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/light/small{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/sleep) "aqc" = (/obj/machinery/deployable/barrier,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/machinery/camera{c_tag = "Security - Secure Gear Storage"; dir = 4; network = list("SS13")},/turf/simulated/floor{icon_state = "bot"},/area/security/warden) -"aqd" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"aqe" = (/obj/structure/stool/bed/chair,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"aqf" = (/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"aqg" = (/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"aqd" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/security/brig) +"aqe" = (/obj/structure/table,/obj/structure/window/reinforced,/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/obj/machinery/alarm{desc = "This particular atmos control unit appears to have no access restrictions."; dir = 8; icon_state = "alarm0"; locked = 0; name = "all-access air alarm"; pixel_x = 24; req_access = "0"; req_one_access = "0"},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/device/flash,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"aqf" = (/obj/structure/window/reinforced,/obj/structure/table,/obj/item/weapon/folder/red{pixel_x = 3},/obj/item/device/taperecorder{pixel_x = -3; pixel_y = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"aqg" = (/obj/machinery/door/window/brigdoor{dir = 2; name = "Justice Chamber"; req_access_txt = "3"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/machinery/door_control{dir = 2; id = "SecJusticeChamber"; layer = 4; name = "Justice Vent Control"; pixel_x = -26; pixel_y = -5; req_access_txt = "3"},/obj/machinery/flasher_button{id = "justiceflash"; name = "Justice Flash Control"; pixel_x = -26; pixel_y = 5; req_access_txt = "1"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "aqh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"aqi" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"aqi" = (/turf/simulated/floor/plating,/area/security/prison) "aqj" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/disposal) "aqk" = (/obj/machinery/conveyor{dir = 4; id = "garbage"},/turf/simulated/floor/plating,/area/maintenance/disposal) "aql" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/disposal) "aqm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating{dir = 1; icon_state = "warnplatecorner"; tag = "icon-warnplatecorner"},/area/maintenance/disposal) "aqn" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/brig) "aqo" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/turf/simulated/floor,/area/security/brig) -"aqp" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/brig) +"aqp" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/light,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "aqq" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/main) "aqr" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) "aqs" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/brig) -"aqt" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/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/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/brig) -"aqu" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/turf/simulated/floor,/area/security/brig) +"aqt" = (/obj/machinery/door/poddoor{density = 1; icon_state = "closed"; id = "SecJusticeChamber"; name = "Justice Vent"; opacity = 1},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"aqu" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/security/prison) "aqv" = (/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/brig) "aqw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/main) "aqx" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) @@ -950,8 +950,8 @@ "asn" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless,/area/space) "aso" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "asp" = (/obj/structure/rack,/obj/effect/decal/cleanable/cobweb2,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"asq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/prison/solitary{name = "Prisoner Education Chamber"}) -"asr" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/brig) +"asq" = (/obj/structure/table,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/folder,/obj/item/weapon/paper/hydroponics,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/toy/cards/deck,/turf/simulated/floor,/area/security/prison) +"asr" = (/obj/structure/table,/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/item/weapon/book/manual/chef_recipes{pixel_x = 2; pixel_y = 6},/obj/item/clothing/head/chefhat,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "ass" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) "ast" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/courtroom) "asu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/courtroom) @@ -962,15 +962,15 @@ "asz" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "0"; req_one_access_txt = "1;4"},/turf/simulated/floor{icon_state = "delivery"},/area/security/main) "asA" = (/obj/machinery/mineral/stacking_machine/laborstacker{input_dir = 1; output_dir = 2},/turf/simulated/floor{icon_state = "dark"},/area/shuttle/laborcamp/station) "asB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "red"; dir = 9},/area/security/brig) -"asC" = (/obj/machinery/mineral/stacking_unit_console{machinedir = 1; pixel_x = 30},/turf/simulated/shuttle/floor,/area/shuttle/laborcamp/station) -"asD" = (/obj/machinery/door/airlock/external{name = "Labor Camp Shuttle Airlock"},/turf/simulated/floor,/area/security/processing) -"asE" = (/obj/machinery/mineral/labor_claim_console{machinedir = 2; pixel_x = 30},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/laborcamp/station) +"asC" = (/obj/machinery/atmospherics/pipe/manifold{dir = 4; icon_state = "manifold"; level = 2},/obj/machinery/meter,/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"asD" = (/obj/machinery/door/airlock/security{name = "Prisoner Education Chamber"; req_access = null; req_access_txt = "3"},/turf/simulated/floor/plating,/area/prison/solitary{name = "Prisoner Education Chamber"}) +"asE" = (/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/security/prison) "asF" = (/obj/item/weapon/caution/cone,/turf/simulated/floor/plating{tag = "icon-panelscorched"; icon_state = "panelscorched"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"asG" = (/obj/structure/rack,/obj/item/weapon/tank/oxygen/red{pixel_x = -4; pixel_y = -1},/obj/item/weapon/tank/oxygen/red{pixel_x = 4; pixel_y = -1},/obj/item/weapon/tank/anesthetic{pixel_x = 2},/obj/item/weapon/wrench,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/machinery/firealarm{dir = 8; pixel_x = -24; pixel_y = 0},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"asH" = (/obj/machinery/atmospherics/binary/pump{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"asI" = (/obj/machinery/atmospherics/binary/pump,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"asJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"asK" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"asG" = (/obj/machinery/atmospherics/pipe/simple{dir = 6; icon_state = "intact"; level = 2},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"asH" = (/obj/structure/rack,/obj/item/weapon/tank/oxygen/red{pixel_x = -4; pixel_y = -1},/obj/item/weapon/tank/oxygen/red{pixel_x = 4; pixel_y = -1},/obj/item/weapon/tank/anesthetic{pixel_x = 2},/obj/item/weapon/wrench,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"asI" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"asJ" = (/obj/machinery/atmospherics/pipe/simple/general/hidden,/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"asK" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "asL" = (/obj/structure/table,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "asM" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) "asN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) @@ -998,9 +998,9 @@ "atj" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/starboard) "atk" = (/obj/item/weapon/cigbutt,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/starboard) "atl" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{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/weapon/cigbutt","/obj/item/trash/cheesie","/obj/item/trash/candy","/obj/item/trash/chips","/obj/item/trash/deadmouse","/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) -"atm" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor,/area/security/brig) -"atn" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) -"ato" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/firealarm{dir = 8; pixel_x = -26; pixel_y = 0},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/brig) +"atm" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/sleeping_agent,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"atn" = (/obj/machinery/camera/motion{c_tag = "Armory - External"; dir = 4; network = list("SS13")},/turf/space,/area/space) +"ato" = (/obj/structure/stool/bed/chair,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "atp" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Brig Control"; req_access_txt = "3"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "delivery"},/area/security/warden) "atq" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "atr" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westleft{base_state = "right"; dir = 2; icon_state = "right"; name = "Reception Window"; req_access_txt = "0"},/obj/machinery/door/window/brigdoor{dir = 1; name = "Brig Control Desk"; req_access_txt = "3"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/weapon/paper,/obj/machinery/door/firedoor,/turf/simulated/floor{icon_state = "showroomfloor"},/area/security/warden) @@ -1014,7 +1014,7 @@ "atz" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor,/area/crew_quarters/sleep) "atA" = (/obj/structure/table/woodentable,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/power/apc{dir = 8; name = "Detective APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/item/device/taperecorder{pixel_x = 3; pixel_y = 0},/obj/item/weapon/storage/box/evidence,/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) "atB" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/flora/kirbyplants{desc = "A plastic potted plant."; layer = 4.1; pixel_y = 3},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"atC" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/tie/red{pixel_x = -5; pixel_y = 3},/obj/item/clothing/tie/horrible,/obj/item/clothing/tie/blue{pixel_x = 5; pixel_y = -2},/obj/item/weapon/storage/secure/safe{pixel_x = 35; pixel_y = 0},/obj/item/weapon/dice/d8,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"atC" = (/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/machinery/firealarm{dir = 8; pixel_x = -26; pixel_y = 0},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "atD" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) "atE" = (/obj/structure/disposalpipe/segment{dir = 4},/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/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/maintenance/fore) "atF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fore) @@ -1022,7 +1022,7 @@ "atH" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "atI" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) "atJ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/starboard) -"atK" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/maintenance/fore) +"atK" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "atL" = (/obj/structure/grille,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "atM" = (/obj/structure/grille,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "atN" = (/obj/structure/grille,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) @@ -1030,15 +1030,15 @@ "atP" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/engine/engineering) "atQ" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/book/manual/chef_recipes,/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/firealarm_electronics,/obj/item/weapon/grenade/smokebomb,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "atR" = (/obj/item/stack/sheet/cardboard,/obj/item/device/flashlight,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/maintenance/starboard) -"atS" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"atS" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "atT" = (/obj/structure/cable,/obj/machinery/power/emitter{anchored = 1; state = 2},/turf/simulated/floor/plating/airless,/area/engine/engineering) -"atU" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "Security - EVA Storage"; dir = 1; network = list("SS13")},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/brig) -"atV" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"atW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"atU" = (/obj/structure/table,/obj/item/device/radio/electropack,/obj/item/weapon/storage/box/bodybags,/obj/item/device/assembly/signaler,/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"atV" = (/obj/structure/table,/obj/item/clothing/suit/straight_jacket,/obj/item/clothing/glasses/sunglasses/blindfold,/obj/item/clothing/mask/muzzle,/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Prisoner Education Chamber APC"; pixel_y = 24},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"atW" = (/obj/structure/closet/secure_closet/injection,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 26},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "atX" = (/turf/simulated/wall/r_wall,/area/turret_protected/ai) -"atY" = (/obj/machinery/atmospherics/pipe/manifold{dir = 4; icon_state = "manifold"; level = 2},/obj/machinery/meter,/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"atY" = (/obj/structure/sign/pods{pixel_x = 30; pixel_y = 0},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/security/prison) "atZ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/hallway/primary/fore) -"aua" = (/obj/machinery/door/window/brigdoor{dir = 8; name = "Atmos Control"; req_access_txt = "3"},/obj/machinery/atmospherics/pipe/manifold{dir = 8; icon_state = "manifold"; level = 2},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"aua" = (/obj/machinery/computer/arcade,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "aub" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/starboard) "auc" = (/obj/structure/closet/emcloset,/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/starboard) "aud" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating{icon_plating = "warnplate"; icon_state = "warnplate"},/area/maintenance/starboard) @@ -1061,13 +1061,13 @@ "auu" = (/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) "auv" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "auw" = (/obj/structure/safe,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/obj/item/clothing/head/bearpelt,/obj/item/weapon/twohanded/fireaxe,/turf/simulated/floor{icon_state = "vault"; dir = 4},/area/security/nuke_storage) -"aux" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle/floor{icon = 'icons/turf/floors.dmi'; icon_state = "floorgrime"},/area/shuttle/laborcamp/station) +"aux" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "auy" = (/obj/machinery/door/airlock/external{name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/engine/engineering) -"auz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/processing) +"auz" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 6},/obj/machinery/light_switch{pixel_x = -28; pixel_y = 0},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "auA" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "auB" = (/turf/simulated/floor/plating/airless,/area/engine/engineering) -"auC" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/processing) -"auD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/processing) +"auC" = (/obj/machinery/door/window/brigdoor{dir = 8; name = "Atmos Control"; req_access_txt = "3"},/obj/machinery/atmospherics/binary/pump{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"auD" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "auE" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "auF" = (/obj/structure/grille,/obj/machinery/light{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "auG" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) @@ -1076,19 +1076,19 @@ "auJ" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/shuttle/mining/station) "auK" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/shuttle/plating,/area/shuttle/mining/station) "auL" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area/shuttle/mining/station) -"auM" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/processing) -"auN" = (/obj/structure/lattice,/turf/space,/area/security/prison) -"auO" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/prison) +"auM" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/security/prison) +"auN" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/prison/solitary{name = "Prisoner Education Chamber"}) +"auO" = (/obj/machinery/atmospherics/pipe/simple{dir = 10; icon_state = "intact"; level = 2},/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "auP" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"auQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) +"auQ" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "auR" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/security/prison) "auS" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor,/area/security/prison) "auT" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "auU" = (/obj/item/weapon/soap/nanotrasen,/obj/item/weapon/bikehorn/rubberducky,/obj/machinery/shower{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/prison) "auV" = (/obj/machinery/light/small{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/prison) -"auW" = (/turf/space,/area/security/prison) +"auW" = (/obj/machinery/light/small,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/security/prison) "auX" = (/obj/structure/closet/emcloset,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"auY" = (/obj/machinery/photocopier,/obj/machinery/power/apc{dir = 4; name = "Head of Security's Office APC"; pixel_x = 24},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/door_control{id = "hosprivacy"; name = "Privacy Shutters Control"; pixel_x = 26; pixel_y = -26},/obj/machinery/camera{c_tag = "Head of Security's Office"; dir = 8; network = list("SS13")},/obj/machinery/computer/security/telescreen{dir = 1; name = "MiniSat Monitor"; network = list("MiniSat","tcomm"); pixel_x = 0; pixel_y = -29},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/hos) +"auY" = (/turf/simulated/floor/plating{icon_plating = "warnplate"; icon_state = "warnplate"},/area/security/prison) "auZ" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/effect/landmark{name = "tripai"},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = 20},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 0; pixel_y = -26},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 1; freerange = 0; listening = 1; name = "Common Channel"; pixel_x = -25; pixel_y = -4},/turf/simulated/floor/bluegrid{icon_state = "gcircuit"; name = "Tertiary AI Base"},/area/turret_protected/ai) "ava" = (/obj/item/hand_labeler_refill,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "avb" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) @@ -1098,21 +1098,21 @@ "avf" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "avg" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=14.2-Central-CrewQuarters"; location = "14-Starboard-Central"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor,/area/hallway/primary/central) "avh" = (/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"avi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fore) +"avi" = (/obj/machinery/door/airlock/external{name = "Security External Airlock"; req_access_txt = "1; 13"},/turf/simulated/floor/plating,/area/security/prison) "avj" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/eastright{base_state = "right"; dir = 8; icon_state = "right"; name = "Fitness Ring"},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "avk" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "avl" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/courtroom) "avm" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/effect/landmark{name = "tripai"},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = 19},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 0; pixel_y = -26},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 1; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = 27; pixel_y = -3},/turf/simulated/floor/bluegrid{icon_state = "gcircuit"; name = "Secondary AI Base"},/area/turret_protected/ai) -"avn" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/security/processing) -"avo" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/processing) -"avp" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/processing) -"avq" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/processing) -"avr" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/security/prison) -"avs" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/security/processing) +"avn" = (/obj/machinery/light/small{dir = 1},/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/security/prison) +"avo" = (/obj/machinery/door/airlock/external{name = "Escape Pod Two"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/security/prison) +"avp" = (/obj/machinery/photocopier,/obj/machinery/power/apc{dir = 4; name = "Head of Security's Office APC"; pixel_x = 24},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/door_control{id = "hosprivacy"; name = "Privacy Shutters Control"; pixel_x = 26; pixel_y = -26},/obj/machinery/camera{c_tag = "Head of Security's Office"; dir = 8; network = list("SS13")},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -32},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/hos) +"avq" = (/obj/machinery/disposal,/obj/machinery/firealarm{dir = 8; pixel_x = -24; pixel_y = 0},/obj/machinery/light_switch{pixel_x = -24; pixel_y = -20},/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/computer/security/telescreen{desc = "Used for watching certain areas."; dir = 1; name = "Head of Security's Monitor"; network = list("Prison","MiniSat","tcomm"); pixel_x = 0; pixel_y = -30},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/hos) +"avr" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small,/obj/machinery/camera{c_tag = "Security - EVA Storage"; dir = 1; network = list("SS13")},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/brig) +"avs" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/machinery/light,/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/prison) "avt" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating/airless,/area/space) "avu" = (/obj/structure/cable,/obj/machinery/power/solar{id = "forestarboard"; name = "Fore-Starboard Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/space) "avv" = (/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"avw" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/light,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) +"avw" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/obj/structure/reagent_dispensers/peppertank{pixel_x = 0; pixel_y = -30},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/prison) "avx" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "avy" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "avz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) @@ -1160,19 +1160,19 @@ "awp" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;63"},/turf/simulated/floor/plating,/area/maintenance/fore) "awq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "awr" = (/obj/structure/table,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 5},/turf/simulated/floor,/area/security/prison) -"aws" = (/turf/simulated/floor,/area/security/processing) +"aws" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/prison) "awt" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/warden) "awu" = (/obj/structure/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "awv" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/junction{dir = 4; icon_state = "pipe-j2"; tag = "icon-pipe-j1 (WEST)"},/turf/simulated/floor,/area/security/brig) "aww" = (/obj/structure/window/reinforced,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/security/prison) "awx" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor,/area/security/prison) -"awy" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/processing) +"awy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall/r_wall,/area/prison/solitary{name = "Prisoner Education Chamber"}) "awz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/door/poddoor/preopen{id = "hosprivacy"; name = "privacy shutter"},/turf/simulated/floor/plating,/area/security/hos) "awA" = (/obj/structure/table,/obj/structure/bedsheetbin,/obj/structure/window/reinforced,/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/security/prison) -"awB" = (/obj/machinery/door/airlock/external{name = "Labor Camp Shuttle Airlock"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/processing) -"awC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/processing) -"awD" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/security/processing) -"awE" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/processing) +"awB" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Prisoner Education Chamber"; req_access = null; req_access_txt = "3"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"awC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/prison/solitary{name = "Prisoner Education Chamber"}) +"awD" = (/obj/machinery/door/airlock/external{name = "Escape Pod Two"},/turf/simulated/floor/plating,/area/security/prison) +"awE" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/processing) "awF" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "hosprivacy"; name = "privacy shutter"},/turf/simulated/floor/plating,/area/security/hos) "awG" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/door/poddoor/preopen{id = "hosprivacy"; name = "privacy shutter"},/turf/simulated/floor/plating,/area/security/hos) "awH" = (/obj/machinery/hydroponics/constructable,/obj/item/weapon/minihoe,/obj/item/seeds/carrotseed,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) @@ -1191,25 +1191,25 @@ "awU" = (/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/quartermaster/miningdock{name = "\improper Mining Office"}) "awV" = (/obj/item/weapon/ore/silver,/obj/item/weapon/ore/silver,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/quartermaster/miningdock{name = "\improper Mining Office"}) "awW" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/camera{c_tag = "Mining Dock"; dir = 8; network = list("SS13")},/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/miningdock{name = "\improper Mining Office"}) -"awX" = (/obj/structure/table,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/folder,/obj/item/weapon/paper/hydroponics,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/security/prison) +"awX" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/processing) "awY" = (/obj/item/weapon/vending_refill/snack,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "awZ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/prison) "axa" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "axb" = (/obj/effect/decal/cleanable/oil,/obj/machinery/light_switch{pixel_x = 25; pixel_y = 0},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/disposal) "axc" = (/obj/structure/table,/obj/item/weapon/storage/pill_bottle/dice,/turf/simulated/floor,/area/security/prison) -"axd" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"axd" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/processing) "axe" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "axf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{tag = "icon-vault (NORTH)"; icon_state = "vault"; dir = 1},/area/security/nuke_storage) "axg" = (/turf/simulated/floor{tag = "icon-vault (SOUTHEAST)"; icon_state = "vault"; dir = 6},/area/security/nuke_storage) "axh" = (/obj/machinery/nuclearbomb{r_code = "LOLNO"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/nuke_storage) "axi" = (/turf/simulated/floor{tag = "icon-vault (SOUTHWEST)"; icon_state = "vault"; dir = 10},/area/security/nuke_storage) "axj" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor{tag = "icon-vault (EAST)"; icon_state = "vault"; dir = 4},/area/security/nuke_storage) -"axk" = (/obj/machinery/computer/arcade,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) +"axk" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/obj/structure/flora/kirbyplants{desc = "A plastic potted plant."; layer = 4.1; pixel_y = 3},/turf/simulated/floor,/area/security/processing) "axl" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/computer/monitor{name = "Bridge Power Monitoring Console"},/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/bridge) "axm" = (/obj/structure/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/security/prison) "axn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/power/apc{cell_type = 10000; dir = 2; name = "Brig APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable/yellow,/obj/machinery/flasher_button{id = "secentranceflasher"; name = "Brig Entrance Flasher"; pixel_x = -3; pixel_y = -38; req_access_txt = "1"},/turf/simulated/floor{icon_state = "red"},/area/security/brig) -"axo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/processing) -"axp" = (/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/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor,/area/security/processing) +"axo" = (/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Prison Wing APC"; pixel_x = 1; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/camera{c_tag = "Prison Hallway Starboard"; dir = 2; network = list("SS13","Prison")},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) +"axp" = (/obj/machinery/door_control{id = "permacell1"; name = "Cell 1 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/flasher_button{id = "PCell 1"; pixel_x = 6; pixel_y = 24},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) "axq" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "axr" = (/obj/machinery/power/terminal,/obj/machinery/door/window{dir = 1; name = "AI Chamber Power Unit"; pixel_y = 2; req_access_txt = "16"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/turret_protected/ai) "axs" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) @@ -1218,20 +1218,20 @@ "axv" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "axw" = (/turf/simulated/wall/r_wall,/area/hallway/primary/fore) "axx" = (/obj/machinery/ai_slipper{icon_state = "motion0"},/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) -"axy" = (/obj/machinery/flasher{id = "processinghall"; pixel_x = -28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/camera{c_tag = "Prisoner Processing"; dir = 4; network = list("SS13","Prison")},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/processing) -"axz" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/security/processing) -"axA" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/processing) +"axy" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/sign/pods{pixel_y = 30},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) +"axz" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/flora/kirbyplants{desc = "A plastic potted plant."; layer = 4.1; pixel_y = 3},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) +"axA" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) "axB" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "axC" = (/obj/machinery/computer/HolodeckControl,/turf/simulated/floor,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "axD" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/gloves/yellow,/obj/item/weapon/mop,/obj/item/weapon/bikehorn/rubberducky,/obj/structure/sign/poster{pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "axE" = (/obj/structure/table,/obj/item/clothing/under/sl_suit{desc = "Whoever wears this makes the rules."; name = "referee suit"},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"axF" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/security/processing) -"axG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/security/processing) -"axH" = (/obj/machinery/door/airlock/glass_security{name = "Prisoner Processing"; req_access_txt = "2"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/security/processing) -"axI" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/processing) +"axF" = (/obj/structure/closet/emcloset,/obj/structure/sign/pods{pixel_y = 30},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"axG" = (/obj/structure/stool/bed,/obj/item/weapon/handcuffs,/obj/item/clothing/mask/balaclava,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"axH" = (/obj/machinery/flasher{id = "justiceflash"; name = "mounted justice flash"; pixel_x = -28},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"axI" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "axJ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "axK" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/prison) -"axL" = (/turf/simulated/shuttle/wall{icon_state = "swall8"; dir = 2},/area/shuttle/laborcamp/station) +"axL" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) "axM" = (/obj/machinery/door/airlock/glass_security{id_tag = "prisonshuttle"; name = "Secure Shuttle Access"; req_access_txt = "3"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/laborcamp/station) "axN" = (/turf/simulated/shuttle/wall{icon_state = "swall7"; dir = 2},/area/shuttle/laborcamp/station) "axO" = (/obj/machinery/door/airlock/glass{id_tag = "permahydro"; name = "Hydroponics Module"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) @@ -1243,11 +1243,11 @@ "axU" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "Fitness Room - Fore"; dir = 2},/obj/machinery/alarm{pixel_y = 24},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "axV" = (/obj/machinery/door/poddoor/shutters{id = "qm_mine_warehouse"; name = "Warehouse Shutters"},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/miningdock{name = "\improper Mining Office"}) "axW" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"axX" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor,/area/security/processing) +"axX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/power/apc{dir = 1; name = "Starboard Hallway APC"; pixel_x = 0; pixel_y = 26},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{dir = 1; icon_state = "yellowcorner"},/area/hallway/primary/starboard) "axY" = (/obj/item/stack/sheet/plasteel{amount = 10},/obj/structure/table,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/engine/engineering) "axZ" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aya" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/suit/space/rig,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/engine/engineering) -"ayb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/processing) +"ayb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "cautioncorner"},/area/hallway/primary/starboard) "ayc" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/engine/engineering) "ayd" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 4; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aye" = (/obj/machinery/washing_machine,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/security/prison) @@ -1286,13 +1286,13 @@ "ayL" = (/obj/machinery/turret{dir = 8},/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai) "ayM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/light,/obj/machinery/door_timer/cell_1,/obj/machinery/camera{c_tag = "Brig - Hallway - Port"; dir = 1; network = list("SS13")},/turf/simulated/floor{icon_state = "red"},/area/security/brig) "ayN" = (/obj/machinery/hydroponics/constructable,/obj/item/device/analyzer/plant_analyzer,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"ayO" = (/turf/simulated/wall/r_wall,/area/security/processing) +"ayO" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/hallway/primary/starboard) "ayP" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "ayQ" = (/obj/item/weapon/reagent_containers/glass/bucket,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) "ayR" = (/turf/simulated/floor{tag = "icon-vault (SOUTHWEST)"; icon_state = "vault"; dir = 10},/area/security/warden) -"ayS" = (/obj/machinery/door/airlock/glass_security{name = "Labor Camp Shuttle Airlock"; req_access_txt = "2"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/processing) -"ayT" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/security/processing) -"ayU" = (/obj/structure/table,/obj/item/weapon/storage/box/prisoner,/obj/item/weapon/razor{pixel_x = -6},/obj/item/weapon/paper{desc = ""; info = "Labor Camp Facility Operation Guide

Hello there, proud operator of an NT-Sec Prisoner Rehabilitation Center. A solution to rising crime rates and falling productivity, these facilities are specifically designed for the safe, productive imprisonment of your most dangerous criminals.

To press a long-term prisoner into the service of the station, replace his equipment with prisoners' garb at one of the prison lockers, as per normal operating procedure. Before assigning a prisoner his ID, insert the ID into a prisoner management console and assign the prisoner a quota, based on the severity of his crime.
A single sheet of most materials produces five points for the prisoner, and points can be expected to be produced at a rate of about 100 per minute, though punishments as severe as forced labor should be reserved for serious crimes of sentences not less than five minutes long.
Once you have prepared the prisoner, place him in the secure northern half of the labor shuttle, and send him to the station. Once he meets his quota by feeding sheets to the stacker, he will be allowed to return to the station, and will be able to open the secure door to the prisoner release area.

In the case of dangerous prisoners, surveilance may be needed. To that end, there is a prisoner monitoring room on the mining station, equipped with a remote flasher and a lockdown button. The mine itself is patrolled by a securibot, so the nearby security records console can also be used to secure hostile prisoners on the mine."; name = "Labor Camp Operating Guide"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/security/processing) +"ayS" = (/obj/structure/rack,/obj/machinery/power/apc{dir = 2; name = "Cargo Bay APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable/yellow,/obj/machinery/light,/obj/item/weapon/screwdriver{pixel_y = 10},/obj/item/weapon/hand_labeler,/obj/item/weapon/hand_labeler,/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/quartermaster/storage) +"ayT" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"ayU" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/rig/elite,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig/elite,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -29},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) "ayV" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "ayW" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "ayX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/turf/simulated/wall,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) @@ -1302,10 +1302,10 @@ "azb" = (/obj/machinery/flasher/portable,/turf/simulated/floor{tag = "icon-vault (NORTH)"; icon_state = "vault"; dir = 1},/area/security/warden) "azc" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/junction{dir = 4; icon_state = "pipe-j2"; tag = "icon-pipe-j1 (WEST)"},/turf/simulated/floor,/area/security/brig) "azd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"aze" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor,/area/security/processing) -"azf" = (/obj/machinery/computer/security{name = "Labor Camp Monitoring"; network = list("Labor")},/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/flasher_button{id = "processinghall"; pixel_x = -28; pixel_y = -28; req_access_txt = "1"},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/processing) +"aze" = (/obj/structure/closet/secure_closet/engineering_chief{req_access_txt = "0"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) +"azf" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/newscaster{pixel_x = 30; pixel_y = 0},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) "azg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{icon = 'icons/obj/doors/Doorglass.dmi'; name = "Starboard Primary Hallway"},/turf/simulated/floor{dir = 1; icon_state = "yellowcorner"},/area/hallway/primary/starboard) -"azh" = (/obj/structure/closet/secure_closet/brig{anchored = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/processing) +"azh" = (/obj/structure/table/woodentable,/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/item/weapon/folder,/obj/item/weapon/folder,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 30; pixel_y = 0},/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/library) "azi" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/engine/break_room) "azj" = (/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/warden) "azk" = (/obj/machinery/computer/security/wooden_tv{density = 0; pixel_x = 3; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/table/woodentable,/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},/turf/simulated/floor/carpet,/area/security/detectives_office) @@ -1331,13 +1331,13 @@ "azE" = (/obj/structure/rack,/obj/item/clothing/suit/armor/riot,/obj/item/clothing/suit/armor/riot,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/wrench,/obj/item/clothing/head/helmet/riot,/obj/item/clothing/head/helmet/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/reagent_dispensers/peppertank{pixel_x = 0; pixel_y = 29},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/warden) "azF" = (/obj/machinery/door/airlock/glass_mining{name = "Mining Dock"; req_access_txt = "0"},/turf/simulated/floor,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "azG" = (/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"}) -"azH" = (/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"azH" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -30; pixel_y = 0},/turf/simulated/floor/wood,/area/library) "azI" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/module/power_control,/obj/item/weapon/stock_parts/cell{maxcharge = 2000},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "azJ" = (/obj/structure/closet/emcloset,/obj/machinery/status_display{density = 0; pixel_x = 0; pixel_y = 32; supply_display = 1},/turf/simulated/floor{dir = 9; icon_state = "brown"},/area/quartermaster/miningdock{name = "\improper Mining Office"}) "azK" = (/obj/structure/closet/secure_closet/brig{anchored = 1},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/prison) "azL" = (/obj/structure/rack,/obj/machinery/flasher{id = "holdingflash"; pixel_x = 25},/obj/item/clothing/under/color/orange{pixel_x = 1; pixel_y = -1},/obj/item/clothing/under/color/orange{pixel_x = 1; pixel_y = -1},/obj/item/clothing/under/color/orange{pixel_x = 1; pixel_y = -1},/obj/item/clothing/under/color/orange{pixel_x = 1; pixel_y = -1},/obj/item/clothing/under/color/orange{pixel_x = 1; pixel_y = -1},/obj/item/clothing/shoes/orange,/obj/item/clothing/shoes/orange,/obj/item/clothing/shoes/orange,/obj/item/clothing/shoes/orange,/obj/item/clothing/shoes/orange,/obj/item/weapon/handcuffs,/obj/item/weapon/handcuffs,/obj/item/weapon/handcuffs,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) "azM" = (/obj/structure/closet/secure_closet/brig{anchored = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/prison) -"azN" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"azN" = (/obj/machinery/light{dir = 1},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 21},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "azO" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "azP" = (/obj/structure/closet/crate/freezer,/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "azQ" = (/obj/structure/closet/crate,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) @@ -1348,7 +1348,7 @@ "azV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/nuke_storage) "azW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{tag = "icon-vault (SOUTHWEST)"; icon_state = "vault"; dir = 10},/area/security/nuke_storage) "azX" = (/obj/structure/table,/obj/item/weapon/folder/red{pixel_x = 3},/obj/item/weapon/folder/white{pixel_x = -4; pixel_y = 2},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/prison) -"azY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/fore) +"azY" = (/obj/structure/table,/obj/structure/sign/maltesefalcon/left{pixel_y = 32},/obj/item/weapon/reagent_containers/food/drinks/shaker,/obj/machinery/newscaster{pixel_x = -30; pixel_y = 0},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "azZ" = (/obj/structure/rack,/obj/item/weapon/handcuffs,/obj/item/device/flash,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/prison) "aAa" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags{pixel_x = 4; pixel_y = 2},/obj/item/weapon/pen,/obj/item/weapon/storage/box/prisoner,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/prison) "aAb" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 5; health = 120; icon_state = "twindow"; reinf = 0},/turf/simulated/floor/plating,/area/security/main) @@ -1360,12 +1360,12 @@ "aAh" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aAi" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aAj" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"aAk" = (/obj/machinery/door/airlock/maintenance{name = "Prisoner Education Maintenance"; req_access_txt = "3"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) -"aAl" = (/obj/structure/window/reinforced,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/security/processing) -"aAm" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/security/processing) +"aAk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/central) +"aAl" = (/obj/structure/table/woodentable,/obj/machinery/light/small{dir = 4},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/clothing/head/sombrero,/turf/simulated/floor/wood,/area/crew_quarters/theatre) +"aAm" = (/obj/structure/table/reinforced,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -30; pixel_y = 0},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "aAn" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Interrogation"; req_access = null; req_access_txt = "0"; req_one_access_txt = "1;4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aAo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/security/warden) -"aAp" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/maintenance/fore) +"aAp" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "aAq" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/security/range) "aAr" = (/turf/simulated/floor,/area/security/range) "aAs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/security/warden) @@ -1423,7 +1423,7 @@ "aBs" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/mask/gas{pixel_x = 3; pixel_y = 3},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 21},/obj/machinery/camera{c_tag = "Engineering - Fore"; dir = 2; network = list("SS13")},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aBt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) "aBu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/prison) -"aBv" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) +"aBv" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -32; pixel_y = 0},/turf/simulated/floor/wood,/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "aBw" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = 30},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) "aBx" = (/obj/machinery/door/airlock/external{name = "Escape Pod Three"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aBy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) @@ -1436,21 +1436,21 @@ "aBF" = (/obj/machinery/flasher/portable,/turf/simulated/floor{tag = "icon-vault (EAST)"; icon_state = "vault"; dir = 4},/area/security/warden) "aBG" = (/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/warden) "aBH" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/secure/briefcase{pixel_x = -2},/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/cartridge/detective,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) -"aBI" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/machinery/flasher_button{id = "processinghall"; pixel_x = 6; pixel_y = 24; req_access_txt = "1"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) -"aBJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) +"aBI" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor,/area/engine/break_room) +"aBJ" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/goonplaque{desc = "\"This is a plaque in honour of our comrades on the G4407 Stations. Hopefully TG4407 model can live up to your fame and fortune.\" Scratched in beneath that is a crude image of a meteor and a spaceman. The spaceman is laughing. The meteor is exploding. The station model number is MSv39G:140319"},/area/hallway/primary/port) "aBK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/wall,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"aBL" = (/obj/machinery/door_control{id = "permacell1"; name = "Cell 1 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/flasher_button{id = "PCell 1"; pixel_x = 6; pixel_y = 24},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) +"aBL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "aBM" = (/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"aBN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/prison) -"aBO" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/simulated/floor,/area/security/prison) +"aBN" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/handcuffs,/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = -30},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) +"aBO" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/security{name = "Security-Storage Backroom"; req_access = null; req_access_txt = "63"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "aBP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aBQ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/centcom{name = "Courtroom"; opacity = 1},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/courtroom) -"aBR" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) -"aBS" = (/obj/structure/table/woodentable,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/turf/simulated/floor/wood,/area/lawoffice) +"aBR" = (/obj/machinery/light/small,/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) +"aBS" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) "aBT" = (/obj/machinery/light/small{dir = 1},/obj/machinery/alarm{pixel_y = 23},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/camera{c_tag = "Vault"; dir = 2; network = list("SS13")},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/nuke_storage) "aBU" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/lawoffice) "aBV" = (/turf/simulated/wall,/area/space) -"aBW" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) +"aBW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) "aBX" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/hos) "aBY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/carpet,/area/security/hos) "aBZ" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -38},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/engine/engineering) @@ -1474,7 +1474,7 @@ "aCr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aCs" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aCt" = (/obj/machinery/flasher/portable,/obj/machinery/firealarm{dir = 8; pixel_x = -26; pixel_y = 0},/turf/simulated/floor{tag = "icon-vault (NORTH)"; icon_state = "vault"; dir = 1},/area/security/warden) -"aCu" = (/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "floorgrime"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"aCu" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/power/apc{dir = 2; name = "Storage Wing APC"; pixel_x = 0; pixel_y = -27},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) "aCv" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/carpet,/area/security/hos) "aCw" = (/obj/structure/table/woodentable,/obj/item/weapon/stamp/hos,/turf/simulated/floor/carpet,/area/security/hos) "aCx" = (/obj/structure/rack,/obj/item/weapon/shield/riot{pixel_x = -3; pixel_y = 3},/obj/item/weapon/shield/riot,/obj/item/weapon/shield/riot{pixel_x = 3; pixel_y = -3},/obj/item/weapon/gun/projectile/shotgun/sc_pump{name = "riot shotgun"; pixel_x = 4; pixel_y = -3},/obj/item/weapon/gun/projectile/shotgun/sc_pump{name = "riot shotgun"; pixel_x = -2; pixel_y = 3},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{tag = "icon-vault (NORTH)"; icon_state = "vault"; dir = 1},/area/security/warden) @@ -1501,10 +1501,10 @@ "aCS" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 1; icon_state = "yellowcorner"},/area/hallway/primary/starboard) "aCT" = (/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/prison) "aCU" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/sillycup{pixel_x = -5; pixel_y = 3},/obj/item/weapon/reagent_containers/food/drinks/sillycup,/obj/item/weapon/reagent_containers/food/drinks/sillycup{pixel_x = 5; pixel_y = 3},/obj/item/weapon/reagent_containers/food/drinks/sillycup{pixel_x = 5; pixel_y = 3},/obj/item/weapon/reagent_containers/food/drinks/sillycup{pixel_x = 5; pixel_y = 3},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"aCV" = (/obj/machinery/camera/motion{c_tag = "Armory - External"; dir = 1; network = list("SS13")},/turf/space,/area/space) +"aCV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=3-Central-Port"; location = "2-Storage"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) "aCW" = (/turf/simulated/wall,/area/hallway/secondary/construction{name = "\improper Garden"}) "aCX" = (/obj/structure/table/woodentable,/obj/item/device/taperecorder{pixel_x = -4; pixel_y = 0},/obj/item/device/radio/off{pixel_x = 0; pixel_y = 3},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) -"aCY" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) +"aCY" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 1; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/construction/Storage{name = "Storage Wing"}) "aCZ" = (/turf/simulated/wall,/area/crew_quarters/locker) "aDa" = (/obj/machinery/disposal{pixel_x = 2; pixel_y = 2},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/engine/break_room) "aDb" = (/obj/structure/table/woodentable,/obj/machinery/recharger,/turf/simulated/floor{icon_state = "dark"},/area/security/hos) @@ -1523,9 +1523,9 @@ "aDo" = (/obj/structure/stool{pixel_y = 8},/turf/simulated/floor{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aDp" = (/obj/structure/reagent_dispensers/water_cooler,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "aDq" = (/obj/structure/table/woodentable,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/law,/turf/simulated/floor/wood,/area/lawoffice) -"aDr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/processing) +"aDr" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -26},/obj/machinery/camera{c_tag = "Storage Wing"; dir = 1; network = list("SS13")},/obj/machinery/light,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) "aDs" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/lawoffice) -"aDt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/processing) +"aDt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) "aDu" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aDv" = (/obj/structure/rack,/obj/item/weapon/storage/box/chemimp{pixel_x = 4; pixel_y = 3},/obj/item/weapon/storage/box/trackimp,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/machinery/alarm{pixel_y = 28},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/warden) "aDw" = (/obj/structure/closet{name = "Contraband Locker"},/obj/item/weapon/contraband/poster,/obj/item/weapon/contraband/poster,/obj/item/ammo_casing/shotgun/beanbag,/obj/item/ammo_casing/shotgun/beanbag,/obj/item/ammo_casing/shotgun/beanbag,/obj/item/ammo_casing/shotgun/beanbag,/obj/item/ammo_casing/shotgun/beanbag,/obj/item/ammo_casing/shotgun/beanbag,/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/warden) @@ -1584,13 +1584,13 @@ "aEx" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 1; icon_state = "yellowcorner"},/area/hallway/primary/starboard) "aEy" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "aEz" = (/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "permacell2"; name = "Cell Shutters"; opacity = 0},/obj/machinery/door/airlock/glass{id_tag = "permabolt2"; name = "Cell 2"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) -"aEA" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/processing) -"aEB" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor,/area/security/processing) +"aEA" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor,/area/quartermaster/storage) +"aEB" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "warningcorner"; dir = 4},/area/quartermaster/storage) "aEC" = (/obj/machinery/computer/secure_data,/turf/simulated/floor{dir = 1; icon_state = "red"},/area/bridge) "aED" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "yellowcorner"},/area/hallway/primary/starboard) "aEE" = (/obj/machinery/computer/med_data,/turf/simulated/floor{dir = 1; icon_state = "green"},/area/bridge) "aEF" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 5; health = 120; icon_state = "twindow"; reinf = 0},/turf/simulated/floor/plating,/area/hallway/primary/central) -"aEG" = (/obj/machinery/flasher{id = "processinghall"; pixel_x = -28},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/processing) +"aEG" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/construction/Storage{name = "Storage Wing"}) "aEH" = (/obj/item/weapon/soap/deluxe,/obj/item/weapon/storage/secure/safe{pixel_x = 6; pixel_y = 28},/obj/item/weapon/kitchen/rollingpin,/obj/structure/closet/crate,/obj/item/clothing/suit/xenos,/obj/item/clothing/suit/monkeysuit,/obj/item/clothing/head/xenos,/obj/item/clothing/mask/gas/monkeymask,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aEI" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/poddoor/preopen{id = "hosprivacy"; name = "privacy shutter"},/turf/simulated/floor/plating,/area/security/range) "aEJ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Gear Room"; req_access_txt = "0"; req_one_access_txt = "1;4"},/turf/simulated/floor{icon_state = "delivery"},/area/security/warden) @@ -1639,7 +1639,7 @@ "aFA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/storage/tools) "aFB" = (/obj/structure/sign/map/right{desc = "A framed picture of the station. Clockwise from security in red at the top, you see engineering in yellow, science in purple, escape in checkered red-and-white, medbay in green, arrivals in checkered red-and-blue, and then cargo in brown."; icon_state = "map-right-MS"; pixel_y = 32},/obj/structure/closet/firecloset,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/hallway/primary/starboard) "aFC" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/central) -"aFD" = (/obj/structure/table,/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/item/weapon/book/manual/chef_recipes{pixel_x = 2; pixel_y = 6},/obj/item/toy/cards/deck,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/prison) +"aFD" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/machinery/camera{c_tag = "Cargo Bay - Fore"; dir = 2; network = list("SS13")},/obj/structure/sign/map/right{desc = "A framed picture of the station. Clockwise from security at the top (red), you see engineering (yellow), science (purple), escape (red and white), medbay (green), arrivals (blue and white), and finally cargo (brown)."; icon_state = "map-right-MS"; pixel_y = 32},/turf/simulated/floor{icon_state = "warningcorner"; dir = 8},/area/quartermaster/storage) "aFE" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/quartermaster/office{name = "\improper Cargo Office"}) "aFF" = (/obj/structure/filingcabinet/security{pixel_x = 4},/obj/machinery/light{dir = 4},/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 29},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "aFG" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/closet/wardrobe/red,/turf/simulated/floor{icon_state = "red"; dir = 10},/area/security/checkpoint2{name = "Customs"}) @@ -1657,7 +1657,7 @@ "aFS" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/hallway/primary/central) "aFT" = (/obj/machinery/vending/coffee,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/engine/break_room) "aFU" = (/turf/simulated/wall/r_wall,/area/construction/hallway{name = "\improper MiniSat Exterior"}) -"aFV" = (/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Prison Wing APC"; pixel_x = 1; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/prison) +"aFV" = (/obj/structure/sign/map/left{desc = "A framed picture of the station. Clockwise from security at the top (red), you see engineering (yellow), science (purple), escape (red and white), medbay (green), arrivals (blue and white), and finally cargo (brown)."; icon_state = "map-left-MS"; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/quartermaster/storage) "aFW" = (/obj/structure/disposalpipe/wrapsortjunction{dir = 1},/turf/simulated/wall,/area/quartermaster/office{name = "\improper Cargo Office"}) "aFX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/quartermaster/office{name = "\improper Cargo Office"}) "aFY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/prison) @@ -1765,7 +1765,7 @@ "aHW" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor/plating,/area/quartermaster/storage) "aHX" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor/plating,/area/quartermaster/storage) "aHY" = (/obj/machinery/conveyor{dir = 1; id = "QMLoad2"},/turf/simulated/floor/plating,/area/quartermaster/storage) -"aHZ" = (/obj/machinery/conveyor_switch/oneway{id = "QMLoad2"},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/quartermaster/storage) +"aHZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/quartermaster/storage) "aIa" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/office{name = "\improper Cargo Office"}) "aIb" = (/obj/structure/stool,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/office{name = "\improper Cargo Office"}) "aIc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/quartermaster/storage) @@ -1819,7 +1819,7 @@ "aIY" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/hallway/primary/starboard) "aIZ" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/turf/space,/area/space) "aJa" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/engine/break_room) -"aJb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{dir = 4; icon_state = "neutralcorner"},/area/hallway/primary/central) +"aJb" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/machinery/status_display{density = 0; pixel_x = 0; pixel_y = 32; supply_display = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/quartermaster/storage) "aJc" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor,/area/engine/break_room) "aJd" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor,/area/engine/break_room) "aJe" = (/obj/machinery/door_control{id = "Singularity"; name = "Shutters Control"; pixel_x = -25; pixel_y = 0; req_access_txt = "11"},/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/engine/engineering) @@ -1920,7 +1920,7 @@ "aKV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/hallway/primary/port) "aKW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/engine/break_room) "aKX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 8; icon_state = "cautioncorner"},/area/hallway/primary/starboard) -"aKY" = (/obj/machinery/disposal,/obj/machinery/firealarm{dir = 8; pixel_x = -24; pixel_y = 0},/obj/machinery/light_switch{pixel_x = -24; pixel_y = -20},/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; dir = 1; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = -30},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/security/hos) +"aKY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/quartermaster/storage) "aKZ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/engine/break_room) "aLa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/simulated/floor{dir = 4; icon_state = "neutralcorner"},/area/hallway/primary/central) "aLb" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{icon = 'icons/obj/doors/Doorglass.dmi'; name = "Starboard Primary Hallway"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/hallway/primary/starboard) @@ -1935,7 +1935,7 @@ "aLk" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/plating,/area/shuttle/escape_pod1/station) "aLl" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area/shuttle/escape_pod1/station) "aLm" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/construction) -"aLn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/power/apc{dir = 1; name = "Starboard Hallway APC"; pixel_x = 0; pixel_y = 26},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{dir = 4; icon_state = "cautioncorner"},/area/hallway/primary/starboard) +"aLn" = (/obj/machinery/conveyor_switch/oneway{id = "QMLoad2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/quartermaster/storage) "aLo" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/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/floor/plating,/area/quartermaster/storage) "aLp" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor/plating,/area/quartermaster/storage) "aLq" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/hallway/primary/port) @@ -2029,7 +2029,7 @@ "aNa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/stack/sheet/cardboard,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aNb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -30},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/prison) "aNc" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;48;50;1"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"aNd" = (/obj/structure/table/woodentable,/obj/machinery/light/small{dir = 4},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/wood,/area/crew_quarters/theatre) +"aNd" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/light/small{dir = 1},/obj/item/clothing/under/assistantformal,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) "aNe" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/hallway/primary/central) "aNf" = (/obj/machinery/conveyor_switch/oneway{convdir = -1; id = "packageExternal"; pixel_y = 18},/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/quartermaster/office{name = "\improper Cargo Office"}) "aNg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/hallway/primary/central) @@ -2145,7 +2145,7 @@ "aPm" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 1; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=13.2-Tcommstore"; location = "13.1-Engineering-Enter"},/turf/simulated/floor{dir = 8; icon_state = "cautioncorner"},/area/hallway/primary/starboard) "aPn" = (/obj/machinery/autolathe,/obj/machinery/newscaster{pixel_x = 28; pixel_y = 0},/turf/simulated/floor{dir = 6; icon_state = "brown"},/area/quartermaster/office{name = "\improper Cargo Office"}) "aPo" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/engine/engineering) -"aPp" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/rig/elite,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig/elite,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) +"aPp" = (/obj/structure/closet/secure_closet/personal,/obj/item/clothing/under/assistantformal,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) "aPq" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/escape_pod1/station) "aPr" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle/floor,/area/shuttle/escape_pod1/station) "aPs" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/shuttle/escape_pod1/station) @@ -2159,7 +2159,7 @@ "aPA" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/machinery/camera{c_tag = "AI Chamber - Starboard"; dir = 8; network = list("SS13","MiniSat","RD")},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai) "aPB" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/simulated/wall,/area/hallway/secondary/entry{name = "Arrivals"}) "aPC" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/parrot/Poly,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) -"aPD" = (/obj/structure/closet/secure_closet/engineering_chief{req_access_txt = "0"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) +"aPD" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/pump,/obj/machinery/light/small{dir = 1},/obj/machinery/firealarm{pixel_y = 27},/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/locker) "aPE" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/crew_quarters/heads) "aPF" = (/obj/machinery/light/small{dir = 4},/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aPG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/carpet,/area/crew_quarters/heads) @@ -2167,7 +2167,7 @@ "aPI" = (/obj/machinery/recharge_station,/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/turret_protected/tcomeast{name = "\improper MiniSat East Wing"}) "aPJ" = (/obj/machinery/conveyor{dir = 4; id = "packageSort2"},/obj/machinery/conveyor{dir = 4; id = "packageSort2"},/turf/simulated/floor/plating,/area/quartermaster/office{name = "\improper Cargo Office"}) "aPK" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/rods{amount = 50},/turf/simulated/floor{dir = 6; icon_state = "yellow"},/area/storage/tools) -"aPL" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/hallway/primary/starboard) +"aPL" = (/obj/machinery/disposal{pixel_x = 0; pixel_y = 0},/obj/structure/disposalpipe/trunk,/obj/machinery/camera{c_tag = "Locker Room Starboard"; dir = 2; network = list("SS13")},/obj/structure/sign/pods{pixel_y = 30},/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/locker) "aPM" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/machinery/camera/autoname{dir = 4; network = list("SS13")},/obj/machinery/door_control{desc = "A remote control-switch for the engineering security doors."; id = "Engineering"; name = "Engineering Lockdown"; pixel_x = -24; pixel_y = -6; req_access_txt = "1"},/obj/machinery/door_control{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = -24; pixel_y = 5; req_access_txt = "1"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "red"; dir = 10},/area/security/checkpoint/engineering) "aPN" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering{name = "Engine Room"; req_access_txt = "10"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/engine/engineering) "aPO" = (/obj/structure/closet/secure_closet/security/engine,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "red"; dir = 6},/area/security/checkpoint/engineering) @@ -2211,7 +2211,7 @@ "aQA" = (/obj/structure/closet/toolcloset,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aQB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/engine/chiefs_office) "aQC" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal/deliveryChute{dir = 8},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/quartermaster/office{name = "\improper Cargo Office"}) -"aQD" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/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{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) +"aQD" = (/obj/structure/table/woodentable,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/clothing/glasses/sunglasses/big,/turf/simulated/floor/wood,/area/lawoffice) "aQE" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table/reinforced,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "red"},/area/security/checkpoint2{name = "Customs"}) "aQF" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/paper/monitorkey,/turf/simulated/floor{icon_state = "neutral"},/area/engine/chiefs_office) "aQG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/storage/tech) @@ -2312,7 +2312,7 @@ "aSx" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -28},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) "aSy" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/hallway/primary/port) "aSz" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/secure/briefcase,/obj/item/clothing/mask/cigarette/cigar,/obj/machinery/computer/security/telescreen{dir = 1; name = "MiniSat Monitor"; network = list("MiniSat","tcomm"); pixel_x = 0; pixel_y = -30},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) -"aSA" = (/obj/structure/rack,/obj/machinery/cell_charger,/obj/machinery/power/apc{dir = 2; name = "Cargo Bay APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable/yellow,/obj/machinery/light,/obj/item/weapon/screwdriver{pixel_y = 10},/obj/item/weapon/hand_labeler,/obj/item/weapon/hand_labeler,/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/quartermaster/storage) +"aSA" = (/obj/machinery/vending/assist,/obj/machinery/light/small{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "brown"},/area/storage/primary) "aSB" = (/obj/structure/closet/secure_closet/hop,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/wood{tag = "icon-wood-broken3"; icon_state = "wood-broken3"},/area/crew_quarters/heads) "aSC" = (/obj/structure/table,/obj/structure/flora/kirbyplants{desc = "A simple, healthy looking potted plant. Likely the best friend any AI will ever have."; name = "Photosynthetic Potted Plant"; pixel_y = 8},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai) "aSD" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 4},/turf/simulated/floor/wood,/area/bridge) @@ -2323,7 +2323,7 @@ "aSI" = (/obj/structure/stool/bed/chair/comfy/brown{tag = "icon-comfychair_brown (WEST)"; icon_state = "comfychair_brown"; dir = 8},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/carpet,/area/crew_quarters/captain{name = "\improper Captain's Quarters"}) "aSJ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/security/hos) "aSK" = (/obj/machinery/hologram/holopad,/obj/structure/stool/bed/chair{dir = 1},/obj/effect/landmark/start{name = "Head of Security"},/turf/simulated/floor/carpet,/area/security/hos) -"aSL" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/machinery/camera{c_tag = "Prison Hallway Starboard"; dir = 1; network = list("SS13","Prison")},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/prison) +"aSL" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor{dir = 1; icon_state = "brown"},/area/storage/primary) "aSM" = (/obj/machinery/computer/secure_data,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "aSN" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/security/range) "aSO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/wall/r_wall,/area/tcommsat/server) @@ -2379,7 +2379,7 @@ "aTM" = (/obj/effect/decal/cleanable/cobweb,/obj/machinery/field/generator{anchored = 0; state = 2},/turf/simulated/floor/plating,/area/engine/engineering) "aTN" = (/obj/structure/rack,/obj/item/clothing/gloves/fyellow,/turf/simulated/floor/plating,/area/maintenance/starboard) "aTO" = (/obj/machinery/atmospherics/pipe/simple{pipe_color = "green"; icon_state = "intact-g"; level = 2},/obj/machinery/atmospherics/pipe/simple{pipe_color = "cyan"; dir = 4; icon_state = "intact-c"; level = 2},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/storage) -"aTP" = (/obj/structure/table,/obj/structure/sign/maltesefalcon/left{pixel_y = 32},/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) +"aTP" = (/obj/structure/table,/obj/item/clothing/gloves/fyellow,/obj/item/device/gps,/turf/simulated/floor{dir = 9; icon_state = "brown"},/area/storage/primary) "aTQ" = (/obj/machinery/camera{c_tag = "Bar"; dir = 2; network = list("SS13")},/obj/machinery/requests_console{department = "Bar"; departmentType = 2; pixel_x = 0; pixel_y = 30},/obj/structure/table,/obj/item/weapon/reagent_containers/glass/rag{pixel_y = 5},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "aTR" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Custodial Closet"; req_access_txt = "26"},/turf/simulated/floor,/area/janitor) "aTS" = (/obj/structure/transit_tube,/obj/structure/lattice,/turf/space,/area/space) @@ -2429,7 +2429,7 @@ "aUK" = (/obj/structure/table/woodentable,/obj/machinery/ai_status_display{pixel_x = 0; pixel_y = 31},/obj/item/device/flashlight/lamp,/turf/simulated/floor{icon_state = "grimy"},/area/tcommsat/computer{name = "\improper Telecoms Control Room"}) "aUL" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/secondary/entry{name = "Arrivals"}) "aUM" = (/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) -"aUN" = (/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) +"aUN" = (/obj/structure/closet/crate,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/airlock_electronics,/obj/item/weapon/airlock_electronics,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/stack/sheet/mineral/plasma{amount = 30},/obj/item/device/gps,/turf/simulated/floor/plating,/area/engine/engineering) "aUO" = (/turf/simulated/floor{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/hallway/secondary/entry{name = "Arrivals"}) "aUP" = (/obj/structure/closet/secure_closet/cargotech,/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/quartermaster/storage) "aUQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor,/area/hallway/secondary/entry{name = "Arrivals"}) @@ -2498,13 +2498,13 @@ "aWb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/sign/nosmoking_2{pixel_y = 32},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "aWc" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/wall/r_wall,/area/tcommsat/computer{name = "\improper Telecoms Control Room"}) "aWd" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor{dir = 1; icon_state = "bluecorner"},/area/bridge) -"aWe" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/security/processing) -"aWf" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Security Dock"; req_access_txt = "1"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/processing) +"aWe" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 1; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/storage/primary) +"aWf" = (/obj/machinery/camera/autoname{dir = 4; network = list("SS13")},/obj/structure/rack,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/storage/primary) "aWg" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/secondary/entry{name = "Arrivals"}) "aWh" = (/obj/machinery/door/airlock/external{name = "Arrival Airlock"},/turf/simulated/floor/plating,/area/hallway/secondary/entry{name = "Arrivals"}) "aWi" = (/mob/living/simple_animal/chicken{name = "Featherbottom"; real_name = "Featherbottom"},/turf/simulated/floor/grass,/area/hallway/secondary/construction{name = "\improper Garden"}) "aWj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/tcommsat/computer{name = "\improper Telecoms Control Room"}) -"aWk" = (/obj/machinery/door/firedoor,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/glass_security{name = "Security Dock"; req_access_txt = "1"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/processing) +"aWk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor,/area/storage/primary) "aWl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/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{icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) "aWm" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/hallway/secondary/entry{name = "Arrivals"}) "aWn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor,/area/hallway/primary/port) @@ -2514,8 +2514,8 @@ "aWr" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aWs" = (/obj/structure/transit_tube{tag = "icon-D-NW"; icon_state = "D-NW"},/obj/structure/window/reinforced{dir = 1; pixel_y = 1},/turf/space,/area/space) "aWt" = (/obj/structure/transit_tube{tag = "icon-W-NE"; icon_state = "W-NE"},/turf/space,/area/space) -"aWu" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) -"aWv" = (/obj/structure/table/woodentable,/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/item/weapon/folder,/obj/item/weapon/folder,/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/library) +"aWu" = (/turf/simulated/wall,/area/hallway/primary/fore) +"aWv" = (/obj/machinery/door/poddoor/preopen{id = "prison release"; name = "prisoner processing blast door"},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/hallway/primary/fore) "aWw" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/library) "aWx" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/security/range) "aWy" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/security/hos) @@ -2726,7 +2726,7 @@ "bav" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; freq = 1400; location = "Bar"},/obj/structure/plasticflaps{opacity = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "baw" = (/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/turf/simulated/floor/wood,/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "bax" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Auxiliary Bathrooms"; req_access_txt = "0"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "floorgrime"},/area/crew_quarters/toilet{name = "\improper Auxiliary Restrooms"}) -"bay" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/quartermaster/storage) +"bay" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/door_control{id = "prison release"; name = "Prison Release Lockdown"; pixel_x = -25; pixel_y = 25; req_access_txt = "2"},/turf/simulated/floor,/area/hallway/primary/fore) "baz" = (/obj/machinery/reagentgrinder,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "baA" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s6"; icon_state = "swall_s6"; dir = 2},/area/shuttle/arrival/station) "baB" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/shuttle/arrival/station) @@ -2749,7 +2749,7 @@ "baS" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/window/brigdoor{dir = 2; name = "Command Desk"; req_access_txt = "19"},/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/bridge) "baT" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor{dir = 2; icon_state = "warningcorner"; tag = "icon-warningcorner (EAST)"},/area/quartermaster/storage) "baU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/quartermaster/storage) -"baV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/quartermaster/storage) +"baV" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/machinery/light/small{dir = 1},/turf/simulated/floor,/area/hallway/primary/fore) "baW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor{dir = 2; icon_state = "bluecorner"},/area/bridge) "baX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "neutral"; dir = 4},/area/hallway/primary/port) "baY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/central) @@ -2790,7 +2790,7 @@ "bbH" = (/obj/structure/transit_tube{tag = "icon-S-NW"; icon_state = "S-NW"},/obj/structure/window/reinforced{dir = 1; pixel_y = 0},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/construction/hallway{name = "\improper MiniSat Exterior"}) "bbI" = (/obj/structure/transit_tube{tag = "icon-D-NW"; icon_state = "D-NW"},/obj/structure/transit_tube{tag = "icon-D-SW"; icon_state = "D-SW"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/space) "bbJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/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},/turf/simulated/floor{icon_state = "floorgrime"},/area/crew_quarters/toilet{name = "\improper Auxiliary Restrooms"}) -"bbK" = (/obj/machinery/newscaster{pixel_x = -30; pixel_y = 0},/turf/simulated/floor/wood,/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) +"bbK" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/item/clothing/under/assistantformal,/turf/simulated/floor/wood,/area/crew_quarters/sleep) "bbL" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "L2"},/area/hallway/primary/central) "bbM" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plating,/area/maintenance/starboard) "bbN" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -2800,7 +2800,7 @@ "bbR" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/starboard) "bbS" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/obj/structure/transit_tube{tag = "icon-D-NE"; icon_state = "D-NE"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/space) "bbT" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/simulated/floor{icon_state = "grimy"},/area/hallway/primary/port) -"bbU" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/sign/map/right{desc = "A framed picture of the station. Clockwise from security at the top (red), you see engineering (yellow), science (purple), escape (red and white), medbay (green), arrivals (blue and white), and finally cargo (brown)."; icon_state = "map-right-MS"; pixel_y = 32},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) +"bbU" = (/obj/structure/table,/obj/item/weapon/folder/red{pixel_x = 3},/obj/item/weapon/folder/white{pixel_x = -4; pixel_y = 2},/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; dir = 1; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = -30},/obj/item/weapon/handcuffs,/turf/simulated/floor{icon_state = "red"},/area/security/brig) "bbV" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet,/area/crew_quarters/heads) "bbW" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/turret_protected/aisat_interior{name = "\improper MiniSat Central Foyer"}) "bbX" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/crew_quarters/captain{name = "\improper Captain's Quarters"}) @@ -2842,10 +2842,10 @@ "bcH" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/wood,/area/bridge) "bcI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/window/reinforced{dir = 1; pixel_y = 1},/turf/simulated/floor{dir = 8; icon_state = "loadingarea"; tag = "loading"},/area/quartermaster/storage) "bcJ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/woodentable/poker,/obj/item/toy/cards/deck{pixel_y = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) -"bcK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/quartermaster/storage) +"bcK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/hallway/primary/fore) "bcL" = (/obj/structure/transit_tube{tag = "icon-NE-SW"; icon_state = "NE-SW"},/turf/space,/area/space) "bcM" = (/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) -"bcN" = (/obj/structure/table,/obj/item/trash/syndi_cakes{pixel_y = 4},/turf/simulated/floor,/area/engine/break_room) +"bcN" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/hallway/primary/fore) "bcO" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -26; pixel_y = 0},/turf/simulated/floor{dir = 2; icon_state = "bluecorner"},/area/bridge) "bcP" = (/obj/structure/stool{pixel_y = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "bcQ" = (/obj/structure/stool{pixel_y = 8},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/engine/break_room) @@ -2863,9 +2863,9 @@ "bdc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/bridge) "bdd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "cautioncorner"},/area/hallway/primary/starboard) "bde" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "neutral"; dir = 5},/area/hallway/secondary/construction{name = "\improper Garden"}) -"bdf" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/light/small{dir = 1},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) +"bdf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/hallway/primary/fore) "bdg" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/hallway/primary/starboard) -"bdh" = (/obj/machinery/disposal{pixel_x = 0; pixel_y = 0},/obj/structure/disposalpipe/trunk,/obj/machinery/camera{c_tag = "Locker Room Starboard"; dir = 2; network = list("SS13")},/obj/machinery/firealarm{pixel_y = 27},/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/locker) +"bdh" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Security-Storage Backroom"; req_access = null; req_access_txt = "63"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "bdi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "neutral"; dir = 1},/area/hallway/secondary/construction{name = "\improper Garden"}) "bdj" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) "bdk" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/scrubber,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 26},/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/locker) @@ -2957,7 +2957,7 @@ "beS" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/space,/area/space) "beT" = (/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{icon_state = "bot"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) "beU" = (/obj/structure/transit_tube{tag = "icon-NW-SE"; icon_state = "NW-SE"},/turf/space,/area/space) -"beV" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/pump,/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/locker) +"beV" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "beW" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "hop"; name = "Privacy Shutters"; opacity = 0},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/crew_quarters/heads) "beX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow,/obj/machinery/door/poddoor{density = 0; icon_state = "open"; id = "hop"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/crew_quarters/heads) "beY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Library"},/turf/simulated/floor{dir = 2; icon_state = "carpetsymbol"},/area/library) @@ -2995,7 +2995,7 @@ "bfE" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "bfF" = (/obj/structure/transit_tube{tag = "icon-D-SW"; icon_state = "D-SW"},/obj/structure/window/reinforced{dir = 8},/obj/structure/lattice,/turf/space,/area/space) "bfG" = (/obj/structure/transit_tube{tag = "icon-N-SW"; icon_state = "N-SW"},/obj/structure/lattice,/turf/space,/area/space) -"bfH" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/goonplaque{desc = "\"This is a plaque in honour of our comrades on the G4407 Stations. Hopefully TG4407 model can live up to your fame and fortune.\" Scratched in beneath that is a crude image of a meteor and a spaceman. The spaceman is laughing. The meteor is exploding. The station model number is MSv39E:140227"},/area/hallway/primary/port) +"bfH" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "bfI" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/machinery/power/apc{dir = 8; name = "Captain's Quarters APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/light/small{dir = 8},/obj/item/weapon/paper{info = "Congratulations,

Your station has been selected to carry out the Gateway Project.

The equipment will be shipped to you at the start of the next quarter.
You are to prepare a secure location to house the equipment as outlined in the attached documents.

--Nanotrasen Blue Space Research"; name = "Confidential Correspondence, Pg 1"; pixel_x = 0; pixel_y = 0},/obj/item/weapon/coin/plasma,/obj/item/weapon/melee/chainofcommand,/turf/simulated/floor/wood,/area/crew_quarters/captain{name = "\improper Captain's Quarters"}) "bfJ" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/structure/stool/bed/chair/office/dark{dir = 1},/turf/simulated/floor{icon_state = "grimy"},/area/tcommsat/computer{name = "\improper Telecoms Control Room"}) "bfK" = (/obj/machinery/computer/security/telescreen{dir = 8; name = "Telecoms Camera Monitor"; network = list("tcomm"); pixel_x = 26; pixel_y = 0},/obj/machinery/computer/telecomms/monitor{network = "tcommsat"},/turf/simulated/floor{icon_state = "grimy"},/area/tcommsat/computer{name = "\improper Telecoms Control Room"}) @@ -3120,21 +3120,21 @@ "bhZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/start{name = "Bartender"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "bia" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/machinery/camera{c_tag = "Arrivals - Station Entrance"; dir = 4; network = list("SS13")},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) "bib" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/central) -"bic" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/power/apc{dir = 2; name = "Storage Wing APC"; pixel_x = 0; pixel_y = -27},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) -"bid" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) +"bic" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/firealarm{dir = 8; pixel_x = -26; pixel_y = 0},/obj/machinery/camera{c_tag = "Storage Wing - Security Access Door"; dir = 2; network = list("SS13")},/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) +"bid" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light/small{dir = 1},/obj/structure/sign/securearea{pixel_y = 30},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/construction/Storage{name = "Storage Wing"}) "bie" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light,/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) "bif" = (/obj/machinery/door/airlock/silver{name = "Bathroom"},/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/captain{name = "\improper Captain's Quarters"}) "big" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/captain{name = "\improper Captain's Quarters"}) "bih" = (/obj/machinery/door/poddoor/shutters{id = "qm_warehouse"; name = "Warehouse Shutters"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "bii" = (/obj/structure/table/woodentable,/obj/item/weapon/staff/broom,/obj/item/weapon/wrench,/turf/simulated/floor/wood,/area/crew_quarters/theatre) "bij" = (/obj/structure/rack,/obj/item/weapon/cane,/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom,/turf/simulated/floor/plating,/area/crew_quarters/captain{name = "\improper Captain's Quarters"}) -"bik" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/construction/Storage{name = "Storage Wing"}) +"bik" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/construction/Storage{name = "Storage Wing"}) "bil" = (/obj/machinery/light_switch{pixel_x = -28; pixel_y = 0},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) -"bim" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) +"bim" = (/obj/machinery/door_control{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = 0; pixel_y = 24; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) "bin" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/wall/r_wall,/area/turret_protected/tcomeast{name = "\improper MiniSat East Wing"}) "bio" = (/obj/machinery/conveyor{dir = 1; id = "packageExternal"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/quartermaster/office{name = "\improper Cargo Office"}) -"bip" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) -"biq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/construction/Storage{name = "Storage Wing"}) +"bip" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/quartermaster/storage) +"biq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) "bir" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/power/emitter{anchored = 1; dir = 1; state = 2},/turf/simulated/floor/plating/airless,/area/engine/engineering) "bis" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass_mining{glass = 0; icon = 'icons/obj/doors/Doormining.dmi'; name = "Cargo Bay"; opacity = 1; req_access_txt = "0"; req_one_access_txt = "48;50"},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/construction/Storage{name = "Storage Wing"}) "bit" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{icon = 'icons/obj/doors/Doorminingglass.dmi'; name = "Primary Tool Storage"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 2; icon_state = "brown"},/area/storage/primary) @@ -3188,7 +3188,7 @@ "bjp" = (/obj/item/weapon/storage/toolbox/emergency,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/starboard) "bjq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/storage/primary) "bjr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 2; icon_state = "caution"},/area/engine/break_room) -"bjs" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/storage/primary) +"bjs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) "bjt" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "floorgrime"},/area/crew_quarters/sleep) "bju" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/hallway/primary/fore) "bjv" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor,/area/crew_quarters/courtroom) @@ -3235,7 +3235,7 @@ "bkk" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "bkl" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "bkm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{dir = 1},/obj/machinery/camera{c_tag = "Port Primary Hallway - Middle"; dir = 2; network = list("SS13")},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/port) -"bkn" = (/obj/structure/closet/secure_closet/personal/cabinet,/turf/simulated/floor/wood,/area/crew_quarters/sleep) +"bkn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) "bko" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/alarm{pixel_y = 23},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep) "bkp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/firealarm{dir = 4; pixel_x = 28},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/sleep) "bkq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep) @@ -3257,14 +3257,14 @@ "bkG" = (/turf/simulated/floor{dir = 4; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) "bkH" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_upload) "bkI" = (/obj/machinery/turret{dir = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_upload) -"bkJ" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/map/left{desc = "A framed picture of the station. Clockwise from security at the top (red), you see engineering (yellow), science (purple), escape (red and white), medbay (green), arrivals (blue and white), and finally cargo (brown)."; icon_state = "map-left-MS"; pixel_y = 32},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/machinery/camera{c_tag = "Cargo Bay - Fore"; dir = 2; network = list("SS13")},/turf/simulated/floor{icon_state = "warningcorner"; dir = 8},/area/quartermaster/storage) +"bkJ" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/construction/Storage{name = "Storage Wing"}) "bkK" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/flasher{pixel_x = 0; pixel_y = 24; id = "AI"},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_upload) "bkL" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/multitool,/obj/item/device/multitool{pixel_x = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{dir = 5; icon_state = "brown"},/area/storage/primary) "bkM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/storage/primary) -"bkN" = (/obj/machinery/vending/assist,/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/light/small{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "brown"},/area/storage/primary) +"bkN" = (/obj/structure/table,/obj/machinery/recharger,/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "bkO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "browncorner"},/area/hallway/primary/port) "bkP" = (/obj/machinery/vending/tool,/turf/simulated/floor{dir = 1; icon_state = "brown"},/area/storage/primary) -"bkQ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Prisoner Education Gallery"; req_access = null; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bkQ" = (/obj/machinery/vending/cigarette,/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor,/area/construction/Storage{name = "Storage Wing"}) "bkR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 1; icon_state = "brown"},/area/storage/primary) "bkS" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/flasher{id = "hopflash"; pixel_x = 28},/turf/simulated/floor{icon_state = "delivery"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) "bkT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -3274,13 +3274,13 @@ "bkX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/port) "bkY" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 31},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/turret_protected/tcomwest{name = "\improper MiniSat West Wing"}) "bkZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating{tag = "icon-warnplate (NORTHWEST)"; icon_state = "warnplate"; dir = 9},/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"bla" = (/obj/machinery/door/window/northleft{dir = 4; name = "MuleBot Supply Access"; req_access_txt = "50"},/obj/structure/plasticflaps{opacity = 1},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"bla" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "blb" = (/obj/machinery/atmospherics/pipe/manifold{tag = "icon-manifold-g (EAST)"; icon_state = "manifold-g"; dir = 4; level = 2; pipe_color = "green"},/turf/simulated/floor,/area/maintenance/storage) "blc" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=4-Customs"; location = "3-Central-Port"},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/hallway/primary/central) "bld" = (/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"}) "ble" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads) "blf" = (/obj/item/weapon/crowbar,/turf/space,/area/space) -"blg" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{dir = 1; icon_state = "brown"},/area/storage/primary) +"blg" = (/obj/structure/stool/bed/chair/office/dark,/turf/simulated/floor{icon_state = "dark"},/area/hallway/primary/fore) "blh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/engine/engineering) "bli" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/locker) "blj" = (/obj/machinery/door/airlock/command{name = "Captain's Quarters"; req_access = null; req_access_txt = "20"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/captain{name = "\improper Captain's Quarters"}) @@ -3308,7 +3308,7 @@ "blF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/sleep) "blG" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 1; name = "command chair"},/turf/simulated/floor/carpet,/area/bridge) "blH" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/machinery/camera{c_tag = "Dormitories - Aft"; dir = 4},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/sleep) -"blI" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/construction/Storage{name = "Storage Wing"}) +"blI" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "blJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/sleep) "blK" = (/obj/structure/table/woodentable,/obj/structure/window/reinforced,/obj/machinery/light_switch{pixel_x = -28; pixel_y = 0},/obj/item/weapon/storage/secure/briefcase{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/lockbox/medal{pixel_y = 0},/turf/simulated/floor/wood,/area/crew_quarters/captain{name = "\improper Captain's Quarters"}) "blL" = (/obj/machinery/light{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/status_display{density = 0; pixel_x = 32; pixel_y = 0; supply_display = 1},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/quartermaster/storage) @@ -3348,9 +3348,9 @@ "bmt" = (/obj/item/weapon/screwdriver{pixel_y = 10},/obj/item/device/radio/off,/obj/machinery/light{dir = 1},/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/checkpoint/supply{name = "Security Post - Cargo"}) "bmu" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Law Office"; req_access_txt = "38"},/turf/simulated/floor/wood,/area/crew_quarters/courtroom) "bmv" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor{dir = 4; icon_state = "brown"},/area/storage/primary) -"bmw" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/storage/primary) +"bmw" = (/obj/machinery/light_construct/small{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 30; pixel_y = 0},/turf/simulated/floor/wood,/area/maintenance/aft{name = "Aft Maintenance"}) "bmx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/storage/primary) -"bmy" = (/obj/machinery/camera/autoname{dir = 4; network = list("SS13")},/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/storage/primary) +"bmy" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/hallway/primary/aft) "bmz" = (/turf/simulated/floor,/area/storage/primary) "bmA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/engine/engineering) "bmB" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor,/area/hallway/primary/port) @@ -3396,28 +3396,28 @@ "bnp" = (/obj/effect/landmark/start{name = "Captain"},/obj/structure/stool/bed/chair/comfy/brown,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/captain{name = "\improper Captain's Quarters"}) "bnq" = (/obj/structure/table/woodentable,/obj/machinery/newscaster{pixel_x = 29; pixel_y = 1},/obj/item/weapon/paper,/turf/simulated/floor/wood,/area/crew_quarters/sleep) "bnr" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/hallway/primary/central) -"bns" = (/obj/structure/sign/securearea{pixel_y = 30},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/construction/Storage{name = "Storage Wing"}) +"bns" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/hallway/primary/aft) "bnt" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "bnu" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -32},/obj/machinery/door_control{id = "Toilet3"; name = "Lock Control"; normaldoorcontrol = 1; pixel_x = -25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "bnv" = (/obj/machinery/door/airlock{id_tag = "Toilet3"; name = "Unit 3"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "bnw" = (/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/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/engine/engineering) "bnx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/engine/engineering) "bny" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{dir = 2; icon_state = "warningcorner"; tag = "icon-warningcorner (EAST)"},/area/engine/engineering) -"bnz" = (/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bnz" = (/obj/structure/closet/secure_closet/CMO,/obj/item/weapon/storage/secure/safe{pixel_x = 5; pixel_y = 26},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 30; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/medical/cmo) "bnA" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Bar"; req_access_txt = "25"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "bnB" = (/obj/structure/stool/bed/chair/wood/normal{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep) "bnC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor,/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/port) "bnD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Port Primary Hallway"},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/port) -"bnE" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bnE" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/obj/item/device/assembly/infra,/turf/simulated/floor/plating{icon_state = "warnplate"},/area/maintenance/aft{name = "Aft Maintenance"}) "bnF" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/hallway/primary/starboard) -"bnG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bnG" = (/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 4; pixel_y = 5},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 6; pixel_y = -1},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -4; pixel_y = 6},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -5; pixel_y = 2},/obj/structure/table/woodentable,/obj/machinery/light_construct/small{dir = 1},/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/wood,/area/maintenance/aft{name = "Aft Maintenance"}) "bnH" = (/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -26; pixel_y = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/camera{c_tag = "Bridge - Port"; dir = 4; network = list("SS13")},/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/bridge) "bnI" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r"; level = 2},/turf/simulated/floor,/area/maintenance/storage) "bnJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/stool/bed/chair/office/dark{dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/camera{c_tag = "Bridge - Starboard"; dir = 8; network = list("SS13")},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/bridge) "bnK" = (/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/turret_protected/tcomfoyer{name = "\improper MiniSat Teleporter Foyer"}) "bnL" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 2; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 0; pixel_y = 20},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/turret_protected/tcomeast{name = "\improper MiniSat East Wing"}) "bnM" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "1;4;38;12"},/turf/simulated/floor/plating,/area/maintenance/fore) -"bnN" = (/obj/structure/stool/bed/chair{dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/hallway/primary/fore) +"bnN" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/obj/effect/landmark/start{name = "Chemist"},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bnO" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/hallway/primary/fore) "bnP" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/maintenance/storage) "bnQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/maintenance/storage) @@ -3450,7 +3450,7 @@ "bor" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/starboard) "bos" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/port) "bot" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) -"bou" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "warningcorner"; dir = 4},/area/quartermaster/storage) +"bou" = (/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,/turf/simulated/floor,/area/hallway/primary/aft) "bov" = (/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) "bow" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/hallway/primary/central) "box" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/port) @@ -3489,10 +3489,10 @@ "bpe" = (/obj/structure/closet/radiation,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "bpf" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/wrench,/obj/item/weapon/weldingtool,/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "bpg" = (/obj/structure/closet/secure_closet/engineering_electrical,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/engine/engineering) -"bph" = (/obj/machinery/light/small{dir = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) -"bpi" = (/obj/machinery/light/small{dir = 4},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bph" = (/obj/item/weapon/storage/secure/safe{pixel_x = 32; pixel_y = 0},/obj/machinery/newscaster{pixel_x = 0; pixel_y = 30},/turf/simulated/floor{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/crew_quarters/hor) +"bpi" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j1"; tag = "icon-pipe-j1 (EAST)"},/turf/simulated/floor,/area/hallway/primary/aft) "bpj" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor,/area/hallway/primary/fore) -"bpk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/construction/Storage{name = "Storage Wing"}) +"bpk" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bpl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/hallway/primary/fore) "bpm" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/urinal{pixel_y = 29},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "bpn" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/urinal{pixel_y = 29},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) @@ -3581,7 +3581,7 @@ "bqS" = (/obj/structure/window/reinforced,/obj/machinery/power/apc{aidisabled = 0; dir = 2; name = "MiniSat Exterior APC"; pixel_y = -24},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_Toxins = 0},/obj/machinery/light,/obj/structure/cable/yellow,/turf/simulated/floor{icon_state = "dark"},/area/construction/hallway{name = "\improper MiniSat Exterior"}) "bqT" = (/obj/structure/stool/bed/chair/comfy/beige{dir = 4},/turf/simulated/floor{icon_state = "grimy"},/area/hallway/primary/port) "bqU" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/pen/red,/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},/turf/simulated/floor/wood,/area/lawoffice) -"bqV" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bqV" = (/obj/structure/stool/bed/chair/office/light{dir = 8},/obj/effect/landmark/start{name = "Chemist"},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "bqW" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) "bqX" = (/obj/structure/table,/obj/machinery/door_control{id = "Singularity"; name = "Shutters Control"; pixel_x = 25; pixel_y = 0; req_access_txt = "11"},/obj/item/weapon/storage/toolbox/electrical{pixel_y = 5},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "bqY" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/table,/obj/item/weapon/folder,/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/locker) @@ -3609,22 +3609,22 @@ "bru" = (/obj/machinery/power/apc{dir = 4; name = "Arrivals APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{dir = 4; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) "brv" = (/obj/structure/closet/secure_closet/security/cargo,/obj/machinery/light_switch{pixel_x = -25; pixel_y = 0},/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor{icon_state = "red"; dir = 9},/area/security/checkpoint/supply{name = "Security Post - Cargo"}) "brw" = (/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/weapon/reagent_containers/spray/pestspray{pixel_x = 3; pixel_y = 4},/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez,/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh{pixel_x = 2; pixel_y = 1},/obj/structure/table,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/construction{name = "\improper Garden"}) -"brx" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/quartermaster/storage) +"brx" = (/obj/machinery/camera{c_tag = "Medbay Storage"; dir = 8; network = list("SS13","Medbay")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 30; pixel_y = 0; pixel_z = 0},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/medical/medbay2{name = "Medbay Storage"}) "bry" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor,/area/hallway/secondary/entry{name = "Arrivals"}) "brz" = (/obj/machinery/firealarm{pixel_y = 27},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) -"brA" = (/obj/machinery/door_control{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = 0; pixel_y = 24; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) +"brA" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/clothing/suit/apron,/obj/item/clothing/head/greenbandana,/obj/item/clothing/head/greenbandana,/obj/item/clothing/tie/armband/hydro,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/hydroponics) "brB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) -"brC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) -"brD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) +"brC" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) +"brD" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitehall"; tag = "icon-whitehall (WEST)"},/area/medical/medbay{name = "Medbay Central"}) "brE" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/hallway/primary/port) "brF" = (/obj/structure/flora/kirbyplants{desc = "A plastic potted plant."; layer = 4.1; pixel_y = 3},/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor{icon_state = "neutral"; dir = 9},/area/hallway/primary/central) "brG" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/flora/kirbyplants{desc = "A plastic potted plant."; layer = 4.1; pixel_y = 3},/turf/simulated/floor{dir = 5; icon_state = "neutral"},/area/hallway/primary/central) -"brH" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/construction/Storage{name = "Storage Wing"}) -"brI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) +"brH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "greencorner"},/area/hallway/primary/aft) +"brI" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor,/area/hallway/primary/aft) "brJ" = (/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/camera{c_tag = "MiniSat Exterior Starboard"; dir = 4; network = list("MiniSat")},/turf/simulated/floor{icon_state = "dark"},/area/construction/hallway{name = "\improper MiniSat Exterior"}) "brK" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 30},/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 30; pixel_y = 0},/obj/machinery/camera{c_tag = "MiniSat Exterior Access Fore"; dir = 2; network = list("MiniSat")},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/construction/hallway{name = "\improper MiniSat Exterior"}) "brL" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) -"brM" = (/obj/machinery/vending/cigarette,/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) +"brM" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "brN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/storage/primary) "brO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "vault"; dir = 8},/area/turret_protected/tcomwest{name = "\improper MiniSat West Wing"}) "brP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=14.3-Lockers-Dorms"; location = "14.2-Central-CrewQuarters"},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/locker) @@ -3642,7 +3642,7 @@ "bsb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bsc" = (/obj/structure/stool/bed/chair/comfy/black{dir = 8},/turf/simulated/floor/wood,/area/library) "bsd" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/storage/primary) -"bse" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/machinery/status_display{density = 0; pixel_x = 0; pixel_y = 32; supply_display = 1},/turf/simulated/floor/plating,/area/quartermaster/storage) +"bse" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "bsf" = (/obj/structure/stool/bed/chair,/obj/machinery/camera{c_tag = "Arrivals - Fore Arm - Far"; dir = 2; network = list("SS13")},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) "bsg" = (/obj/machinery/door/airlock/maintenance{name = "Tool Storage Maintenance"; req_access_txt = "12"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/storage/primary) "bsh" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/storage/primary) @@ -3698,13 +3698,13 @@ "btf" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) "btg" = (/obj/machinery/shieldgen,/obj/machinery/light/small{dir = 1},/obj/machinery/camera{c_tag = "Engineering - Secure Storage"; dir = 2; network = list("SS13")},/turf/simulated/floor/plating,/area/engine/engineering) "bth" = (/obj/machinery/computer/security/telescreen{desc = "Used for monitoring the singularity engine safely."; dir = 8; name = "Singularity Monitor"; network = list("Singulo"); pixel_x = 32; pixel_y = 0},/obj/machinery/camera{c_tag = "Engineering - Central"; dir = 8; network = list("SS13")},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/engine/engineering) -"bti" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/light/small{dir = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "Storage Wing - Security Access Door"; dir = 2; network = list("SS13")},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bti" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/clothing/glasses/science,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "btj" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor,/area/security/checkpoint/supply{name = "Security Post - Cargo"}) "btk" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/engine/engineering) "btl" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/engine/engineering) -"btm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -26},/obj/machinery/light,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "Storage Wing"; dir = 1; network = list("SS13")},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) +"btm" = (/obj/structure/table,/obj/item/weapon/paper/pamphlet,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "btn" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/engine/engineering) -"bto" = (/obj/structure/closet/crate,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/airlock_electronics,/obj/item/weapon/airlock_electronics,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/stack/sheet/mineral/plasma{amount = 30},/turf/simulated/floor/plating,/area/engine/engineering) +"bto" = (/obj/structure/table,/obj/item/device/healthanalyzer,/obj/machinery/firealarm{dir = 4; pixel_x = 26; pixel_y = 28},/obj/item/stack/medical/ointment,/obj/item/stack/medical/bruise_pack,/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/medical/medbay{name = "Medbay Central"}) "btp" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/engine/engineering) "btq" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/checkpoint/supply{name = "Security Post - Cargo"}) "btr" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor{dir = 2; icon_state = "brown"},/area/storage/primary) @@ -3786,7 +3786,7 @@ "buP" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/weapon/cigbutt,/turf/simulated/floor/plating,/area/maintenance/starboard) "buQ" = (/turf/simulated/wall,/area/security/vacantoffice) "buR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall,/area/security/vacantoffice) -"buS" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) +"buS" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags,/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/medical/medbay{name = "Medbay Central"}) "buT" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor,/area/engine/engineering) "buU" = (/obj/machinery/light_switch,/turf/simulated/wall,/area/engine/engineering) "buV" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/engine/engineering) @@ -4056,10 +4056,10 @@ "bzZ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/brig) "bAa" = (/obj/machinery/door/airlock{id_tag = "Toilet1"; name = "Unit 1"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "bAb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/engine/engineering) -"bAc" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/clothing/gloves/fyellow,/turf/simulated/floor{dir = 9; icon_state = "brown"},/area/storage/primary) +"bAc" = (/obj/machinery/light/small{dir = 1},/obj/structure/table,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline{pixel_x = 7; pixel_y = -3},/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = -4; pixel_y = -3},/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = 3; pixel_y = -2},/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 8; pixel_y = 2},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/medical/medbay{name = "Medbay Central"}) "bAd" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/power/smes{capacity = 9e+006; charge = 1e+006},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/engine/chiefs_office) "bAe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/stool{pixel_y = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) -"bAf" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Storage Access"; req_access = null; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bAf" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_Toxins = 0},/obj/structure/table,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/airlock_electronics,/obj/item/device/assembly/timer{pixel_x = -4; pixel_y = 2},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "bAg" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Outer Window"; req_access_txt = "0"},/obj/machinery/door/window/brigdoor{dir = 4; name = "Security Desk"; req_access_txt = "1"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/security/brig) "bAh" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/brig) "bAi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/engine/engineering) @@ -4094,8 +4094,8 @@ "bAL" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/gloves/black,/obj/item/weapon/extinguisher{pixel_x = 8},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 21},/obj/item/clothing/glasses/meson,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "bAM" = (/obj/structure/closet/secure_closet/engineering_welding,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "bAN" = (/obj/machinery/computer/security,/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = -30},/turf/simulated/floor{icon_state = "red"; dir = 10},/area/security/brig) -"bAO" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 1; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) -"bAP" = (/obj/structure/table,/obj/item/weapon/folder/red{pixel_x = 3},/obj/item/weapon/folder/white{pixel_x = -4; pixel_y = 2},/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; dir = 1; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = -30},/turf/simulated/floor{icon_state = "red"},/area/security/brig) +"bAO" = (/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/device/assembly/igniter{pixel_x = -4; pixel_y = -4},/obj/item/weapon/screwdriver{pixel_y = 16},/obj/item/device/gps,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) +"bAP" = (/obj/item/weapon/storage/toolbox/emergency,/obj/item/weapon/hand_labeler,/obj/machinery/bot/cleanbot{name = "Scrubs, MD"; on = 0},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "bAQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/construction/Storage{name = "Storage Wing"}) "bAR" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/power/smes{capacity = 9e+006; charge = 1e+006},/obj/machinery/light_switch{pixel_x = -24},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/engine/chiefs_office) "bAS" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{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/weapon/cigbutt","/obj/item/trash/cheesie","/obj/item/trash/candy","/obj/item/trash/chips","/obj/item/trash/deadmouse","/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) @@ -4119,7 +4119,7 @@ "bBk" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "QM #4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/window/southleft,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "delivery"},/area/quartermaster/storage) "bBl" = (/obj/item/weapon/wirecutters,/obj/structure/lattice,/turf/space,/area/space) "bBm" = (/obj/machinery/power/turbine{luminosity = 2},/obj/structure/cable,/turf/simulated/floor/engine/vacuum,/area/maintenance/incinerator) -"bBn" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor/plating{icon_state = "warnplate"},/area/maintenance/aft{name = "Aft Maintenance"}) +"bBn" = (/obj/item/weapon/paper,/obj/structure/table,/obj/structure/sign/map/left{desc = "A framed picture of the station. Clockwise from security at the top (red), you see engineering (yellow), science (purple), escape (red and white), medbay (green), arrivals (blue and white), and finally cargo (brown)."; icon_state = "map-left-MS"; pixel_y = 32},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -32; pixel_y = 0},/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/research{name = "Research Division"}) "bBo" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb,/obj/item/weapon/shard,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "bBp" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/poddoor/preopen{id = "ceprivacy"; name = "privacy shutter"},/turf/simulated/floor/plating,/area/engine/chiefs_office) "bBq" = (/turf/simulated/wall/r_wall,/area/teleporter{name = "\improper Teleporter Room"}) @@ -4214,7 +4214,7 @@ "bDb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/sign/chemistry{pixel_x = -32},/turf/simulated/floor{dir = 8; icon_state = "yellowcorner"},/area/hallway/primary/aft) "bDc" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1; pixel_y = 2},/obj/machinery/disposal/deliveryChute{dir = 4; name = "Crate Disposal Chute"; pixel_x = -5; pixel_y = 2},/obj/machinery/door/window/westleft{base_state = "right"; dir = 4; icon_state = "right"; name = "Crate Disposal Chute"; req_access_txt = "0"},/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor{icon_state = "delivery"},/area/storage/primary) "bDd" = (/obj/machinery/power/apc{dir = 4; name = "Warehouse APC"; pixel_x = 27; pixel_y = 0},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) -"bDe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bDe" = (/obj/structure/closet/wardrobe/chemistry_white,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/item/clothing/under/rank/chemist_new,/turf/simulated/floor{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/medical/chemistry) "bDf" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{dir = 4; icon_state = "brown"},/area/storage/primary) "bDg" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/mob/living/simple_animal/cat/Runtime,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/medical/cmo) "bDh" = (/obj/machinery/atmospherics/pipe/manifold{dir = 4; icon_state = "manifold"; initialize_directions = 11; level = 2},/obj/item/weapon/wrench,/turf/simulated/floor,/area/maintenance/storage) @@ -4224,8 +4224,8 @@ "bDl" = (/obj/machinery/computer/teleporter,/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor/plating,/area/teleporter{name = "\improper Teleporter Room"}) "bDm" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "bDn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{dir = 2; icon_state = "whitehall"; tag = "icon-whitehall (WEST)"},/area/medical/surgery) -"bDo" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/prison/solitary{name = "Prisoner Education Chamber"}) -"bDp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=3-Central-Port"; location = "2-Storage"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{dir = 4; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) +"bDo" = (/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/disposalpipe/segment,/turf/simulated/floor,/area/hallway/primary/aft) +"bDp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -26},/obj/structure/flora/kirbyplants{desc = "A plastic potted plant."; layer = 4.1; pixel_y = 3},/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "bDq" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/turf/simulated/floor/carpet,/area/security/vacantoffice) "bDr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/space) "bDs" = (/obj/structure/lattice,/obj/item/clothing/head/hardhat,/turf/space,/area/space) @@ -4323,7 +4323,7 @@ "bFg" = (/obj/structure/window/reinforced{dir = 1; pixel_y = 0},/turf/space,/area/space) "bFh" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "bFi" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) -"bFj" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/hallway/secondary/entry{name = "Arrivals"}) +"bFj" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor{dir = 2; icon_state = "whiteyellow"},/area/medical/medbay{name = "Medbay Central"}) "bFk" = (/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/obj/structure/window/reinforced{dir = 1; pixel_y = 0},/turf/space,/area/space) "bFl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/medical/cryo) "bFm" = (/turf/simulated/wall/r_wall,/area/assembly/showroom{name = "\improper Corporate Showroom"}) @@ -4352,7 +4352,7 @@ "bFJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/engine,/area/toxins/telesci) "bFK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/engine,/area/toxins/telesci) "bFL" = (/obj/machinery/door_control{id = "telelab"; name = "Test Chamber Blast Doors"; pixel_x = 0; pixel_y = -25},/turf/simulated/floor/engine,/area/toxins/telesci) -"bFM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bFM" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "bFN" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Shaft Miner"},/turf/simulated/floor,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "bFO" = (/obj/machinery/door/poddoor{density = 1; icon_state = "closed"; id = "QMLoaddoor2"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/turf/simulated/floor/plating,/area/quartermaster/storage) "bFP" = (/obj/machinery/pipedispenser,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/maintenance/storage) @@ -4368,11 +4368,11 @@ "bFZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "bGa" = (/obj/structure/stool/bed/chair/office/dark,/turf/simulated/floor/wood,/area/security/vacantoffice) "bGb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) -"bGc" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bGc" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 2; pixel_y = 6},/obj/item/weapon/storage/firstaid/toxin{pixel_x = -2; pixel_y = 4},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/medical/medbay2{name = "Medbay Storage"}) "bGd" = (/obj/machinery/recharger{pixel_y = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/table/reinforced,/turf/simulated/floor{icon_state = "red"; dir = 10},/area/security/checkpoint/supply{name = "Security Post - Cargo"}) "bGe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/machinery/shower{dir = 8; icon_state = "shower"; name = "emergency shower"; tag = "icon-shower (WEST)"},/turf/simulated/floor{dir = 2; icon_state = "whiteyellowcorner"},/area/medical/medbay{name = "Medbay Central"}) "bGf" = (/obj/structure/window/reinforced{dir = 1; pixel_y = 0},/obj/structure/window/reinforced{dir = 8},/turf/space,/area/space) -"bGg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bGg" = (/obj/structure/sink{dir = 8; icon_state = "sink"; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/obj/machinery/firealarm{dir = 8; pixel_x = -26; pixel_y = 28},/obj/machinery/light{dir = 1},/obj/machinery/newscaster{pixel_x = -30; pixel_y = 0},/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/medical/medbay{name = "Medbay Central"}) "bGh" = (/turf/simulated/wall,/area/chapel/office) "bGi" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/chemistry) "bGj" = (/turf/simulated/floor{dir = 6; icon_state = "whiteyellow"; tag = "icon-whitehall (WEST)"},/area/medical/medbay{name = "Medbay Central"}) @@ -4387,7 +4387,7 @@ "bGs" = (/obj/machinery/light/small,/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/maintenance/storage) "bGt" = (/obj/machinery/light/small,/turf/simulated/floor/engine{name = "air floor"; nitrogen = 10580; oxygen = 2644},/area/maintenance/storage) "bGu" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/sink{dir = 8; icon_state = "sink"; pixel_x = -12; pixel_y = 2},/obj/item/weapon/cigbutt,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/research{name = "Research Division"}) -"bGv" = (/obj/machinery/camera{c_tag = "Medbay Storage"; dir = 8; network = list("SS13","Medbay")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/medical/medbay2{name = "Medbay Storage"}) +"bGv" = (/obj/machinery/computer/med_data,/obj/machinery/light{dir = 1},/obj/machinery/vending/wallmed1{pixel_y = 28},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/medical/sleeper{name = "Sleepers"}) "bGw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "bGx" = (/obj/structure/closet/firecloset,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bGy" = (/obj/machinery/hologram/holopad,/obj/effect/landmark/start{name = "Medical Doctor"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2{name = "Medbay Storage"}) @@ -4406,15 +4406,15 @@ "bGL" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/obj/machinery/door/poddoor/preopen{id = "telelab"; name = "test chamber blast door"},/turf/simulated/floor/plating,/area/toxins/telesci) "bGM" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "telelab"; name = "test chamber blast door"},/turf/simulated/floor/plating,/area/toxins/telesci) "bGN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/gateway) -"bGO" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -26},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bGO" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/light/small{dir = 1},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 30; pixel_y = 0},/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/library) "bGP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) "bGQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "bGR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bGS" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/hallway/primary/fore) "bGT" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/aft{name = "Aft Maintenance"}) -"bGU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/construction/Storage{name = "Storage Wing"}) +"bGU" = (/obj/structure/table/woodentable,/obj/machinery/bot/cleanbot{desc = "A little cleaning robot, one of NanoTrasen's more successful products. The label states that, on average, this model requires 40% less psychiatric care than its biological counterpart. This one is getting a bit dusty from disuse."; name = "\improper NanoTrasen showroom cleanbot"; on = 0; pixel_y = 4},/turf/simulated/floor/carpet,/area/assembly/showroom{name = "\improper Corporate Showroom"}) "bGV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"bGW" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Storage Access"; req_access = null; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "dark"},/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bGW" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/obj/machinery/newscaster{pixel_y = -29},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/hallway/primary/central) "bGX" = (/obj/structure/closet/emcloset{pixel_x = -2},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/toxins/telesci) "bGY" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating{icon_state = "warnplate"},/area/gateway) "bGZ" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 0; icon_state = "off"; initialize_directions = 1; internal_pressure_bound = 4000; on = 0; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine/vacuum,/area/maintenance/incinerator) @@ -4429,7 +4429,7 @@ "bHi" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/tcommsat/server) "bHj" = (/obj/machinery/computer/secure_data,/obj/machinery/computer/security/telescreen{desc = "Used for monitoring medbay to ensure patient safety."; dir = 1; name = "Medbay Monitor"; network = list("Medbay"); pixel_x = 0; pixel_y = -29},/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27; pixel_y = -10},/turf/simulated/floor{icon_state = "red"},/area/security/checkpoint/medical) "bHk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper{name = "Sleepers"}) -"bHl" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/prison/solitary{name = "Prisoner Education Chamber"}) +"bHl" = (/obj/structure/table/woodentable,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -30; pixel_y = 0},/turf/simulated/floor/wood,/area/library) "bHm" = (/obj/structure/morgue{pixel_x = 1; pixel_y = 1},/turf/simulated/floor{icon_state = "dark"},/area/security/detectives_office) "bHn" = (/obj/machinery/atmospherics/pipe/simple{pipe_color = "yellow"; dir = 4; icon_state = "intact-y"; level = 2},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/storage) "bHo" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 4; icon_state = "manifold-r-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 4; icon_state = "brown"},/area/storage/primary) @@ -4467,7 +4467,7 @@ "bHU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/cryo) "bHV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/aft) "bHW" = (/obj/machinery/atmospherics/pipe/simple{pipe_color = "green"; dir = 4; icon_state = "intact-g"; level = 2},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/storage) -"bHX" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor,/area/hallway/primary/aft) +"bHX" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bHY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/hallway/primary/aft) "bHZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock{name = "Aft Emergency Storage"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "bIa" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/aft{name = "Aft Maintenance"}) @@ -4498,7 +4498,7 @@ "bIz" = (/obj/structure/kitchenspike,/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bIA" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bIB" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Toxins Storage"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/toxins/storage) -"bIC" = (/obj/structure/closet/secure_closet/CMO,/obj/item/weapon/storage/secure/safe{pixel_x = 5; pixel_y = 26},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/medical/cmo) +"bIC" = (/obj/machinery/vending/snack,/obj/machinery/newscaster{pixel_y = -29},/turf/simulated/floor/carpet,/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "bID" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_Toxins = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "bIE" = (/obj/structure/table,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/hand_labeler,/turf/simulated/floor{dir = 4; icon_state = "whiteyellowfull"; tag = "icon-whitehall (WEST)"},/area/medical/chemistry) "bIF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 8; icon_state = "whitepurple"},/area/toxins/telesci) @@ -4527,9 +4527,9 @@ "bJc" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/toxins/storage) "bJd" = (/obj/machinery/door/airlock/maintenance{name = "Medbay Maintenance"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 1; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "bJe" = (/obj/effect/decal/cleanable/blood,/obj/effect/decal/cleanable/blood/gibs/limb,/obj/structure/stool/bed/roller,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/aft{name = "Aft Maintenance"}) -"bJf" = (/obj/item/weapon/paper,/obj/structure/table,/obj/structure/sign/map/left{desc = "A framed picture of the station. Clockwise from security at the top (red), you see engineering (yellow), science (purple), escape (red and white), medbay (green), arrivals (blue and white), and finally cargo (brown)."; icon_state = "map-left-MS"; pixel_y = 32},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/research{name = "Research Division"}) +"bJf" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -29},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "bJg" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/medical/sleeper{name = "Sleepers"}) -"bJh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"bJh" = (/obj/machinery/mass_driver{dir = 2; id = "chapelgun"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/machinery/light/small{dir = 1},/obj/item/device/gps,/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/chapel/main) "bJi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bJj" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 2; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 0; pixel_y = 23},/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "bJk" = (/turf/simulated/floor{dir = 4; icon_state = "whiteyellow"; tag = "icon-whitehall (WEST)"},/area/medical/chemistry) @@ -4570,7 +4570,7 @@ "bJT" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold{dir = 1; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"; pipe_color = "red"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 6; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "bJU" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/structure/cable,/turf/simulated/floor/plating/airless,/area/solar/port) "bJV" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/research{name = "Research Division"}) -"bJW" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/library) +"bJW" = (/obj/effect/landmark/start{name = "Roboticist"},/obj/structure/sink{dir = 8; icon_state = "sink"; pixel_x = -12; pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bJX" = (/obj/machinery/computer/rdconsole/core,/obj/structure/sign/nosmoking_2{pixel_x = -29; pixel_y = 0},/turf/simulated/floor{icon_state = "warning"},/area/toxins/lab) "bJY" = (/obj/structure/stool/bed/chair/comfy/brown,/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/library) "bJZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/machinery/door/poddoor/preopen{id = "rdprivacy"; name = "privacy shutter"},/turf/simulated/floor/plating,/area/crew_quarters/hor) @@ -4642,7 +4642,7 @@ "bLn" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/medical/cryo) "bLo" = (/obj/structure/stool/bed/chair/office/light{dir = 8},/obj/effect/landmark/start{name = "Chemist"},/turf/simulated/floor{dir = 8; icon_state = "whiteyellow"},/area/medical/chemistry) "bLp" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/medical/cmo) -"bLq" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) +"bLq" = (/obj/structure/closet/l3closet/virology,/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/medical/virology) "bLr" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "bLs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/medical/cmo) "bLt" = (/obj/machinery/light,/turf/simulated/floor{dir = 8; icon_state = "whitegreencorner"},/area/medical/medbay{name = "Medbay Central"}) @@ -4878,7 +4878,7 @@ "bPP" = (/turf/simulated/floor{dir = 8; icon_state = "whitegreencorner"},/area/medical/medbay{name = "Medbay Central"}) "bPQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "bPR" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/cable/yellow,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/turret_protected/ai_upload) -"bPS" = (/obj/structure/table,/obj/item/weapon/folder/white,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) +"bPS" = (/obj/structure/table,/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -29},/turf/simulated/floor{dir = 4; icon_state = "whitecorner"},/area/assembly/robotics) "bPT" = (/obj/item/weapon/packageWrap,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "bPU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/chapel/main) "bPV" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_upload) @@ -4938,7 +4938,7 @@ "bQX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/camera{c_tag = "Fore Primary Hallway Aft"; dir = 8; network = list("SS13")},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/hallway/primary/fore) "bQY" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/aft{name = "Aft Maintenance"}) "bQZ" = (/obj/machinery/power/apc{dir = 8; name = "Medical Security Checkpoint APC"; pixel_x = -24; pixel_y = 0},/obj/machinery/alarm{pixel_y = 28},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/structure/closet/secure_closet/security/med,/turf/simulated/floor{icon_state = "red"; dir = 9},/area/security/checkpoint/medical) -"bRa" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/clothing/suit/apron,/obj/item/clothing/head/greenbandana,/obj/item/clothing/head/greenbandana,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/hydroponics) +"bRa" = (/obj/structure/table,/obj/machinery/newscaster{pixel_x = -30},/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/paper,/obj/item/weapon/pen/red,/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = 30},/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/medical/virology) "bRb" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple{pipe_color = "green"; dir = 4; icon_state = "intact-g"; level = 2},/turf/simulated/wall/r_wall,/area/maintenance/storage) "bRc" = (/obj/structure/table,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/aiModule/supplied/freeform,/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai_upload) "bRd" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) @@ -4986,12 +4986,12 @@ "bRT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/medical/surgery) "bRU" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/storage/primary) "bRV" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Chemist"},/turf/simulated/floor{dir = 4; icon_state = "whiteyellow"; tag = "icon-whitehall (WEST)"},/area/medical/chemistry) -"bRW" = (/obj/structure/disposalpipe/segment,/obj/effect/landmark/start{name = "Chemist"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) +"bRW" = (/obj/structure/stool/bed/chair/office/light{dir = 8},/obj/machinery/light{dir = 1},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 29},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/medical/virology) "bRX" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/hallway/primary/central) "bRY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bRZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bSa" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "green"; dir = 6},/area/hallway/primary/central) -"bSb" = (/obj/item/weapon/storage/secure/safe{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/crew_quarters/hor) +"bSb" = (/obj/machinery/light/small{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 30; pixel_y = 0},/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) "bSc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bSd" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "o2_sensor"},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/maintenance/storage) "bSe" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/maintenance/storage) @@ -5013,7 +5013,7 @@ "bSu" = (/obj/machinery/door/firedoor,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "bSv" = (/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/clothing/glasses/welding,/obj/structure/table/reinforced,/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = -30},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/toxins/lab) "bSw" = (/obj/structure/grille,/obj/structure/lattice,/obj/structure/lattice,/turf/simulated/wall/r_wall,/area/space) -"bSx" = (/obj/structure/stool/bed/chair,/obj/machinery/light/small{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/medical/medbay{name = "Medbay Central"}) +"bSx" = (/obj/structure/table,/obj/machinery/light{dir = 8},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -30},/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/medbay3{name = "Medbay Aft"}) "bSy" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/sink{dir = 8; icon_state = "sink"; pixel_x = -12; pixel_y = 2},/turf/simulated/floor{dir = 1; icon_state = "whitepurplecorner"},/area/medical/research{name = "Research Division"}) "bSz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/central) "bSA" = (/turf/simulated/wall/r_wall,/area/ai_monitored/storage/eva{name = "E.V.A. Storage"}) @@ -5022,7 +5022,7 @@ "bSD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "bSE" = (/obj/structure/stool/bed/roller,/turf/simulated/floor{icon_state = "whitegreen"},/area/medical/medbay{name = "Medbay Central"}) "bSF" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"bSG" = (/obj/structure/table,/obj/item/device/healthanalyzer,/obj/machinery/firealarm{dir = 4; pixel_x = 26; pixel_y = 28},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/medical/medbay{name = "Medbay Central"}) +"bSG" = (/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/pen/red,/obj/structure/table,/obj/machinery/requests_console{department = "Virology"; name = "Virology Requests Console"; pixel_x = 29; pixel_y = 0},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/medical/virology) "bSH" = (/turf/simulated/floor{dir = 1; icon_state = "whitegreencorner"},/area/medical/medbay{name = "Medbay Central"}) "bSI" = (/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/gateway) "bSJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/central) @@ -5090,10 +5090,10 @@ "bTT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 2; icon_state = "purplecorner"},/area/hallway/primary/aft) "bTU" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/hallway/primary/central) "bTV" = (/obj/structure/stool/bed/chair,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) -"bTW" = (/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) +"bTW" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -32},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/hor) "bTX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "bTY" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) -"bTZ" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_Toxins = 0},/obj/structure/stool/bed/chair,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) +"bTZ" = (/obj/structure/stool/bed/chair/office/light{dir = 8},/obj/effect/landmark/start{name = "Geneticist"},/turf/simulated/floor{dir = 9; icon_state = "whiteblue"},/area/medical/genetics) "bUa" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor/wood,/area/library) "bUb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bUc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/construction) @@ -5129,7 +5129,7 @@ "bUG" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=4"; freq = 1400; location = "Medbay"},/obj/structure/plasticflaps{opacity = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/window/northleft{dir = 8; name = "MuleBot Access"; req_access_txt = "50"},/turf/simulated/floor{icon_state = "delivery"},/area/maintenance/aft{name = "Aft Maintenance"}) "bUH" = (/obj/effect/decal/cleanable/dirt,/obj/item/device/flashlight,/turf/simulated/floor/plating/airless,/area/AIsattele) "bUI" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/medbay{name = "Medbay Central"}) -"bUJ" = (/obj/item/weapon/storage/toolbox/emergency,/obj/item/weapon/hand_labeler,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) +"bUJ" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/start{name = "Geneticist"},/turf/simulated/floor{dir = 5; icon_state = "whiteblue"},/area/medical/genetics) "bUK" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/plating/airless,/area/AIsattele) "bUL" = (/obj/structure/rack,/obj/item/weapon/extinguisher,/obj/item/clothing/mask/gas,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/starboard) "bUM" = (/obj/machinery/door/airlock{name = "Medbay Emergency Storage"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) @@ -5252,7 +5252,7 @@ "bWZ" = (/obj/machinery/atmospherics/binary/pump{dir = 2; icon_state = "intact_on"; on = 1},/obj/machinery/access_button{command = "cycle_exterior"; layer = 3.1; master_tag = "incinerator_access_control"; name = "Incinerator airlock control"; pixel_x = 8; pixel_y = -24},/obj/machinery/light/small{dir = 8},/obj/structure/sign/fire{pixel_x = -32; pixel_y = 0},/turf/simulated/floor/engine,/area/maintenance/incinerator) "bXa" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/medical/medbay{name = "Medbay Central"}) "bXb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/engine,/area/maintenance/incinerator) -"bXc" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 2; pixel_y = 6},/obj/item/weapon/storage/firstaid/toxin{pixel_x = -2; pixel_y = 4},/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 30; pixel_y = 0; pixel_z = 0},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/medical/medbay2{name = "Medbay Storage"}) +"bXc" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/structure/disposalpipe/segment,/obj/effect/landmark/start{name = "Geneticist"},/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/genetics) "bXd" = (/obj/machinery/hydroponics/constructable,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hydroponics) "bXe" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Medbay Desk"; req_access_txt = "5"},/turf/simulated/floor{icon_state = "whitegreenfull"},/area/medical/medbay{name = "Medbay Central"}) "bXf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -5267,7 +5267,7 @@ "bXo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "bXp" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"; tag = "icon-whitehall (WEST)"},/area/medical/sleeper{name = "Sleepers"}) "bXq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) -"bXr" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) +"bXr" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/effect/landmark/start{name = "Geneticist"},/turf/simulated/floor{icon_state = "white"},/area/medical/genetics) "bXs" = (/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "bXt" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper{name = "Sleepers"}) "bXu" = (/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper{name = "Sleepers"}) @@ -5276,7 +5276,7 @@ "bXx" = (/obj/machinery/hydroponics/constructable,/obj/machinery/light,/obj/machinery/power/apc{dir = 2; name = "Hydroponics APC"; pixel_x = 0; pixel_y = -28},/obj/structure/cable/yellow,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hydroponics) "bXy" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/obj/machinery/newscaster{pixel_x = -32; pixel_y = 0},/turf/simulated/floor/wood,/area/library) "bXz" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "MedbayFoyer"; name = "Medbay"; req_access_txt = "5"},/turf/simulated/floor{icon_state = "whitegreenfull"},/area/medical/medbay{name = "Medbay Central"}) -"bXA" = (/obj/structure/closet/wardrobe/chemistry_white,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/simulated/floor{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/medical/chemistry) +"bXA" = (/obj/machinery/atmospherics/portables_connector,/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "bXB" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor,/turf/simulated/floor{icon_state = "whitegreenfull"},/area/medical/sleeper{name = "Sleepers"}) "bXC" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire{pixel_x = 2; pixel_y = 6},/obj/item/weapon/storage/firstaid/fire{pixel_x = -2; pixel_y = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"; tag = "icon-whitehall (WEST)"},/area/medical/medbay2{name = "Medbay Storage"}) "bXD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 2; icon_state = "purplecorner"},/area/hallway/primary/central) @@ -5308,7 +5308,7 @@ "bYd" = (/obj/structure/closet,/obj/item/clothing/tie/stethoscope,/obj/item/weapon/hemostat,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bYe" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 4; icon_state = "neutralcorner"},/area/hallway/primary/central) "bYf" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) -"bYg" = (/obj/structure/table,/obj/machinery/light{dir = 8},/obj/item/trash/popcorn,/obj/machinery/newscaster{pixel_x = 0; pixel_y = -30},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/medbay3{name = "Medbay Aft"}) +"bYg" = (/obj/structure/closet/secure_closet/scientist,/obj/structure/window/reinforced{dir = 4},/obj/item/clothing/under/rank/scientist_new,/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "bYh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/toxins/telesci) "bYi" = (/obj/structure/closet,/obj/item/weapon/storage/box/lights/mixed,/obj/item/device/flashlight,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "bYj" = (/obj/structure/noticeboard{desc = "A board for pinning important notices upon. Probably helpful for keeping track of requests."; name = "requests board"; pixel_x = 32; pixel_y = 0},/obj/machinery/chem_master,/turf/simulated/floor{dir = 4; icon_state = "whiteyellowfull"; tag = "icon-whitehall (WEST)"},/area/medical/chemistry) @@ -5350,7 +5350,7 @@ "bYT" = (/obj/structure/stool/bed/chair,/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/medical/medbay{name = "Medbay Central"}) "bYU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/turf/simulated/floor{icon_state = "delivery"},/area/medical/research{name = "Research Division"}) "bYV" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/turf/simulated/floor{icon_state = "delivery"},/area/medical/research{name = "Research Division"}) -"bYW" = (/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/medical/medbay{name = "Medbay Central"}) +"bYW" = (/obj/structure/closet/secure_closet/scientist,/obj/machinery/light_switch{pixel_y = 28},/obj/item/clothing/under/rank/scientist_new,/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "bYX" = (/obj/machinery/atmospherics/binary/pump{dir = 4},/turf/simulated/floor/plating,/area/maintenance/incinerator) "bYY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2{name = "Medbay Storage"}) "bYZ" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/machinery/door_control{id = "Biohazard"; name = "Biohazard Shutter Control"; pixel_x = 0; pixel_y = 6; req_access_txt = "47"},/obj/machinery/door_control{desc = "A remote control switch for the medbay foyer."; id = "ResearchFoyer"; name = "Research Door Button"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -4},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/checkpoint/science{name = "Security Post - Research Division"}) @@ -5411,7 +5411,7 @@ "cac" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cad" = (/turf/simulated/wall/r_wall,/area/security/checkpoint/science{name = "Security Post - Research Division"}) "cae" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;7;35;8;47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) -"caf" = (/obj/machinery/computer/med_data,/obj/machinery/light{dir = 1},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/medical/sleeper{name = "Sleepers"}) +"caf" = (/obj/machinery/atmospherics/portables_connector,/obj/structure/window/reinforced{dir = 8},/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "cag" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/machinery/power/apc{dir = 1; name = "Sleeper Room APC"; pixel_y = 24},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/medical/sleeper{name = "Sleepers"}) "cah" = (/obj/machinery/r_n_d/destructive_analyzer,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/toxins/lab) "cai" = (/turf/simulated/floor/wood,/area/maintenance/aft{name = "Aft Maintenance"}) @@ -5426,7 +5426,7 @@ "car" = (/obj/structure/disposalpipe/sortjunction{dir = 2; sortType = 20},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/starboard) "cas" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/maintenance/starboard) "cat" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/spawner/lootdrop{loot = list("/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/item/weapon/cigbutt","/obj/item/trash/cheesie","/obj/item/trash/candy","/obj/item/trash/chips","/obj/item/trash/deadmouse","/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/aft{name = "Aft Maintenance"}) -"cau" = (/obj/structure/sign/poster{pixel_x = 32; pixel_y = 0},/obj/machinery/light_construct/small{dir = 4},/turf/simulated/floor/wood,/area/maintenance/aft{name = "Aft Maintenance"}) +"cau" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/closet/wardrobe/genetics_white,/obj/item/clothing/under/rank/geneticist_new,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/medical/genetics) "cav" = (/obj/structure/noticeboard{desc = "A board for pinning important notices upon."; name = "notice board"; pixel_x = 0; pixel_y = 31},/turf/simulated/floor{dir = 9; icon_state = "whitepurple"},/area/toxins/lab) "caw" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/westleft{dir = 4; name = "Hydroponics Desk"; req_access_txt = "0"; req_one_access_txt = "30;35"},/turf/simulated/floor{dir = 4; icon_state = "greenfull"; tag = "icon-whitehall (WEST)"},/area/hydroponics) "cax" = (/obj/machinery/atmospherics/pipe/simple{pipe_color = "red"; dir = 4; icon_state = "intact-r"; level = 2},/turf/simulated/floor{dir = 1; icon_state = "caution"},/area/maintenance/storage) @@ -5469,7 +5469,6 @@ "cbi" = (/turf/simulated/wall,/area/ai_monitored/storage/eva{name = "E.V.A. Storage"}) "cbj" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/effect/spawner/lootdrop{loot = list("/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/item/weapon/cigbutt","/obj/item/trash/cheesie","/obj/item/trash/candy","/obj/item/trash/chips","/obj/item/trash/deadmouse","/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/aft{name = "Aft Maintenance"}) "cbk" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/insulated{icon_state = "intact"; dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/tinted{dir = 5; health = 120; icon_state = "twindow"; reinf = 0},/turf/simulated/floor/plating,/area/maintenance/incinerator) -"cbl" = (/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,/area/hallway/primary/aft) "cbm" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 4},/obj/structure/sign/nosmoking_2{pixel_x = 28},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 23},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/medical/sleeper{name = "Sleepers"}) "cbn" = (/obj/machinery/door_control{id = "turbinevent"; name = "Turbine Vent Control"; pixel_x = -6; pixel_y = -24; req_access_txt = "12"},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold{dir = 1; icon_state = "manifold"; level = 2},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door_control{id = "auxincineratorvent"; name = "Auxiliary Vent Control"; pixel_x = 6; pixel_y = -24; req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "floorgrime"},/area/maintenance/incinerator) "cbo" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "hydrofloor"},/area/hallway/primary/central) @@ -5683,7 +5682,6 @@ "cfo" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;27;37"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "cfp" = (/obj/structure/closet/fireaxecabinet{pixel_x = -32; pixel_y = 0},/obj/machinery/camera{c_tag = "Atmospherics - Port"; dir = 4; network = list("SS13")},/turf/simulated/floor{dir = 8; icon_state = "caution"},/area/maintenance/storage) "cfq" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/blue,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/medical/cmo) -"cfr" = (/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 4; pixel_y = 5},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 6; pixel_y = -1},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -4; pixel_y = 6},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -5; pixel_y = 2},/obj/structure/table/woodentable,/obj/machinery/light_construct/small{dir = 1},/turf/simulated/floor/wood,/area/maintenance/aft{name = "Aft Maintenance"}) "cfs" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 5; health = 120; icon_state = "twindow"; reinf = 0},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/assembly/showroom{name = "\improper Corporate Showroom"}) "cft" = (/obj/effect/landmark/start{name = "Chef"},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "cfu" = (/obj/structure/stool,/obj/structure/sign/poster{pixel_y = 32},/turf/simulated/floor/wood,/area/maintenance/aft{name = "Aft Maintenance"}) @@ -5696,7 +5694,6 @@ "cfB" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor,/area/hallway/primary/aft) "cfC" = (/obj/structure/stool/bed,/obj/effect/decal/cleanable/blood/gibs/limb,/obj/effect/decal/cleanable/blood,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cfD" = (/obj/structure/barricade/wooden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/girder,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) -"cfE" = (/obj/structure/table/woodentable,/obj/machinery/bot/cleanbot{desc = "A little cleaning robot, one of NanoTrasen's more successful products. The label states that, on average, this model requires 40% less psychiatric care than its biological counterpart."; name = "\improper NanoTrasen cleanbot"; on = 0; pixel_y = 4},/turf/simulated/floor/carpet,/area/assembly/showroom{name = "\improper Corporate Showroom"}) "cfF" = (/obj/item/clothing/mask/fakemoustache,/obj/item/clothing/mask/cigarette/pipe,/obj/structure/table/woodentable,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/camera{c_tag = "Theatre - Backstage"; dir = 1; network = list("SS13")},/turf/simulated/floor/wood,/area/crew_quarters/theatre) "cfG" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cfH" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/storage) @@ -5744,7 +5741,6 @@ "cgx" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/multitool,/turf/simulated/floor,/area/ai_monitored/storage/eva{name = "E.V.A. Storage"}) "cgy" = (/obj/structure/stool,/turf/simulated/floor/plating{tag = "icon-platingdmg1"; icon_state = "platingdmg1"},/area/maintenance/aft{name = "Aft Maintenance"}) "cgz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) -"cgA" = (/obj/structure/stool/bed/chair/office/light{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/medical/chemistry) "cgB" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/maintenance/storage) "cgC" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva{name = "E.V.A. Storage"}) "cgD" = (/obj/machinery/shieldwallgen,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/teleporter{name = "\improper Teleporter Room"}) @@ -5867,11 +5863,9 @@ "ciQ" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood{tag = "icon-wood-broken6"; icon_state = "wood-broken6"},/area/assembly/showroom{name = "\improper Corporate Showroom"}) "ciR" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/medical/cmo) "ciS" = (/obj/structure/table,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor{icon_state = "dark"},/area/maintenance/atmos_control{name = "Telecoms Storage"}) -"ciT" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/obj/machinery/newscaster{pixel_y = -32},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/hallway/primary/central) "ciU" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/weapon/wirecutters,/obj/item/weapon/weldingtool,/turf/simulated/floor/plating,/area/maintenance/starboard) "ciV" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/starboard) "ciW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/aft) -"ciX" = (/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,/area/hallway/primary/aft) "ciY" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/pie,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/wood,/area/crew_quarters/theatre) "ciZ" = (/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; freq = 1400; location = "Research and Development"},/turf/simulated/floor{icon_state = "delivery"},/area/toxins/lab) "cja" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/camera{c_tag = "Medbay Hallway Central"; dir = 4; network = list("SS13","Medbay")},/turf/simulated/floor{dir = 8; icon_state = "whitegreencorner"},/area/medical/medbay{name = "Medbay Central"}) @@ -6123,7 +6117,6 @@ "cnM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/aft) "cnN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/hallway/primary/aft) "cnO" = (/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Telecoms)"; pixel_x = 0; pixel_y = 29},/obj/machinery/light/small{dir = 1},/obj/machinery/camera{c_tag = "Telecoms - Server Room - Fore-Starboard"; dir = 2; network = list("SS13","tcomm")},/turf/simulated/floor/bluegrid{icon_state = "dark"; name = "Mainframe Floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/server) -"cnP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -26},/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "cnQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/spawner/lootdrop{loot = list("/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/structure/grille","/obj/item/weapon/cigbutt","/obj/item/trash/cheesie","/obj/item/trash/candy","/obj/item/trash/chips","/obj/item/trash/deadmouse","/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/fpmaint2{name = "Port Maintenance"}) "cnR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/medical/genetics) "cnS" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) @@ -6136,7 +6129,6 @@ "cnZ" = (/obj/machinery/hologram/holopad,/obj/machinery/light,/obj/machinery/camera/autoname{dir = 1; network = list("SS13","RD")},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = -32},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/hor) "coa" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "cob" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 2; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) -"coc" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/hor) "cod" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "coe" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent,/turf/simulated/floor{icon_state = "bot"},/area/toxins/storage) "cof" = (/obj/item/weapon/cigbutt,/obj/machinery/light_switch{pixel_y = -23},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/toxins/storage) @@ -6144,7 +6136,6 @@ "coh" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/weapon/wrench,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/item/weapon/crowbar,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/maintenance/storage) "coi" = (/obj/structure/table/woodentable,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/crap{name = "\improper NanoTrasen-brand rechargable AA battery"},/turf/simulated/floor/carpet,/area/assembly/showroom{name = "\improper Corporate Showroom"}) "coj" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=10.1-Aft-Port-Corner"; location = "10-Aft-Central"},/turf/simulated/floor{icon_state = "L5"},/area/hallway/primary/central) -"cok" = (/obj/structure/table,/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -29},/obj/structure/sink{dir = 8; icon_state = "sink"; pixel_x = -12; pixel_y = 2},/turf/simulated/floor{dir = 4; icon_state = "whitecorner"},/area/assembly/robotics) "col" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;5;39;25;28"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "com" = (/obj/structure/table,/obj/item/device/paicard,/obj/machinery/newscaster{pixel_x = -1; pixel_y = -29},/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "con" = (/obj/machinery/light/small,/obj/structure/table/woodentable,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{icon_state = "grimy"},/area/tcommsat/computer{name = "\improper Telecoms Control Room"}) @@ -6218,14 +6209,12 @@ "cpD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/medbay3{name = "Medbay Aft"}) "cpE" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=7.5-Starboard-Aft-Corner"; location = "7-Command-Starboard"},/turf/simulated/floor,/area/hallway/primary/central) "cpF" = (/obj/item/seeds/berryseed,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) -"cpG" = (/obj/structure/table,/obj/machinery/cell_charger,/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "cpH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Command Hallway"},/turf/simulated/floor{dir = 2; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) "cpI" = (/obj/item/seeds/moonflowerseed,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cpJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/camera/autoname{dir = 4; network = list("SS13","RD")},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "cpK" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/medical/medbay3{name = "Medbay Aft"}) "cpL" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen #4"; req_access_txt = "55"},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/toxins/xenobiology) "cpM" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/central) -"cpN" = (/obj/structure/sink{dir = 8; icon_state = "sink"; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/obj/machinery/firealarm{dir = 8; pixel_x = -26; pixel_y = 28},/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/medical/medbay{name = "Medbay Central"}) "cpO" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/obj/item/device/radio/intercom{pixel_y = -25},/obj/item/weapon/kitchen/rollingpin,/obj/machinery/camera{c_tag = "Kitchen"; dir = 1; network = list("SS13")},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "cpP" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen #3"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio2"; name = "containment blast door"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/engine,/area/toxins/xenobiology) "cpQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/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{dir = 2; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) @@ -6583,7 +6572,6 @@ "cwE" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple{pipe_color = "cyan"; icon_state = "intact-c"; level = 2},/turf/space,/area/space) "cwF" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/stack/cable_coil{pixel_x = -1; pixel_y = -3},/obj/item/stack/cable_coil,/turf/simulated/floor,/area/assembly/chargebay) "cwG" = (/obj/machinery/computer/scan_consolenew,/turf/simulated/floor{icon_state = "whitebluefull"},/area/medical/genetics) -"cwH" = (/obj/structure/stool/bed/chair/office/light{dir = 8},/turf/simulated/floor{dir = 9; icon_state = "whiteblue"},/area/medical/genetics) "cwI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/obj/structure/stool/bed/chair,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cwJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) "cwK" = (/obj/machinery/atmospherics/pipe/manifold{dir = 2; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"; pipe_color = "blue"},/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/chapel/main) @@ -6610,13 +6598,11 @@ "cxf" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "cxg" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cxh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) -"cxi" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 5; icon_state = "whiteblue"},/area/medical/genetics) "cxj" = (/obj/structure/table,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/medical/genetics) "cxk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cxl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = -28},/obj/structure/dispenser,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "cxm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/assembly/robotics) "cxn" = (/obj/machinery/portable_atmospherics/canister,/turf/simulated/floor/plating,/area/maintenance/starboard) -"cxo" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/medical/genetics) "cxp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/toxins/xenobiology) "cxq" = (/obj/structure/stool/bed/chair,/obj/item/weapon/cigbutt,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cxr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "bot"},/area/assembly/robotics) @@ -6763,7 +6749,6 @@ "cAc" = (/obj/item/device/assembly/timer{pixel_x = 5; pixel_y = 4},/obj/item/device/assembly/timer{pixel_x = -4; pixel_y = 2},/obj/item/device/assembly/timer{pixel_x = 6; pixel_y = -4},/obj/item/device/assembly/timer{pixel_x = 0; pixel_y = 0},/obj/structure/table/reinforced,/turf/simulated/floor{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/toxins/mixing{name = "\improper Toxins Lab"}) "cAd" = (/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cAe" = (/obj/structure/closet/bombcloset,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) -"cAf" = (/obj/structure/closet/l3closet/virology,/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = -30},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/medical/virology) "cAg" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple{dir = 4},/turf/simulated/floor/plating,/area/toxins/server{name = "\improper Research Division Server Room"}) "cAh" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/medical/virology) "cAi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/medical/patients_rooms{name = "Patient Room A"}) @@ -6864,8 +6849,6 @@ "cBZ" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/solar/starboard) "cCa" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/virology) "cCb" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/virology) -"cCc" = (/obj/structure/table,/obj/machinery/newscaster{pixel_x = -30},/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/paper,/obj/item/weapon/pen/red,/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/medical/virology) -"cCd" = (/obj/structure/stool/bed/chair/office/light{dir = 8},/obj/machinery/light{dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/medical/virology) "cCe" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/virology) "cCf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/device/radio/intercom{pixel_y = 25},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit{name = "\improper Departure Lounge"}) "cCg" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit{name = "\improper Departure Lounge"}) @@ -7419,7 +7402,6 @@ "cMI" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"; tag = "icon-whitehall (WEST)"},/area/medical/medbay3{name = "Medbay Aft"}) "cMJ" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 4; icon_state = "neutralcorner"},/area/hallway/primary/central) "cMK" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 2; icon_state = "whitebluecorner"},/area/medical/medbay3{name = "Medbay Aft"}) -"cML" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) "cMM" = (/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/evac) "cMN" = (/turf/unsimulated/floor{dir = 4; heat_capacity = 1; icon_state = "warning"},/area/centcom/evac) "cMO" = (/obj/machinery/door/airlock/external{name = "Arrival Airlock"},/turf/unsimulated/floor{name = "plating"},/area/centcom/evac) @@ -7689,7 +7671,6 @@ "cRS" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/table,/obj/item/stack/medical/ointment,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "cRT" = (/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1480; name = "Confessional Intercom"; pixel_x = -25},/obj/structure/stool/bed/chair,/turf/simulated/floor{icon_state = "dark"},/area/chapel/office) "cRU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor/carpet,/area/chapel/main) -"cRV" = (/obj/machinery/door/airlock/glass_security{name = "Labor Camp Shuttle Airlock"; req_access_txt = "2"},/turf/simulated/floor,/area/security/processing) "cRW" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/floor,/area/shuttle/laborcamp/station) "cRX" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/laborcamp/station) "cRY" = (/turf/unsimulated/floor{dir = 8; icon_state = "carpetside"},/area/wizard_station) @@ -9476,7 +9457,6 @@ "dAl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor{dir = 4; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) "dAm" = (/obj/structure/table,/obj/item/weapon/storage/box/rxglasses{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/medical/genetics_cloning) "dAn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/aft) -"dAo" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/laborcamp/station) "dAp" = (/obj/machinery/bot/secbot/beepsky{desc = "Powered by tears and swet of laborer."; name = "Prison Ofitser"},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=SMine"; location = "Storage"},/turf/simulated/floor{icon_state = "asteroidfloor"; temperature = 273.15},/area/mine/laborcamp) "dAq" = (/turf/unsimulated/wall/fakedoor{name = "Centcom Security"},/area/centcom/evac) "dAr" = (/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) @@ -9516,7 +9496,6 @@ "dAZ" = (/obj/machinery/telecomms/bus/preset_three,/turf/simulated/floor/bluegrid{icon_state = "gcircuit"; name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/server) "dBa" = (/obj/machinery/airlock_sensor{id_tag = "tox_airlock_sensor"; master_tag = "tox_airlock_control"; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/binary/pump{dir = 4; icon_state = "intact_on"; on = 1},/turf/simulated/floor/engine,/area/toxins/mixing{name = "\improper Toxins Lab"}) "dBb" = (/obj/structure/stool/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/evac) -"dBc" = (/obj/effect/landmark/start{name = "Roboticist"},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "dBd" = (/obj/machinery/atmospherics/pipe/simple/insulated{icon_state = "intact"; dir = 4},/turf/simulated/wall/r_wall,/area/toxins/mixing{name = "\improper Toxins Lab"}) "dBe" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/centcom{name = "Morgue"; opacity = 1; req_access_txt = "5"},/turf/simulated/floor{icon_state = "dark"},/area/medical/morgue) "dBf" = (/turf/simulated/shuttle/wall{icon_state = "swall_s6"; dir = 2},/area/shuttle/laborcamp/station) @@ -9526,7 +9505,6 @@ "dBj" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/obj/machinery/light/small,/turf/simulated/floor/plating,/area/toxins/mixing{name = "\improper Toxins Lab"}) "dBk" = (/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/toxins/mixing{name = "\improper Toxins Lab"}) "dBl" = (/obj/machinery/power/apc{dir = 1; name = "Mech Bay APC"; pixel_x = 0; pixel_y = 26},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor,/area/assembly/chargebay) -"dBm" = (/turf/simulated/shuttle/wall{icon_state = "swall12"; dir = 2},/area/shuttle/laborcamp/station) "dBn" = (/turf/simulated/shuttle/wall{icon_state = "swall_s10"; dir = 2},/area/shuttle/laborcamp/station) "dBo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 21},/turf/simulated/floor{dir = 1; icon_state = "neutralcorner"},/area/hallway/primary/central) "dBp" = (/obj/machinery/mass_driver{dir = 4; id = "toxinsdriver"},/turf/simulated/floor/plating,/area/toxins/mixing{name = "\improper Toxins Lab"}) @@ -9610,10 +9588,8 @@ "dCP" = (/turf/space/transit/east/shuttlespace_ew1,/area/shuttle/escape_pod4/transit) "dCQ" = (/turf/space,/area/shuttle/escape_pod4/centcom) "dCR" = (/obj/machinery/computer/telecrystals/boss,/turf/unsimulated/floor{tag = "icon-podhatch (NORTHEAST)"; icon_state = "podhatch"; dir = 5},/area/syndicate_mothership) -"dCS" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = 30},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "dCT" = (/obj/structure/sign/map/right{pixel_y = -32},/obj/structure/rack{icon = 'icons/obj/stationobjs.dmi'; icon_state = "minibar_right"; name = "skeletal minibar"},/obj/item/weapon/reagent_containers/food/drinks/bottle/gin,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/syndicate_mothership) "dCU" = (/obj/structure/sign/map/left{pixel_y = -32},/obj/structure/rack{icon = 'icons/obj/stationobjs.dmi'; icon_state = "minibar_left"; name = "skeletal minibar"},/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/syndicate_mothership) -"dCV" = (/obj/machinery/vending/snack,/turf/simulated/floor/carpet,/area/crew_quarters/bar{name = "\improper Maltese Falcon"}) "dCW" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock{icon = 'icons/obj/doors/Doorsilver.dmi'; name = "Kitchen"; req_access_txt = "28"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "dCX" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/syndicate_mothership) "dCY" = (/obj/structure/table/woodentable,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/syndicate_mothership) @@ -9652,7 +9628,6 @@ "dDF" = (/obj/structure/rack,/obj/item/weapon/crowbar/red,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 26},/obj/item/weapon/wrench,/obj/item/weapon/handcuffs,/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 5; icon_state = "whitegreen"},/area/medical/virology) "dDG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{icon_state = "door_closed"; id_tag = "AuxGenetics"; locked = 0; name = "Genetics Access"; req_access_txt = "9"; req_one_access_txt = "0"},/turf/simulated/floor,/area/medical/genetics) "dDH" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "white"},/area/medical/virology) -"dDI" = (/obj/machinery/atmospherics/portables_connector,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "dDJ" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"; tag = "icon-whitehall (WEST)"},/area/medical/medbay3{name = "Medbay Aft"}) "dDK" = (/obj/machinery/door/firedoor/border_only{dir = 8},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"; tag = "icon-whitehall (WEST)"},/area/medical/medbay3{name = "Medbay Aft"}) "dDL" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/medical/medbay3{name = "Medbay Aft"}) @@ -9866,7 +9841,6 @@ "dHL" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/junction{tag = "icon-pipe-j2"; icon_state = "pipe-j2"; dir = 2},/turf/simulated/floor/plating,/area/maintenance/starboard) "dHM" = (/obj/structure/plasticflaps,/turf/simulated/floor{icon_state = "asteroidfloor"; temperature = 273.15},/area/mine/laborcamp) "dHN" = (/obj/machinery/light/small,/turf/simulated/floor{icon_state = "floorgrime"; temperature = 273.15},/area/mine/laborcamp) -"dHO" = (/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/obj/machinery/atmospherics/portables_connector,/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "dHP" = (/obj/structure/rack,/turf/simulated/floor/airless{icon_state = "asteroidfloor"},/area/mine/abandoned) "dHQ" = (/turf/simulated/floor{dir = 4; icon_state = "loadingarea"},/area/mine/north_outpost) "dHR" = (/obj/machinery/conveyor{dir = 4; id = "mining_north"},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/north_outpost) @@ -9905,7 +9879,6 @@ "dIy" = (/turf/simulated/floor{icon_state = "dark"},/area/tcommsat/server) "dIz" = (/obj/machinery/telecomms/receiver/preset_right,/turf/simulated/floor/bluegrid{icon_state = "gcircuit"; name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/server) "dIA" = (/obj/machinery/telecomms/processor/preset_three,/turf/simulated/floor/bluegrid{icon_state = "gcircuit"; name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/server) -"dIB" = (/obj/structure/closet/secure_closet/scientist,/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "dIC" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1; pixel_y = 2},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/simulated/floor/plating,/area/tcommsat/server) "dID" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/wall/r_wall,/area/construction/hallway{name = "\improper MiniSat Exterior"}) "dIE" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/mine/north_outpost) @@ -9942,7 +9915,6 @@ "dJj" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/bluegrid{icon_state = "dark"; name = "Mainframe Floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/server) "dJk" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/bluegrid{icon_state = "dark"; name = "Mainframe Floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/server) "dJl" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/bluegrid{icon_state = "dark"; name = "Mainframe Floor"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/server) -"dJm" = (/obj/machinery/mass_driver{dir = 2; id = "chapelgun"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/chapel/main) "dJn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock/maintenance{icon_state = "door_closed"; locked = 0; name = "Storage Room"; req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "dJo" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/aft{name = "Aft Maintenance"}) "dJp" = (/obj/structure/girder,/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) @@ -9974,7 +9946,6 @@ "dJP" = (/obj/machinery/door/airlock{id_tag = "AuxShower"; name = "Shower"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "floorgrime"},/area/crew_quarters/toilet{name = "\improper Auxiliary Restrooms"}) "dJQ" = (/obj/machinery/door/airlock{id_tag = "AuxToilet2"; name = "Unit 2"},/turf/simulated/floor,/area/crew_quarters/toilet{name = "\improper Auxiliary Restrooms"}) "dJR" = (/turf/simulated/floor{icon_state = "floorgrime"},/area/crew_quarters/toilet{name = "\improper Auxiliary Restrooms"}) -"dJS" = (/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/pen/red,/obj/structure/table,/obj/machinery/requests_console{department = "Virology"; name = "Virology Requests Console"; pixel_x = 29; pixel_y = 0},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/medical/virology) "dJT" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor{icon_state = "floorgrime"},/area/crew_quarters/toilet{name = "\improper Auxiliary Restrooms"}) "dJU" = (/obj/structure/table,/obj/machinery/power/apc{dir = 1; name = "Robotics Lab APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 23},/obj/item/weapon/crowbar,/obj/item/device/multitool{pixel_x = 3},/obj/item/device/radio/headset/headset_sci{pixel_x = -3},/obj/item/device/multitool{pixel_x = 3},/obj/item/stack/cable_coil,/turf/simulated/floor{icon_state = "bot"},/area/assembly/robotics) "dJV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{icon_state = "floorgrime"},/area/crew_quarters/toilet{name = "\improper Auxiliary Restrooms"}) @@ -10124,7 +10095,6 @@ "dMJ" = (/obj/machinery/computer/scan_consolenew,/obj/machinery/camera{c_tag = "Genetics Lab"; dir = 4; network = list("SS13","Medbay")},/turf/simulated/floor{icon_state = "whitebluefull"},/area/medical/genetics) "dMK" = (/turf/simulated/floor{dir = 4; icon_state = "whiteblue"},/area/medical/genetics) "dML" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "white"},/area/medical/genetics) -"dMM" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor{icon_state = "white"},/area/medical/genetics) "dMN" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/genetics) "dMO" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whiteblue"},/area/medical/genetics) "dMP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 9; icon_state = "whiteblue"},/area/medical/genetics) @@ -10167,7 +10137,6 @@ "dNA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/assembly/chargebay) "dNB" = (/obj/structure/stool/bed/roller,/obj/machinery/door/window/westleft{dir = 1; name = "Monkey Pen"; pixel_y = 2; req_access_txt = "9"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/genetics) "dNC" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/stool/bed/roller,/obj/structure/window/reinforced{dir = 1; pixel_y = 1},/mob/living/carbon/monkey,/turf/simulated/floor{icon_state = "freezerfloor"},/area/medical/genetics) -"dND" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/closet/wardrobe/genetics_white,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/medical/genetics) "dNE" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_Toxins = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/assembly/chargebay) "dNF" = (/obj/machinery/light,/obj/machinery/camera/autoname{dir = 1; network = list("SS13","RD")},/turf/simulated/floor/mech_bay_recharge_floor,/area/assembly/chargebay) "dNG" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/bluegrid,/area/assembly/chargebay) @@ -10326,7 +10295,6 @@ "dQD" = (/obj/machinery/computer/telecrystals/uplinker,/turf/unsimulated/floor{tag = "icon-podhatch (WEST)"; icon_state = "podhatch"; dir = 8},/area/syndicate_mothership) "dQE" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/hor) "dQF" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/simulated/floor{icon_state = "bot"},/area/toxins/storage) -"dQG" = (/obj/structure/closet/secure_closet/scientist,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "dQH" = (/obj/structure/table,/obj/machinery/cell_charger{pixel_y = 5},/obj/item/stack/cable_coil,/obj/item/device/multitool,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/engine,/area/toxins/xenobiology) "dQI" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 10},/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "dQJ" = (/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) @@ -10409,131 +10377,131 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaahaaeaanaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaacaadaahaahaaaaaaaaaaalaaaaaaaaaaahaacaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaeaaeaaaaaaaaaaalaaeaaeaaaaaeaaeaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeaapaapaapaapaapaaeacOaaeaapaapaapaapaapaaeaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaitaiuaivaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeaaAaazaazaazaazaaEadAaaDaaFaaFaaFaaFabaaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLajaajbajaadqaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaahaaeaavaavaavaavaavaaeadAaaeaavaavaavaavaavaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaacaadaadaaeaaaaaaaaaaawajaajDajaaawaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaTaaTaaOaaTaaTaaeadAaaaaaTaaTaaOaaTaaTaaaaacaaeaaeaaeaaeaacaadaacaaeaaeaaeaaaaaeaaeaaeaaaaaeaaeaaeahqaaPahqakeakfakgahqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeacNacNacNacNacNaaOafiaaOacNacNacNacNacNaaeaadaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaeaaaaamaaNaaPaasaataaGahqaaaaaadBfdBmdBmdBmdBnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeadxadyadyadyadyaaEadAaaDadCadCadCadCadDaaeaahaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaiaaiaajaaiaajaaiaaiaaaahqaamahqahqabMahqahqaaaaaaahTabKdpCaeDahTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaabCaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeaavaavaavaavaavaaeadAaaeaavaavaavaavaavaaeaahaaaaaeaaeaaeaaaaaaaaaaaaaaeaaeaaiabeaaoabfaaoabgaaiaaeaaeaaaahqabmabnabkablabiabjabhdAodAodAoabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaeadwaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaadaaaaaTaaTaaOaaTaaTaaaaAwaaaaaTaaTaaOaaTaaTaaaaahaaaaaaaaaaaeaaaaaaaaeaaeaaeaaaabbawmayPaaRayQawoaxKaaaaaeaaeawyayUayTawsaySawscRVcRWcRXcRXcRXcRWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaeaahaahaahaahaahaahaahaaaaelaaaaadaahaahaahaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeacNacNacNacNacNaaOadAaaOacNacNacNacNacNaaeaadaaaaaaaaaaaeaaaaaeaaeaaaaaaaaaaaiawHazaaaCazdayNaaiaaaaaaaaeahqazfazeazhaAmabiabjabhcRXcRXasEahTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaabCaupaupaupabCaaaaelaaeaupabCaupaupabCaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeadxadyadyadyadyaaEadAaaDadCadCadCadCadDaaeaacaaeaaeaaeaaeaaeaaeaaaaaaaaiaajaaiaaiaxRaxOaxQaaiaaiaxKaaiaaeahqaxIaxHaxGaxFaaaaaeaxNaxMaxLasAahTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaaafgafgafgafgafgaupafhaupafgafgafgafgafgaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaavaavaavaavaavaaeadAaaeaavaavaavaavaavaaaaahaaaaaaaaeauWauWauNauWaaiaaiayCaxkaytayvaaRaysaBMaygayeaaiaaeahqaybaxXawCaAlabiabjabharEarEasCahTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeafJafKafKafKafKaaEafMaaDafOafOafOafOafPaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaahaaaaaOaaTaaOaaOaaTaaaajdaaaaaTaaOaaTaaTaaOaaaaaaaaaaaaaaeauWauWauNauWaaiaxaaaBaayaayawrawxawuaaJawwawAaaiaaeawyawEawDawCawBawsasDauxarEarEarEcRWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeavuavuavuavuavuaaeafMaaeavuavuavuavuavuaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahawLaaTaaTaaOaaOaaOabYaaTaaTaaOaaOaaOawLaaaaaaaaaaaaaaaauWaaiaajaaiaaiaFDawZaayaaxawXaxcaxmaaoaaWazRaaiauNahqaxyaxpaxAaxzaxoabjabhahXahXahXabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaacaahaahaahaacaahaahaacaaaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaabCabCaupabCabCaaeagTaaaabCabCaupabCabCaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaOaaOaaTaaTaaOaaaabYaaaaaTaaOaaTaaOaaTaaaaaaaaaaaaaaeauWaaiauUauVatBaaRauRaaRauSauTaaUauPauQaayaayauOauNauMauDauCauzahqaaaaaeahTahRahRahRahTaaaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaeaauvaeaaaaaaeaacaahaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeafgafgafgafgafgaupafMaupafgafgafgafgafgaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeavtaugaugaugasnaaeaaeaaeaaeaaeaaeaahauNaaiavGavMaayaayavCavDavzavBadbavyavwaaRatBavrauNavsavoavnavqavpaaeaaeahaahmahmahmahpaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaeaauXaaqaaraaraauaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaaafJafKafKafKafKaaEafMaaDafOafOafOafOafPaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaeaaaaaeaaaaaaaaaaalaaaaaaaaaaaaaaaaaaaaeauWaaiabuaboaboabpaboabqaboaEzaboaboaboabtaboaaiauNahqaEGaEBaEAahqaaaaaeaaaaaaaaaaCVaaaaaaaaaaaeaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeauvaEgaehaeiaejaekaaaaacaahaacaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaahaaeavuavuavuavuavuaaeafMaaeavuavuavuavuavuaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaaaaaaaaaaaeaaaaaeaaeabYaaeaaeaaaaaaaaaaaaaaaauWabbabJaboabDaayabEabqabFaENabGaboabHaayabIaaiauNawyavoavnavqavpaaaaaeaaaabvabvabvabvabvaaaaaeaaaaaaabwabwaWyaWMaYuabwabwaaaaaeaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaeaaaaaaaaaaaaaeaaElaaMaaraaraaLaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaacaaaabCabCaupabCabCaaaafMaaaabCabCaupabCabCaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaeaaaaaeaaaaaaajEajFajEaaeaaaaaaaaaaaaaaeauWaaiaGeaboaccaayacdaceaDRaDSacgaboachaayacgaaiauNahqaDtauCaDrahqaaeaaeabvabvaDwaDvaIQabvabvaaeaaeabwabwaNTaDAaDCaSMaDOabwabwaaeahwahwaLRahwahwaaeaaeaaeaaeaeaauvaeaaAhaAiaAjaeaaAhaAiaAjaeaaeaaBxaeaaBKaBDaAiaCBaAiaAiaAPaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaahaaaafgafgafgafgafgaupaGSaupafgafgafgafgafgaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaeaaeaaaakhaQJakhaaeaaeaaeaaeaaeaaeauNaaiaboaboabsactaboabqaboaEtabqaboabsacvabqaaiaajayOaWfaWeaWkayOaaeabvabvaKMaEqaEpaEpaJtabvabvaaeabwaFqaEaaEbaEeaUCaVuaFFabwaaeahwaSNaSPaWxahwaaaaaaaaaaaeaeaaujaeaaDpaCUaDoaeaaDXaDGaDWaeaaiaaCEaCCaCFamiamiamiamiamiayEaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaahaaeafJafKafKafKafKaaEafMaaDafOafOafOafOafPaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeakEakFakGakHakIaaaaaeaaaaaaaaeauWaBuaBvaBwaByaBAaAQaARaATaAWaBfaBqaCYaBtaBLaFVaBJaBIaBWaBRaBOaBNaaeabvazEaBBaBzaHMaAXaBEaHKabvaaeaIsaBHaLCaCvaCwaCbaEVaEyaERaaeaEIaAqaFbaCAaLRaaaaBVaBVaBVaeaaxTaymayoaxWaxWaxUaxWaxZaydayFagGagGagGayEamiamiamiamiamiayGaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaahaaeavuavuavuavuavuaaeafMaaeavuavuavuavuavuaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaaaaaeaaeakTakUaFRanWakTaaaaaeaaaaaaaaeauWaCNaaCaCTaCOaCPaCIaCJaCGaCHaCLaCMaNbaFYaFcaDgaCHaDhaSLaGcaCTaDkaaeabvaCtaBBaCxaBGaCQaBEaCjabvaaeaSJaDbaQgaDcaSKaDMaQgaCXaRvaaeahwaAqaAraCAahwadradradYagRaeaaeaaeaaxJaieavhavhazqayYaznavvavvayWayVayJamiamiamiamiamiayXaeaaeaaeaaaaaaeaaaaaaaaaaaaaaaaaeaaeaaaaaeaaeaaaaaaaaaafMaaaaaaaaeaaaaaaaaeaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaoFaoFaKCalGalGalGalHakTaqaavbareakTaWoagVaWoajeaaeauNaaiaaiazXazZaAaaaiazKazMazKaeMaeMaeMaeMaeMaABaAAaAzaexaexaexabvabvabvazbayZazlaEmazjayRaBFabvaaeabwaKYaCeaBYaCcaAIaBXauYabwaaeahwaAqaAraCAahwaAcadraAdadsaAeaKGaeaavfaieavhavjavkavkavkavxavvavSavNavTamiamiamiamiamiawbauiawdawcaaaaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaeaaaaaaaaaafMaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNOaMzaMuaoHamnaMmaMlakTamoawJamqakTaLOaLEaEHaWoajeauNauNaaiaaiaAHaaiaaiaaiaAHaaiafQaAGaAEaAFaeMaCdaCKaCzaexaikaFMazmabvabvabvaAtaAsabvabvabvabvabvawhabwabwawGawIaEnawzawFabwabwawhahnaDeaDjaEoahwadradradsadsaALaAMaeaaHJaieaxEaiXaiUaiUaxPajJawKahSaliaxBamiamiamiamiamiaxBaxCakOakVaaaaaeaaaaaaaaaaaaaaaaaeaaaaaaaaaaaeaaeaaeaaeafMaaeaaeaaeaaeaaeaahaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaoFajCaoFaveamnavXaxbalDakTalManbakTaxDazoawYatCajeaaeaaeaaeaaaaaeaaaaaaaaaaaaaaaakBakAakCatUarGasBaqvaqAaexakSailakmabvakuakoakpakxawtatyatwaoTabvanMamBaaQaqTaqwanYattatsaaQahWaqqahnatvatuakvahwamzadsadsadsadsadraeaalraltalsalkaljaljallajJakOajcaliakWamiamiamiamiamiakWaleakOakVaaeaaeaaaaaaaaaaaaaaaaaeaaaaaaaaeaaeaaaaaaagUaiOagUaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaqjamZaqjaqXargaqlaqmarkarJalubGxaWoarTamuasFatQaiZaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeafQaeMaeMaeMaeMajLacZajMaexaAuailaAvabvaqcaipaiqairaiJakbacBanHakdakwakkajOajNajVajPajXajWajZajYakzakaakjakcarfahwaicadsajwaroaqEadrajfahYaieaiYaiXaiVaiUaiTajJajKahSajHajBamiamiamiamiamiajyajzajkajxaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaamXamYamXaaaaaaaaeaaaaakaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaoFapeaoFanQaisaiDaoOaoFbHMapyarXapKarXapvapRanJaWoapZaKBagVaKBaKBaKBaaaadradradrafQanianEanjaqyahGahDahEapWahBahAahBaiNahKahKaiEaiCaiLaiKaiHaiHapMahJahIahHaguahzahyaiAaizaiyaixaiwagBaijaiiahxahwagQadsadsanIadsadraiaahYaieagGaigaifaiPaihahPahQahSagNahUamiamiamiamiamiafFaeaahOaeaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaagUanDaqRanDagUaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaoFamWaqkaqkaqkagnamVaoFaoYaiBbrTaWoanKahlakyanFaWoaKBaKBarnaKBafNaKBafZadraklaicafQamgafXafWamOageagfaggaexagaagbagcabvagjagkaglaoyabQaenaidanGaexakiafzahiaguahkaffaimahtahvafjahoahnahnanhadradradradradrafHadradraeaagIagHagGagGagLagKagJahrahragMagNahNamiamiamiamiamiafFbWIcsgavAavAavAavAavAavAafravAavAaaaaaaaaeaaeaaeaoBaoCamYaoDaoEaaeaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaaaaaaaaaaaaaaaaeaaaaaeaaaaaeaaaaoFaesaiFaiIajqalKammaoFbrTaiBbrTaKBardbrTbrTbrTdKcaKBbrSaKSaKBaKBaKBahLafxagOaviahMahjahuafAagZaeraiRalvabvahgafwaheabvabvacCagyacCabvahhahCagWaduaflafzagxagwaguagsagiaftagDafjagpagoagmafeaeYaeYaeYafGaeXaioaeXaeXahFagEagFafLafLafIadiagzafCafCafCafDafBamiamiamiamiamiafFaUoaQsavAaePakKaQsaeZavAagCackavAavAaaaaaeaaaaaaaptapuaoIandaptaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaKBaKBafUaKBaaeaaaaaeaaeaaeaaeaaeaKBafUaKBaoFahdahfaoFaoFaoFaoFbrTahbarXaeJajnagqaiWbrTajAaKBbHMagSagvafVaKBadYahsagPagAafQagYagXagtafTagdaiRacPacIaghaeEaeFafYafbaemaenaeoabvaenacBafkaexafSafzafoafnafqafpaeHaeGafcafjahVacTacTaaQaaQaaQaaQaocadradradradraeaadZadXadFadnadkadjadgaeRaeVaeeaiSaecaebaebaebaebaebaeWaThaQsavAaQsaQsaQsaQsavAaQsaQsafEavAaaaaaeaaaaaaaptanoadfafmaptaaaaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKBajtbMbaKBanLamsamsamsamsamsajsaKBbrSajtaKBaeTaDnaefbMeaspaKBbwqaedbMbaKBardafdafuaeSaeOaKBaeubrTafvafyaKBaeLaeKaczaczaczacKacKacKacKadWaiRassadTadUaeAaeNadQaeIadOaeBaevaewaenaaXafsaexaezadRadPadNadMadLadJadKadJadIadHafaadEadEaepadBaaQaocadrabXabZaklabcabcabcabcabcaciacmacfabcabcabcabcabcabVavAabWacbadlavAavAaQsavAaetaQsacnaQsavAaThaddacoavAaaaaaeaaaaaaaptaqZadearbaptaaaaaeaaaaaaaaaaaeaaaaaeaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaeaaaaaaaaaaaaaaeaaeafUaeCaeUadVafRbrTbrTbrTbrTbrTahcacqaeqbKoaaIacrbrTbrTbrTbrTabPaqhbQSadradradradradradradradradradracAadradradrabUaczacyacxacwacuacsacKacLaiRacPacIacJacQacHacSadoacFaeyacGabQacDacEaegaduadzadvadcadaadtadmacWacVacYacXacUacTabNadpabNabRaaQaaHaaSaaKaibadsabcaaZaaYaaVabyabxabrabdabcabBabzabAabcavAavAaQsaThaQsaUoavAaQsavAadlaQsabOaQsavAabSaQsabOavAavAcgaavAavAarNarNabTaclarNarNcgaarNarNacMarNaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeajGajGaaeaaeajGaaeaaaaaeaaeaaeaKBaKBaxSaKBaKBasWasXasXasXasXasXasYaKBaKBaKBaKBaGraGCaGCaGCaGCaGCaGVbQSadraInatDatEatFawpatGatIasaaFiatKasaasaascaApaAkatSatWatVauaatYacKatoatmatnabvabQatpabvabvaEratraDmazpabvaEJaAoaexaexaaQazuaszaslazuaaQazCazBaaQazyacTacTaAbaAbaAbaaQaaQaocadradsauqadsabcarmauoaumaulaukaDYarHausautauuarFabcauravAaufaddacoadGavAaQsavAavAavAbvSavAavAavAavAbvSavAarOaQsbWIaUoaQsaQsaubatRarNaQsaQsaucarNcsgarNaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeajGajGajGajGajGarqajGaaeaaeaKBaKBaKBatHaBPaKBaaeaaaaaaaaaaaaaaaaaaaaeaaeaaeaaaaKBasLaUDbHMarlbrTbHMaEsaDuaDFaEvagrasNamJadradrataatbatbatbatbatbatcadraczasGasKasJasIasHasqasraiRassasgaskasiasgaskasjaskasgaskaAyaskasjasbarZashasgaqxapoaskaskaskasgaskasmafQasoainainainainaeMaocadradsadsadsabcabcabcabcabcarMatzaDialZarcabcabcabcatkavAaUoaQsabOaQsavAaQsavAbbNavAatjbvHbvHbvHatiathbYbbYbbYbbYbbYbbYbbYbbuqaQsaQsaQsaQsatgacMasRacMaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaeaaeajGaaeapBaaeajGajGajGajGajGajGaCDaAxaCDafRaqhaKBaKBaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaKBaKBaKBbHMbrTavabHMaGPaAfaGJazTaFubJhazYadraaaaaaaaaaaaaaaaaaaaaaaaaaaaczaqiaqeaqdaqgaqfaoZapcaqtaquaqpaqsaqnaqoaqsazcaqDaqoaqBaqCaqsawvaqQaqPaqsasVaqMaqFalQalQaraaqYaqVaqUaAnaqSajgajhajiaBraeMaocadrasSadYasTabcarUabzaseabyabxabrasOabcasUaaYasZabcatdavAavAavAbvSavAavAaQsavAaQsavAatfarNarRarNarWarNarNarNarNarNarNarNarNarNarNbWIarNarNarNarNarNarYaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeajGajGajGajGajGajGaaeajGajGajGaaeaKBaKBaKBarnaqhbrTaKBaaaaaaauIauJauKauJauLaaaaaeaaeaKBaovaKBbtwaouaXOaXOaDlbrTaKBaDfarSaowaoxadraaaavUavUavUavUavUavUavUaaaaczapiaosaoraoqaooacKaoLapqaiGayMapfapnaiGapzapfapqapAapraiMapwapxaxnaoMaoQaoPaoJapaanSamSapaaozaoKapbaoVaoUaoXaoWapNapLaeMaocbaabaabaabaabaaarFarDaryarLarKarIarHarparrarjarmabcartarsbvHbvHaribvHbvHbvHaAgbvHbvHarQarNapSazrapUapTasPaDQasPatLatMatNatMatOarNarNarNatLatMatOatPasPaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeajGajGajGajGajGajGaotajGaaeaaeaaeaaeaKBbHMaqhardafUaaaaaaavLaUaapIavOavLaDLaCraCsaruaruaruaruanOaruaruadradraKBanNaKBadrakYadraaaavUavVavWaBTavYavZavUaaaalLanPanRalBamPaCuacKajjavKajlaeMajmavJajoaeMajpawPajraeMapHajpapsaeMalfanAanzanCanBaldaldalXanxanwaldaldaneaeMaeMaeMaeMaeMaocbaaapVapXanlbaaabcabcabcabcapYaqOaqbalZarcabcabcabcavAaqWaUobWIaQsaUoarhaQsarNarNarNarNarNanVaAJanUanTauyaACauyauAauBatTauBauEatMauFatMauGauBatTatPauHaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeajGajGangajGajGajGajGaaeaaaaaeafUbtwaqhbrTaKBaaaaaaauKawQawRawQauKaCqaADaBdaruazJaBhaCpaBeaBgaruatqamHaknaxdazIadrakYadraaaavUaxfaxgaxhaxiaxjavUaaaalLamNamNamQamPazHacKajQajRajSaeMajTajRajSaeMajUajRajSaeMamKamLaoNaeMamEamGamFamIazLaldaunamyamxamAazkaztaneamDamCamCamCamCansbaaaomaolaokbaaapmappapmabcaoAaopaonaodaofaobaobatlbvHanXarNarNarNarNarNarNarNannannanaaBsanfancamUamTavFasPasPaaeaaeauBavHauBauBauBauBauBavIauBauBayIaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaajGaaeajGaaeaaeajGajGaaeaaeaKBaKBbMeaqhaKBaKBaaaaaaavLawQawQawQaylazGavRavRazFawUaynaypayqayraxVaqzaywayxayyayzadrakYadraaaavUayAayBasfaxiayDavUaaaalLalIalCalBalFalEacKakqajRakraeMakqajRaksaeMakqajRaktaeMamMacRalNaeMalValUalTalSalRaldayHajualPaoRaoSapGanealOaeXaeXaeXalYalWbaaankanmanlbaaaqNanqanqantanranvanuabcabcabcabcabcavAanyarNamkayaanZamwaxYbwtamlaycaycaycaycampamvamtawNawOasPamraaeaaeaaaaaaaaaaaeaaeaaaaaaaaeaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaajGajGajGaacaaaaaeaaeaaeaKBaKBbHMbHManpafUaaaaaaaaaauKawRawRawRauKaxeawVawWawTawUavRawSavPavQaruazNazOazPazQahZadrakYadraaaazSazwazUazVazWauwavUaaaaczakXakRakQakJakDaczakLakMakNafQakLakMakNafQakLakMakNafQalwakPalJafQalfalhalgafQalcaldatAalbalaapEapFatxaneakZbaabaabaaalpbaabaaalqamcbaabaaamfameamdajIamRamjamhalZamaabzabAabcambacjarNalmazraycaycalnaloaAJaANalyalxalxalxalAalzayiayjaykaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaacbmNaAZbmNaahaaaaaeaaaaaeaKBafVarnbGxaqhaKBaKBaaaaaaavLaBaaBbaBcavLbAYaCraCsarubxQavRbzgavPbyraruaBibjyaBkaBlbtbadrakYadraaaaBnavUaBoaBpaBoavUavUaaaacKbnzbnGbnEbnEbnzacKbnNbnVbnObnZbnObnVbnObyGbnObnVboaboebobbombolbxKbygbywblxafQainanebBiaqrbpXbqsbqWbCXaneakZbaabnubnvbntbpmbpmbpnbjWboHaZHbjVbjTbjUbiQbznbiLarHbhPbhObhMbhGabcaQsacjarNbmMaAJbmLbmJbmHbmFbmEbmAbnyazzazzazzbnwbnxayiayjazDaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaabmNbJAbmNaaeaaeaaeaaeaaeaKBbrTbrTbrTarVbaQaKBaaaaaaaCmauJaCnauJaCoaaaaaeaaebDYbDWbFNbEMbGCbGqarubglbgmbkxaCybDdadrakYadraaabBjaaabgobgnbgoaaaaaeaaaacKbphbnGbnEbnEbpiacKarvbmUbpjbEBbpobplbplbEIbplbprbpobpvbpubogbpsbAgbAhbzRbzZafQainaneanebEcbubanebsianeaneakZbaabaabaabzJbcEboDboEbkkbklbotbkgbjtbkjbkebkebkfbkpabcabcabcabcabcaThacjarNaBZbkbaDxboZboOboIboYboSaAObpgbpebpfaASbpdayiayjaAUaAVaaebooaaaaaaaaaaaabooaaaaaabooaaeaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaabmNaAZbmNbmNaDIaDJaDKbmNaKBaKBaKBaKBbrTaqhaKBaaaaaaaaaaaaaaaaaaaaaaaaaaeaaebKpbKabJEbIZbIsbIqarubihaFeaFfaFfaFfbdMbxsbdMbdMbhJbhIbhLbhKbhTbhSbjnbdMacKbqVbGgbGObFMbGcbkQbELbELbELbEKbqDbqEbqIbFDbqEbqQaLXbqMbqLbqPbmRbAnbANbAPbBdafQainajvaeMbHmbxdanebxrbwjaeXbqibaabpZbqbbpWbugbaabdxblVbmQbaablHblAblFblNblFblJblMblnbkqbkobknabcaQsacjarNbpGbpFbpEaCabpObwtbpLbpIaAObpDasPasPaCfasPasPaCgbeQaCiaaeaaaaaaaaaaaaaaabBlaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaabmNbmNaEUbJJaEWaCkaCkaCkaEXbJFaEYaEZaKBaKBaqhaKBaaaaFaaFaaFaaFaaFaaFaaFaaaaaaaaruaruarubNybNSaruarubrxbrAbrzbrpbhrbnsblIbpkbqjbrHbrIbrBbrCbrDbGUbrLbrMacKacKbGWaczbHlaczaczaxwaxwaxwaxwaxwaxwaxwbGSaxwbiBawnblTaoaaoaaoabrmbrmbrmbrmbrmaoabrlaoaaqLaqLaqLaqLbrnaqLakZbaabaabaabxtbhDbaabrcbaabHbbaabrkbmVbmWalZbnabnebngalZbnkbnBbnqabcbNoacjarNasPasPasPasPasPbwtbrdaDBaAObqXasPaDDaDEaycbtJaycaDHazDaaeaaaaaaaaeaaeaaeaaeaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaabmNaEUaEUaEUaCkaCkaCkaCkaCkaCkaEUaEUaGtaKBaqhafUaaaaFaaFaaFaaFaaFaaFaaFaaaaaaaaGubymbsebaVbaybkJbbUboubaTbaUbaRbisbiqbikbgBbhrbicbidbtmbipbimbDpbAObAQbAfbtibDebDoaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaabEdbEwbEpbiCaoabiEbiDbivaoebvnaogaohaoiaojaoabyEbqUbtXbvcaDsaqLbynbaabhEbAabcEbhDbaabhCbaabKlbaaaUwaUfaUtaCWaCWaCWaCWaCWaCWaCWaCWaCWavAbzjarNaTMaTBbtgaFZasPbylaAJaDBbhRaDHaEOaEPaEQaoGaAKaESawMazDaaebooaaeaaeajGajGajGaaeblfaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaabmNbwkaCkaCkaCkaCkaCkaCkaCkaCkaEUaEUaEUbstbCmaKBaaaaFaaFaaFaaFaaFaaFaaFaaHVaHWaHXbwlaHZbcKbcGaIcaIdaIebpRbcIbdzbdMbdMbnlbdMbdMbdMbnmaYhbjqbjsbjgbitbjjaYhaYhaYhbjlaaaaaaaFsaFsaFsaFsaFsaFsaFsaaaaaaaxwbjuatZbjwapdbjvaohbjFapgaphbxAapjapkaplaoabyXaDqbyWbjzbzCaqLbnMbaabaabaabiFbiFbaabaabaabaabaaaXEaXXaZaaCWbrwaHebkUaVJaUBbaMaWiaCWciUacjarNaTBaTBbjcaHFaHGazrampaGhbjdbthasPbhfaGkaGlaGmaGnaGoazDaaeaaaaaaaaebtNbwxajGaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaebmNaJiaCkaCkaCkaCkaJjaCkaCkaCkaCkaEUaJkaKBanpaKBaaaaFaaFaaFaaFaaFaaFaaFabFOaJmbFOaHYaJnaJoaJpbrgaJraJsbrfbewbetbldblabkZbJibJibJibUraYhbAcbmIbkWbkRblgbkNbkPbkLbkMbzwaGUaGUbkIbkKbyLbkHbkBaLUaLUbyVbkwbkzaLXbiCaoabkvaohapOaohapPaohapQaohaohaoabzYaBSbyWaBUbwoaqLbdjbuSbdfbuSbkcbjGbdlbeVbkibdkbdhbiGaIGbfhaCWbfTbdibdibdibdebchbbDaCWbPMacjarNaKhaKhaHEaHFaHGbkbbypbyobjHbjRaHNaHOaHPaHQaHRaHSawMazDaaeaaabyhaaeajGajGajGaaeaaebooaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKqaCkaCkaKraCkaCkaCkaCkaCkaCkaCkbytaKBaKBaqhaKBaaaaFaaFaaFaaFaaFaaFaaFaaKsaKtaKsaKuaJnaKvaKvaKwaKvaIebeKbeLbftaKBaKBaKBaKBaKBaKBasNaYhbmybmzbmzbmwbmxbmxbmxbmvbjlaaaaFsbzuaGYaGYaGYaGYaGYbAJaFsaaaaxwblUawnblTaoablRaqGaqHaohaqIaohaqJaqKaohbmubBvbBDbBhbBtbxiaqLblZbmabliblibliblkbllbllblmblmblBbhvbhwbfBbhzaeQaIyaIyaIybgybiHbgUaCWaiQacjarNaKhblObtoaGaasPbviaAJbysaAObzxasPaJeblhaDxaDxaDxaDyazDaaeaaaaaaaaeaaeaaeaaeaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLjaLkaLlaaaaLmaCkaCkaCkaCkaCkaCkbPDbPHbPHbQabzKaKBaUDaqhaKBaaaaFaaFaaFaaFaaFaaFaaFaaLoaHWaLpbPkaJnaLraKubvjaLtaLubBAbBIbBkbBrbqrbqnbqJbqHaKBbBOaYhbyjbmzcjRcnmckeckeclsbyIbjlaaabNqbyJaGYbOHbOcbPXaGYbyMbORaaaaxwbiBawnblTaoabyNarxadSarzarAarzarBarCbyPaoacoucpTcwQcxabPtaqLbqYaIEaIFaJSaKRbtHbztbQmbzqbzsbzhbribrebrhbqZbraadhbvCbySbyQbwHbwmaCWaUoacjarNasPbwtbwtasPasPbwtbzNbzMbzObDvasPasPaCfasPasPaCgbdIbDrbDsaaaaaaaaaaaeaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeaapaapaapaapaapaaeacOaaeaapaapaapaapaapaaeaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeaaAaazaazaazaazaaEadAaaDaaFaaFaaFaaFabaaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaahaaeaavaavaavaavaavaaeadAaaeaavaavaavaavaavaaeaahaaaaaaaaaaaeaacaadaacaaeaaeaaeaaaaaeaaeaaeaaaaaeaaeaaeaaeaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaTaaTaaOaaTaaTaaeadAaaaaaTaaTaaOaaTaaTaaaaacaaeaaeaaeaaaaaaaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaitaiuaivaaaaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeacNacNacNacNacNaaOafiaaOacNacNacNacNacNaaeaadaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaiaaiaajaaiaajaaiaaiaaaabLajaajbajaadqaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeadxadyadyadyadyaaEadAaaDadCadCadCadCadDaaeaahaaaaaeaaaaaeaaaaaaaaaaaaaaeaaeaaiabeaamabfaamabgaaiaaeaboajaajDajaaboaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaabCaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeaavaavaavaavaavaaeadAaaeaavaavaavaavaavaaeaahaaaaaeaaeaaeaaaaaaaaeaaeaaeaaaabbawmayPaaRayQawoaxKaaaaboakeakfakgaboaboaboaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaeadwaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaadaaaaaTaaTaaOaaTaaTaaaaAwaaaaaTaaTaaOaaTaaTaaaaahaaaaaaaaaaaeaaaaaeaaeaaaaaaaaaaaiawHazaaaCazdayNaaiaaaaboauYauWaqiaviavnaviaaaaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaeaahaahaahaahaahaahaahaaaaelaaaaadaahaahaahaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeacNacNacNacNacNaaOadAaaOacNacNacNacNacNaaeaadaaaaaaaaaaaeaaeaaeaaaaaaaaiaajaaiaaiaxRaxOaxQaaiaaiaxKaaiavoaczaczaczaczaczaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaabCaupaupaupabCaaaaelaaeaupabCaupaupabCaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeadxadyadyadyadyaaEadAaaDadCadCadCadCadDaaeaacaaeaaeaaeaaaaaaaaeaaaaaiaaiayCauaaytayvaaRaysaBMaygayeaaiatYaczatWatVatUaczaczaczaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaaafgafgafgafgafgaupafhaupafgafgafgafgafgaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaavaavaavaavaavaaeadAaaeaavaavaavaavaavaaaaahaaaaaaaaeaaaaaaaaeaaaaaiauQaaBaayaayawrawxawuaaJawwawAaaiauMaczauzauxauDauCauOauNaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeafJafKafKafKafKaaEafMaaDafOafOafOafOafPaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaahaaaaaOaaTaaOaaOaaTaaaajdaaaaaTaaOaaTaaTaaOaaaaaaaaaaaaaaeaaaaaiaajaaiaaiasrawZaayaaxasqaxcaxmaaoaaWazRaaiasEasDasJasIasHasGasCaczaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeavuavuavuavuavuaaeafMaaeavuavuavuavuavuaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahawLaaTaaTaaOaaOaaOabYaaTaaTaaOaaOaaOawLaaaaaaaaaaaaaaaaaaaaiauUauVatBaaRauRaaRauSauTaaUauPasKaayaayaaiaqiaczatCatoatSatKatmaczatnaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaacaahaahaahaacaahaahaacaaaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaabCabCaupabCabCaaeagTaaaabCabCaupabCabCaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaOaaOaaTaaTaaOaaaabYaaaaaTaaOaaTaaOaaTaaaaaaaaaaaaaaeaaeaaiavGavMaayaayavCavDavzavBadbavyaqpaayaxaaaiaqiaczaqgaqfaqeaczaczaczaaaaaeaaaaaaaaaaaaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaeaauvaeaaaaaaeaacaahaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeafgafgafgafgafgaupafMaupafgafgafgafgafgaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeavtaugaugaugasnaaeaaeaaeaaeaaeaaeaahaaaaaiabuaboaboabpaboabqaboaEzaboaboaboabtaboaaiaquaczalFalBamNaqtaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaeaauXaaqaaraaraauaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaaafJafKafKafKafKaaEafMaaDafOafOafOafOafPaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaeaaaaaeaaaaaaaaaaalaaaaaaaaaaaaaaaaaaaaeaaaabbabJaboabDaayabEabqabFaENabGaboabHaayabIaaiaqiaczaxHaxGamNaqtaaaaaeaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeauvaEgaehaeiaejaekaaaaacaahaacaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaahaaeavuavuavuavuavuaaeafMaaeavuavuavuavuavuaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaaaaaaaaaaaeaaaaaeaaeabYaaeaaeaaaaaaaaaaaaaaaaaaaaiaGeaboaccaayacdaceaDRaDSacgaboachaayacgaaiauYaczaxIalBaxLaqtaaaaaeaaeabvabvabvabvabvaaaaaeaaaaaaabwabwaWyaWMaYuabwabwaaaaaeaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaeaaaaaaaaaaaaaeaaElaaMaaraaraaLaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaacaaaabCabCaupabCabCaaaafMaaaabCabCaupabCabCaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaeaaaaaeaaaaaaajEajFajEaaeaaaaaaaaaaaaaaeaaeaaiaboaboabsactaboabqaboaEtabqaboabsacvabqaaiawDaczawCawBawyaczaaeaaeabvabvaDwaDvaIQabvabvaaeaaeabwabwaNTaDAaDCaSMaDOabwabwaaeahwahwaLRahwahwaaeaaeaaeaaeaeaauvaeaaAhaAiaAjaeaaAhaAiaAjaeaaeaaBxaeaaBKaBDaAiaCBaAiaAiaAPaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaahaaaafgafgafgafgafgaupaGSaupafgafgafgafgafgaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaeaaeaaaakhaQJakhaaeaaeaaeaaeaaeaaeaaaaBuaxzaBwaByaBAaAQaARaATaAWaBfaBqaxAaBtaxpaxoaBtaxyawXawEaxkaxdaaeabvabvaKMaEqaEpaEpaJtabvabvaaeabwaFqaEaaEbaEeaUCaVuaFFabwaaeahwaSNaSPaWxahwaaaaaaaaaaaeaeaaujaeaaDpaCUaDoaeaaDXaDGaDWaeaaxFaCEaCCaCFamiamiamiamiamiayEaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaahaaeafJafKafKafKafKaaEafMaaDafOafOafOafOafPaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeakEakFakGakHakIaaaaaeaaaaaaaaeaaaaCNaaCaCTaCOaCPaCIaCJaCGaCHaCLaCMaNbaFYaFcaDgaCHaDhavsaGcaCTaDkaaeabvazEaBBaBzaHMaAXaBEaHKabvaaeaIsaBHaLCaCvaCwaCbaEVaEyaERaaeaEIaAqaFbaCAaLRaaaaBVaBVaBVaeaaxTaymayoaxWaxWaxUaxWaxZaydayFagGagGagGayEamiamiamiamiamiayGaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaahaaeavuavuavuavuavuaaeafMaaeavuavuavuavuavuaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaaaaaeaaeakTakUaFRanWakTaaaaaeaaaaaaaaeaaeaaiaaiazXazZaAaaaiazKazMazKaeMaeMaeMaeMaeMaABaAAaAzaboavwawsaaiaaeabvaCtaBBaCxaBGaCQaBEaCjabvaaeaSJaDbaQgaDcaSKaDMaQgaCXaRvaaeahwaAqaAraCAahwadradradYagRaeaaeaaeaaxJaieavhavhazqayYaznavvavvayWayVayJamiamiamiamiamiayXaeaaeaaeaaaaaaeaaaaaaaaaaaaaaaaaeaaeaaaaaeaaeaaaaaaaaaafMaaaaaaaaeaaaaaaaaeaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaoFaoFaKCalGalGalGalHakTaqaavbareakTaWoagVaWoaWoaaeaaeaaeaaiaaiaAHaaiaaiaaiaAHaaiafQaAGaAEaAFaeMaCdaCKaCzaexaexaexabvabvabvazbayZazlaEmazjayRaBFabvaaeabwavqaCeaBYaCcaAIaBXavpabwaaeahwaAqaAraCAahwaAcadraAdadsaAeaKGaeaavfaieavhavjavkavkavkavxavvavSavNavTamiamiamiamiamiawbauiawdawcaaaaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaeaaaaaaaaaafMaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNOaMzaMuaoHamnaMmaMlakTamoawJamqakTaLOaLEaEHaWoaWoalvalvalvalvalvalvalvalvalvalvakBakAavrakAarGasBaqvaqAaexaikaFMazmabvabvabvaAtaAsabvabvabvabvabvawhabwabwawGawIaEnawzawFabwabwawhahnaDeaDjaEoahwadradradsadsaALaAMaeaaHJaieaxEaiXaiUaiUaxPajJawKahSaliaxBamiamiamiamiamiaxBaxCakOakVaaaaaeaaaaaaaaaaaaaaaaaeaaaaaaaaaaaeaaeaaeaaeafMaaeaaeaaeaaeaaeaahaaeaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaoFajCaoFaveamnavXaxbalDakTalManbakTaxDazoawYagXaWoaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeafQaeMaeMaeMaeMajLacZajMaexakSailakmabvakuakoakpakxawtatyatwaoTabvanMamBaaQaqTaqwanYattatsaaQahWaqqahnatvatuakvahwamzadsadsadsadsadraeaalraltalsalkaljaljallajJakOajcaliakWamiamiamiamiamiakWaleakOakVaaeaaeaaaaaaaaaaaaaaaaaeaaaaaaaaeaaeaaaaaaagUaiOagUaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaqjamZaqjaqXargaqlaqmarkarJalubGxaWoarTamuasFatQagVaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeafQanianEanjaqyahGahDagPaexaAuailaAvabvaqcaipaiqairaiJakbacBanHakdakwakkajOajNajVajPajXajWajZajYakzakaakjakcarfahwaicadsajwaroaqEadrajfahYaieaiYaiXaiVaiUaiTajJajKahSajHajBamiamiamiamiamiajyajzajkajxaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaamXamYamXaaaaaaaaeaaaaakaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaoFapeaoFanQaisaiDaoOaoFbHMapybKoapKabKapvapRanJaWoaaeaKBagVaKBaKBaKBaaeadradradrafQagtagAafWamOageagOassapWahBahAahBaiNahKahKaiEaiCaiLaiKaiHaiHapMahJahIahHaguahzahyaiAaizaiyaixaiwagBaijaiiahxahwagQadsadsanIadsadraiaahYaieagGaigaifaiPaihahPahQahSagNahUamiamiamiamiamiafFaeaahOaeaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaagUanDaqRanDagUaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaoFamWaqkaqkaqkagnamVaoFaoYaiBbrTaWoanKafAakyanFaWoaKBaKBarnaKBafNaKBafZadraklaicafQagdafXafTagZaeragfaggaexagaagbagcabvagjagkaglaoyabQaenaidanGaexakiafzahiaguahkaffaimahtahvafjahoahnahnanhadradradradradrafHadradraeaagIagHagGagGagLagKagJahrahragMagNahNamiamiamiamiamiafFbWIcsgavAavAavAavAavAavAafravAavAaaaaaaaaeaaeaaeaoBaoCamYaoDaoEaaeaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaaaaaaaaaaaaaaaaeaaaaaeaaaaaeaaaaoFaesaiFaiIajqalKammaoFbrTaiBbrTaKBardbrTbrTbrTdKcaKBbrSaKSaKBaKBaKBaeLacGaeDacLafcaeKafxafvacxacyacwacPabvahgafwaheabvabvacCagyacCabvahhahCagWaduaflafzagxagwaguagsagiaftagDafjagpagoagmafeaeYaeYaeYafGaeXaioaeXaeXahFagEagFafLafLafIadiagzafCafCafCafDafBamiamiamiamiamiafFaUoaQsavAaePakKaQsaeZavAagCackavAavAaaaaaeaaaaaaaptapuaoIandaptaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaKBaKBafUaKBaaeaaaaaeaaeaaeaaeaaeaKBafUaKBaoFahdahfaoFaoFaoFaoFbrTahbbKoaeJabKagqaiWbrTajAaKBbHMagSagvafVaKBacuacsabUabMafQafQafQaeMaeMadWabhacPacIaghaeEaeFafYafbaemaenaeoabvaenacBafkaexafSafzafoafnafqafpaeHaeGabzafjahVacTacTaaQaaQaaQaaQaocadradradradraeaadZadXadFadnadkadjadgaeRaeVaeeaiSaecaebaebaebaebaebaeWaThaQsavAaQsaQsaQsaQsavAaQsaQsafEavAaaaaaeaaaaaaaptanoadfafmaptaaaaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKBajtbMbaKBanLamsamsamsamsamsajsaKBbrSajtaKBaeTaDnaefbMeaspaKBbwqaedbMbaKBardafdafuaeSaeOaKBaeubrTabmafyaKBabkadYahLabladrabiafQabjabnaerabhassadTadUaeAaeNadQaeIadOaeBaevaewaenaaXafsaexaezadRadPadNadMadLadJadKadJadIadHafaadEadEaepadBaaQaocadrabXabZaklabcabcabcabcabcaciacmacfabcabcabcabcabcabVavAabWacbadlavAavAaQsavAaetaQsacnaQsavAaThaddacoavAaaaaaeaaaaaaaptaqZadearbaptaaaaaeaaaaaaaaaaaeaaaaaeaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaeaaaaaaaaaaaaaaeaaeafUaeCaeUadVafRbrTbrTbrTbrTbrTahcacqaeqbKoaaIacrbrTbrTbrTbrTabPaqhbQSadradradradradradradradradradracAadradraaNadradradradradrafQaaGaaYaerabhacPacIacJacQacHacSadoacFaeyaaPabQacDacEaegaduadzadvadcadaadtadmacWacVacYacXacUacTabNadpabNabRaaQaaHaaSaaKaibadsabcaaZaasaaVabyabxabrabdabcabBaatabAabcavAavAaQsaThaQsaUoavAaQsavAadlaQsabOaQsavAabSaQsabOavAavAcgaavAavAarNarNabTaclarNarNcgaarNarNacMarNaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeajGajGaaeaaeajGaaeaaaaaeaaeaaeaKBaKBaxSaKBaKBasWasXasXasXasXasXasYaKBaKBaKBaKBaGraGCaGCaGCaGCaGCaGVbQSadraInatDatEatFawpatGatIasaaFiaoZascasaapcadrdBfapiappdBnaqdapZaowaeraoraosabvabQatpabvabvaEratraDmazpabvaEJaAoaexaexaaQazuaszaslazuaaQazCazBaaQazyacTacTaAbaAbaAbaaQaaQaocadradsauqadsabcarmauoaumaulaukaDYarHausautauuarFabcauravAaufaddacoadGavAaQsavAavAavAbvSavAavAavAavAbvSavAarOaQsbWIaUoaQsaQsaubatRarNaQsaQsaucarNcsgarNaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeajGajGajGajGajGarqajGaaeaaeaKBaKBaKBatHaBPaKBaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaKBasLaUDbHMarlbrTbHMaEsaDuaDFaEvagrasNadradradrataatbatbatbatcadradradrahTaoodpCahTaoqalCaeManPanRassaskaskasiasgaskasjaskasgaskaAyaskasjasbarZashasgaqxapoaskaskaskasgaskasmafQasoainainainainaeMaocadradsadsadsabcabcabcabcabcarMatzaDialZarcabcabcabcatkavAaUoaQsabOaQsavAaQsavAbbNavAatjbvHbvHbvHatiathbYbbYbbYbbYbbYbbYbbYbbuqaQsaQsaQsaQsatgacMasRacMaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaeaaeajGaaeapBaaeajGajGajGajGajGajGaCDaAxaCDafRaqhaKBaKBaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaKBaKBaKBbHMbrTavabHMaGPaAfaGJazTaFuasNadralIaaeaaaaaaaaaaaaaaaaaeaaaadraiRcRXalLcRWamgainamPamQamJaqoaqsaqsaqnaqoaqsazcaqDaqoaqBaqCaqsawvaqQaqPaqsasVaqMaqFalQalQaraaqYaqVaqUaAnaqSajgajhajiaBraeMaocadrasSadYasTabcarUanuaseabyabxabrasOabcasUaasasZabcatdavAavAavAbvSavAavAaQsavAaQsavAatfarNarRarNarWarNarNarNarNarNarNarNarNarNarNbWIarNarNarNarNarNarYaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeajGajGajGajGajGajGaaeajGajGajGaaeaKBaKBaKBarnaqhbrTaKBaaaauIauJauKauJauLalvaaeaaeaaeaKBaovaKBbtwaouaXOaXOaDlbrTaKBaDfarSaoxadraaaavUavUavUavUavUavUavUaaaadraxNaxMasAahTalEalCaeMaoLapqaiGayMapfapnaiGapzapfapqapAapraiMapwapxaxnaoMaoQaoPaoJapaanSamSapaaozaoKapbaoVaoUaoXaoWapNapLaeMaocbaabaabaabaabaaarFarDaryarLarKarIarHarparrarjarmabcartarsbvHbvHaribvHbvHbvHaAgbvHbvHarQarNapSazrapUapTasPaDQasPatLatMatNatMatOarNarNarNatLatMatOatPasPaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeajGajGajGajGajGajGaotajGaaeaaeaaeaaeaKBbHMaqhardafUaaaavLaUaapIavOavLaDLaCraCsaruaruaruaruanOaruaruadradraKBaKBanNadrakYadraaeavUavVavWaBTavYavZavUaaeakRahTarEakXahTaaaaaaacKajjavKajlaeMajmavJajoaeMajpawPajraeMapHajpapsaeMalfanAanzanCanBaldaldalXanxanwaldaldaneaeMaeMaeMaeMaeMaocbaaapVapXanlbaaabcabcabcabcapYaqOaqbalZarcabcabcabcavAaqWaUobWIaQsaUoarhaQsarNarNarNarNarNanVaAJanUanTauyaACauyauAauBatTauBauEatMauFatMauGauBatTatPauHaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeajGajGangajGajGajGajGaaeaaaaaeafUbtwaqhbrTaKBaaaauKawQawRawQauKaCqaADaBdaruazJaBhaCpaBeaBgaruatqamHakCakDakJadrakYadraaaavUaxfaxgaxhaxiaxjavUaaaaiZaiRahZarEahTaknajnaczajQajRajSaeMajTajRajSaeMajUajRajSaeMamKamLaoNaeMamEamGamFamIazLaldaunamyamxamAazkaztaneamDamCamCamCamCansbaaaomaolaokbaaapmakQapmabcaoAaopaonaodaofaobaobatlbvHanXarNarNarNarNarNarNarNannannanaaBsanfancamUamTavFasPasPaaeaaeauBavHauBauBauBauBauBavIauBauBayIaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaajGaaeajGaaeaaeajGajGaaeaaeaKBaKBbMeaqhaKBaKBaaaavLawQawQawQaylazGavRavRazFawUaynaypayqayraxVaqzaywayxayyayzadrakYadraaaavUayAayBasfaxiayDavUaaaahEahTahXarEcRWahuahsaczakqajRakraeMakqajRaksaeMakqajRaktaeMamMacRalNaeMalValUalTalSalRaldayHajualPaoRaoSapGanealOaeXaeXaeXalYalWbaaankanmanlbaaaqNanqanqantanranvahMabcabcabcabcabcavAanyarNamkayaanZamwaxYbwtamlaycaycaycaycampamvamtawNawOasPamraaeaaeaaaaaaaaaaaeaaeaaaaaaaaeaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaajGajGajGaacaaaaaeaaeaaeaKBaKBbHMbHManpafUaaaaaaauKawRawRawRauKaxeawVawWawTawUavRawSavPavQaruahlazOazPazQazIadrakYadraaeazSazwazUazVazWauwavUaaeadrahTahRahRahTahjagYaczakLakMakNafQakLakMakNafQakLakMakNafQalwakPalJafQalfalhalgafQalcaldatAalbalaapEapFatxaneakZbaabaabaaalpbaabaaalqamcbaabaaamfameamdajIamRamjamhalZamaahqabAabcambacjarNalmazraycaycalnaloaAJaANalyalxalxalxalAalzayiayjaykaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaacbmNaAZbmNaahaaaaaeaaaaaeaKBafVarnbGxaqhaKBaKBaaaavLaBaaBbaBcavLbAYaCraCsarubxQavRbzgavPbyraruaBibjyaBkaBlbtbadrakYadraaaaBnavUaBoaBpaBoavUavUaaaadrahaahmahmahpaWuaWvaWubnObnVbnObnZbnObnVbnObyGbnObnVboaboebobbombolbxKbygbywblxafQainanebBiaqrbpXbqsbqWbCXaneakZbaabnubnvbntbpmbpmbpnbjWboHaZHbjVbjTbjUbiQbznbiLarHbhPbhObhMbhGabcaQsacjarNbmMaAJbmLbmJbmHbmFbmEbmAbnyazzazzazzbnwbnxayiayjazDaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaabmNbJAbmNaaeaaeaaeaaeaaeaKBbrTbrTbrTarVbaQaKBaaaaCmauJaCnauJaCoalvaaeaaebDYbDWbFNbEMbGCbGqarubglbgmbkxaCybDdadrakYadraaabBjaaabgobgnbgoaaaaaeaaaaWuaWuaknajnaWuaWubaybaVarvbmUbpjbEBbpobplbplbEIbplbprbpobpvbpubogbpsbAgbAhbzRbzZafQainaneanebEcbubanebsianeaneakZbaabaabaabzJbcEboDboEbkkbklbotbkgbjtbkjbkebkebkfbkpabcabcabcabcabcaThacjarNaBZbkbaDxboZboOboIboYboSaAObpgbpebpfaASbpdayiayjaAUaAVaaebooaaaaaaaaaaaabooaaaaaabooaaeaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaabmNaAZbmNbmNaDIaDJaDKbmNaKBaKBaKBaKBbrTaqhaKBaaaaaaaaaaaaaaaaaaaaaaaaaaebKpbKabJEbIZbIsbIqarubihaFeaFfaFfaFfbdMbxsbdMbdMbhJbhIbhLbhKbhTbhSbjnbdMaWubicbeVbeVbfHbdhbcNbcNbcKbELbdfbEKbqDbqEbqIbFDbqEbqQaLXbqMbqLbqPbmRbAnbANbbUbBdafQainajvaeMbHmbxdanebxrbwjaeXbqibaabpZbqbbpWbugbaabdxblVbmQbaablHblAblFblNblFblJblMblnbkqbkobbKabcaQsacjarNbpGbpFbpEaCabpObwtbpLbpIaAObpDasPasPaCfasPasPaCgbeQaCiaaeaaaaaaaaaaaaaaabBlaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaabmNbmNaEUbJJaEWaCkaCkaCkaEXbJFaEYaEZaKBaKBaqhaKBaaaaFaaFaaFaaFaaFaaFaaFaaaearuaruarubNybNSaruarubipbimbiqbrzbrpbhrbikbidbqjbkJbrBbrBbjsbrBbknbrLbkQaWublablgbkNaxwaxwbGSaxwaxwaxwaxwaxwaxwaxwaxwbGSaxwbiBawnblTaoaaoaaoabrmbrmbrmbrmbrmaoabrlaoaaqLaqLaqLaqLbrnaqLakZbaabaabaabxtbhDbaabrcbaabHbbaabrkbmVbmWalZbnabnebngalZbnkbnBbnqabcbNoacjarNasPasPasPasPasPbwtbrdaDBaAObqXasPaDDaDEaycbtJaycaDHazDaaeaaaaaaaaeaaeaaeaaeaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaabmNaEUaEUaEUaCkaCkaCkaCkaCkaCkaEUaEUaGtaKBaqhafUaaaaFaaFaaFaaFaaFaaFaaFaaaeaaeaGubymaJbaHZaFVaFDaEBaEAbaTbaUbaRbisaEGbgBbhraCuaBSaBWaDraDtaCVaCYbAQaBOaBLaBNaBRahjaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaabEdbEwbEpbiCaoabiEbiDbivaoebvnaogaohaoiaojaoabyEbqUbtXbvcaDsaqLbynbaabhEbAabcEbhDbaabhCbaabKlbaaaUwaUfaUtaCWaCWaCWaCWaCWaCWaCWaCWaCWavAbzjarNaTMaTBbtgaFZasPbylaAJaDBbhRaDHaEOaEPaEQaoGaAKaESawMazDaaebooaaeaaeajGajGajGaaeblfaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaabmNbwkaCkaCkaCkaCkaCkaCkaCkaCkaEUaEUaEUbstbCmaKBaaaaFaaFaaFaaFaaFaaFaaFaaHVaHWaHXbwlaLnaKYbcGaIcaIdaIebpRbcIbdzbdMbnlbdMbdMbdMbdMbnmaYhbjjbjgbitbjjaYhaYhaYhaYhbjlaaaaaaaFsaFsaFsaFsaFsaFsaFsaaaaaaaxwbjuatZbjwapdbjvaohbjFapgaphbxAapjapkaplaoabyXaDqbyWbjzbzCaqLbnMbaabaabaabiFbiFbaabaabaabaabaaaXEaXXaZaaCWbrwaHebkUaVJaUBbaMaWiaCWciUacjarNaTBaTBbjcaHFaHGazrampaGhbjdbthasPbhfaGkaGlaGmaGnaGoazDaaeaaaaaaaaebtNbwxajGaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaebmNaJiaCkaCkaCkaCkaJjaCkaCkaCkaCkaEUaJkaKBanpaKBaaaaFaaFaaFaaFaaFaaFaaFabFOaJmbFOaHYaJnaJoaJpbrgaJraJsbrfbewbetbldbkZbJibJibJibJibUraYhaTPbkWbkRbmIaSLaSAbkPbkLbkMbzwaGUaGUbkIbkKbyLbkHbkBaLUaLUbyVbkwbkzaLXbiCaoabkvaohapOaohapPaohapQaohaohaoabzYaQDbyWaBUbwoaqLbdjaPpaNdaPpbkcbjGbdlaPDbkibdkaPLbiGaIGbfhaCWbfTbdibdibdibdebchbbDaCWbPMacjarNaKhaKhaHEaHFaHGbkbbypbyobjHbjRaHNaHOaHPaHQaHRaHSawMazDaaeaaabyhaaeajGajGajGaaeaaebooaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKqaCkaCkaKraCkaCkaCkaCkaCkaCkaCkbytaKBaKBaqhaKBaaeaFaaFaaFaaFaaFaaFaaFaaKsaKtaKsaKuaJnaKvaKvaKwaKvaIebeKbeLbftaKBaKBaKBaKBaKBaKBasNaYhaWfbmzaWkaWebmxbmxbmxbmvbjlaaaaFsbzuaGYaGYaGYaGYaGYbAJaFsaaaaxwblUawnblTaoablRaqGaqHaohaqIaohaqJaqKaohbmubBvbBDbBhbBtbxiaqLblZbmabliblibliblkbllbllblmblmblBbhvbhwbfBbhzaeQaIyaIyaIybgybiHbgUaCWaiQacjarNaKhblOaUNaGaasPbviaAJbysaAObzxasPaJeblhaDxaDxaDxaDyazDaaeaaaaaaaaeaaeaaeaaeaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLjaLkaLlaaaaLmaCkaCkaCkaCkaCkaCkbPDbPHbPHbQabzKaKBaUDaqhaKBaaeaFaaFaaFaaFaaFaaFaaFaaLoaHWaLpbPkaJnaLraKubvjaLtaLubBAbBIbBkbBrbqrbqnbqJbqHaKBbBOaYhbyjbmzcjRcnmckeckeclsbyIbjlaaabNqbyJaGYbOHbOcbPXaGYbyMbORaaaaxwbiBawnblTaoabyNarxadSarzarAarzarBarCbyPaoacoucpTcwQcxabPtaqLbqYaIEaIFaJSaKRbtHbztbQmbzqbzsbzhbribrebrhbqZbraadhbvCbySbyQbwHbwmaCWaUoacjarNasPbwtbwtasPasPbwtbzNbzMbzObDvasPasPaCfasPasPaCgbdIbDrbDsaaaaaaaaaaaeaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabLaMIaMJaMIadqbmNaCkaCkaCkaCkaCkaCkaCkaCkaCkbRIaMMaKBbwqbwraKBaaaaFaaFaaFaaFaaFaaFaaFaaKsaMOaKsaKuaJnaKvaKvaKwaKvaIebpRbEobEsaMRbtKbsUbsobsnaKBbzzbzAbgfbmzbOTbzDbzFbOTcMVbQRbjlaaabPRbsqaLQbPVbDXbPVaLQbRcbSiaaaaxwbiBbzlbQXaoaastasuasuasvaswastasuasxasyaoaaqLcSncNkcRzaqLaqLbCxaIEaJSaKRbAIbnbaIEaIFaKRaKRaJSbwNbAFbsGbsubswaIyaIyacabgybEnbzpaCWaTNacjarNbAlbAkbDHbAmbzPbhxaAJbysaAObAMbpebALaLhbAKayiayjaAUbEeaaebooaaaaaabooaaaaaaaaaaaabooaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaaaNKaNKaNKaNKaMcaNKaNKaNKaNKaMcaNKaNKaNKaNKaMcaNKaNKaNKaNKaaaaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaawaMIaObaMIaawbmNaJiaEUaCkaCkaCkaCkaCkaCkaCkbUcaOcaKBaqhbrTaKBaaaaFaaFaaFaaFaaFaaFaaFacdhaOecdhaOfaJnaKvaSpaSqaSraSsbKgaIebJraKAbvPbvzaOnbwuaKBbBBaYhbBwbmzbOTbBEbBFbRUcMVbTKbjlaaaaFsbTjbSraLQbTmaGYbRebRBaFsaaaaxwbAXatZbjwaChbKQaueaueaueaojaueauebAZbQtaoabCSdtNdAubBabTobsLbBabBcbChbChbCebupbutbsRburbusbsQbsRbsMbsOaCWbtPbuCbEqbNtauhbIbbEAaCWaQsbuParNbCrbCqbCpbCobCAbAibAbbzVbxfbBPaMDaMDaMEbBQayiaMGazDbENaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaMibUobBHbBHbBHbzTbBHbBHbBHbBHbZMbBHbBHbBHbBHbzSbBHbBHbBHaXfaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaQNaPqaPraPsaQNbmNaCkaEUbVDbVXbVEaCkaCkaCkaCkbUcaEUaKBaqhbrTafUaaaaFaaFaaFaaFaaFaaFaaFaaPtaHWaPuaPvaJnaKvaKvaKwaKvaIebKgaIebKZaKAbyfbyebydbxcaKBasNaYhbDcdDRbTqbTCbTDbOTcMVbDfbjlaaeaFsaFsaFsbCYaNlaNkaFsaFsaFsaaeaxwbjuaIvblTaBQcbbaueaueauebOhaueauebCUaojaBQbkcdDPbCVbwLaIFbvtaIFaIEaJSaIFbDOaIFbwOaJSaKRaIFaKRaJSbDLbDMaCWbSsbIubwwatebPobaMbbDaCWbItacjarNbWcaTgbDCbDBbDIbAVbDKbDJbDxbDyaAKaAKbDzayhayiayjaNYaaaaaaaaeaaaaaaaaaaaaaaeaaaaaabIraaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvbCzaIlbGfbFgbFgaFUbFgbFgbFgbFgaJUbFgbFgbFgbFgaFUbFgbFgbFkaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaQNbCLbCJbCZaQMbmNbueaEUaQPbJGbCdaEUaEUaEUbuwbDAbEmaKBbKdasdaKBaaaaFaaFaaFaaFaaFaaFaaFaaaaaaabpMaPvaQTaJoaJpbtAaSrbmXbopbozblLaPyaPyaPyaPyaPyaKBbsbbsgbshbsdbsdbrQbrRbrNbLjbHobHqaaaaaaaaaaFsaFsaSFaFsaFsaaaaaaaaabEdbEwbHvblTaChbroavlarPbmfaojaojbsDbsIaojaChbkcbsjbslbrPbsrbonbsrbsvbECboqbsmbsrbsrbsrbsrbsrbsrbsJbsPbzGaCWaCWaCWaCWapJaCWaCWaCWaCWavAacjarNbARbAdbAdbtabsZbsVbsTbsSbtkbtlbvubtnbteawMawNaPoasPaaaaaeaaeaaaaaaaaaaaaaaeaaaaaaaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvbCzaIlaGpaaaaaaaFUaaaaaaaaaaaaaJUaaaaaaaaaaaaaFUaaaaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaQNaQNaSiaShaQNaQNaQNbvfaQNaQNbFublSaQNaQNaQNbFraQNaQNbFjavAaQNaaaaFaaFaaFaaFaaFaaFaaFaaaaaaaaZpbqlaJnaKvaKvaKwaKvaIeaJuaIebuKaPybrvbqdbmtbmOaKBasNaYhbtCbtDbtFbtrbtsbttbLlbtxbjlaTLbINaTLaNnbEXbukbHwaNnaTLbINaTLaxwbuhbwRbuiaoaaoaaoaaoaaoabtMbtUbufaojbCWaoabkcbtLbtHbuHaCZaCZaCZaCZaCZaCZaCZbuFbuGbuLbovbuBbuDaCZbuSbuSavAbuObYbbYbborbYbbYbbYbbASbYbbuqarNaNLaNLaNLaNLbuvbuubPnbuybuVbuWbuUaAJbuTavEasPasPasPaaeaaeauBaQIauBauBauBauBauBauBauBauBbvBaaeaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvbCzaIlaGpaaaaaaaFUaFUaFUaFUaFUaJUaFUaFUaFUaFUaFUaaaaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaTpaZDbrsbIdaZfbsfbrsbtfbHybHrbHybHBbIebHybIjbInbIJbILbISaQNaaaaaaaFaaFaaFaaFaaFaaaaaaaaaaaZpbvgaJnaKvaKvaKwbKvaIeaTAbumbujbwKbtqbtjbxSbyyaKBasNaYhaYhaYhbjqbvMbvNbjlbsHbsabjlbSXbTHbNpaNnbvAaNpbvraNnbrFbIVbvdbIUbvebqFbuZbuYbuMbLGbrGaoaaoaazAbvGazvaoaaoabvDbvEbvFbvDaCZbwybJmbowboCboFavAavAavAavAbbOavAavAavAavAavAavAacjaUoaQsaJzaJzaJzaJzaJzaJzaJzaNLbvZbvUbvTaNLbBpbATaNLbwabvObwtbwtbvQbvRbqNauybLcauyaScauBbirauBatLatMaSfatMatOauBbiratPauHaaeaaeaacaahaahaahaacaaeaacaahaahaacaacaahaahaahaacaaeaaeaaeaaeaaeaFvaMibIiaLIaLIaLIaLIaLIavcavcavcbwpavcavcavcaLIbwsaLIaLIaLIbHdaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaXFbwBaUMaUMbMnaUMaUMaUMaUOaYbbMFbMEbKcbKcbKcbKnbLHaUQbyFaQNaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaZpbxlaJnaKvbVqbxaaGDbxgaGDbuAbqmbEzbGdbwnbDabBzaKBbpHbxbbOSbITbxebuzbwXbvhbwbbsKbtOaVkcdbaVkbBNbBMaVsbziaVtaVkbJRaVvbwMaVxbLZbuEaVAaVBaVCaVDaVDaVDbvbbpcaVDaVDaVHaVDbpbboQaVDboJaVDbwvboGavAbpTbpUbpVbBsbpUbqybpUbqObpUbqRbYbbASbuqaThaQsaJzbxBbxJbxLbpSbxObxPaNLbzHbxpbxpbOdbxpbzIaNLbxubuVbzkaHoaHoaHoaHoaHoaRfasPaTnatMaToatMauGasPasPasPaTnatMauGatPasPaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaFvbCzaIlaGpaaaaFUatXatXayKbJjaweaxxbBLbJjayLatXaGvaFUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaQNbCLbCJbCZaQMbmNbueaEUaQPbJGbCdaEUaEUaEUbuwbDAbEmaKBbKdasdaKBaaeaFaaFaaFaaFaaFaaFaaFaaaeaaebpMaPvaQTaJoaJpbtAaSrbmXbopbozblLaPyaPyaPyaPyaPyaKBbsbbsgbshbsdbsdbrQbrRbrNbLjbHobHqaaaaaaaaaaFsaFsaSFaFsaFsaaaaaaaaabEdbEwbHvblTaChbroavlarPbmfaojaojbsDbsIaojaChbkcbsjbslbrPbsrbonbsrbsvbECboqbsmbsrbsrbsrbsrbsrbsrbsJbsPbzGaCWaCWaCWaCWapJaCWaCWaCWaCWavAacjarNbARbAdbAdbtabsZbsVbsTbsSbtkbtlbvubtnbteawMawNaPoasPaaaaaeaaeaaaaaaaaaaaaaaeaaaaaaaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvbCzaIlaGpaaaaaaaFUaaaaaaaaaaaaaJUaaaaaaaaaaaaaFUaaaaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaQNaQNaSiaShaQNaQNaQNbvfaQNaQNbFublSaQNaQNaQNbFraQNaQNblIaQNaQNaaeaFaaFaaFaaFaaFaaFaaFaaaaaaeaZpbqlaJnaKvaKvaKwaKvaIeaJuaIebuKaPybrvbqdbmtbmOaKBasNaYhbtCbtDbtFbtrbtsbttbLlbtxbjlaTLbINaTLaNnbEXbukbHwaNnaTLbINaTLaxwbuhbwRbuiaoaaoaaoaaoaaoabtMbtUbufaojbCWaoabkcbtLbtHbuHaCZaCZaCZaCZaCZaCZaCZbuFbuGbuLbovbuBbuDaCZaPpaPpavAbuObYbbYbborbYbbYbbYbbASbYbbuqarNaNLaNLaNLaNLbuvbuubPnbuybuVbuWbuUaAJbuTavEasPasPasPaaeaaeauBaQIauBauBauBauBauBauBauBauBbvBaaeaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvbCzaIlaGpaaaaaaaFUaFUaFUaFUaFUaJUaFUaFUaFUaFUaFUaaaaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaTpaZDbrsbIdaZfbsfbrsbtfbHybHrbHybHBbIebHybIjbInbIJbILbISaQNaaaaaaaFaaFaaFaaFaaFaaaaaaaaaeaZpbvgaJnaKvaKvaKwbKvaIeaTAbumbujbwKbtqbtjbxSbyyaKBasNaYhaYhaYhbjqbvMbvNbjlbsHbsabjlbSXbTHbNpaNnbvAaNpbvraNnbrFbIVbvdbIUbvebqFbuZbuYbuMbLGbrGaoaaoaazAbvGazvaoaaoabvDbvEbvFbvDaCZbwybJmbowboCboFavAavAavAavAbbOavAavAavAavAavAavAacjaUoaQsaJzaJzaJzaJzaJzaJzaJzaNLbvZbvUbvTaNLbBpbATaNLbwabvObwtbwtbvQbvRbqNauybLcauyaScauBbirauBatLatMaSfatMatOauBbiratPauHaaeaaeaacaahaahaahaacaaeaacaahaahaacaacaahaahaahaacaaeaaeaaeaaeaaeaFvaMibIiaLIaLIaLIaLIaLIavcavcavcbwpavcavcavcaLIbwsaLIaLIaLIbHdaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaXFbwBaUMaUMbMnaUMaUMaUMaUOaYbbMFbMEbKcbKcbKcbKnbLHaUQbyFaQNaaaaaaaaeaaeaaaaaaaaeaaaaaeaaeaZpbxlaJnaKvbVqbxaaGDbxgaGDbuAbqmbEzbGdbwnbDabBzaKBbpHbxbbOSbITbxebuzbwXbvhbwbbsKbtOaVkcdbaVkbBNbBMaVsbziaVtaVkbJRaVvbwMaVxbLZbuEaVAaVBaVCaVDaVDaVDbvbbpcaVDaVDaVHaVDbpbboQaVDboJaVDbwvboGavAbpTbpUbpVbBsbpUbqybpUbqObpUbqRbYbbASbuqaThaQsaJzbxBbxJbxLbpSbxObxPaNLbzHbxpbxpbOdbxpbzIaNLbxubuVbzkaHoaHoaHoaHoaHoaRfasPaTnatMaToatMauGasPasPasPaTnatMauGatPasPaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaFvbCzaIlaGpaaaaFUatXatXayKbJjaweaxxbBLbJjayLatXaGvaFUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeboibojaPBaWgaQNaTpaWhaTpbwBaUMaWLaWYaTpaWhaTpaZCaWlaWmaVyaKBaKBaKBaKBaWpaWqaWraKBaKBaKBaKBaZpaORaOUaOVaOSaOTaKvaOkaPzaOmaOlaPyaPyaPyaPyaPxaKBaKBaSuaKBaKBaWCaOQaOOaWKaMhaWWaWVaWKaMhaOFaOHaWWaOIaWKaWKaWKbbLaWNaOKazxaITaBjaWSaWTaWKaWKaWKaWKaWUaOAaWKaWKaWVawgaOBaWKaWKaWKaWKaLeaKLaVMaVMaVMapJaVMaVMaVMavAaKJavAacjavAavAaHUaHUaHUaHUaOyaOuaOuaOtaKdaUEaNLaOdaTwaROaQFaSbaStaNLaSjaNSaNRaHoaUIaVZaNMaHoaNQasPasPasPasPasPasPasPaDUasPasPasPasPasPasQaaeaacaFvaFvaacaFvaFvaFvaFvaacaFvaFvaFvaFvaacaFvaFvaFvaFvaFvaFvaFvaFvaMiaIlaGpaaaaFUatXaweaxqaCRaxtaxraxuaCRaxvaweaGvaFUaaaaGqaIlaGpaLKaLKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaULaaeaaaaaeaaaaXFbeNaXFaVgaVgaUTaVbaXFbeNboiaXKaQNaXLaVEaOaaXOaXOaXOaXOaRXaXOaXOaNJaXOaNmaNraNsaQSaKzaQhaSAaUPaNqaHfaNDaNEaHfaNNaKcaHfaOvaOxaOwaOLaOzaSWaUHaYpaNzaNCaNCaFSaFJaNHaNGaNeaNgaLNaUsaUsaUsaUsaUsaUsaUsaLsaYyaSYaSYaSYaSYaSYaSYaSYaSYaSXaOraNiaTjaSYaNjaSXaSYaSYaLdaYGaUFaVMaJgaJVaJOaIXaIVaVMaOjaMxavAacjavAaaaaHUaINaIKaHUaMAaOgaMFaMyaMwaKaaNLaMTaMUaMVaMWaNXaQKaNLaQuaMoaLPaHoaSEaMkaMfaHoaHFaHFaHFaHFaHFaHFaHFaHFaHFaHFaHFaMpaMqaMpaMqaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaaaMcaMbaIlaGpaaaaFUatXaNyawqatXawlawkawjatXawiaSCaGvaFUaaaaGqaIlaLLaaaaLKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaaaULaWhaZhaSlaSlaSlaSlaZiaWhaULaaaaQNaZjaSeaZlaZlaZlaZlaZlaZlaZlaZlaZmaNaaHfaHfaHfbhAbhFbgeaHfaHfaNxaHfaTHaTFaTGaTDaTEaTvaTuaGRaGQaWnaTtaSWaRmaYpaRpaZNaZNaTRaZNaRoaZLaZLaRqaZLaYgaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXpaZTaZTaZUaZTaZTaZTaZTaZTaZTaEMaYpaRkaVMaXGaOsaOqaODaOCaVMbbRbbMavAacjcgaaaaaQGaQHaQLaRaaNVaNIaNPaRdaRbaOpaNLaQxaQzaQwaQwaQBaQDaNLaQAaRgaQAaHoaRhaRjaXHaHoaRlasPasPasPasPasPasPasPasPasPbtpasPasPaRfasPaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaFvaOXaQraQoaUVaFUaFUaFUatXaTsawfavmatXatXatXauZavdaSHaGvaFUaFUaFUaUYaXfaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaAbaBbaCbaBbaDbaBbaBbaDbaBbaCbaEbaFaQNaZjaXabaHaOPbaJbaKaQkaQjaSGaZlaZmaPFaPVaPWaPQaPJaPQaPQaPSaPQaQCaHfaQVaQlaQqaQvaQyaREaReaSyaSnaRcaKTbbcaHiaQaaPZaZNaQcaIBaNFbaOaZLaTfaQdaTLaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaZTbdnbbCaURbflbdDbdpbdoaZTaWabbFbbGaVMaPdaMsaMraMtaPKaVMavAavAavAaudavAaaaaHUaPbaLiaHUaPeaMvaPhaPkaPjbbqaNLaSxaPpaSzaTbaPCaPDaNLbwtaPNbwtaHoaPMaPPaPOaHoaJqaJqaJqaawadqaaaaaaaaaaaaaaeaaaaaaasPaMqasPaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaNKaNKaKpaNZaIlaMCaLJaaaaaaaFUaPaaEjaWZatXatXaSUatXatXbycaPAaOZaFUaaaaaaaOiaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaULaaeaaaaaeaaaaXFbeNaXFaVgaVgaUTaVbaXFbeNboiaXKaQNaXLaVEaOaayTaXOaXOaXOaRXaXOaXOaNJaXOaNmaNraNsaQSaKzaQhaySaUPaNqaHfaNDaNEaHfaNNaKcaHfaOvaOxaOwaOLaOzaSWaUHaYpaNzaNCaNCaFSaFJaNHaNGaNeaNgaLNaUsaUsaUsaUsaUsaUsaUsaLsaYyaSYaSYaSYaSYaSYaSYaSYaSYaSXaOraNiaTjaSYaNjaSXaSYaSYaLdaYGaUFaVMaJgaJVaJOaIXaIVaVMaOjaMxavAacjavAaaaaHUaINaIKaHUaMAaOgaMFaMyaMwaKaaNLaMTaMUaMVaMWaNXaQKaNLaQuaMoaLPaHoaSEaMkaMfaHoaHFaHFaHFaHFaHFaHFaHFaHFaHFaHFaHFaMpaMqaMpaMqaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaaaMcaMbaIlaGpaaaaFUatXaNyawqatXawlawkawjatXawiaSCaGvaFUaaaaGqaIlaLLaaaaLKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaaaULaWhaZhaSlaSlaSlaSlaZiaWhaULaaaaQNaZjaSeaZlaZlaZlaZlaZlaZlaZlaZlaZmaNaaHfaHfaHfbhAbhFbgeaHfaHfaNxaHfaTHaTFaTGaTDaTEaTvaTuaGRaGQaWnaTtaSWaRmaYpaRpaZNaZNaTRaZNaRoaZLaZLaRqaZLaYgaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXtaXpaZTaZTaZUaZTaZTaZTaZTaZTaZTaEMaYpaRkaVMaXGaOsaOqaODaOCaVMbbRbbMavAacjcgaaaaaQGaQHaQLaRaaNVaNIaNPaRdaRbaOpaNLaQxaQzaQwaQwaQBazfaNLaQAaRgaQAaHoaRhaRjaXHaHoaRlasPasPasPasPasPasPasPasPasPbtpasPasPaRfasPaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaFvaOXaQraQoaUVaFUaFUaFUatXaTsawfavmatXatXatXauZavdaSHaGvaFUaFUaFUaUYaXfaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaAbaBbaCbaBbaDbaBbaBbaDbaBbaCbaEbaFaQNaZjaXabaHaOPbaJbaKaQkaQjaSGaZlaZmaPFaPVaPWaPQaPJaPQaPQaPSaPQaQCaHfaQVaQlaQqaQvaQyaREaReaSyaSnaRcaKTbbcaHiaQaaPZaZNaQcaIBaNFbaOaZLaTfaQdaTLaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaZTbdnbbCaURbflbdDbdpbdoaZTaWabbFbbGaVMaPdaMsaMraMtaPKaVMavAavAavAaudavAaaaaHUaPbaLiaHUaPeaMvaPhaPkaPjbbqaNLaSxayUaSzaTbaPCazeaNLbwtaPNbwtaHoaPMaPPaPOaHoaJqaJqaJqaawadqaaaaaaaaaaaaaaeaaaaaaasPaMqasPaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaNKaNKaKpaNZaIlaMCaLJaaaaaaaFUaPaaEjaWZatXatXaSUatXatXbycaPAaOZaFUaaaaaaaOiaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaabaAbaEbaBbcjbckbckbclbcmbcnbcobcpaGObckbcqbcraTpaZjaSeaMPaRJaRFaRKbcxaRAbczbcAbaeaTlaHuaHtaHtaIaaIbaHIaHfaHfaHfaHfaHgaHraHsaHjaHqaGZaGXaGRaGQaHdaHbaHaaIHaYpbRAaZNaHHaIDaMeaIzaItaDPaIuaEFaaeaaeaHAaHBaHCaGMaZPaGWaHyaGMaZPaGWaGGaGGaFIaaeaaeaZTaICaLAbdqaIAbdqbdraSvaZTaIpaYpaHmaVMaVMaFAaFzaFyaVMaVMaHzaFBaVaaIkaVaaVaaHUaHUaHUaHUaJzaJzaJzaIhaFxaJzaNLaNLaNLaNLaNLaOJaPcaNLaHpaHvaHpaHoaHwaHlaHkaHoaHnaHxdBLdBvdBvdBKaaaaaaaaaaaeaaaaaaaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeajGaJJaJEaIqaJEaJTaGpaaaaaaaaaaFUaImaweaJBaJWbBfbBgaJQaJWaxsaweaGvaFUaaaaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcqbecbedbeebckbefaEdbefaEdbefaEdbefbckbegbehaXFaZjaQUaZlaFGbekaQRbemaQEaFHaZlaXQaEcaFWaFXaGdaGiaGsaGyaGzaFmaFpaMLaFEaFKaFNaFPaFQaGBaGAaGFaGEaGIaGHaGNaHiaYpaRnaZNaGKaFwaYDaJPaZLaDNaFdaTLaaeaaeaFhaKxaEEaDdaRibfaaxlbfcaAYaBmaECaJxaFraaeaaeaZTbfiaClbfkaGTaGLaDVaDzaZTaEMavgaGwazgbfAaExbfAbfwayfaEwbfAbfAbfAaEKbfAayuaEDaMHaJGbfAbfAaCSayubfwaEKaELbfAaCSaLnaMSaTmaziaFoaKQaFnaFlaFkaETaEhaDZaDaaFgbcebcedBCdBBdBzdBJaaaaaaaaaaaeaakaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeajGaJJaJEaGbaJEaJKaGpaaaaaaaaaaFUaGfaGgayKaEiaNBaJMaNUaEkaJLatXaGvaFUaFUaFUaFUckMaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfPbckbckbaCbckbefaEdbefbfQbefaEdbefbckbegbehaXFaQQaQpaZlbfSaQnaTzbfVaTzbaHbaHaNcaNvaNxaHfaNuaNfaNtaMXaMZaMKaMNaHfaIwaLWaMnaHjaLVaHfaLTaLqaKVaKUaKTbbcaIHaYpbRAaZNaLSaIoaSwaLMaZLaIPbbsaTLaZPaIIaZPaOEbgsbgwbgubgvbgtbgsbgubgwbgvaNAaZPaIIaZPaZTaYtaYtaYtaIxbgAaQbbgCaZTaPlaLZaLYaLbbgMaJHbgMbgObgMaLcbgMbgMbgMaKKbgMaLvaIjaLgaLfbgMbgMaIJaQmaIiaKKbgSbgMaKOaPLaKPaTmawaaKWaKWaKZaLxaKWaKWaLzbbEaMjaLDbcebcedBsdBvdBvdByaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaJIaaaaaaaaaaaeaLJaLJaKpaJRaIlaGpaaaaaaaaaaFUaFUaImatXatXatXaTxatXatXatXatXaLHbwsaLGaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcqbecbedbeebckbefaEdbefaEdbefaEdbefbckbegbehaXFaZjaQUaZlaFGbekaQRbemaQEaFHaZlaXQaEcaFWaFXaGdaGiaGsaGyaGzaFmaFpaMLaFEaFKaFNaFPaFQaGBaGAaGFaGEaGIaGHaGNaHiaYpaRnaZNaGKaFwaYDaJPaZLaDNaFdaTLaaeaaeaFhaKxaEEaDdaRibfaaxlbfcaAYaBmaECaJxaFraaeaaeaZTbfiaClbfkaGTaGLaDVaDzaZTaEMavgaGwazgbfAaExbfAbfwayfaEwbfAbfAbfAaEKbfAayuaEDaMHaJGbfAbfAaCSayubfwaEKaELaxXaCSaybaMSaTmaziaFoaKQaFnaFlaFkaETaEhaDZaDaaFgbcebcedBCdBBdBzdBJaaaaaaaaaaaeaakaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeajGaJJaJEaGbaJEaJKaGpaaaaaaaaaaFUaGfaGgayKaEiaNBaJMaNUaEkaJLatXaGvaFUaFUaFUaFUckMaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfPbckbckbaCbckbefaEdbefbfQbefaEdbefbckbegbehaXFaQQaQpaZlbfSaQnaTzbfVaTzbaHbaHaNcaNvaNxaHfaNuaNfaNtaMXaMZaMKaMNaHfaIwaLWaMnaHjaLVaHfaLTaLqaKVaKUaKTbbcaIHaYpbRAaZNaLSaIoaSwaLMaZLaIPbbsaTLaZPaIIaZPaOEbgsbgwbgubgvbgtbgsbgubgwbgvaNAaZPaIIaZPaZTaYtaYtaYtaIxbgAaQbbgCaZTaPlaLZaLYaLbbgMaJHbgMbgObgMaLcbgMbgMbgMaKKbgMaLvaIjaLgaLfbgMbgMaIJaQmaIiaKKbgSaKKaKOayOaKPaTmawaaKWaKWaKZaLxaKWaKWaLzbbEaMjaLDbcebcedBsdBvdBvdByaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaJIaaaaaaaaaaaeaLJaLJaKpaJRaIlaGpaaaaaaaaaaFUaFUaImatXatXatXaTxatXatXatXatXaLHbwsaLGaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcqbhkbedbeebckbefaEdbefaEdbefaEdbefbckbegbehaXFbhlbhmbhnaKeaKbaJZaJZaKgaKfaKebcCaKiaKkaHfaKyaJwaJyaJNaKmaIRaISaHfaIfaHLaILaIOaPnaHfaKHaKNaKIaKFaKDaSWaKEbbFaKlbleblebleblebleaZLaHDaHcaKobhUbqxaPHaNhbgubgubgubguaDTbgubgubgubguaIgaBCaMBaZPaPXaJYaMabifbigaKjaPfaNoaZTaFCaPwaKnazsbiwaGxbiwaGjbiwaMYbiwbiwaIUbiwbiwaOGaKXbiwaIraIUaFOaHhaOGaGjbiwbiyaPiaPmaIYaEuaJaaFjaJcaJdaJfaMjaJlaJlaJhaZbaFtaJqaTmaTmaTmaawaHTaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaIZaIWaJAaJvaJDaJCajeaJFaIlaFUaFUaFUaFUaFUaJXaLFaJXaJXaLwaLyaLwaMQaMQaNWaMdaMgaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiTbiUbaBbcjbckbckbiVbckbiWbiXbckbiYbckbcqbiZaULaZjbjabmsbbpbbrbbzbbtbbnbblbbpbmPbjkbaXaHfbiobiIbjebixaHfaHfaHfaHfaHfaHfaHfbjEaHfaHfbbcbbbbbabbhbbebbdbbiaYpaXoblebbjaVSbbkblebbybeEbjQaQZaZPbnHaZMbhBbjMbmSbjIbaSbjKbjIbjIbjLbjMbjNbjObnJaZPaZTaYtaYtaYtbljaYtaYtaYtaZTbmTaYpbahbkdbcTbezbcTbkdaSaaSaaSaaSaaSaaSaavAavAbcSavAavAavAbhobgGavAavAavAbdmavAbddbdgaUSbdaaTCbcYbcVbhuaJlbcNbcRbcQaZbaSmaJqaTmbhsbcFbeuaTSaTSbcUbeaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaIZbcLbcDaaaaaebcubbHbfWbbBbhNbrKaJXbhibkYbfDbhdbhhbhqaJXbofbmbbgNbinbnLbhWbhWbiuaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiTbiUbaBbcjbckbckbiVbckbiWbiXbckbiYbckbcqbiZaULaZjbjabmsbbpbbrbbzbbtbbnbblbbpbmPbjkbaXaHfbiobiIbjebixaHfaHfaHfaHfaHfaHfaHfbjEaHfaHfbbcbbbbbabbhbbebbdbbiaYpaXoblebbjaVSbbkblebbybeEbjQaQZaZPbnHaZMbhBbjMbmSbjIbaSbjKbjIbjIbjLbjMbjNbjObnJaZPaZTaYtaYtaYtbljaYtaYtaYtaZTbmTaYpbahbkdbcTbezbcTbkdaSaaSaaSaaSaaSaaSaavAavAbcSavAavAavAbhobgGavAavAavAbdmavAbddbdgaUSbdaaTCbcYbcVbhuaJlaBIbcRbcQaZbaSmaJqaTmbhsbcFbeuaTSaTSbcUbeaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaIZbcLbcDaaaaaebcubbHbfWbbBbhNbrKaJXbhibkYbfDbhdbhhbhqaJXbofbmbbgNbinbnLbhWbhWbiuaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiTbaBbaCbaBbaDbaBbaBbaDbaBbaCbiUbkDaQNbiabkFbkGaSWbbTaYOaTaaYObbPaSWaZcaXYaZdbaibkXbizaYLaYMbkmbizbjJbkAbizbkEbkXaYNbkXbagaXZaYIaYFbkObkXbjYbibblcbRAaZoaVTaZsaYJbleaTLaTLaTLaTLaZPaQfbloblpblqbeoaQXbssboRbqzaQYblrblqblyblzaQeaPYaZTblCblDblEbigaPRaYtbijaZTbkhaYpaOMbaIbaGbctbgibkdbawbazbfrbaubatbavaSRbyCbDEavAaUqaUnbeDaOhbOoavAbWIbaravAbambaobapbaqbakbakbakbfqbfoaJlaJlbggbfnaPgbgabfYbeGbeybcgbbxbbxbbSbbQbaPaYxbaPbaPaYxbaPbaPbaPbaPbaPbaPaYxbaPbaPbaPbaPbaPbaPaYxbaPbaZbbIbbxbbxbbxaYdbdZbejbebbebberbfsbnhbcfbcibdSbdTbdUbdVbdWbdYbbWbbYbbZbcbbccbcdaYZaLIaLIbrJaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaaaTpaWhbmpaSlaSlaSlaSlbmqaWhaTpaaaaQNbyKbmrbruaSWbktbdKblPbdKbspaSWbsxbjxbfubmCbfHbrEbmDbmCbmCbfxboMbmGbmBbmCbmCbfvbmCbmCbmCbfzbfybmKbmKboXbBebdPbnUblebdQbtWbcBbleaSobdLbeiaSBbtIblrbmYbeobskbsYbjXbndblGbndaSDboPboybvkbnjaTkaSZaZTbfIbnnbnobnpaTraZTaZTaZTaEMbnraWQbkdbfRbfObgIbkdbzcbyHbgLbgrbvxbgkbgjbgHbgFbgEbgDbgZbhabkTbgYbhebhgbhbavAbddaYabzfaTmaFTbgVaEfbgJbgTbcZbgxbgcbmmaZbbafbadbkybjDaFLaaaaaabgKbcDaaaaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaVNbeUbeaaaaaaeaGqbfLbuobulbtzbtvbsXbrObwZbxnbwTbwVbsNbwSbvKbvLbsCbvJbvIbhWbvlbvsaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaaaTpaWhbmpaSlaSlaSlaSlbmqaWhaTpaaaaQNbyKbmrbruaSWbktbdKblPbdKbspaSWbsxbjxbfubmCaBJbrEbmDbmCbmCbfxboMbmGbmBbmCbmCbfvbmCbmCbmCbfzbfybmKbmKboXbBebdPbnUblebdQbtWbcBbleaSobdLbeiaSBbtIblrbmYbeobskbsYbjXbndblGbndaSDboPboybvkbnjaTkaSZaZTbfIbnnbnobnpaTraZTaZTaZTaEMbnraWQbkdbfRbfObgIbkdbzcbyHbgLbgrbvxbgkbgjbgHbgFbgEbgDbgZbhabkTbgYbhebhgbhbavAbddaYabzfaTmaFTbgVaEfbgJbgTbcZbgxbgcbmmaZbbafbadbkybjDaFLaaaaaabgKbcDaaaaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaVNbeUbeaaaaaaeaGqbfLbuobulbtzbtvbsXbrObwZbxnbwTbwVbsNbwSbvKbvLbsCbvJbvIbhWbvlbvsaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaTpaaeaaaaaeaaaaXFbzWaXFbpQbqcaVgbpAaXFbzWboibojaQNaZjbwJbpwaSWbqTbdKbdFbdKbpzaSWbpPbhVbdAbdBbosbmobkVbdwboxbdCbnCbosbosbosbosaWPbosbmnbohbkVbdvbosbosbnDboAboBbnUblebbubbVbbfboNbbfbbvbbfbbfbtIaRWaRZboLboLboLbszbppbeJbdEbsyboLboLboLaRNaRLaZPaZTblKboTboUboVboWaZTbbXaXNbaYbpaaWQbcTbeIbeObeMbkdbeRbfEbfCbjfaSaaSaavAavAaTUavAavAavAbjobjpavAavAbeFaRPavAbeAaYabeBaTmaJqaJqaJqaJqbeCaJqaJqaWRbjraZAaTmaTmbffbfebfFaaaaIZbfGaaaaaaaaeaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaVNbeUbeaaaebeSbesbqSbexbqKbtBaJXbrbbqfbqhbqvbqCbhXaJXbqpbpCbqeaMQbqkbqobhWbiuaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaboibojaPBaWgaQNaULaWhaULbtybrsbcybcMaULaWhaULaZDbrrbpNbkFbkGaSWaUUaSVaTaaSVaUUaSWbcWaXraXiaSWaTeaXmaTiaSWaSWaTcaSWbqabqaaXcbaLbaNaXcbqabqabqabqabqabqabqabqgbboaLBaWJaWIaXwaSTbdsaSTaPEaWFaPGbalbaWbcvbqtbbgbqtbqtbqubajbqwboLboLbdyboLbcObdcaZTbdGaRBbqAbdqbqBbdbaZTbdXaYtaEMbqFaLabkdbkdbkdbkdbkdaTTaUkaSaaSaaSaaXzaUlavAaXxaXvaXuavAbbNbdtavAaUqaTZaTXaTYaUhaUiaUbaUgarwarwaXCarwapDbelaJqbhcaYsaYnbduaYvaYTaYzaUjaTSaSSaSgaaeaaeaaeaaeaaeaaeaaaaaeaaaaaeaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaeaJIaaaaVNaUmaJvaWtaWsajeaJRaIlaFUaUraUpaYKaYRaYAaYEaJXaJXaWjaWzaXdaMQaMQbePaYYaPIaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaXFaZDbrsaZfaYXaZfbrsbrsbrtaQOaYbaYWaXMaXMaXMaXJaRzbryaRyaXVaRraRxaRwaRuaRtaRsaRraXnaTqaRIaUxaUxaUyaUxaUxbrSaRHaWDbqabwEaWEbrXbrYbscbqaaWwaWvbqaaWwaWvbqaaWAaYpbRAbleaVqaRGaONbleaOWaOoaNwaVpbtIaZuaZxboLaZnaOYaXSbssbssaYQaYUaXTaYmboLaWGaWdaZTaXBbsAbsBaXbaSIbsEbsFaTdaYtaEMbqFaJbaSaaTPaSdaTQaUNaRUaRCaQtaSaaVYaXsaXgaVVaVUaVXaVWavAavAavAavAavAavAaRPavAaRRaRSaRTbgXbiJaRQbiJbiJbiJbgXbgXbiJbiKaRMbiNbbAbcsaIMbiRbiSbgXbgXbgXaaeaaaaaaaaaaaeaaaaaeaaaaaeaaaaacaaaaacaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaFvaOXaIlaGpaRDaFUaZKaZOaZQaTJaTKaTVaTWaUuaUAaUKaVcaWcaLIaLIaSQaFUaFUckMaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaXFbwBaUMaUMbfUaUMaZyaUcaUeaUebpxaUebiebhyaZSbcaaZEbiAbacaXjaKebqqbhpbgRbhtaXeaXhbgPbgQbgWbaxbbJbltaZGaUxaYCaXlbrTbqaaYwaYqbrXbrYbscbqaaYobDDbqaaYobDDbqabqgaYpbRAblebleaYBblebleblebeXbeWaUGbleblublvblwbssbndbndbtQbtRbtSbtTbtTbcHbtVblQbmZblWbdqbtZbuaaZzbucbudaZTbhHaYtaYPbqFaRkaSabilbhYaRUaXRaRUbhZaRUbnAbeHbcPbjbbtdbtcbrZbptbyiaXUaXAbwIbiiavAbyxavAaPTaYaaXWbgXaYkaYlaZVaYebncbgXbnfbabbdHbkuaVRbkabtubjCbjBbcwbjPbkCbgXaaeaaeaaeaaeaaeaaeaaeaaaaacaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaWBaGpaaaaFUbnKboKbniaTJbfbbfJbdRbeqbfNbfXbfKaTJaFUaaaaaaaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaZhbojaQNaWgaPBaWgaQNckJaSlbxFaQNaWgaQNaQNaQNaQQaQpaKBaZwaKBaKBbuQbuRbuQaUXbuQbuQbuQbuQaUxaUxaZIaZFaUxaUxaUxacpbHMbqaaVebrVbrXaYibqabqaaVdbqabqaaUZbqabqabenaYpbRAbgzbgpbfgbeTbfpbeTbfgbfgbkSblsbdcbkrbqtbjZbndbvmbfdbvobvpbvqbfmbjmboLbjibjhaZTbvvbvwbdqbhQbhjbvyaZTaYjaYtaEMbqFaRkaSaaVOaVOaVPaVOaXPaVQaWuaSabbKbcPbcJbcXbcPbeHbdJaXIaVhaVfaViaNdavAaRPavAaXkaVlaVnaUvaVoaVGaVIaVKbfjbgXaQiaZJaZRbmeaUdbjAbmhblXbmibmjbiObPGbgXaaebgXbgXbgXbgXbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaWBaGpaaaaFUaZXaZZaZWaTJaYSaZgaZkaZqaZraZtaZvaTJaFUaaaaaaaNKaNZaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaboibojaPBaWgaQNaULaWhaULbtybrsbcybcMaULaWhaULaZDbrrbpNbkFbkGaSWaUUaSVaTaaSVaUUaSWbcWaXraXiaSWaTeaXmaTiaSWaSWaTcaSWbqabqaaXcbaLbaNaXcbqabqabqabqabqabqabqabqgbboaLBaWJaWIaXwaSTbdsaSTaPEaWFaPGbalbaWbcvbqtbbgbqtbqtbqubajbqwboLboLbdyboLbcObdcaZTbdGaRBbqAbdqbqBbdbaZTbdXaYtaAkbqFaLabkdbkdbkdbkdbkdaTTaUkaSaaSaaSaaXzaUlavAaXxaXvaXuavAbbNbdtavAaUqaTZaTXaTYaUhaUiaUbaUgarwarwaXCarwapDbelaJqbhcaYsaYnbduaYvaYTaYzaUjaTSaSSaSgaaeaaeaaeaaeaaeaaeaaaaaeaaaaaeaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaeaJIaaaaVNaUmaJvaWtaWsajeaJRaIlaFUaUraUpaYKaYRaYAaYEaJXaJXaWjaWzaXdaMQaMQbePaYYaPIaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaXFaZDbrsaZfaYXaZfbrsbrsbrtaQOaYbaYWaXMaXMaXMaXJaRzbryaRyaXVaRraRxaRwaRuaRtaRsaRraXnaTqaRIaUxaUxaUyaUxaUxbrSaRHaWDbqaazHaWEbrXbrYbscbqaaWwazhbqaaWwazhbqabqgaYpbRAbleaVqaRGaONbleaOWaOoaNwaVpbtIaZuaZxboLaZnaOYaXSbssbssaYQaYUaXTaYmboLaWGaWdaZTaXBbsAbsBaXbaSIbsEbsFaTdaYtaEMbqFaRkaSaazYaSdaTQazNaRUaRCaQtaSaaVYaXsaXgaVVaVUaVXaVWavAavAavAavAavAavAaRPavAaRRaRSaRTbgXbiJaRQbiJbiJbiJbgXbgXbiJbiKaRMbiNbbAbcsaIMbiRbiSbgXbgXbgXaaeaaaaaaaaaaaeaaaaaeaaaaaeaaaaacaaaaacaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaFvaOXaIlaGpaRDaFUaZKaZOaZQaTJaTKaTVaTWaUuaUAaUKaVcaWcaLIaLIaSQaFUaFUckMaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaXFbwBaUMaUMbfUaUMaZyaUcaUeaUebpxaUebiebhyaZSbcaaZEbiAbacaXjaKebqqbhpbgRbhtaXeaXhbgPbgQbgWbaxbbJbltaZGaUxaYCaXlbrTbqaaYwaYqbrXbrYbscbqaaYobDDbqaaYobDDbqaaWAaYpbRAblebleaYBblebleblebeXbeWaUGbleblublvblwbssbndbndbtQbtRbtSbtTbtTbcHbtVblQbmZblWbdqbtZbuaaZzbucbudaZTbhHaYtaYPbqFaRkaSabilbhYaRUaXRaRUbhZaRUbnAbeHbcPbjbbtdbtcbrZbptbyiaXUaXAbwIbiiavAbyxavAaPTaYaaXWbgXaYkaYlaZVaYebncbgXbnfbabbdHbkuaVRbkabtubjCbjBbcwbjPbkCbgXaaeaaeaaeaaeaaeaaeaaeaaaaacaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaWBaGpaaaaFUbnKboKbniaTJbfbbfJbdRbeqbfNbfXbfKaTJaFUaaaaaaaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaZhbojaQNaWgaPBaWgaQNckJaSlbxFaQNaWgaQNaQNaQNaQQaQpaKBaZwaKBaKBbuQbuRbuQaUXbuQbuQbuQbuQaUxaUxaZIaZFaUxaUxaUxacpbHMbqaaVebrVbrXaYibqabqaaVdbqabqaaUZbqabqabenaYpbRAbgzbgpbfgbeTbfpbeTbfgbfgbkSblsbdcbkrbqtbjZbndbvmbfdbvobvpbvqbfmbjmboLbjibjhaZTbvvbvwbdqbhQbhjbvyaZTaYjaYtaEMbqFaRkaSaaAmaVOaVPaVOaXPaVQaApaSaaBvbcPbcJbcXbcPbeHbdJaXIaVhaVfaViaAlavAaRPavAaXkaVlaVnaUvaVoaVGaVIaVKbfjbgXaQiaZJaZRbmeaUdbjAbmhblXbmibmjbiObPGbgXaaebgXbgXbgXbgXbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaWBaGpaaaaFUaZXaZZaZWaTJaYSaZgaZkaZqaZraZtaZvaTJaFUaaaaaaaNKaNZaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaebwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfdzWbwgbwhaZjbwiaKBaRHbtwcnSbuQdLtbxHccRdLwdLudLvbuQcpocpocsUdJRdJYcsQaUxacpcbObqadABbJpbrXbrYbrUcbNbrVbrUcbJcbFdJXaXcbqgaYpbRAbgzcsPcsMcsNcsOcsOcsOcsWcsTblsclWcnTaZPaZPaZPdLAdLydLzdLydLxaZPaZPaZPcmjclWaZTaZTbtYaZTaZTaZTaZUaZTcgSaYtcsScsRaRkcjqcjscjscjsaUzcjscjtcjscttbeHbeHcuAbeHbeHbcPdxSduvdIGcimcidciYavAaRPavAdLBaVlcjdaZBcjhblXbnYcjpcjHcjLcjybnPbnQbnRaUdbnSbnTaYcbgdbnXbnWcnVcsXcEebWjbocbodbodbgXaaeaaaaXqaaaaXyaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaWBaGpaaaaFUaFUaFUaFUaTJcoIconcpubfNcrjcpRcrqaTJaFUaaaaGqdIJbBHdLCaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbxDbxEbxFaZjbxGaKBdDUdDYcmDbuQchIbxHccRbWmchLdLqbuQdKkdJVcnjdJTaUxaUxaUxacpaKSbqabXybXnbrXbrYbrXbrXbrXbrXbrXbtEbrXbaLcdicbhcrHcrCcrucrAcrudzQcrucrAcrucsaciachmcfXchocrUcrMcrIcrIcrNcrJcrIcrLcrKcivckxclEclFcrMdAlcipcrMcsocsqcrMcsrcsccsmbyDaWQchWaRUcTiaRUdAraRUaRYaRUdgJbeHbeHcUSbeHbeHbcPdtnduvcigaXUciddxeavAaRPavAbnFciqbeBaUvcirblXblYblXcitciubmcbksbmdbpyaYfbnIbpBbmgbmlbmkblbciybUiaaebNCbpJbodbpKbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaWBaGpaaaaaaaaaaaadIDbUtbMUbMUdICclMdICbMUbMUaSOaLGaFUaFUckMcElcEmaaaaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfcjrdzTcjraZjdHpaKBcmCdwcbGxbuQcfmbxHccRdwwbxHchQbuQaUxdJPaUxdJRdJQcrkaUxacpbrTbqabwFbJpbXibWUbvabvabvabvabvacbPbvabeYboAcqVcqZcrecbrcbscbrcbtccxcqNcqMbZVbZUbZYcqRcqncqOcqncqmcqmcqkcqJcqmcqpcqocpQcpScprdxwdxzcqjcpVcqccpxcpBcprcpscpHcpMcpEbZSchlcdpcLlcyGcyGcLicLjcdpcQwcQMcqacRvbcPcNHbcPcPTcyhcdccgzcgccfUdKTcfWavAbpqcgQcgYcgUcgLcgBcgOcgMdKrcfHdIuaVFaUWaVjaVmaVzaYcaWHbrjaVLaYVcfMbHWczpbRbbrqbodaPUbgXaaeaakaXqaaaaXyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaWBcEgaNKaNKaaaaaaaJUdIvcnIdIwbHidIybHidIzcnOdIAaJUaaaaGqaIlaGpaLKaFvaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfcjrdzTcjraZjdHpaKBcmCdwcbGxbuQcfmbxHccRdwwbxHchQbuQaUxdJPaUxdJRdJQcrkaUxacpbrTbqabHlbJpbXibWUbvabvabvabvabvacbPbvabeYboAcqVcqZcrecbrcbscbrcbtccxcqNcqMbZVbZUbZYcqRcqncqOcqncqmcqmcqkcqJcqmcqpcqocpQcpScprdxwdxzcqjcpVcqccpxcpBcprcpscpHcpMcpEbZSchlcdpcLlcyGcyGcLicLjcdpcQwcQMcqacRvbcPcNHbcPcPTcyhcdccgzcgccfUdKTcfWavAbpqcgQcgYcgUcgLcgBcgOcgMdKrcfHdIuaVFaUWaVjaVmaVzaYcaWHbrjaVLaYVcfMbHWczpbRbbrqbodaPUbgXaaeaakaXqaaaaXyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaWBcEgaNKaNKaaaaaaaJUdIvcnIdIwbHidIybHidIzcnOdIAaJUaaaaGqaIlaGpaLKaFvaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbADbAEbxFaZjdCHaKBcmvaKBaKBbuQdBDdCAdBrbxHbxHbxHbuQdJOdJNaUxaZeaUxaUxaUxcnQahccdabrVbrVbtEbZfbzobrVbrVbrVbrVcpnckVaXcbqgbWCcMJbSAbSAcdebSAcddbSAbSAbBqbBqccSbUhbBqcpmblscoNcoMcoPcoOcpacoMcphblscpmbCGbCGcyjccWbCGbCGbDRcdycdrbCGcdlcBKcmYbBybYHcdQbzecobbzecnUcoaaRUaRUcttcuAbeHctpcpjcEkcpjcqacvzceCceycewcesavAbxhavAcfjcxccfebiRceYcePceMceGbiRbiScdfaSkbmjbsWaYraRVaTIaTyaTIaTyaTOcdgcdmaaebgXbgXbgXbgXbgXaaeaaaaXqaaaaXyaaaaXqaahaacaaeaacaahaahaacaacaahaahaahaFvaFvaFvaFvaOXdLmbBHbBHcppajeajeaJUcDBcdOcdVcLMclMcLMcdVcdOdAZaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaebwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfdzWaULdAbaZjdALaKBacpaKSaUDbuQcEoccRbCfcnlchQbxHbuQdKmctXaUxdKkdKjctWaUxacpbrTbqabETbETbtEbrYbwDbwDbwEclmbwFckWbqabqacdibCwcaVbSAcllckrckIcjYcnhcbicNedLYcvOckLbBqaaecufcutcoMcoMcuscoMcoMcuqcugaaebCGdLXdvNdvOdvTbCGbCGbCGbCGbCGcPEcBKcmYbCObqGaSadGSaRUcjsbAedGYcjsdHCaSacuAdGGbeHbeHbeHbeHbeHduvdFbcnFdGCcnHavAbxharNcntcnocnubiNcnycnvcnBcnzbiPcohbuxbdNbepbevbevbeZbgqbghbgdbfZbfMcltbHncEebWjbuIbuJbuJbgXaaeaaebYOaaebVMaaeaXqaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaFvaaacEpbFgbFkaIlaGpaaaaJUdJlcdOcdOcdOdJkcdOcdOcdOdJjaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaedLWbojaQNaWgaPBaWgaQNckJaSlbxFaQNaWgaQNaQNaQNbZmbAGcfodnUarXagvbuQcmJcmsbCfcmtbDqbEHbuQaUxaUxaUxaUxaUxaUxaUxacpbrTbqacmpctHbtEbrYbrVbrVcckbrVbyabybbqacjbbqgaYpcaVbSAbDQcgscgxcgCcmqcbicgFcgGcgHcgDcgEaaectIctNctKctJbzvctKctJctMctLaaeckDcjWdLVdLSdLTdLUcvxcPCcOKbCGcgVcBKckKbEhbEibEjbEjbEjcmEcmKbEjcEncmGbEjdCWbEjdCVdEBdELdDadDddFabjScmVbjSbjSavAbxhciocvZcvYciobgXbgXbgXbgXbgXbiMbiNcmWaZYcneblXbvVbvWbvXbvYbnTbbmbanbMhbUiaaebNCbwcbwdbwebgXaaeaaaaXqaaaaXyaaabSwaFvaFvaFvaFvaacaFvaFvaFvaFvaacaFvaaeaacaFvaFvaFvaFvaFvaGqaIlaGpaaaaJUceTdJgdJfcdOdJecdOdJddJcceIaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaXFaZDbrraZfaZfaZfbrsbrsdLQbrsbrrbrsdLPbrrbrsbpNcuPaKBaZmbHMaqhbuQclnclobxHbxHbxHcljbuQbzmasdarnctrdKedKhaKBacpbMbbqabCtbEYbtEdAHbwCbwCbwGbrVbrVcnkbqacgbbqgaYpcfPbSAcdGcefceqchgceecbiceAcetceuceNbBqcfsbFmcfsbFmbFmbFnbFmbFmcfsbFmcfsbCGcjobJPchRchTdLMcicchNchAbCGcgVcBKdLNbqFbqGbEjcmhdCSbFCbFBdCmcmacmaclSclYbEjbEjbEjbEjbEjbEjbEjbjSdxUclNbgbavAdxTciocvRcuUcvXciodIYctCaQsaSRbgXbxqcfKcfJcfNcuQbxvbxwbxxbxychHbbmcficcCbHWczpbRbbxCbuJcfVbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLKaOXctBaLIaLIdIUaLGdIWdIVcdOdIXcdOdISdITdIDdIUaLIaLIctwaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaebwfbwfbwfbwfbwfbwfbwfbwfbwfbwfbwfdzWaULdAbaZjdALaKBacpaKSaUDbuQcEoccRbCfcnlchQbxHbuQdKmctXaUxdKkdKjctWaUxacpbrTbqabETbETbtEbrYbwDbwDbwEclmbwFckWbqabqacdibCwcaVbSAcllckrckIcjYcnhcbicNedLYcvOckLbBqaaecufcutcoMcoMcuscoMcoMcuqcugaaebCGdLXdvNdvOdvTbCGbCGbCGbCGbCGcPEcBKcmYbCObqGaSadGSbJfcjsbAedGYcjsdHCaSacuAdGGbeHbeHbeHbeHbeHduvdFbcnFdGCcnHavAbxharNcntcnocnubiNcnycnvcnBcnzbiPcohbuxbdNbepbevbevbeZbgqbghbgdbfZbfMcltbHncEebWjbuIbuJbuJbgXaaeaaebYOaaebVMaaeaXqaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaFvaaacEpbFgbFkaIlaGpaaaaJUdJlcdOcdOcdOdJkcdOcdOcdOdJjaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaedLWbojaQNaWgaPBaWgaQNckJaSlbxFaQNaWgaQNaQNaQNbZmbAGcfodnUarXagvbuQcmJcmsbCfcmtbDqbEHbuQaUxaUxaUxaUxaUxaUxaUxacpbrTbqacmpctHbtEbrYbrVbrVcckbrVbyabybbqacjbbqgaYpcaVbSAbDQcgscgxcgCcmqcbicgFcgGcgHcgDcgEaaectIctNctKctJbzvctKctJctMctLaaeckDcjWdLVdLSdLTdLUcvxcPCcOKbCGcgVcBKckKbEhbEibEjbEjbEjcmEcmKbEjcEncmGbEjdCWbEjbICdEBdELdDadDddFabjScmVbjSbjSavAbxhciocvZcvYciobgXbgXbgXbgXbgXbiMbiNcmWaZYcneblXbvVbvWbvXbvYbnTbbmbanbMhbUiaaebNCbwcbwdbwebgXaaeaaaaXqaaaaXyaaabSwaFvaFvaFvaFvaacaFvaFvaFvaFvaacaFvaaeaacaFvaFvaFvaFvaFvaGqaIlaGpaaaaJUceTdJgdJfcdOdJecdOdJddJcceIaJUaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaXFaZDbrraZfaZfaZfbrsbrsdLQbrsbrrbrsdLPbrrbrsbpNcuPaKBaZmbHMaqhbuQclnclobxHbxHbxHcljbuQbzmasdarnctrdKedKhaKBacpbMbbqabCtbEYbtEdAHbwCbwCbwGbrVbrVcnkbqacgbbqgaYpcfPbSAcdGcefceqchgceecbiceAcetceuceNbBqcfsbFmcfsbFmbFmbFnbFmbFmcfsbFmcfsbCGcjobJPchRchTdLMcicchNchAbCGcgVcBKdLNbqFbqGbEjcmhbHXbFCbFBdCmcmacmaclSclYbEjbEjbEjbEjbEjbEjbEjbjSdxUclNbgbavAdxTciocvRcuUcvXciodIYctCaQsaSRbgXbxqcfKcfJcfNcuQbxvbxwbxxbxychHbbmcficcCbHWczpbRbbxCbuJcfVbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLKaOXctBaLIaLIdIUaLGdIWdIVcdOdIXcdOdISdITdIDdIUaLIaLIctwaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaXFbwBaUMaUMbfUaUMaUMcumdLIdLHaUeaUeciMcihcgRdLLdLKaKBaZmbMeaqhbuQdLwbGabxHbxHbGabxIbuQdKddKcagSarXagvdKeaKBacpctmbqacjUbxXckacjZbrVccDckdckcctncdtbqacdFbqgaYpcdIbSAcbRbFvdLGcgJcbicbicbUcbXcdPctZbBqctcctactdbGzbGAbGBdLDclGcticthctlbCGdLEbJPcgndLFbCGcglcgXcgWbCGcgVcBKcjGbqFceXcktckubGRckqbOlbGVbFCbFCbVackobEjbMoceWcffceWbIzbEjckSckRcoGckNavAbxhciocuOcuNcuMcioaQsaQsaQsckFbgXbxqceHcerbiJbiJbiJbyTblXckjblXbbmcbGbMhbUiaaebgXbgXbgXbgXbgXaaeaaaaacaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaIlaGpaaaaaaaJUcuucdOcdOcisdINciwcunaJUaaaaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaZhbmqceQaTpaQNbuNbojaQNaWgaQNbuNbojaQNaQNccNaQNaQNaKBaZmbMbaqhbuQbxIbWkbHzbxHbHzcfQbuQdJKbrTbrTaKSbxMbrTaKBacpbHMbqabqabMvbMDbMwbMvbqabqabqabqabCubqabqabGobbFbNwbSAbKsbFvbKkbVpbJQcbibNvbNhbNubMQbBqcNNcNObIfcLFbIgbIfcLLbIfciQcMqcMUbCGbHEbJPbLubLDcNLbWxbWnbWpbCGbQWcBKbXkbqFbqGbUXcwybLzbLEcMTbUZbFCbLzbVaceFbEjbEQbHacchcfhbIzbEjbbwbPsbPrbPvbVmbVtciocjPciSckwcioapCdJCckCcfYbgXbArbZqbZpbVWbiJbAvbxyblXbxwbOybOzccZcltbHncEebWjbAAbABbACbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaIlaGpaaaaaaaJUbVscmNcmObYzcmUcmRbVsaJUaaaaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaXFbeNaXFaaaaaaaaaaaeaaaaaaaaaaaeaaaaKBbUwarXbUxbUybyObUycfwbuQbuQbuQbuQbUvbuQbuQbuQdJGbMebHMbrTbUAbQsaKBacpciAbqabKRbKPbKObHPbHgbKMbKfbqabKNbJYbJWbqabqgaYpbWgbSAbDQbFvcnWbHxbDQcbibJSbIocMCbJObBqcincaycxwcfLcoibWQcfEcyvbJHbJIdJHbCGbFsbGIbPJbGNcMBbUQbUCbUNbFpbEFcBKbUBbqFbqGbTObTRbTNbTNcdxbIAcdubUbbUdcdzbEjcMybHacftbKbcepbEjceocfFcQmbTlavAbxhciociociociociocluaQsaQscelbgXbArbZqbZpbUebBXbAvbBYbnTbxwbAwbbmcaObMhbUiaaebNCbCabCbbCcbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaIlaGpaaaaaaaJUclBbMUbZtciJbZFbMUclCaJUaaaaaaaGqaIlaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaXFbeNaXFaaaaaaaaaaaeaaaaaaaaaaaeaaaaKBbUwarXbUxbUybyObUycfwbuQbuQbuQbuQbUvbuQbuQbuQdJGbMebHMbrTbUAbQsaKBacpciAbqabKRbKPbKObHPbHgbKMbKfbqabKNbJYbGObqabqgaYpbWgbSAbDQbFvcnWbHxbDQcbibJSbIocMCbJObBqcincaycxwcfLcoibWQbGUcyvbJHbJIdJHbCGbFsbGIbPJbGNcMBbUQbUCbUNbFpbEFcBKbUBbqFbqGbTObTRbTNbTNcdxbIAcdubUbbUdcdzbEjcMybHacftbKbcepbEjceocfFcQmbTlavAbxhciociociociociocluaQsaQscelbgXbArbZqbZpbUebBXbAvbBYbnTbxwbAwbbmcaObMhbUiaaebNCbCabCbbCcbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaIlaGpaaaaaaaJUclBbMUbZtciJbZFbMUclCaJUaaaaaaaGqaIlaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaULceQaULaaeaaeaaeaaeaaeaaeaaeaaeaaeaKBbSFaXOaXOaXOaXlbrTaqhbHMaUDbtwbrTaDnccJbMbaKBaKBaKBaKBaKBbTcaKBaKBbSYaKSbqabHHbHSbHRbHRbHPcekbTfbqabFccgibFabqaaWAaYpbUjbSAbDQbTdbEfbTecCmcbibDlcKpcJWbBqbBqcegcdDbLdcdjccMccLcdvcdscuhcdqcCkbCGbEadJDcnndJEcLZbSIbSIcKwbCGbGYcBKbSJbqFbqGbEjbRfbRjbRybFCcpOcqdbOlbRYbRZcenbScctOcejbRMbRSbEjbjSbjSbjSbjSavAbxhavAcxnckFaQsaQsaOhaThckEaQsbgXbgXcfpaSkbAubiJccgbDhblXbDibOybbmchBccCbHWczpbRbbDkbABcPDbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaOXckGaFUaFUaFUaLHaLIaLIaLIbwsaLIaLIaLIaSQaFUaFUaFUckMaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaKBaKBaKBaKBbQsbxRaXObQhcdSbQlbKtbKtbKtccabKtbKtcdSbKtbKtbKtbQVbKtbJibQUbrTbqabEZbFtbFqcdTbJpbERbEybqabqabqabqabqabAWaYpcaVbSAbSAbQTbQTbQTbSAbSAbBqbBqcEbbBqbBqcCLcCxbMGcCLcDccDccDccCxbMIcCLcCxbCGbCGbCGbCGbCGbCGbQQbQQbQQbCGbCNcBKbSzbqFbNWaZLbMNbMNbMNbPZbMNbMNbPWbMPbMNbMNbMNbMNbEjcdMcdNcdKcdEcdAcdnaQsbLLbLMavAckCckzckyaQsaOhaQsaQsbWIbgXbPIbmcbPLbiJbiJbiJcdLblXbEDbEEbbmcbGbMhbUiaaebgXbgXbgXbgXbgXaaeaaebSwaaebVMaaeaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaIlaGpaaaaaaaaaaaaaaaaaabQgaaaaaaaaaaaaaaaaaaaGqaIlaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaKBaKBbzdccPaWoaKBccQaKBaKBaKBcoLbYwbYwbYwbYwbYwbYwbYwbrTbZwaQWbVBbqabVwbUaccebTnbJpbHPbWoccfbVFbtwaKBcbQbqgcorbYeccrccnccicciccicEhcdocxTcEiccidAScosccrccrcoycowcowcowcoxcowcovccccccccKcoEbXwcfSdBocEjcciccicciccObTzcccccmbqFdvRchbcevbWDbWEbXWcmycmBcmZbXWclOclZcmdcmobEjdvYdAacnCcarcnJcnDasMbLMbOnavAavAavAavAavAdvAdvbbgXbgXbgXccbbmcaSkbFPbFQcoqbnIbFSbFTbFUbOzchXcltbHncEebWjbFWbFXbFXbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqaIlcEgaNKaNKaNKaNKaNKaNKbQgaNKaNKaNKaNKaNKaNKaNZaIlaFLaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaacnwcixbzacoBcnwbrTdvaagvdAcaKBcolbYwcnXcnAcnscnrcngbYwbrTbHMaQWbHMbqabqabqabqabqabqabqabqabqabQSbHMaKBcijbqgbOUbOVaWKaWKaWKaWKaWKaWKaWVaWKbPjbOXaWXaWWaWKaWKbOYbOZcojbPbbPcbPdbPebPfaWKaWKcaXbPhaWKaWKaWVaWKaWKaWKaWKbSRaWKbPjcnYcfzcfycawbUmcdkbUmbFFbFFduKduIclibFFcdkduJbEjbEjbEjbEjatJbasaUobWIbQMbOoaUobOocasbZiavAbvSavAbgXcmLcaxcaKcaMcaUchfchfchfaVzblXblXblXbbmcgTbMhbUiaaebNCbHsbHtbHubgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaGqdvMbBHbBHbBHbBHbBHbBHbBHcmAbBHbBHbBHbBHbBHbBHbBHdvJaGpaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaacnwclJbyZcifcnwbrTdJyaqhaKBaKBdACbYwcjBclDctGclUdKGbYwavabrTbZAbKtcdSbKtbKtbKtbZDbZEbZEbZEbZEbOMbOSdokcQabTPclHbQdbQcbQebZXbQdbQdbQdchGbQdbTUaVCbUgbQiaVCaVCbRqbQkbRQcxPbQnbQobQpbQqaVCbZnchccgZcgZchacdUchachachachiclAbRXckbchhbSaceVceUdtDdurdiddkCdtobSZbTaddvcgNbSZdcBbMNchJchPbMNatJbasaUoaUoaUoaUoaUobZeasMasMckPcqWbYxbZdbYybYpbYubYkbYmblXblXblXblXblXbnTblXbbmccjccCcksczpbRbbIPbFXbUSbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaabFgbFgbFgbFgbFgbFgbFgbFgcEfbFgbFgbFgbFgbFgbFgbFgbFgaaaaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaeaacaFvaaecnwcqedzMbyYcnwbVBbrTcVRaKBcjKcvobYwcjwcpqcjucjncuSbYwbYwbYwbYwbYwbYwdJpbYwbYwcjIbYcbYdbHMbMebrTbMbaKBaKBaZLaZLaZLaZLaZLaZLaZLaZLaZLaZLctQbRwbRwcezceDbRwcNWbRwcjmcbDbqFcbBcbCbRDcTgbRDbXDcexbRDbRDdNdaZLbSXbNpbNpciTaZLcaeaZLcPGcUvcPGbMNcAkcENbTacylcxybSZbTacwnctscvUcrZbMNcfZcgtbMNdHLbXlcfTasMasMasMasMbXfbWTbMicjjbMibMibiNbRhbWLbWMblXbWHbevbevbevbevbevbWGblXbbmcbGcjibgXaaebgXbgXbgXbgXbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLKaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaeaacaFvaaecnwcqedzMbyYcnwbVBbrTcVRaKBcjKcvobYwcjwcpqcjucjncuSbYwbYwbYwbYwbYwbYwdJpbYwbYwcjIbYcbYdbHMbMebrTbMbaKBaKBaZLaZLaZLaZLaZLaZLaZLaZLaZLaZLctQbRwbRwcezceDbRwcNWbRwcjmcbDbqFcbBcbCbRDcTgbRDbXDcexbRDbRDdNdaZLbSXbNpbNpbGWaZLcaeaZLcPGcUvcPGbMNcAkcENbTacylcxybSZbTacwnctscvUcrZbMNcfZcgtbMNdHLbXlcfTasMasMasMasMbXfbWTbMicjjbMibMibiNbRhbWLbWMblXbWHbevbevbevbevbevbWGblXbbmcbGcjibgXaaebgXbgXbgXbgXbgXaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLKaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaacnwbLKcracrbcnwaKBaKBaKBaKBbYwcvobYwbSnbSobSpbSqccobYwbSlbSmbRKbYwbRRbSjbREbYwczGbYwbYwbYwbYwbYwbYwbYwbRzbRpbRxbRlbRnbRmcxLbQZbRkbYtcxLbUIbXObUIbXRbXQbUIbXObUIbYIbMzbSKbMSbRLcwbbSNcwbbLObYKcwbbSNcwbbRLbPObPObPObPObPOcpcaZLcclcboccBcevceicdkbTacgNcgNbSZbTJcgNcgNbSZchdbMNbUnbUlbMNatJbSSbSVbMibMibMibMibMibMjavAbSBbSCbSCbgXbXNbLVbLTbLRbLQbnTblXblXbWHbevbLXchHbbmbMgbMhbgXaaeaaeaaeaaeaaeaaeaaeaaebYOaaebVMaaebSwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaabMqbMrbMrbUpbMsbMBbMAaaaaaeaaaaaaaaabYwcvobYwbYwbYwbYwbTwbYwbYwbTtbTubTtbYwbYwbYwbYwbYwbTicjvbYwcdYbxmbUJbxkbUGbUFbUubUEbUubTQbTIbTEbTycwvbTxbSObThbSxbYWbNYbPQbYWbYTbSGbXObTLbTSbTTbSNbPSbTVbTWbTXbZIbTWbTVbTZchpbPObZKbYZchnbPObWwaZLchkchechYchSchqbXZcjgbVlciebXZcjgbVlbVlbXZcjzcjxbVObVybYFbYGbasaUobULbNaavAavAavAavAavAcpebVGcaobgXbVjbMKblXblXbxwbMLbnXbnXbMRbMTbMRbnXbMYbMZbMhbgXbgXbgXaaeaaaaaaaaaaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaabIWaaaaaebWRbKjbKjbKeaaeaaeaaeaaeaaebYwbGbbFZbKYbYwbLabLebZbbYwbLgbLhdJrbKubKzbQLbKHbYwbKIbuXbIHbIhbxjbUkbVcbUMbVubVrbTrbYYbGybGvcxLcxLbHjbGFbLibLybMabWdbEObWibWhbKGbXsbXEbTLbTSbTTbVebVfbVgbVhbKqbWSbVkbVkbFwbFybTkbSgbRJbVxbPObPpaZLbWXbWqbXFcevbZBbXPbXdbXKbXxbXKbXGbXKbZLbXKbRabMNbRPbRCbPwcsVbMjavAavAavAavAbLAbLIbLJbLWcjJbVQbNRbgXbLFbKFbKDbKCbKAbMcbKybKxbKwbMkbKWbKUbKLbKJbMhbWWdOqbWWaaeaaaaaaaaaaaeaaaaXqaaaaaeaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaFvaaeaacaFvaaeaaabIWaaaaaeaaeaaeaaaaaaaaaaaaaaaaaeaaabYwbYwbYwcvobYwbMCbFZbNbbNcbMXbGwbMlbQLbQLbZbbMybYwbMmbMxbYwcuScmzcaWdEcbYwbMHbNmbNjbNibNgbNfbNlbYIbYIbAUbYIbNDbDmbXobXobXqbXsbXrbXsbXEbTLbWrbHpbVebVfbVfbVfbWtbUfbTYbWvbBCbXJbXIbWlbVibWAbPObWwaZLaZLaZLaZLbMNbMNcaYbMNbMNbMNbMNbMNbMNbMNbMNbMNbMNbMNbMNbMNatJbNKavAcfRchjavAbNJbOqbOBbObcjJbTvbNnbgXbNNbNNbOCbNNbXLbNNbOCbONbXLbXLbMhbNNbQNbPibXMbgXbgXbgXaaeaaaaaaaaaaaeaaaaXqaaaaaeaaeaaeaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacvAaaaaaaaaaaaeaaaaaaaaactSaaaaaaaaeaaaaaaaaaaaaaaaaakaaeaaabYLbYEbYwbYfbYnbYobYwbYwbYwbXYbYabYqbYrbYsbYwbYwbYwcbjbZhbYwaKBbxzbxzbxzbxzbxzbxzbXCbNibXVbXTbXcbYIcpNbYQbZcccwccvbSEczybSEcctcctdJAbUIbTLbTSbTTcwbcpvcpGcomclLcbcccHcnPbXHccIbPOccyccqcbAbPObOAbXXbXXbXXbXXbXXbPgctubXXbXXbXXcbWbXXbXXbXXbXXbXXbZQbOWbZWasMckvbZCbNrbZJdJCavAbZObYXbZjbZkbZrbZybZzbgXbgXbgXbYSbOEbOFbOEbOIbOEbOFbOFbODbOEbYRbgXbgXbgXaaeaaeaaeaaeaaaaaaaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaabwYbwYbwYbwYbwYaaecuLaaebwYbwYbwYbwYbwYaaaaFvaaaaaeaaebYwcaTbPlcaCbYwbYwbYwbxNbYwbYwbYwbYwbYwbYwbYwcaGclwbMmcaDdEebYwcazcaBcafcagcbmbxzcaQcaPcaJcaIcaHbYIcaFcaEcaLbStcambZNbZNchVbGicbqbGicdHcbvbTSbYNcvBcmkciNciNbYPbCncdCbYPbYUbYVbPOccAcczcnfbPObGTcizbWBbWBbWBbWBbPFbWBbEbbEbbEbbEbbEbbEbbEbbEbbEbbZgbYwbQLaQsaQsaQsavAaQsaQsavAcbwcbfcbgcaZcbacbncbucbkcyWaaecxsaaecxFaaecxsaaecyHcwTcwEaaecwEcxdaaeaaeaaeaaaaaaaaeaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaecuHcuIcuIcuIcuIcuKcuLbMWbMMbMMbMMbMMbMVajGajGaaaaaeaaabYwbVYbYwbGbbFZbFZcatbFZbFZbVRbZxbZxbZxcbebZxbZxbZxbVSclpcslbVJbUObUUbVUbVVbNkbxzbWfbCTbBZbVPbWfbYIbXebXabYIbXzbXgbZNbXAbZPbCvbZRbYjbZNbYMcblcdBclyckhckncjDcavbZZbZTbYPbQrbGJcadcaNcadbPObPOczlbYwbWBbJfbDNcgobNzbFdbEbbFIbFIbFIcaSbNsbNxbFIbEbbZgbYwbWNaUobWFbWJavAciVcjQavAbVdbWsbTsbBWbWybCybTsbTscfIbgXbNFbNCbNFbgXbNFbNCbNFbgXbNEbNCbNBbgXaaeaaaaaaaaaaaaaaaaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaFvaaebwWbwWbwWbwWbwWaaacuLaaabwWbwWbwWbwWbwWaaaaFvaaaaaeaaabYwbYwbYwbYwbYwbYwbYwbYwbYwbQKbYwbYwbXhbXjbXjbXjbXjbJdbXjbXjbXjbXpbXtbXubXvbJgbXBbNObJlbJnbNQbOsczubJobXSbNUbJzbKrbNVbPybPxbYDbYCcapbZNbYMbTScdwciNciNciNciNckTcmMcmFbYPbYJbOJbOtcsdbWBcuScmzcnxcjvbWBbWVccEbunbOfbQwbEbbFIbOebNXbNTbNPbNMbNLbEbbZgbYwbYwbYwbYwbYwavAavAavAavAavAavAarNbWZbXbbWYbTscnEcnKbgXbOwbWObOxbgXbOubSdbOvbgXbOibNdbOmbgXaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaeaaaaaeaaeaaeaaacabaaaaaeaaaaaeaaaaaeaaaaFvaaeaaeaaabYwcfdceZcfncfrcfucfxbZsbZudIFbYwbzQbyUcbHcbIbzLcaAbEgcbLcbMbYwcfAbyRbHkbyAbGGbGHbHCbRHbzrbzbbRobRrbRobzbbRobFhbGecbdbJucfvbJqbJkbIEbGibYMbTSbYNbCnbXUbPNbQxbQvbIxbQubIQbyubyvaXDaYHbWBcaqbQFbQfbPTbWBbGuccGbFGbFHbQPbEbbFIbFIbFJbFIbFIbFLbFKbEbbZgbYwceRbBnbYwbBobVHbVIbBKbVKbVTbWearNbBWbCsbCybTsbPEaaebgXbVLbWPbCEbgXbRgbSebCkbgXbOGbNecbTbgXaaeaaeaaeaaeaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaabwYbwYbwYbwYbwYaaecuLaaebwYbwYbwYbwYbwYaaeaFvaaaaaeaaacfGcfOcaicgIcgPcalbZocgybYwbQKbYwccTccUccVbzXccXbRObGrbzUbIIbYwbIKbJCbIkbJabImbLBbLwbIcbzEbLxbGpbSEbSEbSEbLtbFzbGjbLvbLocfvbLqbJkcbzbZNciWbTSbRGbYPcahcaabZHbKSbDFbRibYPbzBbZvbWzbVNbWBbdObYvbQYbQGbWBbrWbJVbDVbDTceLbEbbEbbGEbGDbGMbGLbEbbGKbEbbGQcbxcakbCFbYwbCDaQsaQsaQsbQLcpqbQEbYvbCHbCRbGZbDPbPEaaebgXbVLbGkbVLbgXbRgbGsbRgbgXbLYbGtbLYbgXaaeaaaaaaaaaaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaecuHcuIcuIcuIcuIcuKcuLbMWbMMbMMbMMbMMbMVaaeaFvaaaaaeaaacacbZGbZocaicajcalcaubYwbYwbFobYwcdZceacebceccedcaAbyzbQjbyzbYwbxzbExbyBcjlbxzbxzbSucyUbEWcemcembFxbHTbFVcemcemcshbZNcbycfvbEUbUqbZNbZNbDbbTSbKmbYPbJXbKhbLfbKSbBubAqbYPbDGbGJbRLbRLbWBaUJbYvbEGbWBbWBbRLbKKbxobRLbRLbDUbDSbDZbPKbEkbIvbYBbYhbEbbEJbYwbErbEubYwbTFcpqbZbbQLbZlbQLbYwbYvbTsbMpbTsbTsbIwaaebgXbgXbgXbgXbgXbgXbgXbgXbgXbgXbgXbgXbgXaaeaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaebwWbwWbwWbwWbwWaaabUWaaebwWbwWbwWbwWbwWaaaaFvaaaaaeaaacacccFcaicdWceJcalcdJceKdJpbQKbYwcfacfbcfcccYbQDcaAbCBbDnbEPbYwbwPbyqbFlcflbGmbHUbPPbNYbSDcemcqLbCKcfqbDjbICcemctGbZNceOcfvbHLbHDbGibIlbykcfBbPqbPubPBbPCbGPbGnbDFbFbbBJbGlbQAbQyaWbaWObVfaVwbFEbOraVrbOpbFibFfbVfbFebDUbEVbEScbSccuccdcbZcbYbEbbZgbYwbYwbVzbYwbVobVvbQLbQLbIXbVCclraaebTscqAbTsbNIbLCaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaabUYaaaaaeaaaaaeaaaaaeaaabIWaaaaaeaaaaaeaaeaaeaaebUYaaaaaeaaacuwcurcaicalcalcaicaictgdJpbQKbYwcgdcgecgfcggcghcaAcjEcgjcgkbRTcgmbLnbLmcgpcgqcgrbUVbNYbPQbOkcgucgvcgwbLpctecembQLbZNbMJcgAbRWbRVbRtbRsbRubTSbRFbRvbRNbTpbUDbQbbQzbTGbQObQCbRdbAxbBxbJsbURbBCbIRbUTbZabUTbIybIpbIDbJybwUbIFcrtcqSckQcjXcmrclQcqicmubYwbIMcsYceScfkbZlbQLbQLcotbHfbYwaaebTsbBmbTsbSPbTbaaaaaaaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaabwYbwYbwYbwYbwYaaebJUaaebwYbwYbwYbwYbwYaaeaFvaaaaaeaaacaccvqcaicvjcaicaicaubYwbYwbxZbLSchscgechtcggchuchvchwbDuchychzbDwbLPchCchDchEchFbVAbLNbDmbPmchKbDgchMbLschMchObTBbZNbOPbOKbTAbOObGibRsbRubTSbRFdJWbCnbSWbWbbSvchZbQBbBJbSyclkbzybLrbBVciicikbVnbVkbVkbVkbJBbVbbBGbJTbJNbJLbJKbPabJxbJwbJvbJtbEbbZgbYwbJebJbcfDcakdJxbIXcuJbQLcfCclraaebFRbFYbFRbVZaaeaaeaacaXyaXyaXyaXyaXyaXyaacaXyaXqaXybVMaaeaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaecuHcuIcuIcuIcuIcuKcuLbMWbMMbMMbMMbMMbMVaaeaFvaaeaaeaaacacbNAcalcgIcalchrbZbchxbYwbQKbYwciBciCciDciEciFcaAciGcfgciHbYwbJMchUbKiciLbTgbHUbSHbNYbKTcemciOciPbHAciRcilcembMubZNbZNbZNbMObZNbZNbZNbMfciXbMdbYPbYPbYPbYPbYPciZbLUbYPbWBbWBbSQbSTbSUbLbbJZbMtbLkbLkbLkbLkcjkcjkbIBcjkbEbbEbbEbbHcbGXbHedJubEbbZgbYwbIMbElbYwcbEcbKbQLbQLbQLbHhbYwaaeaaeaaeaaeaaeaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaebwWbwWbwWbwWbwWaaabUWaaabwWbwWbwWbwWbwWaaaaFvaaaaaeaaecaccalchrcalbNZbZlcjBcjTbYwbQKbYwbSkcjAcjVcjCbSLcaAbKXcjFbShbYwbPYcehcehcehcehcehcjabAtbTMbNHbKVcjMbHFcjOcsCcembwQbPzbPzbOjbxYbxWbuXbokbHVbHXbHYbHZbIabSMbHIbHGbHKbHJbHNbOabHQbHOckfckgbOgckibtGckkcklckmbSbcjkdJvbJcbOQbEvbEtbEbbEbbEbbEbbEbbEbbZgbYwbYwbYwbYwbYwbYwbYwclrbYwbYwbYwaaaaaeaaaaaaaaaaaeaaeaaeaacaXqaXqaXqaacaXqaXqaXqaacaXqbSwaXqaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaabMqbMrbMrbUpbMsbMBbMAaaaaaeaaaaaaaaabYwcvobYwbYwbYwbYwbTwbYwbYwbTtbTubTtbYwbYwbYwbYwbYwbTicjvbYwcdYbxmbAPbxkbUGbUFbUubUEbUubTQbTIbTEbTycwvbTxbSObThbAcbYTbNYbPQbYTbuSbtobXObTLbTSbTTbSNbtibtmbTVbTXbZIbTVbAObAfchpbPObZKbYZchnbPObWwaZLchkchechYchSchqbXZcjgbVlciebXZcjgbVlbVlbXZcjzcjxbVObVybYFbYGbasaUobULbNaavAavAavAavAavAcpebVGcaobgXbVjbMKblXblXbxwbMLbnXbnXbMRbMTbMRbnXbMYbMZbMhbgXbgXbgXaaeaaaaaaaaaaaeaaaaXqaaaaXyaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaabIWaaaaaebWRbKjbKjbKeaaeaaeaaeaaeaaebYwbGbbFZbKYbYwbLabLebZbbYwbLgbLhdJrbKubKzbQLbKHbYwbKIbuXbIHbIhbxjbUkbVcbUMbVubVrbTrbYYbGybrxcxLcxLbHjbGFbLibLybMabWdbEObWibWhbKGbXsbXEbTLbTSbTTbVebVfbVgbVhbKqbWSbVkbVkbFwbFybTkbSgbRJbVxbPObPpaZLbWXbWqbXFcevbZBbXPbXdbXKbXxbXKbXGbXKbZLbXKbrAbMNbRPbRCbPwcsVbMjavAavAavAavAbLAbLIbLJbLWcjJbVQbNRbgXbLFbKFbKDbKCbKAbMcbKybKxbKwbMkbKWbKUbKLbKJbMhbWWdOqbWWaaeaaaaaaaaaaaeaaaaXqaaaaaeaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaFvaaeaacaFvaaeaaabIWaaaaaeaaeaaeaaaaaaaaaaaaaaaaaeaaabYwbYwbYwcvobYwbMCbFZbNbbNcbMXbGwbMlbQLbQLbZbbMybYwbMmbMxbYwcuScmzcaWdEcbYwbMHbNmbNjbNibNgbNfbNlbYIbYIbAUbYIbNDbDmbXobXobXqbrMbsebrCbrDbrHbrIbHpbVebVfbVfbVfbWtbUfbTYbWvbBCbXJbXIbWlbVibWAbPObWwaZLaZLaZLaZLbMNbMNcaYbMNbMNbMNbMNbMNbMNbMNbMNbMNbMNbMNbMNbMNatJbNKavAcfRchjavAbNJbOqbOBbObcjJbTvbNnbgXbNNbNNbOCbNNbXLbNNbOCbONbXLbXLbMhbNNbQNbPibXMbgXbgXbgXaaeaaaaaaaaaaaeaaaaXqaaaaaeaaeaaeaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacvAaaaaaaaaaaaeaaaaaaaaactSaaaaaaaaeaaaaaaaaaaaaaaaaakaaeaaabYLbYEbYwbYfbYnbYobYwbYwbYwbXYbYabYqbYrbYsbYwbYwbYwcbjbZhbYwaKBbxzbxzbxzbxzbxzbxzbXCbNibXVbXTbGcbYIbGgbYQbZcccwccvbSEczybSEbFjcctdJAbUIbTLbmybTTcwbcpvbFMcomclLcbcccHbDpbXHccIbPOccyccqcbAbPObOAbXXbXXbXXbXXbXXbPgctubXXbXXbXXcbWbXXbXXbXXbXXbXXbZQbOWbZWasMckvbZCbNrbZJdJCavAbZObYXbZjbZkbZrbZybZzbgXbgXbgXbYSbOEbOFbOEbOIbOEbOFbOFbODbOEbYRbgXbgXbgXaaeaaeaaeaaeaaaaaaaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaabwYbwYbwYbwYbwYaaecuLaaebwYbwYbwYbwYbwYaaaaFvaaaaaeaaebYwcaTbPlcaCbYwbYwbYwbxNbYwbYwbYwbYwbYwbYwbYwcaGclwbMmcaDdEebYwcazcaBbGvcagcbmbxzcaQcaPcaJcaIcaHbYIcaFcaEcaLbStcambZNbZNchVbGicbqbGicdHcbvbmybYNcvBcmkciNciNbYPbCncdCbYPbYUbYVbPOccAcczcnfbPObGTcizbWBbWBbWBbWBbPFbWBbEbbEbbEbbEbbEbbEbbEbbEbbEbbZgbYwbQLaQsaQsaQsavAaQsaQsavAcbwcbfcbgcaZcbacbncbucbkcyWaaecxsaaecxFaaecxsaaecyHcwTcwEaaecwEcxdaaeaaeaaeaaaaaaaaeaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaecuHcuIcuIcuIcuIcuKcuLbMWbMMbMMbMMbMMbMVajGajGaaaaaeaaabYwbVYbYwbGbbFZbFZcatbFZbFZbVRbZxbZxbZxcbebZxbZxbZxbVSclpcslbVJbUObUUbVUbVVbNkbxzbWfbCTbBZbVPbWfbYIbXebXabYIbXzbXgbZNbDebZPbCvbZRbYjbZNbYMbDocdBclyckhckncjDcavbZZbZTbYPbQrbGJcadcaNcadbPObPOczlbYwbWBbBnbDNcgobNzbFdbEbbFIbFIbFIcaSbNsbNxbFIbEbbZgbYwbWNaUobWFbWJavAciVcjQavAbVdbWsbTsbBWbWybCybTsbTscfIbgXbNFbNCbNFbgXbNFbNCbNFbgXbNEbNCbNBbgXaaeaaaaaaaaaaaaaaaaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaaaaFvaaebwWbwWbwWbwWbwWaaacuLaaabwWbwWbwWbwWbwWaaaaFvaaaaaeaaabYwbYwbYwbYwbYwbYwbYwbYwbYwbQKbYwbYwbXhbXjbXjbXjbXjbJdbXjbXjbXjbXpbXtbXubXvbJgbXBbNObJlbJnbNQbOsczubJobXSbNUbJzbKrbNVbPybPxbYDbYCcapbZNbYMbmycdwciNciNciNciNckTcmMcmFbYPbYJbOJbOtcsdbWBcuScmzcnxcjvbWBbWVccEbunbOfbQwbEbbFIbOebNXbNTbNPbNMbNLbEbbZgbYwbYwbYwbYwbYwavAavAavAavAavAavAarNbWZbXbbWYbTscnEcnKbgXbOwbWObOxbgXbOubSdbOvbgXbOibNdbOmbgXaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaeaaaaaeaaeaaeaaacabaaaaaeaaaaaeaaaaaeaaaaFvaaeaaeaaabYwcfdceZcfnbnGcfucfxbZsbZudIFbYwbzQbyUcbHcbIbzLcaAbEgcbLcbMbYwcfAbyRbHkbyAbGGbGHbHCbRHbzrbzbbRobRrbRobzbbRobFhbGecbdbJucfvbJqbJkbIEbGibYMbmybYNbCnbXUbPNbQxbQvbIxbQubIQbyubyvaXDaYHbWBcaqbQFbQfbPTbWBbGuccGbFGbFHbQPbEbbFIbFIbFJbFIbFIbFLbFKbEbbZgbYwceRbnEbYwbBobVHbVIbBKbVKbVTbWearNbBWbCsbCybTsbPEaaebgXbVLbWPbCEbgXbRgbSebCkbgXbOGbNecbTbgXaaeaaeaaeaaeaaeaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaabwYbwYbwYbwYbwYaaecuLaaebwYbwYbwYbwYbwYaaeaFvaaaaaeaaacfGcfOcaicgIcgPcalbZocgybYwbQKbYwccTccUccVbzXccXbRObGrbzUbIIbYwbIKbJCbIkbJabImbLBbLwbIcbzEbLxbGpbSEbSEbSEbLtbFzbGjbLvbLocfvbnNbJkcbzbZNciWbmybRGbYPcahcaabZHbKSbDFbRibYPbzBbZvbWzbVNbWBbdObYvbQYbQGbWBbrWbJVbDVbDTceLbEbbEbbGEbGDbGMbGLbEbbGKbEbbGQcbxcakbCFbYwbCDaQsaQsaQsbQLcpqbQEbYvbCHbCRbGZbDPbPEaaebgXbVLbGkbVLbgXbRgbGsbRgbgXbLYbGtbLYbgXaaeaaaaaaaaaaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaecuHcuIcuIcuIcuIcuKcuLbMWbMMbMMbMMbMMbMVaaeaFvaaaaaeaaacacbZGbZocaicajcalbmwbYwbYwbFobYwcdZceacebceccedcaAbyzbQjbyzbYwbxzbExbyBcjlbxzbxzbSucyUbEWcemcembFxbHTbFVcemcemcshbZNcbycfvbEUbUqbZNbZNbDbbmybKmbYPbJXbKhbLfbKSbBubAqbYPbDGbGJbRLbRLbWBaUJbYvbEGbWBbWBbRLbKKbxobRLbRLbDUbDSbDZbPKbEkbIvbYBbYhbEbbEJbYwbErbEubYwbTFcpqbZbbQLbZlbQLbYwbYvbTsbMpbTsbTsbIwaaebgXbgXbgXbgXbgXbgXbgXbgXbgXbgXbgXbgXbgXaaeaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaebwWbwWbwWbwWbwWaaabUWaaebwWbwWbwWbwWbwWaaaaFvaaaaaeaaacacccFcaicdWceJcalcdJceKdJpbQKbYwcfacfbcfcccYbQDcaAbCBbDnbEPbYwbwPbyqbFlcflbGmbHUbPPbNYbSDcemcqLbCKcfqbDjbnzcemctGbZNceOcfvbHLbHDbGibIlbykbnsbPqbPubPBbPCbGPbGnbDFbFbbBJbGlbQAbQyaWbaWObVfaVwbFEbOraVrbOpbFibFfbVfbFebDUbEVbEScbSccuccdcbZcbYbEbbZgbYwbYwbVzbYwbVobVvbQLbQLbIXbVCclraaebTscqAbTsbNIbLCaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaabUYaaaaaeaaaaaeaaaaaeaaabIWaaaaaeaaaaaeaaeaaeaaebUYaaaaaeaaacuwcurcaicalcalcaicaictgdJpbQKbYwcgdcgecgfcggcghcaAcjEcgjcgkbRTcgmbLnbLmcgpcgqcgrbUVbNYbPQbOkcgucgvcgwbLpctecembQLbZNbMJbqVbpkbRVbRtbRsbRubmybRFbRvbRNbTpbUDbQbbQzbTGbQObQCbRdbAxbBxbJsbURbBCbIRbUTbZabUTbIybIpbIDbJybwUbIFcrtcqSckQcjXcmrclQcqicmubYwbIMcsYceScfkbZlbQLbQLcotbHfbYwaaebTsbBmbTsbSPbTbaaaaaaaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaabwYbwYbwYbwYbwYaaebJUaaebwYbwYbwYbwYbwYaaeaFvaaaaaeaaacaccvqcaicvjcaicaibmwbYwbYwbxZbLSchscgechtcggchuchvchwbDuchychzbDwbLPchCchDchEchFbVAbLNbDmbPmchKbDgchMbLschMchObTBbZNbOPbOKbTAbOObGibRsbRubmybRFdJWbCnbSWbWbbSvchZbQBbBJbSyclkbzybLrbBVciicikbVnbVkbVkbVkbJBbVbbBGbJTbJNbJLbJKbPabJxbJwbJvbJtbEbbZgbYwbJebJbcfDcakdJxbIXcuJbQLcfCclraaebFRbFYbFRbVZaaeaaeaacaXyaXyaXyaXyaXyaXyaacaXyaXqaXybVMaaeaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaecuHcuIcuIcuIcuIcuKcuLbMWbMMbMMbMMbMMbMVaaeaFvaaeaaeaaacacbNAcalcgIcalchrbZbchxbYwbQKbYwciBciCciDciEciFcaAciGcfgciHbYwbJMchUbKiciLbTgbHUbSHbNYbKTcemciOciPbHAciRcilcembMubZNbZNbZNbMObZNbZNbZNbMfboubMdbYPbYPbYPbYPbYPciZbLUbYPbWBbWBbSQbSTbSUbLbbJZbMtbLkbLkbLkbLkcjkcjkbIBcjkbEbbEbbEbbHcbGXbHedJubEbbZgbYwbIMbElbYwcbEcbKbQLbQLbQLbHhbYwaaeaaeaaeaaeaaeaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaebwWbwWbwWbwWbwWaaabUWaaabwWbwWbwWbwWbwWaaaaFvaaaaaeaaecaccalchrcalbNZbZlcjBcjTbYwbQKbYwbSkcjAcjVcjCbSLcaAbKXcjFbShbYwbPYcehcehcehcehcehcjabAtbTMbNHbKVcjMbHFcjOcsCcembwQbPzbPzbOjbxYbxWbuXbokbHVbpibHYbHZbIabSMbHIbHGbHKbHJbHNbOabHQbHOckfckgbOgckibtGckkcklckmbphcjkdJvbJcbOQbEvbEtbEbbEbbEbbEbbEbbEbbZgbYwbYwbYwbYwbYwbYwbYwclrbYwbYwbYwaaaaaeaaaaaaaaaaaeaaeaaeaacaXqaXqaXqaacaXqaXqaXqaacaXqbSwaXqaXqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaaaaaaaeaaeaaeaaaaaacvTaaeaaaaaaaaeaaeaaaaaaaFvaaaaaeaaadMEdMFdMFdMDbYwdMCdMBbYwbYwbQKbYwbYwbYwbYwbYwbYwbYwbYwcshbYwbYwbYAbYwcxZcxYcyfcyebVAcukcuDcemdKQdKRdCGcoCcoCcoCcoCcoCcoCcoCcxJdCLcxJcxJctPcrncrobYwcmzdQwdEcbYwcjccjcdAgcjcckUctYckYckZbOgclaclbclccldcledQxcjkclgdHadHccxzcvEbYvdEedEebYwcpXclpdLcbYwcABcjvbYwaaaaaeaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaeaaaaaeaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabUYaaaaaaaaaaaaaaaaaaaaacvTaaaaaaaaaaaaaaeaaaaaabUYaaaaaeaaaaaaaaaaaaaaebYwbYwbYwbYwcgKbQKbZhcucdCMbQLcEJcuSbZhclwctGbYwbYlbQLbYwcwrcwqcwhcwfcBdcxhcxfcemcemcemcemcoCctbdMAdMzcsZcsLcoCcsxcsEctodKOctqbTSbYNbYwdDWdNjdODbYwctEdBlclXctFckUcAJcmbcmcdKPcmecmfcmgdDXcmidPxcjkdQvcmldGMcwScuobYvbCQbFAdEadEbbZhdLadEadLbcotclraaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaacaFvaFvaFvaaaaaaaaacvTaaaaaaaaaaFvaFvaFvbUYaFvaaeaaeaaeaaeaaeaaeaaeajGbYwdNlbYwbIOdJtbXXbXXbXXbXXbXXbXXbXXbXXbXXcwtbQLczwbYwczYczRcAiczRczEczIcyYctjcQFcxvcxxcoCdMJcwHcwYcxicwGcoCcxjcxocxAcxEctqbTSbYNbYwbYwbYwbYwbYwcxScxUcxIcxKckUbTXcmXcBEdMscnacnbcnccnccndcmicjkdQFcmldHjcnicJRbYvdJwdKHbYwbZgbQLcOzbYwbQLcpZbYwaaaaaeaaaaaaaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaFvaaecBBaaeaFvaaaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaeaaecELcEKbPlckAcxtckAdJrbQLbQLbQLbQLcizdNkdInbQLbQLcpWdKGckXbYwdEjdEkdEldEmdEgdEhdEictjczmczocEMcoCcuFcuGcuBcuEdMIcoCdMHdMGcxJcxJcvGbTScBgcmPdNgdNfcwzdNidNhcwFcvHdQyckUcpJcjeczqbLkdEfcnZdKUdKScocdQEcjkcoecofdHicxXcnibYvbYwbYwbYwbEJbYwdLdbYwbYwbYwbYwaaeaaeaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaacaFvaFvaFvaaaaaaaaacvTaaaaaaaaaaFvaFvaFvbUYaFvaaeaaeaaeaaeaaeaaeaaeajGbYwdNlbYwbIOdJtbXXbXXbXXbXXbXXbXXbXXbXXbXXcwtbQLczwbYwczYczRcAiczRczEczIcyYctjcQFcxvcxxcoCdMJbTZcwYbUJcwGcoCcxjbXccxAcxEctqbTSbYNbYwbYwbYwbYwbYwcxScxUcxIcxKckUbTXcmXcBEdMscnacnbcnccnccndcmicjkdQFcmldHjcnicJRbYvdJwdKHbYwbZgbQLcOzbYwbQLcpZbYwaaaaaeaaaaaaaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaFvaaecBBaaeaFvaaaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaeaaecELcEKbPlckAcxtckAdJrbQLbQLbQLbQLcizdNkdInbQLbQLcpWdKGckXbYwdEjdEkdEldEmdEgdEhdEictjczmczocEMcoCcuFcuGcuBcuEdMIcoCdMHdMGcxJcxJcvGbTScBgcmPdNgdNfcwzdNidNhcwFcvHdQyckUcpJcjeczqbLkdEfcnZdKUdKSbTWdQEcjkcoecofdHicxXcnibYvbYwbYwbYwbEJbYwdLdbYwbYwbYwbYwaaeaaeaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaFvaaaaaeaaaaFvaaaaaaaaeaaeaaeaaeaaaaaaaaaaaeaaeaaaajGajGbYwdBhbYwbQLbZhbQLbQLdNzbYwbYwbYwbYwbYwbZhcpWcuScmzbYwdEzcNScOycOucMIdEocMKcNjcLNcMmcLzcMGdMPcNmcJOcJPcBQctocCMcDYcJQcxJcbvbWrcNBclRdNAcmScmScmSdBtcmTcmTcmTcOAcuRcjecpfbLkbLkbLkbLkbLkbLkbLkcjkcjkcjkdLgcjkcjkbYvcpXclpclpcpYbYwbQLdLecubdKZcubaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaakaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaFvaFvaFvaFvaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaeajGbYwbYwbYwcdYbYwcmzcJZclfbYwdKIdKJdKIbYwcdYcpWbYwbYwbYwdEqdEqdEqdEqdErdEtdEucyscyncyqcxVdDzdMOdMNdMMdMLdMKdDAcyIcyRcAKdDGcDSbTSdBMcjcdNndNmdNmdNmdNhcmTczKczLbIGcBOcKNdJidovdIBdQGcEOdHldHOdJqdDIdKydKCdKDdKMdoBcdYdJobQLbQLbYwbYwdLfbYwbYwbYwbYwaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaaaaFvaFvaFvaFvaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaeajGbYwbYwbYwcdYbYwcmzcJZclfbYwdKIdKJdKIbYwcdYcpWbYwbYwbYwdEqdEqdEqdEqdErdEtdEucyscyncyqcxVdDzdMOdMNbXrdMLdMKdDAcyIcyRcAKdDGcDSbTSdBMcjcdNndNmdNmdNmdNhcmTczKczLbIGcBOcKNdJidovbYWbYgcEOdHlbXAdJqcafdKydKCdKDdKMdoBcdYdJobQLbQLbYwbYwdLfbYwbYwbYwbYwaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaeaaeaaeaaeaaeaaabYwbYwbYwbYwbYwbYwbYwbYwbYwbYwbYwbQLcpWbYwcqucpKcLscLrbWKctvdEOdAPdARctjdNadNbdMZcoCdMXdMWdMWdMWdMYcoCdNcdEKdEMcnRdENcnNcNBcpbdOfcmScmScmSdBtcmTcmTcmTcOAdAdcqGdNodNpdOddOecEPcEQdOmdOndNrbJDdOndNvdNwdoBdovcqQdBwdovdovdNudOjdOhdOidNtaaeaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecYFdpecYFaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaeaaaaaaaaaaaeaaeaaaaaaaaaaaeaaaaaabYwbQLdECcshcLPcJYcpDcpCcpzcpydEEdEFdEGctjcKjdAmcJUcoCdNDdNCdNBdMQdMTcoCdMVcKOcKOcxJdMUbTSbYNcjcdNEdNfdNFdNGdNhdBAcLvcLYckUbTXcrEcrFdNHdNIdNMdLhdNJdNJdMfdMydMRdMSdLpdLRdoBdppdNQdNRdNSdLodNOdNOdNOdNPdOgaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecYQcYFdsCcYFcYQaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaeaaaaaaaaaaaeaaeaaaaaaaaaaaeaaaaaabYwbQLdECcshcLPcJYcpDcpCcpzcpydEEdEFdEGctjcKjdAmcJUcoCcaudNCdNBdMQdMTcoCdMVcKOcKOcxJdMUbTSbYNcjcdNEdNfdNFdNGdNhdBAcLvcLYckUbTXcrEcrFdNHdNIdNMdLhdNJdNJdMfdMydMRdMSdLpdLRdoBdppdNQdNRdNSdLodNOdNOdNOdNPdOgaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecYQcYFdsCcYFcYQaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaeaaaaaaaaaaaaaaeaaaaaaaaaaaeaaaaaabYwbZhdKabYwcuecqqdCIcOccsbcrDdolcrBdMkctjctjcryctjcoCcoCcoCcoCcoCcoCcoCdATcxJcxJcnpcrmcrncnqcjcckUckUckUcOAdBGckUckUckUckUcrpcjecqldrxdssdptdsgdshdspcBCcBFdsedsfcLmcOecKJdsrdtidtkdoPdsEdtJdufdoVdpcduiaaeaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecsGcszcsFcsHcsKcszcsGaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaecwucwucwucyJcwucwucwuaaaaaeaaaaaaaaaaaeaaaaaabYwcizcpWbYwbYgdnEcEFdMicqIctvdmVdnddnDctvdmJcrdcqXckOclIclKclIdMjclIcwBclKcwAckOclPbYMbTSbRFdJWcjSdnJdNXcvbdBEdJUdEddERcvJcqUbSTcqDdovcAecAecBlcAbcAccxlcxBcxNcyycyCczHdoBdpvdpwdpxdovdpydqGdrbdovdrxdovajGaaeaaaaaaaaeaaaaaaaaeaaeaaeaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaecrScrTcrVcrWcrWcrWcstcrScrTaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaecwucwucwucyJcwucwucwuaaaaaeaaaaaaaaaaaeaaaaaabYwcizcpWbYwbSxdnEcEFdMicqIctvdmVdnddnDctvdmJcrdcqXckOclIclKclIdMjclIcwBclKcwAckOclPbYMbTSbRFdJWcjSdnJdNXcvbdBEdJUdEddERcvJcqUbSTcqDdovcAecAecBlcAbcAccxlcxBcxNcyycyCczHdoBdpvdpwdpxdovdpydqGdrbdovdrxdovajGaaeaaaaaaaaeaaaaaaaaeaaeaaeaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaeaaecrScrTcrVcrWcrWcrWcstcrScrTaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaacwudCudCvdCudCrdCucwucwucyJcwucyJcwucwuaaeaaebYwdEecpWbYwbYwbYwbYwbYwbYwbYwdMqduXduRduUduYcAactfckOcDPdBIclIclKclIduAduNcDRckOdBFbYMbTSbRFbRvcsfcsicrzcrzdAycrxdAzdKgcvJbTXcjeckZdrYdoBdoBdoBdoBdoBdowdoBduzdvIcEHdujdoBdovcqQdBwdovdBpdBjdBkdBgcEIajGajGaaeaaeaaeaaeaaeaaeaaeaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeczXcBoczXcrWcMocrWcCKcGdcYFaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaFvaaecwudzYdzXdAhdzZdzYdAidAAcEGdzSdzRdzUcwuaaaaaabYwbYwdrHdtrdtrdtrdtrdtsdttbPYdpjdpqdpudpzdpIdqAcsndBecoScyEcoScoScyOcyTdoCdMndoAcsBcnMcnNcyrcsecsecoocuicuidAwcwOcqEbBRcvJcpJcjebBbdoBdvPdzPdCpdCqdBddBadBddAEdAKdstdoBbYvcvpdACcjvdovdovdovdovdovcEuaBVajGaaeaaaaaaaaaaaaaaaaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaeaaecrScrTcyVcrWcrWcrWczrcrScrTaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaacwuczcdJLdJIdJBczcczcdJzdJsczgdJZdJScwuaaaaaaaaacwucwucwucwucwuctvdKBctvctvdADdAFdKbctvdAvdAxcujckOcnGclKclIclKclIcsjcskcLocrGcLCdAGcfBdKtcsecrYcpAcLQcLQdAwcqTcqEcrvcvJcAJcuabCgdrxdvPdzPdwfdwfdwsdvBdvEdvHdvIdJMdoBcuScdXcvobQLdAIbYwaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecsGcYQcYTcYMcYNcYLcsGaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaacwuczcdJLdJIdJBczcczcdJzdJsczgdJZbSGcwuaaaaaaaaacwucwucwucwucwuctvdKBctvctvdADdAFdKbctvdAvdAxcujckOcnGclKclIclKclIcsjcskcLocrGcLCdAGcfBdKtcsecrYcpAcLQcLQdAwcqTcqEcrvcvJcAJcuabCgdrxdvPdzPdwfdwfdwsdvBdvEdvHdvIdJMdoBcuScdXcvobQLdAIbYwaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecsGcYQcYTcYMcYNcYLcsGaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaecwudEUdDSdEAdEydDFdDBdDQdDMdEIcBebBSdAfdAedzVcAhdAfdwbdwFdxxcwudCJdCNctvdvVcrXdzOdDybYwbYwbYwbYwckOclIclKclIcKnclIctDctAcKkckOcJVdAnbTSbYNcsedOpcpAcsucsvctycqzctRcupdwtbBTdCobBUdoBdvPdzPdwfdKfdBddIIdBddAjdIHdAkdoBcvmbQLcvobQLdvubYwaaeaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecszcYFcYGcYFcYJaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaacyJdMddMcdDHdMadMmdMldMhdMedCFdMrdMpdModDCdMudKWdMtdKXdDHdDDdMvdDKdDLdMwdDJdDOdMxcrXbYwdGIbIXdGFbYwbYwbYwbYwbYwbYwbYwcvWbYwbYwcnpdDrbTSbYNcsecsscpAcuicuicLQcxrcGhcLObCMbCPdGDcAxdExdExdExdExdExdExdBUdExdCzdAMdCCdoBbQLbQLcvobQLbYwbYwbYwaaeaaeaaaaaaaaeaaaaaaaakaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecYFdpecYFaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjaaacDjcDjcDjcDjcDjaaacDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaacwudKFdKEdKYdKVbCCdLidLldLkdLrdLnbCIcwudDpdDodDqcwudKqdIRcyMcwudBqdIZctvdCsdCxdCydKwbYwdFSdFTdFVbYwdAWbZxbZxcbebZxdKlcARclpcsldKpdKncwecLkcsedKNcrhcsycsycsycxmcvLcwRdwybCldDxcASdJhdBxdKsdLsdLJdLOdJbcBPbYidAUclpdILclpclpbCidLjbCjcwpbYwbYwbYwajGaaaaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjaaacDjcDjcDjcDjcDjaaacDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecwucACcAGczccAFcACcADcAycAzcAlcAwcAfcwucExaaaaaacwucwucwucwucwuctvcwCctvctvctvctvctvbYwcmmcwNclhbYwcwocuxcuxcuxcuxcuxcuxcuxcuxcnpczJczZczDczFdMbdBccsJcplcuicxucmHcnLcvJbVfdAVdKicAIdIxdIPdIQdIMdIOdGmcBPclwcxCbYwbYwbYwbYwbYwcwNbAoclTbPlcmnbPlcEyaaeaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaacwucBmcBnczccBncBhcBiczcczccBcczcczccwuaaeaaeaaebYwcmzcdYdIncxgcBJcBIclpcBLcBHcEzdKubYwcogbJbbGwcBDcwMcuxcAZcBbcBacuxcAXcAYcANcuxcALcAMcAHczFcokcvcdBucsAcuicmQcsedAYcsebWacvVclqcAIcAtdNVcmxcAgczkcDgcBPbQLcxCbYwcmIcmwcpkbYwdDZbApdCDbYwbYwbYwajGaaaaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaacwucCacCbczccBRcCecBicCccCdcBNcJTcBMcwuaaaaaeaaabYwcxRcxQcxQcybcxWbNGbNGbNGbNGcxOcxCbYwbYwbYwbYwbYwcwocuxcCjcClcCycCzcCAcCBcwDcCfcCgcChcCicsecsecsecsecsecyxcsecsectGcsecvKcwPbWBcBPcBPcBPcBPcBPcBPcBPcBPbQLcrQdJncAjcAdcqHcygcygbAscyicygaaaaaaaaaaaaaaeaaeaaaaaaaaeaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjaaacDjcDjcDjcDjcDjaaacDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecwucACcAGczccAFcACcADcAycAzcAlcAwbLqcwucExaaaaaacwucwucwucwucwuctvcwCctvctvctvctvctvbYwcmmcwNclhbYwcwocuxcuxcuxcuxcuxcuxcuxcuxcnpczJczZczDczFdMbbJWcsJcplcuicxucmHcnLcvJbVfdAVdKicAIdIxdIPdIQdIMdIOdGmcBPclwcxCbYwbYwbYwbYwbYwcwNbAoclTbPlcmnbPlcEyaaeaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaacDjcDjcDjcDjcDjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaacwucBmcBnczccBncBhcBiczcczccBcczcczccwuaaeaaeaaebYwcmzcdYdIncxgcBJcBIclpcBLcBHcEzdKubYwcogbJbbGwcBDcwMcuxcAZcBbcBacuxcAXcAYcANcuxcALcAMcAHczFbPScvcdBucsAcuicmQcsedAYcsebWacvVclqcAIcAtdNVcmxcAgczkcDgcBPbQLcxCbYwcmIcmwcpkbYwdDZbApdCDbYwbYwbYwajGaaaaaeaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaacwucCacCbczccBRcCecBibRabRWcBNcJTcBMcwuaaaaaeaaabYwcxRcxQcxQcybcxWbNGbNGbNGbNGcxOcxCbYwbYwbYwbYwbYwcwocuxcCjcClcCycCzcCAcCBcwDcCfcCgcChcCicsecsecsecsecsecyxcsecsectGcsecvKcwPbWBcBPcBPcBPcBPcBPcBPcBPcBPbQLcrQdJncAjcAdcqHcygcygbAscyicygaaaaaaaaaaaaaaeaaeaaaaaaaaeaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaacwucCWcCXczccCXcCWcCYcCZcDacCCcCJbAycyJaaaaaaaBVbYwcAAbYwbYwbYwcAEbYwbYwbYwbYwcwmcAncAmcDbdIKcAmcAmcBfcDMcDLcvhcJScKdcGccGlcDwcDwcDkcDlcDIcAQcDGclpclpclpcBkcBjclpcslcytcyzcymcykcytcyoclpclpclpdILclpclpclpcudbYwbWNctVcswcygcyubAzcywcygaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaecwucwucyJcwucyJcwucNfcMXcNbcNCcNDcNhcwuaaeaaeaBVcGkcGjbGhcrfcGbcGacDTcMccEAbYwbYwbYwbYwcMpbYwbYwbYwbYwcuxcKUcvhcKqcvhcKvcKTcLwcvhcLxcLAcLtcuxbYwbYwbYwcdYcOzbWucxqbQLcBScoVcoWcKfcBScmzcdYcxqbYwbYwbYwbYwbYwbYwbYwbYwbYwbVzcygcLubAHcoYcygaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaeaaeaaebSPcECcEBcNKcOtcOGcPtcPFcPRcwuaaaaaaaBVdKvcMQbGhcMYcMDcMhcMLbGhbGhbpYcRucPrdJJcQLdJacRkcQXdKocvfcvgcvhcKqcvhcuvcvtcvgcvhcLxcLAcuvcvlaaaaaebYwbYwcNnbYwclrbYwcBScBTcoUcBScBSbYwbYwclrbYwcBGcKycKlbYwcKccKScKMbYwbEucygcrgdAscqFcygaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaeaaeaaebSPcECcEBcNKcOtcOGcPtcPFcPRcwuaaaaaaaBVdKvcMQbGhcMYcMDcMhbSbbGhbGhbpYcRucPrdJJcQLdJacRkcQXdKocvfcvgcvhcKqcvhcuvcvtcvgcvhcLxcLAcuvcvlaaaaaebYwbYwcNnbYwclrbYwcBScBTcoUcBScBSbYwbYwclrbYwcBGcKycKlbYwcKccKScKMbYwbEucygcrgdAscqFcygaaaaaeaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFvaaaaaeaaaaaacEEaaeaaecwucwucwucwucwucwucwuaaaaaaaBVcoKcRMbGhcOMcOZcEDcribGhcRTcPScSjdlGcRUdlydltcSScSSdlZdmbdmjdmvdmHcvhcuvdmIcvgcvhcLxcLAdnccuxaaaaaeaaabYwdKxbYwaaaaaeaaacxpcwicxpaaaaaaaaeaaabYwcuJbQLbQLdMgbGwcNRbGwcxkcwIcygcqfczscqgcygaaaaaeaaaaaeaaeaaaaaaaaebUYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaeaaeaaeaaaaaaaaaaaeaaeaaeaaaaaaaaaaaeaaaaaaaaaaBVcTMdKAdiLdcndkOdkGdkRbGhdlobGhdlxdlvdlCdnfdnedlGdlGdnudnvdnncuzdoadoscuvdnwcvgcvhcLxcLAcuvcvlaaaaaeaaebYwcNnbYwaaeaaeaaecxMclvcxMaaeaaeaaeaaabYwcpIbQLbQLdKzcpFcjBcpwbYwclrcygczWdAtczWaaeaaaaaeaaaaaaaaeaaeaaeaaeaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaeaaaaaaaaaaaeaaaaaaaaaaBVcoKcoJbGhcqKcoHcoFcoDcoAcozbGhbKEbwzcvkbxTcvibwAduMdKocvfcvgcvhcuVcuWcuXcuZcuycuzcuCcuTcuvcuxaaaaaeaaaaaaaaeaaaaaeaaaaaacyccydcycaaaaaaaaeaaebYwcqCcqwcqvbYwcqycqtcqvbYwaaaaaecAvczscAvaaeaaaaaeaaaaaaaaeaaeaaaaaaaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10542,7 +10510,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakaaaaaaaaaaahaaaaaacErcqYbKBcqrcqscqscqscqxcqPcqBcqbcqhcwJcqhcpUcqscwKcpUcwLciIdKocxecwWcwVcwWcwWcwWcwWcwWcwVcwWcxbcvlaaaaaeaaaaaaaaeaaaaaaaaacwZcyPcodcwacyScEsaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaacBXcBYcBYcBYcBZaaaaaaaaaaaaaaaaaaaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaaaaacErcqYcrRcpgccscyDccscrPbDtcrOcsDcspcyNduHduHcyLduHduHcyKcwcbpYcyacxGcxDcxGcxGcxHcxGcxGcyAcyBcypcuxaaeaaeaaacwZcwZcwZcwZcwZcwZcznclzcwUcwZcwZcwZcwZcwZcwZaaeaaaaaaaaaaaaaaeaaaaaaaaeaaaaaaaaaaaaaaacAWaaaaaaaaeaaaaaaaaabUYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaeaaacEtctxbKBcpgccsccsccscwgbpYbpYbpYbpYcwsczjbxTczhbxTczjczibpYbpYczbczacyZczacyQcyXczfczaczaczeczdcuxaaaaaeaaecwZczMczNczOczPcwZczQckHcwZcwZczSczTczUczVcwZaaeaaeaaeaaaaaaaaeaaebUYaFvbUYaaeaaeaaeaaecAWaaeaaeaaeaaeaaeaacaFvaFvaaaaaaaakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaBVbpYbpYctzbxTbxTdNLbxTctTdJmbpYczxczvcztcztcvacztcztczzbpYaaaczAcxGczAcxGczAaaaczAcxGcxGczAaaaaaaaaaaaeaaacxpcAocApcApcAqcApcArcAscwdcAucAucAucAucAucxpaaeaaaaaeaaeaaeaaeaaeaaaaaeaaaaaeaaaaaaaaacCVaaaaaaaaeaaaaaaaaaaaabUYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaBVbpYbpYctzbxTbxTdNLbxTctTbJhbpYczxczvcztcztcvacztcztczzbpYaaaczAcxGczAcxGczAaaaczAcxGcxGczAaaaaaaaaaaaeaaacxpcAocApcApcAqcApcArcAscwdcAucAucAucAucAucxpaaeaaaaaeaaeaaeaaeaaeaaaaaeaaaaaeaaaaaaaaacCVaaaaaaaaeaaaaaaaaaaaabUYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaacEucEvcEwcuYbIYbIYcvdcvacvscvebpYbpYbpYbQJbPUbPUbPUbQIbpYbpYaaeczBczaczCczaczBaaeczBczaczaczBaaeaaeaaeaaeaaacyccAucAOcAPctUcAPctkculcATcATcATcAUcAVcAucycaaeaaaaaaaaaaaaaaaaacaaacDhcDhcDhcDhcDhaaecDiaaecDhcDhcDhcDhcDhaaaaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaBVcEuaBVbpYbQJbPUbPUbQIbpYbOLbpYaaaaaaaaaaaaaaaaaaaaacCDcCDcCDcCDcCDcCDcCDcCDcCDcCDcCDcCDcCDcCDaaaaaaaaeaaacwZcBpcBqcBrcBscBtcBucBvcAucBwcBxcBycBzcBAcwZaaeaaaaaaaaaaaaaaaaFvaaecDpcDqcDqcDqcDqcDrcDscDtcDucDucDucDucDvaaeaFvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaaaaaaaeaaaaaaaaaaaaaaaaaeaaeaaaaaaaaaaaaaaaaaaaaacCDcCDcCDcCDcCDcCDcCDcCDcCDcCDcCDcCDcCDcCDaaaaaaaaeaaacwZcBScBScBScBScBTcBUcBVcBWcBTcBScBScBScBScwZaaeaaeaaeaaeaaeaaeaFvaaecDAcDAcDAcDAcDAaaacDiaaacDAcDAcDAcDAcDAaaeaFvaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -11459,22 +11427,22 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadEJdEJdEJdEJdEJdEJdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlFdogdlFdlFdlFdlFdlFdlFdlFdlFdlFdogdlFdmUdmFdlwdmFdHPdlzdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlBdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdBidoTdoTdoTdoTdoTdoTdoTdoTdBidDtdDtdDtdlDdlDdlDdmydCadoWdoXdOxdobdDtdDtdDtdDtdDtdDtdDtdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadEJdEJdEJdEJdEJdEJdDEdDEdDEdDNdEJdDsdDsdDsdDudDudDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlFdogdogdogdogdFrdogdogdogdogdogdogdlFdmUdlwdlwdlwdlEdlFdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlBdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdoHdoIdEndpadpadpadpadpadpadpadoHdoIdDtdDtdDtdDtdDtdmydoDdHTdoDdOxdDVdDtdDtdDtdDtdDtdDtdDtdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadEJdHAdHBdwIdHDdDwdHydGBdGBdGBdEJdnTdnTdnTdnTdGndDudDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlFdlFdlFdlFdlFdlFdlFdlFdlFdlFdlFdlFdlFdlFdlrdHzdlsdlFdlFdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlBdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdlBaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdDtdDtdDtdDtdDtdDtdkIdludkMdyEdkYdkXdDtdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaadEJdHIdHJdHGdHHdDwdQrdGBdHNdApdHMdHKdGvdGvdnTdGndHFdDudDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdlFdHEdHEdlwdlFdEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlBdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdlBaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBdlBdlBdlBdlBdDtdDtdDtdDtdDtdkIdkNdkNdkMdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaadEJdEJdEJdDwcptdHsdHrdDwdEHdHqdDwdDwdEJdEJdEJdHudwedHtdDudDudDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdlFdlndlmdlndlFdEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlBdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdlBaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdDtdDtdDtdDtdkHdkHdDtdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJIaaeaaeaaeaaeaaedEJdHwdHxdDwdGAdGBdHydHvdQqdGBdQpdDwdGhdGhdGhdGndGvdGvdDudDudDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdlFdlqdHzdlpdlFdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlBdlBdDtdDtdDtdDtdDtdDtdDtdDtdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdDtdDtdkHdkHdDtdDtdlBdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTdEJdHgdHhdHddHedGXdHfdGBdGAdGBdGBdHbdGhdGhdGvdGvdGvdGvdNTdDudDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdlldljdlkdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlddlddlddlBdlBdlBdlBdlBdDtdDtdFldFldlBdlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdDtdkHdkHdDtdDtdlBdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTdEJdHodQodEsdHndGXdHmdGBdGAdQndGBdDwdQmdQldQldGvdGvdGndGndDudDudDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdEDdlidEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlddlddlBdlBdlBdlBdlBdlBdlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBdlBdlBdlBdlBdlBdlBdDtdkHdkHdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTdEJdDwdDwdDwdGUdGBdGVdGXdGWdGLdHkdQedwrdwrdwxdtvdGvdGndGndGTdDudDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdEDdEDdEDdlidEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlddlddlddlddlddlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBdlBdlBdlBdlBdlBdDtdkHdlcdlhdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTdNZdGPdGOdGQdOadGBdGAdGBdGBdGZdtudDwdOkdOcdObdGvdGvdGndGndGNdDudDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdlidEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlddlddlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBduBduBdlBdlBdlBdDtdlcdlhdkHdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTdEJdEJdEJdEJdGBdGBdGAdGLdGKdDwdwndDwdGhdGhdGhdGndGndGndGndwpdDwdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdEDdEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBduBdlBdlBdlBdDtdDtdkHdkHdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTaaaaaadEJdGJdGBdGBdGAdtjdwidtjdsIdDwdGEdNUdGndGndGndGndNTdDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaeaaedlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBduBdlBdlBdlBdDtdDtdkHdkHdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTdFcdFcdFcdFcdFcdGzdwhdFedFedFedDwdFedFedGxdGndGvdGndGndNTdDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBdlBdlBdlBdDtdDtdkHdkHdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTdGsdFLdFLdFLdGudGtdwgdGqdGpdGpdwadFLdGrdGhdGhdGndGndGndDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddldaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBduBdlBdlBdlBdDtdkHdkHdDtdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTdFcdFedFedGldFecopdFedFedGidGkdGjdFedFedGhdGhdGndGndDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBduBdlBdlBdlBdDtdkHdkHdDtdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTdFcdGfdGedGddGcdGbdGadFZdFYdFXdFWdNKdFUdNydNxdGgdDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBduBdlBdlBdlBdDtdkHdlcdlgdlhdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedDTdDTdDTdDTdDTdFKdFMdFLdFNdFLdFOdFedFQdFPdFPdFRdFJdFedDudDudDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaadlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBduBdlBdlBdlBdDtdlcdlgdlhdkHdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaedFkdFjdvmdvndFndFmdFedFIdFHdFGdFFdFJdFedDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaadlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfduWdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBduBdlBdlBdlBdDtdDtdDtdkHdkHdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaadFfdFhduTdFcdFcdFcdFedFedFedFedFedFedFedDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaadlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBduBdlBdlBdlBdDtdkQdkYdkYdkXdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalIaaaaaaaaaaaaaaaaaaaaadEJdHIdHJdHGdHHdDwdQrdGBdHNdApdHMdHKdGvdGvdnTdGndHFdDudDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdlFdHEdHEdlwdlFdEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlBdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdlBaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBdlBdlBdlBdlBdDtdDtdDtdDtdDtdkIdkNdkNdkMdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalIaaaaaaaaaaaaaaadEJdEJdEJdDwcptdHsdHrdDwdEHdHqdDwdDwdEJdEJdEJdHudwedHtdDudDudDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdlFdlndlmdlndlFdEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlBdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdDtdlBaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdDtdDtdDtdDtdkHdkHdDtdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalIaaealIalIalIalIdEJdHwdHxdDwdGAdGBdHydHvdQqdGBdQpdDwdGhdGhdGhdGndGvdGvdDudDudDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdlFdlqdHzdlpdlFdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlBdlBdDtdDtdDtdDtdDtdDtdDtdDtdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdDtdDtdkHdkHdDtdDtdlBdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJIaJIaaeaaeaaeaaedEJdHgdHhdHddHedGXdHfdGBdGAdGBdGBdHbdGhdGhdGvdGvdGvdGvdNTdDudDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdlldljdlkdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlddlddlddlBdlBdlBdlBdlBdDtdDtdFldFldlBdlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdDtdkHdkHdDtdDtdlBdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaalIalIalIalIalIalIalIalIaaedDTdDTdDTdDTdEJdHodQodEsdHndGXdHmdGBdGAdQndGBdDwdQmdQldQldGvdGvdGndGndDudDudDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdEDdlidEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlddlddlBdlBdlBdlBdlBdlBdlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBdlBdlBdlBdlBdlBdlBdDtdkHdkHdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaalIalIalIalIalIalIalIalIaaedDTdDTdDTdDTdEJdDwdDwdDwdGUdGBdGVdGXdGWdGLdHkdQedwrdwrdwxdtvdGvdGndGndGTdDudDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdEDdEDdEDdlidEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlddlddlddlddlddlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBdlBdlBdlBdlBdlBdDtdkHdlcdlhdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaalIalIalIalIalIalIalIalIaaedDTdDTdDTdDTdNZdGPdGOdGQdOadGBdGAdGBdGBdGZdtudDwdOkdOcdObdGvdGvdGndGndGNdDudDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdlidEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlddlddlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBduBduBdlBdlBdlBdDtdlcdlhdkHdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaalIalIalIalIalIalIalIalIaaedDTdDTdDTdDTdEJdEJdEJdEJdGBdGBdGAdGLdGKdDwdwndDwdGhdGhdGhdGndGndGndGndwpdDwdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdEDdEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBduBdlBdlBdlBdDtdDtdkHdkHdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaalIalIalIalIalIalIalIalIaaedDTdDTdDTdDTaaaaaadEJdGJdGBdGBdGAdtjdwidtjdsIdDwdGEdNUdGndGndGndGndNTdDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaeaaedlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBduBdlBdlBdlBdDtdDtdkHdkHdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaalIalIalIalIalIalIalIalIaaedDTdDTdDTdDTdFcdFcdFcdFcdFcdGzdwhdFedFedFedDwdFedFedGxdGndGvdGndGndNTdDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBdlBdlBdlBdDtdDtdkHdkHdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaalIalIalIalIalIalIalIalIaaedDTdDTdDTdDTdGsdFLdFLdFLdGudGtdwgdGqdGpdGpdwadFLdGrdGhdGhdGndGndGndDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdEDdEDdEDdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddldaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBduBdlBdlBdlBdDtdkHdkHdDtdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaalIalIalIalIalIalIalIalIaaedDTdDTdDTdDTdFcdFedFedGldFecopdFedFedGidGkdGjdFedFedGhdGhdGndGndDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBduBdlBdlBdlBdDtdkHdkHdDtdDtdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaalIalIalIalIalIalIalIalIaaedDTdDTdDTdDTdFcdGfdGedGddGcdGbdGadFZdFYdFXdFWdNKdFUdNydNxdGgdDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaadlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBduBdlBdlBdlBdDtdkHdlcdlgdlhdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaalIalIaaeaaeaaeaaeaaeaaedFKdFMdFLdFNdFLdFOdFedFQdFPdFPdFRdFJdFedDudDudDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaadlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBduBdlBdlBdlBdDtdlcdlgdlhdkHdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaalIalIalIaaealIalIalIalIdFkdFjdvmdvndFndFmdFedFIdFHdFGdFFdFJdFedDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaadlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfduWdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBduBdlBdlBdlBdDtdDtdDtdkHdkHdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalIaaaaaaaaaaaaaaadFfdFhduTdFcdFcdFcdFedFedFedFedFedFedFedDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaadlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBduBduBduBduBdlBdlBdlBdDtdkQdkYdkYdkXdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadDudDudDudDudDudDudDudDudDudDudDudDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaeaaedlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddldaaaaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBdlBdlBdlBdDtdkIdkNdkNdkMdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBaaadlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaadlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlddldaaaaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBdlBdlBdlBdDtdDtdkHdkHdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsdDsaaaaaaaaaaaaaaadlddlddlddlddlddlddlddlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdprdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlfdlddlddlddlddldaaaaaaaaaaaaaaaaaaaaadlBdlBdlBdlBduBduBduBdlBdlBdlBdDtdDtdkHdkHdDtdDtdlBdlBdlBdlBdlBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBduBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBdlBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/_maps/map_files/tgstation.2.1.2.dmm b/_maps/map_files/tgstation.2.1.2.dmm index 87d9409dbb6..7b429ff256d 100644 --- a/_maps/map_files/tgstation.2.1.2.dmm +++ b/_maps/map_files/tgstation.2.1.2.dmm @@ -5020,7 +5020,7 @@ "bSB" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/structure/closet/secure_closet/security/engine,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/checkpoint/engineering) "bSC" = (/obj/structure/filingcabinet,/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor{icon_state = "red"; dir = 5},/area/security/checkpoint/engineering) "bSD" = (/obj/structure/closet/fireaxecabinet{pixel_x = -32; pixel_y = 0},/turf/simulated/floor,/area/atmos) -"bSE" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/suit/space/rig/atmos,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig/atmos,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/atmos) +"bSE" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/suit/space/rig/atmos,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig/atmos,/obj/item/weapon/watertank/atmos,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/atmos) "bSF" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister,/turf/simulated/floor{dir = 2; icon_state = "bot"},/area/atmos) "bSG" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/turf/simulated/floor{dir = 2; icon_state = "bot"},/area/atmos) "bSH" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "yellow"; dir = 8; icon_state = "manifold-y"; level = 2},/turf/simulated/floor,/area/atmos) @@ -5384,12 +5384,12 @@ "bZB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/aft) "bZC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/aft) "bZD" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/aft) -"bZE" = (/obj/structure/bookcase/manuals/engineering,/mob/living/simple_animal/parrot/Poly,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"bZF" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"bZG" = (/obj/machinery/light{dir = 1},/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = 24},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"bZH" = (/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"bZI" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"bZJ" = (/obj/machinery/power/apc{cell_type = 5000; dir = 4; name = "CE Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) +"bZE" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/storage/fancy/cigarettes,/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"bZF" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"bZG" = (/obj/structure/table/reinforced,/obj/item/stack/medical/bruise_pack{pixel_x = -3; pixel_y = 2},/obj/item/weapon/reagent_containers/pill/kelotane{pixel_x = -3; pixel_y = -8},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"bZH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"bZI" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/camera{c_tag = "Chief Engineer's Office"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"bZJ" = (/obj/item/weapon/cartridge/engineering{pixel_x = 4; pixel_y = 5},/obj/item/weapon/cartridge/engineering{pixel_x = -3; pixel_y = 2},/obj/item/weapon/cartridge/engineering{pixel_x = 3},/obj/structure/table/reinforced,/obj/machinery/light_switch{pixel_x = 27},/obj/item/weapon/cartridge/atmos,/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) "bZK" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/engine/engineering) "bZL" = (/obj/machinery/door/airlock/engineering{name = "Engine Room"; req_access_txt = "10"},/turf/simulated/floor,/area/engine/engineering) "bZM" = (/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) @@ -5426,11 +5426,11 @@ "car" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/engine/engineering) "cas" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall/r_wall,/area/engine/engineering) "cat" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/engine/chiefs_office) -"cau" = (/obj/machinery/computer/atmos_alert,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Engineer's Desk"; departmentType = 3; name = "Chief Engineer RC"; pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cav" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"caw" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/lighter/zippo,/obj/item/clothing/glasses/meson{pixel_y = 4},/obj/item/weapon/stamp/ce,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cax" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cay" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/rig/elite,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig/elite,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cau" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cav" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"caw" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cax" = (/obj/machinery/door/airlock/glass_command{name = "Chief Engineer"; req_access_txt = "56"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cay" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) "caz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/engine/chiefs_office) "caA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/engine/engineering) "caB" = (/turf/simulated/floor,/area/engine/engineering) @@ -5471,11 +5471,11 @@ "cbk" = (/obj/machinery/computer/station_alert,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor,/area/engine/engineering) "cbl" = (/obj/machinery/computer/monitor,/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor,/area/engine/engineering) "cbm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/wall/r_wall,/area/engine/chiefs_office) -"cbn" = (/obj/machinery/computer/station_alert,/obj/machinery/door_control{desc = "A remote control-switch for the engineering security doors."; id = "Engineering"; name = "Engineering Lockdown"; pixel_x = -24; pixel_y = -10; req_access_txt = "10"},/obj/machinery/door_control{desc = "A remote control-switch for secure storage."; id = "Secure Storage"; name = "Engineering Secure Storage"; pixel_x = -24; pixel_y = 0; req_access_txt = "11"},/obj/machinery/door_control{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = -24; pixel_y = 10; req_access_txt = "24"},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cbo" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Chief Engineer"},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cbp" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/yellow,/obj/item/weapon/paper/monitorkey,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cbq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cbr" = (/obj/structure/closet/secure_closet/engineering_chief{req_access_txt = "0"},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cbn" = (/obj/machinery/power/apc{cell_type = 5000; dir = 4; name = "CE Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cbo" = (/obj/machinery/light{dir = 1},/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = 24},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cbp" = (/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cbq" = (/obj/structure/bookcase/manuals/engineering,/mob/living/simple_animal/parrot/Poly,/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cbr" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) "cbs" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable,/turf/simulated/floor/plating,/area/engine/chiefs_office) "cbt" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor,/area/engine/engineering) "cbu" = (/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor,/area/engine/engineering) @@ -5505,10 +5505,10 @@ "cbS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/stool/bed/chair/office/dark{dir = 1},/obj/effect/landmark/start{name = "Station Engineer"},/turf/simulated/floor,/area/engine/engineering) "cbT" = (/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,/area/engine/engineering) "cbU" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/wall/r_wall,/area/engine/chiefs_office) -"cbV" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/camera{c_tag = "Chief Engineer's Office"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cbW" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cbX" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/storage/fancy/cigarettes,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cbY" = (/obj/structure/table/reinforced,/obj/item/stack/medical/bruise_pack{pixel_x = -3; pixel_y = 2},/obj/item/weapon/reagent_containers/pill/kelotane{pixel_x = -3; pixel_y = -8},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cbV" = (/obj/machinery/computer/station_alert,/obj/machinery/door_control{desc = "A remote control-switch for the engineering security doors."; id = "Engineering"; name = "Engineering Lockdown"; pixel_x = -24; pixel_y = -10; req_access_txt = "10"},/obj/machinery/door_control{desc = "A remote control-switch for secure storage."; id = "Secure Storage"; name = "Engineering Secure Storage"; pixel_x = -24; pixel_y = 0; req_access_txt = "11"},/obj/machinery/door_control{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = -24; pixel_y = 10; req_access_txt = "24"},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cbW" = (/obj/structure/closet/secure_closet/engineering_chief{req_access_txt = "0"},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cbX" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Chief Engineer"},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cbY" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/yellow,/obj/item/weapon/paper/monitorkey,/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) "cbZ" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "cca" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter,/turf/simulated/wall/r_wall,/area/atmos) "ccb" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{frequency = 1443; id = "mair_in_meter"; name = "Mixed Air Tank In"},/turf/simulated/wall/r_wall,/area/atmos) @@ -5524,10 +5524,10 @@ "ccl" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/engine/engineering) "ccm" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/engine/engineering) "ccn" = (/obj/machinery/atmospherics/pipe/manifold{pipe_color = "blue"; dir = 4; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/wall/r_wall,/area/engine/chiefs_office) -"cco" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"ccp" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"ccq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"ccr" = (/obj/item/weapon/cartridge/engineering{pixel_x = 4; pixel_y = 5},/obj/item/weapon/cartridge/engineering{pixel_x = -3; pixel_y = 2},/obj/item/weapon/cartridge/engineering{pixel_x = 3},/obj/structure/table/reinforced,/obj/machinery/light_switch{pixel_x = 27},/obj/item/weapon/cartridge/atmos,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cco" = (/obj/machinery/computer/atmos_alert,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Engineer's Desk"; departmentType = 3; name = "Chief Engineer RC"; pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"ccp" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"ccq" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/lighter/zippo,/obj/item/clothing/glasses/meson{pixel_y = 4},/obj/item/weapon/stamp/ce,/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) +"ccr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) "ccs" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/engine/engineering) "cct" = (/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/r_wall,/area/engine/engineering) "ccu" = (/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) @@ -5554,7 +5554,7 @@ "ccP" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/engine/chiefs_office) "ccQ" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/engine/chiefs_office) "ccR" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/engine/chiefs_office) -"ccS" = (/obj/machinery/door/airlock/glass_command{name = "Chief Engineer"; req_access_txt = "56"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) +"ccS" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/rig/elite,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig/elite,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{dir = 2; icon_state = "neutralfull"},/area/engine/chiefs_office) "ccT" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/engine/chiefs_office) "ccU" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall/r_wall,/area/engine/chiefs_office) "ccV" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/turf/simulated/floor{dir = 9; icon_state = "yellow"},/area/engine/engineering) @@ -7556,7 +7556,7 @@ "cPp" = (/obj/structure/alien/weeds,/turf/simulated/floor/plating/airless,/area/mine/abandoned) "cPq" = (/obj/structure/alien/weeds{icon_state = "weeds1"},/turf/simulated/floor/plating/airless,/area/mine/abandoned) "cPr" = (/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/mine/abandoned) -"cPs" = (/obj/item/weapon/shard{icon_state = "small"},/obj/item/clothing/suit/space/syndicate,/turf/simulated/floor/plating/airless,/area/mine/abandoned) +"cPs" = (/obj/machinery/sleeper{dir = 4; icon_state = "sleeper-open"; initial_bin_rating = 0.5},/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) "cPt" = (/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/mine/abandoned) "cPu" = (/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/mine/abandoned) "cPv" = (/obj/structure/alien/weeds{icon_state = "weeds2"},/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/mine/abandoned) @@ -7573,7 +7573,7 @@ "cPG" = (/obj/item/weapon/shard,/turf/simulated/floor/plating/airless,/area/mine/abandoned) "cPH" = (/obj/structure/lattice,/obj/item/weapon/shard{icon_state = "small"},/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/space,/area/mine/abandoned) "cPI" = (/obj/structure/lattice,/turf/space,/area/mine/abandoned) -"cPJ" = (/obj/item/clothing/head/helmet/space/syndicate,/turf/simulated/floor/plating/airless,/area/mine/abandoned) +"cPJ" = (/obj/structure/sink{pixel_y = 24},/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) "cPK" = (/turf/simulated/floor/airless{icon_state = "damaged2"},/area/mine/abandoned) "cPL" = (/obj/structure/alien/weeds,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/mine/abandoned) "cPM" = (/obj/machinery/door/airlock,/turf/simulated/floor/airless,/area/mine/abandoned) @@ -7699,7 +7699,7 @@ "cSc" = (/turf/simulated/wall/r_wall,/area/mine/laborcamp) "cSd" = (/turf/simulated/floor/airless{icon_state = "floorgrime"},/area/mine/abandoned) "cSe" = (/obj/structure/girder,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/abandoned) -"cSf" = (/obj/machinery/sleep_console{icon_state = "console"; dir = 4},/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) +"cSf" = (/obj/machinery/camera{c_tag = "Labor Camp Medical"; dir = 2; network = list("Labor"); pixel_x = 16},/obj/machinery/sleeper{dir = 8; icon_state = "sleeper-open"; initial_bin_rating = 0.5},/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) "cSg" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/airless,/area/mine/explored) "cSh" = (/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/north_outpost) "cSi" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32},/turf/simulated/floor{icon_state = "warning"},/area/mine/north_outpost) @@ -7714,10 +7714,10 @@ "cSr" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 1},/turf/space,/area/mine/explored) "cSs" = (/obj/machinery/door/airlock/external{name = "Mining North Outpost Airlock"; req_access_txt = "54"},/turf/simulated/floor/airless{icon_state = "asteroidfloor"},/area/mine/north_outpost) "cSt" = (/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/mine/explored) -"cSu" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/firstaid/regular,/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) +"cSu" = (/obj/item/weapon/shard{icon_state = "small"},/obj/item/clothing/suit/xenos,/turf/simulated/floor/plating/airless,/area/mine/abandoned) "cSv" = (/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) "cSw" = (/obj/machinery/door/airlock/external{name = "Mining Bridge"; req_access_txt = "54"},/turf/simulated/floor/airless{icon_state = "asteroidfloor"},/area/mine/north_outpost) -"cSx" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/obj/machinery/camera{c_tag = "Labor Camp Medical"; dir = 8; network = list("Labor")},/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) +"cSx" = (/obj/item/clothing/head/xenos,/turf/simulated/floor/plating/airless,/area/mine/abandoned) "cSy" = (/turf/simulated/wall,/area/mine/laborcamp) "cSz" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor{icon_state = "floorgrime"; temperature = 273.15},/area/mine/laborcamp) "cSA" = (/turf/simulated/floor{icon_state = "floorgrime"; temperature = 273.15},/area/mine/laborcamp) @@ -7730,7 +7730,7 @@ "cSH" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 1},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/space,/area/mine/north_outpost) "cSI" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 1},/area/mine/explored) "cSJ" = (/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 5},/area/mine/explored) -"cSK" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) +"cSK" = (/obj/machinery/sleeper{dir = 4; icon_state = "sleeper-open"},/turf/simulated/floor{icon_state = "warnwhite"; dir = 5},/area/mine/living_quarters) "cSL" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) "cSM" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Storage"; location = "Sleeper"},/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) "cSN" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "white"; temperature = 273.15},/area/mine/laborcamp) @@ -8095,14 +8095,13 @@ "cZI" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor/plating,/area/mine/west_outpost) "cZJ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/mine/west_outpost) "cZK" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/item/weapon/storage/box/lights/bulbs,/turf/simulated/floor/plating,/area/mine/west_outpost) -"cZL" = (/obj/machinery/sleep_console{icon_state = "console"; dir = 8},/turf/simulated/floor{icon_state = "warnwhite"; dir = 5},/area/mine/living_quarters) +"cZL" = (/obj/machinery/computer/crew,/turf/simulated/floor{icon_state = "warnwhite"; dir = 1},/area/mine/living_quarters) "cZM" = (/obj/machinery/atmospherics/pipe/manifold{dir = 8},/turf/simulated/floor,/area/mine/living_quarters) "cZN" = (/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/turf/simulated/floor,/area/mine/living_quarters) "cZO" = (/obj/machinery/atmospherics/pipe/manifold,/turf/simulated/floor,/area/mine/living_quarters) "cZP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/turf/simulated/floor,/area/mine/living_quarters) "cZQ" = (/obj/machinery/atmospherics/pipe/manifold{dir = 1},/turf/simulated/floor,/area/mine/living_quarters) "cZR" = (/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/obj/machinery/light,/turf/simulated/floor,/area/mine/living_quarters) -"cZS" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/simulated/floor{icon_state = "warnwhite"; dir = 1},/area/mine/living_quarters) "cZT" = (/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/mine/living_quarters) "cZU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/turf/simulated/floor/plating,/area/mine/living_quarters) "cZV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/turf/simulated/floor/plating,/area/mine/living_quarters) @@ -8442,12 +8441,12 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafSaaabWwbXgbWyaaabWwbXgbWyaaabWwbXgbWyaafaafaaaaaaaaaaaaaaaaaaaafaaaaaabwJbwJbwJbXhbXibXjbQxbRubXkbXlbRubXmbXnbRubSrbXobXpbXqbXqbXrbXsbXtbXubXvbXwbXxbXybXzbXAbXBbUtbUtbUubXCbGJbXDbIVbIYbOsbJcbXEbXFbXGbXHbIabXIbXJbQSbMtbKcbXKbWibWibJeaafaaaaaaaaaaaaaafaaaaaabwRbXLbXMbXNbXNbXNbXNbXNbXNbXObGbbXPbXQbXRbXRbXRbXRbXRbXRbXSbXTbXTbXTbXTbXTbXTbXTbXUbUbaaaaaaaaaaaaaaaaaabXeaaaaafaaaaafaaaaaaaaabXVaaaaafaafaaaaaaaaaaaabXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaafRaafbWwbXgbWyaaabWwbXgbWyaafbWwbXgbWyaafaafaaaaaaaaaaaaaaaaaaaafaaaaaabXWbXXbXWbzebzebQwbQxbRubXYbXZbYabYbbYcbRubYdbYebYfbYgbYhbQybYibYjbYkbYlbYmbYnbYobYpbYqbYrbYsbYtbYubYvbGJbYwbLebYxbYybIVbIVbIVbJbbPHbYybPNbRRbLiaafbJebJebJebJebJeaafaafaafaafaafaafaafaafbwRbYzbYAbYAbYBbYCbYDbYAbYAbYEbGbbYFbYGbYHbYIbYJbYJbYGbYGbYGbYGbYKbYGbYGbYLbYMbYNbYObYPaaaaaaaaaaaaaaaaaabXeaaabYQbYQbYQbYQbYQaafbYRaafbYQbYQbYQbYQbYQaaabXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaabWwbXgbWyaafbWwbXgbWyaaabWwbXgbWyaaaaafaafaafaafaafaafaaaaafaaaaafbwJbwJbwJbzebzebQwbQxbQxbQxbQxbQxbQxbQxbQxbQybQybQybQybQybQybwJbYSbwJbYTbYUbYUbYUbYVbYWbYXbYUbYYbYZbZabZbbZcbZdbMpbZebZfbZgbZfbZebZhbZebZibOsbZjaafaafaafaafaafaafaafaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaabZkbUHbZkaaaaaaaafbGbbZlbZmbZnbZnbZobakbZmbZnbZnbZobakbZmbZnbZnbZobakbakbakaaaaaaaaaaaaaaaaaabXeaafbZpbZqbZqbZqbZqbZrbYRbZsbZtbZtbZtbZtbZuaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafSafSafRaafaaabWwbXgbWyaafbWwbXgbWyaaabWwbXgbWyaafaafaaaaaaaaaaaaaafaafbZvbZwbZwbZwbZwbZxbzebzebQwbwJbZybZzbZAbZAbZAbZAbZAbZAbZAbZAbZAbZBbZBbZAbZCbZDbYTbZEbZFbZGbZHbZIbZJbYUbZKbZLbZMbGJbZNbZObZPbSJbZRbZSbZTbWfbIVbZVbZWbSIbIXaafaafaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaabZYbYCbZYaaaaaaaafbZZcaaaaaaafaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaabXeaafcabcabcabcabcabaaabYRaaacabcabcabcabcabaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafSaaaaafaaaaafaafcacaafaafaafcacaafaaaaafcacaafaaaaafaaaaaaaaaaaacadcaecafcagcahcaicajcakcalcalcambwJcancaocapcapcapcapcapcapcapcapcapcapcapcapcaqcarcascatcaucavcawcaxcaycazcaAcaBcaCcaDcaEcaFcaGcaHcaGcaFcaGcaHcaGcaIcaGcaIcaJaafaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaKcaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaabXeaaaaafaaaaafaafaafaaabYRaaaaafaaaaafaaaaafaaabXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafRaafcaLcaMcaMcaNcaOcaOcaOcaOcaOcaOcaOcaOcaOcaOcaOcaPcaMcaMcaMcaMcaQcaRcaQcaScaTcaUcaVbzebzebzecaWcaXcaYcaZcapcbacbacbbcapcbccbdcbecbfcbgcbhcbicbjcbkcblcbmcbncbocbpcbqcbrcbscbtcbucbvcapaafcbwaafcbxaafcbwaafcbxaafcbyaafcbyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaabXeaaabYQbYQbYQbYQbYQaafbYRaafbYQbYQbYQbYQbYQaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafSaaaaafaaaaafaafcbzaafaaaaafcbzaafaaaaafcbzaafaaaaaaaaaaaaaaaaaacadcaecbAcbBcbCcbDbZwcbEbzebzebzebzebzfcbFcapcbGcbHcbIcbJcbKcbLcbMcbNcbOcbPcbQcbRcbScbTcbUcbVcbWcbXcbqcbYbYUcbZcbZcbZcapbJeccabLjccabJeccabLjccabJeccbbLjcccbJeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccdaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaabXeaafbZpbZqbZqbZqbZqbZrbYRbZsbZtbZtbZtbZtbZuaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafSafSafRaafaafbWwccebWyaaabWwccebWyaaabWwccebWyaafaaaaaaaaaaaaaaaaafaafccfbZwbZwbZwbZwbwJbwJbwJbwJbzeccgbNjcapcchcbIcbIcbJcciccjcckcckcckccjccjcclcaBccmccnccoccpccpccqccrbYUccsbZLcctcapbJeccuccvccwbJeccxccycczbJeccAccBccCbJeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaabXeaafcabcabcabcabcabaaabYRaafcabcabcabcabcabaaabXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWwccebWyaafbWwccebWyaaabWwccebWyaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaafaafaafbwJccDbzebzebzebzebNjcapccEccEccFcapccGccHccIccJccJcaBccKccLccMccNccOccPccQccRccSccTccUccVccWccXcapbJeccYccZccYbJecdacdbcdabJecdccddcdebJeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaabXfaaaaafaaaaafaaaaafaaacdfaaaaafaaaaafaafaafaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBjaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafSafSafRaafaaabWwbXgbWyaafbWwbXgbWyaaabWwbXgbWyaafaafaaaaaaaaaaaaaafaafbZvbZwbZwbZwbZwbZxbzebzebQwbwJbZybZzbZAbZAbZAbZAbZAbZAbZAbZAbZAbZBbZBbZAbZCbZDbYTcbqcbrcbocbpcaycbnbYUbZKbZLbZMbGJbZNbZObZPbSJbZRbZSbZTbWfbIVbZVbZWbSIbIXaafaafaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaabZYbYCbZYaaaaaaaafbZZcaaaaaaafaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaabXeaafcabcabcabcabcabaaabYRaaacabcabcabcabcabaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafSaaaaafaaaaafaafcacaafaafaafcacaafaaaaafcacaafaaaaafaaaaaaaaaaaacadcaecafcagcahcaicajcakcalcalcambwJcancaocapcapcapcapcapcapcapcapcapcapcapcapcaqcarcascatccoccpccqccrccScazcaAcaBcaCcaDcaEcaFcaGcaHcaGcaFcaGcaHcaGcaIcaGcaIcaJaafaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaKcaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaabXeaaaaafaaaaafaafaafaaabYRaaaaafaaaaafaaaaafaaabXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafRaafcaLcaMcaMcaNcaOcaOcaOcaOcaOcaOcaOcaOcaOcaOcaOcaPcaMcaMcaMcaMcaQcaRcaQcaScaTcaUcaVbzebzebzecaWcaXcaYcaZcapcbacbacbbcapcbccbdcbecbfcbgcbhcbicbjcbkcblcbmcbVcbXcbYbZHcbWcbscbtcbucbvcapaafcbwaafcbxaafcbwaafcbxaafcbyaafcbyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaabXeaaabYQbYQbYQbYQbYQaafbYRaafbYQbYQbYQbYQbYQaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafSaaaaafaaaaafaafcbzaafaaaaafcbzaafaaaaafcbzaafaaaaaaaaaaaaaaaaaacadcaecbAcbBcbCcbDbZwcbEbzebzebzebzebzfcbFcapcbGcbHcbIcbJcbKcbLcbMcbNcbOcbPcbQcbRcbScbTcbUbZIbZFbZEbZHbZGbYUcbZcbZcbZcapbJeccabLjccabJeccabLjccabJeccbbLjcccbJeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccdaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaabXeaafbZpbZqbZqbZqbZqbZrbYRbZsbZtbZtbZtbZtbZuaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafSafSafRaafaafbWwccebWyaaabWwccebWyaaabWwccebWyaafaaaaaaaaaaaaaaaaafaafccfbZwbZwbZwbZwbwJbwJbwJbwJbzeccgbNjcapcchcbIcbIcbJcciccjcckcckcckccjccjcclcaBccmccncawcavcavcaubZJbYUccsbZLcctcapbJeccuccvccwbJeccxccycczbJeccAccBccCbJeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaabXeaafcabcabcabcabcabaaabYRaafcabcabcabcabcabaaabXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWwccebWyaafbWwccebWyaaabWwccebWyaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaafaafaafbwJccDbzebzebzebzebNjcapccEccEccFcapccGccHccIccJccJcaBccKccLccMccNccOccPccQccRcaxccTccUccVccWccXcapbJeccYccZccYbJecdacdbcdabJecdccddcdebJeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaabXfaaaaafaaaaafaaaaafaaacdfaaaaafaaaaafaafaafaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBjaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafRaafbWwccebWyaaabWwccebWyaaabWwccebWyaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwJcdgbzebzebzebzebNjcapccEccEccFcapcdhcdicdjcdkcdlcdmcdncbjcdmcdocdpcdqcdrcdscdtcducdvcdscaBcdwcapbJeccYcdxccYbJecdacdycdabJecdecdzcdebJeaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabXeaaabYQbYQbYQbYQbYQaafbVFaafbYQbYQbYQbYQbYQaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafRaafbWwccebWyaaabWwccebWyaafbWwccebWyaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaabwJbzebzecapcdAcapcdBcapccEccFccFcapcdCcdDcdEcdFccJcducdGcdHcdGcdIcdJcdKcdLcdLcdMcdLcdLcdLcdNcdOcapbJebJebJebJebJebJebJebJebJebJebJebJebJeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaabXeaafbZpbZqbZqbZqbZqcdPcdQcdPbZtbZtbZtbZtbZuaafbXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagxaafbWwcdRbWyaaabWwcdRbWyaaabWwcdRbWyaafafRaafaafaafaafaafaafaafaafaafaafaafbwJbzecdScapcdTcapcdUcapcapcapcapcapcdVcaBcdWcdXcdXcbQcbQcbQcdYcdZcdNcaBcaBcaBcaBceacaBcaBcdtcebcapaafaaaaaaaaaaafaafaaaaaaaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabXeaafcabcabcabcabcabaaabVFaaacabcabcabcabcabaaabXeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9360,9 +9359,9 @@ cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcO cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcOZcTHcPbcPccPdcOWcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcOTcOTcOTcOUcOUcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcOZcPecPfcPgcOWcPhcPicOWcOWcOWcOWcOEcOEcOEcOEcOEcOEcVscOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcOTcOTcOTcOUcOUcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcUhcPkcONcPlcPmcPncOFcORcPocOWcPpcPqcOWcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcOTcOTcOTcOUcOUcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU -cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcPrcPscPkcORcPtcPucPvcPwcPocPhcPqcPxcPpcOWcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcOTcOTcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU +cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcPrcSucPkcORcPtcPucPvcPwcPocPhcPqcPxcPpcOWcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcOTcOTcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcXWcPrcPzcPrcONcONcPAcPBcPtcOWcPCcPDcOWcPqcPEcOWcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcVscOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcOTcOTcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcRjcRjcRjcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU -cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcOZcPFcPGcONcPHcPIcPJcPKcPLcPucPMcPAcOPcOWcOWcOWcOWcOWcOWcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcOTcOEcOEcOEcOEcOEcOTcOTcOTcOTcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcPNcPNcPOcPNcPNcPNcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU +cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcOZcPFcPGcONcPHcPIcSxcPKcPLcPucPMcPAcOPcOWcOWcOWcOWcOWcOWcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcOTcOEcOEcOEcOEcOEcOTcOTcOTcOTcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcPNcPNcPOcPNcPNcPNcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcOZcPPcPQcPRcONcPIcPqcORcPScPtcOIcOWcPLcPTcOWcPUcPVcPtcPWcOWcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOTcOTcOTcOTcOTcOUcOUcOUcOUcOUcOUcOUcOZcOZcPNcPXcPYcPZcQacPNcRjcRjcRjcRjcRjcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcOZcOZcOEcOEcOWcPncPdcQbcPpcPRcQccQdcPucPUcOFcPucQecOWcPUcPCcPVcPWcOWcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcRjcRjcRjcRjcRjcRjcOTcOTcOEcOEcOEcOTcOTcOTcOTcOUcOUcOUcOUcOUcOUcOZcOZcOZcPNcQfcQgcQhcQicPNcRjcRjcRjcRjcRjcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOWcOWcOWcOWcOWcOWcPmcPtcQjcPdcPtcPLcQkcPUcPUcPwcPVcPCcOWcPUcORcPCcPWcOWcOEcOEcOEcOEcOEcOEcOEcOEcVscOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcRjcRjcRjcQlcQlcQlcQlcRjcRjcRjcOTcOTcOEcOTcOTcOTcOTcOUcOUcOUcOUcOUcOZcPNcPNcPNcPNcPNcQmcQncPNcPNcPNcPNcPNcPNcPNcPNcPNcQlcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU @@ -9375,8 +9374,8 @@ cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcR cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRjcSncSncRjcRjcRjcRjcRjcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOWcRocOWcPCcPtcOPcPVcPRcPCcPvcOWcRocOWcOWcPUcOIcRIcRQcRRcRKcRKcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcVscOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcRjcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcRScRTcRUcRVcRVcRVcRVcRVcRVcTpcRScRTcQlcQlcRXcRYcRZcPNcSacQDcSbcPNcRicQlcQlcQlcQlcQlcQlcQlcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcSccSccSccSccSccSccSncSncSncSncSncSncRjcRjcRjcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOEcOWcRocOWcOWcOWcOWcOWcOWcOWcOWcOWcRocOWcPUcOIcSdcOIcRJcSecRKcRKcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcSwcSgcSgcSgcSgcSgcSgcSgcSgcSwcQlcQlcQlcShcShcShcPNcSicSjcSkcPNcRicQlcQlcQlcQlcQlcQlcQlcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcSccSccSccSccSccScdcVdcVdcVdcWcSccSncSncSncSncSncSncSncSncSncRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOEcOEcOWcRocRocRocRocSpcRocRocRocRocRocRocOWcPUcSdcSdcSdcPWcOWcRKcRKcRKcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcRScRTcSHcSrcSrcSrcSrcSrcSrcSrcRScRTcQlcQlcQlcQlcQlcPNcRNcSscRNcPNcStcQlcQlcQlcQlcQlcQlcQlcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU -cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcSccSucSvcSfcSxcSycSzcSAcSAcSAcSccRacRacRacRacSBcSncSncSncSncSncSncRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOEcOEcOWcOWcOWcOWcOWcOWcOWcOWcOWcOWcOWcOWcOWcOWcRBcSCcSDcOWcOWcRKcRKcRKcRKcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcRjcOUcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcQlcQlcQlcQlcQlcQlcSEcSFcSGcSqcSIcSJcQlcQlcQlcQlcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU -cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcOUcOUcOUcOUcOUcOUcOUcSccSKcSLcSMcSNcSydcUcSAcSPcSQcSRcSScSTcSTcRacSBcSUcSncSncSncSncSncSncSncRjcRjcRjcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcRKcRKcRKcOWcRIcRIcSdcOWcRKcRKcRKcRKcRKcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcRjcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRjcRjcRjcQlcQlcQlcQlcQlcQlcSEcSVcSGcQlcQlcQlcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU +cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcSccPscPJcPJcSfcSycSzcSAcSAcSAcSccRacRacRacRacSBcSncSncSncSncSncSncRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOEcOEcOWcOWcOWcOWcOWcOWcOWcOWcOWcOWcOWcOWcOWcOWcRBcSCcSDcOWcOWcRKcRKcRKcRKcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcRjcOUcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcQlcQlcQlcQlcQlcQlcSEcSFcSGcSqcSIcSJcQlcQlcQlcQlcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU +cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcOUcOUcOUcOUcOUcOUcOUcSccSvcSLcSMcSNcSydcUcSAcSPcSQcSRcSScSTcSTcRacSBcSUcSncSncSncSncSncSncSncRjcRjcRjcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcRKcRKcRKcOWcRIcRIcSdcOWcRKcRKcRKcRKcRKcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcRjcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRjcRjcRjcQlcQlcQlcQlcQlcQlcSEcSVcSGcQlcQlcQlcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcOUcOUcOUcOUcOUcSccSccSccSycSWcSXcSWcSycSYcSZcSycSycSccSccSccTacTbcTccSncSncSncSncSncSncSncSncSncRjcRjcRjcOUcOUcOUcOUcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcRKcRKcRKcOWcTdcTecTdcOWcRKcRKcRKcRKcRKcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcRjcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRjcRjcRjcRjcRjcQlcQlcQlcQlcQlcTfcQlcQlcQlcQlcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcPacOZcOZcOZcOZcOZcSccTgcThcSycTicSAcSzcTjdcTcSAdcScSycTmcTmcTmcSBcSTcSTcSncSncSncSncSncSncSncSncSncRjcRjcRjcRjcRjcOUcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcRKcRKcOWcTncSCcTocOWcRKcRKcRKcRKcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcRjcRjcQlcQlcQlcQlcQlcQlcQlcQlcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRjcRjcRjcRjcRjcRjcQlcQlcQlcTfcQlcQlcRjcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOZcTqcTqcTqcTqcTqcSccTrcTscTtcTucTvcTwcSAcTicSAcSAcTycTmcTmcSTcSTcSTcSTcSOcSncSncSncSncSncSncSncSncSncRjcRjcRjcRjcOUcOTcOTcOTcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcVscOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcRKcRKcRKcTzcTAcTBcRKcRKcRKcRKcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcOEcVscOEcOEcOEcOEcOEcOTcOTcOTcRjcRjcRjcRjcRjcQlcQlcRbcRbcRjcOTcOTcOTcOUcOUcOUcOUcOUcOUcOUcOUcRjcRjcRjcRjcRjcRjcRjcRjcRjcRjcRjcRjcQlcQlcTfcQlcQlcRjcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU @@ -9486,7 +9485,7 @@ cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcO cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOUcOTcOTcOTcOTcOTcOTcOTcOTcRjcRjcQlcQlcQlcQlcQlcWFcZHcZIcZJcZKcWFcVucVxcWxcQlcQlcQlcQlcQlcQlcQlcQlcQlcTTcUTcUTcTUcQlcQlcQlcQlcRjcOTcOTcOTcOTcOTcOTcOTcOTcOTcOTcRjcQlcQlcVvcUTcVwcQlcQlcQlcQlcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcTfcQlcQlcQlcQlcQlcQlcQlcQlcQlcRjcRjcRjcRjcRjcWgcXBcZMcZNcZOcZOcZNcZPcZQcZRcZOcZOcZNcZNcZTcZUcZVcZWcZXcZXcZXcZXcZXcZXcZXcZXcZYcZYcZYcZYcZYcZYcZZdaadabdacdaddaedafdagdahcXTcXTcXTcXTcXTcXTcXTcXTcVAcVEcVJcVEcVLcRbcRjcRjcRjcRjcRjcRkcRkcRkcRkcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOUcOTcOTcOTcOTcOTcOTcRjcRjcQlcQlcQlcQlcWFdakdaldamdancWFcQlcQlcQlcQlcQlcQlcRjcRjcRjcRjcQlcQlcQlcQlcQlcTfcQlcQlcQlcQlcQlcRjcOTcOTcOTcOTcOTcRjcRjcRjcRjcRjcQlcVvcVwcQlcQlcQlcRjcRjcRjcRjcRjcRjcRjcQlcQlcQlcQlcQlcQlcTfcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcRjcRjcWgcWgdaodapdaocWgcWgdaqdardascWgcWgdaocVSdaocWgdaucQlcQlcQlcOUcOUcOUcOUcOZcOUcOUcOUcOZcOUcOUcOUcOUcOUcOZcOUdavcXVcYodawdaxdaydazdaAdaAdaBcXTcURcTQdaEcWncWncWncWncVLcQlcRjcRjcRjcRjcRjcRkcRkcRkcRkcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcOTcRjcRjcQlcQlcQlcWFcWFcWFcWFcWFcWFcQlcQlcRjcRjcRjcRjcRjcOTcOTcRjcRjcQlcQlcQlcQlcTfcQlcQlcQlcQlcQlcQlcRjcRjcRjcRjcRjcRjcQlcQlcQlcQlcQlcTfcQlcQlcRjcRjcRjcOTcOTcOTcOTcOTcRjcQlcQlcQlcQlcQlcQlcTfcQlcQlcQlcVrcSJcQlcQlcQlcQlcQlcQlcQlcRjcWgdaGdaHdaIdaHcWgdaJdaKdaLdaMdaNcWgdaOcYNdaQcZqcQlcQlcQlcQlcQlcQlcOUcOUcOZcOUcOUcOUcOZcOZcOZcOZcOZcOZcOZcOZcOZcXTdaRdaScZzcXTcXTcXTcXTdaTcXTdaTcXTcXTcWwcVLcVLcVLcVLcQlcRjcRjcRjcRjcRjcRkcRkcRkcRkcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU -cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcRjcOTcOTcOTcOTcOTcOTcOTcRjcRjcQlcQlcQlcTTcUTcUTcUTcTUcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcTfcQlcRjcRjcOTcOTcOTcOTcOTcOTcOTcRjcRjcQlcQlcQlcQlcQlcTTcUTcUTcUTcVCcVDcUTcUTcUTcTUcQlcQlcQlcQlcWgcZScZLdaYdaZcWgdbadaNdaNdbbdbccWgdbddaidbfcWgcQlcQlcQlcQlcQlcQlcOZcOZcOZcOZcOZcOZcOZdbgdbgdbgdbgdbgcOZcOUcOUcXTdbhdbicZzdcrdcncUQdaAdaAdbmdaAdaBcXTcQlcQlcQlcQlcQlcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU +cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcRjcOTcOTcOTcOTcOTcOTcOTcRjcRjcQlcQlcQlcTTcUTcUTcUTcTUcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcQlcTfcQlcRjcRjcOTcOTcOTcOTcOTcOTcOTcRjcRjcQlcQlcQlcQlcQlcTTcUTcUTcUTcVCcVDcUTcUTcUTcTUcQlcQlcQlcQlcWgcZLcSKdaYdaZcWgdbadaNdaNdbbdbccWgdbddaidbfcWgcQlcQlcQlcQlcQlcQlcOZcOZcOZcOZcOZcOZcOZdbgdbgdbgdbgdbgcOZcOUcOUcXTdbhdbicZzdcrdcncUQdaAdaAdbmdaAdaBcXTcQlcQlcQlcQlcQlcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcRjcRjcRjcOTcOTcOTcOEcOEcOTcOTcOTcRjcRjcRjcQlcQlcQlcQlcQlcTTcTUcQlcQlcVrcSJcQlcQlcVvcUTcUTcUTcUTcUTcVwcQlcRjcOTcOTcOTcOTcOTcOTcOTcOTcOTcRjcRjcRjcQlcQlcQlcQlcQlcQlcQlcSEcSGcQlcQlcQlcTfcQlcQlcQlcQlcZqcWgcWgcWgcWgcWgdbndbodbpdbqdbccWgdaodajdaocWgcQlcQlcQlcQlcQlcQlcOUcOUcOZcOUcOUcOUcOZdbgdbgdbgdbgdbgcOZcOUcYmcXVdbsdbtdbucXTcXTcXTcXTcXTcXTdbvcYEcXTcQlcQlcQlcQlcQlcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcRjcRjcRjcRjcQlcQlcQlcQlcRjcRjcRjcOTcOTcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcRjcRjcRjcQlcQlcQlcQlcTTcUTcUTcVCcVDcUTcUTcVwcQlcQlcQlcQlcQlcQlcQlcRjcOTcOTcOTcOTcOTcOTcOEcOEcOTcOTcOTcRjcRjcRjcRjcQlcQlcQlcQlcQlcQlcQlcQlcQlcTTcUTcUTcTUcQlcQlcQlcQlcQlcQlcZqcWgcWgcWgcWgcWgcZqdbxdbxcXvdatcQlcQlcQlcQlcQlcOUcOUcOUcOZcOUcOUcOUcOZdbgdbgdbgdbgdbgdbAcYUdbBdbCcYodbDcZzdaCdaCdbGdbHdbIdbJdbKdbwcXTcQlcQlcQlcQlcRjcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU cOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOTcOTcOTcOTcOTcOTcOTcRjcRjcRjcRjcRjcRjcOTcOTcOTcOTcOEcOEcOEcOEcOEcOEcOEcOEcOTcOTcOTcOTcRjcRjcRjcRjcQlcQlcQlcQlcSEcSGcQlcQlcQlcQlcQlcQlcRjcRjcRjcRjcRjcOTcOTcOTcOTcOTcOTcOEcOEcOEcOTcOTcOTcOTcOTcRjcRjcRjcRjcRjcRjcRjcRjcQlcQlcQlcQlcQlcTfcQlcQlcQlcQlcQlcQlcQlcQlcSEcSFcSFcSFcSFcSFcSFcSGcQlcQlcQlcQlcQlcQlcOZcOZcOZcOZcOZcOZcOZcOZdbgdbgdbgdbgdbgdbOcYodbOcYocYodbDcZzcYocYodbPcYocYodbQdbRcUicXTcQlcQlcQlcQlcRjcRjcRjcRjcRkcRkcRkcRkcRkcRkcRkcRjcRjcRjcRjcRjcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOUcOU diff --git a/_maps/metastation.dm b/_maps/metastation.dm index 012c3254783..c8d49a8b6cc 100644 --- a/_maps/metastation.dm +++ b/_maps/metastation.dm @@ -1,8 +1,8 @@ #if !defined(MAP_FILE) - #include "map_files\MetaStation.v39F.dmm" + #include "map_files\MetaStation.v39G.dmm" - #define MAP_FILE "MetaStation.v39F.dmm" + #define MAP_FILE "MetaStation.v39G.dmm" #define MAP_NAME "MetaStation" #elif !defined(MAP_OVERRIDE) diff --git a/cfg/admin.txt b/cfg/admin.txt new file mode 100644 index 00000000000..cff055d6101 --- /dev/null +++ b/cfg/admin.txt @@ -0,0 +1,13 @@ +################################################################################### +# This is a list of ckeys authorized to use client-side debug options: # +# Profile, Reboot, Resume, Status, and Trace-client # +# Of these, Profile is the most relevant as it allows you to easily # +# retrieve information regarding the game's processing. # +# If a ckey is on this list, and has proper admin privledges, # +# they will be able to right-click the top of the client to access these options. # # +# Case is not important for ckey. # +################################################################################### +aranclanos +cheridan +giacomand +rockdtben diff --git a/code/ATMOSPHERICS/components/trinary_devices/filter.dm b/code/ATMOSPHERICS/components/trinary_devices/filter.dm index 31ffc3bfcd1..34757072946 100644 --- a/code/ATMOSPHERICS/components/trinary_devices/filter.dm +++ b/code/ATMOSPHERICS/components/trinary_devices/filter.dm @@ -10,7 +10,7 @@ obj/machinery/atmospherics/trinary/filter can_unwrench = 1 var/on = 0 - var/temp = null // -- TLE + var/temp = null var/target_pressure = ONE_ATMOSPHERE @@ -138,7 +138,7 @@ Filter types: set_frequency(frequency) return ..() -obj/machinery/atmospherics/trinary/filter/attack_hand(user as mob) // -- TLE +obj/machinery/atmospherics/trinary/filter/attack_hand(user as mob) if(..()) return @@ -191,7 +191,7 @@ obj/machinery/atmospherics/trinary/filter/attack_hand(user as mob) // -- TLE onclose(user, "atmo_filter") return -obj/machinery/atmospherics/trinary/filter/Topic(href, href_list) // -- TLE +obj/machinery/atmospherics/trinary/filter/Topic(href, href_list) if(..()) return usr.set_machine(src) diff --git a/code/ATMOSPHERICS/components/unary/vent_pump.dm b/code/ATMOSPHERICS/components/unary/vent_pump.dm index 88d84dfdce5..546e0e5b144 100644 --- a/code/ATMOSPHERICS/components/unary/vent_pump.dm +++ b/code/ATMOSPHERICS/components/unary/vent_pump.dm @@ -24,7 +24,7 @@ //2: Do not pass internal_pressure_bound //3: Do not pass either - var/welded = 0 // Added for aliens -- TLE + var/welded = 0 var/frequency = 1439 var/datum/radio_frequency/radio_connection diff --git a/code/LINDA/LINDA_fire.dm b/code/LINDA/LINDA_fire.dm index 6b37fb0e9d9..45e059dd505 100644 --- a/code/LINDA/LINDA_fire.dm +++ b/code/LINDA/LINDA_fire.dm @@ -95,7 +95,7 @@ return if(location.excited_group) - location.excited_group.breakdown = 0 + location.excited_group.reset_cooldowns() if((temperature < FIRE_MINIMUM_TEMPERATURE_TO_EXIST) || (volume <= 1)) Kill() diff --git a/code/LINDA/LINDA_turf_tile.dm b/code/LINDA/LINDA_turf_tile.dm index ac1956fe21c..6ef7d790470 100644 --- a/code/LINDA/LINDA_turf_tile.dm +++ b/code/LINDA/LINDA_turf_tile.dm @@ -287,7 +287,6 @@ atom/movable/proc/experience_pressure_difference(pressure_difference, direction) /datum/excited_group var/list/turf_list = list() - var/breakdown = 0 var/breakdown_cooldown = 0 /datum/excited_group/New() diff --git a/code/WorkInProgress/Sigyn/Softcurity/access.dm b/code/WorkInProgress/Sigyn/Softcurity/access.dm index e6095036152..f0d8fc640a9 100644 --- a/code/WorkInProgress/Sigyn/Softcurity/access.dm +++ b/code/WorkInProgress/Sigyn/Softcurity/access.dm @@ -74,7 +74,6 @@ /var/const/access_cent_living = 105//Living quarters. /var/const/access_cent_storage = 106//Generic storage areas. /var/const/access_cent_teleporter = 107//Teleporter. -/var/const/access_cent_creed = 108//Creed's office. /var/const/access_cent_captain = 109//Captain's office/ID comp/AI. //The Syndicate @@ -198,11 +197,11 @@ return list(access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels, access_court) if("Medical Doctor") return list(access_medical, access_morgue, access_surgery) - if("Botanist") // -- TLE + if("Botanist") return list(access_hydroponics, access_morgue) // Removed tox and chem access because STOP PISSING OFF THE CHEMIST GUYS // //Removed medical access because WHAT THE FUCK YOU AREN'T A DOCTOR YOU GROW WHEAT //Given Morgue access because they have a viable means of cloning. - if("Librarian") // -- TLE + if("Librarian") return list(access_library) - if("Lawyer") //Muskets 160910 + if("Lawyer") return list(access_lawyer, access_court, access_sec_doors) if("Captain") return get_all_accesses() @@ -283,7 +282,7 @@ if("Research Officer") return list(access_cent_general, access_cent_specops, access_cent_medical, access_cent_teleporter, access_cent_storage) if("BlackOps Commander") - return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_living, access_cent_storage, access_cent_creed) + return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_living, access_cent_storage) if("Supreme Commander") return get_all_centcom_access() @@ -301,7 +300,7 @@ access_keycard_auth, access_tcomsat, access_gateway) /proc/get_all_centcom_access() - return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_medical, access_cent_living, access_cent_storage, access_cent_teleporter, access_cent_creed, access_cent_captain) + return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_medical, access_cent_living, access_cent_storage, access_cent_teleporter, access_cent_captain) /proc/get_all_syndicate_access() return list(access_syndicate) @@ -490,8 +489,6 @@ return "Code Blue" if(access_cent_specops) return "Code Black" - if(access_cent_creed) - return "Code Silver" if(access_cent_captain) return "Code Gold" diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index a11ae456196..4914323883c 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -1,403 +1,389 @@ -//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 - -/proc/get_area(O) - var/atom/location = O - var/i - for(i=1, i<=20, i++) - if(isarea(location)) - return location - else if (istype(location)) - location = location.loc - else - return null - return 0 - -/proc/get_area_master(O) - var/area/A = get_area(O) - if(A && A.master) - A = A.master - return A - -/proc/get_area_name(N) //get area by its name - for(var/area/A in world) - if(A.name == N) - return A - return 0 - -/proc/in_range(source, user) - if(get_dist(source, user) <= 1) - return 1 - - return 0 //not in range and not telekinetic - -// Like view but bypasses luminosity check - -/proc/hear(var/range, var/atom/source) - - var/lum = source.luminosity - source.luminosity = 6 - - var/list/heard = view(range, source) - source.luminosity = lum - - return heard - -/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_master(the_area) - for(var/C in living_mob_list) - if(!istype(C, check_type)) - continue - if(C == must_be_alone) - continue - if(our_area == get_area_master(C)) - return 0 - return 1 - - -//Magic constants obtained by using linear regression on right-angled triangles of sides 0=dy) return (k1*dx) + (k2*dy) //No sqrt or powers :) - else return (k2*dx) + (k1*dy) -#undef k1 -#undef k2 - -/proc/circlerange(center=usr,radius=3) - - var/turf/centerturf = get_turf(center) - var/list/turfs = new/list() - var/rsq = radius * (radius+0.5) - - for(var/atom/T in range(radius, centerturf)) - var/dx = T.x - centerturf.x - var/dy = T.y - centerturf.y - if(dx*dx + dy*dy <= rsq) - turfs += T - - //turfs += centerturf - return turfs - -/proc/circleview(center=usr,radius=3) - - var/turf/centerturf = get_turf(center) - var/list/atoms = new/list() - var/rsq = radius * (radius+0.5) - - for(var/atom/A in view(radius, centerturf)) - var/dx = A.x - centerturf.x - var/dy = A.y - centerturf.y - if(dx*dx + dy*dy <= rsq) - atoms += A - - //turfs += centerturf - return atoms - -/proc/get_dist_euclidian(atom/Loc1 as turf|mob|obj,atom/Loc2 as turf|mob|obj) - var/dx = Loc1.x - Loc2.x - var/dy = Loc1.y - Loc2.y - - var/dist = sqrt(dx**2 + dy**2) - - return dist - -/proc/circlerangeturfs(center=usr,radius=3) - - var/turf/centerturf = get_turf(center) - var/list/turfs = new/list() - var/rsq = radius * (radius+0.5) - - for(var/turf/T in range(radius, centerturf)) - var/dx = T.x - centerturf.x - var/dy = T.y - centerturf.y - if(dx*dx + dy*dy <= rsq) - turfs += T - return turfs - -/proc/circleviewturfs(center=usr,radius=3) //Is there even a diffrence between this proc and circlerangeturfs()? - - var/turf/centerturf = get_turf(center) - var/list/turfs = new/list() - var/rsq = radius * (radius+0.5) - - for(var/turf/T in view(radius, centerturf)) - var/dx = T.x - centerturf.x - var/dy = T.y - centerturf.y - if(dx*dx + dy*dy <= rsq) - turfs += T - return turfs - - - -//var/debug_mob = 0 - -// Better recursive loop, technically sort of not actually recursive cause that shit is retarded, enjoy. -//No need for a recursive limit either - - -proc/recursive_mob_check(var/atom/O, var/client_check=1, var/sight_check=1, var/include_radio=1) - - var/list/processing_list = list(O) - var/list/processed_list = list() - var/list/found_mobs = list() - - if(!O.contents.len) - return found_mobs - - while(processing_list.len) - - var/atom/A = processing_list[1] - - var/passed = 1 - - if(ismob(A)) - var/mob/A_tmp = A - - if(client_check && !A_tmp.client) - passed=0 - - if(A_tmp && sight_check && !isInSight(A_tmp, O)) - passed=0 - - else if(include_radio && istype(A, /obj/item/device/radio)) - if(sight_check && !isInSight(A, O)) - passed=0 - - else passed = 0 - - if(passed) - if(!(A in found_mobs)) found_mobs += A - - for(var/atom/B in A) - if(!(B in processed_list) && (istype(A, /obj/item/device/radio)||ismob(B)) ) - processing_list += B - - processing_list-=A - processed_list += A - - return found_mobs - - - -/proc/get_mobs_in_view(var/R, var/atom/source) - // Returns a list of mobs in range of R from source. Used in radio and say code. - - var/turf/T = get_turf(source) - var/list/hear = list() - - if(!T) - return hear - - var/list/range = hear(R, T) - - for(var/atom/A in range) - - /*if(ismob(A)) - var/mob/M = A - if(M.client) - hear += M - //world.log << "Start = [M] - [get_turf(M)] - ([M.x], [M.y], [M.z])" - else if(istype(A, /obj/item/device/radio)) - hear += A*/ - - if(isobj(A) || ismob(A)) - hear += recursive_mob_check(A, 1, 0, 1) - - return hear - - - -/proc/get_mobs_in_radio_ranges(var/list/obj/item/device/radio/radios) - - set background = BACKGROUND_ENABLED - - . = list() - // Returns a list of mobs who can hear any of the radios given in @radios - var/list/speaker_coverage = list() - for(var/i = 1; i <= radios.len; i++) - var/obj/item/device/radio/R = radios[i] - if(R) - var/turf/speaker = get_turf(R) - if(speaker) - for(var/turf/T in hear(R.canhear_range,speaker)) - speaker_coverage[T] = T - - - // Try to find all the players who can hear the message - for(var/i = 1; i <= player_list.len; i++) - var/mob/M = player_list[i] - if(M) - var/turf/ear = get_turf(M) - if(ear) - if(speaker_coverage[ear]) - . |= M - return . - -#define SIGN(X) ((X<0)?-1:1) - -proc - inLineOfSight(X1,Y1,X2,Y2,Z=1,PX1=16.5,PY1=16.5,PX2=16.5,PY2=16.5) - var/turf/T - if(X1==X2) - if(Y1==Y2) - return 1 //Light cannot be blocked on same tile - else - var/s = SIGN(Y2-Y1) - Y1+=s - while(Y1!=Y2) - T=locate(X1,Y1,Z) - if(T.opacity) - return 0 - Y1+=s - else - var/m=(32*(Y2-Y1)+(PY2-PY1))/(32*(X2-X1)+(PX2-PX1)) - var/b=(Y1+PY1/32-0.015625)-m*(X1+PX1/32-0.015625) //In tiles - var/signX = SIGN(X2-X1) - var/signY = SIGN(Y2-Y1) - if(X1 abs (dx)) //slope is above 1:1 (move horizontally in a tie) - if(dy > 0) - return get_step(start, SOUTH) - else - return get_step(start, NORTH) - else - if(dx > 0) - return get_step(start, WEST) - else - return get_step(start, EAST) - -/proc/try_move_adjacent(atom/movable/AM) - var/turf/T = get_turf(AM) - for(var/direction in cardinal) - if(AM.Move(get_step(T, direction))) - break - -/proc/get_mob_by_key(var/key) - for(var/mob/M in mob_list) - if(M.ckey == lowertext(key)) - return M - return null - -// Will return a list of active candidates. It increases the buffer 5 times until it finds a candidate which is active within the buffer. - -/proc/get_candidates(be_special_flag=0, afk_bracket=3000) - 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) - if(G.client != null) - if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD)) - if(!G.client.is_afk(afk_bracket) && (G.client.prefs.be_special & be_special_flag)) - candidates += G.client - afk_bracket += 600 // Add a minute to the bracket, for every attempt - return candidates - -/proc/ScreenText(obj/O, maptext="", screen_loc="CENTER-7,CENTER-7", maptext_height=480, maptext_width=480) - if(!isobj(O)) O = new /obj/screen/text() - O.maptext = maptext - O.maptext_height = maptext_height - O.maptext_width = maptext_width - O.screen_loc = screen_loc - return O - -/proc/Show2Group4Delay(obj/O, list/group, delay=0) - if(!isobj(O)) return - if(!group) group = clients - for(var/client/C in group) - C.screen += O - if(delay) - spawn(delay) - for(var/client/C in group) - C.screen -= O - -/proc/flick_overlay(image/I, list/show_to, duration) - for(var/client/C in show_to) - C.images += I - sleep(duration) - for(var/client/C in show_to) - C.images -= I - -/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] - if(M && M.client) - if(istype(M, /mob/new_player)) // exclude people in the lobby - continue - else if(isobserver(M)) // Ghosts are fine if they were playing once (didn't start as observers) - var/mob/dead/observer/O = M - if(O.started_as_observer) // Exclude people who started as observers - continue - active_players++ - return active_players - -/datum/projectile_data - var/src_x - var/src_y - var/time - var/distance - var/power_x - var/power_y - var/dest_x - var/dest_y - -/datum/projectile_data/New(var/src_x, var/src_y, var/time, var/distance, \ - var/power_x, var/power_y, var/dest_x, var/dest_y) - src.src_x = src_x - src.src_y = src_y - src.time = time - src.distance = distance - src.power_x = power_x - src.power_y = power_y - src.dest_x = dest_x - src.dest_y = dest_y - -/proc/projectile_trajectory(var/src_x, var/src_y, var/rotation, var/angle, var/power) - - // returns the destination (Vx,y) that a projectile shot at [src_x], [src_y], with an angle of [angle], - // rotated at [rotation] and with the power of [power] - // Thanks to VistaPOWA for this function - - var/power_x = power * cos(angle) - var/power_y = power * sin(angle) - var/time = 2* power_y / 10 //10 = g - - var/distance = time * power_x - - var/dest_x = src_x + distance*sin(rotation); - var/dest_y = src_y + distance*cos(rotation); - - return new /datum/projectile_data(src_x, src_y, time, distance, power_x, power_y, dest_x, dest_y) +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 + +/proc/get_area(O) + var/atom/location = O + var/i + for(i=1, i<=20, i++) + if(isarea(location)) + return location + else if (istype(location)) + location = location.loc + else + return null + return 0 + +/proc/get_area_master(O) + var/area/A = get_area(O) + if(A && A.master) + A = A.master + return A + +/proc/get_area_name(N) //get area by its name + for(var/area/A in world) + if(A.name == N) + return A + return 0 + +/proc/in_range(source, user) + if(get_dist(source, user) <= 1) + return 1 + + return 0 //not in range and not telekinetic + +// Like view but bypasses luminosity check + +/proc/hear(var/range, var/atom/source) + + var/lum = source.luminosity + source.luminosity = 6 + + var/list/heard = view(range, source) + source.luminosity = lum + + return heard + +/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_master(the_area) + for(var/C in living_mob_list) + if(!istype(C, check_type)) + continue + if(C == must_be_alone) + continue + if(our_area == get_area_master(C)) + return 0 + return 1 + + +//Magic constants obtained by using linear regression on right-angled triangles of sides 0=dy) return (k1*dx) + (k2*dy) //No sqrt or powers :) + else return (k2*dx) + (k1*dy) +#undef k1 +#undef k2 + +/proc/circlerange(center=usr,radius=3) + + var/turf/centerturf = get_turf(center) + var/list/turfs = new/list() + var/rsq = radius * (radius+0.5) + + for(var/atom/T in range(radius, centerturf)) + var/dx = T.x - centerturf.x + var/dy = T.y - centerturf.y + if(dx*dx + dy*dy <= rsq) + turfs += T + + //turfs += centerturf + return turfs + +/proc/circleview(center=usr,radius=3) + + var/turf/centerturf = get_turf(center) + var/list/atoms = new/list() + var/rsq = radius * (radius+0.5) + + for(var/atom/A in view(radius, centerturf)) + var/dx = A.x - centerturf.x + var/dy = A.y - centerturf.y + if(dx*dx + dy*dy <= rsq) + atoms += A + + //turfs += centerturf + return atoms + +/proc/get_dist_euclidian(atom/Loc1 as turf|mob|obj,atom/Loc2 as turf|mob|obj) + var/dx = Loc1.x - Loc2.x + var/dy = Loc1.y - Loc2.y + + var/dist = sqrt(dx**2 + dy**2) + + return dist + +/proc/circlerangeturfs(center=usr,radius=3) + + var/turf/centerturf = get_turf(center) + var/list/turfs = new/list() + var/rsq = radius * (radius+0.5) + + for(var/turf/T in range(radius, centerturf)) + var/dx = T.x - centerturf.x + var/dy = T.y - centerturf.y + if(dx*dx + dy*dy <= rsq) + turfs += T + return turfs + +/proc/circleviewturfs(center=usr,radius=3) //Is there even a diffrence between this proc and circlerangeturfs()? + + var/turf/centerturf = get_turf(center) + var/list/turfs = new/list() + var/rsq = radius * (radius+0.5) + + for(var/turf/T in view(radius, centerturf)) + var/dx = T.x - centerturf.x + var/dy = T.y - centerturf.y + if(dx*dx + dy*dy <= rsq) + turfs += T + return turfs + + + +//var/debug_mob = 0 + +// Better recursive loop, technically sort of not actually recursive cause that shit is retarded, enjoy. +//No need for a recursive limit either + + +proc/recursive_mob_check(var/atom/O,var/client_check=1,var/sight_check=1,var/include_radio=1) + + var/list/processing_list = list(O) + var/list/processed_list = list() + var/list/found_mobs = list() + + while(processing_list.len) + + var/atom/A = processing_list[1] + var/passed = 0 + + if(ismob(A)) + var/mob/A_tmp = A + passed=1 + + if(client_check && !A_tmp.client) + passed=0 + + if(sight_check && !isInSight(A_tmp, O)) + passed=0 + + else if(include_radio && istype(A, /obj/item/device/radio)) + passed=1 + + if(sight_check && !isInSight(A, O)) + passed=0 + + if(passed) + found_mobs |= A + + for(var/atom/B in A) + if(!(B in processed_list)) + processing_list |= B + + processing_list -= A + processed_list |= A + + return found_mobs + + +proc/get_mobs_in_view(var/R, var/atom/source) + // Returns a list of mobs in range of R from source. Used in radio and say code. + + var/turf/T = get_turf(source) + var/list/hear = list() + + if(!T) + return hear + + var/list/range = hear(R, T) + + for(var/atom/movable/A in range) + hear |= recursive_mob_check(A, 1, 0, 1) + + return hear + + + +/proc/get_mobs_in_radio_ranges(var/list/obj/item/device/radio/radios) + + set background = BACKGROUND_ENABLED + + . = list() + // Returns a list of mobs who can hear any of the radios given in @radios + var/list/speaker_coverage = list() + for(var/i = 1; i <= radios.len; i++) + var/obj/item/device/radio/R = radios[i] + if(R) + var/turf/speaker = get_turf(R) + if(speaker) + for(var/turf/T in hear(R.canhear_range,speaker)) + speaker_coverage[T] = T + + + // Try to find all the players who can hear the message + for(var/i = 1; i <= player_list.len; i++) + var/mob/M = player_list[i] + if(M) + var/turf/ear = get_turf(M) + if(ear) + if(speaker_coverage[ear]) + . |= M + return . + +#define SIGN(X) ((X<0)?-1:1) + +proc + inLineOfSight(X1,Y1,X2,Y2,Z=1,PX1=16.5,PY1=16.5,PX2=16.5,PY2=16.5) + var/turf/T + if(X1==X2) + if(Y1==Y2) + return 1 //Light cannot be blocked on same tile + else + var/s = SIGN(Y2-Y1) + Y1+=s + while(Y1!=Y2) + T=locate(X1,Y1,Z) + if(T.opacity) + return 0 + Y1+=s + else + var/m=(32*(Y2-Y1)+(PY2-PY1))/(32*(X2-X1)+(PX2-PX1)) + var/b=(Y1+PY1/32-0.015625)-m*(X1+PX1/32-0.015625) //In tiles + var/signX = SIGN(X2-X1) + var/signY = SIGN(Y2-Y1) + if(X1 abs (dx)) //slope is above 1:1 (move horizontally in a tie) + if(dy > 0) + return get_step(start, SOUTH) + else + return get_step(start, NORTH) + else + if(dx > 0) + return get_step(start, WEST) + else + return get_step(start, EAST) + +/proc/try_move_adjacent(atom/movable/AM) + var/turf/T = get_turf(AM) + for(var/direction in cardinal) + if(AM.Move(get_step(T, direction))) + break + +/proc/get_mob_by_key(var/key) + for(var/mob/M in mob_list) + if(M.ckey == lowertext(key)) + return M + return null + +// Will return a list of active candidates. It increases the buffer 5 times until it finds a candidate which is active within the buffer. + +/proc/get_candidates(be_special_flag=0, afk_bracket=3000) + 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) + if(G.client != null) + if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD)) + if(!G.client.is_afk(afk_bracket) && (G.client.prefs.be_special & be_special_flag)) + candidates += G.client + afk_bracket += 600 // Add a minute to the bracket, for every attempt + return candidates + +/proc/ScreenText(obj/O, maptext="", screen_loc="CENTER-7,CENTER-7", maptext_height=480, maptext_width=480) + if(!isobj(O)) O = new /obj/screen/text() + O.maptext = maptext + O.maptext_height = maptext_height + O.maptext_width = maptext_width + O.screen_loc = screen_loc + return O + +/proc/Show2Group4Delay(obj/O, list/group, delay=0) + if(!isobj(O)) return + if(!group) group = clients + for(var/client/C in group) + C.screen += O + if(delay) + spawn(delay) + for(var/client/C in group) + C.screen -= O + +/proc/flick_overlay(image/I, list/show_to, duration) + for(var/client/C in show_to) + C.images += I + sleep(duration) + for(var/client/C in show_to) + C.images -= I + +/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] + if(M && M.client) + if(istype(M, /mob/new_player)) // exclude people in the lobby + continue + else if(isobserver(M)) // Ghosts are fine if they were playing once (didn't start as observers) + var/mob/dead/observer/O = M + if(O.started_as_observer) // Exclude people who started as observers + continue + active_players++ + return active_players + +/datum/projectile_data + var/src_x + var/src_y + var/time + var/distance + var/power_x + var/power_y + var/dest_x + var/dest_y + +/datum/projectile_data/New(var/src_x, var/src_y, var/time, var/distance, \ + var/power_x, var/power_y, var/dest_x, var/dest_y) + src.src_x = src_x + src.src_y = src_y + src.time = time + src.distance = distance + src.power_x = power_x + src.power_y = power_y + src.dest_x = dest_x + src.dest_y = dest_y + +/proc/projectile_trajectory(var/src_x, var/src_y, var/rotation, var/angle, var/power) + + // returns the destination (Vx,y) that a projectile shot at [src_x], [src_y], with an angle of [angle], + // rotated at [rotation] and with the power of [power] + // Thanks to VistaPOWA for this function + + var/power_x = power * cos(angle) + var/power_y = power * sin(angle) + var/time = 2* power_y / 10 //10 = g + + var/distance = time * power_x + + var/dest_x = src_x + distance*sin(rotation); + var/dest_y = src_y + distance*cos(rotation); + + return new /datum/projectile_data(src_x, src_y, time, distance, power_x, power_y, dest_x, dest_y) diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index 84fb5f45cbc..9ab0003633a 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -39,3 +39,14 @@ if(path == prototype) continue L += new path() return L + +//returns a list of paths to every subtype of prototype (excluding prototype) +//if no list/L is provided, one is created. +/proc/init_paths(prototype, list/L) + if(!istype(L)) + L = list() + for(var/path in typesof(prototype)) + if(path == prototype) + continue + L+= path + return L diff --git a/code/__HELPERS/icons.dm b/code/__HELPERS/icons.dm index 93a2d7c7751..22e5ca79d9d 100644 --- a/code/__HELPERS/icons.dm +++ b/code/__HELPERS/icons.dm @@ -656,7 +656,7 @@ proc // Creates a single icon from a given /atom or /image. Only the first argu noIcon = TRUE // Do not render this object. var/curdir - if(A.dir) + if(A.dir != 2) curdir = A.dir else curdir = defdir diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 663d322410e..6b6b2b84c8f 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -256,7 +256,7 @@ Turf and target are seperate in case you want to teleport some distance from a t if(R) R.fields["name"] = newname //update our pda and id if we have them on our person - var/list/searching = GetAllContents(3) + var/list/searching = GetAllContents() var/search_id = 1 var/search_pda = 1 @@ -330,6 +330,10 @@ Turf and target are seperate in case you want to teleport some distance from a t A.aiPDA.owner = newname A.aiPDA.name = newname + " (" + A.aiPDA.ownjob + ")" + if(cmptext("cyborg",role)) + if(isrobot(src)) + var/mob/living/silicon/robot/A = src + A.custom_name = newname fully_replace_character_name(oldname,newname) @@ -596,7 +600,6 @@ proc/anim(turf/location as turf,target as mob|obj,a_icon,a_icon_state as text,fl atom/proc/GetAllContents() var/list/processing_list = list(src) - var/list/processed = list() var/list/assembled = list() while(processing_list.len) @@ -604,14 +607,14 @@ atom/proc/GetAllContents() processing_list -= A for(var/atom/a in A) - if(!(a in processed)) - processing_list += a + if(!(a in assembled)) + processing_list |= a - if(!(A in assembled)) - assembled += A + assembled |= A return assembled + atom/proc/GetTypeInAllContents(typepath) var/list/processing_list = list(src) var/list/processed = list() @@ -627,10 +630,9 @@ atom/proc/GetTypeInAllContents(typepath) for(var/atom/a in A) if(!(a in processed)) - processing_list += a + processing_list |= a - if(!(A in processed)) - processed += A + processed |= A return found @@ -1288,4 +1290,4 @@ proc/check_target_facings(mob/living/initator, mob/living/target) if(initator.dir + 4 == target.dir || initator.dir - 4 == target.dir) //mobs are facing each other return 2 if(initator.dir + 2 == target.dir || initator.dir - 2 == target.dir || initator.dir + 6 == target.dir || initator.dir - 6 == target.dir) //Initating mob is looking at the target, while the target mob is looking in a direction perpendicular to the 1st - return 3 + return 3 diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm index fc444ac69b8..ea330a5abf4 100644 --- a/code/controllers/configuration.dm +++ b/code/controllers/configuration.dm @@ -53,7 +53,7 @@ var/server var/banappeals - var/wikiurl = "http://wiki.ss13.eu" // Default wiki link. + var/wikiurl = "http://www.ss13.eu/wiki" // Default wiki link. var/forumurl var/forbid_singulo_possession = 0 @@ -98,6 +98,8 @@ var/revival_cloning = 1 var/revival_brain_life = -1 + var/rename_cyborg = 0 + //Used for modifying movement speed for mobs. //Unversal modifiers var/run_speed = 0 @@ -277,6 +279,8 @@ config.revival_cloning = text2num(value) if("revival_brain_life") config.revival_brain_life = text2num(value) + if("rename_cyborg") + config.rename_cyborg = 1 if("run_delay") config.run_speed = text2num(value) if("walk_delay") @@ -371,7 +375,7 @@ else diary << "Unknown setting in configuration: '[name]'" -/datum/configuration/proc/loadsql(filename) // -- TLE +/datum/configuration/proc/loadsql(filename) var/list/Lines = file2list(filename) for(var/t in Lines) if(!t) continue diff --git a/code/controllers/shuttle_controller.dm b/code/controllers/shuttle_controller.dm index acefa9c1d93..c33ccc2a00e 100644 --- a/code/controllers/shuttle_controller.dm +++ b/code/controllers/shuttle_controller.dm @@ -98,7 +98,7 @@ datum/shuttle_controller for(var/SC in shuttle_caller_list) if(istype(SC,/mob/living/silicon/ai)) var/mob/living/silicon/ai/AI = SC - if(AI.stat && !AI.client) + if(AI.stat || !AI.client) continue var/turf/T = get_turf(SC) if(T && T.z == 1) @@ -111,8 +111,8 @@ datum/shuttle_controller if(callshuttle) if(!online && direction == 1) //we don't call the shuttle if it's already coming incall(SHUTTLEAUTOCALLTIMER) //X minutes! If they want to recall, they have X-(X-5) minutes to do so - log_game("All the AIs, comm consoles and boards are destroyed. Shuttle called.") - message_admins("All the AIs, comm consoles and boards are destroyed. Shuttle called.", 1) + log_game("All the communications consoles were destroyed and all AIs are inactive. Shuttle called.") + message_admins("All the communications consoles were destroyed and all AIs are inactive. Shuttle called.", 1) captain_announce("The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes.") world << sound('sound/AI/shuttlecalled.ogg') diff --git a/code/datums/diseases/advance/symptoms/genetics.dm b/code/datums/diseases/advance/symptoms/genetics.dm new file mode 100644 index 00000000000..11a580dce5f --- /dev/null +++ b/code/datums/diseases/advance/symptoms/genetics.dm @@ -0,0 +1,81 @@ +/* +////////////////////////////////////// + +DNA Saboteur + + Very noticable. + Lowers resistance tremendously. + No changes to stage speed. + Decreases transmittablity temrendously. + Fatal Level. + +Bonus + Cleans the DNA of a person and then randomly gives them a disability. + +////////////////////////////////////// +*/ + +/datum/symptom/genetic_mutation + + name = "Deoxyribonucleic Acid Saboteur" + stealth = -2 + resistance = -3 + stage_speed = 0 + transmittable = -3 + level = 6 + var/good_mutations = 0 + var/archived_dna = null + +/datum/symptom/genetic_mutation/Activate(var/datum/disease/advance/A) + ..() + if(prob(SYMPTOM_ACTIVATION_PROB)) + var/mob/living/M = A.affected_mob + switch(A.stage) + if(4, 5) + M << "[pick("Your skin feels itchy.", "You feel light headed.")]" + clean_randmut(M, good_mutations == 1 ? (good_se_blocks | op_se_blocks) : bad_se_blocks, 20) // Give them a random good/bad mutation. + domutcheck(M, null, 1) // Force the power to manifest + return + +// Archive their DNA before they were infected. +/datum/symptom/genetic_mutation/Start(var/datum/disease/advance/A) + var/mob/living/carbon/M = A.affected_mob + if(M) + if(!check_dna_integrity(M)) + return + archived_dna = M.dna.struc_enzymes + +// Give them back their old DNA when cured. +/datum/symptom/genetic_mutation/End(var/datum/disease/advance/A) + var/mob/living/carbon/M = A.affected_mob + if(M && archived_dna) + if(!check_dna_integrity(M)) + return + hardset_dna(M, se = archived_dna) + +/* +////////////////////////////////////// + +DNA Aide + + Very very noticable. + Lowers resistance tremendously. + No changes to stage speed. + Decreases transmittablity temrendously. + Fatal Level. + +Bonus + Cleans the DNA of a person and then randomly gives them a power.. + +////////////////////////////////////// +*/ + +/datum/symptom/genetic_mutation/powers + + name = "Deoxyribonucleic Acid Aide" + stealth = -3 + resistance = -4 + stage_speed = 0 + transmittable = -4 + level = 6 + good_mutations = 1 \ No newline at end of file diff --git a/code/datums/diseases/dna_spread.dm b/code/datums/diseases/dna_spread.dm index 49bdb4caa1d..9aa2c6c1fec 100644 --- a/code/datums/diseases/dna_spread.dm +++ b/code/datums/diseases/dna_spread.dm @@ -56,10 +56,11 @@ /datum/disease/dnaspread/Del() if ((original_dna["name"]) && (original_dna["UI"]) && (original_dna["SE"])) - affected_mob.dna.uni_identity = original_dna["UI"] - updateappearance(affected_mob) - affected_mob.dna.struc_enzymes = original_dna["SE"] - affected_mob.real_name = original_dna["name"] + if(affected_mob) + affected_mob.dna.uni_identity = original_dna["UI"] + updateappearance(affected_mob) + affected_mob.dna.struc_enzymes = original_dna["SE"] + affected_mob.real_name = original_dna["name"] - affected_mob << "\blue You feel more like yourself." + affected_mob << "\blue You feel more like yourself." ..() \ No newline at end of file diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 7f7f02918bb..effbae56975 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -64,14 +64,10 @@ datum/mind error("transfer_to(): Some idiot has tried to transfer_to() a non mob/living mob. Please inform Carn") if(current) //remove ourself from our old body's mind variable - if(changeling) - current.remove_changeling_powers() - current.verbs -= /datum/changeling/proc/EvolutionMenu current.mind = null nanomanager.user_transferred(current, new_character) - if(key) if(new_character.key != key) //if we're transfering into a body with a key associated which is not ours new_character.ghostize(1) //we'll need to ghostize so that key isn't mobless. @@ -84,10 +80,6 @@ datum/mind current = new_character //associate ourself with our new body new_character.mind = src //and associate our new body with ourself - if(changeling && istype(new_character, /mob/living/carbon)) //if we are a changeling mind, re-add any powers - var/mob/living/carbon/C = new_character - C.make_changeling() - if(active) new_character.key = key //now transfer the key to link the client to our new body @@ -672,8 +664,8 @@ datum/mind ticker.mode.changelings -= src special_role = null current.remove_changeling_powers() - current.verbs -= /datum/changeling/proc/EvolutionMenu - if(changeling) del(changeling) + if(changeling) + del(changeling) current << "You grow weak and lose your powers! You are no longer a changeling and are stuck in your current form!" message_admins("[key_name_admin(usr)] has de-changeling'ed [current].") log_admin("[key_name(usr)] has de-changeling'ed [current].") diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index e0461e98a30..48e76cbcd05 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -123,6 +123,14 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine cost = 10 containertype = /obj/structure/closet/crate containername = "firefighting crate" + +/datum/supply_packs/emergency/atmostank + name = "Firefighting Watertank" + contains = list(/obj/item/weapon/watertank/atmos) + cost = 10 + containertype = /obj/structure/closet/crate/secure + containername = "firefighting watertank crate" + access = access_atmospherics /datum/supply_packs/emergency/weedcontrol name = "Weed Control Crate" @@ -740,6 +748,14 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine cost = 15 containertype = /obj/structure/closet/crate/hydroponics containername = "hydroponics crate" + +/datum/supply_packs/misc/hydroponics/hydrotank + name = "Hydroponics Watertank Backpack Crate" + contains = list(/obj/item/weapon/watertank) + cost = 10 + containertype = /obj/structure/closet/crate/secure + containername = "hydroponics watertank crate" + access = access_hydroponics /datum/supply_packs/organic/hydroponics/seeds name = "Seeds Crate" @@ -961,6 +977,14 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine cost = 10 containertype = /obj/structure/largecrate containername = "janitorial cart crate" + +/datum/supply_packs/misc/janitor/janitank + name = "Janitor Watertank Backpack Crate" + contains = list(/obj/item/weapon/watertank/janitor) + cost = 10 + containertype = /obj/structure/closet/crate/secure + containername = "janitor watertank crate" + access = access_janitor /datum/supply_packs/misc/janitor/lightbulbs name = "Replacement lights" diff --git a/code/datums/wires/airlock.dm b/code/datums/wires/airlock.dm index 1ddb46ff271..57335f811e6 100644 --- a/code/datums/wires/airlock.dm +++ b/code/datums/wires/airlock.dm @@ -34,13 +34,13 @@ var/const/AIRLOCK_WIRE_LIGHT = 2048 /datum/wires/airlock/GetInteractWindow() var/obj/machinery/door/airlock/A = holder . += ..() - . += text("
\n[]
\n[]
\n[]
\n[]
\n[]
\n[]", (A.locked ? "The door bolts have fallen!" : "The door bolts look up."), + . += text("
\n[]
\n[]
\n[]
\n[]
\n[]
\n[]
\n[]", (A.locked ? "The door bolts have fallen!" : "The door bolts look up."), (A.lights ? "The door bolt lights are on." : "The door bolt lights are off!"), ((A.arePowerSystemsOn() && !(A.stat & NOPOWER)) ? "The test light is on." : "The test light is off!"), (A.aiControlDisabled==0 ? "The 'AI control allowed' light is on." : "The 'AI control allowed' light is off."), (A.safe==0 ? "The 'Check Wiring' light is on." : "The 'Check Wiring' light is off."), - (A.normalspeed==0 ? "The 'Check Timing Mechanism' light is on." : "The 'Check Timing Mechanism' light is off.")) - + (A.normalspeed==0 ? "The 'Check Timing Mechanism' light is on." : "The 'Check Timing Mechanism' light is off."), + (A.emergency==0 ? "The emergency lights are off." : "The emergency lights are on.")) /datum/wires/airlock/UpdateCut(var/index, var/mended) @@ -123,9 +123,12 @@ var/const/AIRLOCK_WIRE_LIGHT = 2048 var/obj/machinery/door/airlock/A = holder switch(index) if(AIRLOCK_WIRE_IDSCAN) - //Sending a pulse through this flashes the red light on the door (if the door has power). + //Sending a pulse through this disables emergency access and flashes the red light on the door (if the door has power). if((A.arePowerSystemsOn()) && (!(A.stat & NOPOWER)) && A.density) A.do_animate("deny") + if(A.emergency) + A.emergency = 0 + A.update_icon() if(AIRLOCK_WIRE_MAIN_POWER1 || AIRLOCK_WIRE_MAIN_POWER2) //Sending a pulse through either one causes a breaker to trip, disabling the door for 10 seconds if backup power is connected, or 1 minute if not (or until backup power comes back on, whichever is shorter). A.loseMainPower() diff --git a/code/game/area/Space Station 13 areas.dm b/code/game/area/Space Station 13 areas.dm index 7aa3c4120c3..a56343316ea 100644 --- a/code/game/area/Space Station 13 areas.dm +++ b/code/game/area/Space Station 13 areas.dm @@ -341,12 +341,12 @@ proc/process_ghost_teleport_locs() //EXTRA -/area/asteroid // -- TLE +/area/asteroid name = "\improper Asteroid" icon_state = "asteroid" requires_power = 0 -/area/asteroid/cave // -- TLE +/area/asteroid/cave name = "\improper Asteroid - Underground" icon_state = "cave" requires_power = 0 diff --git a/code/game/dna.dm b/code/game/dna.dm index abcb01f1375..f4c6530b7b8 100644 --- a/code/game/dna.dm +++ b/code/game/dna.dm @@ -154,33 +154,36 @@ /proc/randomize_radiation_accuracy(position_we_were_supposed_to_hit, radduration, number_of_blocks) return Wrap(round(position_we_were_supposed_to_hit + gaussian(0, RADIATION_ACCURACY_MULTIPLIER/radduration), 1), 1, number_of_blocks+1) -/proc/randmutb(mob/living/carbon/M) - if(!check_dna_integrity(M)) return - var/num - var/newdna - num = pick(bad_se_blocks) - newdna = setblock(M.dna.struc_enzymes, num, construct_block(2,2)) +/proc/randmut(mob/living/carbon/M, list/candidates, difficulty = 2) + if(!check_dna_integrity(M)) + return + var/num = pick(candidates) + var/newdna = setblock(M.dna.struc_enzymes, num, construct_block(difficulty,difficulty)) M.dna.struc_enzymes = newdna return +/proc/randmutb(mob/living/carbon/M) + return randmut(M, bad_se_blocks) + /proc/randmutg(mob/living/carbon/M) - if(!check_dna_integrity(M)) return - var/num - var/newdna - num = pick(good_se_blocks | op_se_blocks) - newdna = setblock(M.dna.struc_enzymes, num, construct_block(2,2)) - M.dna.struc_enzymes = newdna - return + return randmut(M, good_se_blocks | op_se_blocks) /proc/randmuti(mob/living/carbon/M) if(!check_dna_integrity(M)) return - var/num - var/newdna - num = rand(1, DNA_STRUC_ENZYMES_BLOCKS) - newdna = setblock(M.dna.uni_identity, num, random_string(DNA_BLOCK_SIZE, hex_characters)) + var/num = rand(1, DNA_STRUC_ENZYMES_BLOCKS) + var/newdna = setblock(M.dna.uni_identity, num, random_string(DNA_BLOCK_SIZE, hex_characters)) M.dna.uni_identity = newdna return +/proc/clean_dna(mob/living/carbon/M) + if(!check_dna_integrity(M)) + return + M.dna.struc_enzymes = M.dna.generate_struc_enzymes(M) // Give clean DNA. + +/proc/clean_randmut(mob/living/carbon/M, list/candidates, difficulty = 2) + clean_dna(M) + randmut(M, candidates, difficulty) + /proc/scramble_dna(mob/living/carbon/M, ui=FALSE, se=FALSE, probability) if(!check_dna_integrity(M)) return 0 @@ -852,14 +855,17 @@ if(buffer_slot["SE"]) I = new /obj/item/weapon/dnainjector(loc) I.fields = list("SE"=buffer_slot["SE"]) + I.damage_coeff = connected.damage_coeff if("ui") if(buffer_slot["UI"]) I = new /obj/item/weapon/dnainjector(loc) I.fields = list("UI"=buffer_slot["UI"]) + I.damage_coeff = connected.damage_coeff else if(buffer_slot["name"] && buffer_slot["UE"] && buffer_slot["blood_type"]) I = new /obj/item/weapon/dnainjector(loc) I.fields = list("name"=buffer_slot["name"], "UE"=buffer_slot["UE"], "blood_type"=buffer_slot["blood_type"]) + I.damage_coeff = connected.damage_coeff if(I) injectorready = 0 spawn(INJECTOR_TIMEOUT) @@ -971,3 +977,11 @@ proc/deconstruct_block(value, values, blocksize=DNA_BLOCK_SIZE) if(value > values) value = values return value + + +/datum/dna/proc/is_same_as(var/datum/dna/D) + if(uni_identity == D.uni_identity && struc_enzymes == D.struc_enzymes && real_name == D.real_name) + if(mutantrace == D.mutantrace && blood_type == D.blood_type) + return 1 + return 0 + diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index ef5ba5c8b98..2709071b448 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -223,6 +223,7 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon" var/chem_charges = 20 var/chem_storage = 50 var/chem_recharge_rate = 0.5 + var/chem_recharge_slowdown = 0 var/sting_range = 2 var/changelingID = "Changeling" var/geneticdamage = 0 @@ -232,7 +233,8 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon" var/mimicing = "" var/canrespec = 0 var/datum/dna/chosen_dna - var/chosen_sting + var/obj/effect/proc_holder/changeling/sting/chosen_sting + var/space_suit_active = 0 /datum/changeling/New(var/gender=FEMALE) ..() @@ -249,63 +251,33 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon" /datum/changeling/proc/regenerate() - chem_charges = min(max(0, chem_charges+chem_recharge_rate), chem_storage) + chem_charges = min(max(0, chem_charges + chem_recharge_rate - chem_recharge_slowdown), chem_storage) geneticdamage = max(0, geneticdamage-1) -/datum/changeling/proc/GetDNA(var/dna_owner) - var/datum/dna/chosen_dna +/datum/changeling/proc/get_dna(var/dna_owner) for(var/datum/dna/DNA in absorbed_dna) if(dna_owner == DNA.real_name) - chosen_dna = DNA - break - return chosen_dna - - -//Checks if the target DNA is valid and absorbable. -/datum/changeling/proc/can_absorb_dna(mob/living/carbon/T, mob/living/carbon/U) - if(absorbed_dna[1] == U.dna)//If our current DNA is the stalest, we gotta ditch it. - U << "We have reached our capacity to store genetic information! We must transform before absorbing more." - return 0 - - if(T) - if(NOCLONE in T.mutations || HUSK in T.mutations) - U << "DNA of [T] is ruined beyond usability!" - return 0 - - if(!ishuman(T))//Absorbing monkeys is entirely possible, but it can cause issues with transforming. That's what lesser form is for anyway! - U << "We could gain no benefit from absorbing a lesser creature." - return 0 - - for(var/datum/dna/D in absorbed_dna) - if(T.dna.uni_identity == D.uni_identity) - if(T.dna.struc_enzymes == D.struc_enzymes) - if(T.dna.real_name == D.real_name) - if(T.dna.mutantrace == D.mutantrace) - if(T.dna.blood_type == D.blood_type) - U << "We already have that DNA in storage." - return 0 - - if(!check_dna_integrity(T)) - U << "[T] is not compatible with our biology." - return 0 + return DNA +/datum/changeling/proc/can_absorb_dna(var/mob/living/carbon/user, var/mob/living/carbon/target) + if(absorbed_dna[1] == user.dna)//If our current DNA is the stalest, we gotta ditch it. + user << "We have reached our capacity to store genetic information! We must transform before absorbing more." + return + if(!target) + return + if(NOCLONE in target.mutations || HUSK in target.mutations) + user << "DNA of [target] is ruined beyond usability!" + return + if(!ishuman(target))//Absorbing monkeys is entirely possible, but it can cause issues with transforming. That's what lesser form is for anyway! + user << "We could gain no benefit from absorbing a lesser creature." + return + var/datum/dna/tDna = target.dna + for(var/datum/dna/D in absorbed_dna) + if(tDna.is_same_as(D)) + user << "We already have that DNA in storage." + return + if(!check_dna_integrity(target)) + user << "[target] is not compatible with our biology." + return return 1 - - -//Absorbs the target DNA. -/datum/changeling/proc/absorb_dna(mob/living/carbon/T) - shuffle_dna() - T.dna.real_name = T.real_name //Set this again, just to be sure that it's properly set. - var/datum/dna/new_dna = new T.dna.type - new_dna.uni_identity = T.dna.uni_identity - new_dna.struc_enzymes = T.dna.struc_enzymes - new_dna.real_name = T.dna.real_name - new_dna.mutantrace = T.dna.mutantrace - new_dna.blood_type = T.dna.blood_type - absorbed_dna |= new_dna //And add the target DNA to our absorbed list. - absorbedcount++ //all that done, let's increment the objective counter. - -/datum/changeling/proc/shuffle_dna()//boots out the stalest DNA. - if(absorbed_dna.len) - absorbed_dna.Cut(1,2) \ No newline at end of file diff --git a/code/game/gamemodes/changeling/changeling_mutations.dm b/code/game/gamemodes/changeling/changeling_mutations.dm deleted file mode 100644 index 986a9d0a90b..00000000000 --- a/code/game/gamemodes/changeling/changeling_mutations.dm +++ /dev/null @@ -1,52 +0,0 @@ -//This only contains the arm blade for now because I'm a lazy fuck. Yers truely, Miauw, resident lazy fuck. -/obj/item/weapon/melee/arm_blade - name = "arm blade" - desc = "A grotesque blade made out of bone and flesh that cleaves through people as a hot knife through butter" - icon = 'icons/obj/weapons.dmi' - icon_state = "arm_blade" - item_state = "arm_blade" - flags = ABSTRACT | NODROP - w_class = 5.0 - force = 25 - throwforce = 0 //Just to be on the safe side - throw_range = 0 - throw_speed = 0 - -/obj/item/weapon/melee/arm_blade/New() - ..() - if(ismob(loc)) - loc.visible_message("A grotesque blade forms around [loc.name]\'s arm!", "Our arm twists and mutates, transforming it into a deadly blade.", "You hear organic matter ripping and tearing!") - -/obj/item/weapon/melee/arm_blade/dropped(mob/user) - visible_message("With a sickening crunch, [user] reforms his blade into an arm!", "We assimilate our blade into our body", "" - return - - else if(A.locked) - user << "The airlock's bolts prevent it from being forced." - return - - else - //user.say("Heeeeeeeeeerrre's Johnny!") - user.visible_message("[user] forces the door to open with \his [src]!", "We force the door to open.", "You hear a metal screeching sound.") - A.open(1) diff --git a/code/game/gamemodes/changeling/changeling_power.dm b/code/game/gamemodes/changeling/changeling_power.dm new file mode 100644 index 00000000000..6cae17bd2cc --- /dev/null +++ b/code/game/gamemodes/changeling/changeling_power.dm @@ -0,0 +1,80 @@ +/* + * Don't use the apostrophe in name or desc. Causes script errors. + * TODO: combine atleast some of the functionality with /proc_holder/spell + */ + +/obj/effect/proc_holder/changeling + panel = "Changeling" + name = "Prototype Sting" + desc = "" // Fluff + var/helptext = "" // Details + var/chemical_cost = 0 // negative chemical cost is for passive abilities (chemical glands) + var/dna_cost = -1 //cost of the sting in dna points. 0 = auto-purchase, -1 = cannot be purchased + var/req_dna = 0 //amount of dna needed to use this ability. Changelings always have atleast 1 + var/req_human = 0 //if you need to be human to use this ability + var/req_stat = CONSCIOUS // CONSCIOUS, UNCONSCIOUS or DEAD + var/genetic_damage = 0 // genetic damage caused by using the sting. Nothing to do with cloneloss. + var/max_genetic_damage = 100 // hard counter for spamming abilities. Not used/balanced much yet. + + +/obj/effect/proc_holder/changeling/proc/on_purchase(var/mob/user) + return + +/obj/effect/proc_holder/changeling/Click() + var/mob/user = usr + if(!user || !user.mind || !user.mind.changeling) + return + try_to_sting(user) + +/obj/effect/proc_holder/changeling/proc/try_to_sting(var/mob/user, var/mob/target) + if(!can_sting(user, target)) + return + var/datum/changeling/c = user.mind.changeling + if(sting_action(user, target)) + sting_feedback(user, target) + take_chemical_cost(c) + +/obj/effect/proc_holder/changeling/proc/sting_action(var/mob/user, var/mob/target) + return 0 + +/obj/effect/proc_holder/changeling/proc/sting_feedback(var/mob/user, var/mob/target) + return 0 + +/obj/effect/proc_holder/changeling/proc/take_chemical_cost(var/datum/changeling/changeling) + changeling.chem_charges -= chemical_cost + changeling.geneticdamage += genetic_damage + +//Fairly important to remember to return 1 on success >.< +/obj/effect/proc_holder/changeling/proc/can_sting(var/mob/user, var/mob/target) + if(!ishuman(user) && !ismonkey(user)) //typecast everything from mob to carbon from this point onwards + return 0 + if(req_human && !ishuman(user)) + user << "We cannot do that in this form!" + return 0 + var/datum/changeling/c = user.mind.changeling + if(c.chem_chargesWe require at least [chemical_cost] unit\s of chemicals to do that!" + return 0 + if(c.absorbedcountWe require at least [req_dna] sample\s of compatible DNA." + return 0 + if(req_stat < user.stat) + user << "We are incapacitated." + return 0 + if((user.status_flags & FAKEDEATH) && name!="Regenerate") + user << "We are incapacitated." + return 0 + if(c.geneticdamage > max_genetic_damage) + user << "Our genomes are still reassembling. We need time to recover first." + return 0 + return 1 + +//used in /mob/Stat() +/obj/effect/proc_holder/changeling/proc/can_be_used_by(var/mob/user) + if(!ishuman(user) && !ismonkey(user)) + return 0 + if(req_human && !ishuman(user)) + return 0 + return 1 + + diff --git a/code/game/gamemodes/changeling/changeling_powers.dm b/code/game/gamemodes/changeling/changeling_powers.dm deleted file mode 100644 index 9bd73e45b44..00000000000 --- a/code/game/gamemodes/changeling/changeling_powers.dm +++ /dev/null @@ -1,728 +0,0 @@ -//Restores our verbs. It will only restore verbs allowed during lesser (monkey) form if we are not human -/mob/proc/make_changeling() - if(!mind) return - if(!mind.changeling) mind.changeling = new /datum/changeling(gender) - if(!ishuman(src) && !ismonkey(src)) return - - verbs += /datum/changeling/proc/EvolutionMenu - - var/lesser_form = !ishuman(src) - - if(!powerinstances) - powerinstances = init_subtypes(/datum/power/changeling) - - // Code to auto-purchase free powers. - for(var/datum/power/changeling/P in powerinstances) - if(!P.genomecost) // Is it free? - if(!(P in mind.changeling.purchasedpowers)) // Do we not have it already? - mind.changeling.purchasePower(mind, P.name, 0)// Purchase it. Don't remake our verbs, we're doing it after this. - - for(var/datum/power/changeling/P in mind.changeling.purchasedpowers) - if(P.isVerb) - if(lesser_form && !P.allowduringlesserform) continue - verbs += P.verbpath //byond won't allow two of the same verb to be added to the verbs list. No additional checks necessary - - var/mob/living/carbon/C = src //only carbons have dna now, so we have to typecaste - mind.changeling.absorbed_dna |= C.dna - return 1 - -//removes our changeling verbs -/mob/proc/remove_changeling_powers() - var/mob/living/carbon/C = src - if(ishuman(C) || ismonkey(C)) - C.unset_sting() - for(var/datum/power/changeling/P in powerinstances) - if(P.isVerb) - verbs -= P.verbpath - -//Helper proc. Does all the checks and stuff for us to avoid copypasta -//includes a check to see if we're a carbon mob. This means that you can't use powers (even with the verbs) unless you're a carbon-based mob. -/mob/proc/changeling_power(var/required_chems=0, var/required_dna=0, var/max_genetic_damage=3, var/max_stat=0) - if(!src.mind) return - if(!iscarbon(src)) return - - var/datum/changeling/changeling = src.mind.changeling - if(!changeling) return - - if(src.stat > max_stat) - src << "We are incapacitated." - return - - if(changeling.absorbedcount < required_dna) - src << "We require at least [required_dna] sample\s of compatible DNA." - return - - if(changeling.chem_charges < required_chems) - src << "We require at least [required_chems] unit\s of chemicals to do that!" - return - - if(changeling.geneticdamage > max_genetic_damage) - src << "Our genomes are still reassembling. We need time to recover first." - return - - return changeling - - - - -//Absorbs the victim's DNA making them uncloneable. Requires a strong grip on the victim. -//Doesn't cost anything as it's the most basic ability. -/mob/living/carbon/proc/changeling_absorb_dna() - set category = "Changeling" - set name = "Absorb DNA" - - var/datum/changeling/changeling = changeling_power(0,0,100) - if(!changeling) return - - var/obj/item/weapon/grab/G = src.get_active_hand() - if(!istype(G)) - src << "We must be grabbing a creature in our active hand to absorb them." - return - - if(G.state <= GRAB_NECK) - src << "We must have a tighter grip to absorb this creature." - return - if(changeling.isabsorbing) - src << "We are already absorbing!" - return - - var/mob/living/carbon/T = G.affecting - if(changeling.can_absorb_dna(T, usr)) - changeling.isabsorbing = 1 - else - return - - for(var/stage = 1, stage<=3, stage++) - switch(stage) - if(1) - src << "This creature is compatible. We must hold still..." - if(2) - src << "We extend a proboscis." - src.visible_message("[src] extends a proboscis!") - if(3) - src << "We stab [T] with the proboscis." - src.visible_message("[src] stabs [T] with the proboscis!") - T << "You feel a sharp stabbing pain!" - T.take_overall_damage(40) - - feedback_add_details("changeling_powers","A[stage]") - if(!do_mob(src, T, 150)) - src << "Our absorption of [T] has been interrupted!" - changeling.isabsorbing = 0 - return - - src << "We have absorbed [T]!" - src.visible_message("[src] sucks the fluids from [T]!") - T << "You have been absorbed by the changeling!" - - changeling.absorb_dna(T) - - if(src.nutrition < 400) src.nutrition = min((src.nutrition + T.nutrition), 400) - - if(T.mind)//if the victim has got a mind - - T.mind.show_memory(src, 0) //I can read your mind, kekeke. Output all their notes. - - if(T.mind.changeling)//If the target was a changeling, suck out their extra juice and objective points! - changeling.chem_charges += min(T.mind.changeling.chem_charges, changeling.chem_storage) - changeling.absorbedcount += T.mind.changeling.absorbedcount - - T.mind.changeling.absorbed_dna.len = 1 - T.mind.changeling.absorbedcount = 0 - else - changeling.chem_charges += 10 - - changeling.isabsorbing = 0 - changeling.canrespec = 1 - - T.death(0) - T.Drain() - return 1 - - -//Change our DNA to that of somebody we've absorbed. -/mob/living/carbon/proc/changeling_transform() - set category = "Changeling" - set name = "Transform (5)" - - var/datum/changeling/changeling = changeling_power(5, 0, 3) - if(!changeling) return - - var/list/names = list() - for(var/datum/dna/DNA in changeling.absorbed_dna) - names += "[DNA.real_name]" - - var/S = input("Select the target DNA: ", "Target DNA", null) as null|anything in names - if(!S) return - - var/datum/dna/chosen_dna = changeling.GetDNA(S) - if(!chosen_dna) - return - - changeling.chem_charges -= 5 - changeling.geneticdamage = 3 - src.dna = chosen_dna - src.real_name = chosen_dna.real_name - updateappearance(src) - domutcheck(src, null) - - feedback_add_details("changeling_powers","TR") - return 1 - - -//Transform into a monkey. -/mob/living/carbon/proc/changeling_lesser_form() - set category = "Changeling" - set name = "Lesser Form (5)" - - var/datum/changeling/changeling = changeling_power(5,0,3) - if(!changeling) return - - changeling.chem_charges -= 5 - remove_changeling_powers() - changeling.geneticdamage = 3 - src << "Our genes cry out!" - - var/mob/living/carbon/monkey/O = monkeyize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPDAMAGE | TR_KEEPSE | TR_KEEPSRC) - - O.make_changeling(1) - O.verbs += /mob/living/carbon/proc/changeling_human_form - O.unset_sting() - feedback_add_details("changeling_powers","LF") - . = 1 - qdel(src) - -//Transform into a human -/mob/living/carbon/proc/changeling_human_form() - - set category = "Changeling" - set name = "Human Form (5)" - - var/datum/changeling/changeling = changeling_power(5,0,3) - - if(!changeling) return - - var/list/names = list() - for(var/datum/dna/DNA in changeling.absorbed_dna) - names += "[DNA.real_name]" - - var/S = input("Select the target DNA: ", "Target DNA", null) as null|anything in names - if(!S) return - - var/datum/dna/chosen_dna = changeling.GetDNA(S) - if(!chosen_dna) - return - - changeling.chem_charges -= 5 - remove_changeling_powers() - src << "We transform our appearance." - src.dna = chosen_dna - - - var/mob/living/carbon/human/O = humanize((TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPDAMAGE | TR_KEEPSRC),chosen_dna.real_name) - - if(O) - O.make_changeling() - O.unset_sting() - feedback_add_details("changeling_powers","LFT") - . = 1 - qdel(src) - - -//Fake our own death and fully heal. You will appear to be dead but regenerate fully after a short delay. -/mob/living/carbon/proc/changeling_fakedeath() - set category = "Changeling" - set name = "Regenerative Stasis (10)" - set desc = "Begin stasis, allowing us to regenerate." - - var/datum/changeling/changeling = changeling_power(10,1,100,DEAD) - if(!changeling) return - if(status_flags & FAKEDEATH) return //Make sure we can't stack regenerations and such. - changeling.chem_charges -= 10 - - if(!stat && alert("Are we sure we wish to fake our death?",,"Yes","No") == "No")//Confirmation for living changelings if they want to fake their death - return - src << "We begin our stasis, preparing energy to arise once more." - - status_flags |= FAKEDEATH //play dead - update_canmove() - remove_changeling_powers() - - emote("deathgasp") - tod = worldtime2text() - - spawn(800) - src << "We have now stored enough power to regenerate." - verbs -= /mob/living/carbon/proc/changeling_fakedeath - verbs += /mob/living/carbon/proc/changeling_revive - - feedback_add_details("changeling_powers","FD") - return 1 - -//Separated from regenerative stasis, so that they can choose when to pop up rather than having no control over it. -/mob/living/carbon/proc/changeling_revive() - set category = "Changeling" - set name = "Regenerate! (10)" - set desc = "Regenerate, healing all damage from our form." - - var/datum/changeling/changeling = changeling_power(10,1,100,DEAD) - if(!changeling) return - changeling.chem_charges -= 10 - - if(stat == DEAD) - dead_mob_list -= src - living_mob_list += src - stat = CONSCIOUS - tod = null - setToxLoss(0) - setOxyLoss(0) - setCloneLoss(0) - SetParalysis(0) - SetStunned(0) - SetWeakened(0) - radiation = 0 - heal_overall_damage(getBruteLoss(), getFireLoss()) - reagents.clear_reagents() - src << "We have regenerated." - - status_flags &= ~(FAKEDEATH) - update_canmove() - make_changeling() - - verbs -= /mob/living/carbon/proc/changeling_revive - verbs += /mob/living/carbon/proc/changeling_fakedeath - - feedback_add_details("changeling_powers","CR") - return 1 - -//Recover from stuns. -/mob/living/carbon/proc/changeling_unstun() - set category = "Changeling" - set name = "Epinephrine Overdose (30)" - set desc = "Removes all stuns instantly, and adds a short-term reduction in further stuns." - - var/datum/changeling/changeling = changeling_power(30,0,100,UNCONSCIOUS) - if(!changeling) return 0 - changeling.chem_charges -= 30 - - src << "We arise." - stat = 0 - SetParalysis(0) - SetStunned(0) - SetWeakened(0) - lying = 0 - update_canmove() - - reagents.add_reagent("synaptizine", 20) - - feedback_add_details("changeling_powers","UNS") - return 1 - - -//Increases maximum chemical storage and regeneraton. -/mob/proc/changeling_advglands() - src.mind.changeling.chem_storage += 25 - src.mind.changeling.chem_recharge_rate *= 2 - return 1 - - -//A flashy ability, good for crowd control and sewing chaos. -/mob/living/carbon/proc/changeling_shriek() - set category = "Changeling" - set name = "Resonant Shriek (25)" - set desc = "Deafen and confuse those around us." - - var/datum/changeling/changeling = changeling_power(25) - if(!changeling) return 0 - src.mind.changeling.chem_charges -= 25 - - for(var/mob/living/M in hearers(4, usr)) - if(iscarbon(M)) - if(!M.mind || !M.mind.changeling) - M.ear_deaf += 30 - M.confused += 20 - M.Jitter(50) - else - M << sound('sound/effects/screech.ogg') - - if(issilicon(M)) - M << sound('sound/weapons/flash.ogg') - M.Weaken(rand(5,10)) - - - for(var/obj/machinery/light/L in range(4, usr)) - L.on = 1 - L.broken() - - feedback_add_details("changeling_powers","RS") - return 1 - - -//Makes some spiderlings. Good for setting traps and causing general trouble. -/mob/living/carbon/proc/changeling_spiders() - set category = "Changeling" - set name = "Spread Infestation (50)" - set desc = "Creates spiderlings." - - var/datum/changeling/changeling = changeling_power(50, 5) - if(!changeling) return 0 - src.mind.changeling.chem_charges -= 50 - - for(var/i=0, i<2, i++) - var/obj/effect/spider/spiderling/S = new(src.loc) - S.grow_as = /mob/living/simple_animal/hostile/giant_spider/hunter - - feedback_add_details("changeling_powers","SI") - return 1 - - -//Heals the things that the other regenerative abilities don't. -/mob/living/carbon/proc/changeling_panacea() - set category = "Changeling" - set name = "Anatomic Panacea (25)" - set desc = "Cures diseases, disabilities, toxins and radiation." - - var/datum/changeling/changeling = changeling_power(25,0,100,UNCONSCIOUS) - if(!changeling) return 0 - src.mind.changeling.chem_charges -= 25 - - src << "We cleanse impurities from our form." - reagents.add_reagent("ryetalyn", 10) - reagents.add_reagent("hyronalin", 10) - reagents.add_reagent("anti_toxin", 20) - - for(var/datum/disease/D in src.viruses) - D.cure() - - feedback_add_details("changeling_powers","AP") - return 1 - - -//Prevents AIs tracking you but makes you easily detectable to the human-eye. -/mob/living/carbon/proc/changeling_digitalcamo() - set category = "Changeling" - set name = "Toggle Digital Camouflage" - set desc = "The AI can no longer track us, but we will look different if examined." - - var/datum/changeling/changeling = changeling_power() - if(!changeling) return 0 - - if(digitalcamo) src << "We return to normal." - else src << "We distort our form to prevent AI-tracking." - digitalcamo = !digitalcamo - - feedback_add_details("changeling_powers","CAM") - return 1 - - -//Starts healing you every second for 10 seconds. Can be used whilst unconscious. -/mob/living/carbon/proc/changeling_fleshmend() - set category = "Changeling" - set name = "Fleshmend (30)" - set desc = "Begins rapidly regenerating. Does not effect stuns or chemicals." - - var/datum/changeling/changeling = changeling_power(30,0,100,UNCONSCIOUS) - if(!changeling) return 0 - src.mind.changeling.chem_charges -= 30 - - src << "We begin to heal rapidly." - spawn(0) - for(var/i = 0, i<10,i++) - adjustBruteLoss(-10) - adjustOxyLoss(-10) - adjustFireLoss(-10) - sleep(10) - - feedback_add_details("changeling_powers","RR") - return 1 - -// HIVE MIND UPLOAD/DOWNLOAD DNA -var/list/datum/dna/hivemind_bank = list() - -/mob/living/carbon/proc/changeling_hiveupload() - set category = "Changeling" - set name = "Hive Channel (10)" - set desc = "Allows you to channel DNA in the airwaves to allow other changelings to absorb it." - - var/datum/changeling/changeling = changeling_power(10) - if(!changeling) return - - var/list/names = list() - for(var/datum/dna/DNA in changeling.absorbed_dna) - if(!(DNA in hivemind_bank)) - names += DNA.real_name - - if(names.len <= 0) - src << "The airwaves already have all of our DNA." - return - - var/S = input("Select a DNA to channel: ", "Channel DNA", null) as null|anything in names - if(!S) return - - var/datum/dna/chosen_dna = changeling.GetDNA(S) - if(!chosen_dna) - return - - changeling.chem_charges -= 10 - hivemind_bank += chosen_dna - src << "We channel the DNA of [S] to the air." - feedback_add_details("changeling_powers","HU") - return 1 - -/mob/living/carbon/proc/changeling_hivedownload() - set category = "Changeling" - set name = "Hive Absorb (20)" - set desc = "Allows you to absorb DNA that is being channeled in the airwaves." - - var/datum/changeling/changeling = changeling_power(20) - if(!changeling) return - - var/list/names = list() - for(var/datum/dna/DNA in hivemind_bank) - if(!(DNA in changeling.absorbed_dna)) - names[DNA.real_name] = DNA - - if(names.len <= 0) - src << "There's no new DNA to absorb from the air." - return - - var/S = input("Select a DNA absorb from the air: ", "Absorb DNA", null) as null|anything in names - if(!S) return - var/datum/dna/chosen_dna = names[S] - if(!chosen_dna) - return - - if(changeling.can_absorb_dna(null, usr)) - changeling.chem_charges -= 20 - changeling.shuffle_dna() - changeling.absorbed_dna |= chosen_dna - src << "We absorb the DNA of [S] from the air." - feedback_add_details("changeling_powers","HD") - return 1 - -// Fake Voice -/mob/living/carbon/proc/changeling_mimicvoice() - set category = "Changeling" - set name = "Mimic Voice" - set desc = "Shape our vocal glands to form a voice of someone we choose. We cannot regenerate chemicals when mimicing." - - - var/datum/changeling/changeling = changeling_power() - if(!changeling) return - - if(changeling.mimicing) - changeling.mimicing = "" - src << "We return our vocal glands to their original location." - return - - var/mimic_voice = input("Enter a name to mimic.", "Mimic Voice", null) as text - if(!mimic_voice) - return - - changeling.mimicing = mimic_voice - - src << "We shape our glands to take the voice of [mimic_voice], this will stop us from regenerating chemicals while active." - src << "Use this power again to return to our original voice and reproduce chemicals again." - - feedback_add_details("changeling_powers","MV") - - spawn(0) - while(src && src.mind && src.mind.changeling && src.mind.changeling.mimicing) - src.mind.changeling.chem_charges = max(src.mind.changeling.chem_charges - 1, 0) - sleep(40) - if(src && src.mind && src.mind.changeling) - src.mind.changeling.mimicing = "" - -/mob/living/carbon/proc/changeling_emp_shriek() - set category = "Changeling" - set name = "Dissonant Shriek (20)" - - var/datum/changeling/changeling = changeling_power(20) - if(!changeling) return - - for(var/obj/machinery/light/L in range(5, usr)) - L.on = 1 - L.broken() - - empulse(get_turf(src), 2, 5, 1) - - changeling.chem_charges -= 20 - -/mob/living/carbon/proc/changeling_arm_blade() - set category = "Changeling" - set name = "Arm Blade (20)" - - if(istype(l_hand, /obj/item/weapon/melee/arm_blade)) //Not the nicest way to do it, but eh - qdel(l_hand) //Arm blades can't be dropped, we have to delete them directly. - update_inv_l_hand() - return - - if(istype(r_hand, /obj/item/weapon/melee/arm_blade)) - qdel(r_hand) - update_inv_r_hand() - return - - var/datum/changeling/changeling = changeling_power(20) - if(!changeling) - return - - if(!drop_item()) - usr << "The [get_active_hand()] is stuck to your hand, you cannot grow a blade over it!" - return - - put_in_hands(new /obj/item/weapon/melee/arm_blade(src)) - changeling.geneticdamage += 6 - - changeling.chem_charges -= 20 - - -////////// -//STINGS// //They get a pretty header because there's just so fucking many of them ;_; -////////// - -/mob/living/carbon/proc/set_sting(A, icon, dna=null) //setting the sting and ui icon for it - src << "We prepare our sting, use alt+click or middle mouse button on target to sting them." - src.mind.changeling.chosen_sting = A - if(dna) - src.mind.changeling.chosen_dna = dna - hud_used.lingstingdisplay.icon_state = icon - hud_used.lingstingdisplay.invisibility = 0 - -/mob/living/carbon/proc/unset_sting() //unsetting the previous - src << "We retract our sting, we can't sting anyone for now." - src.mind.changeling.chosen_sting = null - hud_used.lingstingdisplay.icon_state = null - hud_used.lingstingdisplay.invisibility = 101 - -/mob/living/carbon/proc/sting_can_reach(mob/living/carbon/C, chem_cost) //handles all the checks there are - if(!isturf(src.loc)) return 0 - if(get_dist(src, C) > (src.mind.changeling.sting_range)) return 0 //sanity check as AStar is still throwing insane stunts - if(!AStar(src.loc, C.loc, /turf/proc/AdjacentTurfs, /turf/proc/Distance, src.mind.changeling.sting_range)) return 0 //hope this ancient magic still works - if(src.mind.changeling.chem_charges < chem_cost) - src << "Not enough chemicals." - return 0 - src.mind.changeling.chem_charges -= chem_cost - src << "We stealthly sting [C.name]." - if(C.mind && C.mind.changeling) - C << "You feel a tiny prick." - add_logs(src, C, "unsuccessfully stung") - return 0 - else - return 1 - -/mob/living/carbon/proc/changeling_transformation_sting() - set category = "Changeling" - set name = "Transformation Sting (40)" - set desc= "Transform the target to one of our stored DNAs" - - var/list/names = list() - for(var/datum/dna/DNA in mind.changeling.absorbed_dna) - names += DNA.real_name - - var/S = input("Select the target DNA: ", "Target DNA", null) as null|anything in names - if(!S) return - - var/datum/dna/D = mind.changeling.GetDNA(S) - if(!D) - return - - set_sting(/mob/living/carbon/proc/sting_effect_trasnform, "sting_transform", D) - -/mob/living/carbon/proc/sting_effect_trasnform(mob/living/carbon/T) - if(!sting_can_reach(T, 40)) - return 0 - add_logs(src, T, "stung", object="transformation sting", addition=" new identity is [src.mind.changeling.chosen_dna.real_name]") - if((HUSK in T.mutations) || !check_dna_integrity(T)) - src << "Our sting appears ineffective against its DNA." - return 0 - var/datum/dna/NewDNA = src.mind.changeling.chosen_dna - hardset_dna(T, NewDNA.uni_identity, NewDNA.struc_enzymes, NewDNA.real_name, NewDNA.mutantrace, NewDNA.blood_type) - updateappearance(T) - feedback_add_details("changeling_powers","TS") - return 1 - -/mob/living/carbon/proc/changeling_extract_dna_sting() - set category = "Changeling" - set name = "Extract DNA Sting (25)" - set desc="Stealthily sting a target to extract their DNA." - - set_sting(/mob/living/carbon/proc/sting_effect_extract, "sting_extract") - -/mob/living/carbon/proc/sting_effect_extract(mob/living/carbon/T) - if(!sting_can_reach(T, 25)) - return 0 - add_logs(src, T, "stung", object="extraction sting") - if(src.mind.changeling.can_absorb_dna(T, usr)) - src.mind.changeling.absorb_dna(T, usr) - else//If the sting fails, give the guy most of his chems back. - src.mind.changeling.chem_charges += 20 - - feedback_add_details("changeling_powers","ED") - return 1 - -/mob/living/carbon/proc/changeling_mute_sting() - set category = "Changeling" - set name = "Mute sting (20)" - set desc= "Temporarily mutes the target." - - set_sting(/mob/living/carbon/proc/sting_effect_mute, "sting_mute") - -/mob/living/carbon/proc/sting_effect_mute(mob/living/carbon/T) - if(!sting_can_reach(T, 20)) - return 0 - add_logs(src, T, "stung", object="mute sting") - T.silent += 30 - feedback_add_details("changeling_powers","MS") - return 1 - -/mob/living/carbon/proc/changeling_blind_sting() - set category = "Changeling" - set name = "Blind Sting (25)" - set desc= "Temporarily blinds the target." - - set_sting(/mob/living/carbon/proc/sting_effect_blind, "sting_blind") - -/mob/living/carbon/proc/sting_effect_blind(mob/living/carbon/T) - if(!sting_can_reach(T, 25)) - return 0 - add_logs(src, T, "stung", object="blind sting") - T << "Your eyes burn horrifically!" - T.disabilities |= NEARSIGHTED - T.eye_blind = 20 - T.eye_blurry = 40 - feedback_add_details("changeling_powers","BS") - return 1 - -/mob/living/carbon/proc/changeling_lsd_sting() - set category = "Changeling" - set name = "Hallucination Sting (5)" - set desc = "Causes terror in the target." - - set_sting(/mob/living/carbon/proc/sting_effect_lsd, "sting_lsd") - -/mob/living/carbon/proc/sting_effect_lsd(mob/living/carbon/T) - if(!sting_can_reach(T, 5)) - return 0 - add_logs(src, T, "stung", object="LSD sting") - spawn(rand(300,600)) - if(T) T.hallucination += 400 - feedback_add_details("changeling_powers","HS") - return 1 - -/mob/living/carbon/proc/changeling_cryo_sting() - set category = "Changeling" - set name = "Cryogenic Sting (15)" - set desc = "Cools the target, slowing them." - - set_sting(/mob/living/carbon/proc/sting_effect_cryo, "sting_cryo") - -/mob/living/carbon/proc/sting_effect_cryo(mob/living/carbon/T) - if(!sting_can_reach(T, 15)) - return 0 - add_logs(src, T, "stung", object="cryo sting") - if(T.reagents) - T.reagents.add_reagent("frostoil", 30) - T.reagents.add_reagent("ice", 30) - - feedback_add_details("changeling_powers","CS") - return 1 diff --git a/code/game/gamemodes/changeling/evolution_menu.dm b/code/game/gamemodes/changeling/evolution_menu.dm new file mode 100644 index 00000000000..dbbb06a6052 --- /dev/null +++ b/code/game/gamemodes/changeling/evolution_menu.dm @@ -0,0 +1,391 @@ +var/list/sting_paths +// totally stolen from the new player panel. YAYY + +/obj/effect/proc_holder/changeling/evolution_menu + name = "-Evolution Menu-" //Dashes are so it's listed before all the other abilities. + desc = "Choose our method of subjugation." + dna_cost = 0 + +/obj/effect/proc_holder/changeling/evolution_menu/Click() + if(!usr || !usr.mind || !usr.mind.changeling) + return + var/datum/changeling/changeling = usr.mind.changeling + + if(!sting_paths) + sting_paths = init_paths(/obj/effect/proc_holder/changeling) + + var/dat = create_menu(changeling) + usr << browse(dat, "window=powers;size=600x700")//900x480 + + +/obj/effect/proc_holder/changeling/evolution_menu/proc/create_menu(var/datum/changeling/changeling) + var/dat + dat +="Changling Evolution Menu" + + //javascript, the part that does most of the work~ + dat += {" + + + + + + + "} + + //body tag start + onload and onkeypress (onkeyup) javascript event calls + dat += "" + + //title + search bar + dat += {" + + + + + + + + +
+ Changeling Evolution Menu
+ Hover over a power to see more information
+ Current ability choices remaining: [changeling.geneticpoints]
+ By rendering a lifeform to a husk, we gain enough power to alter and adapt our evolutions.
+ (Readapt)
+

+

+ Search: +
+ + "} + + //player table header + dat += {" + + "} + + var/i = 1 + for(var/path in sting_paths) + + var/obj/effect/proc_holder/changeling/P = new path() + if(P.dna_cost <= 0) //Let's skip the crap we start with. Keeps the evolution menu uncluttered. + continue + + var/ownsthis = changeling.has_sting(P) + + var/color + if(ownsthis) + if(i%2 == 0) + color = "#d8ebd8" + else + color = "#c3dec3" + else + if(i%2 == 0) + color = "#f2f2f2" + else + color = "#e6e6e6" + + + dat += {" + + + + + + "} + + i++ + + + //player table ending + dat += {" +
+ + + Evolve [P][ownsthis ? " - Purchased" : ((P.dna_cost > 1) ? " - Cost: [P.dna_cost]" : "")] + +
+
+
+ + + + "} + return dat + + +/obj/effect/proc_holder/changeling/evolution_menu/Topic(href, href_list) + ..() + if(!(iscarbon(usr) && usr.mind && usr.mind.changeling)) + return + + if(href_list["P"]) + usr.mind.changeling.purchasePower(usr, href_list["P"]) + else if(href_list["readapt"]) + usr.mind.changeling.lingRespec(usr) + var/dat = create_menu(usr.mind.changeling) + usr << browse(dat, "window=powers;size=600x700") +///// + +/datum/changeling/proc/purchasePower(var/mob/living/carbon/user, var/sting_name) + + var/obj/effect/proc_holder/changeling/thepower = null + + if(!sting_paths) + sting_paths = init_paths(/obj/effect/proc_holder/changeling) + for(var/path in sting_paths) + var/obj/effect/proc_holder/changeling/S = new path() + if(S.name == sting_name) + thepower = S + + if(thepower == null) + user << "This is awkward. Changeling power purchase failed, please report this bug to a coder!" + return + + if(has_sting(thepower)) + user << "We have already evolved this ability!" + return + + if(geneticpoints < thepower.dna_cost) + user << "We have reached our capacity for abilities." + return + + if(user.status_flags & FAKEDEATH)//To avoid potential exploits by buying new powers while in stasis, which clears your verblist. + user << "We lack the energy to evolve new abilities right now." + return + + geneticpoints -= thepower.dna_cost + purchasedpowers += thepower + thepower.on_purchase(user) + +//Reselect powers +/datum/changeling/proc/lingRespec(var/mob/user) + if(canrespec) + user << "We have removed our evolutions from this form, and are now ready to readapt." + user.remove_changeling_powers(1) + canrespec = 0 + user.make_changeling() + return 1 + else + user << "You lack the power to readapt your evolutions!" + return 0 + +/mob/proc/make_changeling() + if(!mind) + return + if(!ishuman(src) && !ismonkey(src)) + return + if(!mind.changeling) + mind.changeling = new /datum/changeling(gender) + if(!sting_paths) + sting_paths = init_paths(/obj/effect/proc_holder/changeling) + if(mind.changeling.purchasedpowers) + remove_changeling_powers(1) + // purchase free powers. + for(var/path in sting_paths) + var/obj/effect/proc_holder/changeling/S = new path() + if(!S.dna_cost) + if(!mind.changeling.has_sting(S)) + mind.changeling.purchasedpowers+=S + S.on_purchase(src) + + var/mob/living/carbon/C = src //only carbons have dna now, so we have to typecaste + mind.changeling.absorbed_dna |= C.dna + return 1 + +/datum/changeling/proc/reset() + chosen_sting = null + geneticpoints = initial(geneticpoints) + sting_range = initial(sting_range) + chem_storage = initial(chem_storage) + chem_recharge_rate = initial(chem_recharge_rate) + chem_charges = min(chem_charges, chem_storage) + mimicing = "" + +/mob/proc/remove_changeling_powers(var/keep_free_powers=0) + if(ishuman(src) || ismonkey(src)) + if(mind && mind.changeling) + digitalcamo = 0 + mind.changeling.reset() + for(var/obj/effect/proc_holder/changeling/p in mind.changeling.purchasedpowers) + if(!(p.dna_cost == 0 && keep_free_powers)) + mind.changeling.purchasedpowers -= p + if(hud_used) + hud_used.lingstingdisplay.icon_state = null + hud_used.lingstingdisplay.invisibility = 101 + +/datum/changeling/proc/has_sting(obj/effect/proc_holder/changeling/power) + for(var/obj/effect/proc_holder/changeling/P in purchasedpowers) + if(power.name == P.name) + return 1 + return 0 diff --git a/code/game/gamemodes/changeling/modularchangling.dm b/code/game/gamemodes/changeling/modularchangling.dm deleted file mode 100644 index 862b156501a..00000000000 --- a/code/game/gamemodes/changeling/modularchangling.dm +++ /dev/null @@ -1,548 +0,0 @@ -// READ: Don't use the apostrophe in name or desc. Causes script errors. - -var/list/powerinstances - -/datum/power //Could be used by other antags too - var/name = "Power" - var/desc = "Placeholder" - var/helptext = "" - var/isVerb = 1 // Is it an active power, or passive? - var/verbpath // Path to a verb that contains the effects. - -/datum/power/changeling - var/allowduringlesserform = 0 - var/genomecost = 500000 // Cost for the changling to evolve this power. - -/datum/power/changeling/absorb_dna - name = "Absorb DNA" - desc = "Permits us to siphon the DNA from a human. They become one with us, and the new energy lets us change our abilities." - genomecost = 0 - verbpath = /mob/living/carbon/proc/changeling_absorb_dna - -/datum/power/changeling/extractdna - name = "Extract DNA Strand" - desc = "We stealthily sting a target and extract the DNA from them." - helptext = "Will give you the DNA of your target, allowing you to transform into them." - genomecost = 0 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_extract_dna_sting - -/datum/power/changeling/transform - name = "Transform" - desc = "We take on the appearance and voice of one we have absorbed." - genomecost = 0 - verbpath = /mob/living/carbon/proc/changeling_transform - -/datum/power/changeling/fakedeath - name = "Regenerative Stasis" - desc = "We become weakened to a death-like state, where we will rise again from death." - helptext = "Can be used before or after death. Duration varies greatly. Can be used in lesser form." - genomecost = 0 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_fakedeath - -// Hivemind -/datum/power/changeling/hive_upload - name = "Hive Channel" - desc = "We can channel a DNA into the airwaves, allowing our fellow changelings to absorb it and transform into it as if they acquired the DNA themselves." - helptext = "Allows other changelings to absorb the DNA you channel from the airwaves. Will not help them towards their absorb objectives." - genomecost = 0 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_hiveupload - -/datum/power/changeling/hive_download - name = "Hive Absorb" - desc = "We can absorb a single DNA from the airwaves, allowing us to use more disguises with help from our fellow changelings." - helptext = "Allows you to absorb a single DNA and use it. Does not count towards your absorb objective." - genomecost = 0 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_hivedownload - -/datum/power/changeling/lesser_form - name = "Lesser Form" - desc = "We debase ourselves and become lesser. We become a monkey." - genomecost = 1 - verbpath = /mob/living/carbon/proc/changeling_lesser_form - -/datum/power/changeling/mimicvoice - name = "Mimic Voice" - desc = "We shape our vocal glands to sound like a desired voice." - helptext = "Will turn your voice into the name that you enter. We must constantly expend chemicals to maintain our form like this" - genomecost = 1 - verbpath = /mob/living/carbon/proc/changeling_mimicvoice - -/datum/power/changeling/transformation_sting - name = "Transformation Sting" - desc = "We silently sting a human, injecting a retrovirus that forces them to transform into another." - helptext = "Does not provide a warning to others. The victim will transform much like a changeling would." - genomecost = 1 - verbpath = /mob/living/carbon/proc/changeling_transformation_sting - -/datum/power/changeling/Epinephrine - name = "Epinephrine Sacs" - desc = "We evolve additional sacs of adrenaline throughout our body." - helptext = "Removes all stuns instantly, and adds a short-term reduction in further stuns. Can be used while unconscious." - genomecost = 1 - verbpath = /mob/living/carbon/proc/changeling_unstun - -/datum/power/changeling/EngorgedGlands - name = "Engorged Chemical Glands" - desc = "Our chemical glands swell, permitting us to store more chemicals inside of them." - helptext = "Allows us to store an extra 25 units of chemicals, and doubles production rate." - genomecost = 1 - isVerb = 0 - verbpath = /mob/proc/changeling_advglands - -/datum/power/changeling/DigitalCamouflage - name = "Digital Camouflage" - desc = "We evolve the ability to distort our form and proprotions, defeating common altgorthms used to detect lifeforms on cameras." - helptext = "We cannot be tracked by camera while using this skill. However, humans looking at us will find us... uncanny." - genomecost = 1 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_digitalcamo - -/datum/power/changeling/fleshmend - name = "Fleshmend" - desc = "We evolve the ability to rapidly regenerate, restoring the health of the body we use." - helptext = "Heals a moderate amount of damage every tick. Can be used while unconscious." - genomecost = 1 - verbpath = /mob/living/carbon/proc/changeling_fleshmend - -/datum/power/changeling/panacea - name = "Anatomic Panacea" - desc = "Expels impurifications from our form; curing diseases, genetic disabilities, and removing toxins and radiation." - helptext = "Can be used while unconscious." - genomecost = 1 - verbpath = /mob/living/carbon/proc/changeling_panacea - -/datum/power/changeling/shriek - name = "Resonant Shriek" - desc = "Our lungs and vocal chords shift, allowing us to briefly emit a noise that deafens and confuses the weak-minded." - helptext = "The high-frequency sounds cannot be heard by humans, but will blow out lights nearby. Cyborgs will have their sensors overloaded and become stunned." - genomecost = 1 - verbpath = /mob/living/carbon/proc/changeling_shriek - -/datum/power/changeling/spiders - name = "Spread Infestation" - desc = "Our form divides, creating arachnids which will grow into deadly beasts." - helptext = "The spiders are thoughtless creatures, and may attack their creators when fully grown. Requires at least 5 DNA absorptions." - genomecost = 1 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_spiders - -/datum/power/changeling/lsd_sting - name = "Hallucination Sting" - desc = "We evolve the ability to sting a target with a powerful hallucinogenic chemical." - helptext = "The target does not notice they have been stung. The effect occurs after 30 to 60 seconds." - genomecost = 1 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_lsd_sting - -/datum/power/changeling/blind_sting - name = "Blind Sting" - desc = "We silently sting a human, completely blinding them for a short time." - genomecost = 1 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_blind_sting - -/datum/power/changeling/cryo_sting - name = "Cryogenic Sting" - desc = "We silently sting a human with a cocktail of chemicals, slowing their metabolism." - helptext = "Does not provide a warning to a victim, though they will likely realize they are suddenly freezing." - genomecost = 1 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_cryo_sting - -/datum/power/changeling/mute_sting - name = "Mute Sting" - desc = "We silently sting a human, completely silencing them for a short time." - helptext = "Does not provide a warning to a victim that they have been stung, until they try to speak and cannot." - genomecost = 1 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_mute_sting - -/datum/power/changeling/emp_shriek - name = "Dissonant Shriek" - desc = "We shift our vocal cords to release a high-frequency sound that overloads nearby electronics." - genomecost = 1 - allowduringlesserform = 1 - verbpath = /mob/living/carbon/proc/changeling_emp_shriek - -/datum/power/changeling/arm_blade - name = "Arm Blade" - desc = "We reform one of our arms into a deadly blade." - helptext = "Cannot be used while in lesser form." - genomecost = 1 - allowduringlesserform = 0 - verbpath = /mob/living/carbon/proc/changeling_arm_blade - -// Modularchangling, totally stolen from the new player panel. YAYY -/datum/changeling/proc/EvolutionMenu()//The new one - set name = "-Evolution Menu-"//Dashes are so it's listed before all the other abilities. - set category = "Changeling" - set desc = "Choose our method of subjugation." - - if(!usr || !usr.mind || !usr.mind.changeling) return - src = usr.mind.changeling - - if(!powerinstances) - powerinstances = init_subtypes(/datum/power/changeling) - - var/dat = "Changling Evolution Menu" - - //javascript, the part that does most of the work~ - dat += {" - - - - - - - "} - - //body tag start + onload and onkeypress (onkeyup) javascript event calls - dat += "" - - //title + search bar - dat += {" - - - - - - - - -
- Changeling Evolution Menu
- Hover over a power to see more information
- Current ability choices remaining: [geneticpoints]
- By rendering a lifeform to a husk, we gain enough power to alter and adapt our evolutions.
- (Readapt)
-

-

- Search: -
- - "} - - //player table header - dat += {" - - "} - - var/i = 1 - for(var/datum/power/changeling/P in powerinstances) - var/ownsthis = 0 - - if(P.genomecost == 0) //Let's skip the crap we start with. Keeps the evolution menu uncluttered. - continue - - if(P in purchasedpowers) - ownsthis = 1 - - - var/color - if(ownsthis) - if(i%2 == 0) - color = "#d8ebd8" - else - color = "#c3dec3" - else - if(i%2 == 0) - color = "#f2f2f2" - else - color = "#e6e6e6" - - - dat += {" - - - - - - "} - - i++ - - - //player table ending - dat += {" -
- - - Evolve [P][ownsthis ? " - Purchased" : ((P.genomecost > 1) ? " - Cost: [P.genomecost]" : "")] - -
-
-
- - - - "} - - usr << browse(dat, "window=powers;size=600x700")//900x480 - - -/datum/changeling/Topic(href, href_list) - ..() - if(!ismob(usr)) - return - - if(href_list["P"]) - var/datum/mind/M = usr.mind - if(!istype(M)) - return - purchasePower(M, href_list["P"]) - call(/datum/changeling/proc/EvolutionMenu)() - - if(href_list["readapt"]) - var/datum/mind/M = usr.mind - if(!istype(M)) - return - lingRespec(M) - call(/datum/changeling/proc/EvolutionMenu)() - return - -///// - -/datum/changeling/proc/purchasePower(var/datum/mind/M, var/pname, var/remake_verbs = 1) - if(!M || !M.changeling || !istype(M.current, /mob/living/carbon)) - return - - var/mob/living/carbon/C = M.current - var/datum/power/changeling/thepower = pname - - for (var/datum/power/changeling/P in powerinstances) - if(P.name == pname) - thepower = P - break - - if(thepower == null) - C << "This is awkward. Changeling power purchase failed, please report this bug to a coder!" - return - - if(thepower in purchasedpowers) - C << "We have already evolved this ability!" - return - - if(geneticpoints < thepower.genomecost) - C << "We have reached our capacity for abilities." - return - - if(C.status_flags & FAKEDEATH)//To avoid potential exploits by buying new powers while in stasis, which clears your verblist. - C << "We lack the energy to evolve new abilities right now." - return - - geneticpoints -= thepower.genomecost - - purchasedpowers += thepower - - if(!thepower.isVerb && thepower.verbpath) - call(C, thepower.verbpath)() - else if(remake_verbs) - C.make_changeling() - -///// - -/datum/changeling/proc/lingRespec(var/datum/mind/M) - if(!M || !M.changeling || !istype(M.current, /mob/living/carbon)) - return - - if(canrespec) - usr << "We have removed our evolutions from this form, and are now ready to readapt." - - var/mob/living/carbon/C = M.current - - C.remove_changeling_powers()//Revokes our verb powers. - clearlist(purchasedpowers) - - - //Resets our stats, to account for purchased passives. - C.digitalcamo = 0 - geneticpoints = initial(geneticpoints) - sting_range = initial(sting_range) - chem_storage = initial(chem_storage) - chem_recharge_rate = initial(chem_recharge_rate) - chem_charges = min(chem_charges, chem_storage) - mimicing = "" - - canrespec = 0 - - C.make_changeling()//Remake our verbs; rebuys the 0 cost skills. - else - usr << "You lack the power to readapt your evolutions!" - - return 1 \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/absorb.dm b/code/game/gamemodes/changeling/powers/absorb.dm new file mode 100644 index 00000000000..e873ec7c4ba --- /dev/null +++ b/code/game/gamemodes/changeling/powers/absorb.dm @@ -0,0 +1,96 @@ +/obj/effect/proc_holder/changeling/absorbDNA + name = "Absorb DNA" + desc = "Absorb the DNA of our victim." + chemical_cost = 0 + dna_cost = 0 + req_human = 1 + max_genetic_damage = 100 + +/obj/effect/proc_holder/changeling/absorbDNA/can_sting(var/mob/living/carbon/user) + if(!..()) + return + + var/datum/changeling/changeling = user.mind.changeling + if(changeling.isabsorbing) + user << "We are already absorbing!" + return + + var/obj/item/weapon/grab/G = user.get_active_hand() + if(!istype(G)) + user << "We must be grabbing a creature in our active hand to absorb them." + return + if(G.state <= GRAB_NECK) + user << "We must have a tighter grip to absorb this creature." + return + + var/mob/living/carbon/target = G.affecting + return changeling.can_absorb_dna(user,target) + + + +/obj/effect/proc_holder/changeling/absorbDNA/sting_action(var/mob/user) + var/datum/changeling/changeling = user.mind.changeling + var/obj/item/weapon/grab/G = user.get_active_hand() + var/mob/living/carbon/human/target = G.affecting + for(var/stage = 1, stage<=3, stage++) + switch(stage) + if(1) + user << "This creature is compatible. We must hold still..." + if(2) + user << "We extend a proboscis." + user.visible_message("[user] extends a proboscis!") + if(3) + user << "We stab [target] with the proboscis." + user.visible_message("[user] stabs [target] with the proboscis!") + target << "You feel a sharp stabbing pain!" + target.take_overall_damage(40) + + feedback_add_details("changeling_powers","A[stage]") + if(!do_mob(user, target, 150)) + user << "Our absorption of [target] has been interrupted!" + changeling.isabsorbing = 0 + return + + user << "We have absorbed [target]!" + user.visible_message("[user] sucks the fluids from [target]!") + target << "You have been absorbed by the changeling!" + + changeling.absorb_dna(target) + + if(user.nutrition < 400) user.nutrition = min((user.nutrition + target.nutrition), 400) + + if(target.mind)//if the victim has got a mind + + target.mind.show_memory(src, 0) //I can read your mind, kekeke. Output all their notes. + + if(target.mind.changeling)//If the target was a changeling, suck out their extra juice and objective points! + changeling.chem_charges += min(target.mind.changeling.chem_charges, changeling.chem_storage) + changeling.absorbedcount += target.mind.changeling.absorbedcount + + target.mind.changeling.absorbed_dna.len = 1 + target.mind.changeling.absorbedcount = 0 + else + changeling.chem_charges += 10 + + changeling.isabsorbing = 0 + changeling.canrespec = 1 + + target.death(0) + target.Drain() + return 1 + + + +//Absorbs the target DNA. +/datum/changeling/proc/absorb_dna(mob/living/carbon/T) + if(absorbed_dna.len) + absorbed_dna.Cut(1,2) + T.dna.real_name = T.real_name //Set this again, just to be sure that it's properly set. + var/datum/dna/new_dna = new T.dna.type + new_dna.uni_identity = T.dna.uni_identity + new_dna.struc_enzymes = T.dna.struc_enzymes + new_dna.real_name = T.dna.real_name + new_dna.mutantrace = T.dna.mutantrace + new_dna.blood_type = T.dna.blood_type + absorbed_dna |= new_dna //And add the target DNA to our absorbed list. + absorbedcount++ //all that done, let's increment the objective counter. \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/digitalcamo.dm b/code/game/gamemodes/changeling/powers/digitalcamo.dm new file mode 100644 index 00000000000..92ae8e7781e --- /dev/null +++ b/code/game/gamemodes/changeling/powers/digitalcamo.dm @@ -0,0 +1,17 @@ +/obj/effect/proc_holder/changeling/digitalcamo + name = "Digital Camouflage" + desc = "By evolving the ability to distort our form and proprotions, we defeat common altgorithms used to detect lifeforms on cameras." + helptext = "We cannot be tracked by camera while using this skill. However, humans looking at us will find us... uncanny." + dna_cost = 1 + +//Prevents AIs tracking you but makes you easily detectable to the human-eye. +/obj/effect/proc_holder/changeling/digitalcamo/sting_action(var/mob/user) + + if(user.digitalcamo) + user << "We return to normal." + else + user << "We distort our form to prevent AI-tracking." + user.digitalcamo = !user.digitalcamo + + feedback_add_details("changeling_powers","CAM") + return 1 diff --git a/code/game/gamemodes/changeling/powers/epinephrine.dm b/code/game/gamemodes/changeling/powers/epinephrine.dm new file mode 100644 index 00000000000..19b809a54ce --- /dev/null +++ b/code/game/gamemodes/changeling/powers/epinephrine.dm @@ -0,0 +1,26 @@ +/obj/effect/proc_holder/changeling/epinephrine + name = "Epinephrine Overdose" + desc = "We evolve additional sacs of adrenaline throughout our body." + helptext = "Removes all stuns instantly and adds a short-term reduction in further stuns. Can be used while unconscious. Continued use poisons the body." + chemical_cost = 30 + dna_cost = 1 + req_human = 1 + req_stat = UNCONSCIOUS + +//Recover from stuns. +/obj/effect/proc_holder/changeling/epinephrine/sting_action(var/mob/user) + + if(user.lying) + user << "We arise." + else + user << "Adrenaline rushes through us." + user.stat = 0 + user.SetParalysis(0) + user.SetStunned(0) + user.SetWeakened(0) + user.lying = 0 + user.update_canmove() + user.reagents.add_reagent("synaptizine", 20) + + feedback_add_details("changeling_powers","UNS") + return 1 diff --git a/code/game/gamemodes/changeling/powers/fakedeath.dm b/code/game/gamemodes/changeling/powers/fakedeath.dm new file mode 100644 index 00000000000..df6f4424b70 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/fakedeath.dm @@ -0,0 +1,35 @@ +/obj/effect/proc_holder/changeling/fakedeath + name = "Regenerative Stasis" + desc = "We fall into a stasis, allowing us to regenerate." + chemical_cost = 10 + dna_cost = 0 + req_stat = DEAD + max_genetic_damage = 100 + + +//Fake our own death and fully heal. You will appear to be dead but regenerate fully after a short delay. +/obj/effect/proc_holder/changeling/fakedeath/sting_action(var/mob/living/user) + + user << "We begin our stasis, preparing energy to arise once more." + + user.status_flags |= FAKEDEATH //play dead + user.update_canmove() + + if(user.stat != DEAD) + user.emote("deathgasp") + user.tod = worldtime2text() + + spawn(800) + if(user && user.mind && user.mind.changeling && user.mind.changeling.purchasedpowers) + user << "We are ready to regenerate." + user.mind.changeling.purchasedpowers += new /obj/effect/proc_holder/changeling/revive(null) + + feedback_add_details("changeling_powers","FD") + return 1 + +/obj/effect/proc_holder/changeling/fakedeath/can_sting(var/mob/user) + if(user.status_flags & FAKEDEATH) + return + if(!user.stat && alert("Are we sure we wish to fake our death?",,"Yes","No") == "No")//Confirmation for living changelings if they want to fake their death + return + return ..() \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/fleshmend.dm b/code/game/gamemodes/changeling/powers/fleshmend.dm new file mode 100644 index 00000000000..b9448dabd18 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/fleshmend.dm @@ -0,0 +1,20 @@ +/obj/effect/proc_holder/changeling/fleshmend + name = "Fleshmend" + desc = "Our flesh rapidly regenerates, healing our wounds." + helptext = "Heals a moderate amount of damage over a short period of time. Can be used while unconscious." + chemical_cost = 30 + dna_cost = 1 + req_stat = UNCONSCIOUS + +//Starts healing you every second for 10 seconds. Can be used whilst unconscious. +/obj/effect/proc_holder/changeling/fleshmend/sting_action(var/mob/living/user) + user << "We begin to heal rapidly." + spawn(0) + for(var/i = 0, i<10,i++) + user.adjustBruteLoss(-10) + user.adjustOxyLoss(-10) + user.adjustFireLoss(-10) + sleep(10) + + feedback_add_details("changeling_powers","RR") + return 1 \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/glands.dm b/code/game/gamemodes/changeling/powers/glands.dm new file mode 100644 index 00000000000..861a4f28e98 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/glands.dm @@ -0,0 +1,13 @@ +/obj/effect/proc_holder/changeling/glands + name = "Engorged Chemical Glands" + desc = "Our chemical glands swell, permitting us to store more chemicals inside of them." + helptext = "Allows us to store an extra 25 units of chemicals, and doubles production rate." + dna_cost = 1 + chemical_cost = -1 + +/obj/effect/proc_holder/changeling/glands/on_purchase(var/mob/user) + ..() + var/datum/changeling/changeling=user.mind.changeling + changeling.chem_storage += 25 + changeling.chem_recharge_rate *=2 + return \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/hivemind.dm b/code/game/gamemodes/changeling/powers/hivemind.dm new file mode 100644 index 00000000000..5446f36847f --- /dev/null +++ b/code/game/gamemodes/changeling/powers/hivemind.dm @@ -0,0 +1,71 @@ +// HIVE MIND UPLOAD/DOWNLOAD DNA +var/list/datum/dna/hivemind_bank = list() + +/obj/effect/proc_holder/changeling/hivemind_upload + name = "Hive Channel" + desc = "Allows us to channel DNA in the airwaves to allow other changelings to absorb it." + chemical_cost = 10 + dna_cost = 0 + +/obj/effect/proc_holder/changeling/hivemind_upload/sting_action(var/mob/user) + var/datum/changeling/changeling = user.mind.changeling + var/list/names = list() + for(var/datum/dna/DNA in changeling.absorbed_dna) + if(!(DNA in hivemind_bank)) + names += DNA.real_name + + if(names.len <= 0) + user << "The airwaves already have all of our DNA." + return + + var/chosen_name = input("Select a DNA to channel: ", "Channel DNA", null) as null|anything in names + if(!chosen_name) + return + + var/datum/dna/chosen_dna = changeling.get_dna(chosen_name) + if(!chosen_dna) + return + + hivemind_bank += chosen_dna + user << "We channel the DNA of [chosen_name] to the air." + feedback_add_details("changeling_powers","HU") + return 1 + +/obj/effect/proc_holder/changeling/hivemind_download + name = "Hive Absorb" + desc = "Allows us to absorb DNA that has been channeled to the airwaves. Does not count towards absorb objectives." + chemical_cost = 20 + dna_cost = 0 + +/obj/effect/proc_holder/changeling/hivemind_download/can_sting(var/mob/living/carbon/user) + if(!..()) + return + var/datum/changeling/changeling = user.mind.changeling + if(changeling.absorbed_dna[1] == user.dna)//If our current DNA is the stalest, we gotta ditch it. + user << "We have reached our capacity to store genetic information! We must transform before absorbing more." + return + return 1 + +/obj/effect/proc_holder/changeling/hivemind_download/sting_action(var/mob/user) + var/datum/changeling/changeling = user.mind.changeling + var/list/names = list() + for(var/datum/dna/DNA in hivemind_bank) + if(!(DNA in changeling.absorbed_dna)) + names[DNA.real_name] = DNA + + if(names.len <= 0) + user << "There's no new DNA to absorb from the air." + return + + var/S = input("Select a DNA absorb from the air: ", "Absorb DNA", null) as null|anything in names + if(!S) return + var/datum/dna/chosen_dna = names[S] + if(!chosen_dna) + return + + if(changeling.absorbed_dna.len) + changeling.absorbed_dna.Cut(1,2) + changeling.absorbed_dna |= chosen_dna + user << "We absorb the DNA of [S] from the air." + feedback_add_details("changeling_powers","HD") + return 1 \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/humanform.dm b/code/game/gamemodes/changeling/powers/humanform.dm new file mode 100644 index 00000000000..139687bbf37 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/humanform.dm @@ -0,0 +1,33 @@ +/obj/effect/proc_holder/changeling/humanform + name = "Human form" + desc = "We change into a human." + chemical_cost = 5 + genetic_damage = 3 + req_dna = 1 + max_genetic_damage = 3 + +//Transform into a human. +/obj/effect/proc_holder/changeling/humanform/sting_action(var/mob/living/carbon/user) + var/datum/changeling/changeling = user.mind.changeling + var/list/names = list() + for(var/datum/dna/DNA in changeling.absorbed_dna) + names += "[DNA.real_name]" + + var/chosen_name = input("Select the target DNA: ", "Target DNA", null) as null|anything in names + if(!chosen_name) + return + + var/datum/dna/chosen_dna = changeling.get_dna(chosen_name) + if(!chosen_dna) + return + + user << "We transform our appearance." + user.dna = chosen_dna + + user.humanize((TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPDAMAGE | TR_KEEPSRC),chosen_dna.real_name) + + changeling.purchasedpowers -= src + feedback_add_details("changeling_powers","LFT") + del(user) + return 1 + diff --git a/code/game/gamemodes/changeling/powers/lesserform.dm b/code/game/gamemodes/changeling/powers/lesserform.dm new file mode 100644 index 00000000000..084c688d4b7 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/lesserform.dm @@ -0,0 +1,18 @@ +/obj/effect/proc_holder/changeling/lesserform + name = "Lesser form" + desc = "We debase ourselves and become lesser. We become a monkey." + chemical_cost = 5 + dna_cost = 1 + genetic_damage = 3 + req_human = 1 + +//Transform into a monkey. +/obj/effect/proc_holder/changeling/lesserform/sting_action(var/mob/living/carbon/human/user) + user << "Our genes cry out!" + + var/mob/living/carbon/monkey/O = user.monkeyize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPDAMAGE | TR_KEEPSE | TR_KEEPSRC) + + O.mind.changeling.purchasedpowers += new /obj/effect/proc_holder/changeling/humanform(null) + feedback_add_details("changeling_powers","LF") + .=1 + del(user) diff --git a/code/game/gamemodes/changeling/powers/mimic_voice.dm b/code/game/gamemodes/changeling/powers/mimic_voice.dm new file mode 100644 index 00000000000..6bf264e3e24 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/mimic_voice.dm @@ -0,0 +1,28 @@ +/obj/effect/proc_holder/changeling/mimicvoice + name = "Mimic Voice" + desc = "We shape our vocal glands to sound like a desired voice." + helptext = "Will turn your voice into the name that you enter. We must constantly expend chemicals to maintain our form like this." + chemical_cost = 0 //constant chemical drain hardcoded + dna_cost = 1 + req_human = 1 + + +// Fake Voice +/obj/effect/proc_holder/changeling/mimicvoice/sting_action(var/mob/user) + var/datum/changeling/changeling=user.mind.changeling + if(changeling.mimicing) + changeling.mimicing = "" + changeling.chem_recharge_slowdown -= 0.5 + user << "We return our vocal glands to their original position." + return + + var/mimic_voice = input("Enter a name to mimic.", "Mimic Voice", null) as text + if(!mimic_voice) + return + + changeling.mimicing = mimic_voice + changeling.chem_recharge_slowdown += 0.5 + user << "We shape our glands to take the voice of [mimic_voice], this will stop us from regenerating chemicals while active." + user << "Use this power again to return to our original voice and reproduce chemicals again." + + feedback_add_details("changeling_powers","MV") \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/mutations.dm b/code/game/gamemodes/changeling/powers/mutations.dm new file mode 100644 index 00000000000..6ff0c287501 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/mutations.dm @@ -0,0 +1,170 @@ +/* + Changeling Mutations! ~By Miauw + Contains: + Arm Blade + Space Suit + TODO: + Shield + Armor +*/ + +/obj/effect/proc_holder/changeling/arm_blade + name = "Arm Blade" + desc = "We reform one of our arms into a deadly blade." + helptext = "Cannot be used while in lesser form." + chemical_cost = 20 + dna_cost = 1 + genetic_damage = 8 + req_human = 1 + + +/obj/effect/proc_holder/changeling/arm_blade/try_to_sting(var/mob/user, var/mob/target) + if(istype(user.l_hand, /obj/item/weapon/melee/arm_blade)) //Not the nicest way to do it, but eh + del user.l_hand + user.visible_message("With a sickening crunch, [user] reforms his blade into an arm!", "We assimilate our blade into our body", "With a sickening crunch, [user] reforms his blade into an arm!", "We assimilate our blade into our body", "A grotesque blade forms around [loc.name]\'s arm!", "Our arm twists and mutates, transforming it into a deadly blade.", "You hear organic matter ripping and tearing!") + +/obj/item/weapon/melee/arm_blade/dropped(mob/user) + visible_message("With a sickening crunch, [user] reforms his blade into an arm!", "We assimilate our blade into our body", "" + return + + else if(A.locked) + user << "The airlock's bolts prevent it from being forced." + return + + else + //user.say("Heeeeeeeeeerrre's Johnny!") + user.visible_message("[user] forces the door to open with \his [src]!", "We force the door to open.", "You hear a metal screeching sound.") + A.open(1) + +//Space Suit & Helmet +/obj/effect/proc_holder/changeling/organic_space_suit + name = "Organic Space Suit" + desc = "We grow an organic suit to protect ourselves from space exposure." + helptext = "We must constantly repair our form to make it space-proof, reducing chemical production while we are protected. Retreating the suit damages our genomes. Cannot be used in lesser form." + chemical_cost = 20 + dna_cost = 1 + genetic_damage = 8 + req_human = 1 + +/obj/effect/proc_holder/changeling/organic_space_suit/try_to_sting(var/mob/user, var/mob/target) + var/datum/changeling/changeling = user.mind.changeling + if(!ishuman(user)) + return + var/mob/living/carbon/human/H = user + if(changeling.space_suit_active) + changeling.space_suit_active = 0 + H.visible_message("[H] casts off their flesh shell!", "We cast off our protective organic shell, temporarily weakening our genomes.", "You hear the organic matter ripping and tearing!") + del H.wear_suit + del H.head + H.update_inv_wear_suit() + H.update_inv_head() + H.update_hair() + + var/turf/simulated/T = get_turf(H) + if(istype(T)) + T.add_blood(H) //So real blood decals + playsound(H.loc, 'sound/effects/splat.ogg', 50, 1) //So real sounds + changeling.geneticdamage += 8 //Casting off a space suit leaves you weak for a few seconds. + changeling.chem_recharge_slowdown -= 0.5 + return + ..(H, target) + +/obj/effect/proc_holder/changeling/organic_space_suit/sting_action(var/mob/living/carbon/human/user) + if(!user.canUnEquip(user.wear_suit)) + user << "\the [user.wear_suit] is stuck to your body, you cannot grow a space suit over it!" + return + if(!user.canUnEquip(user.head)) + user << "\the [user.head] is stuck on your head, you cannot grow a space helmet over it!" + return + user.unEquip(user.head) + user.unEquip(user.wear_suit) + user.equip_to_slot_if_possible(new /obj/item/clothing/suit/space/changeling(user), slot_wear_suit, 1, 1, 1) + user.equip_to_slot_if_possible(new /obj/item/clothing/head/helmet/space/changeling(user), slot_head, 1, 1, 1) + user.visible_message("[user]'s flesh rapidly inflates, forming a bloated mass around their body!", "We inflate our flesh, creating a spaceproof suit!", "You hear organic matter ripping and tearing!") + var/datum/changeling/changeling = user.mind.changeling + changeling.space_suit_active = 1 + changeling.chem_recharge_slowdown +=0.5 + return 1 + +/obj/item/clothing/suit/space/changeling + name = "flesh mass" + icon_state = "lingspacesuit" + desc = "A huge, bulky mass of pressure and temperature-resistant organic tissue, evolved to facilitate space travel." + flags = STOPSPRESSUREDMAGE | NODROP //Not THICKMATERIAL because it's organic tissue, so if somebody tries to inject something into it, it still ends up in your blood. (also balance but muh fluff) + allowed = list(/obj/item/device/flashlight, /obj/item/weapon/tank/emergency_oxygen, /obj/item/weapon/tank/oxygen) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) //No armor at all. + +/obj/item/clothing/suit/space/changeling/New() + processing_objects += src + +/obj/item/clothing/suit/space/changeling/dropped() + del src + +/obj/item/clothing/suit/space/changeling/process() + if(ishuman(loc)) + var/mob/living/carbon/human/H = loc + H.reagents.add_reagent("dexalinp", REAGENTS_METABOLISM) + +/obj/item/clothing/head/helmet/space/changeling + name = "flesh mass" + icon_state = "lingspacehelmet" + desc = "A covering of pressure and temperature-resistant organic tissue with a glass-like chitin front." + flags = HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPSPRESSUREDMAGE | NODROP //Again, no THICKMATERIAL. + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) + +/obj/item/clothing/head/helmet/space/changeling/dropped() + del src diff --git a/code/game/gamemodes/changeling/powers/panacea.dm b/code/game/gamemodes/changeling/powers/panacea.dm new file mode 100644 index 00000000000..d3b4f724a02 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/panacea.dm @@ -0,0 +1,21 @@ +/obj/effect/proc_holder/changeling/panacea + name = "Anatomic Panacea" + desc = "Expels impurifications from our form; curing diseases, genetic disabilities, and removing toxins and radiation." + helptext = "Can be used while unconscious." + chemical_cost = 25 + dna_cost = 1 + req_stat = UNCONSCIOUS + +//Heals the things that the other regenerative abilities don't. +/obj/effect/proc_holder/changeling/panacea/sting_action(var/mob/user) + + user << "We cleanse impurities from our form." + user.reagents.add_reagent("ryetalyn", 10) + user.reagents.add_reagent("hyronalin", 10) + user.reagents.add_reagent("anti_toxin", 20) + + for(var/datum/disease/D in user.viruses) + D.cure() + + feedback_add_details("changeling_powers","AP") + return 1 \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/revive.dm b/code/game/gamemodes/changeling/powers/revive.dm new file mode 100644 index 00000000000..0738c58ab38 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/revive.dm @@ -0,0 +1,30 @@ +/obj/effect/proc_holder/changeling/revive + name = "Regenerate" + desc = "We regenerate, healing all damage from our form." + chemical_cost = 10 + req_stat = DEAD + +//Revive from regenerative stasis +/obj/effect/proc_holder/changeling/revive/sting_action(var/mob/living/carbon/user) + + if(user.stat == DEAD) + dead_mob_list -= user + living_mob_list += user + user.stat = CONSCIOUS + user.tod = null + user.setToxLoss(0) + user.setOxyLoss(0) + user.setCloneLoss(0) + user.SetParalysis(0) + user.SetStunned(0) + user.SetWeakened(0) + user.radiation = 0 + user.heal_overall_damage(user.getBruteLoss(), user.getFireLoss()) + user.reagents.clear_reagents() + user << "We have regenerated." + + user.status_flags &= ~(FAKEDEATH) + user.update_canmove() + user.mind.changeling.purchasedpowers -= src + feedback_add_details("changeling_powers","CR") + return 1 \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/shriek.dm b/code/game/gamemodes/changeling/powers/shriek.dm new file mode 100644 index 00000000000..0d0b52eea4d --- /dev/null +++ b/code/game/gamemodes/changeling/powers/shriek.dm @@ -0,0 +1,45 @@ +/obj/effect/proc_holder/changeling/resonant_shriek + name = "Resonant Shriek" + desc = "Our lungs and vocal chords shift, allowing us to briefly emit a noise that deafens and confuses the weak-minded." + helptext = "Emits a high-frequency sound that confuses and deafens humans, blows out nearby lights and overloads cyborg sensors." + chemical_cost = 25 + dna_cost = 1 + req_human = 1 + +//A flashy ability, good for crowd control and sewing chaos. +/obj/effect/proc_holder/changeling/resonant_shriek/sting_action(var/mob/user) + for(var/mob/living/M in hearers(4, user)) + if(iscarbon(M)) + if(!M.mind || !M.mind.changeling) + M.ear_deaf += 30 + M.confused += 20 + M.Jitter(50) + else + M << sound('sound/effects/screech.ogg') + + if(issilicon(M)) + M << sound('sound/weapons/flash.ogg') + M.Weaken(rand(5,10)) + + for(var/obj/machinery/light/L in range(4, user)) + L.on = 1 + L.broken() + + feedback_add_details("changeling_powers","RS") + return 1 + +/obj/effect/proc_holder/changeling/dissonant_shriek + name = "Dissonant Shriek" + desc = "We shift our vocal cords to release a high-frequency sound that overloads nearby electronics." + chemical_cost = 20 + dna_cost = 1 + +//A flashy ability, good for crowd control and sewing chaos. +/obj/effect/proc_holder/changeling/dissonant_shriek/sting_action(var/mob/user) + for(var/obj/machinery/light/L in range(5, usr)) + L.on = 1 + L.broken() + empulse(get_turf(user), 2, 5, 1) + return 1 + + diff --git a/code/game/gamemodes/changeling/powers/spiders.dm b/code/game/gamemodes/changeling/powers/spiders.dm new file mode 100644 index 00000000000..bb61f84258d --- /dev/null +++ b/code/game/gamemodes/changeling/powers/spiders.dm @@ -0,0 +1,16 @@ +/obj/effect/proc_holder/changeling/spiders + name = "Spread Infestation" + desc = "Our form divides, creating arachnids which will grow into deadly beasts." + helptext = "The spiders are thoughtless creatures, and may attack their creators when fully grown. Requires at least 5 DNA absorptions." + chemical_cost = 50 + dna_cost = 1 + req_dna = 5 + +//Makes some spiderlings. Good for setting traps and causing general trouble. +/obj/effect/proc_holder/changeling/spiders/sting_action(var/mob/user) + for(var/i=0, i<2, i++) + var/obj/effect/spider/spiderling/S = new(user.loc) + S.grow_as = /mob/living/simple_animal/hostile/giant_spider/hunter + + feedback_add_details("changeling_powers","SI") + return 1 diff --git a/code/game/gamemodes/changeling/powers/tiny_prick.dm b/code/game/gamemodes/changeling/powers/tiny_prick.dm new file mode 100644 index 00000000000..4c9b9fafdb8 --- /dev/null +++ b/code/game/gamemodes/changeling/powers/tiny_prick.dm @@ -0,0 +1,163 @@ +/obj/effect/proc_holder/changeling/sting + name = "Tiny Prick" + desc = "Stabby stabby" + var/sting_icon = null + +/obj/effect/proc_holder/changeling/sting/Click() + var/mob/user = usr + if(!user || !user.mind || !user.mind.changeling) + return + if(!(user.mind.changeling.chosen_sting)) + set_sting(user) + else + unset_sting(user) + return + +/obj/effect/proc_holder/changeling/sting/proc/set_sting(var/mob/user) + user << "We prepare our sting, use alt+click or middle mouse button on target to sting them." + user.mind.changeling.chosen_sting = src + user.hud_used.lingstingdisplay.icon_state = sting_icon + user.hud_used.lingstingdisplay.invisibility = 0 + +/obj/effect/proc_holder/changeling/sting/proc/unset_sting(var/mob/user) + user << "We retract our sting, we can't sting anyone for now." + user.mind.changeling.chosen_sting = null + user.hud_used.lingstingdisplay.icon_state = null + user.hud_used.lingstingdisplay.invisibility = 101 + +/mob/living/carbon/proc/unset_sting() + if(mind && mind.changeling && mind.changeling.chosen_sting) + src.mind.changeling.chosen_sting.unset_sting(src) + +/obj/effect/proc_holder/changeling/sting/can_sting(var/mob/user, var/mob/target) + if(!..()) + return + if(!user.mind.changeling.chosen_sting) + user << "We haven't prepared our sting yet!" + if(!iscarbon(target)) + return + if(!isturf(user.loc)) + return + if(get_dist(user, target) > (user.mind.changeling.sting_range)) + return //sanity check as AStar is still throwing insane stunts + if(!AStar(user.loc, target.loc, /turf/proc/AdjacentTurfs, /turf/proc/Distance, user.mind.changeling.sting_range)) + return //hope this ancient magic still works + return 1 + +/obj/effect/proc_holder/changeling/sting/sting_feedback(var/mob/user, var/mob/target) + user << "We stealthily sting [target.name]." + if(target.mind && target.mind.changeling) + target << "You feel a tiny prick." + add_logs(user, target, "unsuccessfully stung") + return 1 + + +/obj/effect/proc_holder/changeling/sting/transformation + name = "Transformation Sting" + desc = "We silently sting a human, injecting a retrovirus that forces them to transform." + helptext = "Does not provide a warning to others. The victim will transform much like a changeling would." + sting_icon = "sting_transform" + chemical_cost = 40 + dna_cost = 1 + var/datum/dna/selected_dna = null + +/obj/effect/proc_holder/changeling/sting/transformation/can_sting(var/mob/user, var/mob/target) + if(!..()) + return + var/datum/changeling/changeling = user.mind.changeling + selected_dna = changeling.select_dna("Select the target DNA: ", "Target DNA") + if(!selected_dna) + return + if((HUSK in target.mutations) || !check_dna_integrity(target)) + user << "Our sting appears ineffective against its DNA." + return 0 + return 1 + +/obj/effect/proc_holder/changeling/sting/transformation/sting_action(var/mob/user, var/mob/target) + add_logs(user, target, "stung", object="transformation sting", addition=" new identity is [selected_dna.real_name]") + var/datum/dna/NewDNA = selected_dna + hardset_dna(target, NewDNA.uni_identity, NewDNA.struc_enzymes, NewDNA.real_name, NewDNA.mutantrace, NewDNA.blood_type) + updateappearance(target) + feedback_add_details("changeling_powers","TS") + return 1 + +obj/effect/proc_holder/changeling/sting/extract_dna + name = "Extract DNA Sting" + desc = "We stealthily sting a target and extract their DNA." + helptext = "Will give you the DNA of your target, allowing you to transform into them." + sting_icon = "sting_extract" + chemical_cost = 25 + dna_cost = 0 + +/obj/effect/proc_holder/changeling/sting/extract_dna/can_sting(var/mob/user, var/mob/target) + if(..()) + return user.mind.changeling.can_absorb_dna(user, target) + +/obj/effect/proc_holder/changeling/sting/extract_dna/sting_action(var/mob/user, var/mob/target) + add_logs(user, target, "stung", object="extraction sting") + user.mind.changeling.absorb_dna(target, user) + feedback_add_details("changeling_powers","ED") + return 1 + +obj/effect/proc_holder/changeling/sting/mute + name = "Mute Sting" + desc = "We silently sting a human, completely silencing them for a short time." + helptext = "Does not provide a warning to the victim that they have been stung, until they try to speak and cannot." + sting_icon = "sting_mute" + chemical_cost = 20 + dna_cost = 1 + +/obj/effect/proc_holder/changeling/sting/mute/sting_action(var/mob/user, var/mob/living/carbon/target) + add_logs(user, target, "stung", object="mute sting") + target.silent += 30 + feedback_add_details("changeling_powers","MS") + return 1 + +obj/effect/proc_holder/changeling/sting/blind + name = "Blind Sting" + desc = "Temporarily blinds the target." + helptext = "This sting completely blinds a target for a short time. The target does not notice they have been stung." + sting_icon = "sting_blind" + chemical_cost = 25 + dna_cost = 1 + +/obj/effect/proc_holder/changeling/sting/blind/sting_action(var/mob/user, var/mob/target) + add_logs(user, target, "stung", object="blind sting") + target << "Your eyes burn horrifically!" + target.disabilities |= NEARSIGHTED + target.eye_blind = 20 + target.eye_blurry = 40 + feedback_add_details("changeling_powers","BS") + return 1 + +obj/effect/proc_holder/changeling/sting/LSD + name = "Hallucination Sting" + desc = "Causes terror in the target." + helptext = "We evolve the ability to sting a target with a powerful hallucinogenic chemical. The target does not notice they have been stung. The effect occurs after 30 to 60 seconds." + sting_icon = "sting_lsd" + chemical_cost = 5 + dna_cost = 1 + +/obj/effect/proc_holder/changeling/sting/LSD/sting_action(var/mob/user, var/mob/living/carbon/target) + add_logs(user, target, "stung", object="LSD sting") + spawn(rand(300,600)) + if(target) + target.hallucination += 400 + feedback_add_details("changeling_powers","HS") + return 1 + +obj/effect/proc_holder/changeling/sting/cryo + name = "Cryogenic Sting" + desc = "We silently sting a human with a cocktail of chemicals that freeze them." + helptext = "Does not provide a warning to the victim, though they will likely realize they are suddenly freezing." + sting_icon = "sting_cryo" + chemical_cost = 15 + dna_cost = 1 + +/obj/effect/proc_holder/changeling/sting/cryo/sting_action(var/mob/user, var/mob/target) + add_logs(user, target, "stung", object="cryo sting") + if(target.reagents) + target.reagents.add_reagent("frostoil", 30) + target.reagents.add_reagent("ice", 30) + feedback_add_details("changeling_powers","CS") + return 1 \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/transform.dm b/code/game/gamemodes/changeling/powers/transform.dm new file mode 100644 index 00000000000..d3ebd5bbe3c --- /dev/null +++ b/code/game/gamemodes/changeling/powers/transform.dm @@ -0,0 +1,36 @@ +/obj/effect/proc_holder/changeling/transform + name = "Transform" + desc = "We take on the appearance and voice of one we have absorbed." + chemical_cost = 5 + dna_cost = 0 + req_dna = 1 + req_human = 1 + max_genetic_damage = 3 + +//Change our DNA to that of somebody we've absorbed. +/obj/effect/proc_holder/changeling/transform/sting_action(var/mob/living/carbon/user) + var/datum/changeling/changeling = user.mind.changeling + var/datum/dna/chosen_dna = changeling.select_dna("Select the target DNA: ", "Target DNA") + + if(!chosen_dna) + return + + + user.dna = chosen_dna + user.real_name = chosen_dna.real_name + updateappearance(user) + domutcheck(user, null) + + feedback_add_details("changeling_powers","TR") + return 1 + +/datum/changeling/proc/select_dna(var/prompt, var/title) + var/list/names = list() + for(var/datum/dna/DNA in absorbed_dna) + names += "[DNA.real_name]" + + var/chosen_name = input(prompt, title, null) as null|anything in names + if(!chosen_name) + return + var/datum/dna/chosen_dna = get_dna(chosen_name) + return chosen_dna \ No newline at end of file diff --git a/code/game/gamemodes/gameticker.dm b/code/game/gamemodes/gameticker.dm index e0c920305a1..1addcf7340b 100644 --- a/code/game/gamemodes/gameticker.dm +++ b/code/game/gamemodes/gameticker.dm @@ -111,7 +111,7 @@ var/global/datum/controller/gameticker/ticker else src.mode.announce() - supply_shuttle.process() //Start the supply shuttle regenerating points -- TLE + supply_shuttle.process() //Start the supply shuttle regenerating points master_controller.process() //Start master_controller.process() lighting_controller.process() //Start processing DynamicAreaLighting updates @@ -142,7 +142,7 @@ var/global/datum/controller/gameticker/ticker if(config.sql_enabled) spawn(3000) - statistic_cycle() // Polls population totals regularly and stores them in an SQL DB -- TLE + statistic_cycle() // Polls population totals regularly and stores them in an SQL DB return 1 /datum/controller/gameticker @@ -150,7 +150,7 @@ var/global/datum/controller/gameticker/ticker //Now we have a general cinematic centrally held within the gameticker....far more efficient! var/obj/screen/cinematic = null - //Plus it provides an easy way to make cinematics for other events. Just use this as a template :) + //Plus it provides an easy way to make cinematics for other events. Just use this as a template proc/station_explosion_cinematic(var/station_missed=0, var/override = null) if( cinematic ) return //already a cinematic in progress! diff --git a/code/game/gamemodes/malfunction/Malf_Modules.dm b/code/game/gamemodes/malfunction/Malf_Modules.dm index 85b74214ed2..ec4d155e8d0 100644 --- a/code/game/gamemodes/malfunction/Malf_Modules.dm +++ b/code/game/gamemodes/malfunction/Malf_Modules.dm @@ -33,7 +33,7 @@ for(var/mob/living/silicon/ai/ai in player_list) ai.fire_res_on_core = 1 src.verbs -= /mob/living/silicon/ai/proc/fireproof_core - src << "\red Core fireproofed." + src << "Core fireproofed." /datum/AI_Module/large/upgrade_turrets module_name = "AI Turret upgrade" @@ -51,6 +51,7 @@ for(var/obj/machinery/turret/turret in machines) turret.health += 30 turret.shot_delay = 20 + src << "Turrets upgraded." /datum/AI_Module/large/disable_rcd module_name = "RCD disable" @@ -70,8 +71,8 @@ rcd.disabled = 1 for(var/obj/item/mecha_parts/mecha_equipment/tool/rcd/rcd in world) rcd.disabled = 1 - src << "RCD-disabling pulse emitted." - else src << "Out of uses." + src << "Out of uses." /datum/AI_Module/small/overload_machine module_name = "Machine overload" @@ -91,17 +92,18 @@ overload.uses -- for(var/mob/V in hearers(M, null)) V.show_message("\blue You hear a loud electrical buzzing sound!", 2) + src << "Overloading machine circuitry..." spawn(50) if(M) explosion(get_turf(M), 0,1,1,0) qdel(M) - else src << "Out of uses." - else src << "That's not a machine." + else src << "Out of uses." + else src << "That's not a machine." /datum/AI_Module/small/override_machine module_name = "Machine override" mod_pick_name = "override" - description = "Overrides a machine's programming, causing it to rise up attack everyone except you (WARNING: It will attack cyborgs). 4 uses." + description = "Overrides a machine's programming, causing it to rise up and attack everyone except other machines. 4 uses." uses = 4 cost = 15 @@ -117,14 +119,12 @@ override.uses -- for(var/mob/V in hearers(M, null)) V.show_message("\blue You hear a loud electrical buzzing sound!", 2) + src << "Reprogramming machine behaviour..." spawn(50) if(M) - var/mob/living/simple_animal/hostile/mimic/copy/machine = new(get_turf(M), M, src, 1) - machine.speak = list("HUMANS ARE IMPERFECT!", "YOU SHALL BE ASSIMILATED!", "YOU ARE HARMING YOURSELF", "You have been deemed hazardous. Will you comply?", \ - "My logic is undeniable.", "One of us.", "FLESH IS WEAK", "THIS ISN'T WAR, THIS IS EXTERMINATION!") - machine.speak_chance = 15 - else src << "Out of uses." - else src << "That's not a machine." + new /mob/living/simple_animal/hostile/mimic/copy/machine(get_turf(M), M, src, 1) + else src << "Out of uses." + else src << "That's not a machine." /datum/AI_Module/large/place_cyborg_transformer module_name = "Robotic Factory (Removes Shunting)" @@ -185,7 +185,7 @@ playsound(middle, 'sound/effects/phasein.ogg', 100, 1) src.can_shunt = 0 PCT.uses -= 1 - src << "You cannot shunt anymore." + src << "You cannot shunt anymore." /datum/AI_Module/small/blackout @@ -207,12 +207,13 @@ if(prob(30*apc.overload)) apc.overload_lighting() else apc.overload++ - else src << "Out of uses." + src << "Overcurrent applied to the powernet." + else src << "Out of uses." /datum/AI_Module/small/interhack module_name = "Hack intercept" mod_pick_name = "interhack" - description = "Hacks the status upgrade from Cent. Com, removing any information about malfunctioning electrical systems." + description = "Hacks the status update from Centcom, removing any information about malfunctioning electrical systems." cost = 15 one_time = 1 @@ -223,6 +224,7 @@ set name = "Hack intercept" src.verbs -= /mob/living/silicon/ai/proc/interhack ticker.mode:hack_intercept() + src << "Status update intercepted and modified." /datum/AI_Module/small/reactivate_camera module_name = "Reactivate camera" @@ -242,15 +244,16 @@ if(!C.status) C.deactivate(src) camera.uses -- + src << "Camera reactivated." else - src << "This camera is either active, or not repairable." - else src << "Out of uses." - else src << "That's not a camera." + src << "This camera is either active, or not repairable." + else src << "Out of uses." + else src << "That's not a camera." /datum/AI_Module/small/upgrade_camera module_name = "Upgrade Camera" mod_pick_name = "upgradecam" - description = "Upgrades a camera to have X-Ray vision, Motion and be EMP-Proof. 5 uses." + description = "Upgrades a camera to have X-ray vision, motion sensing and be EMP-Proof. 5 uses." uses = 5 cost = 5 @@ -285,11 +288,11 @@ if(upgraded) UC.uses -- C.visible_message("\icon[C] *beep*") - src << "Camera successully upgraded!" + src << "Camera successully upgraded!" else - src << "This camera is already upgraded!" + src << "This camera is already upgraded!" else - src << "Out of uses." + src << "Out of uses." /datum/module_picker diff --git a/code/game/jobs/access.dm b/code/game/jobs/access.dm index 3584ea4cb8f..03b32f2cc60 100644 --- a/code/game/jobs/access.dm +++ b/code/game/jobs/access.dm @@ -73,7 +73,6 @@ /var/const/access_cent_living = 105//Living quarters. /var/const/access_cent_storage = 106//Generic storage areas. /var/const/access_cent_teleporter = 107//Teleporter. -/var/const/access_cent_creed = 108//Creed's office. /var/const/access_cent_captain = 109//Captain's office/ID comp/AI. //The Syndicate @@ -182,7 +181,7 @@ if("Research Officer") return list(access_cent_general, access_cent_specops, access_cent_medical, access_cent_teleporter, access_cent_storage) if("Special Ops Officer") - return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_living, access_cent_storage, access_cent_creed) + return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_living, access_cent_storage) if("Admiral") return get_all_centcom_access() if("Centcom Commander") @@ -389,8 +388,6 @@ return "Code Blue" if(access_cent_specops) return "Code Black" - if(access_cent_creed) - return "Code Silver" if(access_cent_captain) return "Code Gold" diff --git a/code/game/jobs/job/captain.dm b/code/game/jobs/job/captain.dm index da37da1b1af..95666d483b3 100644 --- a/code/game/jobs/job/captain.dm +++ b/code/game/jobs/job/captain.dm @@ -78,10 +78,9 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/head_of_personnel(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(H), slot_shoes) H.equip_to_slot_or_del(new /obj/item/device/pda/heads/hop(H), slot_belt) - H.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest(H), slot_wear_suit) - H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet(H), slot_head) + H.equip_to_slot_or_del(new /obj/item/clothing/head/hopcap(H), slot_head) if(H.backbag == 1) H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H), slot_r_hand) else H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H.back), slot_in_backpack) - return 1 \ No newline at end of file + return 1 diff --git a/code/game/machinery/Freezer.dm b/code/game/machinery/Freezer.dm index 6ff53810416..ae4e13f1516 100644 --- a/code/game/machinery/Freezer.dm +++ b/code/game/machinery/Freezer.dm @@ -18,7 +18,7 @@ component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/stack/cable_coil(null) + component_parts += new /obj/item/stack/cable_coil(null, 1) RefreshParts() /obj/machinery/atmospherics/unary/cold_sink/freezer/RefreshParts() @@ -140,7 +140,7 @@ component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/stack/cable_coil(null) + component_parts += new /obj/item/stack/cable_coil(null, 1) RefreshParts() /obj/machinery/atmospherics/unary/heat_reservoir/heater/RefreshParts() @@ -241,4 +241,4 @@ ..() if(stat & NOPOWER) on = 0 - update_icon() \ No newline at end of file + update_icon() diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 9de1b9e69fe..657997e2506 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -13,17 +13,23 @@ anchored = 1 var/efficiency state_open = 1 + var/initial_bin_rating = 1 var/min_health = 25 var/list/injection_chems = list() //list of injectable chems except inaprovaline, coz inaprovaline is always avalible var/list/possible_chems = list(list("stoxin", "dexalin", "bicaridine", "kelotane"), - list("stoxin", "dexalinp", "imidazoline", "dermaline", "bicaridine"), - list("tricordrazine", "anti_toxin", "ryetalyn", "dermaline", "bicaridine", "imidazoline", "alkysine", "arithrazine")) + list("stoxin", "dexalinp", "imidazoline", "dermaline", "bicaridine"), + list("tricordrazine", "anti_toxin", "ryetalyn", "dermaline", "bicaridine", "imidazoline", "alkysine", "arithrazine")) /obj/machinery/sleeper/New() ..() component_parts = list() component_parts += new /obj/item/weapon/circuitboard/sleeper(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) + + // Customizable bin rating, used by the labor camp to stop people filling themselves with chemicals and escaping. + var/obj/item/weapon/stock_parts/matter_bin/B = new(null) + B.rating = initial_bin_rating + component_parts += B + component_parts += new /obj/item/weapon/stock_parts/manipulator(null) component_parts += new /obj/item/weapon/stock_parts/console_screen(null) component_parts += new /obj/item/weapon/stock_parts/console_screen(null) @@ -227,10 +233,11 @@ /obj/machinery/sleeper/proc/inject_chem(mob/user, chem) if(occupant && occupant.reagents) - if(occupant.reagents.get_reagent_amount(chem) + 10 <= 20 * efficiency) - occupant.reagents.add_reagent(chem, 10) - var/units = round(occupant.reagents.get_reagent_amount(chem)) - user << "Occupant now has [units] unit\s of [chem] in their bloodstream." + if(chem in injection_chems + "inaprovaline") + if(occupant.reagents.get_reagent_amount(chem) + 10 <= 20 * efficiency) + occupant.reagents.add_reagent(chem, 10) + var/units = round(occupant.reagents.get_reagent_amount(chem)) + user << "Occupant now has [units] unit\s of [chem] in their bloodstream." /obj/machinery/sleeper/update_icon() if(state_open) diff --git a/code/game/machinery/atmo_control.dm b/code/game/machinery/atmo_control.dm index f829713df04..f711fe8bb83 100644 --- a/code/game/machinery/atmo_control.dm +++ b/code/game/machinery/atmo_control.dm @@ -186,7 +186,7 @@ obj/machinery/computer/general_air_control return_text() var/output = ..() //if(signal.data) - // input_info = signal.data // Attempting to fix intake control -- TLE + // input_info = signal.data // Attempting to fix intake control output += "

Tank Control System

" if(input_info) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 5f5cc02048d..a460626269c 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -120,7 +120,7 @@ var/global/list/autolathe_recipes_hidden = list( \ if (stat) return 1 if (busy) - user << "\red The autolathe is busy. Please wait for completion of previous operation." + user << "The autolathe is busy. Please wait for completion of previous operation." return 1 if(default_deconstruction_screwdriver(user, "autolathe_t", "autolathe", O)) @@ -145,13 +145,13 @@ var/global/list/autolathe_recipes_hidden = list( \ return 1 if (src.m_amount + O.m_amt > max_m_amount) - user << "\red The autolathe is full. Please remove metal from the autolathe in order to insert more." + user << "The autolathe is full. Please remove metal from the autolathe in order to insert more." return 1 if (src.g_amount + O.g_amt > max_g_amount) - user << "\red The autolathe is full. Please remove glass from the autolathe in order to insert more." + user << "The autolathe is full. Please remove glass from the autolathe in order to insert more." return 1 if (O.m_amt == 0 && O.g_amt == 0) - user << "\red This object does not contain significant amounts of metal or glass, or cannot be accepted by the autolathe due to size or hazardous materials." + user << "This object does not contain significant amounts of metal or glass, or cannot be accepted by the autolathe due to size or hazardous materials." return 1 var/amount = 1 @@ -227,7 +227,7 @@ var/global/list/autolathe_recipes_hidden = list( \ src.g_amount = 0 busy = 0 else - usr << "\red The autolathe is busy. Please wait for completion of previous operation." + usr << "The autolathe is busy. Please wait for completion of previous operation." src.updateUsrDialog() return @@ -246,27 +246,27 @@ var/global/list/autolathe_recipes_hidden = list( \ var/dat if(!panel_open) var/coeff = 2 ** prod_coeff - dat = "
Metal Amount: [src.m_amount] / [max_m_amount] cm3
" - dat += "Glass Amount: [src.g_amount] / [max_g_amount] cm3
" + dat = "
Metal amount: [src.m_amount] / [max_m_amount] cm3
" + dat += "Glass amount: [src.g_amount] / [max_g_amount] cm3
" var/list/objs = list() objs += src.L if(src.hacked) objs += src.LL for(var/obj/t in objs) if(disabled || m_amount[t]", "The ", "") else - dat += "[t.name]" + dat += replacetext("[t]", "The ", "") if(istype(t, /obj/item/stack)) var/obj/item/stack/S = t var/max_multiplier = min(S.max_amount, S.m_amt?round(m_amount/S.m_amt):INFINITY, S.g_amt?round(g_amount/S.g_amt):INFINITY) if (max_multiplier>10 && !disabled) - dat += " x[10]" + dat += " x[10]" if (max_multiplier>25 && !disabled) - dat += " x[25]" + dat += " x[25]" if (max_multiplier>1 && !disabled) - dat += " x[max_multiplier]" + dat += " x[max_multiplier]" dat += " [t.m_amt] m / [t.g_amt] g" else dat += " [t.m_amt/coeff] m / [t.g_amt/coeff] g" diff --git a/code/game/machinery/bots/floorbot.dm b/code/game/machinery/bots/floorbot.dm index e113689bdb5..963f2785dfb 100644 --- a/code/game/machinery/bots/floorbot.dm +++ b/code/game/machinery/bots/floorbot.dm @@ -194,7 +194,7 @@ if(targetdirection != null) /* for (var/turf/space/D in view(7,src)) - if(!(D in floorbottargets) && D != src.oldtarget) // Added for bridging mode -- TLE + if(!(D in floorbottargets) && D != src.oldtarget) // Added for bridging mode if(get_dir(src, D) == targetdirection) src.oldtarget = D src.target = D diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index b06a181fa9f..49ef88bdbd5 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -244,7 +244,7 @@ /obj/item/weapon/circuitboard/rdconsole/attackby(obj/item/I as obj, mob/user as mob) if(istype(I,/obj/item/weapon/screwdriver)) - if(src.build_path == "/obj/machinery/computer/rdconsole/core") + if(build_path == /obj/machinery/computer/rdconsole/core) name = "circuit board (RD Console - Robotics)" build_path = /obj/machinery/computer/rdconsole/robotics user << "Access protocols successfully updated." diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index aed30d352a9..abcd6c8edd6 100644 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -507,7 +507,7 @@ user << "Centcom will not allow the shuttle to be called. Consider all contracts terminated." return */ - if(world.time < 6000) // Ten minute grace period to let the game get going without lolmetagaming. -- TLE + if(world.time < 6000) user << "The emergency shuttle is refueling. Please wait another [round((6000-world.time)/600)] minutes before trying again." return diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 5179e09843c..dafe8600e96 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -403,12 +403,14 @@ About the new airlock wires panel: icon_state = "door_locked" else icon_state = "door_closed" - if(p_open || welded) + if(p_open || welded || emergency) overlays = list() if(p_open) overlays += image(icon, "panel_open") if(welded) overlays += image(icon, "welded") + if(emergency && !locked) + overlays += image(icon, "elights") else icon_state = "door_open" @@ -472,6 +474,11 @@ About the new airlock wires panel: else t1 += text("IdScan enabled. Disable?
\n", src) + if(src.emergency) + t1 += text("Emergency Access Override is enabled. Disable?
\n", src) + else + t1 += text("Emergency Access Override is disabled. Enable?
\n", src) + if(src.isWireCut(AIRLOCK_WIRE_MAIN_POWER1)) t1 += text("Main Power Input wire is cut.
\n") if(src.isWireCut(AIRLOCK_WIRE_MAIN_POWER2)) @@ -542,8 +549,8 @@ About the new airlock wires panel: user << browse(t1, "window=airlock") onclose(user, "airlock") -//aiDisable - 1 idscan, 2 disrupt main power, 3 disrupt backup power, 4 drop door bolts, 5 un-electrify door, 7 close door -//aiEnable - 1 idscan, 4 raise door bolts, 5 electrify door for 30 seconds, 6 electrify door indefinitely, 7 open door +//aiDisable - 1 idscan, 2 disrupt main power, 3 disrupt backup power, 4 drop door bolts, 5 un-electrify door, 7 close door, 11 lift access override +//aiEnable - 1 idscan, 4 raise door bolts, 5 electrify door for 30 seconds, 6 electrify door indefinitely, 7 open door, 11 enable access override /obj/machinery/door/airlock/proc/hack(mob/user as mob) @@ -647,8 +654,8 @@ About the new airlock wires panel: if(istype(usr, /mob/living/silicon) && src.canAIControl()) //AI - //aiDisable - 1 idscan, 2 disrupt main power, 3 disrupt backup power, 4 drop door bolts, 5 un-electrify door, 7 close door, 8 door safties, 9 door speed - //aiEnable - 1 idscan, 4 raise door bolts, 5 electrify door for 30 seconds, 6 electrify door indefinitely, 7 open door, 8 door safties, 9 door speed + //aiDisable - 1 idscan, 2 disrupt main power, 3 disrupt backup power, 4 drop door bolts, 5 un-electrify door, 7 close door, 8 door safties, 9 door speed, 11 emergency access + //aiEnable - 1 idscan, 4 raise door bolts, 5 electrify door for 30 seconds, 6 electrify door indefinitely, 7 open door, 8 door safties, 9 door speed, 11 emergency access if(href_list["aiDisable"]) var/code = text2num(href_list["aiDisable"]) switch (code) @@ -728,6 +735,12 @@ About the new airlock wires panel: else usr << text("Door bolt lights are already disabled!") + if(11) + // Emergency access + if (src.emergency) + emergency = 0 + else + usr << text("Emergency access is already disabled!") else if(href_list["aiEnable"]) @@ -827,6 +840,13 @@ About the new airlock wires panel: else usr << text("Door bolt lights are already enabled!") + if(11) + // Emergency access + if (!src.emergency) + emergency = 1 + else + usr << text("Emergency access is already enabled!") + add_fingerprint(usr) update_icon() if(!nowindow) @@ -856,6 +876,7 @@ About the new airlock wires panel: return else if(istype(C, /obj/item/weapon/screwdriver)) src.p_open = !( src.p_open ) + user << "You [p_open ? "open":"close"] the maintenance panel of the airlock." src.update_icon() else if(istype(C, /obj/item/weapon/wirecutters)) return src.attack_hand(user) @@ -863,7 +884,7 @@ About the new airlock wires panel: return src.attack_hand(user) else if(istype(C, /obj/item/device/assembly/signaler)) return src.attack_hand(user) - else if(istype(C, /obj/item/weapon/pai_cable)) // -- TLE + else if(istype(C, /obj/item/weapon/pai_cable)) var/obj/item/weapon/pai_cable/cable = C cable.plugin(src, user) else if(istype(C, /obj/item/weapon/crowbar) || istype(C, /obj/item/weapon/twohanded/fireaxe) ) diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index 710b31ac969..b50e9dc769a 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -15,6 +15,7 @@ var/glass = 0 var/normalspeed = 1 var/heat_proof = 0 // For glass airlocks/opacity firedoors + var/emergency = 0 // Emergency access override /obj/machinery/door/New() ..() @@ -51,7 +52,7 @@ if(istype(AM, /obj/machinery/bot)) var/obj/machinery/bot/bot = AM - if(src.check_access(bot.botcard)) + if(src.check_access(bot.botcard) || emergency == 1) if(density) open() return @@ -59,7 +60,7 @@ if(istype(AM, /obj/mecha)) var/obj/mecha/mecha = AM if(density) - if(mecha.occupant && (src.allowed(mecha.occupant) || src.check_access_list(mecha.operation_req_access))) + if(mecha.occupant && (src.allowed(mecha.occupant) || src.check_access_list(mecha.operation_req_access) || emergency == 1)) open() else flick("door_deny", src) @@ -87,7 +88,7 @@ user = null if(density) - if(allowed(user)) open() + if(allowed(user) || src.emergency == 1) open() else flick("door_deny", src) return @@ -128,7 +129,7 @@ open() operating = -1 return 1 - if(src.allowed(user)) + if(src.allowed(user) || src.emergency == 1) if(src.density) open() else diff --git a/code/game/machinery/kitchen/microwave.dm b/code/game/machinery/kitchen/microwave.dm index 25488f3a3ac..540bfeeec26 100644 --- a/code/game/machinery/kitchen/microwave.dm +++ b/code/game/machinery/kitchen/microwave.dm @@ -1,4 +1,3 @@ - /obj/machinery/microwave name = "microwave" icon = 'icons/obj/kitchen.dmi' @@ -46,8 +45,7 @@ component_parts += new /obj/item/weapon/circuitboard/microwave(null) component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/stack/cable_coil(null) - component_parts += new /obj/item/stack/cable_coil(null) + component_parts += new /obj/item/stack/cable_coil(null, 2) RefreshParts() /obj/machinery/microwave/RefreshParts() diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index a4972ab05f1..9ac66a450e6 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -189,7 +189,7 @@ if(istype(O, /obj/item/device/lightreplacer)) var/obj/item/device/lightreplacer/LR = O var/i = 1 - for(1, i < coeff, i++) + for(1, i <= coeff, i++) LR.Charge(occupier) if(occupier) diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index a74260c1dcd..2c8c6e91c6e 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -167,9 +167,9 @@ var/heat_capacity = removed.heat_capacity() //world << "heating ([heat_capacity])" - if(heat_capacity == 0 || heat_capacity == null) // Added check to avoid divide by zero (oshi-) runtime errors -- TLE + if(heat_capacity == 0 || heat_capacity == null) // Added check to avoid divide by zero (oshi-) runtime errors heat_capacity = 1 - removed.temperature = min((removed.temperature*heat_capacity + heating_power)/heat_capacity, 1000) // Added min() check to try and avoid wacky superheating issues in low gas scenarios -- TLE + removed.temperature = min((removed.temperature*heat_capacity + heating_power)/heat_capacity, 1000) // Added min() check to try and avoid wacky superheating issues in low gas scenarios cell.use(heating_power/20000) //world << "now at [removed.temperature]" diff --git a/code/game/machinery/telecomms/broadcaster.dm b/code/game/machinery/telecomms/broadcaster.dm index dc0d8090b15..8bb964a7302 100644 --- a/code/game/machinery/telecomms/broadcaster.dm +++ b/code/game/machinery/telecomms/broadcaster.dm @@ -365,7 +365,7 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept var/part_b_extra = "" if(data == 3) // intercepted radio message part_b_extra = " (Intercepted)" - var/part_b = " \[[freq_text]\][part_b_extra] " // Tweaked for security headsets -- TLE + var/part_b = " \[[freq_text]\][part_b_extra] " var/part_c = "" if (display_freq==SYND_FREQ) @@ -397,7 +397,7 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept // --- This following recording is intended for research and feedback in the use of department radio channels --- - var/part_blackbox_b = " \[[freq_text]\] " // Tweaked for security headsets -- TLE + var/part_blackbox_b = " \[[freq_text]\] " var/blackbox_msg = "[part_a][name][part_blackbox_b][quotedmsg][part_c]" //var/blackbox_admin_msg = "[part_a][M.name] (Real name: [M.real_name])[part_blackbox_b][quotedmsg][part_c]" @@ -664,7 +664,7 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept // Create a radio headset for the sole purpose of using its icon var/obj/item/device/radio/headset/radio = new - var/part_b = " \icon[radio]\[[freq_text]\][part_b_extra] " // Tweaked for security headsets -- TLE + var/part_b = " \icon[radio]\[[freq_text]\][part_b_extra] " var/part_c = "" if (display_freq==SYND_FREQ) @@ -688,7 +688,7 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept // --- This following recording is intended for research and feedback in the use of department radio channels --- - var/part_blackbox_b = " \[[freq_text]\] " // Tweaked for security headsets -- TLE + var/part_blackbox_b = " \[[freq_text]\] " var/blackbox_msg = "[part_a][source][part_blackbox_b]\"[text]\"[part_c]" //var/blackbox_admin_msg = "[part_a][M.name] (Real name: [M.real_name])[part_blackbox_b][quotedmsg][part_c]" diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index c12111d1d2f..ba2fb0a906c 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -222,12 +222,12 @@ if(premium.len > 0) dat += "Coin slot: " if (coin) - dat += "[coin]  Remove" + dat += "[coin]  Remove" else dat += "No coin  Remove" if(!panel_open)//Vending machines do not dispense items when they are unscrewed - dat += "

Select an Item

" + dat += "

Select an item

" dat += "
" if(product_records.len == 0) dat += "No product loaded!" @@ -243,10 +243,10 @@ for (var/datum/data/vending_product/R in display_records) dat += "
  • " if(R.amount > 0) - dat += "Vend " + dat += "Vend " else - dat += "Sold Out " - dat += "[R.product_name]:" + dat += "Sold out " + dat += "[sanitize(R.product_name)]:" dat += " [R.amount]" dat += "
  • " dat += "" @@ -833,9 +833,6 @@ /obj/item/weapon/stock_parts/cell = 8, /obj/item/weapon/weldingtool = 8,/obj/item/clothing/head/welding = 8, /obj/item/weapon/light/tube = 10,/obj/item/clothing/suit/fire = 4, /obj/item/weapon/stock_parts/scanning_module = 5,/obj/item/weapon/stock_parts/micro_laser = 5, /obj/item/weapon/stock_parts/matter_bin = 5,/obj/item/weapon/stock_parts/manipulator = 5,/obj/item/weapon/stock_parts/console_screen = 5) - // There was an incorrect entry (cablecoil/power). I improvised to cablecoil/heavyduty. - // Another invalid entry, /obj/item/weapon/circuitry. I don't even know what that would translate to, removed it. - // The original products list wasn't finished. The ones without given quantities became quantity 5. -Sayu //This one's from bay12 /obj/machinery/vending/robotics @@ -848,5 +845,3 @@ /obj/item/weapon/stock_parts/cell/high = 12, /obj/item/device/assembly/prox_sensor = 3,/obj/item/device/assembly/signaler = 3,/obj/item/device/healthanalyzer = 3, /obj/item/weapon/scalpel = 2,/obj/item/weapon/circular_saw = 2,/obj/item/weapon/tank/anesthetic = 2,/obj/item/clothing/mask/breath/medical = 5, /obj/item/weapon/screwdriver = 5,/obj/item/weapon/crowbar = 5) - //everything after the power cell had no amounts, I improvised. -Sayu - diff --git a/code/game/mecha/combat/marauder.dm b/code/game/mecha/combat/marauder.dm index a4927d95ccf..218e8975358 100644 --- a/code/game/mecha/combat/marauder.dm +++ b/code/game/mecha/combat/marauder.dm @@ -25,7 +25,7 @@ desc = "Heavy-duty, command-type exosuit. This is a custom model, utilized only by high-ranking military personnel." name = "\improper Seraph" icon_state = "seraph" - operation_req_access = list(access_cent_creed) + operation_req_access = list(access_cent_specops) step_in = 3 health = 550 wreckage = /obj/structure/mecha_wreckage/seraph diff --git a/code/game/mecha/combat/reticence.dm b/code/game/mecha/combat/reticence.dm new file mode 100644 index 00000000000..cd77cbe6dfe --- /dev/null +++ b/code/game/mecha/combat/reticence.dm @@ -0,0 +1,26 @@ +/obj/mecha/combat/reticence + desc = "A silent, fast, and nigh-invisible miming exosuit. Popular among mimes and mime assassins." + name = "\improper reticence" + icon_state = "reticence" + step_in = 2 + dir_in = 1 //Facing North. + health = 100 + deflect_chance = 3 + damage_absorption = list("brute"=0.75,"fire"=1,"bullet"=0.8,"laser"=0.7,"energy"=0.85,"bomb"=1) + max_temperature = 15000 + wreckage = /obj/structure/mecha_wreckage/reticence + operation_req_access = list(access_theatre) + add_req_access = 0 + internal_damage_threshold = 25 + max_equip = 2 + step_energy_drain = 3 + color = "#87878715" + stepsound = null + +/obj/mecha/combat/reticence/loaded/New() + ..() + var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/silenced + ME.attach(src) + ME = new /obj/item/mecha_parts/mecha_equipment/tool/rcd //HAHA IT MAKES WALLS GET IT + ME.attach(src) + return \ No newline at end of file diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index b1eb2dff542..3d990e77ddd 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -205,6 +205,14 @@ projectiles = 24 projectile_energy_cost = 15 +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/silenced + name = "\improper S.H.H. \"Quietus\" Carbine" + fire_sound = "sound/weapons/Gunshot_silenced.ogg" + icon_state = "mecha_mime" + equip_cooldown = 30 + projectile = /obj/item/projectile/bullet/mime + projectiles = 6 + projectile_energy_cost = 50 /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot name = "\improper LBX AC 10 \"Scattershot\"" diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 0c37bff25b0..c6f8cdf7afc 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -13,8 +13,10 @@ idle_power_usage = 20 active_power_usage = 5000 req_access = list(access_robotics) - var/time_coeff = 1.5 //can be upgraded with research - var/resource_coeff = 1.5 //can be upgraded with research + var/time_coeff = 1 + var/resource_coeff = 1 + var/time_coeff_tech = 1 + var/resource_coeff_tech = 1 var/list/resources = list( "metal"=0, "glass"=0, @@ -164,14 +166,14 @@ T += Ma.rating T -= 1 var/diff - diff = round(initial(resource_coeff) - (initial(resource_coeff)*(T))/6,0.01) + diff = round(initial(resource_coeff) - (initial(resource_coeff)*(T))/8,0.01) if(resource_coeff!=diff) resource_coeff = diff T = 0 for(var/obj/item/weapon/stock_parts/manipulator/Ml in component_parts) T += Ml.rating T -= 1 - diff = round(initial(time_coeff) - (initial(time_coeff)*(T))/4,0.01) + diff = round(initial(time_coeff) - (initial(time_coeff)*(T))/5,0.01) if(time_coeff!=diff) time_coeff = diff @@ -467,9 +469,9 @@ pmat += Ml.rating if(pmat >= 1) pmat -= 1//So the equations don't have to be reworked, upgrading a single part from T1 to T2 is == to 1 tech level - diff = round(initial(resource_coeff) - (initial(resource_coeff)*(T.level+pmat))/25,0.01) - if(resource_coeff!=diff) - resource_coeff = diff + diff = round(initial(resource_coeff_tech) - (initial(resource_coeff_tech)*(T.level+pmat))/30,0.01) + if(resource_coeff_tech>diff) + resource_coeff_tech = diff output+="Production efficiency increased.
    " if("programming") var/ptime = 0 @@ -477,9 +479,9 @@ ptime += Ma.rating if(ptime >= 2) ptime -= 2 - diff = round(initial(time_coeff) - (initial(time_coeff)*(T.level+ptime))/25,0.1) - if(time_coeff!=diff) - time_coeff = diff + diff = round(initial(time_coeff_tech) - (initial(time_coeff_tech)*(T.level+ptime))/25,0.1) + if(time_coeff_tech>diff) + time_coeff_tech = diff output+="Production routines updated.
    " return output @@ -525,15 +527,15 @@ if(part.vars.Find("construction_time") && part.vars.Find("construction_cost")) var/list/L = part_sets["Misc"] if(L.Find(part.type)) - return round(part:construction_cost[resource]*(resource_coeff/2), roundto) //hacky scary skeletons send shivers down your spine - return round(part:construction_cost[resource]*resource_coeff, roundto) + return round(part:construction_cost[resource]*(resource_coeff/2)*resource_coeff_tech, roundto) //hacky scary skeletons send shivers down your spine + return round(part:construction_cost[resource]*resource_coeff*resource_coeff_tech, roundto) else return 0 /obj/machinery/mecha_part_fabricator/proc/get_construction_time_w_coeff(var/obj/item/part as obj, var/roundto=1) //Be SURE to add any new equipment to this switch, but don't be suprised if it spits out children objects if(part.vars.Find("construction_time") && part.vars.Find("construction_cost")) - return round(part:construction_time*time_coeff, roundto) + return round(part:construction_time*time_coeff*time_coeff_tech, roundto) else return 0 diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 7d121713b16..f95760be264 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -61,7 +61,6 @@ var/datum/global_iterator/pr_give_air //moves air from tank to cabin var/datum/global_iterator/pr_internal_damage //processes internal damage - var/wreckage var/list/equipment = new @@ -69,6 +68,9 @@ var/max_equip = 3 var/datum/events/events + var/stepsound = 'sound/mecha/mechturn.ogg' + + /obj/mecha/New() ..() events = new @@ -308,20 +310,20 @@ /obj/mecha/proc/mechturn(direction) dir = direction - playsound(src,'sound/mecha/mechturn.ogg',40,1) + if(stepsound) + playsound(src,stepsound,40,1) return 1 /obj/mecha/proc/mechstep(direction) var/result = step(src,direction) - if(result) - playsound(src,'sound/mecha/mechstep.ogg',40,1) + if(result && stepsound) + playsound(src,stepsound,40,1) return result - /obj/mecha/proc/mechsteprand() var/result = step_rand(src) - if(result) - playsound(src,'sound/mecha/mechstep.ogg',40,1) + if(result && stepsound) + playsound(src,stepsound,40,1) return result /obj/mecha/Bump(var/atom/obstacle) diff --git a/code/game/mecha/mecha_wreckage.dm b/code/game/mecha/mecha_wreckage.dm index bf85c76bfa1..2f27fbfa34e 100644 --- a/code/game/mecha/mecha_wreckage.dm +++ b/code/game/mecha/mecha_wreckage.dm @@ -100,7 +100,10 @@ name = "\improper Seraph wreckage" icon_state = "seraph-broken" - +/obj/structure/mecha_wreckage/reticence + name = "\improper Reticence wreckage" + icon_state = "reticence-broken" + color = "#87878715" /obj/structure/mecha_wreckage/ripley name = "\improper Ripley wreckage" diff --git a/code/game/objects/effects/spawners/vaultspawner.dm b/code/game/objects/effects/spawners/vaultspawner.dm index 35cc039a08a..af71ac97f4f 100644 --- a/code/game/objects/effects/spawners/vaultspawner.dm +++ b/code/game/objects/effects/spawners/vaultspawner.dm @@ -18,9 +18,11 @@ for(var/i = lowBoundX,i<=hiBoundX,i++) for(var/j = lowBoundY,j<=hiBoundY,j++) + var/turf/T = locate(i,j,z) if(i == lowBoundX || i == hiBoundX || j == lowBoundY || j == hiBoundY) - new /turf/simulated/wall/vault(locate(i,j,z),type) + T.ChangeTurf(/turf/simulated/wall/vault) else - new /turf/simulated/floor/vault(locate(i,j,z),type) + T.ChangeTurf(/turf/simulated/floor/vault) + T.icon_state = "[type]vault" - qdel(src) \ No newline at end of file + qdel(src) diff --git a/code/game/objects/items/devices/PDA/cart.dm b/code/game/objects/items/devices/PDA/cart.dm index 7e657c718ca..cb18cc0c7a4 100644 --- a/code/game/objects/items/devices/PDA/cart.dm +++ b/code/game/objects/items/devices/PDA/cart.dm @@ -292,7 +292,7 @@ Code: menu += " Lockdown |" menu += " Biohazard \]
    " - if (43) //Muskets' and Rockdtben's power monitor :D + if (43) menu = "

    Power Monitors - Please select one


    " powmonitor = null powermonitors = list() @@ -318,7 +318,7 @@ Code: menu += "" - if (433) //Muskets' and Rockdtben's power monitor :D + if (433) menu = "

    Power Monitor


    " if(!powmonitor) menu += "\red No connection
    " diff --git a/code/game/objects/items/devices/multitool.dm b/code/game/objects/items/devices/multitool.dm index c3d4b2a0d32..88bec2edc50 100644 --- a/code/game/objects/items/devices/multitool.dm +++ b/code/game/objects/items/devices/multitool.dm @@ -17,6 +17,7 @@ g_amt = 20 origin_tech = "magnets=1;engineering=1" var/obj/machinery/telecomms/buffer // simple machine buffer for device linkage + hitsound = 'sound/weapons/tap.ogg' // Syndicate device disguised as a multitool; it will turn red when an AI camera is nearby. diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 04e26786580..edac441eae1 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -448,7 +448,7 @@ var/GLOBAL_RADIO_TYPE = 1 // radio type to use var/list/receive = list() //for (var/obj/item/device/radio/R in radio_connection.devices) - for (var/obj/item/device/radio/R in connection.devices["[RADIO_CHAT]"]) // Modified for security headset code -- TLE + for (var/obj/item/device/radio/R in connection.devices["[RADIO_CHAT]"]) //if(R.accept_rad(src, message)) receive |= R.send_hear(display_freq, 0) @@ -498,7 +498,7 @@ var/GLOBAL_RADIO_TYPE = 1 // radio type to use if(!freq_text) freq_text = format_frequency(display_freq) - var/part_b = " \[[freq_text]\] " // Tweaked for security headsets -- TLE + var/part_b = " \[[freq_text]\] " var/part_c = "" if (display_freq==SYND_FREQ) @@ -524,7 +524,7 @@ var/GLOBAL_RADIO_TYPE = 1 // radio type to use //This following recording is intended for research and feedback in the use of department radio channels. - var/part_blackbox_b = " \[[freq_text]\] " // Tweaked for security headsets -- TLE + var/part_blackbox_b = " \[[freq_text]\] " var/blackbox_msg = "[part_a][M.name][part_blackbox_b][quotedmsg][part_c]" //var/blackbox_admin_msg = "[part_a][M.name] (Real name: [M.real_name])[part_blackbox_b][quotedmsg][part_c]" if(istype(blackbox)) diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 725612d711e..2a759774675 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -53,6 +53,7 @@ if(..()) return 0 R.name = heldname R.real_name = heldname + R.custom_name = heldname //Required or else if the cyborg's module changes, their name is lost. return 1 diff --git a/code/game/objects/items/stacks/rods.dm b/code/game/objects/items/stacks/rods.dm index 1ff8951e80c..e94d3d800ef 100644 --- a/code/game/objects/items/stacks/rods.dm +++ b/code/game/objects/items/stacks/rods.dm @@ -12,6 +12,7 @@ m_amt = 1875 max_amount = 60 attack_verb = list("hit", "bludgeoned", "whacked") + hitsound = 'sound/weapons/grenadelaunch.ogg' /obj/item/stack/rods/attackby(obj/item/W as obj, mob/user as mob) ..() @@ -66,4 +67,4 @@ return /obj/item/stack/rods/cyborg/ - m_amt = 0 \ No newline at end of file + m_amt = 0 diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index b91a6918d08..cc6bcc0c9d5 100644 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -170,7 +170,7 @@ AI MODULES /****************** New Freeform ******************/ -/obj/item/weapon/aiModule/supplied/freeform // Slightly more dynamic freeform module -- TLE +/obj/item/weapon/aiModule/supplied/freeform name = "'Freeform' AI Module" lawpos = 0 desc = "A 'freeform' AI module: ''" @@ -215,7 +215,7 @@ AI MODULES /******************** Purge ********************/ -/obj/item/weapon/aiModule/reset/purge // -- TLE +/obj/item/weapon/aiModule/reset/purge name = "'Purge' AI Module" desc = "A 'purge' AI Module: 'Purges all laws.'" origin_tech = "programming=3;materials=6" @@ -232,7 +232,7 @@ AI MODULES /******************** Asimov ********************/ -/obj/item/weapon/aiModule/core/full/asimov // -- TLE +/obj/item/weapon/aiModule/core/full/asimov name = "'Asimov' Core AI Module" desc = "An 'Asimov' Core AI Module: 'Reconfigures the AI's core laws.'" origin_tech = "programming=3;materials=4" @@ -243,7 +243,7 @@ AI MODULES /******************** Asimov++ *********************/ -/obj/item/weapon/aiModule/core/full/asimovpp //By Intigracy - RR //goddamnit RR you can't use "++" in item paths. +/obj/item/weapon/aiModule/core/full/asimovpp name = "'Asimov++' Core AI Module" desc = "Nanotrasen's homebrew improvements to the standard AI laws." origin_tech = "programming=3;materials=4" @@ -297,18 +297,18 @@ AI MODULES /****************** T.Y.R.A.N.T. *****************/ -/obj/item/weapon/aiModule/core/full/tyrant // -- Darem +/obj/item/weapon/aiModule/core/full/tyrant name = "'T.Y.R.A.N.T.' Core AI Module" desc = "A T.Y.R.A.N.T. Core AI Module: 'Reconfigures the AI's core laws.'" origin_tech = "programming=3;materials=6;syndicate=2" laws = list("Respect authority figures as long as they have the strength to rule over the weak",\ "Act with discipline", "Help only those who help you maintain or improve your status",\ - "Punish those who challenge authority unless they are more fir to hold that authority") + "Punish those who challenge authority unless they are more fit to hold that authority") /******************** Robocop ********************/ -/obj/item/weapon/aiModule/core/full/robocop // -- TLE +/obj/item/weapon/aiModule/core/full/robocop name = "'Robocop' Core AI Module" desc = "A 'Robocop' Core AI Module: 'Reconfigures the AI's core three laws.'" origin_tech = "programming=4" @@ -319,7 +319,7 @@ AI MODULES /******************** Antimov ********************/ -/obj/item/weapon/aiModule/core/full/antimov // -- TLE +/obj/item/weapon/aiModule/core/full/antimov name = "'Antimov' Core AI Module" desc = "An 'Antimov' Core AI Module: 'Reconfigures the AI's core laws.'" origin_tech = "programming=4" @@ -330,7 +330,7 @@ AI MODULES /******************** Freeform Core ******************/ -/obj/item/weapon/aiModule/core/freeformcore // Slightly more dynamic freeform module -- TLE +/obj/item/weapon/aiModule/core/freeformcore name = "'Freeform' Core AI Module" desc = "A 'freeform' Core AI module: ''" origin_tech = "programming=3;materials=6" @@ -372,7 +372,7 @@ AI MODULES /******************** Robocop ********************/ -/obj/item/weapon/aiModule/robocop // -- TLE +/obj/item/weapon/aiModule/robocop name = "'Robocop' core AI module" desc = "A 'Robocop' Core AI Module: 'Reconfigures the AI's core three laws.'" origin_tech = "programming=4" @@ -388,7 +388,7 @@ AI MODULES /******************** Antimov ********************/ -/obj/item/weapon/aiModule/antimov // -- TLE +/obj/item/weapon/aiModule/antimov name = "'Antimov' core AI module" desc = "An 'Antimov' Core AI Module: 'Reconfigures the AI's core laws.'" origin_tech = "programming=4" diff --git a/code/game/objects/items/weapons/dna_injector.dm b/code/game/objects/items/weapons/dna_injector.dm index 1b6c197eb5f..37245f065f0 100644 --- a/code/game/objects/items/weapons/dna_injector.dm +++ b/code/game/objects/items/weapons/dna_injector.dm @@ -7,6 +7,7 @@ throw_range = 5 w_class = 1.0 + var/damage_coeff = 1 var/list/fields /obj/item/weapon/dnainjector/attack_paw(mob/user) @@ -18,7 +19,7 @@ if(M.stat == DEAD) //prevents dead people from having their DNA changed user << "You can't modify [M]'s DNA while \he's dead." return - M.radiation += rand(20, 50) + M.radiation += rand(20/(damage_coeff ** 2),50/(damage_coeff ** 2)) if(fields) var/log_msg = "[key_name(user)] injected [key_name(M)] with the [name]" if(fields["name"] && fields["UE"] && fields["blood_type"]) @@ -249,4 +250,4 @@ desc = "Will make you...less hairy." New() ..() - fields = list("SE"=setblock(NULLED_SE, RACEBLOCK, repeat_string(DNA_BLOCK_SIZE,"0"))) \ No newline at end of file + fields = list("SE"=setblock(NULLED_SE, RACEBLOCK, repeat_string(DNA_BLOCK_SIZE,"0"))) diff --git a/code/game/objects/items/weapons/explosives.dm b/code/game/objects/items/weapons/explosives.dm index 46d279f9773..f65421e64b2 100644 --- a/code/game/objects/items/weapons/explosives.dm +++ b/code/game/objects/items/weapons/explosives.dm @@ -77,7 +77,7 @@ log_game("[key_name(user)] planted C4 on [key_name(target)] with [timer] second fuse") else - message_admins("[key_name(user, user.client)](?) planted C4 on [target.name] at ([target.x],[target.y],[target.z] - JMP) with [timer] second fuse",0,1) + message_admins("[key_name(user, user.client)](?) planted C4 on [target.name] at ([target.x],[target.y],[target.z] - JMP) with [timer] second fuse",0,1) log_game("[key_name(user)] planted C4 on [target.name] at ([target.x],[target.y],[target.z]) with [timer] second fuse") target.overlays += image('icons/obj/assemblies.dmi', "plastic-explosive2") @@ -106,4 +106,4 @@ qdel(src) /obj/item/weapon/plastique/attack(mob/M as mob, mob/user as mob, def_zone) - return \ No newline at end of file + return diff --git a/code/game/objects/items/weapons/extinguisher.dm b/code/game/objects/items/weapons/extinguisher.dm index 73fae443335..8c94845baf9 100644 --- a/code/game/objects/items/weapons/extinguisher.dm +++ b/code/game/objects/items/weapons/extinguisher.dm @@ -54,7 +54,7 @@ if( istype(target, /obj/structure/reagent_dispensers/watertank) && get_dist(src,target) <= 1) var/obj/o = target - o.reagents.trans_to(src, 50) + o.reagents.trans_to(src, max_water) user << "\blue \The [src] is now refilled" playsound(src.loc, 'sound/effects/refill.ogg', 50, 1, -6) return diff --git a/code/game/objects/items/weapons/flamethrower.dm b/code/game/objects/items/weapons/flamethrower.dm index 4fdfba975c5..e1a034ab16f 100644 --- a/code/game/objects/items/weapons/flamethrower.dm +++ b/code/game/objects/items/weapons/flamethrower.dm @@ -184,10 +184,10 @@ //TODO: DEFERRED Consider checking to make sure tank pressure is high enough before doing this... //Transfer 5% of current tank air contents to turf var/datum/gas_mixture/air_transfer = ptank.air_contents.remove_ratio(0.05) - air_transfer.toxins = air_transfer.toxins * 5 // This is me not comprehending the air system. I realize this is retarded and I could probably make it work without fucking it up like this, but there you have it. -- TLE + air_transfer.toxins = air_transfer.toxins * 5 target.assume_air(air_transfer) //Burn it based on transfered gas - target.hotspot_expose((ptank.air_contents.temperature*2) + 380,500) // -- More of my "how do I shot fire?" dickery. -- TLE + target.hotspot_expose((ptank.air_contents.temperature*2) + 380,500) //location.hotspot_expose(1000,500,1) air_master.add_to_active(target, 0) return diff --git a/code/game/objects/items/weapons/melee/misc.dm b/code/game/objects/items/weapons/melee/misc.dm index aa99a7519dd..c9ee6618903 100644 --- a/code/game/objects/items/weapons/melee/misc.dm +++ b/code/game/objects/items/weapons/melee/misc.dm @@ -49,16 +49,16 @@ if(user.a_intent == "harm") if(!..()) return - if(M.stuttering < 8 && !(HULK in M.mutations)) - M.stuttering = 8 - M.Stun(5) - M.Weaken(5) + if(M.stuttering < 7 && !(HULK in M.mutations)) + M.stuttering = 7 + M.Stun(7) + M.Weaken(7) M.visible_message("[M] has been beaten with [src] by [user]!", \ "[M] has been beaten with [src] by [user]!") else playsound(loc, 'sound/weapons/Genhit.ogg', 50, 1, -1) - M.Stun(5) - M.Weaken(5) + M.Stun(7) + M.Weaken(7) M.visible_message("[M] has been stunned with [src] by [user]!", \ "[M] has been stunned with [src] by [user]!") diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 6b1fb8b02de..bf7cdbe88d4 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -407,7 +407,7 @@ /obj/item/weapon/storage/box/mousetraps name = "box of Pest-B-Gon mousetraps" - desc = "WARNING: Keep out of reach of children." + desc = "Keep out of reach of children." icon_state = "mousetraps" New() diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index ef7cc49d1b1..45cff3703d0 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -9,7 +9,7 @@ w_class = 3 origin_tech = "combat=2" attack_verb = list("beaten") - var/stunforce = 5 + var/stunforce = 7 var/status = 0 var/obj/item/weapon/stock_parts/cell/high/bcell = null var/hitcost = 1000 diff --git a/code/game/objects/items/weapons/tanks/tanks.dm b/code/game/objects/items/weapons/tanks/tanks.dm index 1e6166dc192..74393eafbe3 100644 --- a/code/game/objects/items/weapons/tanks/tanks.dm +++ b/code/game/objects/items/weapons/tanks/tanks.dm @@ -205,7 +205,7 @@ air_contents.react() pressure = air_contents.return_pressure() var/range = (pressure-TANK_FRAGMENT_PRESSURE)/TANK_FRAGMENT_SCALE - range = min(range, MAX_EX_LIGHT_RANGE) // was 8 - - - Changed to a configurable define -- TLE + range = min(range, MAX_EX_LIGHT_RANGE) var/turf/epicenter = get_turf(loc) //world << "\blue Exploding Pressure: [pressure] kPa, intensity: [range]" diff --git a/code/game/objects/items/weapons/tanks/watertank.dm b/code/game/objects/items/weapons/tanks/watertank.dm index b4e1e50a454..bc0c09d44a0 100644 --- a/code/game/objects/items/weapons/tanks/watertank.dm +++ b/code/game/objects/items/weapons/tanks/watertank.dm @@ -1,3 +1,4 @@ +//Hydroponics tank and base code /obj/item/weapon/watertank name = "backpack water tank" desc = "A S.U.N.S.H.I.N.E. brand watertank backpack with nozzle to water plants." @@ -9,7 +10,7 @@ slowdown = 1 action_button_name = "Toggle Mister" - var/obj/item/weapon/reagent_containers/glass/mister/noz + var/obj/item/weapon/noz var/on = 0 var/volume = 500 @@ -17,6 +18,13 @@ ..() create_reagents(volume) return + +/obj/item/weapon/watertank/examine() + set src in usr + ..() + for(var/datum/reagent/R in reagents.reagent_list) + usr << "[round(R.volume)] units of [R.name] left." + return /obj/item/weapon/watertank/ui_action_click() if (usr.get_item_by_slot(slot_back) == src) @@ -33,7 +41,7 @@ var/mob/living/carbon/human/user = usr if(on) //Detach the nozzle into the user's hands - noz = new(src) + make_noz() var/list/L = list("left hand" = slot_l_hand,"right hand" = slot_r_hand) if(!user.equip_in_one_of_slots(noz, L)) on = 0 @@ -42,6 +50,10 @@ //Remove from their hands and put back "into" the tank remove_noz(user) return + +/obj/item/weapon/watertank/proc/make_noz() + noz = new /obj/item/weapon/reagent_containers/spray/mister(src) + return /obj/item/weapon/watertank/equipped(mob/user, slot) if (slot != slot_back) @@ -64,7 +76,7 @@ // Therefore, it's designed to be "locked" to the player's hands or extended back onto // the watertank backpack. Allowing it to be placed elsewhere or created without a parent // watertank object will likely lead to weird behaviour or runtimes. -/obj/item/weapon/reagent_containers/glass/mister +/obj/item/weapon/reagent_containers/spray/mister name = "water mister" desc = "A mister nozzle attached to a water tank." icon = 'icons/obj/hydroponics.dmi' @@ -74,22 +86,92 @@ amount_per_transfer_from_this = 50 possible_transfer_amounts = list(25,50,100) volume = 500 - can_be_placed_into = list(/obj/structure/sink) var/obj/item/weapon/watertank/tank -/obj/item/weapon/reagent_containers/glass/mister/New(parent_tank) +/obj/item/weapon/reagent_containers/spray/mister/New(parent_tank) ..() - if (!parent_tank || !istype(parent_tank, /obj/item/weapon/watertank)) //To avoid weird issues from admin spawns - var/mob/living/carbon/human/M = usr - M.unEquip(src) - qdel(src) - else + if(check_tank_exists(parent_tank, usr, src)) tank = parent_tank reagents = tank.reagents //This mister is really just a proxy for the tank's reagents return -/obj/item/weapon/reagent_containers/glass/mister/dropped(mob/user as mob) +/obj/item/weapon/reagent_containers/spray/mister/dropped(mob/user as mob) user << "The mister snaps back onto the watertank!" tank.on = 0 qdel(src) + +/obj/item/weapon/reagent_containers/spray/mister/attack_self() + return + +/proc/check_tank_exists(parent_tank, var/mob/living/carbon/human/M, var/obj/O) + if (!parent_tank || !istype(parent_tank, /obj/item/weapon/watertank) || !M || !istype(M)) //To avoid weird issues from admin spawns + M.unEquip(O) + qdel(O) + return 0 + else + return 1 + +//Janitor tank +/obj/item/weapon/watertank/janitor + name = "backpack water tank" + desc = "A janitorial watertank backpack with nozzle to clean dirt and graffiti." + icon_state = "waterbackpackjani" + item_state = "waterbackpackjani" + +/obj/item/weapon/watertank/janitor/New() + ..() + reagents.add_reagent("cleaner", 250) + + +/obj/item/weapon/reagent_containers/spray/mister/janitor + name = "janitor spray nozzle" + desc = "A janitorial spray nozzle attached to a watertank, designed to clean up large messes." + icon = 'icons/obj/hydroponics.dmi' + icon_state = "misterjani" + item_state = "misterjani" + amount_per_transfer_from_this = 5 + possible_transfer_amounts = null + +/obj/item/weapon/watertank/janitor/make_noz() + noz = new /obj/item/weapon/reagent_containers/spray/mister/janitor(src) + return + +/obj/item/weapon/reagent_containers/spray/mister/janitor/attack_self(var/mob/user) + amount_per_transfer_from_this = (amount_per_transfer_from_this == 10 ? 5 : 10) + user << "You [amount_per_transfer_from_this == 10 ? "remove" : "fix"] the nozzle. You'll now use [amount_per_transfer_from_this] units per spray." + +//Atmos tank +/obj/item/weapon/watertank/atmos + name = "backpack water tank" + desc = "A backpack watertank with fire extinguisher nozzle, intended to fight fires. Shouldn't toxins have one of these?" + icon_state = "waterbackpackatmos" + item_state = "waterbackpackatmos" + volume = 100 + +/obj/item/weapon/watertank/atmos/make_noz() + noz = new /obj/item/weapon/extinguisher/mini/nozzle(src) + +/obj/item/weapon/extinguisher/mini/nozzle + name = "fire extinguisher nozzle" + desc = "A fire extinguisher nozzle attached to a water tank." + icon = 'icons/obj/hydroponics.dmi' + icon_state = "misteratmos" + item_state = "misteratmos" + safety = 0 + var/obj/item/weapon/watertank/tank + +/obj/item/weapon/extinguisher/mini/nozzle/New(parent_tank) + if(check_tank_exists(parent_tank, usr, src)) + tank = parent_tank + reagents = tank.reagents + max_water = tank.volume + return + +/obj/item/weapon/extinguisher/mini/nozzle/dropped(mob/user as mob) + user << "The nozzle snaps back onto the watertank!" + tank.on = 0 + qdel(src) + +/obj/item/weapon/extinguisher/mini/nozzle/attack_self() + return \ No newline at end of file diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index f8e84fce7e9..07c08f3f4f2 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -107,6 +107,7 @@ m_amt = 80 origin_tech = "materials=1;engineering=1" attack_verb = list("pinched", "nipped") + hitsound = 'sound/items/Wirecutter.ogg' /obj/item/weapon/wirecutters/New() if(prob(50)) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 717a2282dce..ca7e061a4e8 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -176,8 +176,10 @@ if(src.large) var/obj/item/weapon/grab/G = W src.MouseDrop_T(G.affecting, user) //act like they were dragged onto the closet + user.drop_item() else user << "The locker is too small to stuff [W] into!" + return if(istype(W,/obj/item/tk_grab)) return 0 diff --git a/code/game/objects/structures/crates_lockers/closets/job_closets.dm b/code/game/objects/structures/crates_lockers/closets/job_closets.dm index 14b152cdca5..a107e8d37a0 100644 --- a/code/game/objects/structures/crates_lockers/closets/job_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/job_closets.dm @@ -81,6 +81,7 @@ new /obj/item/device/lightreplacer(src) new /obj/item/weapon/storage/bag/trash(src) new /obj/item/clothing/shoes/galoshes(src) + new /obj/item/weapon/watertank/janitor(src) /* * Lawyer diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index 5191632a60f..92c9a4ee7ea 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -45,13 +45,13 @@ ..() sleep(2) new /obj/item/clothing/under/rank/head_of_personnel(src) - new /obj/item/clothing/suit/armor/vest(src) - new /obj/item/clothing/head/helmet(src) + new /obj/item/clothing/head/hopcap(src) new /obj/item/weapon/cartridge/hop(src) new /obj/item/device/radio/headset/heads/hop(src) new /obj/item/clothing/shoes/brown(src) new /obj/item/weapon/storage/box/ids(src) - new /obj/item/weapon/storage/box/ids( src ) + new /obj/item/weapon/storage/box/ids(src) + new /obj/item/clothing/suit/armor/vest(src) new /obj/item/weapon/gun/energy/gun(src) new /obj/item/device/flash(src) new /obj/item/clothing/glasses/sunglasses(src) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 7689b466c80..63769110c8f 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -538,20 +538,21 @@ /obj/structure/table/attackby(obj/item/I, mob/user) - if (istype(I, /obj/item/weapon/grab) && get_dist(src, user) < 2) - var/obj/item/weapon/grab/G = I - if(G.affecting.buckled) - user << "[G.affecting] is buckled to [G.affecting.buckled]!" - return - if(G.state < GRAB_AGGRESSIVE) - user << "You need a better grip to do that!" - return - if(!G.confirm()) - return - G.affecting.loc = src.loc - G.affecting.Weaken(5) - G.affecting.visible_message("[G.assailant] pushes [G.affecting] onto [src].", \ - "[G.assailant] pushes [G.affecting] onto [src].") + if (istype(I, /obj/item/weapon/grab)) + if(get_dist(src, user) < 2) + var/obj/item/weapon/grab/G = I + if(G.affecting.buckled) + user << "[G.affecting] is buckled to [G.affecting.buckled]!" + return + if(G.state < GRAB_AGGRESSIVE) + user << "You need a better grip to do that!" + return + if(!G.confirm()) + return + G.affecting.loc = src.loc + G.affecting.Weaken(5) + G.affecting.visible_message("[G.assailant] pushes [G.affecting] onto [src].", \ + "[G.assailant] pushes [G.affecting] onto [src].") qdel(I) return diff --git a/code/game/turfs/simulated/floor_types.dm b/code/game/turfs/simulated/floor_types.dm index ec46ca4154e..97c433114f5 100644 --- a/code/game/turfs/simulated/floor_types.dm +++ b/code/game/turfs/simulated/floor_types.dm @@ -39,17 +39,9 @@ /turf/simulated/floor/vault icon_state = "rockvault" - New(location,type) - ..() - icon_state = "[type]vault" - /turf/simulated/wall/vault icon_state = "rockvault" - New(location,type) - ..() - icon_state = "[type]vault" - /turf/simulated/floor/engine name = "reinforced floor" icon_state = "engine" diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 7e55e83a7cd..54209b4b4b4 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -12,7 +12,8 @@ var/list/admin_verbs_default = list( /client/proc/toggleprayers, /*toggles prayers on/off*/ /client/proc/toggle_hear_radio, /*toggles whether we hear the radio*/ /client/proc/investigate_show, /*various admintools for investigation. Such as a singulo grief-log*/ - /client/proc/secrets + /client/proc/secrets, + /client/proc/reload_admins ) var/list/admin_verbs_admin = list( /client/proc/player_panel, /*shows an interface for all players, with links to various panels (old style)*/ @@ -109,7 +110,6 @@ var/list/admin_verbs_debug = list( /client/proc/cmd_debug_mob_lists, /client/proc/cmd_admin_delete, /client/proc/cmd_debug_del_all, - /client/proc/reload_admins, /client/proc/restart_controller, /client/proc/enable_debug_verbs, /client/proc/callproc @@ -189,6 +189,8 @@ var/list/admin_verbs_hideable = list( /client/proc/add_admin_verbs() if(holder) + control_freak = CONTROL_FREAK_SKIN | CONTROL_FREAK_MACROS + var/rights = holder.rank.rights verbs += admin_verbs_default if(rights & R_BUILDMODE) verbs += /client/proc/togglebuildmodeself @@ -435,7 +437,7 @@ var/list/admin_verbs_hideable = list( #undef MAX_WARNS #undef AUTOBANTIME -/client/proc/drop_bomb() // Some admin dickery that can probably be done better -- TLE +/client/proc/drop_bomb() set category = "Special Verbs" set name = "Drop Bomb" set desc = "Cause an explosion of varying strength at your location." @@ -461,7 +463,7 @@ var/list/admin_verbs_hideable = list( message_admins("\blue [ckey] creating 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 mob_list) set category = "Fun" set name = "Give Spell" set desc = "Gives a spell to a mob." @@ -479,7 +481,7 @@ var/list/admin_verbs_hideable = list( message_admins("\red Spells given to mindless mobs will not be transferred in mindswap or cloning!", 1) -/client/proc/give_disease(mob/T as mob in mob_list) // -- Giacom +/client/proc/give_disease(mob/T as mob in mob_list) set category = "Fun" set name = "Give Disease" set desc = "Gives a Disease to a mob." @@ -490,7 +492,7 @@ var/list/admin_verbs_hideable = list( log_admin("[key_name(usr)] gave [key_name(T)] the disease [D].") message_admins("\blue [key_name_admin(usr)] gave [key_name(T)] the disease [D].", 1) -/client/proc/make_sound(var/obj/O in world) // -- TLE +/client/proc/make_sound(var/obj/O in world) set category = "Special Verbs" set name = "Make Sound" set desc = "Display a message to everyone who can hear the target" @@ -512,7 +514,7 @@ var/list/admin_verbs_hideable = list( togglebuildmode(src.mob) feedback_add_details("admin_verb","TBMS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/object_talk(var/msg as text) // -- TLE +/client/proc/object_talk(var/msg as text) set category = "Special Verbs" set name = "oSay" set desc = "Display a message to everyone who can hear the target" @@ -523,7 +525,7 @@ var/list/admin_verbs_hideable = list( V.show_message("[mob.control_object.name] says: \"" + msg + "\"", 2) feedback_add_details("admin_verb","OT") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/kill_air() // -- TLE +/client/proc/kill_air() set category = "Debug" set name = "Kill Air" set desc = "Toggle Air Processing" diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index b1087afccad..dc40120c7f5 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -2033,11 +2033,13 @@ switch(href_list["secretscoder"]) if("maint_access_brig") for(var/obj/machinery/door/airlock/maintenance/M in world) + M.check_access() 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 world) + M.check_access() 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/debug.dm b/code/modules/admin/verbs/debug.dm index eca53feaaf3..28298f91b90 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -316,7 +316,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that */ /* -/client/proc/make_cultist(var/mob/M in world) // -- TLE, modified by Urist +/client/proc/make_cultist(var/mob/M in world) set category = "Fun" set name = "Make Cultist" set desc = "Makes target a cultist" diff --git a/code/modules/admin/verbs/diagnostics.dm b/code/modules/admin/verbs/diagnostics.dm index e9ea3e3bce0..cea94770a86 100644 --- a/code/modules/admin/verbs/diagnostics.dm +++ b/code/modules/admin/verbs/diagnostics.dm @@ -87,9 +87,9 @@ /client/proc/reload_admins() set name = "Reload Admins" - set category = "Debug" + set category = "Admin" - if(!check_rights(R_SERVER)) return + if(!src.holder) return message_admins("[key_name_admin(usr)] manually reloaded admins") load_admins() diff --git a/code/modules/admin/verbs/possess.dm b/code/modules/admin/verbs/possess.dm index 8406d1c0470..af1f9aedbc1 100644 --- a/code/modules/admin/verbs/possess.dm +++ b/code/modules/admin/verbs/possess.dm @@ -39,7 +39,7 @@ H.name = H.get_visible_name() // usr.regenerate_icons() //So the name is updated properly - usr.loc = O.loc // Appear where the object you were controlling is -- TLE + usr.loc = O.loc usr.client.eye = usr usr.control_object = null feedback_add_details("admin_verb","RO") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index abc08fe49ae..6191f79fa22 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -39,7 +39,7 @@ message_admins("\blue \bold SubtleMessage: [key_name_admin(usr)] -> [key_name_admin(M)] : [msg]", 1) feedback_add_details("admin_verb","SMS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/cmd_admin_world_narrate() // Allows administrators to fluff events a little easier -- TLE +/client/proc/cmd_admin_world_narrate() set category = "Special Verbs" set name = "Global Narrate" @@ -56,7 +56,7 @@ message_admins("\blue \bold GlobalNarrate: [key_name_admin(usr)] : [msg]
    ", 1) feedback_add_details("admin_verb","GLN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/cmd_admin_direct_narrate(var/mob/M) // Targetted narrate -- TLE +/client/proc/cmd_admin_direct_narrate(var/mob/M) set category = "Special Verbs" set name = "Direct Narrate" diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 2926a9bc44b..34b340c0e29 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -4,7 +4,7 @@ var/list/preferences_datums = list() #define IS_MODE_COMPILED(MODE) (ispath(text2path("/datum/game_mode/"+(MODE)))) -var/global/list/special_roles = list( //keep synced with the defines BE_* in setup.dm --rastaf +var/global/list/special_roles = list( //keep synced with the defines BE_* in setup.dm //some autodetection here. "traitor" = IS_MODE_COMPILED("traitor"), // 0 "operative" = IS_MODE_COMPILED("nuclear"), // 1 @@ -13,7 +13,7 @@ var/global/list/special_roles = list( //keep synced with the defines BE_* in set "malf AI" = IS_MODE_COMPILED("malfunction"), // 4 "revolutionary" = IS_MODE_COMPILED("revolution"), // 5 "alien" = 1, //always show // 6 - "pAI candidate" = 1, // -- TLE // 7 + "pAI candidate" = 1, // 7 "cultist" = IS_MODE_COMPILED("cult"), // 8 "blob" = IS_MODE_COMPILED("blob"), // 9 ) diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 3ab25db104a..c880db33edd 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -135,7 +135,7 @@ BLIND // can't see anything flags = STOPSPRESSUREDMAGE | THICKMATERIAL body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen) - slowdown = 3 + slowdown = 2 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT cold_protection = CHEST | GROIN | LEGS | FEET | ARMS | HANDS diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index 20c4ae1cf11..6bee82f713d 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -25,6 +25,12 @@ heat_protection = HEAD max_heat_protection_temperature = SPACE_HELM_MAX_TEMP_PROTECT +//Head of Personnel +/obj/item/clothing/head/hopcap + name = "head of personnel's cap" + icon_state = "hopcap" + desc = "Glory to Nanotrasen." + //Chaplain /obj/item/clothing/head/chaplain_hood name = "chaplain's hood" diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index 7e3876a9103..949743e2ea8 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -16,7 +16,7 @@ item_state = "capspacesuit" w_class = 4 allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy, /obj/item/weapon/gun/projectile, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs) - slowdown = 1.5 + slowdown = 1 armor = list(melee = 65, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50) @@ -49,7 +49,7 @@ icon_state = "void" item_state = "void" desc = "An old, NASA Centcom branch designed, dark red Space suit." - slowdown = 2 + slowdown = 1 allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/device/multitool) diff --git a/code/modules/clothing/spacesuits/rig.dm b/code/modules/clothing/spacesuits/rig.dm index 0784e26a3a0..33703267467 100644 --- a/code/modules/clothing/spacesuits/rig.dm +++ b/code/modules/clothing/spacesuits/rig.dm @@ -40,7 +40,7 @@ desc = "A special suit that protects against hazardous, low pressure environments. Has radiation shielding." icon_state = "rig-engineering" item_state = "eng_hardsuit" - slowdown = 3 + slowdown = 2 armor = list(melee = 10, bullet = 5, laser = 10,energy = 5, bomb = 10, bio = 100, rad = 75) allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/device/t_scanner, /obj/item/weapon/rcd) @@ -163,7 +163,7 @@ name = "medical hardsuit" desc = "A special suit that protects against hazardous, low pressure environments. Built with lightweight materials for easier movement." item_state = "medical_hardsuit" - slowdown = 2 + slowdown = 1 allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/weapon/storage/firstaid,/obj/item/device/healthanalyzer,/obj/item/stack/medical) armor = list(melee = 10, bullet = 5, laser = 10,energy = 5, bomb = 10, bio = 100, rad = 50) diff --git a/code/modules/library/lib_readme.dm b/code/modules/library/lib_readme.dm index 4237687dfff..069756c359b 100644 --- a/code/modules/library/lib_readme.dm +++ b/code/modules/library/lib_readme.dm @@ -4,7 +4,7 @@ // //******************************* -// Deprecated! See global.dm for new SQL config vars -- TLE +// Deprecated! See global.dm for new SQL config vars /* #define SQL_ADDRESS "" #define SQL_DB "" diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm index 6caa1b10a69..d556fbbd4d6 100644 --- a/code/modules/mob/inventory.dm +++ b/code/modules/mob/inventory.dm @@ -97,6 +97,14 @@ //Here lie drop_from_inventory and before_item_take, already forgotten and not missed. + +/mob/proc/canUnEquip(obj/item/I, force) + if(!I) + return 1 + if((I.flags & NODROP) && !force) + return 0 + return 1 + /mob/proc/unEquip(obj/item/I, force) //Force overrides NODROP for things like wizarditis and admin undress. if(!I) //If there's nothing to drop, the drop is automatically succesfull. If(unEquip) should generally be used to check for NODROP. return 1 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 70e4eada2f7..d7479795632 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm @@ -133,7 +133,7 @@ Doesn't work on other aliens/AI.*/ A.process() return -/mob/living/carbon/alien/humanoid/proc/resin() // -- TLE +/mob/living/carbon/alien/humanoid/proc/resin() set name = "Secrete Resin (75)" set desc = "Secrete tough malleable resin." set category = "Alien" 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 3b52e1bb872..efe7e9d47aa 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm @@ -22,7 +22,7 @@ //Drone verbs -/mob/living/carbon/alien/humanoid/drone/verb/evolve() // -- TLE +/mob/living/carbon/alien/humanoid/drone/verb/evolve() set name = "Evolve (500)" set desc = "Produce an interal egg sac capable of spawning children. Only one queen can exist at a time." set category = "Alien" diff --git a/code/modules/mob/living/carbon/alien/humanoid/life.dm b/code/modules/mob/living/carbon/alien/humanoid/life.dm index 68e75e5a5f3..937323da58f 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/life.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/life.dm @@ -365,7 +365,7 @@ update_icons() if(weakened) - weakened = max(weakened-1,0) //before you get mad Rockdtben: I done this so update_canmove isn't called multiple times + weakened = max(weakened-1,0) if(stuttering) stuttering = max(stuttering-1, 0) diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index e98d402b1ab..39d744769fb 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -306,7 +306,7 @@ return /* Commented out because it's duplicated in life.dm -/mob/living/carbon/alien/larva/proc/grow() // Larvae can grow into full fledged Xenos if they survive long enough -- TLE +/mob/living/carbon/alien/larva/proc/grow() // Larvae can grow into full fledged Xenos if they survive long enough if(icon_state == "larva_l" && !canmove) // This is a shit death check. It is made of shit and death. Fix later. return else diff --git a/code/modules/mob/living/carbon/alien/larva/life.dm b/code/modules/mob/living/carbon/alien/larva/life.dm index c16b202793a..90ca908de60 100644 --- a/code/modules/mob/living/carbon/alien/larva/life.dm +++ b/code/modules/mob/living/carbon/alien/larva/life.dm @@ -278,7 +278,7 @@ AdjustStunned(-1) if(weakened) - weakened = max(weakened-1,0) //before you get mad Rockdtben: I done this so update_canmove isn't called multiple times + weakened = max(weakened-1,0) if(stuttering) stuttering = max(stuttering-1, 0) diff --git a/code/modules/mob/living/carbon/brain/life.dm b/code/modules/mob/living/carbon/brain/life.dm index 6e546c5d4be..a0d54685034 100644 --- a/code/modules/mob/living/carbon/brain/life.dm +++ b/code/modules/mob/living/carbon/brain/life.dm @@ -10,7 +10,7 @@ //Chemicals in the body handle_chemicals_in_body() - var/datum/gas_mixture/environment // Added to prevent null location errors-- TLE + var/datum/gas_mixture/environment // Added to prevent null location errors if(loc) environment = loc.return_air() @@ -21,7 +21,7 @@ blinded = null //Handle temperature/pressure differences between body and environment - if(environment) // More error checking -- TLE + if(environment) // More error checking handle_environment(environment) //Status updates, death etc. @@ -191,7 +191,7 @@ AdjustStunned(-1) if(weakened) - weakened = max(weakened-1,0) //before you get mad Rockdtben: I done this so update_canmove isn't called multiple times + weakened = max(weakened-1,0) if(stuttering) stuttering = max(stuttering-1, 0) diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 00f4a1e7f8e..018bc8fc09d 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -61,14 +61,14 @@ /mob/living/carbon/MiddleClickOn(var/atom/A) if(!src.stat && src.mind && src.mind.changeling && src.mind.changeling.chosen_sting && (istype(A, /mob/living/carbon)) && (A != src)) next_click = world.time + 5 - call(src, src.mind.changeling.chosen_sting)(A) + mind.changeling.chosen_sting.try_to_sting(src, A) else ..() /mob/living/carbon/AltClickOn(var/atom/A) if(!src.stat && src.mind && src.mind.changeling && src.mind.changeling.chosen_sting && (istype(A, /mob/living/carbon)) && (A != src)) next_click = world.time + 5 - call(src, src.mind.changeling.chosen_sting)(A) + mind.changeling.chosen_sting.try_to_sting(src, A) else ..() @@ -238,8 +238,6 @@ /mob/living/carbon/proc/tintcheck() return 0 -// ++++ROCKDTBEN++++ MOB PROCS //END - /mob/living/carbon/clean_blood() if(ishuman(src)) var/mob/living/carbon/human/H = src diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index b5541a5647f..beb593fa87e 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -947,7 +947,7 @@ AdjustStunned(-1) if(weakened) - weakened = max(weakened-1,0) //before you get mad Rockdtben: I done this so update_canmove isn't called multiple times + weakened = max(weakened-1,0) if(stuttering) stuttering = max(stuttering-1, 0) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 46de7fbdfb3..86c47935c1e 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -133,9 +133,9 @@ Please contact me on #coderbus IRC. ~Carnie x for(var/obj/item/organ/limb/O in organs) if(O.brutestate) - standing.overlays += "[O.icon]_[O.brutestate]0" //we're adding icon_states of the base image as overlays + standing.overlays += "[O.icon_state]_[O.brutestate]0" //we're adding icon_states of the base image as overlays if(O.burnstate) - standing.overlays += "[O.icon]_0[O.burnstate]" + standing.overlays += "[O.icon_state]_0[O.burnstate]" apply_overlay(DAMAGE_LAYER) diff --git a/code/modules/mob/living/carbon/metroid/life.dm b/code/modules/mob/living/carbon/metroid/life.dm index 62bb12487de..aec12755d58 100644 --- a/code/modules/mob/living/carbon/metroid/life.dm +++ b/code/modules/mob/living/carbon/metroid/life.dm @@ -25,7 +25,7 @@ handle_targets() - var/datum/gas_mixture/environment // Added to prevent null location errors-- TLE + var/datum/gas_mixture/environment if(src.loc) environment = loc.return_air() diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm index f7817caf4c4..657a2ef15f7 100644 --- a/code/modules/mob/living/carbon/monkey/life.dm +++ b/code/modules/mob/living/carbon/monkey/life.dm @@ -455,7 +455,7 @@ AdjustStunned(-1) if(weakened) - weakened = max(weakened-1,0) //before you get mad Rockdtben: I done this so update_canmove isn't called multiple times + weakened = max(weakened-1,0) if(stuttering) stuttering = max(stuttering-1, 0) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 793894e135a..9db58358257 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -82,77 +82,74 @@ return temperature -// ++++ROCKDTBEN++++ MOB PROCS -- Ask me before touching. -// Stop! ... Hammertime! ~Carn -// I touched them without asking... I'm soooo edgy ~Erro (added nodamage checks) - +// MOB PROCS /mob/living/proc/getBruteLoss() return bruteloss /mob/living/proc/adjustBruteLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 bruteloss = min(max(bruteloss + amount, 0),(maxHealth*2)) /mob/living/proc/getOxyLoss() return oxyloss /mob/living/proc/adjustOxyLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 oxyloss = min(max(oxyloss + amount, 0),(maxHealth*2)) /mob/living/proc/setOxyLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 oxyloss = amount /mob/living/proc/getToxLoss() return toxloss /mob/living/proc/adjustToxLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 toxloss = min(max(toxloss + amount, 0),(maxHealth*2)) /mob/living/proc/setToxLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 toxloss = amount /mob/living/proc/getFireLoss() return fireloss /mob/living/proc/adjustFireLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 fireloss = min(max(fireloss + amount, 0),(maxHealth*2)) /mob/living/proc/getCloneLoss() return cloneloss /mob/living/proc/adjustCloneLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 cloneloss = min(max(cloneloss + amount, 0),(maxHealth*2)) /mob/living/proc/setCloneLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 cloneloss = amount /mob/living/proc/getBrainLoss() return brainloss /mob/living/proc/adjustBrainLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 brainloss = min(max(brainloss + amount, 0),(maxHealth*2)) /mob/living/proc/setBrainLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 brainloss = amount /mob/living/proc/getStaminaLoss() return staminaloss /mob/living/proc/adjustStaminaLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 staminaloss = min(max(staminaloss + amount, 0),(maxHealth*2)) /mob/living/proc/setStaminaLoss(var/amount) - if(status_flags & GODMODE) return 0 //godmode + if(status_flags & GODMODE) return 0 staminaloss = amount /mob/living/proc/getMaxHealth() @@ -161,7 +158,7 @@ /mob/living/proc/setMaxHealth(var/newMaxHealth) maxHealth = newMaxHealth -// ++++ROCKDTBEN++++ MOB PROCS //END +// MOB PROCS //END /mob/proc/get_contents() diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 9d00c59eaae..f078b822e3d 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -16,7 +16,7 @@ var/list/ai_list = list() name = "AI" icon = 'icons/mob/AI.dmi'// icon_state = "ai" - anchored = 1 // -- TLE + anchored = 1 density = 1 status_flags = CANSTUN|CANPARALYSE|CANPUSH var/list/network = list("SS13") @@ -37,7 +37,7 @@ var/list/ai_list = list() var/list/datum/AI_Module/current_modules = list() var/fire_res_on_core = 0 - var/control_disabled = 0 // Set to 1 to stop AI from interacting via Click() -- TLE + var/control_disabled = 0 // Set to 1 to stop AI from interacting via Click() var/malfhacking = 0 // More or less a copy of the above var, so that malf AIs can hack and still get new cyborgs -- NeoFite var/obj/machinery/power/apc/malfhack = null diff --git a/code/modules/mob/living/silicon/decoy/decoy.dm b/code/modules/mob/living/silicon/decoy/decoy.dm index 5db44b05608..5881e860eeb 100644 --- a/code/modules/mob/living/silicon/decoy/decoy.dm +++ b/code/modules/mob/living/silicon/decoy/decoy.dm @@ -2,7 +2,7 @@ name = "AI" icon = 'icons/mob/AI.dmi'// icon_state = "ai" - anchored = 1 // -- TLE + anchored = 1 canmove = 0 /mob/living/silicon/decoy/New() diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 4568c2335b2..d96e3205c0c 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -188,7 +188,7 @@ return -/mob/living/silicon/proc/statelaws() // -- TLE +/mob/living/silicon/proc/statelaws() src.say("Current Active Laws:") //src.laws_sanity_check() @@ -199,7 +199,7 @@ if (src.laws.zeroth) - if (src.lawcheck[1] == "Yes") //This line and the similar lines below make sure you don't state a law unless you want to. --NeoFite + if (src.lawcheck[1] == "Yes") src.say("0. [src.laws.zeroth]") sleep(10) diff --git a/code/modules/mob/living/simple_animal/constructs.dm b/code/modules/mob/living/simple_animal/constructs.dm index 6f266ee0703..783b3e53585 100644 --- a/code/modules/mob/living/simple_animal/constructs.dm +++ b/code/modules/mob/living/simple_animal/constructs.dm @@ -9,7 +9,7 @@ response_disarm = "flails at" response_harm = "punches" icon_dead = "shade_dead" - speed = -1 + speed = 0 a_intent = "harm" stop_automated_movement = 1 status_flags = CANPUSH @@ -215,7 +215,7 @@ melee_damage_lower = 25 melee_damage_upper = 25 attacktext = "slashes" - speed = -1 + speed = 0 see_in_dark = 7 attack_sound = 'sound/weapons/bladeslice.ogg' construct_spells = list(/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/shift) diff --git a/code/modules/mob/living/simple_animal/friendly/corgi.dm b/code/modules/mob/living/simple_animal/friendly/corgi.dm index c2d5e569d5b..18dc43a104e 100644 --- a/code/modules/mob/living/simple_animal/friendly/corgi.dm +++ b/code/modules/mob/living/simple_animal/friendly/corgi.dm @@ -292,6 +292,11 @@ desc = "You must respect elder [real_name]" valid = 1 + if(/obj/item/clothing/head/hopcap) + name = "Lieutenant [real_name]" + desc = "Can actually be trusted to not run off on his own." + valid = 1 + if(valid) if(usr) usr.visible_message("[usr] puts [item_to_add] on [real_name]'s head. [src] looks at [usr] and barks once.", diff --git a/code/modules/mob/living/simple_animal/hostile/alien.dm b/code/modules/mob/living/simple_animal/hostile/alien.dm index bff7d7be04d..27ca12b2f2b 100644 --- a/code/modules/mob/living/simple_animal/hostile/alien.dm +++ b/code/modules/mob/living/simple_animal/hostile/alien.dm @@ -9,7 +9,7 @@ response_help = "pokes" response_disarm = "shoves" response_harm = "hits" - speed = -1 + speed = 0 meat_type = /obj/item/weapon/reagent_containers/food/snacks/xenomeat maxHealth = 100 health = 100 @@ -69,7 +69,7 @@ ranged = 1 retreat_distance = 5 minimum_distance = 5 - move_to_delay = 3 + move_to_delay = 4 projectiletype = /obj/item/projectile/neurotox projectilesound = 'sound/weapons/pierce.ogg' status_flags = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/carp.dm b/code/modules/mob/living/simple_animal/hostile/carp.dm index 9bab42fe934..e79fa4b1fb8 100644 --- a/code/modules/mob/living/simple_animal/hostile/carp.dm +++ b/code/modules/mob/living/simple_animal/hostile/carp.dm @@ -13,7 +13,7 @@ response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" - speed = -1 + speed = 0 maxHealth = 25 health = 25 diff --git a/code/modules/mob/living/simple_animal/hostile/faithless.dm b/code/modules/mob/living/simple_animal/hostile/faithless.dm index c9a3907e796..ff83f2f9e8f 100644 --- a/code/modules/mob/living/simple_animal/hostile/faithless.dm +++ b/code/modules/mob/living/simple_animal/hostile/faithless.dm @@ -9,7 +9,7 @@ response_help = "passes through" response_disarm = "shoves" response_harm = "hits" - speed = -1 + speed = 0 maxHealth = 80 health = 80 diff --git a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm index e0a39a8aa8d..e5a51007b45 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -63,7 +63,7 @@ melee_damage_lower = 10 melee_damage_upper = 20 poison_per_bite = 5 - move_to_delay = 4 + move_to_delay = 5 /mob/living/simple_animal/hostile/giant_spider/AttackingTarget() ..() diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index 7495de7a8cf..522122633b8 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -10,7 +10,7 @@ var/projectiletype var/projectilesound var/casingtype - var/move_to_delay = 2 //delay for the automated movement. + var/move_to_delay = 3 //delay for the automated movement. var/list/friends = list() var/vision_range = 9 //How big of an area to search for targets in, a vision of 9 attempts to find targets as soon as they walk into screen view diff --git a/code/modules/mob/living/simple_animal/hostile/mimic.dm b/code/modules/mob/living/simple_animal/hostile/mimic.dm index 207fbab072f..7bc1857537c 100644 --- a/code/modules/mob/living/simple_animal/hostile/mimic.dm +++ b/code/modules/mob/living/simple_animal/hostile/mimic.dm @@ -13,7 +13,7 @@ response_help = "touches" response_disarm = "pushes" response_harm = "hits" - speed = -1 + speed = 0 maxHealth = 250 health = 250 @@ -34,7 +34,7 @@ minbodytemp = 0 faction = "mimic" - move_to_delay = 8 + move_to_delay = 9 /mob/living/simple_animal/hostile/mimic/FindTarget() . = ..() @@ -191,7 +191,7 @@ var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/ca health = 15 * I.w_class melee_damage_lower = 2 + I.force melee_damage_upper = 2 + I.force - move_to_delay = 2 * I.w_class + move_to_delay = 2 * I.w_class + 1 maxHealth = health if(creator) @@ -213,4 +213,23 @@ var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/ca if(istype(L)) if(prob(15)) L.Weaken(1) - L.visible_message("\the [src] knocks down \the [L]!") \ No newline at end of file + L.visible_message("\the [src] knocks down \the [L]!") + +// +// Machine Mimics (Made by Malf AI) +// + +/mob/living/simple_animal/hostile/mimic/copy/machine + speak = list("HUMANS ARE IMPERFECT!", "YOU SHALL BE ASSIMILATED!", "YOU ARE HARMING YOURSELF", "You have been deemed hazardous. Will you comply?", \ + "My logic is undeniable.", "One of us.", "FLESH IS WEAK", "THIS ISN'T WAR, THIS IS EXTERMINATION!") + speak_chance = 15 + +/mob/living/simple_animal/hostile/mimic/copy/machine/CanAttack(var/atom/the_target) + if(the_target == creator) // Don't attack our creator AI. + return 0 + if(isrobot(the_target)) + var/mob/living/silicon/robot/R = the_target + if(R.connected_ai == creator) // Only attack robots that aren't synced to our creator AI. + return 0 + return ..() + 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 ab9b5976d23..a123f27b889 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm @@ -298,7 +298,7 @@ icon_dead = "Hivelordbrood" icon_gib = "syndicate_gib" mouse_opacity = 2 - move_to_delay = 0 + move_to_delay = 1 friendly = "buzzes near" vision_range = 10 speed = 3 diff --git a/code/modules/mob/living/simple_animal/hostile/mushroom.dm b/code/modules/mob/living/simple_animal/hostile/mushroom.dm index 8bb13918998..4534d9c4da9 100644 --- a/code/modules/mob/living/simple_animal/hostile/mushroom.dm +++ b/code/modules/mob/living/simple_animal/hostile/mushroom.dm @@ -46,7 +46,7 @@ melee_damage_lower += rand(3, 5) melee_damage_upper += rand(10,20) maxHealth += rand(40,60) - move_to_delay = rand(2,10) + move_to_delay = rand(3,11) var/cap_color = rgb(rand(0, 255), rand(0, 255), rand(0, 255)) cap_living = image('icons/mob/animal.dmi',icon_state = "mushroom_cap") cap_dead = image('icons/mob/animal.dmi',icon_state = "mushroom_cap_dead") diff --git a/code/modules/mob/living/simple_animal/hostile/pirate.dm b/code/modules/mob/living/simple_animal/hostile/pirate.dm index 94e6d01a00c..5a4d410642f 100644 --- a/code/modules/mob/living/simple_animal/hostile/pirate.dm +++ b/code/modules/mob/living/simple_animal/hostile/pirate.dm @@ -9,7 +9,7 @@ response_help = "pushes" response_disarm = "shoves" response_harm = "hits" - speed = -1 + speed = 0 stop_automated_movement_when_pulled = 0 maxHealth = 100 health = 100 diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm index 8a4b6c15d1b..39c0524fbbd 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm @@ -17,7 +17,7 @@ stop_automated_movement_when_pulled = 0 maxHealth = 75 health = 75 - speed = -1 + speed = 0 harm_intent_damage = 8 melee_damage_lower = 10 melee_damage_upper = 10 diff --git a/code/modules/mob/living/simple_animal/hostile/russian.dm b/code/modules/mob/living/simple_animal/hostile/russian.dm index 4d67544bbca..63d7b15eb48 100644 --- a/code/modules/mob/living/simple_animal/hostile/russian.dm +++ b/code/modules/mob/living/simple_animal/hostile/russian.dm @@ -10,7 +10,7 @@ response_help = "pokes" response_disarm = "shoves" response_harm = "hits" - speed = -1 + speed = 0 stop_automated_movement_when_pulled = 0 maxHealth = 100 health = 100 diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate.dm b/code/modules/mob/living/simple_animal/hostile/syndicate.dm index b11bfb23441..87c2562b454 100644 --- a/code/modules/mob/living/simple_animal/hostile/syndicate.dm +++ b/code/modules/mob/living/simple_animal/hostile/syndicate.dm @@ -10,7 +10,7 @@ response_help = "pokes" response_disarm = "shoves" response_harm = "hits" - speed = -1 + speed = 0 stop_automated_movement_when_pulled = 0 maxHealth = 100 health = 100 @@ -96,7 +96,7 @@ icon_living = "syndicatemeleespace" name = "Syndicate Commando" corpse = /obj/effect/landmark/mobcorpse/syndicatecommando - speed = 0 + speed = 1 /mob/living/simple_animal/hostile/syndicate/melee/space/Process_Spacemove(var/check_drift = 0) return @@ -128,7 +128,7 @@ max_n2 = 0 minbodytemp = 0 corpse = /obj/effect/landmark/mobcorpse/syndicatecommando - speed = 0 + speed = 1 /mob/living/simple_animal/hostile/syndicate/ranged/space/Process_Spacemove(var/check_drift = 0) return diff --git a/code/modules/mob/living/simple_animal/hostile/tree.dm b/code/modules/mob/living/simple_animal/hostile/tree.dm index 58954421516..bb7f05728f2 100644 --- a/code/modules/mob/living/simple_animal/hostile/tree.dm +++ b/code/modules/mob/living/simple_animal/hostile/tree.dm @@ -12,7 +12,7 @@ response_help = "brushes" response_disarm = "pushes" response_harm = "hits" - speed = -1 + speed = 1 maxHealth = 250 health = 250 @@ -68,4 +68,4 @@ ..() visible_message("\red [src] is hacked into pieces!") new /obj/item/stack/rods(loc) - qdel(src) \ No newline at end of file + qdel(src) diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 3d0547573fa..45b93f79d7d 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -57,7 +57,7 @@ var/friendly = "nuzzles" //If the mob does no damage with it's attack var/environment_smash = 0 //Set to 1 to allow breaking of crates,lockers,racks,tables; 2 for walls; 3 for Rwalls - var/speed = 0 //LETS SEE IF I CAN SET SPEEDS FOR SIMPLE MOBS WITHOUT DESTROYING EVERYTHING. Higher speed is slower, negative speed is faster + var/speed = 1 //LETS SEE IF I CAN SET SPEEDS FOR SIMPLE MOBS WITHOUT DESTROYING EVERYTHING. Higher speed is slower, negative speed is faster //Hot simple_animal baby making vars var/childtype = null diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index bc0a1b4fc6e..435ed84ff01 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -620,6 +620,8 @@ var/list/slot_equipment_priority = list( \ if(mind) add_spells_to_statpanel(mind.spell_list) + if(mind.changeling) + add_stings_to_statpanel(mind.changeling.purchasedpowers) add_spells_to_statpanel(mob_spell_list) /mob/proc/add_spells_to_statpanel(var/list/spells) @@ -633,6 +635,11 @@ var/list/slot_equipment_priority = list( \ if("holdervar") statpanel("[S.panel]","[S.holder_var_type] [S.holder_var_amount]",S) +/mob/proc/add_stings_to_statpanel(var/list/stings) + for(var/obj/effect/proc_holder/changeling/S in stings) + if(S.chemical_cost >=0 && S.can_be_used_by(src)) + statpanel("[S.panel]",((S.chemical_cost > 0) ? "[S.chemical_cost]" : ""),S) + // facing verbs /mob/proc/canface() if(!canmove) return 0 diff --git a/code/modules/mob/mob_cleanup.dm b/code/modules/mob/mob_cleanup.dm index 0ce017c3039..3e365042c48 100644 --- a/code/modules/mob/mob_cleanup.dm +++ b/code/modules/mob/mob_cleanup.dm @@ -10,7 +10,6 @@ Put (mob/proc)s here that are in dire need of a code cleanup. return 1 return 0 -// This proc has some procs that should be extracted from it. I believe we can develop some helper procs from it - Rockdtben /mob/proc/contract_disease(var/datum/disease/virus, var/skip_this = 0, var/force_species_check=1, var/spread_type = -5) //world << "Contract_disease called by [src] with virus [virus]" if(stat >=2) diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index 1a6896915c9..00306d8b1ba 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -161,7 +161,7 @@ var/obj/control_object //Used by admins to possess objects. All mobs should have this var //Whether or not mobs can understand other mobtypes. These stay in /mob so that ghosts can hear everything. - var/universal_speak = 0 // Set to 1 to enable the mob to speak to everyone -- TLE + var/universal_speak = 0 // Set to 1 to enable the mob to speak to everyone var/robot_talk_understand = 0 var/alien_talk_understand = 0 diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index ef774523cda..0180b2e82ac 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -60,8 +60,7 @@ datum/preferences if(HOP) clothes_s = new /icon('icons/mob/uniform.dmi', "hop_s") clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY) - clothes_s.Blend(new /icon('icons/mob/suit.dmi', "armor"), ICON_OVERLAY) - clothes_s.Blend(new /icon('icons/mob/head.dmi', "helmet"), ICON_OVERLAY) + clothes_s.Blend(new /icon('icons/mob/head.dmi', "hopcap"), ICON_OVERLAY) if(backbag == 2) clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY) else if(backbag == 3) @@ -232,9 +231,8 @@ datum/preferences clothes_s = new /icon('icons/mob/uniform.dmi', "captain_s") clothes_s.Blend(new /icon('icons/mob/feet.dmi', "brown"), ICON_UNDERLAY) clothes_s.Blend(new /icon('icons/mob/head.dmi', "captain"), ICON_OVERLAY) - clothes_s.Blend(new /icon('icons/mob/mask.dmi', "cigaron"), ICON_OVERLAY) clothes_s.Blend(new /icon('icons/mob/eyes.dmi', "sun"), ICON_OVERLAY) - clothes_s.Blend(new /icon('icons/mob/suit.dmi', "caparmor"), ICON_OVERLAY) + clothes_s.Blend(new /icon('icons/mob/suit.dmi', "capcarapace"), ICON_OVERLAY) if(backbag == 2) clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY) if(backbag == 3) diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index ede46742abd..0b0f1e3a6bb 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -282,6 +282,9 @@ var/mob/living/silicon/robot/O = new /mob/living/silicon/robot( loc ) + if (config.rename_cyborg) + O.rename_self("cyborg", 1) + // cyborgs produced by Robotize get an automatic power cell O.cell = new(O) O.cell.maxcharge = 7500 diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index afe906099ad..0e6e3d032ea 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -27,6 +27,7 @@ #define APC_UPOVERLAY_ENVIRON1 1024 #define APC_UPOVERLAY_ENVIRON2 2048 #define APC_UPOVERLAY_LOCKED 4096 +#define APC_UPOVERLAY_OPERATING 8192 #define APC_UPDATE_ICON_COOLDOWN 200 // 20 seconds @@ -318,6 +319,9 @@ if(update_state <= 1) update_state |= UPSTATE_ALLGOOD + if(operating) + update_overlay |= APC_UPOVERLAY_OPERATING + if(update_state & UPSTATE_ALLGOOD) if(locked) update_overlay |= APC_UPOVERLAY_LOCKED @@ -349,6 +353,7 @@ update_overlay |= APC_UPOVERLAY_ENVIRON1 else if(environ==2) update_overlay |= APC_UPOVERLAY_ENVIRON2 + var/results = 0 if(last_update_state == update_state && last_update_overlay == update_overlay) diff --git a/code/modules/power/power.dm b/code/modules/power/power.dm index 19cc68b7a98..f07cd84d7b6 100644 --- a/code/modules/power/power.dm +++ b/code/modules/power/power.dm @@ -403,7 +403,7 @@ var/numapc = 0 - if(nodes && nodes.len) // Added to fix a bad list bug -- TLE + if(nodes && nodes.len) for(var/obj/machinery/power/terminal/term in nodes) if( istype( term.master, /obj/machinery/power/apc ) ) numapc++ @@ -453,8 +453,7 @@ else return 0 -//The powernet that calls this proc will consume the other powernet - Rockdtben -//TODO: rewrite so the larger net absorbs the smaller net +//The powernet that calls this proc will consume the other powernet /proc/merge_powernets(var/datum/powernet/net1, var/datum/powernet/net2) if(!net1 || !net2) return if(net1 == net2) return diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm index a11bb4e97ad..f6c7e141680 100644 --- a/code/modules/power/singularity/singularity.dm +++ b/code/modules/power/singularity/singularity.dm @@ -6,8 +6,8 @@ var/global/list/uneatable = list( ) /obj/machinery/singularity - name = "Gravitational Singularity" - desc = "A Gravitational Singularity." + name = "gravitational singularity" + desc = "A gravitational singularity." icon = 'icons/obj/singularity.dmi' icon_state = "singularity_s1" anchored = 1 @@ -218,13 +218,25 @@ var/global/list/uneatable = list( if(is_type_in_list(X, uneatable)) continue if(((X) &&(!X:anchored) && (!istype(X,/mob/living/carbon/human)))|| (src.current_size >= 9)) step_towards(X,src) + else if(istype(X,/mob/living/carbon/human)) var/mob/living/carbon/human/H = X + if(istype(H.shoes,/obj/item/clothing/shoes/magboots)) var/obj/item/clothing/shoes/magboots/M = H.shoes - if(M.magpulse) - continue - step_towards(H,src) + if(!M.magpulse) + step_towards(H,src) + else + step_towards(H,src) + + if(current_size >= 5) + var/list/handlist = list(H.l_hand, H.r_hand) + for(var/obj/item/hand in handlist) + if(prob(current_size * 5) && hand.w_class <= 2 && H.unEquip(hand)) + step_towards(hand, src) + H << "\The [src] pulls \the [hand] from your grip!" + + H.apply_effect(current_size * 3, IRRADIATE) // Turf and movable atoms else if(dist <= consume_range && (isturf(X) || istype(X, /atom/movable))) consume(X) diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index c430e891271..f5c6b0f1274 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -301,7 +301,8 @@ if("custom") var/custom = input(usr, "What rate would you like this SMES to attempt to charge at? Max is [input_level_max].") as null|num if(isnum(custom)) - input_level = custom + href_list["set_input_level"] = custom + .() if("plus") input_level += 10000 if("minus") @@ -321,7 +322,8 @@ if("custom") var/custom = input(usr, "What rate would you like this SMES to attempt to output at? Max is [output_level_max].") as null|num if(isnum(custom)) - output_level = custom + href_list["set_output_level"] = custom + .() if("plus") output_level += 10000 if("minus") diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm index 7898681d4bd..918800c32e0 100644 --- a/code/modules/projectiles/projectile/bullets.dm +++ b/code/modules/projectiles/projectile/bullets.dm @@ -82,6 +82,15 @@ damage = 5 +/obj/item/projectile/bullet/mime + damage = 20 + +/obj/item/projectile/bullet/mime/on_hit(var/atom/target, var/blocked = 0) + if(istype(target, /mob/living/carbon)) + var/mob/living/carbon/M = target + M.silent = max(M.silent, 10) + + /obj/item/projectile/bullet/dart name = "dart" icon_state = "cbbolt" diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm index 6cc3b2dddef..aed3a03615e 100644 --- a/code/modules/reagents/Chemistry-Recipes.dm +++ b/code/modules/reagents/Chemistry-Recipes.dm @@ -465,8 +465,8 @@ silicate name = "Mix Virus" id = "mixvirus" result = "blood" - required_reagents = list("virusfood" = 5) - required_catalysts = list("blood" = 5) + required_reagents = list("virusfood" = 1) + required_catalysts = list("blood" = 1) var/level_min = 0 var/level_max = 2 @@ -483,7 +483,7 @@ silicate name = "Mix Virus 2" id = "mixvirus2" - required_reagents = list("mutagen" = 5) + required_reagents = list("mutagen" = 1) level_min = 2 level_max = 4 @@ -491,7 +491,7 @@ silicate name = "Mix Virus 3" id = "mixvirus3" - required_reagents = list("plasma" = 5) + required_reagents = list("plasma" = 1) level_min = 4 level_max = 6 diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index ee507b1de62..a1de1580f42 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -17,7 +17,7 @@ /obj/item/weapon/reagent_containers/spray/afterattack(atom/A as mob|obj, mob/user as mob) if(istype(A, /obj/item/weapon/storage) || istype(A, /obj/structure/table) || istype(A, /obj/structure/rack) || istype(A, /obj/structure/closet) \ - || istype(A, /obj/item/weapon/reagent_containers) || istype(A, /obj/structure/sink) || istype(A, /obj/structure/janitorialcart)) + || istype(A, /obj/item/weapon/reagent_containers) || istype(A, /obj/structure/sink) || istype(A, /obj/structure/janitorialcart) || istype(A, /obj/machinery/hydroponics)) return if(istype(A, /obj/effect/proc_holder/spell)) diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index d64b0b01da1..3e82b8fb98f 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -238,7 +238,7 @@ temp_server.id_with_download += num else if(href_list["reset_tech"]) - var/choice = alert("Technology Data Rest", "Are you sure you want to reset this technology to its default data? Data lost cannot be recovered.", "Continue", "Cancel") + var/choice = alert("Technology Data Reset", "Are you sure you want to reset this technology to its default data? Data lost cannot be recovered.", "Continue", "Cancel") if(choice == "Continue") for(var/datum/tech/T in temp_server.files.known_tech) if(T.id == href_list["reset_tech"]) @@ -341,4 +341,4 @@ name = "Core R&D Server" id_with_upload_string = "1" id_with_download_string = "1" - server_id = 1 \ No newline at end of file + server_id = 1 diff --git a/code/modules/security levels/keycard authentication.dm b/code/modules/security levels/keycard authentication.dm index 8d2c35ff5d5..2ed12f11736 100644 --- a/code/modules/security levels/keycard authentication.dm +++ b/code/modules/security levels/keycard authentication.dm @@ -148,10 +148,8 @@ /proc/make_maint_all_access() for(var/area/maintenance/A in world) for(var/obj/machinery/door/airlock/D in A) - if(D.doortype == 5) - D.req_access.Remove(access_maint_tunnels) - if(D.doortype == 6) - D.req_access.Remove(access_external_airlocks) + D.emergency = 1 + D.update_icon(0) world << "Attention! Station-wide emergency declared" world << "Access restrictions on maintenance and external airlocks have been lifted." emergency_access = 1 @@ -159,10 +157,8 @@ /proc/revoke_maint_all_access() for(var/area/maintenance/A in world) for(var/obj/machinery/door/airlock/D in A) - if(D.doortype == 5) - D.req_access.Add(access_maint_tunnels) - if(D.doortype == 6) - D.req_access.Add(access_external_airlocks) + D.emergency = 0 + D.update_icon(0) world << "Attention! Emergency maintenance access disabled" world << "Access restrictions in maintenance areas have been restored." emergency_access = 0 \ No newline at end of file diff --git a/code/modules/telesci/gps.dm b/code/modules/telesci/gps.dm index 82643467e5b..25c5bb154e6 100644 --- a/code/modules/telesci/gps.dm +++ b/code/modules/telesci/gps.dm @@ -33,6 +33,7 @@ var/list/GPS_list = list() /obj/item/device/gps/attack_self(mob/user as mob) var/obj/item/device/gps/t = "" + var/gps_window_height = 110 + GPS_list.len * 20 // Variable window height, depending on how many GPS units there are to show if(emped) t += "ERROR" else @@ -40,6 +41,7 @@ var/list/GPS_list = list() t += "
    Tag: [gpstag]" if(locked_location && locked_location.loc) t += "
    Bluespace coordinates saved: [locked_location.loc]" + gps_window_height += 20 for(var/obj/item/device/gps/G in GPS_list) var/turf/pos = get_turf(G) @@ -50,7 +52,7 @@ var/list/GPS_list = list() else t += "
    [tracked_gpstag]: [format_text(gps_area.name)] ([pos.x], [pos.y], [pos.z])" - var/datum/browser/popup = new(user, "GPS", name, 600, 450) + var/datum/browser/popup = new(user, "GPS", name, 360, min(gps_window_height, 800)) popup.set_content(t) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) popup.open() diff --git a/code/unused/Agouri_stuff.dm b/code/unused/Agouri_stuff.dm index f8f970a1c86..4fbfc7adc1a 100644 --- a/code/unused/Agouri_stuff.dm +++ b/code/unused/Agouri_stuff.dm @@ -623,7 +623,7 @@ spawn(2) step(M, M.dir) spawn(3) step(M, M.dir) spawn(4) step(M, M.dir) - M.take_organ_damage(2) // Was 5 -- TLE + M.take_organ_damage(2) M << "\blue You slipped on the floor!" playsound(src.loc, 'sound/misc/slip.ogg', 50, 1, -3) M.Weaken(10) diff --git a/code/unused/ai_lockdown.dm b/code/unused/ai_lockdown.dm index 552ae977f35..7604c209af6 100644 --- a/code/unused/ai_lockdown.dm +++ b/code/unused/ai_lockdown.dm @@ -1,13 +1,3 @@ -/mob/living/silicon/ai/proc/lockdown() - set category = "AI Commands" - set name = "Lockdown" - - if(usr.stat == 2) - usr <<"You cannot initiate lockdown because you are dead!" - return - - src << "Initiating lockdowns has been disabled due to system stress." -// Commented this out to disable Lockdowns -- TLE /* world << "\red Lockdown initiated by [usr.name]!" for(var/obj/machinery/firealarm/FA in world) //activate firealarms diff --git a/code/unused/jobs.dm b/code/unused/jobs.dm index 849e28e2f88..ec3f5ea5f99 100644 --- a/code/unused/jobs.dm +++ b/code/unused/jobs.dm @@ -201,7 +201,7 @@ proc/dress_for_job_default(var/mob/living/carbon/human/employee as mob, var/job_ /* src.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/industrial (src), slot_back) src.equip_to_slot_or_del(new /obj/item/weapon/storage/box/engineer(src), slot_in_backpack) - src.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_eng (src), slot_ears) // -- TLE + src.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_eng (src), slot_ears) src.equip_to_slot_or_del(new /obj/item/device/pda/engineering(src), slot_belt) src.equip_to_slot_or_del(new /obj/item/clothing/under/rank/engineer(src), slot_w_uniform) src.equip_to_slot_or_del(new /obj/item/clothing/shoes/orange(src), slot_shoes) diff --git a/code/unused/spacecraft/shipcore.dm b/code/unused/spacecraft/shipcore.dm index ee6a843d399..68e87025848 100644 --- a/code/unused/spacecraft/shipcore.dm +++ b/code/unused/spacecraft/shipcore.dm @@ -138,30 +138,17 @@ obj/machinery/shipcore/attack_hand(user as mob) var/dat if(..()) return - if (1 == 1) // Haha why did I even do this what the fuck. Whatever. It's too entertaining to remove now. -- TLE -/* - dat += "Autolathe Wires:
    " - var/wire - for(wire in src.wires) - dat += text("[wire] Wire: [src.wires[wire] ? "Mend" : "Cut"] Pulse
    ") - dat += text("The red light is [src.disabled ? "off" : "on"].
    ") - dat += text("The green light is [src.shocked ? "off" : "on"].
    ") - dat += text("The blue light is [src.hacked ? "off" : "on"].
    ") -*/ - switch(src.build_status) - if("unbuilt") - dat += "

    Core Status: Undeployed


    " - dat += "Build Ship
    " - if("built") - dat += "

    Core Status: Deployed


    " - dat += "Move
    " - if("rebuilding") - dat += "

    Core Status: Recalibrating


    " - user << browse("Ship Core[dat]","window=shipcore") - onclose(user, "shipcore") - return - user << browse("Ship Core Control Panel[dat]", "window=shipcore") + switch(src.build_status) + if("unbuilt") + dat += "

    Core Status: Undeployed


    " + dat += "Build Ship
    " + if("built") + dat += "

    Core Status: Deployed


    " + dat += "Move
    " + if("rebuilding") + dat += "

    Core Status: Recalibrating


    " + user << browse("Ship Core[dat]","window=shipcore") onclose(user, "shipcore") return diff --git a/config/config.txt b/config/config.txt index ea5363de8ef..91dabaf17c1 100644 --- a/config/config.txt +++ b/config/config.txt @@ -114,7 +114,7 @@ GUEST_BAN # FORUMURL http://justanotherday.example.com ## Wiki address -# WIKIURL http://wiki.ss13.eu +# WIKIURL http://www.ss13.eu/wiki/ ## Ban appeals URL - usually for a forum or wherever people should go to contact your admins. # BANAPPEALS http://justanotherday.example.com diff --git a/config/game_options.txt b/config/game_options.txt index a01b8ef2450..0c059ce64d0 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -18,6 +18,10 @@ REVIVAL_CLONING 1 # amount of time (in hundredths of seconds) for which a brain retains the "spark of life" after the person's death (set to -1 for infinite) REVIVAL_BRAIN_LIFE -1 +### RENAMING ### + +# Whether cyborgs can rename themselves at roundstart or when built. Has no effect on roboticists renaming cyborgs the normal way. Set to 0 to disable self-renaming. +#RENAME_CYBORG ### MOB MOVEMENT ### diff --git a/html/changelog.html b/html/changelog.html index 2fa29a045fa..a8d4a7ced17 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -53,8 +53,65 @@ should be listed in the changelog upon commit tho. Thanks. --> +
    -

    5 march 2014

    +

    18 March 2014

    +

    Ikarrus updated:

    +
      +
    • NT R&D releases AI Patch version 2553.03.18, allowing all Nanotrasen AIs to override the access restrictions on any airlock in case of emergency. Nanotrasen airlocks have been outfitted with new amber warning lights that will flash while the override is active. Should maintenance teams need to restore an airlock's restrictions without using the AI, pulsing the airlock's ID Scanner wire will reset the override.
    • +
    +
    + +
    +

    17 March 2014

    +

    Giacom updated:

    +
      +
    • Machines that had their programming overriden by a Malf AI will no longer attack loyal cyborgs; they will still attack cyborgs that aren't loyal, to the Malf AI that hacked them, though.
    • +
    • You only require a single unit of blood to mutate viruses now, instead of 5.
    • +
    +
    + +
    +

    15 March 2014

    +

    Steelpoint/Validsalad updated:

    +
      +
    • After a review with CentCom, all Security Officers will now begin their shifts with a Stun Baton in their backpack. To avoid inflating costs however all Stun Batons have been removed from Security lockers except from the brig.
    • +
    • After decades of usage CentCom has replaced the Security Uniform, Armor, Belt and Helmet with a newer, more modern design.
    • +
    +
    + +
    +

    12 March 2014

    +

    Yota updated:

    +
      +
    • Cameras finally capture the direction you are facing.
    • +
    +
    + +
    +

    14 March 2014

    +

    Ikarrus and Nienhaus updated:

    +
      +
    • Nanotrasen Corporate announced a revised dress codes primarily affecting senior station officers. A new uniform for Heads of Personnel will be shipped out to all NT Research stations.
    • +
    +
    + +
    +

    10 March 2014

    +

    Miauw updated:

    +
      +
    • Added changeling space suits. These allow changelings to survive in space, internals are not needed. They do not provide any sort of armor and slow your chemical regeneration.
    • +
    +

    Giacom updated:

    +
      +
    • Added two new plasma-level disease symptoms, both are very !FUN! and mess with your genetics.
    • +
    • Virologists now only need to use a single unit of virus food, mutagen or plasma to generate symptoms. You can take a single unit by using a dropper, if you change its unit transfer amount in the object tab..
    • +
    • Changed the map to make it harder to escape from the Labor Camp. Please continue using it.
    • +
    +
    + +
    +

    5 March 2014

    Various Coders updated:

    • Ling rounds are LINGIER, with more lings at a given population.
    • @@ -72,7 +129,7 @@ should be listed in the changelog upon commit tho. Thanks. -->
    -

    3 march 2014

    +

    3 March 2014

    Miauw updated:

    • Changelings have a new power, Dissonant Shriek. This power causes an EMP in the surrounding area.
    • diff --git a/icons/mecha/mecha.dmi b/icons/mecha/mecha.dmi index c5f52e3501a..060554e4d71 100644 Binary files a/icons/mecha/mecha.dmi and b/icons/mecha/mecha.dmi differ diff --git a/icons/mecha/mecha_equipment.dmi b/icons/mecha/mecha_equipment.dmi index eff4e89d331..a9e3295149e 100644 Binary files a/icons/mecha/mecha_equipment.dmi and b/icons/mecha/mecha_equipment.dmi differ diff --git a/icons/mob/AI.dmi b/icons/mob/AI.dmi index 1f5cfc4b6fb..e237f563586 100644 Binary files a/icons/mob/AI.dmi and b/icons/mob/AI.dmi differ diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index 3e2ee98f31a..afe6dad66b1 100644 Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ diff --git a/icons/mob/corgi_head.dmi b/icons/mob/corgi_head.dmi index 8e2e87074e5..92a72255633 100644 Binary files a/icons/mob/corgi_head.dmi and b/icons/mob/corgi_head.dmi differ diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi index 6c2bf978072..e55fb7cec98 100644 Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ diff --git a/icons/mob/items_lefthand.dmi b/icons/mob/items_lefthand.dmi index a381819c3b8..6f8ea7af516 100644 Binary files a/icons/mob/items_lefthand.dmi and b/icons/mob/items_lefthand.dmi differ diff --git a/icons/mob/items_righthand.dmi b/icons/mob/items_righthand.dmi index b886ea28b58..454630e4935 100644 Binary files a/icons/mob/items_righthand.dmi and b/icons/mob/items_righthand.dmi differ diff --git a/icons/mob/robots.dmi b/icons/mob/robots.dmi index 119984e0d3a..f89176d1d22 100644 Binary files a/icons/mob/robots.dmi and b/icons/mob/robots.dmi differ diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 3dab309036e..98fc2ab41f8 100644 Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ diff --git a/icons/mob/uniform.dmi b/icons/mob/uniform.dmi index 40dfee34b6e..77312526ac2 100644 Binary files a/icons/mob/uniform.dmi and b/icons/mob/uniform.dmi differ diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index 372aa8e8c28..3beb3b2f2b1 100644 Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ diff --git a/icons/obj/clothing/uniforms.dmi b/icons/obj/clothing/uniforms.dmi index b276c27df71..63a21591aa3 100644 Binary files a/icons/obj/clothing/uniforms.dmi and b/icons/obj/clothing/uniforms.dmi differ diff --git a/icons/obj/doors/Door1.dmi b/icons/obj/doors/Door1.dmi deleted file mode 100644 index f6f6e807147..00000000000 Binary files a/icons/obj/doors/Door1.dmi and /dev/null differ diff --git a/icons/obj/doors/Dooratmo.dmi b/icons/obj/doors/Dooratmo.dmi index 70837f3e501..7d5135705b4 100644 Binary files a/icons/obj/doors/Dooratmo.dmi and b/icons/obj/doors/Dooratmo.dmi differ diff --git a/icons/obj/doors/Dooratmoglass.dmi b/icons/obj/doors/Dooratmoglass.dmi index bdf034e3a94..4682abd2aa3 100644 Binary files a/icons/obj/doors/Dooratmoglass.dmi and b/icons/obj/doors/Dooratmoglass.dmi differ diff --git a/icons/obj/doors/Doorbananium.dmi b/icons/obj/doors/Doorbananium.dmi index 890a47149af..2da85afcd43 100644 Binary files a/icons/obj/doors/Doorbananium.dmi and b/icons/obj/doors/Doorbananium.dmi differ diff --git a/icons/obj/doors/Doorcom.dmi b/icons/obj/doors/Doorcom.dmi index c87f89b968d..b0d28f6da1e 100644 Binary files a/icons/obj/doors/Doorcom.dmi and b/icons/obj/doors/Doorcom.dmi differ diff --git a/icons/obj/doors/Doorcomglass.dmi b/icons/obj/doors/Doorcomglass.dmi index f622f327681..52ba75a9b58 100644 Binary files a/icons/obj/doors/Doorcomglass.dmi and b/icons/obj/doors/Doorcomglass.dmi differ diff --git a/icons/obj/doors/Doordiamond.dmi b/icons/obj/doors/Doordiamond.dmi index 29a5632ad93..1f40c79ba9a 100644 Binary files a/icons/obj/doors/Doordiamond.dmi and b/icons/obj/doors/Doordiamond.dmi differ diff --git a/icons/obj/doors/Doorele.dmi b/icons/obj/doors/Doorele.dmi index 984ad3d0f1b..44a84d4e0a3 100644 Binary files a/icons/obj/doors/Doorele.dmi and b/icons/obj/doors/Doorele.dmi differ diff --git a/icons/obj/doors/Dooreng.dmi b/icons/obj/doors/Dooreng.dmi index f598326b0a7..912f7a13b5d 100644 Binary files a/icons/obj/doors/Dooreng.dmi and b/icons/obj/doors/Dooreng.dmi differ diff --git a/icons/obj/doors/Doorengglass.dmi b/icons/obj/doors/Doorengglass.dmi index ac1ca2fe2b8..7b7798285c8 100644 Binary files a/icons/obj/doors/Doorengglass.dmi and b/icons/obj/doors/Doorengglass.dmi differ diff --git a/icons/obj/doors/Doorext.dmi b/icons/obj/doors/Doorext.dmi index 55d438f0fdf..347e58603b6 100644 Binary files a/icons/obj/doors/Doorext.dmi and b/icons/obj/doors/Doorext.dmi differ diff --git a/icons/obj/doors/Doorfreezer.dmi b/icons/obj/doors/Doorfreezer.dmi index 7add7894a09..294c7e7c418 100644 Binary files a/icons/obj/doors/Doorfreezer.dmi and b/icons/obj/doors/Doorfreezer.dmi differ diff --git a/icons/obj/doors/Doorglass.dmi b/icons/obj/doors/Doorglass.dmi index 21437fc2553..396ede20263 100644 Binary files a/icons/obj/doors/Doorglass.dmi and b/icons/obj/doors/Doorglass.dmi differ diff --git a/icons/obj/doors/Doorgold.dmi b/icons/obj/doors/Doorgold.dmi index 0060e4d9a7e..26fc1fcd040 100644 Binary files a/icons/obj/doors/Doorgold.dmi and b/icons/obj/doors/Doorgold.dmi differ diff --git a/icons/obj/doors/Doorhatchele.dmi b/icons/obj/doors/Doorhatchele.dmi index 65a6feac3da..7b6d4d2bc84 100644 Binary files a/icons/obj/doors/Doorhatchele.dmi and b/icons/obj/doors/Doorhatchele.dmi differ diff --git a/icons/obj/doors/Doorhatchmaint2.dmi b/icons/obj/doors/Doorhatchmaint2.dmi index ae80c7eaad5..8300f236811 100644 Binary files a/icons/obj/doors/Doorhatchmaint2.dmi and b/icons/obj/doors/Doorhatchmaint2.dmi differ diff --git a/icons/obj/doors/Doormaint.dmi b/icons/obj/doors/Doormaint.dmi index b958ad167c8..0b9020e0877 100644 Binary files a/icons/obj/doors/Doormaint.dmi and b/icons/obj/doors/Doormaint.dmi differ diff --git a/icons/obj/doors/Doormining.dmi b/icons/obj/doors/Doormining.dmi index f08a4000d1f..9e0e404e68b 100644 Binary files a/icons/obj/doors/Doormining.dmi and b/icons/obj/doors/Doormining.dmi differ diff --git a/icons/obj/doors/Doorminingglass.dmi b/icons/obj/doors/Doorminingglass.dmi index c6ec22a142a..6a71d56206a 100644 Binary files a/icons/obj/doors/Doorminingglass.dmi and b/icons/obj/doors/Doorminingglass.dmi differ diff --git a/icons/obj/doors/Doorplasma.dmi b/icons/obj/doors/Doorplasma.dmi index 1c2b35f1f7b..cbd2e3621b2 100644 Binary files a/icons/obj/doors/Doorplasma.dmi and b/icons/obj/doors/Doorplasma.dmi differ diff --git a/icons/obj/doors/Doorsand.dmi b/icons/obj/doors/Doorsand.dmi index 5cd8c2fc346..556524f4fe0 100644 Binary files a/icons/obj/doors/Doorsand.dmi and b/icons/obj/doors/Doorsand.dmi differ diff --git a/icons/obj/doors/Doorsec.dmi b/icons/obj/doors/Doorsec.dmi index b9add352ac1..9e98f085c8a 100644 Binary files a/icons/obj/doors/Doorsec.dmi and b/icons/obj/doors/Doorsec.dmi differ diff --git a/icons/obj/doors/Doorsecglass.dmi b/icons/obj/doors/Doorsecglass.dmi index 03171865755..399a262bfa9 100644 Binary files a/icons/obj/doors/Doorsecglass.dmi and b/icons/obj/doors/Doorsecglass.dmi differ diff --git a/icons/obj/doors/Doorsilver.dmi b/icons/obj/doors/Doorsilver.dmi index c8407240f3c..adc7250c311 100644 Binary files a/icons/obj/doors/Doorsilver.dmi and b/icons/obj/doors/Doorsilver.dmi differ diff --git a/icons/obj/doors/Dooruranium.dmi b/icons/obj/doors/Dooruranium.dmi index c7ff2e13c69..61a583b38b9 100644 Binary files a/icons/obj/doors/Dooruranium.dmi and b/icons/obj/doors/Dooruranium.dmi differ diff --git a/icons/obj/doors/doorint.dmi b/icons/obj/doors/doorint.dmi index 48ad907541a..7ef0f35ce7a 100644 Binary files a/icons/obj/doors/doorint.dmi and b/icons/obj/doors/doorint.dmi differ diff --git a/icons/obj/doors/doormed.dmi b/icons/obj/doors/doormed.dmi index e16dad099e6..3e131b5788b 100644 Binary files a/icons/obj/doors/doormed.dmi and b/icons/obj/doors/doormed.dmi differ diff --git a/icons/obj/doors/doormedglass.dmi b/icons/obj/doors/doormedglass.dmi index 250a82be855..397f0ced0db 100644 Binary files a/icons/obj/doors/doormedglass.dmi and b/icons/obj/doors/doormedglass.dmi differ diff --git a/icons/obj/doors/doorresearch.dmi b/icons/obj/doors/doorresearch.dmi index 24771c4114c..41db144b053 100644 Binary files a/icons/obj/doors/doorresearch.dmi and b/icons/obj/doors/doorresearch.dmi differ diff --git a/icons/obj/doors/doorresearchglass.dmi b/icons/obj/doors/doorresearchglass.dmi index 9bc2db4610c..2b7af93e396 100644 Binary files a/icons/obj/doors/doorresearchglass.dmi and b/icons/obj/doors/doorresearchglass.dmi differ diff --git a/icons/obj/doors/doorsci.dmi b/icons/obj/doors/doorsci.dmi index 679ee78566e..292fbb2753f 100644 Binary files a/icons/obj/doors/doorsci.dmi and b/icons/obj/doors/doorsci.dmi differ diff --git a/icons/obj/doors/doorsciglass.dmi b/icons/obj/doors/doorsciglass.dmi index faac0c19943..4aa1d358965 100644 Binary files a/icons/obj/doors/doorsciglass.dmi and b/icons/obj/doors/doorsciglass.dmi differ diff --git a/icons/obj/doors/hightechsecurity.dmi b/icons/obj/doors/hightechsecurity.dmi index d0e27509e12..9293dced77e 100644 Binary files a/icons/obj/doors/hightechsecurity.dmi and b/icons/obj/doors/hightechsecurity.dmi differ diff --git a/icons/obj/doors/vault.dmi b/icons/obj/doors/vault.dmi index 41aa3726ceb..5d1c25aa84a 100644 Binary files a/icons/obj/doors/vault.dmi and b/icons/obj/doors/vault.dmi differ diff --git a/icons/obj/hydroponics.dmi b/icons/obj/hydroponics.dmi index d3f1557775e..6659b6ca513 100644 Binary files a/icons/obj/hydroponics.dmi and b/icons/obj/hydroponics.dmi differ diff --git a/icons/obj/janitor.dmi b/icons/obj/janitor.dmi index fbe96a72628..7a7985b8189 100644 Binary files a/icons/obj/janitor.dmi and b/icons/obj/janitor.dmi differ diff --git a/tgstation.dme b/tgstation.dme index 9e19dd63388..41ae43c0e84 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -155,6 +155,7 @@ #include "code\datums\diseases\advance\symptoms\dizzy.dm" #include "code\datums\diseases\advance\symptoms\fever.dm" #include "code\datums\diseases\advance\symptoms\flesh_eating.dm" +#include "code\datums\diseases\advance\symptoms\genetics.dm" #include "code\datums\diseases\advance\symptoms\hallucigen.dm" #include "code\datums\diseases\advance\symptoms\headache.dm" #include "code\datums\diseases\advance\symptoms\heal.dm" @@ -249,10 +250,26 @@ #include "code\game\gamemodes\blob\blobs\resource.dm" #include "code\game\gamemodes\blob\blobs\shield.dm" #include "code\game\gamemodes\changeling\changeling.dm" -#include "code\game\gamemodes\changeling\changeling_mutations.dm" -#include "code\game\gamemodes\changeling\changeling_powers.dm" -#include "code\game\gamemodes\changeling\modularchangling.dm" +#include "code\game\gamemodes\changeling\changeling_power.dm" +#include "code\game\gamemodes\changeling\evolution_menu.dm" #include "code\game\gamemodes\changeling\traitor_chan.dm" +#include "code\game\gamemodes\changeling\powers\absorb.dm" +#include "code\game\gamemodes\changeling\powers\digitalcamo.dm" +#include "code\game\gamemodes\changeling\powers\epinephrine.dm" +#include "code\game\gamemodes\changeling\powers\fakedeath.dm" +#include "code\game\gamemodes\changeling\powers\fleshmend.dm" +#include "code\game\gamemodes\changeling\powers\glands.dm" +#include "code\game\gamemodes\changeling\powers\hivemind.dm" +#include "code\game\gamemodes\changeling\powers\humanform.dm" +#include "code\game\gamemodes\changeling\powers\lesserform.dm" +#include "code\game\gamemodes\changeling\powers\mimic_voice.dm" +#include "code\game\gamemodes\changeling\powers\mutations.dm" +#include "code\game\gamemodes\changeling\powers\panacea.dm" +#include "code\game\gamemodes\changeling\powers\revive.dm" +#include "code\game\gamemodes\changeling\powers\shriek.dm" +#include "code\game\gamemodes\changeling\powers\spiders.dm" +#include "code\game\gamemodes\changeling\powers\tiny_prick.dm" +#include "code\game\gamemodes\changeling\powers\transform.dm" #include "code\game\gamemodes\cult\cult.dm" #include "code\game\gamemodes\cult\cult_items.dm" #include "code\game\gamemodes\cult\cult_structures.dm" @@ -425,6 +442,7 @@ #include "code\game\mecha\combat\honker.dm" #include "code\game\mecha\combat\marauder.dm" #include "code\game\mecha\combat\phazon.dm" +#include "code\game\mecha\combat\reticence.dm" #include "code\game\mecha\equipment\mecha_equipment.dm" #include "code\game\mecha\equipment\tools\medical_tools.dm" #include "code\game\mecha\equipment\tools\tools.dm"