From d5a0b1e0b73baa6344ad2e6235c1293347d01b97 Mon Sep 17 00:00:00 2001 From: IK3I Date: Sat, 27 May 2017 19:56:17 -0500 Subject: [PATCH] Merges and fixes Conflicts --- SQL/paradise_schema.sql | 1 + SQL/paradise_schema_prefixed.sql | 1 + _maps/cyberiad.dm | 2 +- .../MetaStation/MetaStation.v41A.II.dmm | 592 +++++++++--------- _maps/map_files/cyberiad/cyberiad.dmm | 230 ++++--- _maps/map_files/cyberiad/z2.dmm | 372 ++++++----- _maps/map_files/templates/spacehotel/n_04.dmm | 2 +- code/__DEFINES/callbacks.dm | 2 + code/__DEFINES/combat.dm | 3 + code/__DEFINES/flags.dm | 11 +- code/__DEFINES/language.dm | 8 +- code/__DEFINES/machines.dm | 7 + code/__DEFINES/misc.dm | 5 +- code/__DEFINES/mob.dm | 2 +- code/__HELPERS/game.dm | 2 +- code/_globalvars/lists/objects.dm | 2 + code/_onclick/adjacent.dm | 20 +- code/controllers/Processes/spacedrift.dm | 53 ++ code/controllers/Processes/throwing.dm | 138 ++++ code/controllers/configuration.dm | 4 - code/datums/action.dm | 2 +- code/datums/callback.dm | 98 +++ code/game/area/Space Station 13 areas.dm | 10 +- code/game/atoms.dm | 12 +- code/game/atoms_movable.dm | 262 ++++---- code/game/dna/genes/goon_powers.dm | 32 +- code/game/gamemodes/gameticker.dm | 13 - .../miniantags/abduction/abduction_gear.dm | 3 +- code/game/jobs/job/civilian.dm | 1 + code/game/jobs/job/engineering.dm | 4 + code/game/jobs/job/job.dm | 3 +- code/game/jobs/job/medical.dm | 57 +- code/game/jobs/job/science.dm | 3 + code/game/jobs/job/security.dm | 6 + code/game/jobs/job/silicon.dm | 2 + code/game/jobs/job/supervisor.dm | 6 + code/game/jobs/job/support.dm | 11 + code/game/jobs/job/support_chaplain.dm | 1 + code/game/jobs/job_exp.dm | 58 ++ code/game/jobs/jobs.dm | 4 +- code/game/machinery/OpTable.dm | 11 + code/game/machinery/cloning.dm | 172 +++-- .../machinery/computer/HolodeckControl.dm | 2 +- .../game/machinery/computer/buildandrepair.dm | 30 +- code/game/machinery/computer/card.dm | 139 +++- code/game/machinery/computer/cloning.dm | 16 +- code/game/machinery/computer/prisoner.dm | 8 + code/game/machinery/computer/security.dm | 38 +- code/game/machinery/doors/brigdoors.dm | 33 + code/game/machinery/doors/windowdoor.dm | 10 +- code/game/machinery/portable_turret.dm | 13 + code/game/machinery/requests_console.dm | 34 +- code/game/machinery/shieldgen.dm | 54 +- code/game/machinery/vending.dm | 6 +- code/game/mecha/combat/marauder.dm | 15 +- code/game/mecha/equipment/weapons/weapons.dm | 61 +- code/game/mecha/mecha.dm | 8 +- code/game/objects/effects/aliens.dm | 4 +- .../game/objects/effects/decals/contraband.dm | 52 +- .../game/objects/effects/spawners/lootdrop.dm | 2 +- code/game/objects/items.dm | 55 +- code/game/objects/items/devices/scanners.dm | 72 ++- .../objects/items/devices/taperecorder.dm | 12 +- code/game/objects/items/policetape.dm | 2 +- code/game/objects/items/weapons/RCD.dm | 3 +- code/game/objects/items/weapons/RCL.dm | 2 +- code/game/objects/items/weapons/cosmetics.dm | 5 +- code/game/objects/items/weapons/defib.dm | 12 +- code/game/objects/items/weapons/dice.dm | 6 +- .../items/weapons/grenades/smokebomb.dm | 3 +- .../objects/items/weapons/storage/storage.dm | 2 +- code/game/objects/items/weapons/tools.dm | 3 +- code/game/objects/objs.dm | 5 +- .../structures/crates_lockers/closets.dm | 4 +- code/game/objects/structures/grille.dm | 4 +- code/game/objects/structures/morgue.dm | 6 +- code/game/objects/structures/tables_racks.dm | 11 +- code/game/objects/structures/window.dm | 34 +- code/game/objects/weapons.dm | 5 - code/game/response_team.dm | 2 +- code/game/turfs/unsimulated/walls.dm | 6 +- code/modules/admin/banjob.dm | 40 ++ code/modules/admin/verbs/adminpm.dm | 13 +- code/modules/admin/verbs/ticklag.dm | 3 - code/modules/arcade/mob_hunt/mob_avatar.dm | 6 +- .../preference/loadout/loadout_accessories.dm | 9 +- .../preference/loadout/loadout_uniform.dm | 16 + code/modules/client/preference/preferences.dm | 175 ++++-- .../client/preference/preferences_mysql.dm | 12 +- code/modules/clothing/shoes/miscellaneous.dm | 30 +- code/modules/clothing/spacesuits/plasmamen.dm | 9 +- code/modules/clothing/spacesuits/rig/rig.dm | 5 - .../clothing/under/accessories/accessory.dm | 60 ++ code/modules/clothing/under/jobs/civilian.dm | 8 + code/modules/clothing/under/jobs/security.dm | 10 + code/modules/clothing/under/miscellaneous.dm | 8 + code/modules/customitems/item_defines.dm | 39 +- code/modules/fancytitle/fancytitle.dm | 33 + code/modules/fish/fishtank.dm | 9 +- code/modules/flufftext/Hallucination.dm | 47 +- .../food_and_drinks/drinks/drinks/bottle.dm | 4 +- .../kitchen_machinery/gibber.dm | 4 +- code/modules/mob/living/autohiss.dm | 21 +- .../mob/living/carbon/alien/alien_defenses.dm | 4 +- .../carbon/alien/humanoid/caste/hunter.dm | 54 +- .../living/carbon/alien/humanoid/humanoid.dm | 26 - .../mob/living/carbon/alien/larva/larva.dm | 32 - code/modules/mob/living/carbon/carbon.dm | 23 + .../mob/living/carbon/carbon_defenses.dm | 21 +- .../mob/living/carbon/carbon_defines.dm | 3 +- code/modules/mob/living/carbon/human/death.dm | 2 +- code/modules/mob/living/carbon/human/emote.dm | 13 + code/modules/mob/living/carbon/human/human.dm | 112 +--- .../mob/living/carbon/human/human_defense.dm | 92 +-- .../mob/living/carbon/human/human_movement.dm | 92 +-- .../mob/living/carbon/human/human_organs.dm | 3 +- .../carbon/human/interactive/interactive.dm | 2 +- code/modules/mob/living/carbon/human/life.dm | 37 +- .../living/carbon/human/species/station.dm | 5 +- code/modules/mob/living/carbon/slime/slime.dm | 85 +-- code/modules/mob/living/living.dm | 235 ++++--- code/modules/mob/living/living_defense.dm | 97 +-- code/modules/mob/living/silicon/pai/pai.dm | 4 +- .../mob/living/silicon/robot/drone/drone.dm | 19 +- .../living/silicon/robot/drone/drone_items.dm | 2 + .../modules/mob/living/silicon/robot/robot.dm | 32 - .../living/silicon/robot/robot_movement.dm | 55 +- code/modules/mob/living/silicon/silicon.dm | 25 - .../mob/living/simple_animal/bot/secbot.dm | 4 +- .../living/simple_animal/friendly/corgi.dm | 35 -- .../hostile/megafauna/bubblegum.dm | 4 +- .../simple_animal/hostile/megafauna/dragon.dm | 2 +- .../simple_animal/hostile/spaceworms.dm | 1 - .../hostile/terror_spiders/reproduction.dm | 11 +- .../hostile/terror_spiders/terror_spiders.dm | 19 +- .../mob/living/simple_animal/simple_animal.dm | 14 - code/modules/mob/mob_movement.dm | 257 ++++---- .../mob/new_player/preferences_setup.dm | 14 + code/modules/mob/pulling.dm | 6 +- code/modules/nano/nanoui.dm | 1 + code/modules/pda/PDA.dm | 5 - code/modules/pda/mob_hunt_game_app.dm | 6 - code/modules/projectiles/guns/energy/pulse.dm | 13 + code/modules/projectiles/guns/throw.dm | 6 +- .../modules/projectiles/projectile/bullets.dm | 5 + .../reagents/chemistry/reagents/alcohol.dm | 7 +- .../reagents/chemistry/reagents/disease.dm | 8 +- .../reagents/chemistry/reagents/food.dm | 10 +- .../reagents/chemistry/reagents/medicine.dm | 8 + .../reagents/chemistry/reagents/toxins.dm | 6 +- .../reagents/chemistry/recipes/medicine.dm | 9 +- .../designs/mechfabricator_designs.dm | 35 +- .../xenoarchaeology/genetics/reconstitutor.dm | 1 - code/modules/shuttle/emergency.dm | 4 + .../surgery/organs/augments_internal.dm | 4 +- code/modules/surgery/organs/organ.dm | 16 +- code/modules/surgery/organs/organ_internal.dm | 16 +- .../modules/surgery/organs/subtypes/skrell.dm | 60 ++ config/example/config.txt | 3 - config/example/game_options.txt | 14 +- config/title_screens/LICENSE.txt | 38 ++ config/title_screens/README.txt | 50 ++ config/title_screens/images/blank.png | Bin 0 -> 123 bytes .../title_screens/images/default.dmi | Bin html/changelog.html | 177 ++++++ html/changelogs/.all_changelog.yml | 116 ++++ html/changelogs/AutoChangeLog-pr-6604.yml | 4 - html/changelogs/AutoChangeLog-pr-7169.yml | 5 - html/changelogs/AutoChangeLog-pr-7305.yml | 4 - html/changelogs/AutoChangeLog-pr-7404.yml | 4 + icons/mob/hud.dmi | Bin 14239 -> 14466 bytes icons/mob/mask.dmi | Bin 46397 -> 46955 bytes icons/mob/species/grey/uniform.dmi | Bin 149824 -> 249365 bytes icons/mob/species/vox/suit.dmi | Bin 218938 -> 211943 bytes icons/mob/species/vox/uniform.dmi | Bin 281055 -> 288338 bytes icons/mob/ties.dmi | Bin 18527 -> 19594 bytes icons/mob/uniform.dmi | Bin 342050 -> 345849 bytes icons/obj/clothing/ties.dmi | Bin 16849 -> 17871 bytes icons/obj/clothing/ties_overlay.dmi | Bin 2990 -> 3589 bytes icons/obj/clothing/uniforms.dmi | Bin 85248 -> 86449 bytes icons/obj/computer.dmi | Bin 39413 -> 40395 bytes icons/obj/custom_items.dmi | Bin 73553 -> 73673 bytes icons/obj/surgery.dmi | Bin 34937 -> 35399 bytes icons/turf/areas.dmi | Bin 31922 -> 29363 bytes interface/skin.dmf | 120 ++-- nano/assets/nano.js | 2 +- nano/images/Cyberiad_nanomap_z1.png | Bin 0 -> 569736 bytes nano/images/MetaStation_nanomap_z1.png | Bin 0 -> 590706 bytes nano/images/nanomap_z1.png | Bin 572897 -> 0 bytes nano/layouts/layout_default.tmpl | 2 +- nano/layouts/layout_program.tmpl | 2 +- nano/scripts/nano/nano_base_callbacks.js | 2 +- nano/templates/identification_computer.tmpl | 80 ++- nano/templates/secure_data.tmpl | 4 +- paradise.dme | 5 + sound/effects/unathihiss.ogg | Bin 0 -> 15534 bytes sound/weapons/throwtap.ogg | Bin 0 -> 10411 bytes 197 files changed, 3600 insertions(+), 2262 deletions(-) create mode 100644 code/__DEFINES/callbacks.dm create mode 100644 code/controllers/Processes/spacedrift.dm create mode 100644 code/controllers/Processes/throwing.dm create mode 100644 code/datums/callback.dm create mode 100644 code/modules/fancytitle/fancytitle.dm create mode 100644 config/title_screens/LICENSE.txt create mode 100644 config/title_screens/README.txt create mode 100644 config/title_screens/images/blank.png rename icons/misc/fullscreen.dmi => config/title_screens/images/default.dmi (100%) delete mode 100644 html/changelogs/AutoChangeLog-pr-6604.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-7169.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-7305.yml create mode 100644 html/changelogs/AutoChangeLog-pr-7404.yml create mode 100644 nano/images/Cyberiad_nanomap_z1.png create mode 100644 nano/images/MetaStation_nanomap_z1.png delete mode 100644 nano/images/nanomap_z1.png create mode 100644 sound/effects/unathihiss.ogg create mode 100644 sound/weapons/throwtap.ogg diff --git a/SQL/paradise_schema.sql b/SQL/paradise_schema.sql index a5991c9bcb9..bd90e0be9f0 100644 --- a/SQL/paradise_schema.sql +++ b/SQL/paradise_schema.sql @@ -88,6 +88,7 @@ CREATE TABLE `characters` ( `socks` mediumtext NOT NULL, `body_accessory` mediumtext NOT NULL, `gear` mediumtext NOT NULL, + `autohiss` tinyint(1) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=18747 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/SQL/paradise_schema_prefixed.sql b/SQL/paradise_schema_prefixed.sql index 845b8702fcd..94010ad1b74 100644 --- a/SQL/paradise_schema_prefixed.sql +++ b/SQL/paradise_schema_prefixed.sql @@ -88,6 +88,7 @@ CREATE TABLE `SS13_characters` ( `socks` mediumtext NOT NULL, `body_accessory` mediumtext NOT NULL, `gear` mediumtext NOT NULL, + `autohiss` tinyint(1) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=18747 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/_maps/cyberiad.dm b/_maps/cyberiad.dm index 434cc79eb52..3e03a5036e7 100644 --- a/_maps/cyberiad.dm +++ b/_maps/cyberiad.dm @@ -23,7 +23,7 @@ z7 = empty #include "map_files\cyberiad\z7.dmm" #define MAP_FILE "cyberiad.dmm" - #define MAP_NAME "NSS Cyberiad" + #define MAP_NAME "Cyberiad" #define MAP_TRANSITION_CONFIG list(\ DECLARE_LEVEL(MAIN_STATION, CROSSLINKED, list(STATION_LEVEL,STATION_CONTACT,REACHABLE,AI_OK)),\ DECLARE_LEVEL(CENTCOMM, SELFLOOPING, list(ADMIN_LEVEL, BLOCK_TELEPORT, IMPEDES_MAGIC)),\ diff --git a/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm b/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm index e1de20e2b01..a7cfe6afb3e 100644 --- a/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm +++ b/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm @@ -544,9 +544,9 @@ "akx" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor/plating,/area/maintenance/auxsolarport) "aky" = (/turf/simulated/wall/r_wall,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "akz" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "hosprivacy"; layer = 2.7; name = "privacy shutters"; opacity = 0},/turf/simulated/floor/plating,/area/security/hos) -"akA" = (/obj/structure/rack,/obj/item/clothing/suit/space/hardsuit/security,/obj/item/clothing/mask/gas/sechailer,/obj/item/clothing/head/helmet/space/hardsuit/security,/obj/item/clothing/shoes/magboots,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 1},/area/security/brig) +"akA" = (/obj/structure/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/hardsuit/security,/obj/item/clothing/mask/gas/sechailer,/obj/item/clothing/head/helmet/space/hardsuit/security,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 1},/area/security/brig) "akB" = (/obj/structure/dispenser/oxygen,/turf/simulated/floor/plasteel{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/brig) -"akC" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/rack,/obj/item/clothing/suit/space/hardsuit/security,/obj/item/clothing/mask/gas/sechailer,/obj/item/clothing/head/helmet/space/hardsuit/security,/obj/item/clothing/shoes/magboots,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 4},/area/security/brig) +"akC" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/hardsuit/security,/obj/item/clothing/mask/gas/sechailer,/obj/item/clothing/head/helmet/space/hardsuit/security,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 4},/area/security/brig) "akD" = (/turf/simulated/wall,/area/security/brig) "akE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Prison Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/security/brig) "akF" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Prison Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/security/brig) @@ -740,7 +740,7 @@ "aol" = (/obj/effect/decal/warning_stripes/north,/obj/machinery/light{dir = 1},/turf/simulated/floor/engine,/area/security/podbay) "aom" = (/obj/machinery/door/poddoor/multi_tile/four_tile_ver{id_tag = "secpodbay"},/obj/structure/spacepoddoor,/turf/simulated/floor/engine,/area/security/podbay) "aon" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/structure/closet/secure_closet/security,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/security/warden) -"aoo" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/security/range) +"aoo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/plasteel,/area/security/range) "aop" = (/obj/structure/rack{pixel_y = 2},/obj/item/weapon/gun/energy/laser/practice{pixel_x = 2; pixel_y = -2},/obj/item/weapon/gun/energy/laser/practice{pixel_x = -3; pixel_y = 3},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/camera{c_tag = "Firing Range"; dir = 8; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/security/range) "aoq" = (/obj/structure/closet/firecloset,/turf/simulated/floor/plating,/area/maintenance/fore) "aor" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/camera{c_tag = "Brig - Infirmary"; dir = 1; network = list("SS13")},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; 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"},/obj/structure/closet/secure_closet/brigdoc,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/turf/simulated/floor/plasteel{dir = 6; icon_state = "whitered"},/area/security/brig) @@ -816,7 +816,7 @@ "apJ" = (/obj/effect/decal/warning_stripes/north,/obj/machinery/door_control{desc = "A remote control-switch for the pod doors."; id = "secpodbay"; name = "Pod Door Control"; pixel_x = 0; pixel_y = 24; req_access_txt = "71"},/turf/simulated/floor/engine,/area/security/podbay) "apK" = (/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/engine,/area/security/podbay) "apL" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 10},/area/security/range) -"apM" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "redcorner"},/area/security/range) +"apM" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "redcorner"},/area/security/range) "apN" = (/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/plasteel{dir = 8; icon_state = "warning"},/area/security/range) "apO" = (/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) "apP" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/fore) @@ -889,7 +889,7 @@ "are" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/simulated/floor/plasteel,/area/security/main) "arf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/stool/bed/chair{dir = 8},/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/main) "arg" = (/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/plasteel{icon_state = "red"; dir = 4},/area/security/main) -"arh" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "0"; req_one_access_txt = "1;4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/security/range) +"arh" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "0"; req_one_access_txt = "1;4"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/security/range) "ari" = (/obj/machinery/door/airlock/maintenance{name = "Storage Room"; req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/fore) "arj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/wall,/area/maintenance/fore) "ark" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light_switch{pixel_x = -26},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) @@ -952,15 +952,15 @@ "asp" = (/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/main) "asq" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Security Delivery"; req_access_txt = "1"},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/security/main) "asr" = (/obj/machinery/navbeacon{codes_txt = "delivery"; dir = 8; location = "Security"},/obj/structure/plasticflaps{opacity = 1},/turf/simulated/floor/plasteel{icon_state = "bot"},/area/security/main) -"ass" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 9},/area/maintenance/fore) -"ast" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) -"asu" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"asv" = (/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/pipe/manifold/hidden/supply{dir = 1},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/maintenance/fore) -"asw" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "1;4;38;12"},/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"asx" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"asy" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"asz" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"asA" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"ass" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 9},/area/maintenance/fore) +"ast" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/maintenance/fore) +"asu" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "1;4;38;12"},/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"asv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"asw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"asx" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"asy" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"asz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"asA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{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"}) "asB" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 2; initialize_directions = 11},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "asC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "asD" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 2; initialize_directions = 11},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) @@ -1023,7 +1023,7 @@ "atI" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor/plasteel,/area/security/main) "atJ" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/wall,/area/security/brig) "atK" = (/turf/simulated/wall/r_wall,/area/security/main) -"atL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fore) +"atL" = (/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"; req_one_access_txt = "0"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "atM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/glass{name = "Cryodorms"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "atN" = (/obj/structure/closet/lasertag/red,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "atO" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/ears/earmuffs,/obj/item/clothing/accessory/red,/obj/item/clothing/head/soft/red,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) @@ -1104,7 +1104,7 @@ "avl" = (/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/main) "avm" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/main) "avn" = (/obj/item/weapon/phone{desc = "Supposedly a direct line to NanoTrasen Central Command. It's not even plugged in."; pixel_x = -3; pixel_y = 3},/obj/item/weapon/cigbutt/cigarbutt{pixel_x = 5; pixel_y = -1},/obj/structure/table/woodentable,/obj/machinery/firealarm{dir = 4; pixel_x = 28},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/main) -"avo" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"avo" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/light,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "avp" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark{name = "JoinLateCryo"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "avq" = (/obj/machinery/cryopod,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "avr" = (/turf/simulated/wall,/area/crew_quarters/mrchangs) @@ -1132,22 +1132,22 @@ "avN" = (/turf/simulated/shuttle/wall{icon_state = "swall12"; dir = 2},/area/shuttle/pod_4) "avO" = (/obj/item/device/radio/intercom/department/security,/turf/simulated/wall/r_wall,/area/security/podbay) "avP" = (/obj/machinery/computer/podtracker,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 5},/area/engine/mechanic_workshop) -"avQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/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"}) -"avR" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/light,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"avS" = (/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"; req_one_access_txt = "0"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"avQ" = (/obj/machinery/door/airlock/glass{name = "space-bridge access"; req_one_access_txt = "48;50"},/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"}) +"avR" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/machinery/light,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"avS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "avT" = (/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"}) "avU" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "avV" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"avW" = (/obj/machinery/door/airlock/glass{name = "space-bridge access"; req_one_access_txt = "48;50"},/obj/machinery/door_control{id = "supplybridge"; name = "Shuttle Bay Space Bridge Control"; pixel_x = 0; pixel_y = 27; req_access_txt = "0"},/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"}) -"avX" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/machinery/light,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/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"}) -"avY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{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/fpmaint2{name = "Port Maintenance"}) -"avZ" = (/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/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"awa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"avW" = (/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/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"avX" = (/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/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"}) +"avY" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"avZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"awa" = (/obj/machinery/door/airlock/maintenance{name = "Storage Room"; req_access_txt = "12"},/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "awb" = (/obj/machinery/conveyor{dir = 8; id = "QMLoad2"; movedir = 8},/obj/structure/plasticflaps,/turf/simulated/floor/plating,/area/quartermaster/storage) -"awc" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"awc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/maintenance_hatch{name = "Supply Bay Bridge Access"; req_access_txt = "0"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "awd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/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/effect/landmark/start{name = "Warden"},/obj/structure/stool/bed/chair/office/dark,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/security/warden) -"awe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"awf" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"awe" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/gravitygenerator) +"awf" = (/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/fore) "awg" = (/obj/machinery/door/airlock/maintenance{name = "Storage Room"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/fore) "awh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/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) "awi" = (/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},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) @@ -1177,9 +1177,9 @@ "awG" = (/obj/structure/stool/bed/chair,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/main) "awH" = (/obj/structure/stool/bed/chair,/obj/machinery/computer/security/telescreen{desc = "Used for watching proceedings in the interrogation room."; dir = 1; layer = 4; name = "interrogation monitor"; network = list("interrogation"); pixel_x = 0; pixel_y = -30},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/main) "awI" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/structure/table/woodentable,/obj/item/device/radio/intercom{broadcasting = 0; frequency = 1424; listening = 1; name = "Interrogation Intercom"; pixel_x = 0; pixel_y = -31},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/main) -"awJ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/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) -"awK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Storage Room"; req_access_txt = "12"},/turf/simulated/floor/plating,/area/crew_quarters/fitness{name = "\improper Recreation Area"}) -"awL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) +"awJ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/highsecurity{name = "Gravity Generator Foyer"; req_access_txt = "10"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/gravitygenerator) +"awK" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/fore) +"awL" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering) "awM" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating{tag = "icon-panelscorched"; icon_state = "panelscorched"},/area/maintenance/starboard) "awN" = (/obj/machinery/light/small{dir = 8},/obj/structure/chickenstatue,/turf/simulated/floor/wood,/area/crew_quarters/mrchangs) "awO" = (/obj/machinery/vending/chinese,/turf/simulated/floor/wood,/area/crew_quarters/mrchangs) @@ -1202,7 +1202,7 @@ "axf" = (/obj/structure/rack,/obj/item/device/lock_buster,/turf/simulated/floor/plasteel{icon_state = "bot"},/area/security/warden) "axg" = (/obj/machinery/door/airlock/external{req_access_txt = "13"},/turf/simulated/floor/plating,/area/maintenance/starboard) "axh" = (/turf/simulated/wall/r_wall,/area/maintenance/starboard) -"axi" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/maintenance_hatch{name = "Supply Bay Bridge Access"; req_access_txt = "0"; req_one_access_txt = "0"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"axi" = (/obj/structure/grille,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/maintenance/starboard) "axj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/landmark{name = "JoinLateCryo"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/fitness{name = "\improper Recreation Area"}) "axk" = (/obj/machinery/door/poddoor/shutters{dir = 2; id_tag = "supplybridge"},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (NORTH)"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "axl" = (/obj/machinery/door/poddoor/shutters{dir = 2; id_tag = "supplybridge"},/turf/simulated/floor/plating{tag = "icon-warnplate (SOUTHWEST)"; icon_state = "warnplate"; dir = 10},/area/maintenance/fpmaint2{name = "Port Maintenance"}) @@ -1272,7 +1272,7 @@ "ayx" = (/obj/machinery/space_heater,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 5},/area/maintenance/starboard) "ayy" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/turf/simulated/floor/plating/airless,/area/space) "ayz" = (/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,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"ayA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"ayA" = (/obj/structure/grille,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "ayB" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "ayC" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry{name = "Arrivals"}) "ayD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) @@ -1341,7 +1341,7 @@ "azO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "azP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;50"},/turf/simulated/floor/plating,/area/maintenance/fore) "azQ" = (/obj/item/stack/sheet/cardboard,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"azR" = (/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 1},/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/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/fore) +"azR" = (/obj/machinery/door/airlock/maintenance{name = "Cargo Bay Warehouse Maintenance"; req_access_txt = "0"; req_one_access_txt = "48;50"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/quartermaster/sorting{name = "\improper Warehouse"}) "azS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "azT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/mining{name = "Mining Office"; req_access_txt = "48"},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "azU" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/siberia) @@ -1389,7 +1389,7 @@ "aAK" = (/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/structure/table/woodentable,/obj/item/weapon/paper,/turf/simulated/floor/wood,/area/crew_quarters/sleep) "aAL" = (/obj/machinery/door/airlock/maintenance{name = "Storage Room"; req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/starboard) "aAM" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/port) -"aAN" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/highsecurity{name = "Gravity Generator Foyer"; req_access_txt = "10"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/gravitygenerator) +"aAN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/window/brigdoor{dir = 1; id = "Holding Cell"; name = "Holding Cell"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig) "aAO" = (/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/maintenance/starboard) "aAP" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aAQ" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/shuttle/mining) @@ -1458,7 +1458,7 @@ "aCb" = (/obj/machinery/navbeacon{codes_txt = "delivery"; dir = 4; location = "Engineering"},/obj/structure/plasticflaps{opacity = 1},/turf/simulated/floor/plasteel{icon_state = "bot"},/area/maintenance/starboard) "aCc" = (/obj/machinery/door/window/southright{dir = 4; name = "Engineering Deliveries"; req_access_txt = "10"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aCd" = (/obj/structure/sign/securearea{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/engine/engineering) -"aCe" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering) +"aCe" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/engine/engineering) "aCf" = (/obj/machinery/light_switch{pixel_x = 23},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/shower{dir = 8; icon_state = "shower"; name = "emergency shower"; tag = "icon-shower (WEST)"},/obj/structure/sign/securearea{pixel_y = 32},/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/engine/engineering) "aCg" = (/turf/simulated/wall/r_wall,/area/engine/engineering) "aCh" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/engine/engineering) @@ -1466,7 +1466,7 @@ "aCj" = (/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) "aCk" = (/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) "aCl" = (/obj/structure/grille,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) -"aCm" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/engine/engineering) +"aCm" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel,/area/engine/engineering) "aCn" = (/obj/structure/closet/crate,/obj/item/stack/sheet/glass{amount = 10},/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/space) "aCo" = (/turf/simulated/shuttle/wall{icon_state = "swall3"; dir = 2},/area/shuttle/mining) "aCp" = (/obj/structure/table,/turf/simulated/shuttle/floor,/area/shuttle/mining) @@ -1475,7 +1475,7 @@ "aCs" = (/turf/simulated/wall,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aCt" = (/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/quartermaster/miningdock{name = "\improper Mining Office"}) "aCu" = (/turf/simulated/wall,/area/quartermaster/sorting{name = "\improper Warehouse"}) -"aCv" = (/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/quartermaster/sorting{name = "\improper Warehouse"}) +"aCv" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "aCw" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fore) "aCx" = (/obj/structure/closet/secure_closet/freezer/money,/obj/item/clothing/head/bearpelt,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/security/nuke_storage) "aCy" = (/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor/bluegrid{icon_state = "gcircuit"; luminosity = 2},/area/security/nuke_storage) @@ -1484,7 +1484,7 @@ "aCB" = (/obj/structure/filingcabinet,/obj/item/weapon/folder/documents,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/security/nuke_storage) "aCC" = (/turf/simulated/shuttle/floor,/area/shuttle/siberia) "aCD" = (/obj/machinery/mineral/labor_claim_console{machinedir = 1; pixel_x = 30; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/siberia) -"aCE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/fore) +"aCE" = (/obj/machinery/alarm{pixel_y = 28},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aCF" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id_tag = "Secure Gate"; name = "brig shutters"},/turf/simulated/floor/plating,/area/security/brig) "aCG" = (/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/door/window/brigdoor{dir = 1; id = "Cell 1"; name = "Cell 1"; req_access_txt = "2"},/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig) "aCH" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor/preopen{id_tag = "Secure Gate"; name = "brig shutters"},/turf/simulated/floor/plating,/area/security/brig) @@ -1493,7 +1493,7 @@ "aCK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{id_tag = "innerbrig"; name = "Brig"; req_access_txt = "63"},/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig) "aCL" = (/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/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/glass_security{id_tag = "innerbrig"; name = "Brig"; req_access_txt = "63"},/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig) "aCM" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/engine/engineering) -"aCN" = (/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/door/window/brigdoor{dir = 1; id = "Holding Cell"; name = "Holding Cell"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig) +"aCN" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aCO" = (/turf/simulated/wall/r_wall,/area/security/detectives_office) "aCP" = (/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},/turf/simulated/floor/plating,/area/security/detectives_office) "aCQ" = (/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/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plasteel,/area/security/detectives_office) @@ -1509,8 +1509,8 @@ "aDa" = (/obj/item/weapon/wrench,/turf/simulated/floor/plating,/area/maintenance/starboard) "aDb" = (/obj/structure/table,/obj/item/stack/packageWrap,/obj/item/weapon/wrench,/obj/machinery/light{dir = 8},/obj/item/weapon/hand_labeler,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aDc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/engine/engineering) -"aDd" = (/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/plasteel,/area/engine/engineering) -"aDe" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/engine/engineering) +"aDd" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/fore) +"aDe" = (/obj/structure/disposalpipe/sortjunction{sortType = 4},/obj/effect/landmark/start{name = "Station Engineer"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/engine/engineering) "aDf" = (/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) "aDg" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/podbay) "aDh" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) @@ -1534,8 +1534,8 @@ "aDz" = (/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/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aDA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aDB" = (/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/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) -"aDC" = (/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/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) -"aDD" = (/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/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"aDC" = (/obj/machinery/camera/emp_proof{c_tag = "Fore Arm - Far"; dir = 8; network = list("Singulo")},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless,/area/engine/engineering) +"aDD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/engine/engineering) "aDE" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 1},/area/security/nuke_storage) "aDF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/bluegrid{icon_state = "gcircuit"; luminosity = 2},/area/security/nuke_storage) "aDG" = (/obj/machinery/nuclearbomb,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/security/nuke_storage) @@ -1566,7 +1566,7 @@ "aEf" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/maintenance/fore) "aEg" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) "aEh" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "bridge blast"; layer = 2.9; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge) -"aEi" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/fore) +"aEi" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless,/area/engine/engineering) "aEj" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aEk" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bikehorn/rubberducky,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aEl" = (/obj/item/weapon/cigbutt,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) @@ -1586,12 +1586,12 @@ "aEz" = (/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{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/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aEA" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aEB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/engine/engineering) -"aEC" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{sortType = 4},/obj/effect/landmark/start{name = "Station Engineer"},/turf/simulated/floor/plasteel,/area/engine/engineering) +"aEC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/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/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"}) "aED" = (/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/hidden/supply,/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/engine/engineering) "aEE" = (/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/engine/engineering) "aEF" = (/obj/item/device/multitool,/turf/simulated/floor/plating/airless,/area/engine/engineering) "aEG" = (/obj/item/device/radio/off,/turf/simulated/floor/plating/airless,/area/engine/engineering) -"aEH" = (/obj/machinery/camera/emp_proof{c_tag = "Fore Arm - Far"; dir = 8; network = list("Singulo")},/turf/simulated/floor/plating/airless,/area/engine/engineering) +"aEH" = (/obj/structure/closet/crate,/obj/item/weapon/ore/glass,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aEI" = (/obj/machinery/door/airlock/shuttle{name = "Mining Shuttle Airlock"; req_access_txt = "0"},/obj/docking_port/mobile{dir = 8; dwidth = 3; height = 5; id = "mining"; name = "mining shuttle"; width = 7},/obj/docking_port/stationary{dir = 8; dwidth = 3; height = 5; id = "mining_home"; name = "mining shuttle bay"; width = 7},/turf/simulated/shuttle/plating,/area/shuttle/mining) "aEJ" = (/obj/machinery/door/airlock/external{name = "Mining Dock Airlock"; req_access = null; req_access_txt = "0"},/turf/simulated/floor/plating,/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aEK" = (/turf/simulated/floor/plasteel,/area/quartermaster/miningdock{name = "\improper Mining Office"}) @@ -1605,7 +1605,7 @@ "aES" = (/obj/structure/disposalpipe/segment,/obj/machinery/door_control{id = "qm_mine_warehouse"; name = "Warehouse Door Control"; pixel_x = -24; pixel_y = 28; req_access_txt = "48"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aET" = (/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aEU" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) -"aEV" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"aEV" = (/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/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/carpet,/area/security/detectives_office) "aEW" = (/obj/structure/closet/crate,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aEX" = (/obj/structure/closet/crate{name = "Gold Crate"},/obj/item/stack/sheet/mineral/gold{pixel_x = -1; pixel_y = 5},/obj/item/stack/sheet/mineral/gold{pixel_y = 2},/obj/item/stack/sheet/mineral/gold{pixel_x = 1; pixel_y = -2},/obj/item/weapon/storage/belt/champion,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 1},/area/security/nuke_storage) "aEY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/bluegrid{icon_state = "gcircuit"; luminosity = 2},/area/security/nuke_storage) @@ -1634,10 +1634,10 @@ "aFv" = (/obj/structure/table/woodentable,/obj/item/weapon/folder/red,/obj/item/weapon/hand_labeler,/turf/simulated/floor/carpet,/area/security/detectives_office) "aFw" = (/obj/effect/landmark/start{name = "Detective"},/obj/structure/stool/bed/chair/office/dark{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/security/detectives_office) "aFx" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/computer/secure_data,/turf/simulated/floor/carpet,/area/security/detectives_office) -"aFy" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fore) -"aFz" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) -"aFA" = (/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/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/fore) -"aFB" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating,/area/maintenance/fore) +"aFy" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/fore) +"aFz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) +"aFA" = (/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/plasteel,/area/engine/engineering) +"aFB" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/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/plasteel,/area/engine/engineering) "aFC" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/door/poddoor/preopen{id_tag = "briglockdown"; name = "brig shutters"},/turf/simulated/floor/plating,/area/security/brig) "aFD" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aFE" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11},/turf/simulated/floor/plating{icon_plating = "warnplate"; icon_state = "warnplate"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) @@ -1657,13 +1657,13 @@ "aFS" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/engine/engineering) "aFT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering) "aFU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/engine/engineering) -"aFV" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/engine/engineering) +"aFV" = (/obj/machinery/door/poddoor/shutters/preopen{id_tag = "Singularity"; name = "radiation shutters"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/item/clothing/glasses/meson,/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/engine/engineering) "aFW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/engine/engineering) "aFX" = (/obj/machinery/door/poddoor/shutters/preopen{id_tag = "Singularity"; name = "radiation shutters"},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/engine/engineering) "aFY" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/engine/engineering) "aFZ" = (/obj/machinery/camera/emp_proof{c_tag = "Fore Arm - Near"; dir = 4; network = list("Singulo")},/turf/space,/area/space) "aGa" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/construction/Storage{name = "Storage Wing"}) -"aGb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/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/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"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aGb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "aGc" = (/obj/item/weapon/ore/silver,/obj/item/weapon/ore/silver,/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aGd" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/camera{c_tag = "Mining Dock"; dir = 8; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "warning"},/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aGe" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/simulated/wall,/area/quartermaster/miningdock{name = "\improper Mining Office"}) @@ -1673,7 +1673,7 @@ "aGi" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aGj" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aGk" = (/obj/structure/closet/crate/freezer,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) -"aGl" = (/obj/structure/closet/crate,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/ore/glass,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"aGl" = (/obj/item/stack/sheet/cardboard,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aGm" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/apc_electronics,/obj/item/weapon/stock_parts/cell{maxcharge = 2000},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aGn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 1},/area/security/nuke_storage) "aGo" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 6},/area/security/nuke_storage) @@ -1692,12 +1692,12 @@ "aGB" = (/obj/machinery/door/airlock/security{name = "Court Cell"; req_access = null; req_access_txt = "63"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "aGC" = (/obj/structure/table/woodentable,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; 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,/obj/item/device/flashlight/seclite,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) "aGD" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) -"aGE" = (/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/hidden/supply{dir = 4},/turf/simulated/floor/carpet,/area/security/detectives_office) +"aGE" = (/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"},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) "aGF" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor/carpet,/area/security/detectives_office) "aGG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/security/detectives_office) "aGH" = (/obj/machinery/computer/med_data,/obj/machinery/newscaster{pixel_x = 28},/turf/simulated/floor/carpet,/area/security/detectives_office) -"aGI" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fore) -"aGJ" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fore) +"aGI" = (/obj/machinery/light/small,/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -26},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) +"aGJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/urinal{pixel_y = 29},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aGK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall,/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aGL" = (/obj/machinery/door/airlock{name = "Unisex Showers"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aGM" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/sleep) @@ -1717,9 +1717,9 @@ "aHa" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/engine/engineering) "aHb" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/construction/Storage{name = "Storage Wing"}) "aHc" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/engine/engineering) -"aHd" = (/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/plasteel,/area/engine/engineering) -"aHe" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/engine/engineering) -"aHf" = (/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/plasteel,/area/engine/engineering) +"aHd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) +"aHe" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 2; initialize_directions = 11},/obj/structure/urinal{pixel_y = 29},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) +"aHf" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/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/plasteel{dir = 2; icon_state = "warningcorner"; tag = "icon-warningcorner (EAST)"},/area/engine/engineering) "aHg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/engine/engineering) "aHh" = (/obj/machinery/door/poddoor/shutters/preopen{id_tag = "Singularity"; name = "radiation shutters"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/engine/engineering) "aHi" = (/obj/machinery/power/rad_collector{anchored = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/engine/engineering) @@ -1737,7 +1737,7 @@ "aHu" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aHv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aHw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/landmark/start{name = "Cargo Technician"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) -"aHx" = (/obj/item/stack/sheet/cardboard,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"aHx" = (/obj/machinery/power/grounding_rod{anchored = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "aHy" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/light_construct/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aHz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/wall/r_wall,/area/security/nuke_storage) "aHA" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/wall/r_wall,/area/security/nuke_storage) @@ -1763,16 +1763,16 @@ "aHU" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/flasher_button{id = "holdingflash"; name = "holding cell flasher button"; pixel_x = 23; pixel_y = 23; req_access_txt = "1"},/obj/machinery/camera{c_tag = "Brig - Desk"; dir = 8; network = list("SS13")},/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29; pixel_y = -2},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "aHV" = (/obj/machinery/requests_console{department = "Detective's office"; pixel_x = -30; pixel_y = 0},/obj/structure/table/woodentable,/obj/machinery/light/small{dir = 8},/obj/item/weapon/book/manual/security_space_law,/obj/item/device/camera{desc = "A one use - polaroid camera. 30 photos left."; name = "detective's camera"; pictures_left = 30},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) "aHW" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) -"aHX" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) -"aHY" = (/obj/machinery/light/small,/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -26},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) -"aHZ" = (/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/hidden/supply{dir = 10},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) +"aHX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aHY" = (/obj/structure/closet/crate/internals,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"aHZ" = (/obj/machinery/door/airlock/maintenance{name = "Detective Maintenance"; req_access_txt = "4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/security/detectives_office) "aIa" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/briefcase{pixel_x = -3; pixel_y = 2},/obj/item/weapon/storage/secure/briefcase{pixel_x = 2; pixel_y = -2},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/security/detectives_office) "aIb" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "bridge blast"; layer = 2.9; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge) "aIc" = (/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},/obj/effect/landmark/start{name = "Civilian"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aId" = (/obj/machinery/door/airlock{id_tag = "Toilet3"; name = "Unit 3"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) -"aIe" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) -"aIf" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/urinal{pixel_y = 29},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) -"aIg" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 2; initialize_directions = 11},/obj/structure/urinal{pixel_y = 29},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) +"aIe" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) +"aIf" = (/obj/structure/lattice,/turf/space,/area/engine/engineering) +"aIg" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/fore) "aIh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aIi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aIj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall,/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) @@ -1794,13 +1794,13 @@ "aIz" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_engineering{name = "Engineering Storage"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/engine/engineering) "aIA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/engine/engineering) "aIB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) -"aIC" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warningcorner"; tag = "icon-warningcorner (EAST)"},/area/engine/engineering) +"aIC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/fore) "aID" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) "aIE" = (/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/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) "aIF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/engine/engineering) "aIG" = (/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/plating{icon_state = "warnplate"; dir = 1},/area/construction) "aIH" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "bridge blast"; layer = 2.9; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge) -"aII" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aII" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating{icon_state = "warnplate"},/area/maintenance/fore) "aIJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aIK" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f5"; dir = 2},/area/shuttle/mining) "aIL" = (/obj/structure/shuttle/engine/propulsion/burst,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/simulated/shuttle/plating,/area/shuttle/mining) @@ -1813,7 +1813,7 @@ "aIS" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "loadingarea"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aIT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door_control{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = 0; pixel_y = -24; req_access_txt = "50"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aIU" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/stack/sheet/cardboard,/obj/item/stack/rods{amount = 50},/obj/item/weapon/paper,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) -"aIV" = (/obj/structure/closet/crate/internals,/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/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) +"aIV" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/fore) "aIW" = (/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/plasteel{icon_state = "floorgrime"},/area/quartermaster/sorting{name = "\improper Warehouse"}) "aIX" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/construction/Storage{name = "Storage Wing"}) "aIY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/construction/Storage{name = "Storage Wing"}) @@ -1838,11 +1838,11 @@ "aJr" = (/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/plasteel{icon_state = "dark"},/area/security/brig) "aJs" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/bodybag,/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/detectives_office) "aJt" = (/obj/machinery/door/window{dir = 1; name = "glass door"; pixel_y = 0; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/detectives_office) -"aJu" = (/obj/machinery/door/airlock/maintenance{name = "Detective Maintenance"; req_access_txt = "4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/security/detectives_office) +"aJu" = (/obj/machinery/door/airlock/maintenance{name = "Law Office Maintenance"; req_access_txt = "38"},/turf/simulated/floor/plating,/area/lawoffice) "aJv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/camera{c_tag = "Restrooms"; dir = 4; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aJw" = (/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aJx" = (/obj/machinery/light/small,/obj/machinery/power/apc{dir = 2; name = "Restrooms APC"; pixel_x = 0; pixel_y = -26},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) -"aJy" = (/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/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) +"aJy" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fore) "aJz" = (/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/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aJA" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aJB" = (/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/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) @@ -1867,10 +1867,10 @@ "aJU" = (/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 = ""},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/engine/engineering) "aJV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/crowbar,/obj/item/weapon/wirecutters,/obj/item/stack/cable_coil,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aJW" = (/obj/machinery/field/generator{anchored = 1; state = 2},/turf/simulated/floor/plating/airless,/area/space) -"aJX" = (/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/space) +"aJX" = (/turf/simulated/floor/wood,/area/lawoffice) "aJY" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "bridge blast"; layer = 2.9; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge) "aJZ" = (/obj/machinery/door/window/westleft{dir = 4; name = "Bridge Deliveries"; req_access_txt = "19"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "bridge blast"; layer = 2.6; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/bridge) -"aKa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aKa" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/fore) "aKb" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/obj/machinery/requests_console{department = "Mining"; departmentType = 0; pixel_x = 0; pixel_y = -30},/turf/simulated/floor/plasteel{dir = 10; icon_state = "brown"},/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aKc" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/simulated/floor/plasteel{dir = 2; icon_state = "brown"},/area/quartermaster/miningdock{name = "\improper Mining Office"}) "aKd" = (/obj/structure/rack{dir = 1},/obj/item/weapon/pickaxe{pixel_x = 5},/obj/item/weapon/shovel{pixel_x = -5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 2; icon_state = "brown"},/area/quartermaster/miningdock{name = "\improper Mining Office"}) @@ -1914,10 +1914,10 @@ "aKP" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "aKQ" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/detectives_office) "aKR" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/detectives_office) -"aKS" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/fore) -"aKT" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating{icon_state = "warnplate"},/area/maintenance/fore) +"aKS" = (/obj/effect/spawner/lootdrop/maintenance,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) +"aKT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aKU" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) -"aKV" = (/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/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fore) +"aKV" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/wood,/area/lawoffice) "aKW" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -32},/obj/effect/landmark{name = "blobstart"},/obj/machinery/door_control{id = "Toilet2"; name = "Lock Control"; normaldoorcontrol = 1; pixel_x = -25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aKX" = (/obj/machinery/door/airlock{id_tag = "Toilet2"; name = "Unit 2"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aKY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) @@ -1988,7 +1988,7 @@ "aMl" = (/turf/simulated/wall/r_wall,/area/crew_quarters/courtroom) "aMm" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Court Cell"; req_access = null; req_access_txt = "63"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/courtroom) "aMn" = (/turf/simulated/wall,/area/lawoffice) -"aMo" = (/obj/machinery/door/airlock/maintenance{name = "Law Office Maintenance"; req_access_txt = "38"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/lawoffice) +"aMo" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/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) "aMp" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/light_switch{pixel_x = -26},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aMq" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 28},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aMr" = (/obj/machinery/door/airlock{id_tag = "Toilet4"; name = "Unit 4"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) @@ -2060,7 +2060,7 @@ "aNF" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/briefcase{pixel_x = -3; pixel_y = 2},/obj/item/weapon/storage/secure/briefcase{pixel_x = 2; pixel_y = -2},/obj/item/clothing/glasses/sunglasses,/turf/simulated/floor/wood,/area/lawoffice) "aNG" = (/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "Law Office APC"; pixel_y = 24},/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1; tag = "icon-plant-21"},/turf/simulated/floor/wood,/area/lawoffice) "aNH" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/lawoffice) -"aNI" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/fore) +"aNI" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) "aNJ" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -32},/obj/effect/landmark{name = "blobstart"},/obj/machinery/door_control{id = "Toilet1"; name = "Lock Control"; normaldoorcontrol = 1; pixel_x = -25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aNK" = (/obj/machinery/door/airlock{id_tag = "Toilet1"; name = "Unit 1"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aNL" = (/obj/structure/toilet{dir = 4},/obj/machinery/light/small{dir = 4},/obj/machinery/newscaster{pixel_x = 32},/obj/machinery/door_control{id = "Toilet4"; name = "Lock Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/effect/landmark/start{name = "Civilian"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) @@ -2090,7 +2090,7 @@ "aOj" = (/obj/item/weapon/crowbar,/turf/space,/area/space) "aOk" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel,/area/construction) "aOl" = (/obj/machinery/door/airlock/engineering{name = "Arrivals Expansion Area"; req_access_txt = "32"},/turf/simulated/floor/plating,/area/construction) -"aOm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aOm" = (/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/engine/engineering) "aOn" = (/obj/machinery/light/spot{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/turf/simulated/shuttle/floor,/area/shuttle/supply) "aOo" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plating,/area/crew_quarters/courtroom) "aOp" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/conveyor{dir = 2; id = "QMLoad2"; movedir = 2},/turf/simulated/floor/plating,/area/quartermaster/storage) @@ -2126,9 +2126,9 @@ "aOT" = (/obj/effect/landmark/start{name = "Internal Affairs Agent"},/obj/structure/stool/bed/chair/office/dark{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/simulated/floor/wood,/area/lawoffice) "aOU" = (/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) "aOV" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor/wood,/area/lawoffice) -"aOW" = (/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/wood,/area/lawoffice) -"aOX" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/wood,/area/lawoffice) -"aOY" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/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) +"aOW" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 2; icon_state = "warningcorner"; tag = "icon-warningcorner (EAST)"},/area/engine/engineering) +"aOX" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/engine/engineering) +"aOY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/locker) "aOZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aPa" = (/obj/machinery/door/firedoor,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock{name = "Dormitories"; req_access_txt = "0"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/sleep) "aPb" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 5; health = 120; icon_state = "twindow"; reinf = 0},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/crew_quarters/sleep) @@ -2206,7 +2206,7 @@ "aQv" = (/obj/machinery/shower{tag = "icon-shower (WEST)"; icon_state = "shower"; dir = 8},/obj/effect/landmark/start{name = "Civilian"},/obj/structure/curtain/open/shower,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet{name = "\improper Restrooms"}) "aQw" = (/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) "aQx" = (/obj/machinery/photocopier,/obj/machinery/camera{c_tag = "Law Office"; dir = 8; network = list("SS13")},/turf/simulated/floor/wood,/area/lawoffice) -"aQy" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) +"aQy" = (/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/plasteel{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/locker) "aQz" = (/obj/structure/closet/secure_closet/personal,/obj/item/clothing/under/assistantformal,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) "aQA" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/light/small{dir = 1},/obj/item/clothing/under/assistantformal,/obj/structure/sign/double/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},/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) "aQB" = (/obj/structure/closet/secure_closet/personal,/obj/item/clothing/under/assistantformal,/obj/structure/sign/double/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/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) @@ -2229,11 +2229,11 @@ "aQS" = (/obj/machinery/power/emitter,/turf/simulated/floor/plating,/area/engine/engineering) "aQT" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/engine/engineering) "aQU" = (/turf/simulated/floor/plasteel{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/engine/engineering) -"aQV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel,/area/engine/engineering) -"aQW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 2; icon_state = "warningcorner"; tag = "icon-warningcorner (EAST)"},/area/engine/engineering) -"aQX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/engine/engineering) -"aQY" = (/obj/machinery/door/poddoor/shutters/preopen{id_tag = "Singularity"; name = "radiation shutters"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/engine/engineering) -"aQZ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/engine/engineering) +"aQV" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/locker) +"aQW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{dir = 4; icon_state = "neutralcorner"},/area/crew_quarters/locker) +"aQX" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aQY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) +"aQZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aRa" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/engine/engineering) "aRb" = (/obj/machinery/particle_accelerator/control_box,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/engine/engineering) "aRc" = (/obj/structure/stool{pixel_y = 8},/turf/simulated/floor/plating,/area/engine/engineering) @@ -2275,10 +2275,10 @@ "aRM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/wood,/area/lawoffice) "aRN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/wood,/area/lawoffice) "aRO" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/wood,/area/lawoffice) -"aRP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/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/plasteel{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/locker) -"aRQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/locker) -"aRR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/locker) -"aRS" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "neutralcorner"},/area/crew_quarters/locker) +"aRP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/engine/engineering) +"aRQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/mob/living/simple_animal/mouse,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/incinerator) +"aRR" = (/obj/structure/table,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/item/device/t_scanner,/turf/simulated/floor/plasteel{dir = 4; icon_state = "brown"},/area/storage/primary) +"aRS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Station Engineer"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel,/area/engine/engineering) "aRT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "neutralcorner"},/area/crew_quarters/locker) "aRU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/locker) "aRV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/junction{dir = 4; icon_state = "pipe-j2"; tag = "icon-pipe-j1 (WEST)"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutralcorner"},/area/crew_quarters/locker) @@ -2296,7 +2296,7 @@ "aSh" = (/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) "aSi" = (/obj/machinery/the_singularitygen{anchored = 0},/turf/simulated/floor/plating,/area/engine/engineering) "aSj" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) -"aSk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/engine/engineering) +"aSk" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering) "aSl" = (/obj/structure/table,/obj/item/weapon/book/manual/engineering_guide{pixel_x = 3; pixel_y = 4},/obj/item/weapon/book/manual/engineering_particle_accelerator{pixel_x = -2; pixel_y = 3},/obj/machinery/door_control{id = "Singularity"; name = "Shutters Control"; pixel_x = 25; pixel_y = 0; req_access_txt = "11"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aSm" = (/obj/machinery/door_control{id = "Singularity"; name = "Shutters Control"; pixel_x = -25; pixel_y = 0; req_access_txt = "11"},/turf/simulated/floor/plating{tag = "icon-warnplate (SOUTHWEST)"; icon_state = "warnplate"; dir = 10},/area/engine/engineering) "aSn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating{icon_plating = "warnplate"; icon_state = "warnplate"},/area/engine/engineering) @@ -2368,12 +2368,12 @@ "aTB" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 8},/area/hallway/secondary/construction{name = "\improper Garden"}) "aTC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/hallway/secondary/construction{name = "\improper Garden"}) "aTD" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aTE" = (/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/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aTE" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/obj/structure/disposalpipe/sortjunction{sortType = 5},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/engine/engineering) "aTF" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) "aTG" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/hallway/secondary/construction{name = "\improper Garden"}) "aTH" = (/obj/machinery/power/apc{dir = 4; name = "Garden APC"; pixel_x = 27; pixel_y = 2},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/disposal,/obj/machinery/camera{c_tag = "Garden"; dir = 8; network = list("SS13")},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) "aTI" = (/obj/machinery/power/apc{cell_type = 10000; dir = 8; name = "Engine Room APC"; pixel_x = -26; pixel_y = 0},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/engine/engineering) -"aTJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) +"aTJ" = (/obj/item/weapon/storage/toolbox/emergency,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/extinguisher_cabinet{pixel_x = -31; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/incinerator) "aTK" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/engine/engineering) "aTL" = (/obj/structure/table,/obj/item/weapon/book/manual/engineering_hacking{pixel_x = 4; pixel_y = 5},/obj/item/weapon/book/manual/engineering_construction{pixel_x = 0; pixel_y = 3},/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/book/manual/engineering_singularity_safety{pixel_x = -4},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aTM" = (/obj/machinery/power/tesla_coil{anchored = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless,/area/space) @@ -2381,7 +2381,7 @@ "aTO" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/engine/engineering) "aTP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/construction) "aTQ" = (/obj/machinery/light_construct{dir = 4},/turf/simulated/floor/plasteel,/area/construction) -"aTR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aTR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering) "aTS" = (/obj/machinery/door/airlock/shuttle{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/obj/docking_port/mobile/supply,/obj/docking_port/stationary{dir = 8; dwidth = 5; height = 7; id = "supply_home"; name = "supply bay"; width = 12},/turf/simulated/shuttle/plating,/area/shuttle/supply) "aTT" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/quartermaster/storage) "aTU" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/quartermaster/storage) @@ -2421,7 +2421,7 @@ "aUC" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 4; pixel_y = -4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/locker) "aUD" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 5; health = 120; icon_state = "twindow"; reinf = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/construction{name = "\improper Garden"}) "aUE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 8},/area/hallway/secondary/construction{name = "\improper Garden"}) -"aUF" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hydroponics/soil,/turf/simulated/floor/plasteel{icon_state = "bot"},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aUF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering) "aUG" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/grass,/area/hallway/secondary/construction{name = "\improper Garden"}) "aUH" = (/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/grass,/area/hallway/secondary/construction{name = "\improper Garden"}) "aUI" = (/obj/structure/rack,/obj/item/clothing/gloves/color/fyellow,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -2433,8 +2433,8 @@ "aUO" = (/obj/machinery/vending/engivend,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aUP" = (/obj/machinery/vending/tool,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aUQ" = (/obj/structure/closet/secure_closet/engineering_welding,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) -"aUR" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/gloves/color/black,/obj/item/weapon/extinguisher{pixel_x = 8},/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 21},/obj/item/clothing/glasses/meson,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) -"aUS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/engine/engineering) +"aUR" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aUS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) "aUT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/crowbar,/obj/item/stack/cable_coil,/obj/item/weapon/screwdriver,/obj/item/weapon/weldingtool,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "aUU" = (/obj/structure/window/reinforced,/turf/space,/area/space) "aUV" = (/obj/structure/window/reinforced,/obj/structure/lattice,/turf/space,/area/space) @@ -2442,9 +2442,9 @@ "aUX" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "kitchenwindow"; layer = 2.9; name = "kitchen shutters"; opacity = 0},/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/kitchen) "aUY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/construction) "aUZ" = (/obj/structure/table,/obj/item/stack/cable_coil{amount = 5},/obj/item/device/flashlight,/turf/simulated/floor/plasteel,/area/construction) -"aVa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aVa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "aVb" = (/obj/machinery/door/poddoor{id_tag = "QMLoaddoor"; name = "supply dock loading door"},/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/turf/simulated/shuttle/plating,/area/shuttle/supply) -"aVc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aVc" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/simulated/floor/plating,/area/hallway/secondary/construction{name = "\improper Garden"}) "aVd" = (/obj/structure/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/mask/breath,/obj/item/clothing/suit/space/hardsuit/atmos,/obj/item/clothing/head/helmet/space/hardsuit/atmos,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/atmos) "aVe" = (/obj/machinery/conveyor{dir = 9; id = "QMLoad"; movedir = 2},/turf/simulated/floor/plating,/area/quartermaster/storage) "aVf" = (/obj/effect/landmark/start{name = "Cargo Technician"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) @@ -2463,7 +2463,7 @@ "aVs" = (/obj/machinery/camera{c_tag = "NT Representative's Office"; dir = 1; network = list("SS13")},/obj/structure/table/woodentable,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/newscaster/security_unit{pixel_y = -32},/obj/machinery/photocopier/faxmachine/longrange,/turf/simulated/floor/wood,/area/ntrep) "aVt" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/folder/yellow,/obj/item/weapon/storage/firstaid/regular,/turf/simulated/floor/plasteel{dir = 1; icon_state = "browncorner"},/area/storage/primary) "aVu" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel,/area/storage/primary) -"aVv" = (/obj/structure/table,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/item/clothing/gloves/color/yellow,/obj/item/device/t_scanner,/turf/simulated/floor/plasteel{dir = 4; icon_state = "brown"},/area/storage/primary) +"aVv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) "aVw" = (/obj/structure/table,/obj/item/weapon/aiModule/reset,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/ai_status_display{pixel_x = -32; pixel_y = 0},/obj/machinery/flasher{id = "AI"; pixel_x = 0; pixel_y = -24},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/ai_upload) "aVx" = (/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "Upload APC"; pixel_y = -24},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/camera/motion{c_tag = "AI Upload Chamber - Port"; dir = 1; network = list("SS13","RD","AIUpload")},/turf/simulated/floor/bluegrid,/area/turret_protected/ai_upload) "aVy" = (/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/plasteel{icon_state = "dark"},/area/turret_protected/ai_upload) @@ -2495,7 +2495,7 @@ "aVY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/floor/plasteel{dir = 10; icon_state = "neutral"},/area/hallway/secondary/construction{name = "\improper Garden"}) "aVZ" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plasteel{icon_state = "neutral"},/area/hallway/secondary/construction{name = "\improper Garden"}) "aWa" = (/turf/simulated/floor/plasteel{icon_state = "neutral"},/area/hallway/secondary/construction{name = "\improper Garden"}) -"aWb" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "neutral"},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aWb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) "aWc" = (/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 6},/area/hallway/secondary/construction{name = "\improper Garden"}) "aWd" = (/obj/machinery/door/firedoor/border_only{density = 1; dir = 8; icon_state = "door_closed"; name = "Animal Pen B"; opacity = 1},/turf/simulated/floor/grass,/area/hallway/secondary/construction{name = "\improper Garden"}) "aWe" = (/mob/living/simple_animal/cow{name = "Betsy"; real_name = "Betsy"},/turf/simulated/floor/grass,/area/hallway/secondary/construction{name = "\improper Garden"}) @@ -2507,11 +2507,11 @@ "aWk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/engine/engineering) "aWl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering) "aWm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{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/plasteel{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/engine/engineering) -"aWn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Station Engineer"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) -"aWo" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/obj/structure/disposalpipe/sortjunction{sortType = 5},/turf/simulated/floor/plasteel{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/engine/engineering) -"aWp" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering) -"aWq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering) -"aWr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering) +"aWn" = (/obj/machinery/light,/obj/machinery/camera{c_tag = "Engineering - Aft"; dir = 1; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) +"aWo" = (/obj/structure/disposalpipe/segment,/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"},/turf/simulated/floor/plasteel,/area/engine/engineering) +"aWp" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) +"aWq" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aWr" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/starboard) "aWs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/engine/engineering) "aWt" = (/obj/machinery/power/rad_collector{anchored = 1},/obj/item/weapon/tank/plasma,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/engine/engineering) "aWu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/engine/engineering) @@ -2562,7 +2562,7 @@ "aXn" = (/obj/structure/table,/obj/item/weapon/hatchet,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/item/weapon/paper/hydroponics,/obj/item/weapon/coin/silver,/obj/item/weapon/cultivator,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/construction{name = "\improper Garden"}) "aXo" = (/obj/structure/table,/obj/item/weapon/hatchet,/obj/item/weapon/crowbar,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/device/plant_analyzer,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/construction{name = "\improper Garden"}) "aXp" = (/obj/structure/table,/obj/item/weapon/cultivator,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/construction{name = "\improper Garden"}) -"aXq" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aXq" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) "aXr" = (/obj/structure/table,/obj/machinery/light,/obj/item/device/plant_analyzer,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/construction{name = "\improper Garden"}) "aXs" = (/obj/item/weapon/book/manual/engineering_hacking{pixel_x = 4; pixel_y = 5},/obj/item/weapon/book/manual/engineering_construction{pixel_x = 0; pixel_y = 3},/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/starboard) "aXt" = (/obj/machinery/power/terminal,/obj/structure/cable,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"; tag = "icon-warnwhite (NORTHEAST)"},/area/engine/engineering) @@ -2573,10 +2573,10 @@ "aXy" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/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/plasteel,/area/engine/engineering) "aXz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel,/area/engine/engineering) "aXA" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11},/turf/simulated/floor/plasteel,/area/engine/engineering) -"aXB" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) -"aXC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/engine/engineering) -"aXD" = (/turf/simulated/floor/plasteel,/area/engine/engineering) -"aXE" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/engine/engineering) +"aXB" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel,/area/engine/engineering) +"aXC" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/engine/engineering) +"aXD" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/engine/engineering) +"aXE" = (/obj/machinery/camera/emp_proof{c_tag = "Aft Arm - Far"; dir = 8; network = list("Singulo")},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "aXF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/engine/engineering) "aXG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/engine/engineering) "aXH" = (/obj/structure/window/reinforced{dir = 4},/turf/space,/area/space) @@ -2643,18 +2643,18 @@ "aYQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light,/obj/machinery/newscaster{pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/locker) "aYR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/locker) "aYS" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralcorner"},/area/crew_quarters/locker) -"aYT" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aYT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) "aYU" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/power/smes/engineering,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/engine/chiefs_office) "aYV" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/light_switch{pixel_x = -24},/obj/machinery/power/smes/engineering,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/engine/chiefs_office) "aYW" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/engine/engineering) "aYX" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) "aYY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) "aYZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) -"aZa" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{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/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) -"aZb" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) -"aZc" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light,/obj/machinery/camera{c_tag = "Engineering - Aft"; dir = 1; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) -"aZd" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/engine/engineering) -"aZe" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/engine/engineering) +"aZa" = (/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/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/engine/engineering) +"aZb" = (/obj/machinery/light/small,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) +"aZc" = (/obj/structure/grille,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) +"aZd" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) +"aZe" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -29},/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots/advance,/obj/item/clothing/suit/space/hardsuit/elite,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/hardsuit/elite,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) "aZf" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/engine/engineering) "aZg" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/engine/engineering) "aZh" = (/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/space,/area/space) @@ -2664,7 +2664,7 @@ "aZl" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 5; health = 120; icon_state = "twindow"; reinf = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/hallway/secondary/entry{name = "Arrivals"}) "aZm" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 5; health = 120; icon_state = "twindow"; reinf = 0},/turf/simulated/floor/plating,/area/hallway/secondary/entry{name = "Arrivals"}) "aZn" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering{name = "Arrivals Expansion Area"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/hallway/secondary/entry{name = "Arrivals"}) -"aZo" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"aZo" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel,/area/engine/break_room) "aZp" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/supply) "aZq" = (/turf/simulated/shuttle/wall{icon_state = "swall15"; dir = 2},/area/shuttle/supply) "aZr" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/simulated/shuttle/plating,/area/shuttle/supply) @@ -2710,7 +2710,7 @@ "baf" = (/obj/machinery/vending/clothing,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) "bag" = (/obj/structure/closet/wardrobe/mixed,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/crew_quarters/locker) "bah" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/starboard) -"bai" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{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) +"bai" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/library) "baj" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/hydroponics) "bak" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/spawner/lootdrop{loot = list(/obj/structure/grille,/obj/structure/grille,/obj/structure/grille,/obj/structure/grille,/obj/structure/grille,/obj/item/weapon/cigbutt,/obj/item/trash/cheesie,/obj/item/trash/candy,/obj/item/trash/chips,/obj/item/trash/pistachios,/obj/item/trash/plate,/obj/item/trash/popcorn,/obj/item/trash/raisins,/obj/item/trash/sosjerky,/obj/item/trash/syndi_cakes); name = "maint grille or trash spawner"},/turf/simulated/floor/plating,/area/maintenance/starboard) "bal" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -2722,11 +2722,11 @@ "bar" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/engine/engineering) "bas" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/folder/yellow,/obj/item/weapon/storage/firstaid/fire,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/engineering) "bat" = (/obj/machinery/light_switch,/turf/simulated/wall,/area/engine/engineering) -"bau" = (/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/plasteel,/area/engine/engineering) +"bau" = (/obj/item/clothing/head/fedora,/obj/structure/table/woodentable/poker,/turf/simulated/floor/wood,/area/crew_quarters/bar) "bav" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 32; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/engine/engineering) "baw" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (NORTH)"},/area/engine/engineering) "bax" = (/obj/item/weapon/wrench,/turf/simulated/floor/plating/airless,/area/engine/engineering) -"bay" = (/obj/machinery/camera/emp_proof{c_tag = "Aft Arm - Far"; dir = 8; network = list("Singulo")},/turf/simulated/floor/plating/airless,/area/engine/engineering) +"bay" = (/obj/machinery/hologram/holopad,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel,/area/bridge/meeting_room{name = "\improper Command Hallway"}) "baz" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/office{name = "\improper Cargo Office"}) "baA" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-13"; layer = 4.1; tag = "icon-plant-13"},/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) "baB" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) @@ -2741,7 +2741,7 @@ "baK" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) "baL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/double/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},/turf/simulated/floor/plasteel{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/hallway/secondary/entry{name = "Arrivals"}) "baM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/double/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/plasteel{dir = 4; icon_state = "whitecorner"},/area/hallway/secondary/entry{name = "Arrivals"}) -"baN" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/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/plasteel{dir = 1; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) +"baN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/wood,/area/crew_quarters/bar) "baO" = (/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 21},/turf/simulated/floor/plasteel{icon_state = "arrival"; dir = 5},/area/hallway/secondary/entry{name = "Arrivals"}) "baP" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"},/turf/simulated/shuttle/plating,/area/shuttle/supply) "baQ" = (/obj/structure/shuttle/engine/propulsion,/turf/simulated/shuttle/plating,/area/shuttle/supply) @@ -2796,8 +2796,8 @@ "bbN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall,/area/engine/engineering) "bbO" = (/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/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/engine/engineering) "bbP" = (/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 28},/obj/machinery/pipedispenser/disposal,/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"; tag = "icon-warnwhite (NORTHEAST)"},/area/atmos) -"bbQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/light/small,/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/engineering) -"bbR" = (/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/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/engine/engineering) +"bbQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/item/weapon/storage/pill_bottle/dice,/obj/structure/table/woodentable/poker,/turf/simulated/floor/wood,/area/crew_quarters/bar) +"bbR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/stool{pixel_y = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bbS" = (/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/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/engine/engineering) "bbT" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) "bbU" = (/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) @@ -3066,7 +3066,7 @@ "bgX" = (/turf/simulated/wall,/area/security/checkpoint2{name = "Customs"}) "bgY" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bgZ" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) -"bha" = (/obj/item/weapon/reagent_containers/glass/bottle/morphine,/obj/item/trash/candy,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/clothing/accessory/stethoscope,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) +"bha" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) "bhb" = (/obj/structure/plasticflaps{opacity = 1},/obj/machinery/conveyor{backwards = 1; dir = 2; forwards = 2; id = "packageSort2"},/turf/simulated/floor/plasteel{icon_state = "loadingarea"; tag = "loading"},/area/quartermaster/office{name = "\improper Cargo Office"}) "bhc" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/quartermaster/office{name = "\improper Cargo Office"}) "bhd" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/machinery/light_switch{pixel_x = -25; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 9; icon_state = "brown"},/area/quartermaster/office{name = "\improper Cargo Office"}) @@ -3200,7 +3200,7 @@ "bjB" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/storage/tech) "bjC" = (/obj/structure/table,/obj/machinery/cell_charger{pixel_y = 0},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/storage/tech) "bjD" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -28},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) -"bjE" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -29},/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/head/helmet/space/hardsuit/elite,/obj/item/clothing/mask/breath,/obj/item/clothing/suit/space/hardsuit/elite,/obj/item/clothing/shoes/magboots/advance,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) +"bjE" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;27;37"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bjF" = (/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/plasteel{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) "bjG" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/lighter/zippo,/obj/item/clothing/glasses/meson,/obj/machinery/door_control{id = "ceprivacy"; name = "Privacy Shutters Control"; pixel_x = 0; pixel_y = -26},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) "bjH" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/mob/living/simple_animal/parrot/Poly,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 5},/area/engine/chiefs_office) @@ -3431,7 +3431,7 @@ "bnY" = (/obj/structure/sign/pods,/turf/simulated/wall,/area/security/checkpoint2{name = "Customs"}) "bnZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/wall,/area/security/checkpoint2{name = "Customs"}) "boa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/airlock/security{name = "Customs Desk"; req_access = null; req_access_txt = "1"},/turf/simulated/floor/plasteel,/area/security/checkpoint2{name = "Customs"}) -"bob" = (/obj/item/weapon/storage/toolbox/emergency,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor/plating,/area/maintenance/incinerator) +"bob" = (/obj/machinery/ignition_switch{id = "Turbine_igniter"; pixel_x = -6; pixel_y = -24},/obj/machinery/embedded_controller/radio/airlock/access_controller{frequency = 1449; id_tag = "turbine_control"; name = "Turbine Access Console"; pixel_x = 6; pixel_y = -26; req_access_txt = "0"; tag_exterior_door = "gas_turbine_exterior"; tag_interior_door = "gas_turbine_interior"},/obj/structure/sign/fire{pixel_x = 32; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/incinerator) "boc" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/starboard) "bod" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{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"}) "boe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/wall,/area/maintenance/fpmaint2{name = "Port Maintenance"}) @@ -3700,7 +3700,7 @@ "bth" = (/obj/machinery/door/airlock/shuttle{name = "Arrivals Shuttle Airlock"},/turf/simulated/shuttle/plating,/area/shuttle/arrival/station) "bti" = (/turf/simulated/shuttle/wall{tag = "icon-swall13"; icon_state = "swall13"; dir = 2},/area/shuttle/arrival/station) "btj" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/shuttle/arrival/station) -"btk" = (/obj/effect/spawner/window,/turf/simulated/floor/plating,/area/library) +"btk" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "blueshield"; name = "Privacy Shutters"; opacity = 0},/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/blueshield) "btl" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/hallway/secondary/entry{name = "Arrivals"}) "btm" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) "btn" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/hallway/primary/port) @@ -3805,7 +3805,7 @@ "bvi" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/space,/area/construction/hallway{name = "\improper MiniSat Exterior"}) "bvj" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/machinery/camera{c_tag = "Arrivals - Station Entrance"; dir = 4; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) "bvk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plasteel,/area/engine/break_room) -"bvl" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plasteel,/area/engine/break_room) +"bvl" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "blueshield"; name = "Privacy Shutters"; opacity = 0},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/blueshield) "bvm" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Transit Tube"; req_one_access_txt = "32;19"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/engine/break_room) "bvn" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "transittube"; name = "Transit Tube Blast Door"; opacity = 0},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/engine/break_room) "bvo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/engine/break_room) @@ -3818,7 +3818,7 @@ "bvv" = (/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/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating/airless,/area/space) "bvw" = (/obj/structure/transit_tube,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating/airless,/area/space) "bvx" = (/obj/machinery/door_control{id = "turbinevent"; name = "Turbine Vent Control"; pixel_x = 0; pixel_y = -24; req_access_txt = "12"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/incinerator) -"bvy" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/clothing/head/fedora,/obj/structure/table/woodentable/poker,/turf/simulated/floor/wood,/area/crew_quarters/bar) +"bvy" = (/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "representative"; name = "Privacy Shutters"; opacity = 0},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/ntrep) "bvz" = (/obj/item/toy/cards/deck{pixel_y = 4},/obj/structure/table/woodentable/poker,/turf/simulated/floor/wood,/area/crew_quarters/bar) "bvA" = (/obj/structure/stool/bed/chair/comfy/beige{dir = 4},/obj/machinery/camera{c_tag = "Arrivals - Lounge"; dir = 4; network = list("SS13")},/obj/effect/landmark/start{name = "Civilian"},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/hallway/primary/port) "bvB" = (/turf/simulated/floor/carpet,/area/hallway/primary/port) @@ -3884,7 +3884,7 @@ "bwJ" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j1s"; sortType = 19},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/starboard) "bwK" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) "bwL" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/starboard) -"bwM" = (/obj/machinery/ignition_switch{id = "Incinerator"; pixel_x = -6; pixel_y = -24},/obj/machinery/embedded_controller/radio/airlock/access_controller{frequency = 1449; id_tag = "turbine_control"; name = "Turbine Access Console"; pixel_x = 6; pixel_y = -26; req_access_txt = "12"; tag_exterior_door = "gas_turbine_exterior"; tag_interior_door = "gas_turbine_interior"},/obj/structure/sign/fire{pixel_x = 32; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/incinerator) +"bwM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/glass{autoclose = 0; frequency = 1449; heat_proof = 1; icon_state = "door_locked"; id_tag = "gas_turbine_interior"; locked = 1; name = "Incinerator Interior Airlock"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/insulated{dir = 5},/turf/simulated/floor/engine/insulated,/area/maintenance/incinerator) "bwN" = (/obj/item/device/assembly/prox_sensor,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 2; initialize_directions = 11},/turf/simulated/floor/plating,/area/maintenance/starboard) "bwO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{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/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/starboard) "bwP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{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/starboard) @@ -3991,7 +3991,7 @@ "byM" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/bar) "byN" = (/obj/structure/closet/gmcloset{desc = "It's a storage unit."; icon_state = "black"; name = "spare gear"},/obj/item/weapon/wrench,/turf/simulated/floor/wood,/area/crew_quarters/bar) "byO" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/starboard) -"byP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/glass{autoclose = 0; frequency = 1449; heat_proof = 1; icon_state = "door_locked"; id_tag = "incinerator_airlock_interior"; locked = 1; name = "Incinerator Interior Airlock"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/insulated{dir = 5},/turf/simulated/floor/engine/insulated,/area/maintenance/incinerator) +"byP" = (/obj/machinery/door/airlock/glass{autoclose = 0; frequency = 1449; heat_proof = 1; icon_state = "door_locked"; id_tag = "gas_turbine_exterior"; locked = 1; name = "Incinerator Exterior Airlock"; req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/engine/insulated,/area/maintenance/incinerator) "byQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/bridge) "byR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/cigbutt,/turf/simulated/floor/plating,/area/maintenance/starboard) "byS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/toxins/lab) @@ -4187,7 +4187,7 @@ "bCA" = (/obj/structure/sign/securearea{desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; icon_state = "monkey_painting"; name = "Mr. Deempisi portrait"; pixel_x = 0; pixel_y = 28},/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal,/obj/machinery/light_switch{pixel_x = 25; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) "bCB" = (/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Bar APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bCC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"bCD" = (/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/wood,/area/crew_quarters/bar) +"bCD" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "representative"; name = "Privacy Shutters"; opacity = 0},/obj/structure/cable/yellow,/turf/simulated/floor/plating,/area/ntrep) "bCE" = (/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 21},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/obj/machinery/camera{c_tag = "Club - Fore"; dir = 2; network = list("SS13")},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bCF" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/bar) "bCG" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_Toxins = 0},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/bar) @@ -4253,7 +4253,7 @@ "bDO" = (/turf/simulated/floor/plasteel{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/library) "bDP" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 1},/turf/simulated/floor/plasteel{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/library) "bDQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/central) -"bDR" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/toy/cards/deck{pixel_y = 4},/obj/structure/table/woodentable/poker,/turf/simulated/floor/wood,/area/crew_quarters/bar) +"bDR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/stool{pixel_y = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bDS" = (/obj/effect/spawner/lootdrop{loot = list(/obj/item/weapon/gun/projectile/revolver/russian,/obj/item/clothing/mask/cigarette/cigar/cohiba,/obj/item/toy/cards/deck/syndicate); name = "gambling valuables spawner"},/obj/structure/table/woodentable/poker,/turf/simulated/floor/wood,/area/crew_quarters/bar) "bDT" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "atmos"; name = "Atmos Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/atmos) "bDU" = (/obj/machinery/door/poddoor/shutters/preopen{dir = 2; id_tag = "hopqueue"; name = "HoP Queue Shutters"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "loadingarea"; tag = "loading"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) @@ -4463,7 +4463,7 @@ "bHQ" = (/obj/structure/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/landmark/start{name = "Civilian"},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) "bHR" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 5; health = 120; icon_state = "twindow"; reinf = 0},/turf/simulated/floor/plating,/area/crew_quarters/bar) "bHS" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"bHT" = (/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/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/item/weapon/storage/pill_bottle/dice,/obj/structure/table/woodentable/poker,/turf/simulated/floor/wood,/area/crew_quarters/bar) +"bHT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bHU" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) "bHV" = (/obj/structure/stool/bed/chair/wood/wings,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/landmark/start{name = "Mime"},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) "bHW" = (/turf/simulated/floor/carpet,/area/crew_quarters/theatre) @@ -4507,9 +4507,9 @@ "bII" = (/obj/machinery/computer/shuttle/ferry/request,/turf/simulated/shuttle/floor,/area/shuttle/transport) "bIJ" = (/obj/structure/stool/bed/chair,/turf/simulated/shuttle/floor,/area/shuttle/transport) "bIK" = (/obj/structure/stool/bed/chair,/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/transport) -"bIL" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "blueshield"; name = "Privacy Shutters"; opacity = 0},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/blueshield) +"bIL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bIM" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 4; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) -"bIN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"bIN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/crew_quarters/theatre) "bIO" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "telelab"; name = "test chamber blast door"; opacity = 0},/turf/simulated/floor/plating,/area/toxins/explab) "bIP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "telelab"; name = "test chamber blast door"; opacity = 0},/turf/simulated/floor/engine,/area/toxins/explab) "bIQ" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/wood,/area/security/vacantoffice) @@ -4559,9 +4559,9 @@ "bJI" = (/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) "bJJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) "bJK" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/centcom{name = "Club"; opacity = 1},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) -"bJL" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/stool{pixel_y = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) +"bJL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) "bJM" = (/obj/structure/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Civilian"},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"bJN" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "blueshield"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/blueshield) +"bJN" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) "bJO" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/crew_quarters/theatre) "bJP" = (/obj/structure/table/woodentable,/obj/item/weapon/lipstick{pixel_y = 5},/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/camera{c_tag = "Theatre - Stage"; dir = 8; network = list("SS13")},/obj/machinery/light/small{dir = 4},/obj/item/device/guitar,/turf/simulated/floor/wood,/area/crew_quarters/theatre) "bJQ" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "escape"},/area/hallway/primary/starboard) @@ -4586,7 +4586,7 @@ "bKj" = (/obj/structure/table/woodentable,/obj/item/weapon/folder/blue,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 31},/obj/item/weapon/folder/blue,/obj/item/weapon/pen/multi,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/tcommsat/computer{name = "\improper Telecoms Control Room"}) "bKk" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/space,/area/construction/hallway{name = "\improper MiniSat Exterior"}) "bKl" = (/turf/simulated/wall/r_wall,/area/tcommsat/server) -"bKm" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "representative"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/ntrep) +"bKm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) "bKn" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/tcommsat/computer{name = "\improper Telecoms Control Room"}) "bKo" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway{name = "\improper MiniSat Exterior"}) "bKp" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway{name = "\improper MiniSat Exterior"}) @@ -4617,7 +4617,7 @@ "bKO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) "bKP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) "bKQ" = (/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/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) -"bKR" = (/obj/machinery/door/airlock/glass{autoclose = 0; frequency = 1449; heat_proof = 1; icon_state = "door_locked"; id_tag = "incinerator_airlock_exterior"; locked = 1; name = "Incinerator Exterior Airlock"; req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/engine/insulated,/area/maintenance/incinerator) +"bKR" = (/obj/machinery/igniter{icon_state = "igniter0"; id = "Turbine_igniter"; luminosity = 2; on = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/engine/insulated/vacuum,/area/maintenance/incinerator) "bKS" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/obj/machinery/camera{c_tag = "Command Hallway - Port"; dir = 1; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) "bKT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) "bKU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) @@ -4628,7 +4628,7 @@ "bKZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{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/plasteel{dir = 8; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) "bLa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{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/plasteel,/area/bridge/meeting_room{name = "\improper Command Hallway"}) "bLb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/bridge/meeting_room{name = "\improper Command Hallway"}) -"bLc" = (/obj/machinery/hologram/holopad,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel,/area/bridge/meeting_room{name = "\improper Command Hallway"}) +"bLc" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bLd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/bridge/meeting_room{name = "\improper Command Hallway"}) "bLe" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{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/plasteel{dir = 2; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) "bLf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "neutralcorner"},/area/bridge/meeting_room{name = "\improper Command Hallway"}) @@ -4654,15 +4654,15 @@ "bLz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) "bLA" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) "bLB" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/centcom{name = "Club"; opacity = 1},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) -"bLC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"bLD" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/stool{pixel_y = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"bLE" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "representative"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/ntrep) +"bLC" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) +"bLD" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;27"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"bLE" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bLF" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bLG" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/bar) "bLH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) "bLI" = (/obj/structure/stool/bed/chair/wood/wings{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/landmark/start{name = "Clown"},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) "bLJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) -"bLK" = (/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 = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) +"bLK" = (/obj/structure/closet/crate,/obj/item/weapon/contraband/poster/legit,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bLL" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/theatre) "bLM" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/Doormaint.dmi'; name = "Theatre Stage"; req_access_txt = "0"; req_one_access_txt = "12;46"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/theatre) "bLN" = (/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/hidden/supply{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/starboard) @@ -4706,7 +4706,7 @@ "bMz" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/transport) "bMA" = (/obj/structure/stool/bed/chair{dir = 1},/obj/machinery/light/spot,/turf/simulated/shuttle/floor,/area/shuttle/transport) "bMB" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) -"bMC" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;27;37"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"bMC" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bMD" = (/obj/structure/table/woodentable,/obj/item/weapon/folder,/turf/simulated/floor/wood,/area/security/vacantoffice) "bME" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/wood,/area/security/vacantoffice) "bMF" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/wood,/area/security/vacantoffice) @@ -4753,13 +4753,13 @@ "bNu" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 2; initialize_directions = 11},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) "bNv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) "bNw" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar) -"bNx" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/stool{pixel_y = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"bNy" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"bNz" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"bNA" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) -"bNB" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/crew_quarters/theatre) -"bNC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) -"bND" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/carpet,/area/crew_quarters/theatre) +"bNx" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"bNy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"bNz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"bNA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) +"bNB" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/Doorsilver.dmi'; name = "Kitchen Cold Room"; req_access_txt = "28"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) +"bNC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = -26},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) +"bND" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/camera{c_tag = "Kitchen - Coldroom"; dir = 1; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bNE" = (/obj/item/weapon/soap/nanotrasen,/obj/machinery/light/small{dir = 4},/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/crew_quarters/theatre) "bNF" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plating,/area/maintenance/starboard) "bNG" = (/obj/item/weapon/crowbar,/obj/item/weapon/wrench,/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "cautioncorner"},/area/hallway/primary/starboard) @@ -4874,7 +4874,7 @@ "bPL" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/podbay) "bPM" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) "bPN" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;27;37"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"bPO" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/turf/simulated/floor/plating{dir = 8; icon_state = "warnplate"; tag = ""},/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"bPO" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/foodcart,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bPP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bPQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bPR" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = -29},/turf/simulated/floor/wood,/area/security/vacantoffice) @@ -4963,7 +4963,7 @@ "bRw" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) "bRx" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry{name = "Arrivals"}) "bRy" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/camera{c_tag = "Arrivals - Aft Arm"; dir = 8; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 4; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) -"bRz" = (/obj/machinery/igniter{icon_state = "igniter0"; id = "Incinerator"; luminosity = 2; on = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/engine/insulated/vacuum,/area/maintenance/incinerator) +"bRz" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/machinery/meter,/obj/machinery/embedded_controller/radio/airlock/access_controller{frequency = 1449; id_tag = "tox_airlock_control"; name = "Toxin Mixing Console"; pixel_x = -24; pixel_y = 0; req_access_txt = "0"; tag_airpump = "tox_airlock_apump"; tag_chamber_sensor = "tox_airlock_sensor"; tag_exterior_door = "tox_airlock_exterior"; tag_exterior_sensor = null; tag_interior_door = "tox_airlock_interior"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warnwhitecorner"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "bRA" = (/obj/machinery/power/apc{dir = 8; name = "Vacant Office APC"; pixel_x = -25},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/wood,/area/security/vacantoffice) "bRB" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/wood,/area/security/vacantoffice) "bRC" = (/obj/machinery/light_construct{dir = 4},/turf/simulated/floor/wood,/area/security/vacantoffice) @@ -5122,7 +5122,7 @@ "bUz" = (/obj/machinery/telecomms/processor/preset_four,/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/server) "bUA" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/eastright{dir = 2; name = "MiniSat Walkway Access"; req_access_txt = "13;75"},/obj/machinery/light/small{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/obj/machinery/camera/motion{c_tag = "AI Satellite Exterior South East 2"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway{name = "\improper MiniSat Exterior"}) "bUB" = (/obj/machinery/door/airlock/external{name = "Auxiliary Airlock"},/turf/simulated/floor/plating,/area/hallway/secondary/entry{name = "Arrivals"}) -"bUC" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;27"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"bUC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bUD" = (/obj/structure/table/woodentable,/obj/item/weapon/paper,/turf/simulated/floor/wood,/area/security/vacantoffice) "bUE" = (/obj/structure/table/woodentable,/obj/item/weapon/folder/white,/turf/simulated/floor/wood,/area/security/vacantoffice) "bUF" = (/obj/item/toy/cards/deck,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/security/vacantoffice) @@ -5203,15 +5203,15 @@ "bWc" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/hallway/secondary/entry{name = "Arrivals"}) "bWd" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bWe" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/toxins/lab) -"bWf" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/weapon/contraband/poster/legit,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"bWf" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/crew_quarters/kitchen) "bWg" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"bWh" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) +"bWh" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/starboard) "bWi" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/item/trash/candy,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bWj" = (/obj/machinery/door/airlock/maintenance{name = "Vacant Office Maintenance"; req_access_txt = "32"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/security/vacantoffice) "bWk" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/mask/horsehead,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bWl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plating{icon_plating = "warnplate"; icon_state = "warnplate"},/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bWm" = (/obj/structure/rack,/obj/item/weapon/storage/box,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"bWn" = (/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/compressor{comp_id = "incineratorturbine"; dir = 1},/turf/simulated/floor/engine/insulated/vacuum,/area/maintenance/incinerator) +"bWn" = (/obj/machinery/door/airlock/maintenance{name = "Kitchen Maintenance"; req_access_txt = "28"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/kitchen) "bWo" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) "bWp" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 4},/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/library) "bWq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/wood,/area/library) @@ -5258,7 +5258,7 @@ "bXf" = (/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/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bXg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bXh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"bXi" = (/obj/structure/disposalpipe/segment,/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/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) +"bXi" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/starboard) "bXj" = (/obj/machinery/requests_console{department = "Kitchen"; departmentType = 2; pixel_x = 30; pixel_y = 0},/obj/machinery/processor,/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bXk" = (/obj/structure/closet/crate{desc = "It's a storage unit for kitchen clothes and equipment."; name = "Kitchen Crate"},/obj/item/clothing/head/chefhat,/obj/item/clothing/under/rank/chef,/obj/item/weapon/storage/box/mousetraps{pixel_x = 5; pixel_y = 5},/obj/item/weapon/storage/box/mousetraps,/obj/item/clothing/under/waiter,/obj/item/clothing/under/waiter,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bXl" = (/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/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) @@ -5325,13 +5325,13 @@ "bYu" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) "bYv" = (/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/power/apc{dir = 2; name = "Kitchen APC"; pixel_y = -24},/obj/structure/cable/yellow,/obj/structure/table,/obj/machinery/reagentgrinder,/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bYw" = (/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/weapon/kitchen/rollingpin,/obj/machinery/camera{c_tag = "Kitchen"; dir = 1; network = list("SS13")},/obj/machinery/door_control{id = "kitchenhydro"; name = "Service Shutter Control"; pixel_x = 0; pixel_y = -24; req_access_txt = "28"},/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"bYx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{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/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"bYy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/crew_quarters/kitchen) -"bYz" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/Doorsilver.dmi'; name = "Kitchen Cold Room"; req_access_txt = "28"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) -"bYA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) -"bYB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "Kitchen - Coldroom"; dir = 1; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) -"bYC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = -26},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) -"bYD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) +"bYx" = (/obj/structure/disposalpipe/sortjunction{dir = 2; sortType = 20},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/starboard) +"bYy" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/starboard) +"bYz" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "green"; dir = 6},/area/hydroponics) +"bYA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "green"},/area/hydroponics) +"bYB" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "green"},/area/hydroponics) +"bYC" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 10; icon_state = "green"},/area/hydroponics) +"bYD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Hydroponics Backroom"; req_access_txt = "35"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/hydroponics) "bYE" = (/obj/machinery/cooker/deepfryer,/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bYF" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "cmoprivacy"; layer = 2.7; name = "privacy shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/cmo) "bYG" = (/obj/machinery/portable_atmospherics/canister,/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -5380,10 +5380,10 @@ "bZx" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastleft{dir = 1; name = "Kitchen Window"; req_access_txt = "28"; req_one_access_txt = "0"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/paper,/obj/machinery/door/window/eastleft{dir = 2; name = "Hydroponics Window"; req_access_txt = "0"; req_one_access_txt = "30;35"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/hydroponics) "bZy" = (/obj/machinery/smartfridge,/turf/simulated/wall,/area/hydroponics) "bZz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/crew_quarters/kitchen) -"bZA" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/crew_quarters/kitchen) -"bZB" = (/obj/machinery/door/airlock/maintenance{name = "Kitchen Maintenance"; req_access_txt = "28"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/crew_quarters/kitchen) -"bZC" = (/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/hidden/supply{dir = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/starboard) -"bZD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/starboard) +"bZA" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/hydroponics) +"bZB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plasteel{icon_state = "hydrofloor"},/area/hydroponics) +"bZC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{icon_state = "hydrofloor"},/area/hydroponics) +"bZD" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{sortType = 21},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/starboard) "bZE" = (/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Starboard Maintenance APC"; pixel_x = -1; pixel_y = 26},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/starboard) "bZF" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/starboard) "bZG" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -5453,8 +5453,8 @@ "caS" = (/obj/structure/closet{name = "spare parts locker"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/item/weapon/rack_parts,/obj/item/weapon/rack_parts,/obj/item/weapon/wrench,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/crew_quarters/kitchen) "caT" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/window/eastright{dir = 1; name = "Kitchen Delivery"; req_access_txt = "28"},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/crew_quarters/kitchen) "caU" = (/obj/machinery/navbeacon{codes_txt = "delivery"; dir = 8; location = "Kitchen"},/obj/structure/plasticflaps{opacity = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/crew_quarters/kitchen) -"caV" = (/obj/structure/disposalpipe/sortjunction{dir = 2; sortType = 20},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/starboard) -"caW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/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/plating,/area/maintenance/starboard) +"caV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Hydroponics Maintenance"; req_access_txt = "35"; req_one_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/hydroponics) +"caW" = (/obj/item/trash/candy,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/clothing/accessory/stethoscope,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "caX" = (/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/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plating,/area/maintenance/starboard) "caY" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "rdprivacy"; layer = 2.7; name = "privacy shutters"; opacity = 0},/turf/simulated/floor/plating,/area/crew_quarters/hor) "caZ" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -5527,7 +5527,7 @@ "cco" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plating,/area/maintenance/portsolar) "ccp" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/light/small{dir = 4},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor/plating,/area/maintenance/portsolar) "ccq" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"}) -"ccr" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/foodcart,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) +"ccr" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/aft{name = "Aft Maintenance"}) "ccs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/aft{name = "Aft Maintenance"}) "cct" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "ccu" = (/turf/simulated/floor/plating{tag = "icon-warnplatecorner (WEST)"; icon_state = "warnplatecorner"; dir = 8},/area/maintenance/aft{name = "Aft Maintenance"}) @@ -5675,7 +5675,7 @@ "cfg" = (/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/plasteel{icon_state = "red"; dir = 9},/area/security/checkpoint/medical) "cfh" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table/reinforced,/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/machinery/light{dir = 1},/obj/machinery/camera{c_tag = "Security Post - Medbay"; dir = 2; network = list("SS13","Medbay")},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/checkpoint/medical) "cfi" = (/obj/item/weapon/pen,/obj/structure/table/reinforced,/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/item/weapon/folder/red,/obj/item/weapon/book/manual/security_space_law{pixel_x = 3; pixel_y = 4},/obj/machinery/newscaster/security_unit{pixel_y = 32},/obj/item/weapon/screwdriver{pixel_y = 10},/obj/item/device/radio/off,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 5},/area/security/checkpoint/medical) -"cfj" = (/obj/structure/table,/obj/machinery/power/apc{dir = 4; name = "Morgue APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/item/weapon/folder/white,/obj/item/clothing/gloves/color/latex,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/weapon/autopsy_scanner,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue) +"cfj" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteyellow"},/area/medical/medbay{name = "Medbay Central"}) "cfk" = (/obj/structure/sign/greencross,/turf/simulated/wall,/area/medical/medbay{name = "Medbay Central"}) "cfl" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitehall"; tag = "icon-whitehall (WEST)"},/area/medical/medbay{name = "Medbay Central"}) "cfm" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitehall"; tag = "icon-whitehall (WEST)"},/area/medical/medbay{name = "Medbay Central"}) @@ -5764,13 +5764,13 @@ "cgR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "green"; dir = 6},/area/hydroponics) "cgS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 10; icon_state = "green"},/area/hydroponics) "cgT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "green"},/area/hydroponics) -"cgU" = (/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 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "green"},/area/hydroponics) -"cgV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/hydroponics) -"cgW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Hydroponics Backroom"; req_access_txt = "35"; req_one_access_txt = "0"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "bot"},/area/hydroponics) -"cgX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 2; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "hydrofloor"},/area/hydroponics) -"cgY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "hydrofloor"},/area/hydroponics) -"cgZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Hydroponics Maintenance"; req_access_txt = "35"; req_one_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/hydroponics) -"cha" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{sortType = 21},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/starboard) +"cgU" = (/obj/machinery/light{dir = 1},/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 30},/obj/structure/table,/obj/machinery/computer/med_data/laptop,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/medical/sleeper{name = "Sleepers"}) +"cgV" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/medical/sleeper{name = "Sleepers"}) +"cgW" = (/obj/machinery/power/compressor{comp_id = "incineratorturbine"; dir = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/engine/insulated/vacuum,/area/maintenance/incinerator) +"cgX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/explab) +"cgY" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/explab) +"cgZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/explab) +"cha" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/explab) "chb" = (/obj/structure/rack,/obj/item/weapon/extinguisher,/obj/item/clothing/mask/gas,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/starboard) "chc" = (/obj/structure/closet,/obj/item/stack/cable_coil/random,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/starboard) "chd" = (/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/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/incinerator) @@ -5929,7 +5929,6 @@ "cka" = (/obj/structure/sign/nosmoking_2{pixel_x = -28},/obj/machinery/atmospherics/unary/portables_connector{dir = 4; name = "input gas connector port"},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/incinerator) "ckb" = (/obj/machinery/atmospherics/binary/pump{dir = 4; name = "input port pump"},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/incinerator) "ckc" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/insulated{dir = 6},/obj/machinery/atmospherics/pipe/simple/visible{dir = 9},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/incinerator) -"ckd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -31},/mob/living/simple_animal/mouse,/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/incinerator) "cke" = (/obj/machinery/sparker{dir = 2; id = "mixingsparker"; pixel_x = 25},/obj/machinery/atmospherics/unary/outlet_injector/on{dir = 4; frequency = 1443; id = "air_in"},/turf/simulated/floor/engine/insulated/vacuum,/area/toxins/mixing{name = "\improper Toxins Lab"}) "ckf" = (/obj/machinery/meter,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/visible{dir = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/maintenance/incinerator) "ckg" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/maintenance/starboard) @@ -5970,7 +5969,7 @@ "ckP" = (/obj/machinery/light,/obj/structure/stool/bed/roller,/obj/machinery/camera{c_tag = "Medbay Foyer"; dir = 1; network = list("SS13","Medbay")},/obj/machinery/firealarm{dir = 1; pixel_y = -28},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteblue"},/area/medical/medbay{name = "Medbay Central"}) "ckQ" = (/obj/structure/stool/bed/roller,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteblue"},/area/medical/medbay{name = "Medbay Central"}) "ckR" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteyellow"},/area/medical/medbay{name = "Medbay Central"}) -"ckS" = (/obj/effect/landmark/start{name = "Paramedic"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteyellow"},/area/medical/medbay{name = "Medbay Central"}) +"ckS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/toxins/explab) "ckT" = (/obj/item/weapon/twohanded/required/kirbyplants{tag = "icon-plant-11"; icon_state = "plant-11"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteyellow"},/area/medical/medbay{name = "Medbay Central"}) "ckU" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/medical/medbay2{name = "Medbay Storage"}) "ckV" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/hallway/primary/aft) @@ -6022,7 +6021,7 @@ "clP" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "clQ" = (/obj/structure/closet/wardrobe/pjs,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/medical/sleeper{name = "Sleepers"}) "clR" = (/obj/structure/closet/wardrobe/pjs,/obj/machinery/alarm{pixel_y = 24},/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/medical/sleeper{name = "Sleepers"}) -"clS" = (/obj/machinery/computer/med_data,/obj/machinery/light{dir = 1},/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 30},/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/medical/sleeper{name = "Sleepers"}) +"clS" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/explab) "clT" = (/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"},/obj/item/clothing/accessory/stethoscope,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/medical/sleeper{name = "Sleepers"}) "clU" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 4},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 23},/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/medical/sleeper{name = "Sleepers"}) "clV" = (/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = -3},/obj/item/weapon/storage/firstaid/brute{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/brute,/obj/item/weapon/storage/firstaid/brute{pixel_x = -3; pixel_y = -3},/obj/machinery/power/apc{dir = 2; name = "Medbay Storage APC"; pixel_y = -24},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/light_switch{pixel_x = -26; pixel_y = 0},/obj/machinery/light/small,/obj/structure/table/glass,/turf/simulated/floor/plasteel{dir = 10; icon_state = "whiteblue"},/area/medical/medbay2{name = "Medbay Storage"}) @@ -6176,7 +6175,7 @@ "coN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_Toxins = 0},/turf/simulated/floor/plasteel{tag = "icon-warnwhite (NORTH)"; icon_state = "warnwhite"; dir = 1},/area/medical/research{name = "Research Division"}) "coO" = (/obj/machinery/power/apc{cell_type = 10000; dir = 1; name = "Research Division APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/camera{c_tag = "Research Division - Airlock"; dir = 2; network = list("SS13","RD")},/turf/simulated/floor/plasteel{icon_state = "warnwhite"; dir = 5},/area/medical/research{name = "Research Division"}) "coP" = (/turf/simulated/floor/plasteel{icon_state = "bot"},/area/medical/research{name = "Research Division"}) -"coQ" = (/obj/item/weapon/tank/air,/obj/item/weapon/tank/air,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/aft{name = "Aft Maintenance"}) +"coQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/aft{name = "Aft Maintenance"}) "coR" = (/obj/structure/stool,/obj/machinery/newscaster{pixel_x = -30; pixel_y = 0},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/research{name = "Research Division"}) "coS" = (/obj/structure/stool,/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/research{name = "Research Division"}) "coT" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 2; on = 1},/turf/simulated/floor/plasteel{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/medical/research{name = "Research Division"}) @@ -6367,7 +6366,7 @@ "csw" = (/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/maintenance/aft{name = "Aft Maintenance"}) "csx" = (/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"}) "csy" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/structure/disposalpipe/segment,/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/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"}) -"csz" = (/obj/effect/spawner/window,/turf/simulated/floor/plating,/area/medical/sleeper{name = "Sleepers"}) +"csz" = (/obj/machinery/door/airlock/maintenance{name = "Experimentation Lab Maintenance"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/toxins/explab) "csA" = (/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/cable/yellow,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "xenobio7"; layer = 2.5; name = "containment blast door"; opacity = 0},/turf/simulated/floor/plating,/area/toxins/xenobiology{name = "\improper Secure Lab"}) "csB" = (/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "xenobio1"; layer = 2.5; name = "containment blast door"; opacity = 0},/turf/simulated/floor/plating,/area/toxins/xenobiology{name = "\improper Secure Lab"}) "csC" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Observation"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plasteel,/area/medical/surgery) @@ -6456,6 +6455,7 @@ "cuh" = (/obj/structure/disposalpipe/segment,/obj/structure/stool,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab) "cui" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"},/area/toxins/lab) "cuj" = (/obj/structure/table,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plasteel{icon_state = "warning"},/area/toxins/lab) +"cuk" = (/obj/machinery/computer/security/telescreen{desc = "Used for monitoring medbay to ensure patient safety."; dir = 8; name = "Medbay Monitor"; network = list("Medbay"); pixel_x = 29; pixel_y = 0},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = -29},/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/structure/table/glass,/obj/item/weapon/stamp/cmo,/obj/item/key/ambulance{name = "spare ambulance key"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/medical/cmo) "cul" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plasteel{dir = 9; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "cum" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "cun" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitepurplecorner"},/area/medical/research{name = "Research Division"}) @@ -6489,6 +6489,7 @@ "cuP" = (/obj/structure/stool/bed/roller,/obj/machinery/light/small{dir = 8},/obj/machinery/iv_drip,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) "cuQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) "cuR" = (/obj/structure/stool/bed,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/weapon/bedsheet/medical,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) +"cuS" = (/obj/vehicle/ambulance,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) "cuT" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/medical/cryo) "cuU" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/medical/cryo) "cuV" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/medical/cryo) @@ -6533,19 +6534,20 @@ "cvI" = (/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/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "cvJ" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/research{name = "Experimentation Lab"; req_access_txt = "8"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitepurplefull"; tag = "icon-whitehall (WEST)"},/area/toxins/explab) "cvK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{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/plasteel{dir = 8; icon_state = "whitepurple"},/area/toxins/explab) -"cvL" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/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/plasteel{icon_state = "white"},/area/toxins/explab) -"cvM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/explab) -"cvN" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/explab) -"cvO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/explab) -"cvP" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/explab) -"cvQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/toxins/explab) -"cvR" = (/obj/machinery/door/airlock/maintenance{name = "Experimentation Lab Maintenance"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/toxins/explab) -"cvS" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/aft{name = "Aft Maintenance"}) +"cvL" = (/obj/structure/stool/bed/amb_trolley,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) +"cvM" = (/obj/structure/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/hardsuit/medical,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/hardsuit/medical,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/medical/cmo) +"cvN" = (/obj/effect/landmark/start{name = "Paramedic"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) +"cvO" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -32},/obj/machinery/camera{c_tag = "Medbay Recovery Room"; dir = 1; network = list("SS13","Medbay")},/obj/structure/closet/paramedic,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) +"cvP" = (/turf/space,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cvQ" = (/turf/space,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless/catwalk,/area/space) +"cvR" = (/obj/structure/table,/obj/machinery/power/apc{dir = 4; name = "Morgue APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/item/weapon/folder/white,/obj/item/clothing/gloves/color/latex,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/weapon/autopsy_scanner,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue) +"cvS" = (/obj/structure/rack,/obj/item/weapon/crowbar/red,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 26},/obj/item/weapon/wrench,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/item/weapon/restraints/handcuffs/cable/zipties,/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitegreen"},/area/medical/virology) "cvT" = (/obj/structure/stool/bed/roller,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/aft{name = "Aft Maintenance"}) "cvU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating{tag = "icon-panelscorched"; icon_state = "panelscorched"},/area/maintenance/aft{name = "Aft Maintenance"}) "cvV" = (/obj/structure/barricade/wooden,/obj/structure/girder,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cvW" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cvX" = (/obj/effect/decal/cleanable/blood/gibs/limb,/obj/structure/rack,/obj/item/weapon/storage/firstaid/regular{pixel_x = 0; pixel_y = 0},/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/ointment,/obj/item/clothing/glasses/hud/health,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) +"cvY" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "cvZ" = (/obj/structure/stool,/turf/simulated/floor/wood{tag = "icon-wood-broken7"; icon_state = "wood-broken7"},/area/maintenance/aft{name = "Aft Maintenance"}) "cwa" = (/turf/simulated/floor/wood{tag = "icon-wood-broken6"; icon_state = "wood-broken6"},/area/maintenance/aft{name = "Aft Maintenance"}) "cwb" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/aft{name = "Aft Maintenance"}) @@ -6566,6 +6568,7 @@ "cwq" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/medical/cryo) "cwr" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/medical/medbay{name = "Medbay Central"}) "cws" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) +"cwt" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "7;12;47"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cwu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{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"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/medical/cmo) "cwv" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/medical/cmo) "cww" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/medical/cmo) @@ -6641,7 +6644,9 @@ "cxO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"}) "cxP" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "cxQ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) +"cxR" = (/obj/machinery/door/airlock/research{name = "Research Shuttle Dock"; req_access_txt = "47"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "cxS" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor/preopen{id_tag = "researchrangeshutters"; name = "blast door"},/turf/simulated/floor/plating,/area/toxins/misc_lab{name = "\improper Research Testing Range"}) +"cxT" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "cxU" = (/turf/simulated/wall,/area/crew_quarters/hor) "cxV" = (/turf/simulated/wall/r_wall,/area/toxins/storage) "cxW" = (/obj/structure/sign/biohazard,/turf/simulated/wall/r_wall,/area/toxins/storage) @@ -6664,6 +6669,7 @@ "cyn" = (/obj/machinery/atmospherics/unary/outlet_injector/on{dir = 8},/turf/simulated/floor/plating/airless,/area/space) "cyo" = (/obj/structure/table,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/structure/window/reinforced/polarized{tag = "icon-rwindow (NORTH)"; icon_state = "rwindow"; dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) "cyp" = (/obj/structure/table,/obj/item/weapon/cautery{pixel_x = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/weapon/razor{pixel_y = 5},/obj/structure/window/reinforced/polarized{tag = "icon-rwindow (NORTH)"; icon_state = "rwindow"; dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) +"cyq" = (/obj/machinery/light{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "cyr" = (/obj/structure/stool/bed/roller,/obj/machinery/light/small{dir = 8},/obj/structure/sign/nosmoking_2{pixel_x = -28},/obj/machinery/iv_drip,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) "cys" = (/obj/machinery/light/small{dir = 4; pixel_y = 8},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) "cyt" = (/turf/simulated/wall,/area/medical/cryo) @@ -6678,6 +6684,7 @@ "cyC" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellow"; tag = "icon-whitehall (WEST)"},/area/medical/chemistry) "cyD" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cyE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) +"cyF" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "cyG" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = 11},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/aft{name = "Aft Maintenance"}) "cyH" = (/obj/structure/disposalpipe/segment{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/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"}) "cyI" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 23},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/aft{name = "Aft Maintenance"}) @@ -6709,6 +6716,7 @@ "czi" = (/obj/machinery/computer/area_atmos,/obj/machinery/light/small{dir = 1},/obj/structure/sign/nosmoking_2{pixel_y = 32},/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/toxins/storage) "czj" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Toxins Storage APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plasteel{icon_state = "bot"},/area/toxins/storage) "czk" = (/obj/machinery/portable_atmospherics/scrubber/huge,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/toxins/storage) +"czl" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "czm" = (/obj/structure/grille/broken,/turf/space,/area/space) "czn" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/aft{name = "Aft Maintenance"}) "czo" = (/obj/machinery/vending/assist,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/aft{name = "Aft Maintenance"}) @@ -6722,7 +6730,7 @@ "czw" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "czx" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/medbay{name = "Medbay Central"}) "czy" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light_switch{pixel_x = -28; pixel_y = 0},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -30},/obj/machinery/light/small,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/medical/cmo) -"czz" = (/obj/structure/rack,/obj/item/clothing/head/helmet/space/hardsuit/medical,/obj/item/clothing/mask/breath,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/hardsuit/medical,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/medical/cmo) +"czz" = (/obj/machinery/light{dir = 1},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "czA" = (/obj/structure/table/glass,/obj/item/weapon/pen,/obj/item/clothing/accessory/stethoscope,/obj/structure/extinguisher_cabinet{pixel_x = 6; pixel_y = -30},/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/medical/cmo) "czB" = (/turf/simulated/wall/r_wall,/area/medical/genetics) "czC" = (/turf/simulated/wall,/area/medical/genetics) @@ -6767,6 +6775,7 @@ "cAp" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay{name = "Medbay Central"}) "cAq" = (/obj/item/weapon/storage/box/rxglasses{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/bodybags,/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = -29},/obj/structure/table/glass,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/medical/genetics) "cAr" = (/obj/item/clothing/gloves/color/latex,/obj/item/clothing/gloves/color/latex,/obj/item/weapon/storage/box/disks{pixel_x = 2; pixel_y = 2},/obj/structure/table/glass,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/medical/genetics) +"cAs" = (/obj/machinery/power/apc{dir = 2; name = "Research Shuttle Dock APC"; pixel_y = -24},/obj/structure/cable/yellow,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "cAu" = (/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 8; pixel_y = 2},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/structure/table/glass,/turf/simulated/floor/plasteel{tag = "icon-vault"; icon_state = "vault"},/area/medical/genetics) "cAv" = (/obj/structure/filingcabinet/chestdrawer,/turf/simulated/floor/plasteel{dir = 9; icon_state = "blue"},/area/medical/genetics) "cAw" = (/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 = 32},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 5; icon_state = "blue"},/area/medical/genetics) @@ -6863,7 +6872,6 @@ "cCl" = (/obj/structure/stool/bed/roller,/obj/machinery/light/small{dir = 8},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/structure/sign/nosmoking_2{pixel_x = -28},/obj/machinery/iv_drip,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) "cCm" = (/obj/machinery/bodyscanner,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) "cCn" = (/obj/machinery/body_scanconsole,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) -"cCo" = (/obj/structure/stool/bed,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/item/weapon/bedsheet/medical,/obj/machinery/newscaster{pixel_x = 0; pixel_y = -32},/obj/machinery/camera{c_tag = "Medbay Recovery Room"; dir = 1; network = list("SS13","Medbay")},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery) "cCp" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/clothing/accessory/stethoscope,/obj/machinery/light/small{dir = 8},/obj/machinery/power/apc{dir = 8; name = "Patient Room B APC"; pixel_x = -26; pixel_y = 0},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/light_switch{pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/medical/exam_room{name = "Patient Room B"}) "cCq" = (/obj/structure/stool/bed/chair/office/light{dir = 8},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/landmark/start{name = "Medical Doctor"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/vending/wallmed1{pixel_y = 28},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/exam_room{name = "Patient Room B"}) "cCr" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/door_control{id = "isolb"; name = "Privacy Shutters"; pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteblue"},/area/medical/exam_room{name = "Patient Room B"}) @@ -6938,8 +6946,6 @@ "cDL" = (/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/maintenance/aft{name = "Aft Maintenance"}) "cDM" = (/obj/machinery/door/airlock/external{req_access_txt = "0"; req_one_access_txt = "13,8"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cDN" = (/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{icon_state = "warnplate"; dir = 4},/area/maintenance/aft{name = "Aft Maintenance"}) -"cDO" = (/turf/simulated/floor/plating/airless/catwalk,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/space,/area/space) -"cDP" = (/turf/simulated/floor/plating/airless/catwalk,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/space,/area/space) "cDQ" = (/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/aft{name = "Aft Maintenance"}) "cDR" = (/obj/machinery/door/airlock/external{req_access_txt = "13"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cDS" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) @@ -7278,7 +7284,6 @@ "cKx" = (/obj/structure/lattice,/turf/space,/area/toxins/mixing{name = "\improper Toxins Lab"}) "cKB" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/turf/simulated/wall/r_wall,/area/toxins/mixing{name = "\improper Toxins Lab"}) "cKC" = (/obj/machinery/light,/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hydroponics) -"cKD" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/machinery/meter,/obj/machinery/embedded_controller/radio/airlock{tag_airpump = "tox_airlock_pump"; tag_exterior_door = "tox_airlock_exterior"; id_tag = "tox_airlock_control"; tag_interior_door = "tox_airlock_interior"; pixel_x = -24; pixel_y = 0; tag_chamber_sensor = "tox_airlock_sensor"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warnwhitecorner"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "cKE" = (/obj/machinery/atmospherics/binary/valve{dir = 4; name = "manual outlet valve"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "cKF" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 8},/obj/structure/window/reinforced{dir = 1; pixel_y = 2},/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/toxins/mixing{name = "\improper Toxins Lab"}) "cKG" = (/obj/structure/closet/wardrobe/grey,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) @@ -7298,7 +7303,6 @@ "cKV" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "12;5;39;6"},/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{req_access_txt = 1},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cKW" = (/turf/simulated/floor/plasteel{dir = 6; icon_state = "whitehall"},/area/medical/medbay3{name = "Medbay Aft"}) "cKX" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay3{name = "Medbay Aft"}) -"cKY" = (/obj/machinery/computer/security/telescreen{desc = "Used for monitoring medbay to ensure patient safety."; dir = 8; name = "Medbay Monitor"; network = list("Medbay"); pixel_x = 29; pixel_y = 0},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = -29},/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/structure/table/glass,/obj/item/weapon/stamp/cmo,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/medical/cmo) "cKZ" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitecorner"},/area/medical/medbay3{name = "Medbay Aft"}) "cLa" = (/obj/item/device/healthanalyzer{pixel_x = 1; pixel_y = 4},/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = -30},/obj/structure/table/glass,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitehall"},/area/medical/medbay3{name = "Medbay Aft"}) "cLb" = (/obj/machinery/vending/medical,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitecorner"},/area/medical/medbay3{name = "Medbay Aft"}) @@ -7333,7 +7337,6 @@ "cLH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitegreen"},/area/medical/virology) "cLI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitegreen"},/area/medical/virology) "cLJ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitegreen"},/area/medical/virology) -"cLK" = (/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/restraints/handcuffs,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitegreen"},/area/medical/virology) "cLL" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway{name = "\improper MiniSat Exterior"}) "cLM" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitegreen"},/area/medical/virology) "cLN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/virology) @@ -7629,8 +7632,6 @@ "cRI" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "cRJ" = (/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/atmospherics/pipe/manifold/hidden/supply{dir = 2},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "cRK" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "7;12;47"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) -"cRL" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) -"cRM" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "7;12;47"},/turf/simulated/floor/plating{tag = "icon-platingdmg2"; icon_state = "platingdmg2"},/area/maintenance/aft{name = "Aft Maintenance"}) "cRN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"}) "cRO" = (/obj/structure/closet/crate,/obj/item/weapon/contraband/poster/legit,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/aft{name = "Aft Maintenance"}) "cRP" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/aft{name = "Aft Maintenance"}) @@ -7665,7 +7666,6 @@ "cSs" = (/obj/machinery/door/poddoor/preopen{id_tag = "xeno_blastdoor"; name = "biohazard containment door"},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/medical/research{name = "Research Division"}) "cSt" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/poddoor/preopen{id_tag = "xeno_blastdoor"; name = "biohazard containment door"},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/medical/research{name = "Research Division"}) "cSu" = (/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/door/poddoor/preopen{id_tag = "xeno_blastdoor"; name = "biohazard containment door"},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/medical/research{name = "Research Division"}) -"cSv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "cSw" = (/obj/structure/stool,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/camera{c_tag = "Aft Starboard Solar Maintenance"; dir = 4; network = list("SS13")},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cSx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cSy" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/light/small{dir = 4},/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) @@ -7709,7 +7709,6 @@ "cTk" = (/obj/structure/sign/biohazard,/turf/simulated/wall,/area/toxins/xenobiology{name = "\improper Secure Lab"}) "cTl" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Secure Lab"; req_access_txt = "47"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitepurplefull"; tag = "icon-whitehall (WEST)"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "cTm" = (/obj/structure/sign/securearea,/turf/simulated/wall,/area/toxins/xenobiology{name = "\improper Secure Lab"}) -"cTn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/research{name = "Research Shuttle Dock"; req_access_txt = "47"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "cTo" = (/obj/machinery/biogenerator,/turf/simulated/floor/plating{icon_state = "warnplate"},/area/maintenance/aft{name = "Aft Maintenance"}) "cTp" = (/obj/structure/rack{layer = 2.8},/obj/item/seeds/wheat,/obj/item/seeds/watermelon,/obj/item/seeds/watermelon,/obj/item/seeds/grape,/obj/item/seeds/glowshroom,/turf/simulated/floor/plating{icon_state = "warnplate"},/area/maintenance/aft{name = "Aft Maintenance"}) "cTq" = (/obj/item/device/plant_analyzer,/obj/item/weapon/cultivator,/obj/item/weapon/reagent_containers/glass/bucket,/obj/structure/rack{layer = 2.8},/obj/item/seeds/corn,/obj/item/seeds/cabbage,/obj/item/seeds/ambrosia,/obj/item/seeds/grass,/turf/simulated/floor/plating{icon_state = "warnplate"},/area/maintenance/aft{name = "Aft Maintenance"}) @@ -7855,8 +7854,6 @@ "cWh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{tag = "icon-warnwhite (NORTH)"; icon_state = "warnwhite"; dir = 1},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "cWi" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plasteel{tag = "icon-warnwhite (NORTHEAST)"; icon_state = "warnwhite"; dir = 5},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "cWj" = (/obj/structure/window/reinforced,/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/construction/hallway{name = "\improper MiniSat Exterior"}) -"cWk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) -"cWl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "cWm" = (/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "cWn" = (/obj/structure/closet/coffin,/turf/simulated/floor/plating,/area/chapel/main) "cWo" = (/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main) @@ -7890,7 +7887,6 @@ "cWQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main) "cWR" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) "cWS" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/shuttle/research) -"cWT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "cWU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel{dir = 4; icon_state = "chapel"},/area/chapel/main) "cWV" = (/obj/structure/table/woodentable,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main) "cWW" = (/obj/item/weapon/storage/bible,/obj/structure/table/woodentable,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main) @@ -7908,7 +7904,6 @@ "cXi" = (/obj/structure/closet/l3closet/scientist,/obj/item/device/radio/intercom{frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor/plasteel{dir = 6; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTHEAST)"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "cXj" = (/obj/structure/closet/coffin,/obj/machinery/light/small,/turf/simulated/floor/plating,/area/chapel/main) "cXk" = (/obj/machinery/light/small{dir = 4},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/camera{c_tag = "Chapel - Funeral Parlour"; dir = 8; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main) -"cXl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "cXm" = (/obj/item/device/flashlight/lantern{pixel_y = 7},/obj/structure/table/woodentable,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main) "cXn" = (/obj/effect/landmark/start{name = "Chaplain"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main) "cXo" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f10"; dir = 2},/area/shuttle/research) @@ -7920,7 +7915,6 @@ "cXv" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{autoclose = 0; frequency = 1449; icon_state = "door_locked"; id_tag = "xeno_airlock_interior"; locked = 1; name = "Secure Lab Internal Airlock"; req_access_txt = "55"},/obj/machinery/embedded_controller/radio/airlock/access_controller{frequency = 1449; id_tag = "xeno_airlock_control"; pixel_x = -25; pixel_y = -10; req_access_txt = "55"; tag_exterior_door = "xeno_airlock_exterior"; tag_interior_door = "xeno_airlock_interior"},/obj/machinery/access_button{command = "cycle_interior"; master_tag = "xeno_airlock_control"; pixel_x = -25; req_access_txt = "55"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitepurplefull"; tag = "icon-whitehall (WEST)"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "cXx" = (/obj/machinery/camera{active_power_usage = 0; c_tag = "Bomb Test Site"; desc = "A specially-reinforced camera with a long lasting battery, used to monitor the bomb testing site. An external light is attached to the top."; dir = 8; invuln = 1; light = null; luminosity = 3; name = "Hardened Bomb-Test Camera"; network = list("Toxins","Research","SS13"); use_power = 0},/obj/item/target/alien{anchored = 1},/turf/simulated/shuttle/plating{dir = 4; icon_state = "warnplate"; luminosity = 2; nitrogen = 0.01; oxygen = 0.01; temperature = 2.7},/area/toxins/test_area) "cXz" = (/obj/machinery/smartfridge/secure/extract,/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitepurplefull"; tag = "icon-whitehall (WEST)"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) -"cXA" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/medical/research{name = "Research Division"}) "cXB" = (/turf/simulated/shuttle/wall{icon_state = "swall12"; dir = 2},/area/shuttle/research) "cXC" = (/obj/structure/grille,/obj/structure/window/full/shuttle,/turf/simulated/shuttle/plating,/area/shuttle/research) "cXD" = (/obj/structure/closet/crate,/turf/simulated/shuttle/floor,/area/shuttle/research) @@ -7967,7 +7961,6 @@ "cYu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "cYv" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "cYx" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless,/area/shuttle/research) -"cYy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/medical/research{name = "Research Division"}) "cYz" = (/obj/machinery/computer/shuttle/science,/turf/simulated/shuttle/floor,/area/shuttle/research) "cYA" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "aftstarboard"; name = "Aft-Starboard Solar Array"},/turf/simulated/floor/plating/airless{icon_state = "solarpanel"},/area/solar/starboard) "cYB" = (/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) @@ -8044,7 +8037,6 @@ "dab" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "dac" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen #2"; req_access_txt = "55"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "dae" = (/obj/machinery/camera{c_tag = "Head of Personnel's Office"; dir = 1; network = list("SS13")},/obj/structure/table/woodentable,/obj/item/weapon/storage/box/PDAs{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/ids,/obj/item/weapon/storage/box/ids,/turf/simulated/floor/wood,/area/crew_quarters/heads) -"daf" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "dag" = (/obj/machinery/door/poddoor{id_tag = "chapelgun"; name = "Chapel Launcher Door"; protected = 0},/obj/structure/fans/tiny,/turf/simulated/floor/plating,/area/chapel/main) "dah" = (/turf/simulated/shuttle/wall{icon_state = "swallc2"; dir = 2},/area/shuttle/escape) "dai" = (/turf/simulated/shuttle/wall{icon_state = "swall0"; dir = 2},/area/shuttle/escape) @@ -8096,7 +8088,6 @@ "dbr" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "dbs" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "dbt" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless/catwalk,/area/solar/starboard) -"dbu" = (/obj/machinery/power/apc{dir = 2; name = "Research Shuttle Dock APC"; pixel_y = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "dbv" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "dbw" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{pixel_x = 6; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/bottle/charcoal{pixel_x = -3},/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{pixel_x = -3; pixel_y = 8},/obj/item/weapon/reagent_containers/glass/bottle/charcoal{pixel_x = 6; pixel_y = 8},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = 3; pixel_y = -2},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = 4; pixel_y = 1},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = -2; pixel_y = 5},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = 2; pixel_y = 8},/turf/simulated/shuttle/floor,/area/shuttle/escape) "dbx" = (/obj/structure/table,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/item/weapon/retractor{pixel_x = 4},/obj/item/weapon/hemostat{pixel_x = -4},/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -27},/turf/simulated/shuttle/floor,/area/shuttle/escape) @@ -8105,7 +8096,6 @@ "dbB" = (/obj/structure/window/reinforced,/obj/machinery/door_control{id = "xenobio6"; name = "Containment Blast Doors"; pixel_x = 24; pixel_y = 24; req_access_txt = "55"},/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal,/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "dbD" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plasteel,/area/toxins/xenobiology{name = "\improper Secure Lab"}) "dbE" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 22; id = "syndicate_se"; name = "southeast of station"; width = 18},/turf/space,/area/space) -"dbF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"}) "dbI" = (/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen #5"; req_access_txt = "55"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "dbJ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/start{name = "Scientist"},/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) "dbK" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen #6"; req_access_txt = "55"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/toxins/xenobiology{name = "\improper Secure Lab"}) @@ -8287,7 +8277,6 @@ "dfl" = (/obj/structure/spacepoddoor,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 5},/area/engine/mechanic_workshop) "dfm" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 7; on = 1},/obj/machinery/vending/cola,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 5},/area/engine/mechanic_workshop) "dfn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/stool/bed/chair{dir = 4},/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/main) -"dfo" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/engine/gravitygenerator) "dfp" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/turf/simulated/shuttle/wall{tag = "icon-diagonalWall3"; icon_state = "diagonalWall3"; dir = 2},/area/shuttle/escape) "dfq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/effect/landmark/start{name = "Mechanic"},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 5},/area/engine/mechanic_workshop) "dfr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 10},/area/security/main) @@ -8326,7 +8315,6 @@ "dfZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "bluecorner"},/area/hallway/secondary/entry{name = "Arrivals"}) "dga" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/hallway/secondary/entry{name = "Arrivals"}) "dgb" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 2},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/double/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/hidden/scrubbers{dir = 9},/turf/simulated/floor/plasteel{dir = 2; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) -"dgc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "arrival"},/area/hallway/secondary/entry{name = "Arrivals"}) "dgd" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/door_control{desc = "A remote control-switch for the pod doors."; id = "mechpodbay"; name = "Pod Door Control"; pixel_x = 0; pixel_y = -24; req_access_txt = "70"},/turf/simulated/floor/engine,/area/engine/mechanic_workshop) "dge" = (/obj/structure/table,/obj/item/weapon/folder/red{pixel_x = 3},/obj/item/weapon/folder/white{pixel_x = -4; pixel_y = 2},/obj/item/weapon/book/manual/security_space_law{pixel_x = -4; pixel_y = 4},/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = -28},/turf/simulated/shuttle/floor4,/area/shuttle/escape) "dgf" = (/obj/machinery/door_control{desc = "A remote control-switch for the pod doors."; id = "escapepodbay"; name = "Pod Door Control"; pixel_x = -24; pixel_y = 0; req_access_txt = "13"},/turf/simulated/floor/engine,/area/hallway/secondary/entry{name = "Arrivals"}) @@ -8467,117 +8455,117 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaakIanvanwanxanyanzanAanBanCanDanEakyamtanGamvanIakyabqaaaaaaabqaaaaaaaaaakDakDakDamxalQanKanSanManNanOanPakHanQamCanRagBanTanWanUanVanZanXanYaonaoaaobaocaodaoeaofaogaohaoiaojaokdeUaoHaoLaooaopaheaoqalWaosapiapQajgapRaowakhaoxambaoyamcaozameaoAamgaoBaoCairairairairairaoDaoEaoFaoGapeaoGaaaabqaaaamkaoIaoJankaoJaoKamkabqaaaapgaoMapgasTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaehaoOaoPaeGaoQaoRaehaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaktaoSaktaoTaoUaoVaoWaktaoXaoYaoZapaapbapcapdaphakyabqapfapfalLapfapfaaaakDapSapSamxaqaaqHapjapkaplapmapnapoappapqappaprapsapsaptapuapvapwapxapxapyapzapAapBapCapDapEapFapGapHapIdeYdeXapLapMapNaheamoapPalWarMarOajgaipaowakhajpapTapUapVapWapXapYamgapZaqDairairairairairaqbafbaqcaoGaqdaqeaefaefabqamkaqfaqgaqhaqiaqjamkabqanoapgaqkapgansaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaehaqmaqnaeGaqpaqoaehaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaktaqqaqraqraqraqsaqtaktamuaqvapdakyaqxaqyaqzaqAakyapfapfaqBaqCanEajgajgakDaqFaqEamxamwarSaqTaqIaqJaqKaqLakHaqMaqNaqOagBaqPaqQaqRaxfaqYaqUaqVaqWakHaqXdfnaqZapCaraarbarcardarearfargalSalSarhaheaheajgariajgarjajgajgafbarkarlajpajparmarnaroarparparqapZaqDairairairairairaqbarrarsaoGaqeaoGaoGapeaoGamkartaruankarvarwamkabqapgapgaoMapgansaoGaoGaoGcKIacJaaaaaaaaaaaaaaaaaaaaaaaaaaaaflaeFarxaryarzaeFafgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarAarBaaaaaaarAaaaarAaaaaaaabqabqabqaaaaaaaaaaaaaaaabqaaaabqaaaabqaaaaktarCarDarEarFarGarHaktapdaqvapdapfarIapdapdapdarJapfarKarUamzarNajganHarWarParRaumazcaCTarVaorarXarYarZagBamKasaamKagBagBamKascamKagBarQaseasfasdashdfnasiapCapCaslasmasnasoarfaspasqasrassastastastasvaswasxasyaszaszasAasBasCasCasDasEasFasGasGasGasHaqDairairairairairaqbasIasJaoGarsasKaouasJasNamkasjasgasQasOasPamkabqansasUasVasWaoGauodgCbkjavNavNblzaaaaaaaaaaaaaaaaaaaaaaaaaaaaflaeFaeFaeFafgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarAarAabqabqarAarAarAabqaaaarAarAataarAarAaaaabqapfapfalLapfabqaaaabqabqabqabqabqapfalLaktaktatbatcatdaktaktaktaoXateaoZatfapbatgapdapdatiapfaoXaElaEjajgajgatlatmaquapOamxamxamxakDakDatpatqatrasSasRatuatsatvattatwazxatxagBatHanYamLakHatBdfnatCatDatEatFatGauHatIarfauOatKatKamOamOamOamOatLafbaeNatMaeNafbatNatOatPatQatRatSatTatUatVatWatXatYatZatZatZatZatZauaaubayvaoGasJasJasJasJaudamkaueaufaugauhavFamkabqansaujaukaulaoGdgCdgCbnGblAbvublBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaupabqarAabqaupabqarAarAabqarAarAarAarAarAaaaaaaaaaapfauqauCapfautausausausausausauuapfarKauqapfauwauxaoXauyauzapfauAauBauCapfarIatjauDauEarJapfauGaNEaFEajgauIatmakeakfaqwajgauLamxauMauNaqJatqapnauQauPauTauRauSauSauUauVauWauXaqUauYanYakHdfsdfravcauZaveavfaveavhaveaviavjavkavlavlavmavnamOatLafbavoavpavqavravravravravravsavtavuavvavvavvavvavvavwaoGaqGavyavzaoGaoGasJaoGavAawMavCasJavDavEavHavGawZavIavJamkapeansarTavLavMaoGdgCdgCblyavNavNbnHaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarAabqarAabqarAarAarAataabqabqabqarAarAabqaaaabqabqalLavQavRavSavTavUavUavUavUavUavVavWavXavYavZawaasuavUawcbflavUaweawfajgajgajgajgajgajgajgajgajgajgawgajgawhajgajgajgajgajgajgamxawiawjaqJatqatrasSavdawdasLawlawkawmaqUawnaqYawsawtawuasdasMdfvdfwawyawzawAawBawCawDawEawFatKawGawHawGawIamOawJawKawLaxjavqavrawNawOawPawoawRawSawTavvawUawVawWavvaoGaoGasJaubasJasIaoGayvaoGavzasJawXasJaoGawYayqamkamkaxaaxbamkayxansansaxdaxeaoGaoGbnIaxhaoGbplaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarAarAarAarAarAabqarAarAabqauparAarAabqabqabqabqapfapfaxiapfapfaxlaxkaxkaxkaxkaxkaxZapfapfapfapfaxmaxnaxoaxoaxoaxoaxpaxqajgaxraxsaxtaxuaxvaxwaxxaxyaxzaxAaxBaxCajgaxDaxEaxEaxEaxFamEaxGaxHaqJaxIaxJaxKaqYawpagBagBagBawrawqasdagBaxPawQakHakHamOaxLaxRaxSaxLamOaxNaxMamOaxOatKatKaxWaxWaxWamOamOatLafbdeeaAAdefavrayaaybayaawoaycaydayeayfaygayhayiavvathaoGaykaylaymaynaoGasJaoGaoGaoGayoaoGaoGaypbppayramkamkamkamkazrasIazGazFbTiaoGdfCdgCdfEaoGaoGaoGabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqarAarAarAarAarAarAarAarAarAarAarAayyarAabqaupapfapfapfayzayAapfabqabqabqabqabqabqabqabqabqabqabqapfaqBayBapdaoXapdaoXayDayEayFayHayGaAYajgajgajgaxTaxQaxQaxQaxUajgajgayMayNayOatnayMamEamEakDayQayRapnaySaySayTayUaySaySayVayUaySayWaySayVayXayYayZayUazaazbaySaySaySayUaySaOPamxazdazeazeazeazeakDatLafbaxYaWvavqavrazfazgazhavraziazjazkazlazmavvavvavvaznaoGasIasJawXasJaoGayvaoGazpaoGazqdfFazsbpmdfobpobqVbpqbqXbqWbqWbqWbqWdeSdgCdeVdgCdgCdgCaxgazHaxgaWwaWwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaupabqarAataarAarAarAarAazIabqarAarAarAarAarAarAazJazKazJazLazSapfapfabqaaaaaaaaaaaaaaaaaaaaaaaaabqapfapfapfapdaoXapdaoXazNazOazPazRatoaAYajgaaaabqaaaaaaaaaaaaaaaabqaaaaxEazUazVazWazXazYazeazZaAaaAbaAcaAdaAdaAeaAcaAdaAdaxVaAcaAhaAiaAdaAjaAkaAlaAdaAmaAnaAoaApaApaAqaAraAsaAtaAuaAvaAwaAxaAyaAzakDatLafbaxYaWxavqavraABaACaADayJaAFaAGaAHavvaAIaAJaAKavvaALaoGaoGaoGayoaoGaoGasJaoGasJaoGatAaxhaxhawYaANamkaxhaxhaxhaxhaxhaxhaxhaxhaxhayxaxhaxhaxhaxhaxhaAOaxhabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarAarAarAarAarAarAarAarAarAarAarAabqarAarAarAabqapfapfapfaAPazSapdapfaaaaAQaARaASaARaATabqabqabqabqapfaAUapfaAVavUavUavUaAWaAXajgaCEaAZaBaajgaaaaBbaBbaBbaBbaBbaBbaBbaaaayMaBcaBdaBeayMamEamEakDaBfaBgaBhaBiaBjaBkaBhaBlaBjaBgaBmaBnaBoaBpaBqaBraBsaBtaBuaBvaBwaBxaByaBwaBzaBAaBBaBCaBDaBEaBFaBGaBHakDatLaBIaBIaBIaBIavraBJaPWaBLaBNaBMaBOayeaBPaBQaBRaBSavvaBTaBUaBWaBWaBXaBWaBWaBWaBZaBWdgEaCaaCbaCcaCdaCeaCfaCgaChaCgaCiaCjaCkaCjaClaxhaxhaxhaCiaCjaClaCmaCmaCgabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqarAarAarAarAarAarAarAaCnarAabqabqabqabqapfaoXazSarIalLaaaaCoaCpaCqaCpaCoayKayKayKaCsaCsaCsaCsaCtaCsaCsaCuaCuaCuaCuaCvaCuaCwajgabqaBbaCxaCyaCzaCAaCBaBbaaaayMaCCaCCaCDayMaaaaaaakDayLaCGazwatJayLaCIazwakDayLaCJazwakDaCKamEaCLakDamEazzaCNamEamEaCOaCOaCPaCQaCRaCOaCOaCSakDakDakDakDakDatLaBIaQdaCUaQvavravravravravraCWaCXaCYazlazmavvavvavvaoGaCZasIarrasJasIaDadgIaxhaxhaxhaxhaxhaDbaDcaDdaDeaDfaWyaDfaDhaDiaDjaWzaDkaCjaDlaCjaDmaWzaDjaDiaCmaDnaDoabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqabqabqarAarAarAarAataarAarAarAaDparAarAarAarAabqaaaabqalLayBazSapdapfaaaaASaDqaDraDqaASayKaDsaDtaCsaDuaDvaDwaDxaDyaCsaDzaDAaDBaDCaDDaCuaCwajgaaaaBbaDEaDFaDGaDHaDIaBbaaaaxEaDJaCCaucayMaAfaAfamxaDMaDNaDOakDaDPaDNaDOakDaDQaDNaDOakDaDRaDSaDTakDaDUaDVaDWaDXaDYaCOaDZaEaaEbaEcaEdaEeaCSaEfaEgaEgaEgaEgaEiaBIaRtaEkaRyaBIaEmaEnaEmavvaEoaEpaEqaEraEsaEuaEuaEvaBWaEwaxhaxhaxhaxhaxhaxhaxhaExaExaEyaEzaEAaEBaECaEDaCgaCgaCgabqabqaEEaEFaDiaDiaDiaDiaDiaEGaEEaDiaEHaCgaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqarAarAarAarAarAarAarAabqarAabqabqarAarAabqabqapfapfauyazSapfapfaaaaCobxFaDqaDqaEIaEJaEKaEKaELaEMaENaEOaEPaEQasbaESaETaEUaEVaEWaCuaCwajgaaaaBbaEXaEYaEZaFaaFbaBbaaaayMaFcaCCaCCaFdaFeaFfamxaFgaDNaFhakDaFgaDNaFiakDaFgaDNaFjakDaFkaFlaFmakDaFnaFoaFpaFqaFraCOaFsaFtaFuaFvaFwaFxaCSaFyaFzaFzaFzaFAaFBaBIaTeaFDaThaBIaFFaFGaFGaFHaFIaFJaFKavvavvavvavvavvaoGaFLaxhaFMauraFOauvaFQaFRaFSaFTaFTaFTaFTaFUaFVaFWaFXaFYaCgaFZabqabqaaaaaaaaaabqabqaaaaaaabqaaaaaaaWAaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaarAarAarAarAarAabqabqabqarAarAarAabeaaaabqabqabqapfaAgaoXaoXaGbalLaaaaaaaASaDraDraDraASayKaGcaGdaGeaEMaEKaGfaGgaGhaCsaGiaGjaGkaGlaGmaCuaCwajgabqaBbaGnaGoaGpaGqaGraBbaaaayMaGsaGsaGsayMaAfauFamxaAEaCFaCramxaAEaCFaCramxaAEaCFaCramxaGxaCHaGzamxamxazzaGAamxaGBaCOaGCaGDaGEaGFaGGaGHaCSaGIajgajgajgaGJajgaBIaGKaGLaBIaBIaGMaGNaGOaGPaGQaGRaGSazlaGTaGUawWavvaGVaGWaxhaGXaGYaGZaGZaHaaCMaDcaHcaHdaHeaHeaHeaHfaHgaHhaHiaDLarAaMKaMJaOhaMJaMJaOhaMJaMJaOhaMJaMJaPwabqaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqabqabqabqabqabqabqabqabqaHkaHlaHkabfaaaabqaaaabqapfaHmaHnanEazSapfapfaaaaCoaHoaHpaHqaCoayKayKayKaCsaHraEKaHsaGgaHtaCsaHuaHvaHwaHxaHyaCuaCwajgaaaaBbaHzaHAaHBaHCaBbaBbaaaaHDaHEaHEaHEaHFaHGaHHaHGaHIaHJaHIaHKaHIaHJaHIaHLaHIaHJaHMaHNaHOaHPaHQaFCaHSaHTaHUamxazeaCSaHVaHWaHXaHYaHZaIaaCSaGIaBIaIcaIdaIeaIfaIfaIgaIhaIiaIjaIkaIlaImaInaIoaIpayeaIqaIraIsaItavvasJaGWaxhaIuaIvaIwaIxaIyaIzaIAaIBaICaIDaIDaIDaIEaIFaHhaHiaDLaMIaPxarAaPyarAarAaPyarAarAaPyarAarAaPxaMIaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabqaaaaaaabqabqaaaaHkaIGaHkabqabqabqabqabqapfauJapdapdaIIaIJapfaaaaIKaARaILaARaIMabqabqabqayKaINaIOaIPaIQaIRaCsaISaITaIUaIVaIWaCuaCwajgaaaabqaaaaGaaIYaGuaaaabqaaaaHGaAfaAfaAfaHGaHGaJaaJbaJcaJdaJeaJfaJgaJhaJhaJiaJhaJjaJgaJkaJlaJmaJnaERaJpaJqaJramxazeaCSaCSaJsaJtaCSaJuaCSaCSaGIaBIaBIaBIaJvaJwaJxaJyaJzaJAaJBaJCaJDaJEaJFaJFaJGaJHavvavvavvavvavvaubaGWaxhaJIaJJaJKaJLaJMaGvaJOaJPaJQaJRaJSaJTaJUaJVaHhaHiaDLaDLaPxaJWaaaaaaaaaaaaaJWaaaaaaaJWarAaPxabqaCgaJXabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabqaaaaaaaaaabqaaaaHkaHlaHkaHkaGwaGwaGwaHkaHkaHkaHkaHkbXHaKaapfaaaaaaaaaaaaaaaaaaaaaaaaabqayKaKbaKcaKdaKeaKfaCsaJoaKhaCuaCuaCuaCuaKiajgaKjaGyaHjaHbaKgaHRaIZaIXaKjaHGaKraKsaKsaKtaKuaKvaKwaKxaKyaKzaKAaKBaTiaKDaKEaKCaKFaKGaKHaKIaKJaKKaJNaKMaKNaKOamxazeaKPaCSaKQaKRaCSaKSaKTaFzaKVaBIaKWaKXaKYaKZaBIaLaaLbaLcaBIaLdaLeaLfaLgaLfaLhaLiaLjaLkaLlaLmavvasJaGWaxhaLnaLoaLpaLqaLraFRaLsaLtaJQaLuaCgaCgaLvaLwaCgaDLaDLaDLaPxaaaaaaaaaaaaaaaaLxaaaaaaaaaaTMaRgabqaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaabqaHkaHkaLBaLzaLAaLBaLBaLBaLDaLEaLFaLGaHkaHkazSapfaaaaLHaLIaLIaLIaLIaLIaLJabqaCsaCsaCsauKazTaCsaCsaLMaLNaLOaLPaLQaLRaLSaLTaLUaLVaLWaLXaLYaLWaLZaMaaMbaHGaMcaMdaMeaMfaMfaKkaMfaMfaMfaMfaMfaMfaMfaMfaKkaMfaMhaMiaMjaMkaMkaMkaMlaMlaMlaMlaMlaMkaMmaMkaMnaMnaMnaMnaMoaMnaGIaBIaBIaBIaMpaMqaBIaMraBIaMsaBIaMtaMuaMvazlaMwaMxaMyazlaMzaMAaMBavvaMCaGWaxhaCgaCgaCgaCgaCgaFRaMEaMFaJQaMGaCgaMHaXGaWubssaWuddkaDLaPxaaaaaaabqabqabqabqabqaaaaaaarAaPxarAaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaaHkaMLaMLaMLaLBaLBaLBaLBaLBaLBaMLaMLaMMaHkazSalLaaaaMNaMOaMOaMOaMOaMOaMNabqabqaKlaMQaMRaMSaMTaMUaMVaMWaMXaMYaMZaNaaNbaNcaLRaNdaNeaNfaNgaNhaNiaNjaNkaNlaNmaNnaNoaKmaaaaaaaaaabqaaaaaaaaaabqaaaaaaaaaaKoaNraNsaNtaMkaNuaNvaNwaNxaNyaNzaNAaNBaNCaMkaNDaUfaNFaNGaNHaMnaNIaBIaNJaNKaJwaMqaBIaNLaBIaNMaBIaNNaNOaNPaNQaNQaNQaNQaNQaNQaNQaNQaNQaoGaNRaxhaNSaNTaNUaNVaCgavgaIvaMFaNXaNYaNZaOaaObaOcaOdaOeddRaDLaPxaJWabqabqaOgddSaOiabqaOjaaaarAaPxataaCgaDoabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaaaaUUaUUaUUaUUaUUaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaHkaOkaLBaLBaLBaLBaLBaLBaLBaLBaMLaMLaMLaOlaOmapfaaaaMNaOnaMOaMOaMOaMOaMNaKpaKlaKlaOpaOqaOraOraOsaOtaOuaOvaOwaOxapfaOyapfapfapfapfaOzaOAavxaOCaKnavxaOAaOAaOAaOAaOFaaaaaaaOGaOGaOGaOGaOGaOGaOGaaaaaaaMfaOHaOIaOJaOKaOLaNAaOMaONaOOavBaOQaORaOSaMkaOTaOUaOVaOWaOXaMnaOYaBIaBIaBIaOZaOZaBIaBIaBIaBIaBIaPaaPbaPcaNQaPdaPeaPfaPgaPhaPiaPjaNQaPkaGWaxhaNTaNTaPlaOdaPmaGYaPnaPoaPpaPqaCgaPraPsaPtaPuaPvddUaKLddVaaaaaaabqddWcspaPzabqaaaaaaaTMaRgaMIaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaaaaaaaaaaaaaaabdabdabdabdabdabdabdaXHaXIaWBaXJaWBaXKaXOabdabdabdabdabdabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaabqaHkaPAaLBaLBaLBaLBaPBaLBaLBaLBaLBaMLaPDaHkaGbapfaaaaMNaMOaMOaMOaMOaMOaPEawbavKawbaPHaPIaPJaPKaPLaPMaPNaPOaPPaPQaPRaPSaPTaPTaPTaPTaPVaOAaYOaPXaPYaPZaQaaQbaQcbeBaQeaQfaQgaQgaQhaQiaQjaQkaQlaQmaQmaQnaQoaQpaKGaNtaMkaQqaNAaQraNAaQsaNAaQtaNAaNAaMkaQubeLaOVaQwaQxaMnaQyaQzaQAaQBaQCaQDaQEaQFaQGaQHaQIaQJaQKaQLaNQaQMaQNaQNaQNaQOaQPaQQaNQawvaGWaxhaQSaQSaQTaOdaPmaJJaQUaQVaQWaQXaQYaQZaRaaRbaRcaRdaOfaDLaPxaaaaReabqaRfddXaRhabqabqaJWarAaPxabqaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaaaaUUaUUaUUaUUaUVaXNbbXbbWbbYbbWbbZbgUaUVaUUaUUaUUaUUaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGwaLBaLBaLBaLBaLBaLBaLBaLBaLBaLBaRiaHkaHkazSapfabqaMNaMOaMOaMOaMOaMOaRkaRlaRmaRlaRnaPIaRoaRoaRpaRoaOuaRqaRraRsapfapfapfapfapfapfazSaOAbgkaRuaRvaRwaRxaRxaRxbgyaOFaaaaOGaRzaRAaRAaRAaRAaRAaRBaOGaaaaMfaRCaMiaMjaMkaRDaREaRFaNAaRGaNAaRHaRIaNAaRJaRKaRLaRMaRNaROaMnaRPaRQaRRaRRaRRaRSaRTaRTaRUaRUaRVaRWaRXaRYaRZaSaaSbaSbaSbaScaSdaSeaNQaSfaGWaxhaQSaSgaShaSiaCgaSjaIvaSkaJQaSlaCgaSmaSnaSoaSoaSoaSpaDLaPxaaaaaaabqabqabqabqabqaaaaaaarAaPxabqaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbcbbcabcabcabcabcabzhbzhbdJbzhbzhbcabcabcabcabcaaXKaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSqaSraSsaaaaGwaLBaLBaLBaLBaLBaLBaStaSuaSuaSvaSwaHkaqBazSapfabqaMNaMOaMOaMOaMOaSxaMNaKpaKlaKlaSyaPIaSzaSAaSBaSCaSDaSEaSFaSGaLKaSIaSJaSKaSLapfaSMaOAaSNaRuaSOaSPaSQaSQaSRaSSaOFaaaaMgaSUaRAaSVaSWaSXaRAaSYaMgaaaaMfaMhaMiaMjaMkaSZaTaaTbaTcaTdaTcbjbaTfaTgaMkbmIaxcaTjaTkaTlaMnaTmaTnaToaTpaTqaTraTsaTtaTuaTvaTwaTxaTyaTzaTAaTBaTCaTDaTEaTFaTGaTHaNQasIaGWaxhaCgaCgaCgaCgaCgaFRaTIaTJaTKaTLaCgaCgaLvaLwaCgaDLaDLaDLaPxaaaaaaaaaabqaaaaaaaaaaaaaaaaTMaRgabqaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbdKbdNbdNbdNbdNbdNbdNbdObdNbdNbdNbdNbdNbdNbdPbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGaTNbBmaTNacJaHkaLBaLBaLBaLBaLBaLBaLBaLBaLBaTPaTQaHkauAaTRapfaaaaMNaMOaMOaMOaMOaMOaTSaRlaTTaRlaRnaPIaRoaRoaRpaRoaOuaOvaTUaTVaTWaTXaTYaTZaUaapfaUbaUcaUdaRuaRuaUebmJaRuaUgaUhaOFaaaaMPaUjaUkaUlaUmaUlaUkaUnaNpaaaaMfaMhaUpaUqaMkaNqaNqaNqaNqaUsaNqaNqaOoaNqaMkaMnaOBaUvaSHaMnaMnaUxaTnaTpaTqaUyaUzaTnaToaTqaTqaTpaUAaUBaUCaUDaUEaSbaSbaUFaScaUGaUHaNQaUIaGWaxhaUKaULaUMaSTaUOaUPaIvaSkaJQaUQaJSaURaUSaUTaHhaHiaDLaDLaPxaJWaaaaaaaJWaaaaaaaaaaaaaJWarAaPxabqaCgaJXabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbeXbeXbeXbeXbeXbdObeXbeXbeXbeXbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacKIaTNaUWaTNcKIaHkaPAaMLaLBaLBaLBaLBaLBaLBaLBaUYaUZaHkaVaaAWapfaaaaMNaMOaMOaMOaMOaMOaVbayjaxXayjaVeaPIaRoaVfaVgaVhaViaVjaOuaVkaVlaVmaVnaVoaVpapfaVqaOAaVraRuaRubmKaVtaVuaUgaVvaOFaaaaOGaVwaVxaUkaVyaRAaVzaVAaOGaaaaMfaVBaOIaOJaVCaVDaVEaVEaVEaNCaVEaVEaVFaVGaMkaVHaVIaVJaVKaVLaVMaVKaVNaVOaVOaVPaVQaVRaVSaVTaVUaVVaVSaVWaVXaNQaVYaVZaWaaWbaWcaWdaWeaNQasJaWfaxhaWgaWhaWiaTOaWkaWlaWmaWnaWoaWpaWqaWqaWraWsaHhaWtaDLbeZaPxarAddZarAarAddZarAarAddZarAarAaPxaMIaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaabdabdaXHbdMbeWbeXbeXbeXbeXaXLaXLaXMaXLaXLbeXbeXbeXbeXbeYbdMaXOabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaWDaWEaWFaWGaWDaHkaLBaMLaWHaWIaWJaLBaLBaLBaLBaUYaWKaHkazSapdalLaaaaMNaOnaMOaMOaMOaMOaMNaKpaKlaKlaWLaPIaRoaRoaRpaRoaOuaVjaWMaWNaVlaWOaWPaWQaWRapfazSaOAaWSaWTaWTaWUaWVaRuaUgaWWaOFabqaOGaOGaOGaWXaWYaWZaOGaOGaOGabqaMfaOHaXaaMjaXbaXcaVEaVEaVEaXdaVEaVEaXeaNCaXbaQCaXfaXgaXhaToayuaToaTnaTpaToaXjaToaXkaTpaTqaToaTqaTpaXlaXmaNQaXnaXoaXpaXqaXraPiaQQaNQaXsaGWaxhaXtaXuaXvaXwaXxaXyaXzaXAaXBaXCaXDaXDaXEaXFaHhaHiaDLarAdeaaMJdebaMJaMJdebaMJaMJdebaMJaMJdecabqaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaabdaaabgMbdMbeWbeXbeXaXLaXLaXLaXLbfabpvaXLaXLaXLbeXbeXbeYbdMbMnaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaWDayCaXQaXRaXSaHkaXTaMLaXUaXVaXWaMLaMLaMLaXXaXYaXZaHkaYaaYbapfabqaYcaYdaMOaMOaMOaYeaYfabqabqaKlaWLaYgaPJaPKaYhaYiaYjaYkaYlaYmaYnaYnaYnaYnaYnapfaYoaYpaYqaYraYraYsaYtaYuaYvaYwaUoaaaaaaaaaaOGaOGaYyaOGaOGaaaaaaaaaaKoaNraYzaMjaYAaYBaYCaYDaYEaNCaNCaYFaYGaNCaYAaQCaYHaYIaYJaYKaYLaYKaYMaYNbmLaYPaYKaYKaYKaYKaYKaYKaYQaYRaYSaNQaNQaNQaNQaYTaNQaNQaNQaNQaoGaGWaxhaYVaYUaYUaSTaYWaYXaYYaYZaZaaZbaZcaZdaZeaZfaFXaZgaCgaaaabqabqaaaaaaaaaaaaabqaaaaaaabqabqarAaDiaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdclHbcbbfcbfbbgNaXLaXLbdIbdIbdIbgPbgObdIbdIaXLaXLbgNbgQbgSbgRaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaWDaWDaZiaZjaWDaWDaWDaZkaWDaWDaZlaZmaWDaWDaWDaZnaWDaWDaZoapfapfabqaZpaZqaZraZraZraZqaZsabqabqaZtaZuaPIaRoaRoaRpaRoaOuaZvaOuaZwaYnaZxaZyaZzaZAapfazSaOAaZBaZCaZDaZEaZFaZGaZHaZIaOFaZJaUraZJaZLaZMaZNaZOaZLaZJaUraZJaMfaZPaZQaZRaZSaMkaMkaMkaMkaZTaZUaZVaNCaZWaMkaQCaZXaTraZYaZZaZZaZZaZZaoGaoGaoGbaababbacbadbaebafaZZbagbagaoGbahazyazybaiazyazyazybakazybalaxhbambambambambanbaobapbaqbarbasbatayIbaubavaCgaCgaCgabqabqbawbaxaDiaDiaDiaDiaDiaDibawaDibayaCgaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaabdaXHbgTbicbeXbeXaXLbdIbidbifbiebihbigbiibidbdIaXLbeXbeXbijbgTaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaUNbaAbaBbaCbaDbaEbaBbaFbaGbaHbaGbaIbaJbaGbaKbaLbaMbaNbaOapfaaaaaabaPbaQbaQbaQbaRaaaabqaZtbaSaWLaPIaRoaRobaTbaUaOubaVbaWbaXbaYbaZbbabbbbbcapfazSaOAaOAaOAavxavxayPaOFbbebbeaOFbbgbbhbbiaZLbbjbbkbblaZLbbmbbnbbobbpbbqbbrbbsbbtbbubbvbbwaMkaMkaYAaLLaYAaMkaMkayubbybbzayubbAbbBbbCbbDbbEbbFaoGaoGaoGaoGbbGaoGaoGaoGaoGaoGaoGaGWasIasJbbHbbHbbHbbHbbHbbHbbHbambbIbbJbbKbamazobbMbambbNbbOaFRaFRazAbbQbbRaDfbbSaDfbbTaDibbUaDiaCiaCjbbVaCjaClaDibbUaDiaCmaDnaDoabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabdaXHbdMbeWbeXaXLaXLbdIbikbilbdLbnQbimbjPbjObdIaXLaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaUNbcdbcebcebcfbcebcebcebcgbchbcibcjbckbckbckbclbcmbcnbcoapfaaaaaaabqabqaaaaaaabqabqabqaZtbcpbcqbcrbcsaRobctbcubcvbcwbcxbcybczbcAbcBbcCbcDapfazBbcFbcGbcHbcIbcJbcKbcLbcMbcNbcObcPbcQbcPbcRbcSbcTbcUbcVbcPbcWbcXbcXbcYbcZbdabcXbcXbdbbdcbdcbdcbddbdebdcbdcbdfbdcbdgbdhbdcbdcbdcbdibdjaoGbdkbdobdmbdnbdobdpbdobdqbdobdrazybakbalaubasJbbHbdsbdtbdubdvbdwbdxbambdybdzbdzbdAbdzbdBbambdCbarbdDbdEbdEbdEbdEbdEbdFaCgbdGaCjbdHaCjaDmaCgaCgaCgbdGaCjaDmaCmaCmaCgabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXaXLaXLbdIbjQbilbdIbjRbdIbjTbjSbdIbdIaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaUNaUNbdQaUNaWDaUNbdRaUNbcdbcebdSbdTaUNbdRaUNbdUbdVbdWbdXapfapfapfapfalLalLalLapfapfapfaZtbdYbdZbdZbdZbdZbeaaRobebbecbedbeeaYnaYnaYnaYnaWjapfapfbegapfapfbehbeibejbekbelbembenbekbelbeobepbembeqbekbekbekbelbekbekberbesbekbekbekbekbekbekbekbetbeubekbekbenbevbewbekbekbekbekbexbeybezbezbezbeAbezbezbezaoGbmMaoGaGWaoGaoGbeCbeCbeCbeCbeDbeEbeEbeFbeGbeHbambeIbeJbeKbmNbeMbeNbambeObePbeQbdEbeRbeSbeTbdEbeUaCgaCgaCgaCgaCgaCgaCgazMaCgaCgaCgaCgaCgaLwaCgabqarBbjUabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabdaXHbdMbeWbeXaXLaXLbjWbjVbjYbjXblFblDblIblGblJbdIaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarAarBaaaaaaarAaaaarAaaaaaaabqabqabqaaaaaaaaaaaaaaaabqaaaabqaaaabqaaaaktarCarDarEarFarGarHaktapdaqvapdapfarIapdapdapdarJapfarKarUamzarNajganHarWarParRaumazcaCTarVaorarXarYarZagBamKasaamKagBagBamKascamKagBarQaseasfasdashdfnasiapCapCaslasmasnasoarfaspasqasrassaEgaEgaEgastasualfaswasvasvasxasBasCasCasDasEasFasGasGasGasHaqDairairairairairaqbasIasJaoGarsasKaouasJasNamkasjasgasQasOasPamkabqansasUasVasWaoGauodgCbkjavNavNblzaaaaaaaaaaaaaaaaaaaaaaaaaaaaflaeFaeFaeFafgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarAarAabqabqarAarAarAabqaaaarAarAataarAarAaaaabqapfapfalLapfabqaaaabqabqabqabqabqapfalLaktaktatbatcatdaktaktaktaoXateaoZatfapbatgapdapdatiapfaoXaElaEjajgajgatlatmaquapOamxamxamxakDakDatpatqatrasSasRatuatsatvattatwazxatxagBatHanYamLakHatBdfnatCatDatEatFatGauHatIarfauOatKatKamOamOamOamOayGafbasyatMaeNafbatNatOatPatQatRatSatTatUatVatWatXatYatZatZatZatZatZauaaubayvaoGasJasJasJasJaudamkaueaufaugauhavFamkabqansaujaukaulaoGdgCdgCbnGblAbvublBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaupabqarAabqaupabqarAarAabqarAarAarAarAarAaaaaaaaaaapfauqauCapfautausausausausausauuapfarKauqapfauwauxaoXauyauzapfauAauBauCapfarIatjauDauEarJapfauGaNEaFEajgauIatmakeakfaqwajgauLamxauMauNaqJatqapnauQauPauTauRauSauSauUauVauWauXaqUauYanYakHdfsdfravcauZaveavfaveavhaveaviavjavkavlavlavmavnamOayGafbaszavpavqavravravravravravsavtavuavvavvavvavvavvavwaoGaqGavyavzaoGaoGasJaoGavAawMavCasJavDavEavHavGawZavIavJamkapeansarTavLavMaoGdgCdgCblyavNavNbnHaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarAabqarAabqarAarAarAataabqabqabqarAarAabqaaaabqabqalLasAavoatLazLapdapdapdapdapdbMKavQavRaoZavWavSatkapdavYavXapdatkaxqajgajgajgajgajgajgajgajgajgajgawgajgawhajgajgajgajgajgajgamxawiawjaqJatqatrasSavdawdasLawlawkawmaqUawnaqYawsawtawuasdasMdfvdfwawyawzawAawBawCawDawEawFatKawGawHawGawIamOayGawaavZaxjavqavrawNawOawPawoawRawSawTavvawUawVawWavvaoGaoGasJaubasJasIaoGayvaoGavzasJawXasJaoGawYayqamkamkaxaaxbamkayxansansaxdaxeaoGaoGbnIaxhaoGbplaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarAarAarAarAarAabqarAarAabqauparAarAabqabqabqabqapfapfawcapfapfaxlaxkaxkaxkaxkaxkaxZapfapfapfapfaxmaxnaxoaxoaxoaxoaxpaxqajgaxraxsaxtaxuaxvaxwaxxaxyaxzaxAaxBaxCajgaxDaxEaxEaxEaxFamEaxGaxHaqJaxIaxJaxKaqYawpagBagBagBawrawqasdagBaxPawQakHakHamOaxLaxRaxSaxLamOaxNaxMamOaxOatKatKaxWaxWaxWamOamOayGafbdeeaAAdefavrayaaybayaawoaycaydayeayfaygayhayiavvathaoGaykaylaymaynaoGasJaoGaoGaoGayoaoGaoGaypbppayramkamkamkamkazrasIazGazFbTiaoGdfCdgCdfEaoGaoGaoGabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqarAarAarAarAarAarAarAarAarAarAarAayyarAabqaupapfapfapfayzatkapfabqabqabqabqabqabqabqabqabqabqabqapfaqBayBapdaoXapdaoXayDayEayFayHayGaAYajgajgajgaxTaxQaxQaxQaxUajgajgayMayNayOatnayMamEamEakDayQayRapnaySaySayTayUaySaySayVayUaySayWaySayVayXayYayZayUazaazbaySaySaySayUaySaOPamxazdazeazeazeazeakDayGafbaxYaWvavqavrazfazgazhavraziazjazkazlazmavvavvavvaznaoGasIasJawXasJaoGayvaoGazpaoGazqdfFazsbpmawebpobqVbpqbqXbqWbqWbqWbqWdeSdgCdeVdgCdgCdgCaxgazHaxgaWwaWwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaupabqarAataarAarAarAarAazIabqarAarAarAarAarAarAazJazKazJazLatkapfapfabqaaaaaaaaaaaaaaaaaaaaaaaaabqapfapfapfapdaoXapdaoXazNazOazPawfatoaAYajgaaaabqaaaaaaaaaaaaaaaabqaaaaxEazUazVazWazXazYazeazZaAaaAbaAcaAdaAdaAeaAcaAdaAdaxVaAcaAhaAiaAdaAjaAkaAlaAdaAmaAnaAoaApaApaAqaAraAsaAtaAuaAvaAwaAxaAyaAzakDayGafbaxYaWxavqavraABaACaADayJaAFaAGaAHavvaAIaAJaAKavvaALaoGaoGaoGayoaoGaoGasJaoGasJaoGatAaxhaxhawYawJamkaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhayxaxhaxhaxhaxhaxhaAObreabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarAarAarAarAarAarAarAarAarAarAarAabqarAarAarAabqapfapfapfaAPatkapdapfaaaaAQaARaASaARaATabqabqabqabqapfaAUapfaAVavUavUavUaAWaAXajgawKaAZaBaajgaaaaBbaBbaBbaBbaBbaBbaBbaaaayMaBcaBdaBeayMamEamEakDaBfaBgaBhaBiaBjaBkaBhaBlaBjaBgaBmaBnaBoaBpaBqaBraBsaBtaBuaBvaBwaBxaByaBwaBzaBAaBBaBCaBDaBEaBFaBGaBHakDayGaBIaBIaBIaBIavraBJaPWaBLaBNaBMaBOayeaBPaBQaBRaBSavvaBTaBUaBWaBWaBXaBWaBWaBWaBZaBWdgEaCaaCbaCcaCdawLaCfaCgaChaCgaCiaCjaCjaCkaCjaxiaxhaxhaCgaCiaCjayAaCjaClaCgabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqarAarAarAarAarAarAarAaCnarAabqabqabqabqapfaoXatkarIalLaaaaCoaCpaCqaCpaCoayKayKayKaCsaCsaCsaCsaCtaCsaCsaCuaCuaCuaCuazRaCuaCwajgabqaBbaCxaCyaCzaCAaCBaBbaaaayMaCCaCCaCDayMaaaaaaakDayLaCGazwatJayLaCIazwakDayLaCJazwakDaCKamEaCLakDamEazzaANamEamEaCOaCOaCPaCQaCRaCOaCOaCSakDakDakDakDakDayGaBIaQdaCUaQvavravravravravraCWaCXaCYazlazmavvavvavvaoGaCZasIarrasJasIaDadgIaxhaxhaxhaxhaxhaDbaDcaCmaCeaDfaWyaDfaDhaDiaDiaDjaWzaDkaCjaDlaCjaDmaWzaDjaDiaCvaDnaCgabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqabqabqarAarAarAarAataarAarAarAaDparAarAarAarAabqaaaabqalLayBatkapdapfaaaaASaDqaDraDqaASayKaDsaDtaCsaDuaDvaDwaDxaDyaCsaDzaDAaDBaCEaCNaCuaCwajgaaaaBbaDEaDFaDGaDHaDIaBbaaaaxEaDJaCCaucayMaAfaAfamxaDMaDNaDOakDaDPaDNaDOakDaDQaDNaDOakDaDRaDSaDTakDaDUaDVaDWaDXaDYaCOaDZaEaaEbaEcaEdaEeaCSaEfaEgaEgaEgaEgaDdaBIaRtaEkaRyaBIaEmaEnaEmavvaEoaEpaEqaEraEsaEuaEuaEvaBWaEwaxhaxhaxhaxhaxhaxhaxhaExaExaEyaEzaEAaEBaDeaEDaCgaCgaCgabqabqaDiaEEaEFaDiaDiaDiaDiaDiaEGaEEaDiaDCbbTaCgaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqarAarAarAarAarAarAarAabqarAabqabqarAarAabqabqapfapfauyatkapfapfaaaaCobxFaDqaDqaEIaEJaEKaEKaELaEMaENaEOaEPaEQasbaESaETaEUaETaEWaCuaCwajgaaaaBbaEXaEYaEZaFaaFbaBbaaaayMaFcaCCaCCaFdaFeaFfamxaFgaDNaFhakDaFgaDNaFiakDaFgaDNaFjakDaFkaFlaFmakDaFnaFoaFpaFqaFraCOaFsaFtaFuaFvaFwaFxaCSayGalWalWalWapPalWaBIaTeaFDaThaBIaFFaFGaFGaFHaFIaFJaFKavvavvavvavvavvaoGaFLaxhaFMauraFOauvaFQaFRaFSaFTaFTaFTaFTaFUaDDaFWaFXaFYaCgaFZabqaaaabqaaaaaaaaaabqabqaaaaaaabqaaaaWAaEibbTaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaarAarAarAarAarAabqabqabqarAarAarAabeaaaabqabqabqapfaAgaoXaoXaECalLaaaaaaaASaDraDraDraASayKaGcaGdaGeaEMaEKaGfaGgaGhaCsaGiaGjaGkaEHaGmaCuaCwajgabqaBbaGnaGoaGpaGqaGraBbaaaayMaGsaGsaGsayMaAfauFamxaAEaCFaCramxaAEaCFaCramxaAEaCFaCramxaGxaCHaGzamxamxazzaGAamxaGBaCOaGCaGDaEVaGFaGGaGHaCSayGajgajgajgaFyajgaBIaGKaGLaBIaBIaGMaGNaGOaGPaGQaGRaGSazlaGTaGUawWavvaGVaGWaxhaGXaGYaGZaGZaHaaCMaDcaHcaFAaFzaFzaFzaFBaHgaFVaHiaDLarAaMKaMJaMJaOhaMJaMJaOhaMJaMJaOhaMJaMJaPwaWAaGbaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqabqabqabqabqabqabqabqabqaHkaHlaHkabfaaaabqaaaabqapfaHmaHnanEatkapfapfaaaaCoaHoaHpaHqaCoayKayKayKaCsaHraEKaHsaGgaHtaCsaHuaHvaHwaGlaHyaCuaCwajgaaaaBbaHzaHAaHBaHCaBbaBbaaaaHDaHEaHEaHEaHFaHGaHHaHGaHIaHJaHIaHKaHIaHJaHIaHLaHIaHJaHMaHNaHOaHPaHQaFCaHSaHTaHUamxazeaCSaHVaHWaEaaGIaGEaIaaCSayGaBIaIcaIdaHdaGJaGJaHeaIhaIiaIjaIkaIlaImaInaIoaIpayeaIqaIraIsaItavvasJaGWaxhaIuaIvaIwaIxaIyaIzaIAaIBaHfaIDaIDaIDaIEaIFaHhaHiaDLaMIaPxarAarAaPyarAarAaPyarAarAaPyarAarAaPxaWAaHxaCgaDoabqaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabqaaaaaaabqabqaaaaHkaIGaHkabqabqabqabqabqapfauJapdapdaHXaIJapfaaaaIKaARaILaARaIMabqabqabqayKaINaIOaIPaIQaIRaCsaISaITaIUaHYaIWaCuaCwajgaaaabqaaaaGaaIYaGuaaaabqaaaaHGaAfaAfaAfaHGaHGaJaaJbaJcaJdaJeaJfaJgaJhaJhaJiaJhaJjaJgaJkaJlaJmaJnaERaJpaJqaJramxazeaCSaCSaJsaJtaCSaHZaCSaCSayGaBIaBIaBIaJvaJwaJxaIeaJzaJAaJBaJCaJDaJEaJFaJFaJGaJHavvavvavvavvavvaubaGWaxhaJIaJJaJKaJLaJMaGvaJOaJPaJQaJRaJSaJTaJUaJVaHhaHiaDLaDLaPxarAaJWaaaaaaaaaaaaaJWaaaaaaaJWarAaPxaIfaGbaCgaLwabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabqaaaaaaaaaabqaaaaHkaHlaHkaHkaGwaGwaGwaHkaHkaHkaHkaHkapdatkapfaaaaaaaaaaaaaaaaaaaaaaaaabqayKaKbaKcaKdaKeaKfaCsaJoaKhaCuaCuaCuaCuaKiajgaKjaGyaHjaHbaKgaHRaIZaIXaKjaHGaKraKsaKsaKtaKuaKvaKwaKxaKyaKzaKAaKBaTiaKDaKEaKCaKFaKGaKHaKIaKJaKKaJNaKMaKNaKOamxazeaKPaCSaKQaKRaCSaIgaIIaICaIVaBIaKWaKXaKYaKZaBIaLaaLbaLcaBIaLdaLeaLfaLgaLfaLhaLiaLjaLkaLlaLmavvasJaGWaxhaLnaLoaLpaLqaLraFRaLsaLtaJQaLuaCgaCgaLvaLwaCgaDLaDLaDLaPxarAaaaaaaaaaaaaaaaaLxaaaaaaaaaaTMaRgaIfaGbaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaabqaHkaHkaLBaLzaLAaLBaLBaLBaLDaLEaLFaLGaHkaHkatkapfaaaaLHaLIaLIaLIaLIaLIaLJabqaCsaCsaCsauKazTaCsaCsaLMaLNaLOaLPaLQaLRaLSaLTaLUaLVaLWaLXaLYaLWaLZaMaaMbaHGaMcaMdaMeaMfaMfaKkaMfaMfaMfaMfaMfaMfaMfaMfaKkaMfaMhaMiaMjaMkaMkaMkaMlaMlaMlaMlaMlaMkaMmaMkaMnaMnaMnaMnaJuaMnaJyaBIaBIaBIaMpaMqaBIaMraBIaMsaBIaMtaMuaMvazlaMwaMxaMyazlaMzaMAaMBavvaMCaGWaxhaCgaCgaCgaCgaCgaFRaMEaMFaJQaMGaCgaMHaXGaWubssaWuddkaDLaPxarAaaaaaaabqabqabqabqabqaaaaaaarAaPxaWAaGbaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaaHkaMLaMLaMLaLBaLBaLBaLBaLBaLBaMLaMLaMMaHkatkalLaaaaMNaMOaMOaMOaMOaMOaMNabqabqaKlaMQaMRaMSaMTaMUaMVaMWaMXaMYaMZaNaaNbaNcaLRaNdaNeaNfaNgaNhaNiaNjaNkaNlaNmaNnaNoaKmaaaaaaaaaabqaaaaaaaaaabqaaaaaaaaaaKoaNraNsaNtaMkaNuaNvaNwaNxaNyaNzaNAaNBaNCaMkaNDaUfaNFaNGaJXaMnaKaaBIaNJaNKaJwaMqaBIaNLaBIaNMaBIaNNaNOaNPaNQaNQaNQaNQaNQaNQaNQaNQaNQaoGaNRaxhaNSaNTaNUaNVaCgavgaIvaMFaNXaNYaNZaOaaObaOcaOdaOeddRaDLaPxarAaJWabqabqaOgddSaOiabqaOjaaaarAaPxaWAaKSaCgaDoabqabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaaaaUUaUUaUUaUUaUUaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaHkaOkaLBaLBaLBaLBaLBaLBaLBaLBaMLaMLaMLaOlaKTapfaaaaMNaOnaMOaMOaMOaMOaMNaKpaKlaKlaOpaOqaOraOraOsaOtaOuaOvaOwaOxapfaOyapfapfapfapfaOzaOAavxaOCaKnavxaOAaOAaOAaOAaOFaaaaaaaOGaOGaOGaOGaOGaOGaOGaaaaaaaMfaOHaOIaOJaOKaOLaNAaOMaONaOOavBaOQaORaOSaMkaOTaOUaOVaNHaKVaMnaMoaBIaBIaBIaOZaOZaBIaBIaBIaBIaBIaPaaPbaPcaNQaPdaPeaPfaPgaPhaPiaPjaNQaPkaGWaxhaNTaNTaPlaOdaPmaGYaPnaPoaPpaPqaCgaPraPsaPtaPuaPvddUaKLddVarAaaaaaaabqddWcspaPzabqaaaaaaaTMaRgaIfaHxaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaaaaaaaaaaaaaaabdabdabdabdabdabdabdaXHaXIaWBaXJaWBaXKaXOabdabdabdabdabdabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaabqaHkaPAaLBaLBaLBaLBaPBaLBaLBaLBaLBaMLaPDaHkaECapfaaaaMNaMOaMOaMOaMOaMOaPEawbavKawbaPHaPIaPJaPKaPLaPMaPNaPOaPPaPQaPRaPSaPTaPTaPTaPTaPVaOAaYOaPXaPYaPZaQaaQbaQcbeBaQeaQfaQgaQgaQhaQiaQjaQkaQlaQmaQmaQnaQoaQpaKGaNtaMkaQqaNAaQraNAaQsaNAaQtaNAaNAaMkaQubeLaOVaQwaQxaMnaNIaQzaQAaQBaQCaQDaQEaQFaQGaQHaQIaQJaQKaQLaNQaQMaQNaQNaQNaQOaQPaQQaNQawvaGWaxhaQSaQSaQTaOdaPmaJJaQUaMFaOWaOmaNZaOXaRaaRbaRcaRdaOfaDLaPxarAaaaaReabqaRfddXaRhabqabqaJWarAaPxaWAaGbaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaaaaUUaUUaUUaUUaUVaXNbbXbbWbbYbbWbbZbgUaUVaUUaUUaUUaUUaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGwaLBaLBaLBaLBaLBaLBaLBaLBaLBaLBaRiaHkaHkatkapfabqaMNaMOaMOaMOaMOaMOaRkaRlaRmaRlaRnaPIaRoaRoaRpaRoaOuaRqaRraRsapfapfapfapfapfapfazSaOAbgkaRuaRvaRwaRxaRxaRxbgyaOFaaaaOGaRzaRAaRAaRAaRAaRAaRBaOGaaaaMfaRCaMiaMjaMkaRDaREaRFaNAaRGaNAaRHaRIaNAaRJaRKaRLaRMaRNaROaMnaQyaOYaQVaQVaQVaQWaRTaRTaRUaRUaRVaRWaRXaRYaRZaSaaSbaSbaSbaScaSdaSeaNQaSfaGWaxhaQSaSgaShaSiaCgaSjaIvaMFaJQaSlaCgaSmaSnaSoaSoaSoaSpaDLaPxarAaaaaaaabqabqabqabqabqaaaaaaarAaPxaWAaGbaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbcbbcabcabcabcabcabzhbzhbdJbzhbzhbcabcabcabcabcaaXKaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSqaSraSsaaaaGwaLBaLBaLBaLBaLBaLBaStaSuaSuaSvaSwaHkaqBatkapfabqaMNaMOaMOaMOaMOaSxaMNaKpaKlaKlaSyaPIaSzaSAaSBaSCaSDaSEaSFaSGaLKaSIaSJaSKaSLapfaSMaOAaSNaRuaSOaSPaSQaSQaSRaSSaOFaaaaMgaSUaRAaSVaSWaSXaRAaSYaMgaaaaMfaMhaMiaMjaMkaSZaTaaTbaTcaTdaTcbjbaTfaTgaMkbmIaxcaTjaTkaTlaMnaTmaTnaToaTpaTqaTraTsaTtaTuaTvaTwaTxaTyaTzaTAaTBaTCaTDaQXaTFaTGaTHaNQasIaGWaxhaCgaCgaCgaCgaCgaFRaTIaQYaTKaTLaCgaCgaLvaLwaCgaDLaDLaDLaPxarAaaaaaaaaaabqaaaaaaaaaaaaaaaaTMaRgaIfaGbaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbdKbdNbdNbdNbdNbdNbdNbdObdNbdNbdNbdNbdNbdNbdPbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGaTNbBmaTNacJaHkaLBaLBaLBaLBaLBaLBaLBaLBaLBaTPaTQaHkauAaQZapfaaaaMNaMOaMOaMOaMOaMOaTSaRlaTTaRlaRnaPIaRoaRoaRpaRoaOuaOvaTUaTVaTWaTXaTYaTZaUaapfaUbaUcaUdaRuaRuaUebmJaRuaUgaUhaOFaaaaMPaUjaUkaUlaUmaUlaUkaUnaNpaaaaMfaMhaUpaUqaMkaNqaNqaNqaNqaUsaNqaNqaOoaNqaMkaMnaOBaUvaSHaMnaMnaUxaTnaTpaTqaUyaUzaTnaToaTqaTqaTpaUAaUBaUCaUDaUEaSbaSbaSbaScaUGaUHaNQaUIaGWaxhaUKaULaUMaSTaUOaUPaIvaMFaJQaUQaJSaJTaRPaUTaHhaHiaDLaDLaPxarAaJWaaaaaaaJWaaaaaaaaaaaaaJWarAaPxaIfaGbaCgaLwabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbeXbeXbeXbeXbeXbdObeXbeXbeXbeXbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacKIaTNaUWaTNcKIaHkaPAaMLaLBaLBaLBaLBaLBaLBaLBaUYaUZaHkatkapdapfaaaaMNaMOaMOaMOaMOaMOaVbayjaxXayjaVeaPIaRoaVfaVgaVhaViaVjaOuaVkaVlaVmaVnaVoaVpapfaVqaOAaVraRuaRubmKaVtaVuaUgaRRaOFaaaaOGaVwaVxaUkaVyaRAaVzaVAaOGaaaaMfaVBaOIaOJaVCaVDaVEaVEaVEaNCaVEaVEaVFaVGaMkaVHaVIaVJaVKaVLaVMaVKaVNaVOaVOaVPaVQaVRaVSaVTaVUaVVaVSaVWaVXaNQaVYaVZaWaaWaaWcaWdaWeaNQasJaWfaxhaWgaWhaWiaTOaWkaWlaWmaRSaTEaSkaTRaTRaUFaWsaHhaWtaDLbeZaPxarAarAddZarAarAddZarAarAddZarAarAaPxaWAaHxaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaabdabdaXHbdMbeWbeXbeXbeXbeXaXLaXLaXMaXLaXLbeXbeXbeXbeXbeYbdMaXOabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaWDaWEaWFaWGaWDaHkaLBaMLaWHaWIaWJaLBaLBaLBaLBaUYaWKaHkatkapdalLaaaaMNaOnaMOaMOaMOaMOaMNaKpaKlaKlaWLaPIaRoaRoaRpaRoaOuaVjaWMaWNaVlaWOaWPaWQaWRapfazSaOAaWSaWTaWTaWUaWVaRuaUgaWWaOFabqaOGaOGaOGaWXaWYaWZaOGaOGaOGabqaMfaOHaXaaMjaXbaXcaVEaVEaVEaXdaVEaVEaXeaNCaXbaQCaXfaXgaXhaToayuaToaTnaTpaToaXjaToaXkaTpaTqaToaTqaTpaXlaXmaNQaXnaXoaXpaURaXraPiaQQaNQaXsaGWaxhaXtaXuaXvaXwaXxaXyaXzaXAaWoaUSaXqaXqaXBaXFaHhaHiaDLarAdeaaMJaMJdebaMJaMJdebaMJaMJdebaMJaMJdecaWAaGbaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaabdaaabgMbdMbeWbeXbeXaXLaXLaXLaXLbfabpvaXLaXLaXLbeXbeXbeYbdMbMnaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaWDayCaXQaXRaXSaHkaXTaMLaXUaXVaXWaMLaMLaMLaXXaXYaXZaHkaVaaYbapfabqaYcaYdaMOaMOaMOaYeaYfabqabqaKlaWLaYgaPJaPKaYhaYiaYjaYkaYlaYmaYnaYnaYnaYnaYnapfaYoaYpaYqaYraYraYsaYtaYuaYvaYwaUoaaaaaaaaaaOGaOGaYyaOGaOGaaaaaaaaaaKoaNraYzaMjaYAaYBaYCaYDaYEaNCaNCaYFaYGaNCaYAaQCaYHaYIaYJaYKaYLaYKaYMaYNbmLaYPaYKaYKaYKaYKaYKaYKaYQaYRaYSaNQaNQaNQaNQaVcaNQaNQaNQaNQaoGaGWaxhaYVaYUaYUaSTaYWaYXaYYaYZaWbaVvaWnaQUaXCaZfaFXaZgaCgaaaabqaaaabqaaaaaaaaaaaaabqaaaaaaabqabqaWAaWpaDhaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdclHbcbbfcbfbbgNaXLaXLbdIbdIbdIbgPbgObdIbdIaXLaXLbgNbgQbgSbgRaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaWDaWDaZiaZjaWDaWDaWDaZkaWDaWDaZlaZmaWDaWDaWDaZnaWDaWDaWqapfapfabqaZpaZqaZraZraZraZqaZsabqabqaZtaZuaPIaRoaRoaRpaRoaOuaZvaOuaZwaYnaZxaZyaZzaZAapfazSaOAaZBaZCaZDaZEaZFaZGaZHaZIaOFaZJaUraZJaZLaZMaZNaZOaZLaZJaUraZJaMfaZPaZQaZRaZSaMkaMkaMkaMkaZTaZUaZVaNCaZWaMkaQCaZXaTraZYaZZaZZaZZaZZaoGaoGaoGbaababbacbadbaebafaZZbagbagaoGbahazyazyaWrazyazyazybakazybalaxhbambambambambanbaobapbaqbarbasbatayIaXDbavaCgaCgaCgabqabqaDibawbaxaDiaDiaDiaDiaDiaDibawaDiaXEaDhaCgaCgaDoabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaabdaXHbgTbicbeXbeXaXLbdIbidbifbiebihbigbiibidbdIaXLbeXbeXbijbgTaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaUNbaAbaBbaCbaDbaEbaBbaFbaGbaHbaGbaIbaJbaGbaKbaLbaMaYTbaOapfaaaaaabaPbaQbaQbaQbaRaaaabqaZtbaSaWLaPIaRoaRobaTbaUaOubaVbaWbaXbaYbaZbbabbbbbcapfazSaOAaOAaOAavxavxayPaOFbbebbeaOFbbgbbhbbiaZLbbjbbkbblaZLbbmbbnbbobbpbbqbbrbbsbbtbbubbvbbwaMkaMkaYAaLLaYAaMkaMkayubbybbzayubbAbbBbbCbbDbbEbbFaoGaoGaoGaoGbbGaoGaoGaoGaoGaoGaoGaGWasIasJbbHbbHbbHbbHbbHbbHbbHbambbIbbJbbKbamazobbMbambbNbbOaFRaFRazAaZbaZaaDfbbSaDfbbTaDiaDibbUaDiaCiaCjbbVaCjaClaDibbUaDiaCvaDnaCgabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabdaXHbdMbeWbeXaXLaXLbdIbikbilbdLbnQbimbjPbjObdIaXLaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaUNbcdbcebcebcfbcebcebcebcgbchbcibcjbckbckbckbclbcmbcnbcoapfaaaaaaabqabqaaaaaaabqabqabqaZtbcpbcqbcrbcsaRobctbcubcvbcwbcxbcybczbcAbcBbcCbcDapfazBbcFbcGbcHbcIbcJbcKbcLbcMbcNbcObcPbcQbcPbcRbcSbcTbcUbcVbcPbcWbcXbcXbcYbcZbdabcXbcXbdbbdcbdcbdcbddbdebdcbdcbdfbdcbdgbdhbdcbdcbdcbdibdjaoGbdkbdobdmbdnbdobdpbdobdqbdobdrazybakbalaubasJbbHbdsbdtbdubdvbdwbdxbambdybdzbdzbdAbdzbdBbambdCbarbdDbdEbdEbdEbdEbdEbdFaCgbdGaCjaCjbdHaCjaDmaCgaCgaCgbdGaCjaZdaZcaDmaCgabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXaXLaXLbdIbjQbilbdIbjRbdIbjTbjSbdIbdIaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaUNaUNbdQaUNaWDaUNbdRaUNbcdbcebdSbdTaUNbdRaUNbdUbdVbdWbdXapfapfapfapfalLalLalLapfapfapfaZtbdYbdZbdZbdZbdZbeaaRobebbecbedbeeaYnaYnaYnaYnaWjapfapfbegapfapfbehbeibejbekbelbembenbekbelbeobepbembeqbekbekbekbelbekbekberbesbekbekbekbekbekbekbekbetbeubekbekbenbevbewbekbekbekbekbexbeybezbezbezbeAbezbezbezaoGbmMaoGaGWaoGaoGbeCbeCbeCbeCbeDbeEbeEbeFbeGbeHbambeIbeJbeKbmNbeMbeNbambeObePbeQbdEbeRbeSbeTbdEbeUaCgaCgaCgaCgaCgaCgaCgaCgazMaCgaCgaCgaCgaCgaLwaCgabqbjUabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabdaXHbdMbeWbeXaXLaXLbjWbjVbjYbjXblFblDblIblGblJbdIaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaUNabqaaaabqaaaaUNbfdaUNbfebfebffbfgaUNbfdaUNaUNaWDbfhbfibfjavTavUavUavUbflavUavUbfnavVbfobfpbfqbfqbfrbfsbftbfubfvbfwbfxbfybfwbfzbfAbfwbfBbfCbfDbfEbfFbfGbfHbfIbfJbfKbfKbfLbfMbfNbfObfPbfQbfRbfSbfSbfSbfSbfSbfSbfSbfTbfUbfVbfVbfVbfVbfVbfVbfVbfVbfWbfXbfYbfZbfVbgabfWbfVbfVbgbbgcbgdbezbgebgfbggbghbgibezbgjbmOaoGaGWaoGaaabeCbgmbgnbeCbgobgpbgqbgrbgsbgtbambgubgvbgwbgxbmPbgzbambgAbgBbgCbdEbgDbgEbgFbdEbgGaOdaOdaOdaOdaOdaOdaOdaOdaOdaOdbgKbgLbgKbgLaefaefaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdaXHbdMbeWbeXaXLaXLbdIblKbilbdIblLbdIbjTbjSbdIbdIaXLbeXbeYbdMaXOabdabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqaaaaUNbdRaUNaUNaUNaUNaUNaUNbdRaUNaaaaWDbgVbgWbgXbgXbgXbgXbgXbgXbgXbgXbgYazQbfwbfwaXibhbaXibfwbfwbfwbhcbfwbhdbhebhfbhgbhhbhibhjbhkbhlbhmbhnbfGbhobfIbhpblhbhqbhrbhqbhsbhqbhtbhubhtaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxbhwbhwbhxbhwbhwbhwbhwbhwbrNbhybfIbhzbezbhAbhBbhCbhDbhEbezbhFbhGaoGaGWapeaaaaZKbhIbhJbbxbhLbhMbhNbhObhPbhQbambhRbhSbhTbhTbhUbhVbambhWbhXbhWbdEbhYbhZbiabdEaChaCgaCgaCgaCgaCgaCgaCgaCgaCgaDLaFRaFRbdFaFRabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaaaaaaaaabdaaabgMbdMbeWbeXaXLaXLbdIbikbilbdIbdIbdIbjTbjObdIbdIaXLbeXbeYbdMbMnaUUaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabinbiobipbiobiqbiobiobiqbiobipbirbisaWDbgVbitbiubivbiwbixbiybizbiAbgXbgYbiCbiDbiEbiFbiGbiFbiGbiHbiGbiIbfwbiJbiKbiLbiMbiNbazbiPbiQbiRbiSbiTaAMbiVbiWbiXbhqbiYbiZbjabhKbhqbjcbjdbjeabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqbhwbjfbjgbjhbjibjjbjkbjlbhwbjmbjnbjobezbjpbjqbjrbjsbjtbezaoGaoGaoGbjuaoGaaabeCbjvbjwbeCbjxbjybjzbjAbjBbjCbambjDbjEbjFbjGbjHbjIbamaFRbjJaFRbdEbjKbjLbjMbdEdeWavPdfadfcdfbdfdasXdfeanqanqaaaaaaaFRbgLaFRabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaUUaUUblMaXNbmHblNbfbbgNaXLaXLbdIbidbilbmTbnLbnEbnMbidbdIbdIaXLbgNbgQbnNbnPbnOaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabinbiobipbiobiqbiobiobiqbiobipbirbisaWDbgVbitbiubivbiwbixbiybizbiAbgXbgYbiCbiDbiEbiFbiGbiFbiGbiHbiGbiIbfwbiJbiKbiLbiMbiNbazbiPbiQbiRbiSbiTaAMbiVbiWbiXbhqbiYbiZbjabhKbhqbjcbjdbjeabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqbhwbjfbjgbjhbjibjjbjkbjlbhwbjmbjnbjobezbjpbjqbjrbjsbjtbezaoGaoGaoGbjuaoGaaabeCbjvbjwbeCbjxbjybjzbjAbjBbjCbambjDaZebjFbjGbjHbjIbamaFRbjJaFRbdEbjKbjLbjMbdEdeWavPdfadfcdfbdfdasXdfeanqanqaaaaaaaFRbgLaFRabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaUUaUUblMaXNbmHblNbfbbgNaXLaXLbdIbidbilbmTbnLbnEbnMbidbdIbdIaXLbgNbgQbnNbnPbnOaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabinbiobiobjZbkabkbbkcbkdbkebkfbkgbkhbkbbkiblVaUNbgVbgWbbLbklbkmbknbkobkpbkqbkrbksbktbkubkvbkvbkwbkxbkybfwbfwbfwbfwbkzbkAbkBbkCbkDaXibkEbhkbhlbkFbkGbkHbkIbfIbkJbhqbkKbkLbkMbkNbkObkPbkQbccabqabqaBVaCVaBYaDKbkWaEhaCVaDKbkWaEhaBYaBYaEtabqabqbhwaFNblablbblcblbbldblebhwblfbfIblgbwlbezbkkaODbkRbezbezbllblmaoGblnaoGblobeCbeCbeCbeCbbHbbHbbHblpblqbbHbambambambambamaGtaFPbambltblubltbdEbkUblwbkVbdEdffdfhdfgdfgdfjdfkdfkdfkdflabqaaaaaaaaaaWwaaaabqaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWwbnRblEbnTbnSbnUbicbeXbeXaXLaXLbdIbpsbptbdLbqZbpubrbbrabdIbdIaXLbeXbeXbrcbijbrfaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablOblPblQblRbkbblSblTblSblTblSblTblSbkbblUbnFaUNbgVblWbgXblXblYblZbmabmbbmcbgXbmdbmebmfbmgbmhbmibmjbmkbmlbmmbmnbmobmpbmqbmrbmsbmtbmubmvbmwbmxbmybmzbmAbiVbfIbmSbhqbmQbmCbmDbmEbhqbmFbmGbjeabqabqaIbboBbopbpVboHbqfbqdbqhbqgbqkbqjbqlaIHabqabqbhwbmUbmVbmWbmXbmYbmZbnabhwbhybnbbncbndbnebnfbnebngbnhbnibnebnebnebnjbnebnkbnlbnmbnnbnebnebnobnkbngbnjbnpbnqbnobnrbnsbntbnubnvbnwbnxbnybnzbnAbnBbnCbnDblidfmdftdfqdfxdfudfydeZaoNdflabqaaaaaaaaaaWwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaWwbnRblEbnKbrgbrhbeWbrjbeXaXLaXLbdIbrlbrmbifbrIbrnbrQbrKbdIbdIaXLbeXbeXbeXbeYbrfaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiqbkbbkbbipbkbblSblTblSbnVblSblTblSbkbblUbnFaUNbnWbnXbnYbnZboablkaUtblkbiubiubodboebhcbfwbofbogbohboibojbokbolbfwbombonbojbkCboobfwbrXboqborbosbotaAMbkIbfIbkJbhqboubovbowboxbhqboybozbjebkWaJYbkWbsbboCboDboEboDboFboDboEboDboGbscbkWaJYbkWbhwboIboIboIboJboKboLboMbhwboNboOboPboQboRboSboRboTboRboUboRboRboRboVboRboWboXboYboZboRboRbpabpbbpcboVbpdboVbpebpfbpgbntbphbpibpibpjbpkbpibpidfzdfBdfAbljdfDdfIdfHdfKdfJdgddfLdgKazDabqaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqbpraaaaaaaaaabqbsdbsdblMbsebsfbeWbsnaXLaXLaXLbsMbdIblHblHbnJbdIbdIbdIbdIbrkaXLaXLaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablObpwbpxblRbkbblSblTblSblTblSblTblSbkbblUbnFaUNbpybpzbpAbpBbpCbpDbpDbpEbpFbpBbpGbpHbpIbfwbpJbpKbpLbpMbpNbpObpPbfwbpQbpRbpSbpTbpUbfwbsibpWbpXbpYbpZbfGbqabjnbqbbqcbqcbqcbqcbqcbhtbtPbqebhtbkWbtSbtRbtTboEboEboEboEbqiboEboEboEboEbtZbtYbubbkWbqmbqnbqobqpbqqbqrbqrbqsbhwbqtbqubqvbqwbqxbqybqxbqzbqxbqAbqxbqxbqBbqxbqxbqCbqDbqxbqEbqBbqFbqGbqCbqHbqxbqIbqJbqKbqLbqMblsbqObqPbqQbqRbpnbqSbqSbqTdgMdgLdgOdgNdgPanqanqanqanqanqanqanqanqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqaaaabqbsPbsRbsQbsSbrdcKIaXNbsfbsTbsUaXLbsWbsVbsXbribsZbsYbtbbtabtcbrkbtebtdbtgbtfaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrobiobiobjZbrpbkbbrqbkbbrrbrsbkbbrtbkbbkibruaUNbgVbrvbrwbrxbrybrzbrAbrBbrCbrxbrDbrEbrFbfwbrGaXibrHblvbfwbfwbfwbfwbfwaXibrJblxbfwbfwaAMbrLbrMaAMaAMbzObehbfIbrObqcbrPbumbrRbqcbrSbrTbrUbrVaJZburbrYbrZbsabsabvWbwfbwebvWbvWbsabsabsgbshbwgbkWbhwboIboIboIbsjboIboIboIbhwbskbfIbslbZiblCbsoblCbsmbspbspbspbspbspbspaoGaoGbsqaoGaoGaoGbsrbmBaoGaoGaoGbstaoGbsubsvbswbbfbsybszbsAbsBbqSbsCbsCbsDbqUbsEbjNbntbsFbsGbsHbsIbsJbsJbsKbsLabqaaaaaaabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaabqaaaaaabuLbudbuMabqbuObuNbuQbuPbuSbuRbuTbBebuVbuUbuWbribuYbuXbvabuZbvcbvbbvebvdbvgbvfaXLbvhbvibdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrobiobthbiobiqbiobiobiqbiobipbtibtjaWDbvjbtlbtmbfGbtnbtobtpbtobtqbfGbtrbtsbttbtubtvbtwbtxbtybtzbtwbtAbtBbtwbtvbtvbtCbtvbtDbtEbtFbtGbtHbtvbtIbtJbtKbkJaKqbtMbtNbtObqcbjebjebjebjebkWbwmbtQboEboEboEbtUboEbtVbtWbtXboEboEbwnbuabAkbucbhwbwobuebufbugbuhboIbuibhwbujbfIbukboAdedbunbuobsmbupbuqbwpbusbutbuubuvbuwbuxaoGbuybuzbuAbuBbuCaoGarrbuDaoGbuEbuFbuGbqNbuHbuHbuHbuIbuJbqSbqSbuKbvlbvkbvnbvmbvpbvobvrbvqbvsbvsbvvbvtbvwbvwbvwbxlbxmbvwbvwbvwbvwbvwbxlbvwbvwbvwbvwbvwbvwbxlbvwbxmbxobxnbxpbxpbxrbxqbxtbxsbxvbxubxxbxwbxzbxybxBbxAbxDbxCbzebxEbzgbzfbzjbzibzlbzkbznbzmbzpbzoaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrobiobthbiobiqbiobiobiqbiobipbtibtjaWDbvjbtlbtmbfGbtnbtobtpbtobtqbfGbtrbtsbttbtubtvbtwbtxbtybtzbtwbtAbtBbtwbtvbtvbtCbtvbtDbtEbtFbtGbtHbtvbtIbtJbtKbkJaKqbtMbtNbtObqcbjebjebjebjebkWbwmbtQboEboEboEbtUboEbtVbtWbtXboEboEbwnbuabAkbucbhwbwobuebufbugbuhboIbuibhwbujbfIbukboAdedbunbuobsmbupbuqbwpbusbutbuubuvbuwbuxaoGbuybuzbuAbuBbuCaoGarrbuDaoGbuEbuFbuGbqNbuHbuHbuHbuIbuJbqSbqSbuKaZobvkbvnbvmbvpbvobvrbvqbvsbvsbvvbvtbvwbvwbvwbxlbxmbvwbvwbvwbvwbvwbxlbvwbvwbvwbvwbvwbvwbxlbvwbxmbxobxnbxpbxpbxrbxqbxtbxsbxvbxubxxbxwbxzbxybxBbxAbxDbxCbzebxEbzgbzfbzjbzibzlbzkbznbzmbzpbzoaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqaaaaUNbdRaUNaUNaUNaUNaUNaUNbdRaUNaaaaWDbzqbzsbzrbfGbvAbvBbvCbvBbvDbfGbvEbvFbvGbvHbvHbvIbvJbvHbvHbvKbvLbvMbvNbvHbvHbvObvHbvHbvHbvPbvQbvRbvRbvSbvTbvUbvVbqcbyobvXbvYbqcbvZbwbbwabwcbwdboEbtQboEbypbywbwhbwibwjbwibwkbyJbyxbAbbyQbAkbwqbhwbwrbwsbwtbwubwvbhwbhwbhwbhybwwbwxbsmbwybwzbwAbsmbwBbwCbwDbwEbwFbwGbwHbwIbwJbwKbwLaKUbwNbwObwPbwQbwRbwSaoGbsubwTbwUbntbwVbwWbwXbwYbwZbxabxbbxcbxdbqUbxebxfbxgbxhbxiaWCaaaaaabxjbsNabqaaaaaaabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaabqaaaaaabxkbztbsLabqbBbbzubBdbBcbBgbBfbBibBhbBnbBjbCWbBobCYbCXbDabCZbDibDcbFdbDjbFfbFeaXLbrcbFgbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaUNabqaaaabqaaaaUNbxGaUNbxHbxIbfebxJaUNbxGaUNaUNaWDbgVbxKbxLbfGbxMbvBbxNbvBbxObfGbxPbxQbxRbxSbxTbxUbxVbxWbxXbxYbxZbyabxTbxTbxTbybbxTbycbydbxVbyebxTbxTbyfbygbyhbvVbqcbyibyjbykbylbymbynbymaLybwdbAjbAebyqbyqbyqbyrbysbytbyubyvbyqbyqbyqbBWbCcbkWbhwbyybyzbyAbyBbyCbhwbyDbyEbyFbyGbwxblCbyHbyIbCdbsmbyKbyLbyMbyNbspbspaoGaoGbyOaoGaoGaoGaLCbCeaoGaoGbyRbCIaoGbyTbwTbyUbntbjNbjNbjNbjNbyVbjNbjNbyWbyXbyYbntbntbyZbzabzbbzcaaabqYbzdaaaabqaaaaaaabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqaaaaaabxkbBabFkbGNbGMcKIbsebGSbGObrcaXLbsMbsMbsMbribribICbBkbribribrkbrkbrkaXLaXLaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaUNaUNbdQaUNaWDaUNbdRaUNbzvbaBbzwbzxaUNbdRaUNbzybzzbzAbtlbtmbfGbzBbzCbtpbzCbzBbfGbzDbzEbzFbfGbzGbzHbzIbfGapfbzJapfbzKbzKbtkbzMbzNbtkbzKbzKbzKbzKbzKbzKdeDbzPbzQbzRbzSbzTbzUbzVbzWbzVbzXbzYbzZbAabCfbAcbAdbThbAdbAdbAfbAgbAhbyqbyqbAibyqbCkbAkbhwbAlbAmbAnbAobApbAqbhwaMDbhtbAsbbrbAtbsmbsmbsmbsmbsmbAubAvbspbspbspbAwbAxbspbAybAzbAAaoGazpbABaoGbACbADbAEbAFbAGbAHbAIbAJbAKbAKbAMbAKaNWbAObjNbAPbAQbARbASbATbAUbAVbAWbAXbsJbAYbAZabqabqabqabqabqaaaabqaaaabqaaaabqaaaabqaaaaaaaaaaaaaaaaaaabqbpraaaaaaaaaabqaaaaaaabdaZhbIEbeWbeXbeXbIFaXLbBlbDbbKjbDdbDebDfbDgbDhbBlaXLbIFbeXbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaUNbBpbaBbaCbBqbBrbaBbaBbBsbBtbchbBubBvbBvbBvbBwbBxbBybBzbBAbBBbBCbBDbBEbBFbBGbBBbBHbBIbBJbBKbBKbBLbBKbBKarKbBMbBNbzKbBObBPbBQbBRbBSbzKbBTbBUbzKbBTbBUbzKbzPbfIbkJbqcbBVbClbBXdaebBYbBZbCabCbbwdbAkbDrbyqboEbDVbCgboEboEbAkbChbDWbCjbyqbEfbEgbhwbCmbCnbCobCpbCqbCrbCsbCtbhtbhybbrbhzbspbCubCvbCwbCxbCybCzbCAbspbCBbCCbCDbCEbCFbCGbCHaoGaoGaoGaoGaoGaoGbCIaoGbCJbCKbCLbCMbCNbCNbCNbCNbCNbCMbCMbCNbCObCPbCQbCRbCSbCTbCUbCVbCMbCMbCMabqaaaaaaaaaabqaaaabqaaaabqaaaabeaaaabeaaaaaaaaaaaaaaaaaaaaaabqabqabqabqaaaaaaaaaabdaXHbsfbKkbvhbeXbeXaXLbBlbFhbFibFjbKnbFlbFmbFnbBlaXLbeXbeXbvhbvhbvibdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaUNbcdbcebcebDkbcebDlbDmbDnbDnbDobDnbDpbDqbEJbDsbDtbDubDvbDwbpBbDxbDybDzbDAbDBbDCbDDbDEbDFbDGbDHbDIbDJbBKbDKbDLapdbzKbDMbDNbBQbBRbBSbzKbDObDPbzKbDObDPbzKbDQbfIbkJbqcbqcaPCbqcbqcbqcaPGaPFbsObqcbFJbtQbDXboEbwibwibDYbDZbEabEbbEcbEdbEebshbFUbEhbEibEjbEkbElbEmbEnbhwbEobhtbEpbbrbhzbspbEqbErbCybEsbCybEtbCybEubEvbCHbvybvzbEybEzbEAbEBbECbEDbEEbEFbEGbEHaoGbEIbwTbHCbCMbEKbELbEMbENbEObCMbEPbEQbERbESbzLbEUbEVbEWbEXbEYbEZbFabCMabqabqabqabqabqabqabqaaaabeaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdclHbKpbKobKqbfbbgNaXLbBlbGPbGQbGRbMpbGTbGUbGVbBlaXLbgNbgQbMtbMrbMrbNXaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaUNaUNaWDaUNbdQaUNaWDaUNaUNaUNaWDaUNaWDaWDaWDbnWbnXapfbFoapfapfbFpbFqbFpbFrbFpbFpbFpbFpbBKbBKbFsbFtbBKbBKbBKbFuaoXbzKbFvbFwbBQbFxbzKbzKbFybzKbzKbFzbzKbzKbFAbfIbkJbFBbFCbFDbFEbFFbFGbFDbFDbFHbFIbAkbHDbAdbFKbFLbFMbFNbFObFPbFQbFRbFSbyqbFTbAkbhwbFVbFWbFXbFYbFZbGabhwbGbbhtbhybbrbhzbspbGcbGdbGebGdbGfbGgbGhbGibEvbCHbDRbDSbCHbEvbGlbGmbGnbGobGpbGqbEGbCIaoGbGrbGsbGtbDTbGvbGwbGxbGybGzbCMbGAbGBbGCbGDbzLbGEbGFbGGbGHbGIbGJbGKbCMabqbGLbGLbGLbGLbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaaabPHbNYbdMbeWbeXaXLbBlbIybIzbIAbPJbIBbRobIDbBlaXLbeXbeYbdMbRpbsdbPHaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaabGWbGXbGXbGYbGXbGXbGXbGZbGXbGXbHaabqaUNbHbdfOdfPapfbINbHJbHdbFpbHebHfbHgbHhbHibHjbFpbHkbHkbHlbHmbHnbHobBKbFubHpbzKbHqbHrbBQbBRbHsbHtbFwbHubHvbHwbHxbtkbzPbfIbkJbFBbEwbDUbExbExbExbExbExbHzbFIaQRaPUbkWbkWbkWbETbGkbGjbHybGubkWbkWbkWaRjaUibhwbhwbEhbhwbhwbhwbhxbhwbHKbhtbHLbHMbhzbHAbHObHObHObHPbHObHQbHObHRbEvbEvbHSbEvbEvbCHbHEbHUbHVbHWbHXbHYbEGbCIaoGbHZbGsbIabIbbIcbIdbIebIfbIgbHFbIibIjbIkbIlbzLbImbInbIobIpbIqbIrbIsbHGbIubIvbIwbIxbIxbGLabqaaabFcaaabFbaaaabeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdaXHbdMbeWbeXaXLbKlbKlbKlbHNbRqbHNbKlbKlbKlaXLbeXbeYbdMaXOabdabdabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGWbIGbIHbIIbIJbIJbIKbIJbIJbIJbIKbGYbHHaUNaUNdfQbIMapfbFuaEjaUubFpbIQbHfbHgbIRbISbITbFpbIUbIVbIWbIXbBKbBKbBKbFuatjbzKbIYbIZbBQbBRbBQbBQbBQbBQbBQbJabBQbzMbJbbJcbJdbJebJfbJgbJfbJhbJfbJgbJfbJibCibJkbJjbJmbJlbJpbJnbJnbJqbKYbJrbJsbJtbJubJvbJwbJxbJobJybJzbJobJAbJBbJobJCbJDbJEbJFbwxbJGbCybJHbCybJIbCybJJbCybJKbEvbEvbJLbEvbEvbJMbHIbHUbJObECbHXbJPbEGbCIaoGbJQbJRbyUbDTbJSbIdbJTbIdbJUbJVbJWbJXbJYbJZbzLbKabKbbKcbKdbKebKfbKgbzLabqbzLbKhbIxbKibGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXaXLbMobRrbMqbHNbRsbHNbMsbSXbMuaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKrbKsbKsbKsbKsbKsbKsbKsbKsbKsbKsbKtbKubKvbKudfQbKwapfazSbKyanEbFpbKzbHfbHgbKAbHfbKBbFpbBKbKCbBKbHmbKDbKEbBKbFuapdbzKbKFbHrbKGbKHbKIbKIbKIbKIbKIbKJbKIbKKbygbKLbKMbKNbKObKPbKObKQbSrbKSbKTbKUbKVbKWbKXbKOcnjbKZbLabLbbLcbLdcpcbLebLfbLgbLhbLibLjbLkbLlbLmbLnbLobLpbLibLqbLrbLsbLtbLubLvbLwbLxbLybLybLzbLAbLwbLBbLCbLDbHTbCHbLFbCHbIhbLHbLIbLJbLKbLLbLMbLNaoGbLObLPbLQbLRaUwbLTbLUbLVbLWbzLbLXbLYbLZbMabMbbMcbIobMdbMebMfbMgbMhbItbMjbMkbMlbIxbMmbGLabqaaabFcaaabFbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXaXLbNZbOabObbHNbRqbHNbObbOabOcaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabMvbMwbMxbMybMzbMzbMAbMzbMzbMzbMAbGYaUNaUNaUNdfQbMBapfbMCapfapfbFpbMDbMEbMFbHfbHfbHfbFpbMGbMHbBKbMIbBKbBKbBKbMJbMKbMLbFwbFwbJabMMbMNbFwbFwbFwbFwbFwbMPbtkbzPbMQbMRbMSbMSbMTbMUbMVbMSbMSbMWbMWbMXbMYbMWbMZbILbNbbJNbMZbNdbNdbKmbNfbLEbNdbNhbNibNjbNkbNhbNhbHBbNmbNlbNhbNobhtbNpbNqbNrbLGbNtbNubNtbNvbNwbCybCybHRbHSbEvbNxbNybNzbNybLDbNAbNBbNCbNDbNEbEGbNFaoGbNGbNHbNIbNJbNKbNLbNMbNNbNObNPbNQbNRbGIbGFbzLbMibNcbNabNcbNabNgbNebzLabqbGLbGLbGLbGLbGLabqaaabFcaaabFbaaabFcabfabeabqabeabfabfabeabeaaaaaaaaaaaaaaaaaaaaaaaaabdclHbdMbeWbeXaXLbPIbOabOabOabSZbSYbOabOabPKaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaabMvbGXbGXbGYbGXbGXbGXbGZbGXbGXbOdabqaUNbOedfQbOfapfbFuatjaqBbFpbOhbHgbOibOjbKBbHfbFpbOkbOlbBKbIUbOmbOnbBKbFuapdbzKbOobOobJabBRbOpbOpbOqbOrbOsbOtbzKbzKbJbbOubOvbMSbOwbOxbOybOzbOAbOBbOCbODbOEbOFbMWbOGbOHbOIbOJbOKbNdbOLbOMbONbOObOPbNhbOQbORbOSbOTbNhbNhbNhbNhbNhbOUbhtbNpbOVbOWbspbOXbOYbHObOZbPabHObPbbspbSsbTZbEvbEvbEvbEvbEvbPdbPebPfbPgbPhbEGbNFaxhbPjbPkbPlbPmbPnbPobPpbPqbPrbPsbPtbPubPvbPwbPwbPxbPybPzbIpbPAbPBbPCbHGbIubIvbPDbPEbPEbGLabqabqbPFabqbPGabqbFcaaaaaaabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXaXLbRnbTabTcbOabTebTdbUzbUybRtaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaUNaUNaWDaUNbdQaUNaWDaUNaUNaUNaWDaUNaWDaWDaWDdfRbPMbPNbPObPPbPQbFpbPRbPSbOibPTbPUbPVbFpbBKbBKbBKbBKbBKbBKbBKbFuapdbzKbPWbFwbJabBRbFwbFwbPYbFwbPZbQabzKbQbbzPbfIbQcbMSbQdbQebQfbQgbQhbOBbQibQjbQkbQlbNsbQnbQobQobQobQpbQqbQrbQsbQtbQsbQubNSbQwbQxbQybQzbNTbQBbQCbQDbNhbQEbhtbQFbQGbQHbQIbQIbQIbNnbQJbQLbQMbQKbQIbQObQIbQPbQQbQRbQSbQTbEGbEGbQUbEGbEGbEGbNFbQVbQWbQXbQVbCMbCMbCMbCMbCMbQYbNObVpbRabRbbGGbRcbRdbRebRfbInbRgbRhbRibzLabqbzLbRjbRkbRlbGLabqaaabFcaaabFbaaabRmarBarBarBarBabearBarBarBaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbUAbfbbgNaXLbKlbVjbVkbOabTbbTdbVXbVlbKlaXLbgNbgQbVYaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaUNaUNbdQaUNaWDaUNbdRaUNbzvbaBbzwbzxaUNbdRaUNbzybzzbzAbtlbtmbfGbzBbzCbtpbzCbzBbfGbzDbzEbzFbfGbzGbzHbzIbfGapfbzJapfbzKbzKbaibzMbzNbaibzKbzKbzKbzKbzKbzKdeDbzPbzQbzRbzSbzTbzUbzVbzWbzVbzXbzYbzZbAabCfbAcbAdbThbAdbAdbAfbAgbAhbyqbyqbAibyqbCkbAkbhwbAlbAmbAnbAobApbAqbhwaMDbhtbAsbbrbAtbsmbsmbsmbsmbsmbAubAvbspbspbspbAwbAxbspbAybAzbAAaoGazpbABaoGbACbADbAEbAFbAGbAHbAIbAJbAKbAKbAMbAKaNWbAObjNbAPbAQbARbASbATbAUbAVbAWbAXbsJbAYbAZabqabqabqabqabqaaaabqaaaabqaaaabqaaaabqaaaaaaaaaaaaaaaaaaabqbpraaaaaaaaaabqaaaaaaabdaZhbIEbeWbeXbeXbIFaXLbBlbDbbKjbDdbDebDfbDgbDhbBlaXLbIFbeXbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaUNbBpbaBbaCbBqbBrbaBbaBbBsbBtbchbBubBvbBvbBvbBwbBxbBybBzbBAbBBbBCbBDbBEbBFbBGbBBbBHbBIbBJbBKbBKbBLbBKbBKarKbBMbBNbzKbBObBPbBQbBRbBSbzKbBTbBUbzKbBTbBUbzKbzPbfIbkJbqcbBVbClbBXdaebBYbBZbCabCbbwdbAkbDrbyqboEbDVbCgboEboEbAkbChbDWbCjbyqbEfbEgbhwbCmbCnbCobCpbCqbCrbCsbCtbhtbhybbrbhzbspbCubCvbCwbCxbCybCzbCAbspbCBbCCbCCbCEbCFbCGbCHaoGaoGaoGaoGaoGaoGbCIaoGbCJbCKbCLbCMbCNbCNbCNbCNbCNbCMbCMbCNbCObCPbCQbCRbCSbCTbCUbCVbCMbCMbCMabqaaaaaaaaaabqaaaabqaaaabqaaaabeaaaabeaaaaaaaaaaaaaaaaaaaaaabqabqabqabqaaaaaaaaaabdaXHbsfbKkbvhbeXbeXaXLbBlbFhbFibFjbKnbFlbFmbFnbBlaXLbeXbeXbvhbvhbvibdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaUNbcdbcebcebDkbcebDlbDmbDnbDnbDobDnbDpbDqbEJbDsbDtbDubDvbDwbpBbDxbDybDzbDAbDBbDCbDDbDEbDFbDGbDHbDIbDJbBKbDKbDLapdbzKbDMbDNbBQbBRbBSbzKbDObDPbzKbDObDPbzKbDQbfIbkJbqcbqcaPCbqcbqcbqcaPGaPFbsObqcbFJbtQbDXboEbwibwibDYbDZbEabEbbEcbEdbEebshbFUbEhbEibEjbEkbElbEmbEnbhwbEobhtbEpbbrbhzbspbEqbErbCybEsbCybEtbCybEubEvbCHbaubvzbEybEzbEAbEBbECbEDbEEbEFbEGbEHaoGbEIbwTbHCbCMbEKbELbEMbENbEObCMbEPbEQbERbESbzLbEUbEVbEWbEXbEYbEZbFabCMabqabqabqabqabqabqabqaaaabeaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdclHbKpbKobKqbfbbgNaXLbBlbGPbGQbGRbMpbGTbGUbGVbBlaXLbgNbgQbMtbMrbMrbNXaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaUNaUNaWDaUNbdQaUNaWDaUNaUNaUNaWDaUNaWDaWDaWDbnWbnXapfbFoapfapfbFpbFqbFpbFrbFpbFpbFpbFpbBKbBKbFsbFtbBKbBKbBKbFuaoXbzKbFvbFwbBQbFxbzKbzKbFybzKbzKbFzbzKbzKbFAbfIbkJbFBbFCbFDbFEbFFbFGbFDbFDbFHbFIbAkbHDbAdbFKbFLbFMbFNbFObFPbFQbFRbFSbyqbFTbAkbhwbFVbFWbFXbFYbFZbGabhwbGbbhtbhybbrbhzbspbGcbGdbGebGdbGfbGgbGhbGibEvbCHbvzbDSbCHbEvbGlbGmbGnbGobGpbGqbEGbCIaoGbGrbGsbGtbDTbGvbGwbGxbGybGzbCMbGAbGBbGCbGDbzLbGEbGFbGGbGHbGIbGJbGKbCMabqbGLbGLbGLbGLbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaaabPHbNYbdMbeWbeXaXLbBlbIybIzbIAbPJbIBbRobIDbBlaXLbeXbeYbdMbRpbsdbPHaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaabGWbGXbGXbGYbGXbGXbGXbGZbGXbGXbHaabqaUNbHbdfOdfPapfbWdbHJbHdbFpbHebHfbHgbHhbHibHjbFpbHkbHkbHlbHmbHnbHobBKbFubHpbzKbHqbHrbBQbBRbHsbHtbFwbHubHvbHwbHxbaibzPbfIbkJbFBbEwbDUbExbExbExbExbExbHzbFIaQRaPUbkWbkWbkWbETbGkbGjbHybGubkWbkWbkWaRjaUibhwbhwbEhbhwbhwbhwbhxbhwbHKbhtbHLbHMbhzbHAbHObHObHObHPbHObHQbHObHRbEvbEvbEvbEvbEvbCHbHEbHUbHVbHWbHXbHYbEGbCIaoGbHZbGsbIabIbbIcbIdbIebIfbIgbHFbIibIjbIkbIlbzLbImbInbIobIpbIqbIrbIsbHGbIubIvbIwbIxbIxbGLabqaaabFcaaabFbaaaabeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdaXHbdMbeWbeXaXLbKlbKlbKlbHNbRqbHNbKlbKlbKlaXLbeXbeYbdMaXOabdabdabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGWbIGbIHbIIbIJbIJbIKbIJbIJbIJbIKbGYbHHaUNaUNdfQbIMapfbgYaEjaUubFpbIQbHfbHgbIRbISbITbFpbIUbIVbIWbIXbBKbBKbBKbFuatjbzKbIYbIZbBQbBRbBQbBQbBQbBQbBQbJabBQbzMbJbbJcbJdbJebJfbJgbJfbJhbJfbJgbJfbJibCibJkbJjbJmbJlbJpbJnbJnbJqbKYbJrbJsbJtbJubJvbJwbJxbJobJybJzbJobJAbJBbJobJCbJDbJEbJFbwxbJGbCybJHbCybJIbCybJJbCybJKbEvbEvbCHbEvbEvbJMbHIbHUbJObECbHXbJPbEGbCIaoGbJQbJRbyUbDTbJSbIdbJTbIdbJUbJVbJWbJXbJYbJZbzLbKabKbbKcbKdbKebKfbKgbzLabqbzLbKhbIxbKibGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXaXLbMobRrbMqbHNbRsbHNbMsbSXbMuaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabKrbKsbKsbKsbKsbKsbKsbKsbKsbKsbKsbKtbKubKvbKudfQbKwapfbgYbKyanEbFpbKzbHfbHgbKAbHfbKBbFpbBKbKCbBKbHmbKDbKEbBKbFuapdbzKbKFbHrbKGbKHbKIbKIbKIbKIbKIbKJbKIbKKbygbKLbKMbKNbKObKPbKObKQbSrbKSbKTbKUbKVbKWbKXbKOcnjbKZbLabLbbaybLdcpcbLebLfbLgbLhbLibLjbLkbLlbLmbLnbLobLpbLibLqbLrbLsbLtbLubLvbLwbLxbLybLybLzbLAbLwbLBbaNbbRbbQbCHbLFbCHbIhbLHbLIbLJbhabLLbLMbLNaoGbLObLPbLQbLRaUwbLTbLUbLVbLWbzLbLXbLYbLZbMabMbbMcbIobMdbMebMfbMgbMhbItbMjbMkbMlbIxbMmbGLabqaaabFcaaabFbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXaXLbNZbOabObbHNbRqbHNbObbOabOcaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabMvbMwbMxbMybMzbMzbMAbMzbMzbMzbMAbGYaUNaUNaUNdfQbMBapfbjEapfapfbFpbMDbMEbMFbHfbHfbHfbFpbMGbMHbBKbMIbBKbBKbBKbMJbMKbMLbFwbFwbJabMMbMNbFwbFwbFwbFwbFwbMPbaibzPbMQbMRbMSbMSbMTbMUbMVbMSbMSbMWbMWbMXbMYbMWbMZbtkbNbbvlbMZbNdbNdbvybNfbCDbNdbNhbNibNjbNkbNhbNhbHBbNmbNlbNhbNobhtbNpbNqbNrbLGbNtbNubNtbNvbNwbCybCybHRbHSbEvbDRbILbHTbILbbRbJLbINbKmbJNbNEbEGbNFaoGbNGbNHbNIbNJbNKbNLbNMbNNbNObNPbNQbNRbGIbGFbzLbMibNcbNabNcbNabNgbNebzLabqbGLbGLbGLbGLbGLabqaaabFcaaabFbaaabFcabfabeabqabeabfabfabeabeaaaaaaaaaaaaaaaaaaaaaaaaabdclHbdMbeWbeXaXLbPIbOabOabOabSZbSYbOabOabPKaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaabMvbGXbGXbGYbGXbGXbGXbGZbGXbGXbOdabqaUNbOedfQbOfapfbgYatjaqBbFpbOhbHgbOibOjbKBbHfbFpbOkbOlbBKbIUbOmbOnbBKbFuapdbzKbOobOobJabBRbOpbOpbOqbOrbOsbOtbzKbzKbJbbOubOvbMSbOwbOxbOybOzbOAbOBbOCbODbOEbOFbMWbOGbOHbOIbOJbOKbNdbOLbOMbONbOObOPbNhbOQbORbOSbOTbNhbNhbNhbNhbNhbOUbhtbNpbOVbOWbspbOXbOYbHObOZbPabHObPbbspbSsbTZbEvbEvbEvbEvbEvbPdbPebPfbPgbPhbEGbNFaxhbPjbPkbPlbPmbPnbPobPpbPqbPrbPsbPtbPubPvbPwbPwbPxbPybPzbIpbPAbPBbPCbHGbIubIvbPDbPEbPEbGLabqabqbPFabqbPGabqbFcaaaaaaabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXaXLbRnbTabTcbOabTebTdbUzbUybRtaXLbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaUNaUNaWDaUNbdQaUNaWDaUNaUNaUNaWDaUNaWDaWDaWDdfRbPMbPNbLcbPPbPQbFpbPRbPSbOibPTbPUbPVbFpbBKbBKbBKbBKbBKbBKbBKbFuapdbzKbPWbFwbJabBRbFwbFwbPYbFwbPZbQabzKbQbbzPbfIbQcbMSbQdbQebQfbQgbQhbOBbQibQjbQkbQlbNsbQnbQobQobQobQpbQqbQrbQsbQtbQsbQubNSbQwbQxbQybQzbNTbQBbQCbQDbNhbQEbhtbQFbQGbQHbQIbQIbQIbNnbQJbQLbQMbQKbQIbQObQIbQPbQQbQRbQSbQTbEGbEGbQUbEGbEGbEGbNFbQVbQWbQXbQVbCMbCMbCMbCMbCMbQYbNObVpbRabRbbGGbRcbRdbRebRfbInbRgbRhbRibzLabqbzLbRjbRkbRlbGLabqaaabFcaaabFbaaabRmarBarBarBarBabearBarBarBaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbUAbfbbgNaXLbKlbVjbVkbOabTbbTdbVXbVlbKlaXLbgNbgQbVYaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaUNbRubzzbaCbRvbaCbaBbaBbRwbaBbzzbaBbRxbzzbaBdfSbRyapfbgYaoXatkbFpbRAbRBbHfbHfbHfbRCbFpbRDbREbRFbRGbRHbRIapfbFuauCbzKbRJbRKbJabRLbRMbRMbRNbFwbFwbRObzKbRPbzPbfIbOvbMSbRQbRRbRSbRTbRUbOBbRVbRWbRXbRYbMWbRZbSabSbbSabScbNdbSdbSebSfbSebSgbNhbShbSibSjbSkbNUbSmbSnbSobNhbSpbhtbSqbbrbOWbQIbVrbVsbStbSubSvbSwbSwbSxbSybQIbQIbQIbQIbQIbQIbQIbEGbSzbSAbSBbEGbSCbQVbSDbSEbSFbQVbSGbSHasJbSIbCMbSJbSKbSLbSMbSNbSObSPbSQbSRbSSbRgbSTbSUbItbMjbMkbSVbPEbSWbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbIFbKlbUxbOabOabWabVZbXCbWbbKlbIFbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaUNbcdbcebcebcebcedfUdfTdfWdfVdfYdfXdgadfZdgcdgbbTmapfbgYauyatkbFpbHhbTnbHfbHfbTnbTobFpbTparJarLbPPbPQbRHapfbFubTrbzKbTsbTtbTubTvbFwbTwbTxbTybTzbTAbzKbTBbzPbfIbTCbMSbTDbTEbTFbTGbOBbOBbTHbTIbTJbTKbMWbRZbSabSabSabTLbNdbSdbSebTMbTNbTObNhbTPbSibTQbTRbNhbTSbTTbTUbNhbTVbhtbTWbbrbTXaUJbUabUabUbbUcbUdbStbStbUebUfbQIbUgbUhbUibUhbUjbQIbUkbUlbUmbUnbEGbNFbQVbUobUpbUqbQVasJasJasJbUrbCMbSJbUsbUtbCNbCNbCNbUubGGbUvbGGbRgbUwbRibzLabqbGLbGLbGLbGLbGLabqaaaabeaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbIFbKlbXDbXFbXEbYQbXGcckbZObKlbIFbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaUNaUNbUBbUBaUNaUNbNWaWDbQNdgRbQNdfNaWDapfbUCapfapfapfbgYauCatkbFpbTobUDbUEbHfbUEbUFbFpbUGapdapdatjbUHbXJapfbFuaoXbzKbzKbtkbUIbUJbtkbzKbzKbzKbzKbUKbzKbzKbULbjnbUMbMSbUNbUObUPbUQbURbOBbUSbUTbUUbUVbMWbUWbUXbUYbUZbVabNdbVbbSebVcbVdbVebNhbVfbSibVgbVhbQmcclcdBccmbNhbVmbhtbVnbbrbOWaUXbVtbVqbXcbYtbYsbVubVqbUebVvbQIbVwbVxbVybVzbUjbQIbVAbVBbVCbVDbVEbVFbQVbVGbVHbVIbQVbVJbVKbVLbVMbCMbVNbVObRabVPbCNbVQbSRbGGbSPbVRbVSbVTbPCbHGbIubIvbVUbVVbVWbGLabqaaabFcaaabFbaaabFcaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdclHbdMbeWbeXbeXaXLaXLbKlbKlcepbKlbKlaXLaXLbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaUNbWcbfdaUNdghdgjdgibBtdgkbBtdgldgmapfbWdaVcbWfbWgbWhbWgbWibFpbFpbFpbFpbWjbFpbFpbFpbWkdeJdeHapdbWlbWmapfbFubWobzKbWpbWqbWrbWsbWtbWubWvbzKbWwbWxbWybzKbzPbfIbWzbMSbQdbTEbWAbWBbQdbOBbWCbWDbWEbWFbMWbWGbWHbWIbWJbWKbWLbWMbWNbWObWPbWQbNhbWRbWSbWTbWUbWVbWWbWXbWYbWZbXabhtbXbbbrbOWaUXbYubXdbXdbXebXfbXgbXhbXibXjbQIbXkbVxbXlbXmbXnbQIbXobXpbXqbXrbEGbNFbQVbQVbQVbQVbQVbXsasJasJbXtbCMbVNbVObRaaVdbXvbVQbXwbInbSPbXxbRgbXybRibzLabqbzLbXzbXAbXBbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbeXbeXbeXbIFbIFceqbIFbIFbeXbeXbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaUNbUBbUBaUNdgndgjbBtbBtdgobBtbsxdgqapfbXHavUavUavUbDLapdatkaoXaqBayBapdbXIauyauCapfapfapfapfapfbXKapfapfbFuatjbzKbXLbXMbXNbXNbWsbWtbXPbzKbXQbXRbXSbzKbDQbfIbXTbMSbQdbXUbXVbXWbXXbOBbXYbXZbYabMWbMWbYbbYcbYdbYebYfbNdbYgbSdaVsbYibYjbNhbYkbYlbYmbYnbNUbYobYobYpbNhbYqbhtbYrbbrbOWbQIbYvbYEbYwbStcbacbbbUcbYxbYybYzbYAbYBbYCbYDccrbQIbEGbEGbEGbEGbEGbNFaoGbYGbUrasJasJchGchFaXPasJbCMbCMbYJbNRbVPbCNbYKbYLbGGbYMbVRbRgbYNbSUbItbMjbMkbYObVVbYPbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbeXbeXbeXbeXbeXbdObeXbeXbeXbeXbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabredgrdgtdgsdgvdgudgxdgwdgyapfapfapfapfbWmbYRavUbYSbYTbYUbYVbYVdfibYWbYVbYVbYTbYVbYVbYVbYZbYVaPTbZaapdbzKbZbbZcbZdbZebHrbZfbZgbzKbzKbzKbzKbzKbZhbfIbOvdeEbMSbZjbZjbZjbMSbMSbMWbMWbZkbMWbMWbZlbZlbZlbZmbZlbZnbZnbZobZpbZnbZnbNhbNhbNhbNhbNhbNhbZqbZqbZqbNhbZrdeFbZsbbrbZtbZubZvbZvbZvbZwbZvbZvbZxbZybZvbZvbZvbZvbQIbZzbZAbZBbZCbZDbZEasJbZFbZGaoGbVLbZHbZIasJbYHckgasJarrbCMbZJbJWbZKbCNbCNbCNbZLbGGbZMbZNbRgbUwbRibzLabqbGLbGLbGLbGLbGLabqabqbRmabqbPGabqabeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbKkbvhbvhbvhbvhbvhbvhbdObvhbvhbvhbvhbvhbvhbvibdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgrdgfdgzdgzdgzdgzdgzdgAaaaabqaaabZPbZPbZQbZRbZSapfbZTapfapfapfaYabZUbZUbZUbZUbZUbZUbZUapdbZVbZWbZXbzKbZYbZZcaacabbHrbWscaccadcaeayBapfcafbzPcagcahcaicajcakcakcakcalcamcancaocakcapcaqcaicaicarcascarcarcatcarcaucavcavcawcaxcaycazcaAcaBcakcakcakcaCcaDcavcaEbbrcaFcaGbajcaIcaJcaKcaLcaMcaNcaKcaOcaQcaPcaRbQIcaScaTcaUcaVcaWcaXcdobZGcaZaoGaoGaoGaoGaoGcmHbXtbCMbCMbCMcbcbJWbNRcbdbbdbbPbKacbgcbhcbibVScbjbPCbHGbIubIvcbkcblcblbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdclHcerbMrbMrbMrbMrbMrcLLcLLcQccLLcLLbMrbMrbMrbMrbMrbNXaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaUNbcdbcebcebcebcedfUdfTdfWdfVdfYdfXdgadfZbLCdgbbTmapfbgYauyatkbFpbHhbTnbHfbHfbTnbTobFpbTparJarLbPPbPQbRHapfbFubTrbzKbTsbTtbTubTvbFwbTwbTxbTybTzbTAbzKbTBbzPbfIbTCbMSbTDbTEbTFbTGbOBbOBbTHbTIbTJbTKbMWbRZbSabSabSabTLbNdbSdbSebTMbTNbTObNhbTPbSibTQbTRbNhbTSbTTbTUbNhbTVbhtbTWbbrbTXaUJbUabUabUbbUcbUdbStbStbUebUfbQIbUgbUhbUibUhbUjbQIbUkbUlbUmbUnbEGbNFbQVbUobUpbUqbQVasJasJasJbUrbCMbSJbUsbUtbCNbCNbCNbUubGGbUvbGGbRgbUwbRibzLabqbGLbGLbGLbGLbGLabqaaaabeaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbIFbKlbXDbXFbXEbYQbXGcckbZObKlbIFbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaUNaUNbUBbUBaUNaUNbNWaWDbQNdgRbQNdfNaWDapfbLDapfapfapfbgYauCatkbFpbTobUDbUEbHfbUEbUFbFpbUGapdapdatjbUHbXJapfbFuaoXbzKbzKbaibUIbUJbaibzKbzKbzKbzKbUKbzKbzKbULbjnbUMbMSbUNbUObUPbUQbURbOBbUSbUTbUUbUVbMWbUWbUXbUYbUZbVabNdbVbbSebVcbVdbVebNhbVfbSibVgbVhbQmcclcdBccmbNhbVmbhtbVnbbrbOWaUXbVtbVqbXcbYtbYsbVubVqbUebVvbQIbVwbVxbVybVzbUjbQIbVAbVBbVCbVDbVEbVFbQVbVGbVHbVIbQVbVJbVKbVLbVMbCMbVNbVObRabVPbCNbVQbSRbGGbSPbVRbVSbVTbPCbHGbIubIvbVUbVVbVWbGLabqaaabFcaaabFbaaabFcaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdclHbdMbeWbeXbeXaXLaXLbKlbKlcepbKlbKlaXLaXLbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaUNbWcbfdaUNdghdgjdgibBtdgkbBtdgldgmapfbLEauJbLKaoXbMCbWgbWibFpbFpbFpbFpbWjbFpbFpbFpbWkdeJdeHapdbWlbWmapfbFubWobzKbWpbWqbWrbWsbWtbWubWvbzKbWwbWxbWybzKbzPbfIbWzbMSbQdbTEbWAbWBbQdbOBbWCbWDbWEbWFbMWbWGbWHbWIbWJbWKbWLbWMbWNbWObWPbWQbNhbWRbWSbWTbWUbWVbWWbWXbWYbWZbXabhtbXbbbrbOWaUXbYubXdbXdbXebXfbXgbXhbNxbXjbQIbXkbVxbXlbXmbXnbQIbXobXpbXqbXrbEGbNFbQVbQVbQVbQVbQVbXsasJasJbXtbCMbVNbVObRaaVdbXvbVQbXwbInbSPbXxbRgbXybRibzLabqbzLbXzbXAbXBbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbeXbeXbeXbIFbIFceqbIFbIFbeXbeXbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaUNbUBbUBaUNdgndgjbBtbBtdgobBtbsxdgqapfbXHavUavUavUbDLapdatkaoXaqBayBapdbXIauyauCapfapfapfapfapfbXKapfapfbFuatjbzKbXLbXMbXNbXNbWsbWtbXPbzKbXQbXRbXSbzKbDQbfIbXTbMSbQdbXUbXVbXWbXXbOBbXYbXZbYabMWbMWbYbbYcbYdbYebYfbNdbYgbSdaVsbYibYjbNhbYkbYlbYmbYnbNUbYobYobYpbNhbYqbhtbYrbbrbOWbQIbYvbYEbYwbStcbacbbbUcbNzbNybNBbNAbNDbNCbUCbPObQIbEGbEGbEGbEGbEGbNFaoGbYGbUrasJasJchGchFaXPasJbCMbCMbYJbNRbVPbCNbYKbYLbGGbYMbVRbRgbYNbSUbItbMjbMkbYObVVbYPbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbeWbeXbeXbeXbeXbeXbeXbdObeXbeXbeXbeXbeXbeXbeYbdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabredgrdgtdgsdgvdgudgxdgwdgyapfapfapfapfbWmbYRavUbYSbYTbYUbYVbYVdfibYWbYVbYVbYTbYVbYVbYVbYZbYVaPTbZaapdbzKbZbbZcbZdbZebHrbZfbZgbzKbzKbzKbzKbzKbZhbfIbOvdeEbMSbZjbZjbZjbMSbMSbMWbMWbZkbMWbMWbZlbZlbZlbZmbZlbZnbZnbZobZpbZnbZnbNhbNhbNhbNhbNhbNhbZqbZqbZqbNhbZrdeFbZsbbrbZtbZubZvbZvbZvbZwbZvbZvbZxbZybZvbZvbZvbZvbQIbZzbWfbWnbWhbXibZEasJbZFbZGaoGbVLbZHbZIasJbYHckgasJarrbCMbZJbJWbZKbCNbCNbCNbZLbGGbZMbZNbRgbUwbRibzLabqbGLbGLbGLbGLbGLabqabqbRmabqbPGabqabeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaXHbdMbKkbvhbvhbvhbvhbvhbvhbdObvhbvhbvhbvhbvhbvhbvibdMaXOabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgrdgfdgzdgzdgzdgzdgzdgAaaaabqaaabZPbZPbZQbZRbZSapfbZTapfapfapfaYabZUbZUbZUbZUbZUbZUbZUapdbZVbZWbZXbzKbZYbZZcaacabbHrbWscaccadcaeayBapfcafbzPcagcahcaicajcakcakcakcalcamcancaocakcapcaqcaicaicarcascarcarcatcarcaucavcavcawcaxcaycazcaAcaBcakcakcakcaCcaDcavcaEbbrcaFcaGbajcaIcaJcaKcaLcaMcaNcaKcaOcaQcaPcaRbQIcaScaTcaUbYxbYycaXcdobZGcaZaoGaoGaoGaoGaoGcmHbXtbCMbCMbCMcbcbJWbNRcbdbbdbbPbKacbgcbhcbibVScbjbPCbHGbIubIvcbkcblcblbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdclHcerbMrbMrbMrbMrbMrcLLcLLcQccLLcLLbMrbMrbMrbMrbMrbNXaWCabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgrdgJdgzdgzdgzdgzdgDdgraaaabqaaabZSbcEcbncbobZSapdcbpbPQcbqapfcbrbZUcbscbtcbucbvcbwbZUapdaoXbZWaoXbzKbzKbzKbzKbzKbzKbzKbzKbzKaxqaoXapfcbxbzPcbycbzbekbekbekbekbekbekbenbekcbAcbBcbCbembekbekbekbvTcbDcbEcbFbekbekbekbekbekcbGcbHbekbekbenbekbekbekbekcbIbekcbAcbJcbKcbLcbMcbNcbOcbNcbPcbPcbQcbRcbScbPcbOcbTbQIbQIbQIbQIcbUcbVasIarrbdlcbXasIcbXazpbefaoGayoaoGbCMccaccbcccccdcceccfccfccfbMcbGGbGGbGGbRgccgbRibzLabqbzLcchcciccjbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaaabPHbsdbsdbsdbPHbNYbbXcUIcUMcUIbbZaXOabqaaaaaaaaaabqaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgrdgzdgzdgzdgzdgzdgzdgraaaabqabqbZSccnccoccpbZSapdccqaEjapfapfccsbZUchyccuccvccwccxbZUapdapdccybYVbYTbYVbYVbYVcczccAccAccAccAccBbcGccCccDccEccFccGccHccIccJccGccGccGccKccGbdabcXccLbcYbcXbcXbcXccMccNbcZbcYbcXbcXbcXbdbccOccPccQccQccQccRccQccQccQccSccTccOccUccVccWccXccYccZcdacdbcdccddcdecdfcdgcdhcdecdibZvcdjcdkbZvcbUcbVasIasIasIasIasIcdmcdocdocdpcdqcdrcdscdtcducdvcdwcdxbGGbGGbGGbGGbGGbInbGGbRgcdybSUbItbMjbMkcdzcblcdAbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdaXHcerbzhcWjbzhbNXaXOabdabdabdabdabdabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgrdgrdgBdgFdgFdgFdgrdgraaaabqaaabZScdCcdDcdEbZScdFapdcdGapfcdHceNbZUcdJcdKcdLbeVcdNbZUbZUbZUbZUbZUbZUcdObZUbZUcdPcdQcdRaoXauycdSauCcdTcdTcdTcdTcdTcdTcdTcdUcdUcdUcdUcdUcdVcdWcdWcdXcdYcdWcdZcdWceacebbbrceccedceecefceecegcehceeceeceibZubbgbbibbicejbZucekbZuaYxcemaYxbZvcenceocfDcdhcitcescdfcixcdhcetceubZvcevcewbZvcexceycezcdocdocdocdoceAceBceCceDceCceCbPmceFceGceHbGGceIbPwbPwbPwbPwbPwceJbGGbRgbUwceKbCMabqbGLbGLbGLbGLbGLabqaaabFcaaabFbaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdaaabsdbsdbsdbsdbsdaaaabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadgGdgHdgHdgHdgHdgHdgHdgGaaaabeaaabZSbTYceMbTYbZSapfapfapfapfbZUceNbZUceOcePbfkceRceSbZUceTceUceVbZUceWceXceYbZUceZbZUbZUbZUbZUbZUbZUcdTcfabfmbgHbglcfecffcdUcfgcfhcficdUbgIcfkbgIcflcfmbgIcfkbgIcfncfocfpcfqcfrcOmcftcOmcfucfvcOmcftcOmcfwcfxcfxcfxcfxcfxcfybZucfzcfAcfBbajcfCcbOcdfcdhcdhcdecfDcdhcdhcdecfEbZvcfFcfGbZvcbUbgJcfIceCceCceCceCceCcfJcfKcfLcfKcfKbCMcfMcfNcfOcfPcfQbInbGGbGGceIbPwcfRbSSbRgcfSbRibCMabqabqabqabqabqabqabqabqbPFabqbPGabqbRmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaaaaabTYcfTbTYaaaabqaaaaaaaaabZUceNbZUbZUbZUbZUcfUbZUbZUcfVcfWcfVbZUbZUbZUbZUbZUcfXcfYbZUcfZcgacgbcgccgdcgecgfcggcgfcghcgicgjcgkcglcgmbVocgocgpcgqcgrcgscgtcgucgvcfkcgwcgxcgycftcgzcgAcgBcgCcgDcgEcgFcgGcgHcfxcgIcgJcgKcfxcjUbZucgMcgNcgOcgPcgQcgRcgScgTcgUcgRcgScgTcgTcgRcgVcgWcgXcgYcgZchacbVasIchbchccfKcfKcfKcfKcfKchdchechfbCMchgchhbGGbGGbSPchibIqbIqchjchkchjbIqchlchmbRibCMbCMbCMaUVaUUaUVaUUaUVaaabFcaaaabqaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeabqabqbTYceMbTYabqabqabqabqabqbZUchncjechpbZUchqchrchybZUchtbgZchvchwchxchychzbZUchAchBchCchDbhacmJcoQchHchIchJchKchLchMchNchOcdUchPchQcaHchSchTchUchVchWchXchYchZciacgwcgxcgycibciccidciecifcigcihcihciiciicelcikcilcimcfxcinbZuciocipciqbajcircisciuciucivciuciwciucKCcJFciybZvcizciAciBciCcfJaoGaoGaoGcfKciDciEciFciGciHciIciJbCMciKciLciMciNciOciPciQciRciSciTciUciVciWciXbRiciYciZciYcjacjacjacjacjbabqabeaaaabqaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaacjcaaaaaaabqaaaabqaaabZUbZUbZUceNbZUcjdcjecjfcjgcjhcjicjjchychychycjkbZUcjlcjmbZUcdNcjncjocjpcdTcjqcjrcjscjtcjucjvcjwcjxcjxcjycjxcjzcjAcjBcjBcjCcjDcjEcjFcjGcjHcjIcjJcibciccicciccjKcjLcjMcjNcjOcjPceLcjRcjScjTcfxcjUbZubZubZubZubZvbZvcjVbZvbZvbZvbZvbZvbZvbZvbZvbZvbZvbZvbZvbZvcbUcjXaoGcjYcjZcfKckackbckcckdbhvckfbhHbCMckhckhckickhckjckhckickkckjckjbRickhcklckmcknbCMbCMbCMckockpcjackqckoaaabFcaaaabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaackraaaaaaabqaaacksckscktckubZUckvckwckxbZUbZUbZUckybibchyckAckBbZUbZUbZUckCckDbZUckEckEckEckEckEckEckEckFcjtckGckHckIcjxckJckKckLckMckNckOckPckQckRckSckTbgIcgwckVcgycOmckWckXckYckZclaclbclccldclecfxclfclgclhcfxclicljcljcljcljcljcllclmcljcljcljclocljcljcljcljcljclqclrboccdocltcluclvclwbVKcfKclxclyclzclybiBbiUbiObCMbCMbCMcgnbzLchRbzLcgnbzLchRchRcijbzLcijbCMbCMbCMabqabqabqclHcjaaWCabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabeabqclIabqabqabqaaaabqabqbZUcbtclJclKbZUbZUbZUclLbZUbZUbZUbZUbZUbZUbZUclMclNcjlclOclPckEclQclRclSclTclUckEclVclWclXclYclZcjxcmacmbcmccmdcmecmfcmgcmhcjQcmjcjQcmkcmlckVcmmcmncmocmocmocmocmpcmqcmrbkSbkTcfxcmucmvcmwcfxcmxbkXcmzcmzcmzcmzcmAcmzcmBcmBcmBcmBcmBcmBcmBcmBcmBcmCaoGasJasJasJasJaoGasJasJcfKcmEcmFbkYclybiBbiUbkZblrabqabqcmKabqcmLabqcmKabqcmMcmNcmOabqcmOabqabqabqabqaaaaaacmPcjacmQaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaarBaaacmRaaaabqaaaaaaabqaaabZUcmSbZUchncjecjecmTcjecjecmUcmVcmVcmVcmWcmVcmVcmVcmXcmYcmZcnacnbcnccndcnecnfckEcdTcngckUcnicdTcjxcrjclEcjxcnlcnmcmgcnncnocnpcnqcnrcmgcnscntcnucmobmRcnwcnxcnycnxcnzcmocnAcnBcnCcnDcnCcfxcfxcnEbZUcmzcnFcnGcnHcnIcnJcmBcnKcnKcnKcnLcnMcnNcnKcmBcmCaoGclsasIcnPcnQaoGcnRcnScfKbobbtLbrWbvxbulbiUbwMclAabqbGLcnYbzLcnYbGLcnYbzLcnYbGLcnZbzLcoabGLabqaaaabqabqabqcobcjacocabqabqabeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqarBaaacjcaaaabqaaaaaaabqaaabZUbZUbZUbZUbZUbZUbZUbZUbZUcodcoecoecofcogcogcogcogcohcogcogcogcoicojcokcolcomconcoocopcoqcorcoscotcoucovcowcoxcoycozcoAcoBcoCcoDcoEcmgcoFckVcmmcmpcoGcoHcoIcoJcoKcoLcmocoMcoNcoOcoPcmzcdNcjncrFcrvcmzcoRcoScoTcoUcoVcmBcnKcoWcoXcoYcnKcoZcpacmBcmCaoGaoGaoGaoGaoGaoGaoGaoGcfKcfKcfKclFclAclBbyPclDclAabqbGLcphcpicpjbGLcpkcplcpmbGLcpncpocppbGLabqaaaabqaaabCMcpqcprcpscptaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaaaaabTYcfTbTYaaaabqaaaaaaaaabZUceNbZUbZUbZUbZUcfUbZUbZUcfVcfWcfVbZUbZUbZUbZUbZUcfXcfYbZUcfZcgacgbcgccgdcgecgfcggcgfcghcgicgjcgkcglcgmbVocgocgpcgqcgrcgscgtcgucgvcfkcgwcgxcgycftcgzcgAcgBcgCcgDcgEcgFcgGcgHcfxcgIcgJcgKcfxcjUbZucgMcgNcgOcgPcgQcgRcgScgTbYAbYzbYCbYBbYBbYzbZAbYDbZCbZBcaVbZDcbVasIchbchccfKcfKcfKcfKcfKchdchechfbCMchgchhbGGbGGbSPchibIqbIqchjchkchjbIqchlchmbRibCMbCMbCMaUVaUUaUVaUUaUVaaabFcaaaabqaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeabqabqbTYceMbTYabqabqabqabqabqbZUchncjechpbZUchqchrchybZUchtbgZchvchwchxchychzbZUchAchBchCchDcaWcmJccrchHchIchJchKchLchMchNchOcdUchPchQcaHchSchTchUchVchWchXchYchZciacgwcgxcgycibciccidciecifcigcihcihciiciicelcikcilcimcfxcinbZuciocipciqbajcircisciuciucivciuciwciucKCcJFciybZvcizciAciBciCcfJaoGaoGaoGcfKciDciEciFciGciHciIciJbCMciKciLciMciNciOciPciQciRciSciTciUciVciWciXbRiciYciZciYcjacjacjacjacjbabqabeaaaabqaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaacjcaaaaaaabqaaaabqaaabZUbZUbZUceNbZUcjdcjecjfcjgcjhcjicjjchychychycjkbZUcjlcjmbZUcdNcjncjocjpcdTcjqcjrcjscjtcjucjvcjwcjxcjxcjycjxcjzcjAcjBcjBcjCcjDcjEcjFcjGcjHcjIcjJcibciccicciccjKcjLcjMcjNcjOcjPceLcjRcjScjTcfxcjUbZubZubZubZubZvbZvcjVbZvbZvbZvbZvbZvbZvbZvbZvbZvbZvbZvbZvbZvcbUcjXaoGcjYcjZcfKckackbckcaRQbhvckfbhHbCMckhckhckickhckjckhckickkckjckjbRickhcklckmcknbCMbCMbCMckockpcjackqckoaaabFcaaaabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaackraaaaaaabqaaacksckscktckubZUckvckwckxbZUbZUbZUckybibchyckAckBbZUbZUbZUckCckDbZUckEckEckEckEckEckEckEckFcjtckGckHckIcjxckJckKckLckMckNckOckPckQckRcfjckTbgIcgwckVcgycOmckWckXckYckZclaclbclccldclecfxclfclgclhcfxclicljcljcljcljcljcllclmcljcljcljclocljcljcljcljcljclqclrboccdocltcluclvclwbVKcfKclxclyclzclybiBbiUbiObCMbCMbCMcgnbzLchRbzLcgnbzLchRchRcijbzLcijbCMbCMbCMabqabqabqclHcjaaWCabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabeabqclIabqabqabqaaaabqabqbZUcbtclJclKbZUbZUbZUclLbZUbZUbZUbZUbZUbZUbZUclMclNcjlclOclPckEclQclRcgUclTclUckEclVclWclXclYclZcjxcmacmbcmccmdcmecmfcmgcmhcjQcmjcjQcmkcmlckVcmmcmncmocmocmocmocmpcmqcmrbkSbkTcfxcmucmvcmwcfxcmxbkXcmzcmzcmzcmzcmAcmzcmBcmBcmBcmBcmBcmBcmBcmBcmBcmCaoGasJasJasJasJaoGasJasJcfKcmEcmFbkYclybiBbiUbkZblrabqabqcmKabqcmLabqcmKabqcmMcmNcmOabqcmOabqabqabqabqaaaaaacmPcjacmQaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaarBaaacmRaaaabqaaaaaaabqaaabZUcmSbZUchncjecjecmTcjecjecmUcmVcmVcmVcmWcmVcmVcmVcmXcmYcmZcnacnbcnccndcnecnfckEcdTcngckUcnicdTcjxcrjclEcjxcnlcnmcmgcnncnocnpcnqcnrcmgcnscntcnucmobmRcnwcnxcnycnxcnzcmocnAcnBcnCcnDcnCcfxcfxcnEbZUcmzcnFcnGcnHcnIcnJcmBcnKcnKcnKcnLcnMcnNcnKcmBcmCaoGclsasIcnPcnQaoGcnRcnScfKaTJbtLbrWbvxbulbiUbobclAabqbGLcnYbzLcnYbGLcnYbzLcnYbGLcnZbzLcoabGLabqaaaabqabqabqcobcjacocabqabqabeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqarBaaacjcaaaabqaaaaaaabqaaabZUbZUbZUbZUbZUbZUbZUbZUbZUcodcoecoecofcogcogcogcogcohcogcogcogcoicojcokcolcomconcoocopcoqcorcoscotcoucovcowcoxcoycozcoAcoBcoCcoDcoEcmgcoFckVcmmcmpcoGcoHcoIcoJcoKcoLcmocoMcoNcoOcoPcmzcdNcjncrFcrvcmzcoRcoScoTcoUcoVcmBcnKcoWcoXcoYcnKcoZcpacmBcmCaoGaoGaoGaoGaoGaoGaoGaoGcfKcfKcfKclFclAclBbwMclDclAabqbGLcphcpicpjbGLcpkcplcpmbGLcpncpocppbGLabqaaaabqaaabCMcpqcprcpscptaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabeaaackrabqabqabqabqabqaaabZUcpucpvcpwcpxcpycpzcpAbZUcodcoecpBcpCcpDcpEcpFcoecpGcpHcpIcoecpJcpKcpLcpMcpNcpOcpPcpQcpRcpScpTcpUcpTcpScpTcpVcpWcpXcpYcpZcqacqbcrVcjQcnsckVcrWcmocqdcqecqfcqgcqhcqibyScqkcqlcqmcqncmzcqocqpcqqcsncmzcqscqtcqucqvcqwcmBcnKcnKcqxcnKcnKcqycqzcmBcmCbZUcqAcqBbZUcqCcqDcqFcqEcqHcqGbZUcsoclAcqrbArcqIclAabqbGLcqKcqLcqMbGLcqNcqOcqPbGLcqQcqRcqSbGLabqabqabqabqcptcqTcqUcqVcqWabqabeabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaarBaaackrabqaaaaaaaaaabqaaacmicqYcqZcracrbcpycrccrdbZUcodcoecrecrfcrgcrhcricCKcrkcrlcrmcoeaovaotcrpcrncrobALcrtcructAcrwcrxcrycrycrycrzcrAcrBcrCcrDcpZcrEctBcrGcmgcrHckVcrIcmocrJcrKcrLcrMcrNcrOcmocrPcrQcrRcrScmzcrTcrUctSctEcmzcrXcrYcrZcsacsbcmBcmBcscbANbIObIOcmBbIPcmBcsgcshcsicsjbZUcskchychychycdKcslbZUbKxctucnXbKRcNmctuabqbGLcqKcsqcqKbGLcqNcsrcqNbGLcsscstcssbGLabqaaaabqaaacqWcqUcsucqUcjaaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqabeabqckrabqaaaaaaaaaabqaaacmicsvcrccqZcswcpycsxbZUbZUcsycoebMObLSbMObNVbMOcoebMOcsCbMOcoeckEbOgcsEcszckEckEcsGcsHcsIcsJcsJbPcbPXbPicsJcsJcsNcmgcsOcsPcsQcyCcmgcmgcsSckVcsTcmocmocsUcsVcsWcsXcsYcmocsZcnBcfwcfwcmzctacmzctbcmzcmzcfwctcbQvcfwcfwctectfctgcthctictjcrqctlcmBctmbZUctnctobZUctpcdKchychychyctrbZUbKxctubQAbRzbQZbSlabqbGLbGLbGLbGLbGLbGLbGLbGLbGLbGLbGLbGLbGLabqabqabqabqcjacqUcqUcqUcqWabqbFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaabqaaaaaaarBaaaclIaaaaaaaaaaaaabqaaacmictwcqZcswctxcpyctyctzcdOcodcoeczqczpctCctDczJcoectFctGctHcoectIctJctKctLctMbTqctOcgrctPcsJctQctRcABctTbVicsJccvcmgctVctWctXctYcjQctZcuacubcuccudcuecufcugcuhcuicujbWeculcumcuncuocupciccuqcurcusciccutcuucuvciccuwctecuxcuycuzcuAcuBcuCcuDcmBcmCbZUbZUcuEbZUcuFcuGchychycuHcuIcmibKxctuctubWnctuctuabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqaaaabqaaacjacqWcptbCMcptaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaaaaaabqaaaaaaabeaaacmRabqaaaaaaaaaabqaaacmicmicqZcpycpycqZcqZcuJcdOcodcoecuKcuLcuMcuNcuOcoecuPcuQcuRbXucuTcuUcuVcuWcuXcuYcuZcgrcgsbPccvacvbcvccvdcvecsJchycmgcvfcvgcvhcvicvjcvkcvlckVcvmcvncvocvpcvqcvrcvscvtcvucvvcvwcvxcvycvzcvAcvBcvCcvDcvEcvDcvFcvGcvHcvIcvJcvKcvLcvMcvNcvOcvPcvQcvRcvSbZUcvTcvUcvVcbvchychychycvWcvXbZUbXOcynctubYhctucspaaaaaaaaaaaaaaaabqaaaaaaaaaabqaaaaaaaaaaaaabqaaaabqaaaaaaabqaaaabqaaaaaaabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaarBaaackrabqaaaaaaaaaabqaaacmicqYcqZcracrbcpycrccrdbZUcodcoecrecrfcrgcrhcricCKcrkcrlcrmcoeaovaotcrpcrncrobALcrtcructAcrwcrxcrycrycrycrzcrAcrBcrCcrDcpZcrEctBcrGcmgcrHckVcrIcmocrJcrKcrLcrMcrNcrOcmocrPcrQcrRcrScmzcrTcrUctSctEcmzcrXcrYcrZcsacsbcmBcmBcscbANbIObIOcmBbIPcmBcsgcshcsicsjbZUcskchychychycdKcslbZUbKxctucnXbyPcNmctuabqbGLcqKcsqcqKbGLcqNcsrcqNbGLcsscstcssbGLabqaaaabqaaacqWcqUcsucqUcjaaaabFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqabeabqckrabqaaaaaaaaaabqaaacmicsvcrccqZcswcpycsxbZUbZUcsycoebMObLSbMObNVbMOcoebMOcsCbMOcoeckEbOgcsEcgVckEckEcsGcsHcsIcsJcsJbPcbPXbPicsJcsJcsNcmgcsOcsPcsQcyCcmgcmgcsSckVcsTcmocmocsUcsVcsWcsXcsYcmocsZcnBcfwcfwcmzctacmzctbcmzcmzcfwctcbQvcfwcfwctectfctgcthctictjcrqctlcmBctmbZUctnctobZUctpcdKchychychyctrbZUbKxctubQAbKRbQZbSlabqbGLbGLbGLbGLbGLbGLbGLbGLbGLbGLbGLbGLbGLabqabqabqabqcjacqUcqUcqUcqWabqbFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaabqaaaaaaarBaaaclIaaaaaaaaaaaaabqaaacmictwcqZcswctxcpyctyctzcdOcodcoeczqczpctCctDczJcoectFctGctHcoectIctJctKctLctMbTqctOcgrctPcsJctQctRcABctTbVicsJccvcmgctVctWctXctYcjQctZcuacubcuccudcuecufcugcuhcuicujbWeculcumcuncuocupciccuqcurcusciccutcuucuvciccuwctecuxcuycuzcuAcuBcuCcuDcmBcmCbZUbZUcuEbZUcuFcuGchychycuHcuIcmibKxctuctucgWctuctuabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqaaaabqaaacjacqWcptbCMcptaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaaaaaabqaaaaaaabeaaacmRabqaaaaaaaaaabqaaacmicmicqZcpycpycqZcqZcuJcdOcodcoecuKcuLcuMcuNcuOcoecuPcuQcuRbXucuTcuUcuVcuWcuXcuYcuZcgrcgsbPccvacvbcvccvdcvecsJchycmgcvfcvgcvhcvicvjcvkcvlckVcvmcvncvocvpcvqcvrcvscvtcvucvvcvwcvxcvycvzcvAcvBcvCcvDcvEcvDcvFcvGcvHcvIcvJcvKcgYcgXchacgZclSckScszcoQbZUcvTcvUcvVcbvchychychycvWcvXbZUbXOcynctubYhctucspaaaaaaaaaaaaaaaabqaaaaaaaaaabqaaaaaaaaaaaaabqaaaabqaaaaaaabqaaaabqaaaaaaabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaabqabqaaaaaaarBaaacjcaaaaaaaaaaaaabqaaacmicvZcqZcwacqZcqZcsxbZUbZUcwbcwccwdcuLcwecuNcwfcwgcwhcwicwjcwkcwlcwmcwncwocwpcwqcwrcwscjAbYFcwucwvcwwcwxcwwcwycwzcmgcwAcwBcwCcwDcjQcvkcvlckVcvmcwEcmpcwFcwGcwHcwIcwJbWecwKcwLcwMcwNcwOcwPcwQcwRcihcihcwScwTcwUcwVcwWcwXcwYcwZcxacxbcxccxdcxecmBcmCbZUcxfcxgcxhcsicxicuHchychycxjcmictscttdbjctvdbjarAabqabebFbbFbbFbbFbbFbbFbabebFbbFcbFbbPGabqbFcabqabqabebRmbRmbRmabeabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaabqaaaaaaarBaaackraaaaaaabqabqabqaaacmicxkcpycracpycxlchscxmbZUcodcoecxncxocxpcxqcxrcoecxscxtcxucoecxvcxwcxxcxycxzbTqcxAcgrcxBcsJcxCcxDcxEcxFcxGcsJcxHcmgcmgcxIcmgcmgcmgcmgcxJcxKcxLcmocmocmocmocmocxMcxNcmocmzcmzcxOcxPcxQbYXbYIbYYcxUcxUcxUcxUcxVcxWcxXcxVcmBcmBcmBcxYcxZcyacybcmBcmCbZUcvTcycbZUcydcyecyfcygcygcyhbZUabqabqabqabqabqabqaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabqaaabFcaaaaaaabqaaaaaaabqaaaabqabqaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBarBabqabearBaaaabearBarBabqabqabqckrabqabqabqaaaabqabqcmicpycxlcpycyictqcyjcykcylcymcoecAMcuLcyocypcCScoecyrcxtcyscoecoecoecytcytcytcytcyucyvcywcyxcyycyzcyAcyBcKYcsJcyDcyEcyEcyGcyHcyIchBcyJcyKcyLcyMcyNcyOcyEcyPcyQcyRcyScyTcyUcyVcyWcyXcyYcaYczaczbczcczdczeczfcxVczgczhcziczjczkcmBcmBcmBcmBcmBcmBcmCbZUbZUbZUbZUbZUbZUbZUcmibZUbZUbZUaaaabqaaaaaaaaaabqabqabqabebFcbFcbFcabebFcbFcbFcabebFcbRmbFcbFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczmaaaaaaaaaabqaaaaaaaaaabqaaaaaaabqaaaclIaaaaaaabqaaaabqaaacmicmicmibZUbZUcznczobZUbZUcodcoecMbcuLcwdcuNcMXcoecwdcxtcwdcwdczrcoeczscztczuczvcwrczwczxcsJczyczzczAczBczBczBczBczBczBczBczCczDczCczEczFczGczHczIcMYczKczLbZUczMczMczNczMczMczOczPczQcaYczRczSczTczUczVczWcxVczXczYczZcAacAbcrUcfYclPbZUcAccmYcAdbZUcAecfYbZUaaaabqaaaaaaaaaaaaabqaaaabqaaaaaaaaaaaaaaaaaaaaaabqaaaabqaaaaaaabqaaaabqaaaabqaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaacAfcAfcAfcAfcAfabqabqabqcAfcAfcAfcmRcAfaaaarBaaaabqaaaaaaaaaaaabZUbZUbZUbZUbZUcAgcodcwccwdcuLcwecuNcwdcAhcwdcAicwdcwdczrcoecAjcAkcAlcbecAncAocApcsJcsJcsJcsJczBcAqcArcOUcMscAuczBcAvcAwcAxcAycAzcgxcAAbZUcMZcACcADcAEczMcAFcAGcAHczMcAIcAJcAKcbfcPkcANcAOcAPcAQcARcxVcAScATcAUcAVcAWcrUcAXcAYcAZcBackDcBbcAZcBccvWcmiabqabqabqabqabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBarBabqabearBaaaabearBarBabqabqabqckrabqabqabqaaaabqabqcmicpycxlcpycyictqcyjcykcylcymcoecAMcuLcyocypcCScoecyrcxtcyscoecoecoecytcytcytcytcyucyvcywcyxcyycyzcyAcyBcukcsJcyDcyEcyEcyGcyHcyIchBcyJcyKcyLcyMcyNcyOcyEcyPcyQcyRcyScyTcyUcyVcyWcyXcyYcaYczaczbczcczdczeczfcxVczgczhcziczjczkcmBcmBcmBcmBcmBcmBcmCbZUbZUbZUbZUbZUbZUbZUcmibZUbZUbZUaaaabqaaaaaaaaaabqabqabqabebFcbFcbFcabebFcbFcbFcabebFcbRmbFcbFcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczmaaaaaaaaaabqaaaaaaaaaabqaaaaaaabqaaaclIaaaaaaabqaaaabqaaacmicmicmibZUbZUcznczobZUbZUcodcoecMbcuLcwdcuNcMXcoecwdcxtcwdcuScvLcoeczscztczuczvcwrczwczxcsJczycvMczAczBczBczBczBczBczBczBczCczDczCczEczFczGczHczIcMYczKczLbZUczMczMczNczMczMczOczPczQcaYczRczSczTczUczVczWcxVczXczYczZcAacAbcrUcfYclPbZUcAccmYcAdbZUcAecfYbZUaaaabqaaaaaaaaaaaaabqaaaabqaaaaaaaaaaaaaaaaaaaaaabqaaaabqaaaaaaabqaaaabqaaaabqaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaacAfcAfcAfcAfcAfabqabqabqcAfcAfcAfcmRcAfaaaarBaaaabqaaaaaaaaaaaabZUbZUbZUbZUbZUcAgcodcwccwdcuLcwecuNcwdcAhcwdcAicwdcvNczrcoecAjcAkcAlcbecAncAocApcsJcsJcsJcsJczBcAqcArcOUcMscAuczBcAvcAwcAxcAycAzcgxcAAbZUcMZcACcADcAEczMcAFcAGcAHczMcAIcAJcAKcbfcPkcANcAOcAPcAQcARcxVcAScATcAUcAVcAWcrUcAXcAYcAZcBackDcBbcAZcBccvWcmiabqabqabqabqabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeabqcBdcBecBecBecBecBfckrcBgcBhcBhcBhcBhcBiabqabqabqabqabqabqabqabqbZUcFRcFScFRbZUcBjcBkcoecBlcBmcxpcBncBocoecxscwdcwdcwdcBpcoecBqcBrcBrcBrcBscBtcBucBvcBwcBxcByczBcBzcBAcBBcBCcBDczBcBEcBFcBGcBHcAzcgxcBIcBJcBKcBJcBJcBJczMcBLcBMcAGcxScBOcBPcBQcBRcBScBTcBUcBUcBVcAQcxVcBWcATcBXcBYcBZcrUcbmcCbbZUcmCchycCdbZUchycCebZUaaaabqaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaDaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqcCfcCfcCfcCfcCfaaackraaacCfcCfcCfcCfcCfaaaarBaaaaaaaaaaaaabqabqbZUbZUbZUbZUbZUchycBkcoecCgcChcCicCjcCkcoecClcwdcCmcCncCocoecCpcCqcCrcbWcCtcCucCvcBvcCwcCxcCyczBcCzcCAcCBcCCcCDczBcCEcCFczCczCcCGcgxcmmcBJcCHcCIcCJcFoczMcCLcAGcCMczMcCNcCOcCPcxUcCQcCRcPCcCTcCUcCVcxVcCWcCXcCYcCZcBYcrUbZUbZUbZUctmbZUcDabZUbZUbZUbZUabqabqaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqcCfcCfcCfcCfcCfaaackraaacCfcCfcCfcCfcCfaaaarBaaaaaaaaaaaaabqabqbZUbZUbZUbZUbZUchycBkcoecCgcChcCicCjcCkcoecClcwdcCmcCncvOcoecCpcCqcCrcbWcCtcCucCvcBvcCwcCxcCyczBcCzcCAcCBcCCcCDczBcCEcCFczCczCcCGcgxcmmcBJcCHcCIcCJcFoczMcCLcAGcCMczMcCNcCOcCPcxUcCQcCRcPCcCTcCUcCVcxVcCWcCXcCYcCZcBYcrUbZUbZUbZUctmbZUcDabZUbZUbZUbZUabqabqaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeaaaabqaaaabqabqabqaaacDbaaaabqaaaabqaaaabqaaaarBaaaaaaaaaabqabqaaaabqaefbZUcDcbZUchycBkcoecoecoecoecoecoecoecoecDdcoecoecoecoecDecDfcDgcDhcDicDjcDkcyZcDmcDncDocAmcDqcDrcDscDtcDucbYcDwcDxcDyczCcmlcDzcDAcDBcDCcDDcDDcDEczMcDFcDFcDGczMcgCcCOcDHcxUcxUcxUcxUcxUcxUcxUcxVcxVcxVcDIcxVcxVcrUcAccmYcmYcDKbZUchycDLcDMcDNcDMckscksaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaacAfcAfcAfcAfcAfabqckrabqcAfcAfcAfcAfcAfabqarBaaaaaaaaaabeaaaaaacDOcDPclJcDQcDRcDQcDScljcljcljcljcljcljcljcljcljcDTcDUcDUcDUcDUcDUcDUcDUcDVcDWcDXcDYcDZcEacEbcEccEdcEecEfcEgcEhcEicEjcEkcElcEmcEncgxcEocEpcEqcErcErcEsczMcEtcEucEuczMcEvcEwcExcEycEzcEAcEBcECcEDcEEcEFcEGcEHcEIcEJcEKcfZcELchychybZUbZUcEMbZUbZUbZUbZUabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaacAfcAfcAfcAfcAfabqckrabqcAfcAfcAfcAfcAfabqarBaaaaaaaaaabeaaaaaacvQcvPclJcDQcDRcDQcDScljcljcljcljcljcljcljcljcljcDTcDUcDUcDUcDUcDUcDUcDUcDVcDWcDXcDYcDZcEacEbcEccEdcEecEfcEgcEhcEicEjcEkcElcEmcEncgxcEocEpcEqcErcErcEsczMcEtcEucEuczMcEvcEwcExcEycEzcEAcEBcECcEDcEEcEFcEGcEHcEIcEJcEKcfZcELchychybZUbZUcEMbZUbZUbZUbZUabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqcBdcBecBecBecBecBfckrcBgcBhcBhcBhcBhcBiabqaupabqabqabqarBabqabqabqabqbZUcENbZUcdNckDchychycEObZUbZUbZUbZUbZUcEPcEQcDUcERcEScETcEUcEVcDUcEWcEXcEYcBvcEZcFacFbczBcFccFdcFdcFdcFeczBcFfcFgcFhcFicFjcFkcFlcBJcFmcCIcFncWcczMcFpcFqcFrcxScFscFtcFucbZcFwcFxcFycFzcFAcFBcFCcFDcFBcFEcFFcEKbZUcFGbZUcFHcFHcFIcFJcFKcFLcFMabqabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcFNcALcFNabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqcCfcCfcCfcCfcCfaaaclIabqcCfcCfcCfcCfcCfaaaarBaaaaaaaaaabqaaaaaaaaaaaabZUbZUbZUcfZbZUcjncctcFQbZUcPGcNacNbbZUcFTcFUcFVcFWcFXcFYcFZcGacGbcGccGdcGecBvcGfcGgcGhczBcGicGjcGkcGlcGmczBcGncGocGoczCcGpcGqcGrcGscGtcGucGvcGwczMcGxcGycGzcGAcGBcGCcGDcdlcGFcGGcGHcGIcGIcGJcGKcGLcGMcGNcdncGPcGQcGRcGScGTcGUcGVcGVcGVcGWcBNabqaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcALcFNcGYcFNcALabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaupaaaabqaaaabqaaaabqaaacmRaaaabqaaaabqabqabqabqaupaaaaaaaaaabqaaaaaaaaaaaaabqaaabZUbZUbZUbZUbZUbZUbZUcNOcNPcNQbZUckDcGZcDUcHacHbcHccHdcHecdIcHgcHhcHicBvcBvcDlcBvczBczBczBczBczBczBczBcHkczCczCcHlcHmczGczHcHncHocHocHpcHqczMcHrcHscHtcDpcHvcHwcHxcdMcHzcHAcHBcHCceEcHEcHFcHGcHHcHIcHJceQcHLcHMcHNcHOcHPcHQcHRcHScHTcBNabqabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcHUcALcHVcHWcHXcALcHUabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaacAfcAfcAfcAfcAfabqcHYabqcAfcAfcAfcAfcAfabqarBaaaaaaaaaabeabqcHZcHZcHZcFvcHZcHZcHZaaaabqaaaaaabZUcOJcOKcfbbZUcIbcEQcDUcIccIdcHbcIecIfcDUcIgcIhcIicDUcIjcIkcIlcImcIncIocIncIpcIncIqcIocIrcImcIscnscgxcItcBJcIucFOcIwcIucIxcIxcIxcIxcIxcIycxPcIzcEycIAcIAcIBcICcIDcIEcIFcIGcIHcIIcIJcEKcIKcILcIMcEycINcBNcBNcFHcBNcFHarAabqaaaaaaabqaaaaaaabqabqabqaaaaaaaaaaaaaaaabqaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabqaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabqabqcALcALcIOcIPcIPcIPcIQcALcALabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqcBdcBecBecBecBecBfckrcBgcBhcBhcBhcBhcBiabqarBaaaabqabqarBaaacHZcIRcIScIRcITcIRcHZcHZcFvcHZcFvcHZcHZcfccPEcPFcjicQKcDUcDUcDUcDUcDUcDUcDUcfdcIVcIWcIXcIYcIZcJacImcJbcJccIncIocIncJdcJecJfcImcJgcnscgxcvmcwEcJhcJicJjcJkcJlcJmcJncJocJpcJqcCOczQdgSdgSdgSdgSdgSdgScJrcJscJtcJucJvcJwcEKbZUcFGbZUcFHcJxcJycJzcJAcJBarAarAabqabqabqabqabqabqabqaaaabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqcJCcJDcJCcIPcJEcIPcXxcJGcFNabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqcCfcCfcCfcCfcCfaaaclIaaacCfcCfcCfcCfcCfaaaaupabqabqaaaarBabqcHZcJHcJIcJJcJKcJHcGXcJMcJNcJOcJPcJQcHZbZUbZUbZUbZUcJRcJScJScJScJScJUcJVcJWcJXcJYcJZcKacKbcKccKdcKecKfcKgcKfcKfcKhcKicKjcfjcKlcKmcKncFkcKocKpcKqcKrcKscKtcKtcKtcKucKvcJpcgCcCOcKwdgScKxcfHcfscgLdgTcYScKBcKDcKEcKFcEKcrUcKGccscfYcFHcFHcFHcFHcFHcHfcKIarAabqaaaaaaaaaaaaaaaabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaabqabqcALcALcKJcIPcIPcIPcKKcALcALabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabqcCfcCfcCfcCfcCfaaaclIaaacCfcCfcCfcCfcCfaaaaupabqabqaaaarBabqcHZcJHcJIcJJcJKcJHcGXcJMcJNcJOcJPcJQcHZbZUbZUbZUbZUcJRcJScJScJScJScJUcJVcJWcJXcJYcJZcKacKbcKccKdcKecKfcKgcKfcKfcKhcKicKjcvRcKlcKmcKncFkcKocKpcKqcKrcKscKtcKtcKtcKucKvcJpcgCcCOcKwdgScKxcfHcfscgLdgTcYScKBbRzcKEcKFcEKcrUcKGccscfYcFHcFHcFHcFHcFHcHfcKIarAabqaaaaaaaaaaaaaaaabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaabqabqcALcALcKJcIPcIPcIPcKKcALcALabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaaaaaabqabqabqaaaaaacKLabqaaaaaaabqabqaaaaaaarBaaaaaaaaaabeaaacHZcKMcHjcKOcHucKMcKMcKQcKRcKScKTcKUcHZaaaaaaaaacrUcrUcrUcrUcrUbZUcKVcDUcDUcKWcKXcRocDUcKZcLacLbcImcLccIocIncIocInchocLecLfcLgcLhcLicLjcLkcIxcIxcLlcLmcLncLocLpcLqcLrcJpcLscLtcLucBNcKxcfHchuchuchEcLxcLycLzcJucLAcEKcdNcLBceNchycLCbZUabqabqabqabqabqabqabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcHUcALcLDcLEcLFcALcHUabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaupaaaaaaaaaaaaaaaaaaaaacKLaaaaaaaaaaaaabqaaaaaaaupaaaaaaaaaarBabqcHZcLGcLHcLIcLJcLKcjWcLMcLNcLOcLPcLQcLRcIacIacIacLRcLTcLUcLVcHZcLWcLXcDUcLYcLZcMacSBcRUcRUcRUcRUcImcIncIocIncMccIncMdcMecMfcImcMgcMhcgxcmmcIxcMicMjcMkcLocLocMlcMmcMncJpcMocMpcMqdgScKxcfHchuckedgTcYTcKBcMtcMucMvcEKcjnchyceNchycMxbZUabqaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcALcFNcMycFNcALabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaupaaaaaaaaaaaaaaaaaaaaacKLaaaaaaaaaaaaabqaaaaaaaupaaaaaaaaaarBabqcHZcLGcLHcLIcLJcvScjWcLMcLNcLOcLPcLQcLRcIacIacIacLRcLTcLUcLVcHZcLWcLXcDUcLYcLZcMacSBcRUcRUcRUcRUcImcIncIocIncMccIncMdcMecMfcImcMgcMhcgxcmmcIxcMicMjcMkcLocLocMlcMmcMncJpcMocMpcMqdgScKxcfHchuckedgTcYTcKBcMtcMucMvcEKcjnchyceNchycMxbZUabqaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcALcFNcMycFNcALabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBabearBarBarBaaaaaaaaacKLaaaaaaaaaarBarBarBauparBabqabqaaaarBaaacFvcMzcMAcMBcMCcMDcMEcMFcMGcMHcMIcMJcMKcMLcMMcMNcMOcMPcMBcMQcMRcMScMTcMUcMScMVcMWcWGcSCcWIcWHcYocRUcImcImcImcImcImcImcNccImcImbZUcNdcgxcmmcIxcNecMjcLocLpcLocNfcNgcNhckzcNjcNkcNldgVdgUdgUdgUdgUdgUcNocNncNpcNqcNrcEKchychyceNchybZUbZUbZUabqabqaaaaaaabqaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcFNcALcFNabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaabqaaaaaaaaaarBabqcNtabqarBaaaaaaabqaaaaaaabqaaaabqabqabqaaacHZcNucNvcNwcNxcNyclkcNAcNBcNCcNDcNEcHZcFvcFvcFvcHZcNFcNGcNHcHZcNIcNJcDUcNKcNLcNMcNNcYCdeidehdejcRUcNRcmVcmVcmWcmVcNTcNUcmYcmZcNVcNWcNXcBIcIxcNYcNZcOacOacOacObcOccOdcOecOfcOgcOhcOicOjcOkcOlcJLcOncOocOpclncOrcOscOtcmYcmYcOucOvcOwcOxbZUbZUbZUcksaaaabqaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaarBaaaabqaaaarBaaaaaaabqabqabqabqaaaaaaaaaabqabqcHZclpcOzcKMcOAclpcOBcODcOCcOEcOFcOGcHZcOHaaaaaacrUcrUcrUcrUcrUbZUcOIcDUcDUcDUcDUcDUcRUdeldekdemcRUcOMbZUbZUbZUbZUbZUbZUbZUbZUczIcONcOOcOPcOQcORcOScOTdeIcOVcOWcLpcOXclCcOZcPacPbcPccPdcPecPfcPgcPhcPicOpclNcPjbZUbZUbZUbZUbZUdenclGcPmclJcPnclJcPoabqabqaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBarBarBarBarBaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaacHZcPpcPqcKMcPqcPrcPscKMcKMcPtcKMcKMcHZabqabqabqbZUcjncfZcPucmscPwcPxcmYcPycPzcPAcPBcRUdepdeodeqcRUcOMbZUcPHcPIcPJbZUcPKcPLcPMbZUcPNcPOcPPcIxcPQcPRcPScPTcPUcPVcLpcPWcIxcPXcPYciccPccPZcQacQbcKNcQdcQecOpchycPjbZUcQgcQhcQibZUcQjcQkcQlbZUbZUbZUcksaaaabqaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeaaacHZcQmcQncKMcQocQpcPscQqcQrcQscQtcQucHZaaaabqaaabZUcQvcQxcQxcQycQzcQAcQAcQAcQAcQCcPjcRUcRUdercRUcRUcOMbZUcQDcQEcQFcQGcQHcQIcQJdescQLcQMcQNcIxcIxcIxcIxcIxcQOcIxcQPcrUcrUcfwcQQcfwcOpcOpcOpcOpcOpcOpcOpcOpchycQRcQScQTcQUbeVcQWcQWcQXcQYcQWaaaaaaaaaaaaabqabqaaaaaaabqaaaaaaabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaacHZcQZcRacKMcRacQZcRbcRccRdcRecRfcRgcFvaaaaaacRhbZUcRibZUbZUbZUcRjbZUbZUbZUbZUcRkcRlcRmcRndetcRmcRmcRqcRrcRscRtcRucRvcRwcRxcRycRycRzcRAcRBcRCcRDcmYcmYcmYcRFcmYcRGcmZcRHcRIcRJcRIcRKcjNcjNcRLcRMcOtcmYcmYcmYcRNbZUcnOcROcRPcQWcRQcRRcRScQWabqabqabqabqabqabqabqabqabqabqabqabqaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacRTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcHZcHZcFvcHZcFvcHZdeucRVcRWcRXcRYcRZcHZabqabqcRhcSacSbcRhcSccSdcSecSfcSgcShbZUbZUbZUbZUcSibZUbZUbZUbZUbZUcSjcRtcSkcRtcSlcSmcSncRtcSocSpcSqbZUbZUbZUbZUbZUbZUcCdcSrcfZbZUcSscStcSucfwcicciccSvbZUbZUbZUbZUbZUbZUbZUbZUbZUcuEcQWcSwcSxcSycQWaaaabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeaaaabqabqabqcSzcSAdewcKPcSDcSEcSFcSGcSHcHZaaaaaacRhcSIcSJcRhcSKcSLcSMcSNcRhcRhcSOcSPcSQcSRcSScSRcSTcSUcSOdexcSXcRtcSkcRtcSYcSZcTacRtcTbcTccTdcTecTfcTgcThcTibZUcTjbZUbZUbZUcTkcTlcTmcfwcfwcfwcTnbZUcTocTpcTqbZUcTrcTscTtbZUctocQWcTucTvcmtcQWaaaabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaaabqaaaaaacTxabqdeycHZcHZcHZcHZcHZcHZcHZaaaaaacRhcTycTzcRhcTAcTBcTCcTDcRhcTEcTFcTGcTHcTIcTJcTKcTLcTLcTMcTNcTOcTPcTQcRtcSYcTRcTacRtcSocSpcSYcLScTTcRtcTUcTVbZUcTWbZUabqaaacNzcTYcNzaaaaaacOmcWkbZUchychychycmycjicUbcjicUccUdcQWcOycUfcOycQWaaaabqaaaabqabqaaaaaaabqaupaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeabqabqabqaaaaaaaaaabqabqabqaaaaaaaaaabqaaaaaaaaacRhcUgcUhcUicUjcUkcUlcUmcRhcUncRhcUocUpcUqcUrcUscTHcTHcUtcUucUvcUwcUxcUycSYcUzcTacRtcSocUAcUBcUCcUDcUEcUFcUGbZUcTjbZUabqabqcNzcUHcNzabqaaacOmcWlbZUchychychycUJcUKchycULbZUcmicQWcOycWJcWmcWKcWKcWKcWKcWKcWKcWKcWKcWLarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeaaaaaaaaaaaaaaaabqaaaaaaaaaabqaaaaaaaaacRhcTycUNcRhcUOcUPcUQcURcUScUTcRhcUUcUVcUWcUXcUYcUZcVacSOcSWcTacRtcVccVdcVecVfcVgcUwcVhcVicVjcVkcVkcSVcTScVkbZUaefabqaaaaaacNzcVncNzaaaaaacOmcWkbZUcVocVpcVqbZUcVrcVscVqbZUaaaabqcOycOycOyabqaaaabqaaaaaaabqabqaaacWRarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfabeaaaaaaabqabeabfabeabqabeabeabeabqcSOcSOcSOcRhcRhcRhcRhcVtcVucRhcRhcRhcVvcVwcVxcUXcVycVzcVAcSOcSOcTacRtcRtcRtcSYcSZcTacRtcVBcVCcVDcTXabqabqaaaaaaabqaefabqaaacVFcVGcVHcVGcVIaaacOmcWkbZUbZUbZUbZUbZUbZUbZUbZUbZUaaaabqaaaaaaaaaabqabqabqabqabqabqaaaaaacWRarBabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaaaaaacTZcVLcVMcSOcVNcVOcVPcVQcVRcVScSOcVTcVUcVVcVWcUXcUYcUZcVacVXcSOcVYcRtcVZcWacWbcrrcWdcWacWecRtcWfcVkaaaabqabqabqabqabqabqabqcVGcWgcWhcWicVGaaacOmdafcWTcWTcWTcXlcXAcWScXBcXCcXBcXCcXBcXoaaaaaaabqabqaaaaaaaaaabqaaaaaacWRaupaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaaaaaacTZcWncVMcWocWpcWpcWpcWqcWrcWscWtcWucWvcWucWwcWpcWxcWwcWycWzcSOcWAcWBcWCcWBcWBcWBcWBcWBcWCcWBcWDcTXaaaabqaaaaaaabqaaaaaaaaacVGcWEcWFdezdeAcyncOmcYccYccYccYccZvcYycXZcXDcYbcXHcYdcYecXZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacZjaaaaaaaaaaaaaaaaaaarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaaaaaacTZcWncWMcVRcWNcWOcUXcWPcWQcZlcZkcZmcWUcWVcWVcWWcWVcWVcWXcWYcSOcWZcXacXbcXacXacXccXacXacXdcXecXfcVkabqabqaaacVGcVGcVGcVGcVGcVGcXgcXhcXicVGcVGcVGcVGcVGcVGcYccZvcYycYacYxcYbcYdcYbcYzcXCaaaabqabqaaaabqaaaaaaaaaaaaaaacVJaaaaaaabqaaaaaaaaaaupaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfabqaaacTZcXjcVMcVRcWNcWNcXkcSOcSOcSOcSOcZwcWzcXmcUXcXncUXcXmcZxcZCcSOcXpcTXcXpcTXcTXcTXcTXcTXcXpcTXcXpcTXaaaabqabqcVGcXqcmDcXscXtcVGcXucXvcVGcVGcmGcnhcmIcXzcVGcYccZvcYycXZcYdcYbcYdcYdcYecXZaaaaaaabqauparBaupabqabqabqabqcVJabqabqabqabqabqabearBarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcSOcSOcSOcXEcUXcUXcUXcXFcXGcSOcZQcVacXIcXJcXJcXKcXJcXJcXLcZRcVkcXMcTXcXacTXaaaaaaaaacTXcXNcTXcXacTXaaaabqaaacNzcXOcXPcXQcXRcnkcXScXTcXUcnvcXVcXWcXXcnTcNzcYccZvcYycYGcXBcXCcZycXCcXBcZzaaaaaaabqaaaabqaaaabqaaaaaaaaacYfaaaaaaabqaaaaaaaaaaaaaupaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaacTZcYgcYhcYicYjcYkcXKcYlcYmcSOcSOcSOcSOcUecUecUecUecUecSOcSOcVkcXpcTXcXpcTXaaaabqaaacTXcXpcTXcZUcZTabqabqaaacNzcnUcYpcYqcYrcYrcYscYtcYucYucYucYucYvcnVcNzcYccZvcYycOmcOmcOmcYIcfwaaaaaaaaaaaaabqaaacYAcYAcYAcYAcYAabqcYBabqcYAcYAcYAcYAcYAaaaarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcSOcTZcSOcSOcTZcTZcTZcSOdagcSOaaaaaacYDcYFcYFcYFcYFdahdaXcYFdaicZocYFcZodajcYFcYFcYFdaicZpcYFdcbdalcYEcYJaaacVGcYKcnWcYMcpbcpdcYPcYQcYRdgXdgWcYUcYVcpecVGcYcciccWkdawcOmcZfcZhcOmaaaaaaaaaaaaabqabqcYXcYYcYYcYYcYYcYZcZacZbcZccZccZccZccZdabqarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaabqaaaaaaaaaaaaaaaabqabqdazdbadaAdcTdcPdaBcZedcncZBdaCcZBdaDcZBdaCdaCdaDdaCdaEcZBdaCcZBcZBdaKdaJaaacVGcZrcZrcZrcZrcTkcZscZtcZucTkcZrcZrcZrcZrcVGdaLciccWkdaMdaOcZicZncfwaaaaaaaaaaaaabqabqcZAcZAcZAcZAcZAaaacYBaaacZAcZAcZAcZAcZAabqarBabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqabqabqabqabqcZFdaZcZedbkcZBddadbqdbhcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZgcYFaaacVGcZGcZHcZHcpfcZJcZKcZLcZMcZNcpgcZPcZPcZPcVGcYcdbudbFdbvcfwcfwcOmcfwaaaaaaaaaaaaabqaaaabqaaaabqabqabqaaacYBaaaabqaaaabqaaaabqaaaarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaacHZcQZcRacKMcRacQZcRbcRccRdcRecRfcRgcFvaaaaaacRhbZUcRibZUbZUbZUcRjbZUbZUbZUbZUcRkcRlcRmcRndetcRmcRmcRqcRrcRscRtcRucRvcRwcRxcRycRycRzcRAcRBcRCcRDcmYcmYcmYcRFcmYcRGcmZcRHcRIcRJcRIcRKcjNcjNcvYcwtcOtcmYcmYcmYcRNbZUcnOcROcRPcQWcRQcRRcRScQWabqabqabqabqabqabqabqabqabqabqabqabqaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacRTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcHZcHZcFvcHZcFvcHZdeucRVcRWcRXcRYcRZcHZabqabqcRhcSacSbcRhcSccSdcSecSfcSgcShbZUbZUbZUbZUcSibZUbZUbZUbZUbZUcSjcRtcSkcRtcSlcSmcSncRtcSocSpcSqbZUbZUbZUbZUbZUbZUcCdcSrcfZbZUcSscStcSucfwcicciccCObZUbZUbZUbZUbZUbZUbZUbZUbZUcuEcQWcSwcSxcSycQWaaaabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeaaaabqabqabqcSzcSAdewcKPcSDcSEcSFcSGcSHcHZaaaaaacRhcSIcSJcRhcSKcSLcSMcSNcRhcRhcSOcSPcSQcSRcSScSRcSTcSUcSOdexcSXcRtcSkcRtcSYcSZcTacRtcTbcTccTdcTecTfcTgcThcTibZUcTjbZUbZUbZUcTkcTlcTmcfwcfwcfwcxRbZUcTocTpcTqbZUcTrcTscTtbZUctocQWcTucTvcmtcQWaaaabqaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarBaaaabqaaaaaacTxabqdeycHZcHZcHZcHZcHZcHZcHZaaaaaacRhcTycTzcRhcTAcTBcTCcTDcRhcTEcTFcTGcTHcTIcTJcTKcTLcTLcTMcTNcTOcTPcTQcRtcSYcTRcTacRtcSocSpcSYcLScTTcRtcTUcTVbZUcTWbZUabqaaacNzcTYcNzaaaaaacOmcxTbZUchychychycmycjicUbcjicUccUdcQWcOycUfcOycQWaaaabqaaaabqabqaaaaaaabqaupaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeabqabqabqaaaaaaaaaabqabqabqaaaaaaaaaabqaaaaaaaaacRhcUgcUhcUicUjcUkcUlcUmcRhcUncRhcUocUpcUqcUrcUscTHcTHcUtcUucUvcUwcUxcUycSYcUzcTacRtcSocUAcUBcUCcUDcUEcUFcUGbZUcTjbZUabqabqcNzcUHcNzabqaaacOmcyqbZUchychychycUJcUKchycULbZUcmicQWcOycWJcWmcWKcWKcWKcWKcWKcWKcWKcWKcWLarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabeaaaaaaaaaaaaaaaabqaaaaaaaaaabqaaaaaaaaacRhcTycUNcRhcUOcUPcUQcURcUScUTcRhcUUcUVcUWcUXcUYcUZcVacSOcSWcTacRtcVccVdcVecVfcVgcUwcVhcVicVjcVkcVkcSVcTScVkbZUaefabqaaaaaacNzcVncNzaaaaaacOmcxTbZUcVocVpcVqbZUcVrcVscVqbZUaaaabqcOycOycOyabqaaaabqaaaaaaabqabqaaacWRarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfabeaaaaaaabqabeabfabeabqabeabeabeabqcSOcSOcSOcRhcRhcRhcRhcVtcVucRhcRhcRhcVvcVwcVxcUXcVycVzcVAcSOcSOcTacRtcRtcRtcSYcSZcTacRtcVBcVCcVDcTXabqabqaaaaaaabqaefabqaaacVFcVGcVHcVGcVIaaacOmcxTbZUbZUbZUbZUbZUbZUbZUbZUbZUaaaabqaaaaaaaaaabqabqabqabqabqabqaaaaaacWRarBabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaaaaaacTZcVLcVMcSOcVNcVOcVPcVQcVRcVScSOcVTcVUcVVcVWcUXcUYcUZcVacVXcSOcVYcRtcVZcWacWbcrrcWdcWacWecRtcWfcVkaaaabqabqabqabqabqabqabqcVGcWgcWhcWicVGaaacOmcyFczlczlczlczzcOmcWScXBcXCcXBcXCcXBcXoaaaaaaabqabqaaaaaaaaaabqaaaaaacWRaupaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaaaaaacTZcWncVMcWocWpcWpcWpcWqcWrcWscWtcWucWvcWucWwcWpcWxcWwcWycWzcSOcWAcWBcWCcWBcWBcWBcWBcWBcWCcWBcWDcTXaaaabqaaaaaaabqaaaaaaaaacVGcWEcWFdezdeAcyncOmcYccYccYccYccxTcOmcXZcXDcYbcXHcYdcYecXZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacZjaaaaaaaaaaaaaaaaaaarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfaaaaaacTZcWncWMcVRcWNcWOcUXcWPcWQcZlcZkcZmcWUcWVcWVcWWcWVcWVcWXcWYcSOcWZcXacXbcXacXacXccXacXacXdcXecXfcVkabqabqaaacVGcVGcVGcVGcVGcVGcXgcXhcXicVGcVGcVGcVGcVGcVGcYccxTcOmcYacYxcYbcYdcYbcYzcXCaaaabqabqaaaabqaaaaaaaaaaaaaaacVJaaaaaaabqaaaaaaaaaaupaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfabqaaacTZcXjcVMcVRcWNcWNcXkcSOcSOcSOcSOcZwcWzcXmcUXcXncUXcXmcZxcZCcSOcXpcTXcXpcTXcTXcTXcTXcTXcXpcTXcXpcTXaaaabqabqcVGcXqcmDcXscXtcVGcXucXvcVGcVGcmGcnhcmIcXzcVGcYccxTcOmcXZcYdcYbcYdcYdcYecXZaaaaaaabqauparBaupabqabqabqabqcVJabqabqabqabqabqabearBarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcSOcSOcSOcXEcUXcUXcUXcXFcXGcSOcZQcVacXIcXJcXJcXKcXJcXJcXLcZRcVkcXMcTXcXacTXaaaaaaaaacTXcXNcTXcXacTXaaaabqaaacNzcXOcXPcXQcXRcnkcXScXTcXUcnvcXVcXWcXXcnTcNzcYccxTcOmcYGcXBcXCcZycXCcXBcZzaaaaaaabqaaaabqaaaabqaaaaaaaaacYfaaaaaaabqaaaaaaaaaaaaaupaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaacTZcYgcYhcYicYjcYkcXKcYlcYmcSOcSOcSOcSOcUecUecUecUecUecSOcSOcVkcXpcTXcXpcTXaaaaaaaaacTXcXpcTXcZUcZTabqabqaaacNzcnUcYpcYqcYrcYrcYscYtcYucYucYucYucYvcnVcNzcYccxTcOmcOmcOmcOmcYIcfwaaaaaaaaaaaaabqaaacYAcYAcYAcYAcYAabqcYBabqcYAcYAcYAcYAcYAaaaarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcSOcTZcSOcSOcTZcTZcTZcSOdagcSOaaaaaacYDcYFcYFcYFcYFdahdaXcYFdaicZocYFcZodajcYFcYFcYFdaicZpcYFdcbdalcYEcYJaaacVGcYKcnWcYMcpbcpdcYPcYQcYRdgXdgWcYUcYVcpecVGcYccCOcZvdawcOmcZfcZhcOmaaaaaaaaaaaaabqabqcYXcYYcYYcYYcYYcYZcZacZbcZccZccZccZccZdabqarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqaaaaaaabqaaaaaaaaaaaaaaaabqabqdazdbadaAdcTdcPdaBcZedcncZBdaCcZBdaDcZBdaCdaCdaDdaCdaEcZBdaCcZBcZBdaKdaJaaacVGcZrcZrcZrcZrcTkcZscZtcZucTkcZrcZrcZrcZrcVGdaLcCOcZvdaMdaOcZicZncfwaaaaaaaaaaaaabqabqcZAcZAcZAcZAcZAaaacYBaaacZAcZAcZAcZAcZAabqarBabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqabqabqabqabqcZFdaZcZedbkcZBddadbqdbhcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZBcZgcYFaaacVGcZGcZHcZHcpfcZJcZKcZLcZMcZNcpgcZPcZPcZPcVGcYccAscicdbvcfwcfwcOmcfwaaaaaaaaaaaaabqaaaabqaaaabqabqabqaaacYBaaaabqaaaabqaaaabqaaaarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacZSdbOcZedbPddccZBcZBdaJcZBcZBdbQdbYdbQdbQdbQcZBdbQdbQdbQdbYdbQcZBcZBdccdaiabqcVGcZPcZPcZPcqccZYcZZdaadabdaccqjcZPcZPcZPcVGcOmcfwcOmcOmcfwaaaaaaaaaaaaaaaaaaaaaabqaaacYAcYAcYAcYAcYAabqcYBabqcYAcYAcYAcYAcYAabqarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacZVdaZcZedcedddcZBcZBdcFcZBcZBcYFdclcYFdcmcYFcZBcYFdcmcYFdclcYFcZBcZBcZBcYFaaacVGaOEcZPcZPcqJdapdaqdardasdatcqXcZHcZHdavcVGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcYXcYYcYYcYYcYYcYZcYBcZbcZccZccZccZccZdabqarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadalcYEdbaddmddacZBcZBdcocZBcZBdaCdcpdaCdaCdaCcZBdaCdaCdaCdcpdaCcZBcZBdcqdaiaaacVGcZrcZrcZrcZrdaFdaGdaHdaIdaFcZrcZrcZrcZrcVGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqcZAcZAcZAcZAcZAaaacYBabqcZAcZAcZAcZAcZAaaaarBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index 4afc0f89eb3..094c6e6c12f 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -411,7 +411,7 @@ "ahU" = (/obj/effect/decal/warning_stripes/northwest,/obj/effect/decal/warning_stripes/southeastcorner,/obj/item/device/radio/intercom{dir = 8; name = "station intercom (General)"; pixel_x = -28},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) "ahV" = (/obj/effect/decal/warning_stripes/north,/obj/effect/decal/warning_stripes/south,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) "ahW" = (/obj/machinery/ai_status_display{pixel_x = 0; pixel_y = 32},/obj/effect/decal/warning_stripes/northeast,/obj/effect/decal/warning_stripes/southwestcorner,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) -"ahX" = (/obj/structure/toilet{pixel_y = 8},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) +"ahX" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/newscaster{pixel_x = -30; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) "ahY" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/security/vacantoffice{name = "\improper Security Toilet"}) "ahZ" = (/obj/machinery/door/airlock/hatch{req_access_txt = "152"},/turf/simulated/shuttle/plating/vox,/area/shuttle/vox) "aia" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/item/device/radio/intercom/locked/prison{pixel_x = -25; pixel_y = 0},/turf/simulated/floor/plating,/area/security/permabrig) @@ -458,7 +458,7 @@ "aiP" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) "aiQ" = (/obj/structure/curtain/open/shower,/obj/machinery/shower,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) "aiR" = (/obj/machinery/shower,/obj/structure/curtain/open/shower,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) -"aiS" = (/obj/structure/urinal{pixel_y = 32},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) +"aiS" = (/obj/structure/urinal{pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) "aiT" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/main) "aiU" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/main) "aiV" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/main) @@ -541,12 +541,12 @@ "aku" = (/obj/structure/rack,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/shield/riot,/obj/item/weapon/shield/riot,/obj/item/weapon/shield/riot,/turf/simulated/floor/plasteel{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/securearmoury) "akv" = (/obj/structure/table/woodentable,/obj/machinery/photocopier/faxmachine{department = "Head of Security's Office"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) "akw" = (/obj/effect/decal/warning_stripes/east,/obj/effect/decal/warning_stripes/northwestcorner,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) -"akx" = (/obj/machinery/light/small,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) +"akx" = (/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) "aky" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/decal/warning_stripes/blue/hollow,/obj/effect/decal/warning_stripes/east,/turf/simulated/floor/plasteel,/area/security/podbay) "akz" = (/obj/structure/spacepoddoor{luminosity = 3},/obj/machinery/door/poddoor/multi_tile/four_tile_ver{id_tag = "secpodbay"; layer = 3.1; req_access_txt = "71"},/turf/simulated/floor/engine,/area/security/podbay) "akA" = (/obj/structure/rack,/obj/item/clothing/accessory/storage/black_vest,/obj/item/clothing/suit/space/vox/stealth,/obj/item/clothing/head/helmet/space/vox/stealth,/obj/item/clothing/mask/breath,/turf/simulated/shuttle/floor4/vox,/area/shuttle/vox) "akB" = (/turf/simulated/wall/r_wall,/area/security/range) -"akC" = (/obj/machinery/camera{c_tag = "Brig Security Toilet"; dir = 4; network = list("SS13")},/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) +"akC" = (/obj/machinery/camera{c_tag = "Brig Security Toilet"; dir = 4; network = list("SS13")},/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/light,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) "akD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) "akE" = (/obj/item/weapon/soap/nanotrasen,/obj/machinery/light_switch{pixel_y = -25},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/security/vacantoffice{name = "\improper Security Toilet"}) "akF" = (/obj/structure/table,/obj/item/device/taperecorder{pixel_y = 0},/obj/machinery/light_switch{pixel_x = -25},/obj/item/device/radio/intercom/department/security{pixel_x = 0; pixel_y = 28},/turf/simulated/floor/plasteel,/area/security/main) @@ -643,7 +643,7 @@ "ams" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{on = 0; pixel_x = -3; pixel_y = 8},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/item/weapon/stamp/hos,/obj/item/device/spacepod_key{id = 100000},/turf/simulated/floor/carpet,/area/security/hos) "amt" = (/obj/structure/closet/secure_closet/hos,/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/obj/machinery/requests_console{announcementConsole = 1; department = "Head of Security's Desk"; departmentType = 5; name = "Head of Security Requests Console"; pixel_x = 30; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) "amu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; initialize_directions = 10; level = 1},/turf/simulated/floor/carpet,/area/security/hos) -"amv" = (/obj/machinery/door/airlock/security{name = "Execution Room"; req_access = null; req_access_txt = "1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/security/execution{name = "\improper Prisoner Transfer Center"}) +"amv" = (/mob/living/simple_animal/hostile/retaliate/araneus,/turf/simulated/floor/carpet,/area/security/hos) "amw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/light{dir = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/permabrig) "amx" = (/obj/machinery/photocopier,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plasteel{dir = 9; icon_state = "darkred"},/area/security/warden) "amy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/warden) @@ -770,7 +770,7 @@ "aoP" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/main) "aoQ" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable,/turf/simulated/floor/plating,/area/security/main) "aoR" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/turf/simulated/floor/plating,/area/security/hos) -"aoS" = (/obj/structure/table/woodentable,/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/weapon/cartridge/detective,/obj/item/device/megaphone,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) +"aoS" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/computer/card/minor/hos,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) "aoT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) "aoU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/range) "aoV" = (/obj/structure/closet/secure_closet/brig,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plasteel,/area/security/prisonlockers) @@ -824,8 +824,8 @@ "apR" = (/obj/structure/stool/bed/chair{dir = 8},/obj/effect/landmark/start{name = "Security Pod Pilot"},/turf/simulated/floor/plasteel,/area/security/main) "apS" = (/turf/simulated/wall,/area/security/seceqstorage) "apT" = (/obj/machinery/photocopier,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) -"apU" = (/obj/structure/table/woodentable,/obj/item/device/radio,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/camera{c_tag = "Brig Head of Security's Office"; dir = 1; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) -"apV" = (/obj/structure/table/woodentable,/obj/item/device/taperecorder{pixel_y = 0},/obj/machinery/light,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) +"apU" = (/obj/structure/table/woodentable,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/camera{c_tag = "Brig Head of Security's Office"; dir = 1; network = list("SS13")},/obj/item/weapon/folder/red,/obj/item/weapon/folder/red,/obj/item/weapon/cartridge/detective,/obj/item/device/megaphone,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) +"apV" = (/obj/structure/table/woodentable,/obj/item/device/taperecorder{pixel_x = -5; pixel_y = 0},/obj/machinery/light,/obj/item/device/radio{pixel_x = 5},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) "apW" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal,/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) "apX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/hos) "apY" = (/obj/structure/reagent_dispensers/fueltank,/obj/effect/decal/warning_stripes/yellow/hollow,/obj/effect/decal/warning_stripes/northeastcorner,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel,/area/security/podbay) @@ -846,7 +846,7 @@ "aqn" = (/turf/simulated/floor/plating/airless,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk3"; icon_state = "catwalk3"},/area/solar/auxport) "aqo" = (/obj/structure/shuttle/window,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/trade/sol) "aqp" = (/obj/structure/lattice,/obj/structure/grille{density = 0; icon_state = "brokengrille"},/turf/space,/area/space) -"aqq" = (/obj/machinery/door/airlock/security{name = "Execution Room"; req_access = null; req_access_txt = "1"},/turf/simulated/floor/plating,/area/security/range) +"aqq" = (/obj/machinery/door/airlock/security{name = "Execution Room"; req_access = null; req_access_txt = "1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) "aqr" = (/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/range) "aqs" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/turf/simulated/floor/plasteel,/area/security/permabrig) "aqt" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Brig Medical Bay"; req_access_txt = "0"; req_one_access_txt = "63"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/security/medbay) @@ -945,17 +945,17 @@ "asi" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "asj" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "ask" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) -"asl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 7},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) +"asl" = (/obj/machinery/door/airlock/security{name = "Execution Room"; req_access = null; req_access_txt = "1"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/range) "asm" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "asn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "aso" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "asp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "asq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "asr" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) -"ass" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) +"ass" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j1s"; sortType = 7},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "ast" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) -"asu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) -"asv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/poster/legit{pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) +"asu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/brig) +"asv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/poster/legit{pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/brig) "asw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/brig) "asx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/brig) "asy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{dir = 0; name = "station intercom (General)"; pixel_x = 0; pixel_y = -28},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/brig) @@ -1252,7 +1252,7 @@ "ayd" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aye" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/prison/cell_block/B) "ayf" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/camera{c_tag = "Brig Cell Block B"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "darkredcorners"},/area/security/prison/cell_block/B) -"ayg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/light_switch{pixel_x = -25},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/prison/cell_block/B) +"ayg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/light_switch{pixel_x = -25},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/machinery/light{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/prison/cell_block/B) "ayh" = (/obj/machinery/door/airlock/shuttle{id_tag = "s_docking_airlock"; name = "Labor Shuttle Airlock"; req_access_txt = "0"},/obj/docking_port/mobile{dir = 8; dwidth = 2; height = 5; id = "laborcamp"; name = "labor camp shuttle"; rebuildable = 1; width = 9},/obj/docking_port/stationary{dir = 8; dwidth = 2; height = 5; id = "laborcamp_home"; name = "fore bay 1"; width = 9},/turf/simulated/shuttle/floor,/area/shuttle/siberia) "ayi" = (/obj/structure/lattice,/obj/structure/grille/broken,/turf/space,/area/space) "ayj" = (/obj/effect/landmark{name = "Syndicate-Commando-Bomb"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/syndicate_elite) @@ -1419,7 +1419,7 @@ "aBo" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/stool/bed/chair/office/dark{dir = 8},/obj/machinery/door/window/westright{dir = 1; name = "Judge Committee"; req_access = null; req_access_txt = "63"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "carpet"},/area/crew_quarters/courtroom) "aBp" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "darkredcorners"},/area/security/prison/cell_block/B) "aBq" = (/obj/structure/table/woodentable,/obj/item/weapon/folder/red,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/simulated/floor/plasteel{dir = 2; icon_state = "carpet"},/area/crew_quarters/courtroom) -"aBr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/prison/cell_block/B) +"aBr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/machinery/light{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/prison/cell_block/B) "aBs" = (/turf/simulated/wall,/area/security/interrogation) "aBt" = (/obj/machinery/navbeacon{codes_txt = "delivery"; dir = 1; location = "Security"},/obj/structure/plasticflaps{opacity = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/security/processing) "aBu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "63"},/turf/simulated/floor/plating,/area/maintenance/fsmaint) @@ -2199,14 +2199,19 @@ "aQo" = (/obj/machinery/light/small{dir = 8},/obj/machinery/recharge_station,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aQp" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aQq" = (/obj/structure/disposalpipe/junction{tag = "icon-pipe-j1 (EAST)"; icon_state = "pipe-j1"; dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) -"aQr" = (/obj/machinery/modular_computer/console/preset/command,/turf/simulated/floor/plasteel{dir = 10; icon_state = "green"},/area/bridge) +"aQr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/wall,/area/crew_quarters/bar) "aQs" = (/obj/machinery/computer/med_data,/turf/simulated/floor/plasteel{dir = 6; icon_state = "green"},/area/bridge) -"aQt" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "greencorner"},/area/bridge) -"aQu" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel,/area/bridge) -"aQv" = (/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes/stokcubes,/obj/item/weapon/storage/box/monkeycubes/neaeracubes,/obj/structure/table/glass,/obj/item/weapon/storage/box/monkeycubes/wolpincubes,/obj/item/weapon/storage/box/monkeycubes/farwacubes,/turf/simulated/floor/plasteel{tag = "icon-whitepurple (SOUTHEAST)"; icon_state = "whitepurple"; dir = 6},/area/medical/genetics) +"aQt" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) +"aQu" = (/obj/machinery/door/airlock/maintenance{name = "Bar Maintenance"; req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) +"aQv" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/obj/machinery/status_display{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) +"aQw" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard_medi"; name = "Quarantine Lockdown"; opacity = 0},/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel,/area/medical/morgue) +"aQx" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/closet/secure_closet/exam,/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) +"aQy" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/obj/machinery/body_scanconsole,/obj/machinery/camera{c_tag = "Medbay Examination Room"; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) "aQz" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/cryopod/right,/turf/simulated/floor/plasteel{icon_state = "white"},/area/crew_quarters/sleep) +"aQA" = (/obj/structure/filingcabinet/chestdrawer{desc = "A large drawer filled with autopsy reports."; name = "Autopsy Reports"},/turf/simulated/floor/plasteel{dir = 9; icon_state = "blue"},/area/medical/morgue) "aQB" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aQC" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) +"aQD" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/machinery/requests_console{department = "Morgue"; departmentType = 5; name = "Morgue Requests Console"; pixel_x = 0; pixel_y = 30},/obj/item/weapon/storage/box/bodybags{pixel_x = 5; pixel_y = 5},/obj/item/weapon/storage/box/bodybags,/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) "aQE" = (/obj/structure/table/woodentable,/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) "aQF" = (/obj/structure/table/woodentable,/obj/item/toy/cards/deck,/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) "aQG" = (/obj/structure/disposalpipe/segment,/obj/structure/stool,/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) @@ -2249,17 +2254,27 @@ "aRr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint) "aRs" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/turf/simulated/floor/plating,/area/maintenance/fpmaint) "aRt" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/plating,/area/maintenance/fpmaint) +"aRu" = (/obj/structure/table,/obj/machinery/computer/med_data/laptop,/obj/item/device/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) +"aRv" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plasteel,/area/medical/morgue) "aRw" = (/turf/simulated/wall/r_wall,/area/ai_monitored/storage/eva) "aRx" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/ai_monitored/storage/eva) +"aRy" = (/obj/machinery/camera{c_tag = "Medbay Morgue"; network = list("SS13")},/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) "aRz" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/fore) +"aRA" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) +"aRB" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) +"aRC" = (/obj/machinery/alarm{pixel_y = 26},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) "aRD" = (/obj/machinery/computer/cryopod{density = 0; pixel_x = -32; pixel_y = 0},/obj/machinery/camera{c_tag = "Cryodorms"; c_tag_order = 999; dir = 4; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "white"},/area/crew_quarters/sleep) +"aRE" = (/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = 25; pixel_y = 0; req_access_txt = "0"},/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) +"aRF" = (/obj/effect/landmark/start{name = "Medical Doctor"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) "aRG" = (/obj/machinery/door/window/eastleft{dir = 2; name = "Boxing Ring"},/obj/structure/window/reinforced{dir = 4},/obj/effect/landmark/start{name = "Civilian"},/turf/simulated/floor/wood,/area/crew_quarters/fitness) +"aRH" = (/obj/machinery/photocopier,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/medical/morgue) "aRI" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plasteel{tag = "icon-stage_stairs"; icon_state = "stage_stairs"},/area/crew_quarters/fitness) "aRJ" = (/obj/structure/table/woodentable,/obj/item/device/paicard,/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) "aRK" = (/obj/structure/table/woodentable,/obj/item/stack/tape_roll,/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) "aRL" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/sop_general,/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) "aRM" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/wood,/area/crew_quarters/fitness) "aRN" = (/obj/structure/window/reinforced,/turf/simulated/floor/wood,/area/crew_quarters/fitness) +"aRO" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/paper_bin{pixel_y = -1},/obj/item/weapon/pen,/turf/simulated/floor/plasteel,/area/medical/morgue) "aRP" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/beach/water{icon_state = "seadeep"},/area/crew_quarters/fitness) "aRQ" = (/obj/structure/window/reinforced,/turf/simulated/floor/beach/water{icon_state = "seadeep"},/area/crew_quarters/fitness) "aRR" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) @@ -2302,16 +2317,23 @@ "aSC" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/ai_monitored/storage/eva) "aSD" = (/obj/machinery/camera/motion{c_tag = "EVA North-West"; dir = 2; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/ai_monitored/storage/eva) "aSE" = (/obj/machinery/door/airlock/glass_command{name = "Softsuits"; req_access_txt = "18"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/ai_monitored/storage/eva) +"aSF" = (/obj/effect/landmark/start{name = "Coroner"},/obj/structure/stool/bed/chair/office/dark{dir = 4},/turf/simulated/floor/plasteel,/area/medical/morgue) +"aSG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/plasteel,/area/medical/morgue) +"aSH" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/medical/morgue) +"aSI" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) "aSJ" = (/obj/machinery/camera{c_tag = "EVA North-East"; dir = 2; network = list("SS13")},/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/ai_monitored/storage/eva) +"aSK" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{tag = "icon-whitebluefull"; icon_state = "whitebluefull"},/area/medical/exam_room) "aSL" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "Softsuits"; req_access_txt = "18"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/ai_monitored/storage/eva) "aSM" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/ai_monitored/storage/eva) "aSN" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/fore) "aSO" = (/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/hallway/primary/fore) "aSP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"aSQ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/crew_quarters/bar) "aSR" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24; shock_proof = 0},/obj/machinery/cryopod/right,/turf/simulated/floor/plasteel{icon_state = "white"},/area/crew_quarters/sleep) "aSS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/wall,/area/crew_quarters/sleep) "aST" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/cryopod,/turf/simulated/floor/plasteel{icon_state = "white"},/area/crew_quarters/sleep) "aSU" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) +"aSV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/medical/morgue) "aSW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/stool,/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) "aSX" = (/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/stool,/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) "aSY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plasteel,/area/crew_quarters/fitness) @@ -2349,9 +2371,24 @@ "aTE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel,/area/ai_monitored/storage/eva) "aTF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/ai_monitored/storage/eva) "aTG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/table/reinforced,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) +"aTH" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/structure/table,/obj/item/weapon/storage/firstaid/adv,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) "aTI" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) "aTJ" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/hallway/primary/fore) +"aTK" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) +"aTL" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) +"aTM" = (/obj/structure/closet/wardrobe/black,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/item/weapon/reagent_containers/glass/bottle/reagent/formaldehyde,/obj/item/weapon/reagent_containers/dropper,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/medical/morgue) +"aTN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall,/area/medical/exam_room) +"aTO" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plasteel,/area/medical/morgue) +"aTP" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/item/weapon/cane{pixel_x = -3; pixel_y = 3},/obj/item/weapon/cane{pixel_x = -5; pixel_y = 6},/obj/item/weapon/cane,/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) +"aTQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) +"aTR" = (/obj/structure/table,/obj/item/weapon/storage/box/gloves{pixel_y = 8},/obj/item/device/camera{name = "Autopsy Camera"; pixel_x = -2; pixel_y = -2},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 10},/area/medical/morgue) +"aTS" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table,/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) +"aTT" = (/obj/machinery/light/small,/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/machinery/optable,/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) +"aTU" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) +"aTV" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/light/small,/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) +"aTW" = (/obj/item/device/radio/intercom{dir = 1; name = "station intercom (General)"; pixel_y = -28},/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) "aTX" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 6; initialize_directions = 6; level = 2},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) +"aTY" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard_medi"; name = "Quarantine Lockdown"; opacity = 0},/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/medical/exam_room) "aTZ" = (/obj/structure/closet,/obj/effect/decal/cleanable/cobweb,/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aUa" = (/obj/machinery/atmospherics/unary/tank/air{dir = 8},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aUb" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) @@ -2393,6 +2430,8 @@ "aUL" = (/turf/simulated/floor/plasteel,/area/ai_monitored/storage/eva) "aUM" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/hallway/primary/fore) "aUN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/crew_quarters/fitness) +"aUO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard_medi"; name = "Quarantine Lockdown"; opacity = 0},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Examination Room"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/exam_room) +"aUP" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6;5"; req_one_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/morgue) "aUQ" = (/turf/simulated/wall,/area/crew_quarters/toilet) "aUR" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 8; initialize_directions = 11; level = 2},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aUS" = (/turf/simulated/wall,/area/crew_quarters/bar) @@ -2426,6 +2465,8 @@ "aVu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/ai_monitored/storage/eva) "aVv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/camera{c_tag = "EVA East"; dir = 8; network = list("SS13")},/obj/structure/table/reinforced,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) "aVw" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) +"aVx" = (/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) +"aVy" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/medical/medbay2) "aVz" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aVA" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aVB" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; pixel_x = 5; tag = "icon-shower (EAST)"},/obj/machinery/light_switch{pixel_x = -25},/obj/structure/curtain/open/shower,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) @@ -2435,6 +2476,7 @@ "aVF" = (/obj/machinery/camera{c_tag = "Bar Storage"; network = list("SS13")},/obj/structure/table/woodentable,/obj/machinery/reagentgrinder,/obj/item/weapon/reagent_containers/dropper,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aVG" = (/obj/machinery/vending/coffee,/turf/simulated/floor/wood,/area/crew_quarters/bar) "aVH" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/shaker,/obj/item/weapon/gun/projectile/revolver/doublebarrel,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil,/obj/item/weapon/storage/fancy/candle_box/eternal,/obj/item/weapon/storage/fancy/candle_box/eternal,/obj/item/weapon/storage/fancy/candle_box/eternal,/turf/simulated/floor/wood,/area/crew_quarters/bar) +"aVI" = (/obj/structure/closet/walllocker/emerglocker/north,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) "aVJ" = (/obj/effect/decal/cleanable/blood/oil/streak,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aVK" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating,/area/crew_quarters/fitness) "aVL" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/fitness) @@ -2486,11 +2528,18 @@ "aWF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/ai_monitored/storage/eva) "aWG" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) "aWH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/crew_quarters/fitness) +"aWI" = (/obj/machinery/camera{c_tag = "Medbay Fore Starboard"; network = list("SS13")},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) "aWJ" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32},/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/hallway/primary/fore) "aWK" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "aWL" = (/obj/machinery/door/airlock{name = "Unisex Showers"; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) +"aWM" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/item/clothing/head/that{pixel_x = 4; pixel_y = 6},/obj/item/weapon/lighter/zippo,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) +"aWN" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/crew_quarters/bar) +"aWO" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHEAST)"; icon_state = "whiteblue"; dir = 5},/area/medical/medbay2) "aWP" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aWQ" = (/obj/machinery/light/small{dir = 8},/obj/item/weapon/storage/secure/safe{pixel_x = -22; pixel_y = 0},/turf/simulated/floor/wood,/area/crew_quarters/bar) +"aWR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay2) +"aWS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{level = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitebluecorner"; tag = "icon-whitebluecorner"},/area/medical/medbay2) +"aWT" = (/obj/machinery/door/window{dir = 4; name = "Bar Door"; req_access_txt = "25"},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "aWU" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 5; level = 2},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aWV" = (/obj/item/stack/rods{amount = 10},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aWW" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 10; initialize_directions = 10; level = 2},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) @@ -2552,9 +2601,23 @@ "aYa" = (/obj/structure/sign/biohazard{pixel_x = 32},/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/floor/plasteel,/area/gateway) "aYb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/table/reinforced,/obj/item/weapon/book/manual/evaguide,/obj/item/stack/tape_roll,/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) "aYc" = (/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/fore) +"aYd" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue{pixel_x = 2; pixel_y = 6},/obj/item/weapon/pen/blue{pixel_x = -3; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; initialize_directions = 10; level = 1},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) +"aYe" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/wood,/area/crew_quarters/bar) +"aYf" = (/obj/machinery/modular_computer/console/preset/command,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plasteel{dir = 10; icon_state = "green"},/area/bridge) +"aYg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "greencorner"},/area/bridge) "aYh" = (/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/hallway/primary/fore) +"aYi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/bridge) +"aYj" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel,/area/bridge) +"aYk" = (/obj/machinery/door/window/eastright{name = "Coroner Office"; req_access_txt = "5"},/turf/simulated/floor/plasteel,/area/medical/morgue) +"aYl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay2) +"aYm" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) "aYn" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) +"aYo" = (/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes/stokcubes,/obj/item/weapon/storage/box/monkeycubes/neaeracubes,/obj/structure/table/glass,/obj/item/weapon/storage/box/monkeycubes/wolpincubes,/obj/item/weapon/storage/box/monkeycubes/farwacubes,/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel{tag = "icon-whitepurple (SOUTHEAST)"; icon_state = "whitepurple"; dir = 6},/area/medical/genetics) +"aYp" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/machinery/computer/card/minor/rd,/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/crew_quarters/hor) +"aYq" = (/obj/item/weapon/paper_bin,/obj/item/weapon/folder/white{pixel_y = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/weapon/reagent_containers/food/drinks/coffee,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/accessory/stethoscope,/obj/item/weapon/stamp/cmo,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 32; pixel_y = 0},/obj/structure/table/glass,/obj/item/weapon/pen/multi,/obj/item/weapon/book/manual/sop_medical,/obj/item/device/megaphone,/obj/item/weapon/reagent_containers/glass/bottle/morphine,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/cmo) +"aYr" = (/obj/item/device/radio/intercom/department/medbay{pixel_y = -28},/obj/machinery/computer/card/minor/cmo,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/medical/cmo) "aYs" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) +"aYt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/folder/yellow,/obj/item/weapon/stamp/ce,/obj/item/weapon/book/manual/sop_engineering,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter/zippo,/obj/item/weapon/pen/multi,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) "aYu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aYv" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aYw" = (/obj/effect/decal/cleanable/fungus,/obj/effect/decal/cleanable/fungus,/turf/simulated/wall,/area/maintenance/fsmaint2) @@ -2614,6 +2677,7 @@ "aZy" = (/obj/structure/stool,/turf/simulated/floor/plasteel,/area/gateway) "aZz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/crew_quarters/fitness) "aZA" = (/turf/simulated/floor/plasteel,/area/gateway) +"aZB" = (/obj/machinery/computer/card/minor/ce,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) "aZD" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aZE" = (/obj/item/device/radio/intercom{pixel_x = 25},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/window/reinforced,/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/turf/simulated/floor/wood,/area/crew_quarters/bar) "aZF" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor/plasteel,/area/hallway/primary/fore) @@ -2702,7 +2766,6 @@ "bbv" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Dormitories"; req_access_txt = "0"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutral"},/area/crew_quarters/fitness) "bbw" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "bbx" = (/obj/structure/dispenser/oxygen,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/ai_monitored/storage/eva) -"bby" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/wall,/area/crew_quarters/bar) "bbz" = (/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel,/area/hallway/primary/central/north) "bbA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/bar) "bbB" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{level = 1},/obj/structure/sign/securearea{desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; icon_state = "monkey_painting"; name = "Mr. Deempisi portrait"; pixel_x = -28; pixel_y = 4},/obj/structure/reagent_dispensers/beerkeg,/turf/simulated/floor/wood,/area/crew_quarters/bar) @@ -2716,9 +2779,7 @@ "bbJ" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "bbK" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "bbL" = (/obj/machinery/door/airlock{name = "Unit B"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) -"bbM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "bbN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) -"bbO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "bbP" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/turf/simulated/wall,/area/crew_quarters/kitchen) "bbQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/turf/simulated/wall,/area/crew_quarters/kitchen) "bbR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4; level = 1},/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{name = "Kitchen Maintenance"; req_access_txt = "28"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) @@ -2814,7 +2875,6 @@ "bdD" = (/turf/simulated/floor/plasteel,/area/hallway/primary/central/north) "bdE" = (/obj/machinery/camera{c_tag = "Dormitories Toilets"; dir = 1; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/toilet) "bdF" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Bar Office"; req_access_txt = "25"},/turf/simulated/floor/plasteel,/area/crew_quarters/bar) -"bdG" = (/obj/machinery/door/airlock/maintenance{name = "Bar Maintenance"; req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "bdH" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/hallway/primary/central/ne) "bdI" = (/obj/machinery/vending/cola,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/hallway/primary/central/ne) "bdJ" = (/obj/machinery/light/small{dir = 1},/obj/item/device/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/obj/structure/closet/chefcloset,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) @@ -2898,7 +2958,6 @@ "bfj" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/machinery/camera{c_tag = "Bar North"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/structure/table/reinforced,/obj/machinery/chem_dispenser/soda,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "bfk" = (/obj/machinery/requests_console{department = "Bar"; name = "Bar Requests Console"; departmentType = 2; pixel_x = 0; pixel_y = 30},/obj/structure/table/reinforced,/obj/machinery/chem_dispenser/beer,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "bfl" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/stool/bed/chair/comfy/brown{dir = 4},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/carpet,/area/crew_quarters/bar) -"bfm" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/obj/machinery/status_display{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "bfn" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/central/ne) "bfo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/central/ne) "bfp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/central/ne) @@ -2906,7 +2965,6 @@ "bfr" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/stool/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "bfs" = (/obj/machinery/light{dir = 1},/obj/machinery/vending/boozeomat,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "bft" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) -"bfu" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/carpet,/area/crew_quarters/bar) "bfv" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bfw" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bfx" = (/obj/machinery/door/window/eastright{tag = "icon-right"; name = "Hydroponics Delivery"; icon_state = "right"; dir = 2; req_access_txt = "35"},/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor/plasteel{icon_state = "hydrofloor"},/area/hydroponics) @@ -3003,7 +3061,6 @@ "bhk" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plasteel,/area/hallway/primary/central/ne) "bhl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table/reinforced,/obj/item/stack/packageWrap,/obj/item/weapon/pen/blue{pixel_x = 0; pixel_y = 4},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/book/manual/sop_service,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "bhm" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) -"bhn" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/reinforced,/obj/item/clothing/head/that{pixel_x = 4; pixel_y = 6},/obj/item/weapon/lighter/zippo,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "bho" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/kitchenspike,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bhp" = (/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/plasteel,/area/hallway/primary/central/ne) "bhq" = (/turf/simulated/floor/plasteel,/area/hallway/primary/central/ne) @@ -3014,7 +3071,6 @@ "bhv" = (/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "bhw" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bhx" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor/carpet,/area/crew_quarters/bar) -"bhy" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/carpet,/area/crew_quarters/bar) "bhz" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "bhA" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/floor/plasteel{icon_state = "hydrofloor"},/area/hydroponics) "bhB" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "asteroid"; tag = "icon-asteroid (NORTH)"},/turf/simulated/floor/plasteel{tag = "icon-siding2 (NORTH)"; icon_state = "siding2"; dir = 1},/mob/living/simple_animal/pig,/turf/simulated/floor/plasteel{tag = "icon-siding1 (NORTH)"; icon_state = "siding1"; dir = 1},/area/hydroponics) @@ -3095,7 +3151,6 @@ "biY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel,/area/hallway/primary/central/ne) "biZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "L8"},/area/hallway/primary/central/north) "bja" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/light_switch{pixel_x = -25},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) -"bjb" = (/obj/machinery/door/window{dir = 4; name = "Bar Door"; req_access_txt = "25"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "bjc" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32},/obj/structure/table/woodentable,/obj/item/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "bjd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel,/area/hallway/primary/central/ne) "bje" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/primary/central/ne) @@ -3181,7 +3236,6 @@ "bkG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/central/ne) "bkH" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plasteel,/area/hallway/primary/central/ne) "bkI" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/obj/structure/table/reinforced,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) -"bkJ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue{pixel_x = 2; pixel_y = 6},/obj/item/weapon/pen/blue{pixel_x = -3; pixel_y = 2},/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) "bkK" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 0},/turf/simulated/floor/carpet,/area/crew_quarters/bar) "bkL" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/freezer{req_access_txt = "28"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen) "bkM" = (/obj/machinery/slot_machine,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/crew_quarters/bar) @@ -3265,7 +3319,6 @@ "bmm" = (/obj/structure/stool,/turf/simulated/floor/wood,/area/crew_quarters/bar) "bmn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/stool,/turf/simulated/floor/wood,/area/crew_quarters/bar) "bmo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"bmp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/bar) "bmq" = (/turf/simulated/floor/wood,/area/crew_quarters/bar) "bmr" = (/obj/structure/noticeboard{pixel_y = 32},/turf/simulated/floor/wood,/area/crew_quarters/bar) "bms" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/crew_quarters/kitchen) @@ -4209,7 +4262,6 @@ "bEy" = (/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"},/turf/simulated/wall,/area/medical/reception) "bEz" = (/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{tag = "icon-warnwhite (NORTH)"; icon_state = "warnwhite"; dir = 1},/area/medical/reception) "bEA" = (/turf/simulated/wall/r_wall,/area/assembly/robotics) -"bEB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard_medi"; name = "Quarantine Lockdown"; opacity = 0},/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel,/area/medical/morgue) "bEC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/genetics) "bED" = (/turf/simulated/wall/r_wall,/area/toxins/lab) "bEE" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/item/weapon/twohanded/required/kirbyplants,/turf/simulated/floor/plasteel,/area/hallway/primary/starboard/east) @@ -4295,17 +4347,8 @@ "bGg" = (/obj/machinery/newscaster{pixel_x = 30},/obj/machinery/alarm{pixel_y = 26},/obj/item/weapon/twohanded/required/kirbyplants,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHEAST)"; icon_state = "whiteblue"; dir = 5},/area/medical/reception) "bGh" = (/obj/structure/closet/walllocker/emerglocker/north,/obj/structure/table,/obj/machinery/computer/mob_healer_terminal,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/reception) "bGi" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/light{dir = 1},/obj/machinery/bodyscanner,/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bGj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Medbay Examination Room"; network = list("SS13")},/obj/structure/stool,/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bGk" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/item/device/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/obj/machinery/body_scanconsole,/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bGl" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bGm" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal,/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) -"bGn" = (/obj/structure/table,/obj/item/device/camera{name = "Autopsy Camera"; pixel_x = -2; pixel_y = -2},/obj/item/clothing/gloves/color/latex,/obj/item/weapon/reagent_containers/glass/bottle/reagent/formaldehyde,/obj/item/weapon/reagent_containers/syringe,/turf/simulated/floor/plasteel{dir = 9; icon_state = "blue"},/area/medical/morgue) -"bGo" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) -"bGp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) "bGq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall/r_wall,/area/assembly/chargebay) "bGr" = (/turf/simulated/wall/r_wall,/area/assembly/chargebay) -"bGs" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) -"bGt" = (/obj/machinery/camera{c_tag = "Medbay Morgue"; network = list("SS13")},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/morgue) "bGu" = (/obj/machinery/computer/rdconsole/robotics,/obj/machinery/alarm{pixel_y = 25},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/robotics) "bGv" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/turf/simulated/floor/plasteel,/area/medical/morgue) "bGw" = (/obj/machinery/r_n_d/circuit_imprinter,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/robotics) @@ -4382,14 +4425,8 @@ "bHP" = (/obj/structure/stool,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/reception) "bHQ" = (/turf/simulated/floor/plasteel,/area/medical/morgue) "bHR" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bHS" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel,/area/medical/morgue) -"bHT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) "bHU" = (/obj/structure/morgue,/obj/effect/landmark{name = "revenantspawn"},/turf/simulated/floor/plasteel,/area/medical/morgue) -"bHV" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bHW" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/closet/secure_closet/exam,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) "bHX" = (/turf/simulated/floor/plasteel,/area/assembly/chargebay) -"bHY" = (/obj/structure/table,/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/medical/morgue) -"bHZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/medical/morgue) "bIa" = (/turf/simulated/wall,/area/assembly/robotics) "bIb" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/effect/landmark{name = "revenantspawn"},/turf/simulated/floor/plasteel,/area/medical/morgue) "bIc" = (/obj/structure/stool/bed/chair/office/light{dir = 1},/obj/effect/landmark/start{name = "Roboticist"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/robotics) @@ -4480,16 +4517,8 @@ "bJJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/chemistry) "bJK" = (/obj/item/weapon/hand_labeler,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the 'Space' from Space Cleaner and written in Chemistry. Scrawled on the back is, 'Okay, whoever filled this with polytrinic acid, it was only funny the first time. It was hard enough replacing the CMO's first cat!'"; name = "Chemistry Cleaner"},/obj/item/device/radio/intercom{frequency = 1459; name = "station intercom (General)"; pixel_x = 28},/obj/structure/table/glass,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/chemistry) "bJL" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/reception) -"bJM" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel,/area/medical/morgue) -"bJN" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bJO" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel,/area/medical/morgue) "bJP" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Examination Room"; req_access_txt = "5"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{tag = "icon-whitebluefull"; icon_state = "whitebluefull"},/area/medical/exam_room) -"bJQ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bJR" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/stool/bed,/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = 25; pixel_y = 0; req_access_txt = "0"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bJS" = (/obj/structure/filingcabinet/chestdrawer{desc = "A large drawer filled with autopsy reports."; name = "Autopsy Reports"},/obj/machinery/light{dir = 8},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/medical/morgue) "bJT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/bluegrid,/area/assembly/chargebay) -"bJU" = (/obj/machinery/optable,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/medical/morgue) -"bJV" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/machinery/light/small{dir = 4},/obj/effect/landmark{name = "revenantspawn"},/turf/simulated/floor/plasteel,/area/medical/morgue) "bJW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 12},/turf/simulated/floor/plating,/area/maintenance/genetics) "bJX" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/bluegrid,/area/assembly/chargebay) "bJY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/robotics) @@ -4574,14 +4603,10 @@ "bLz" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/reception) "bLA" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/item/weapon/phone{pixel_x = -3; pixel_y = 3},/turf/simulated/floor/plasteel{dir = 5; icon_state = "blue"},/area/medical/reception) "bLB" = (/obj/structure/table,/obj/machinery/door/window/northright{name = "Medbay Lobby"; req_access_txt = "5"},/obj/item/device/radio/intercom/department/medbay,/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/medical/reception) -"bLC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel,/area/medical/morgue) "bLD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/device/radio/intercom{frequency = 1459; name = "station intercom (General)"; pixel_x = 28},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/reception) "bLE" = (/turf/simulated/floor/mech_bay_recharge_floor,/area/assembly/chargebay) "bLF" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/structure/closet/secure_closet/medical_wall{name = "Pill Cabinet"; pixel_y = -32},/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/item/weapon/reagent_containers/syringe/charcoal,/obj/item/weapon/reagent_containers/syringe/insulin,/obj/item/weapon/reagent_containers/glass/bottle/morphine,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine,/obj/item/weapon/reagent_containers/syringe,/obj/item/stack/medical/bruise_pack/advanced,/obj/item/stack/medical/ointment/advanced,/obj/item/weapon/reagent_containers/food/pill/patch/styptic,/obj/item/weapon/reagent_containers/food/pill/patch/styptic,/obj/item/weapon/reagent_containers/food/pill/patch/silver_sulf,/obj/item/weapon/reagent_containers/food/pill/patch/silver_sulf,/obj/item/weapon/storage/pill_bottle/painkillers,/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bLG" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/table,/obj/item/weapon/cane,/obj/item/weapon/cane{pixel_x = -3; pixel_y = 2},/obj/item/weapon/cane{pixel_x = -6; pixel_y = 4},/obj/item/weapon/storage/box/rxglasses,/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bLH" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_y = -10},/obj/item/weapon/clipboard,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) "bLI" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/assembly/robotics) -"bLJ" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/bodybags,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/medical/morgue) "bLK" = (/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/assembly/robotics) "bLL" = (/obj/machinery/mecha_part_fabricator,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plasteel,/area/assembly/robotics) "bLM" = (/obj/machinery/mecha_part_fabricator,/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor/plasteel,/area/assembly/robotics) @@ -4668,17 +4693,9 @@ "bNp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHEAST)"; icon_state = "whiteblue"; dir = 6},/area/medical/reception) "bNq" = (/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"},/area/medical/reception) "bNr" = (/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"},/turf/simulated/wall,/area/medical/exam_room) -"bNs" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/stool/bed/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Medical Doctor"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bNt" = (/obj/structure/table,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/computer/med_data/laptop,/obj/item/device/radio/intercom{name = "station intercom (General)"; pixel_y = -28},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/medical/exam_room) -"bNu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) -"bNv" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 10},/area/medical/morgue) -"bNw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/device/radio/intercom{dir = 1; name = "station intercom (General)"; pixel_y = -28},/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) -"bNx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) -"bNy" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) "bNz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/assembly/chargebay) "bNA" = (/obj/machinery/light_switch{name = "light switch "; dir = 2; pixel_x = 0; pixel_y = -22},/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) "bNB" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/chargebay) -"bNC" = (/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/medical/morgue) "bND" = (/obj/machinery/hologram/holopad,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/chargebay) "bNE" = (/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/assembly/robotics) "bNF" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/cable_coil,/obj/item/device/flash,/obj/item/device/flash,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/robotics) @@ -4762,10 +4779,6 @@ "bPf" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/warning_stripes/yellow/partial{dir = 1},/obj/effect/decal/warning_stripes/arrow{dir = 1},/turf/simulated/floor/plasteel,/area/medical/reception) "bPg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/wall,/area/medical/morgue) "bPh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/decal/warning_stripes/yellow/partial{dir = 1},/obj/effect/decal/warning_stripes/arrow{dir = 1},/turf/simulated/floor/plasteel,/area/medical/reception) -"bPi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall,/area/medical/morgue) -"bPj" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard_medi"; name = "Quarantine Lockdown"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/medical/exam_room) -"bPk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Examination Room"; req_access_txt = "5"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/exam_room) -"bPl" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6;5"; req_one_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/morgue) "bPm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/genetics) "bPn" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plasteel,/area/assembly/robotics) "bPo" = (/turf/simulated/floor/plasteel,/area/assembly/robotics) @@ -4848,20 +4861,13 @@ "bQN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{level = 1},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard_medi"; name = "Quarantine Lockdown"; opacity = 0},/obj/machinery/door/airlock/glass_medical{id_tag = "MedbayFoyerStar"; name = "Medbay Entrance Starboard"; req_access_txt = "5"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/medical/medbay2) "bQO" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "Biohazard_medi"; name = "Quarantine Lockdown"; opacity = 0},/obj/machinery/door/airlock/glass_medical{id_tag = "MedbayFoyerStar"; name = "Medbay Entrance Starboard"; req_access_txt = "5"},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warning"},/area/medical/medbay2) "bQP" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/turf/simulated/wall,/area/medical/medbay2) -"bQQ" = (/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) -"bQR" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/medical/medbay2) "bQS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/closet/walllocker/emerglocker/north,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) "bQT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) -"bQU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9; pixel_y = 0},/obj/structure/closet/walllocker/emerglocker/north,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) "bQV" = (/turf/simulated/wall,/area/medical/medbay2) -"bQW" = (/obj/machinery/camera{c_tag = "Medbay Fore Starboard"; network = list("SS13")},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) "bQX" = (/turf/simulated/floor/plating,/area/maintenance/genetics) -"bQY" = (/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) -"bQZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay2) "bRa" = (/obj/structure/extinguisher_cabinet{pixel_x = -27},/obj/machinery/light{dir = 8},/turf/simulated/floor/bluegrid,/area/assembly/chargebay) "bRb" = (/turf/simulated/floor/bluegrid,/area/assembly/chargebay) "bRc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/bluegrid,/area/assembly/chargebay) -"bRd" = (/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHEAST)"; icon_state = "whiteblue"; dir = 5},/area/medical/medbay2) "bRe" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plating,/area/maintenance/genetics) "bRf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/genetics) "bRg" = (/obj/machinery/light/small{dir = 1},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 14},/obj/effect/spawner/lootdrop/maintenance,/turf/simulated/floor/plating,/area/maintenance/genetics) @@ -4938,10 +4944,8 @@ "bSz" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) "bSA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/door_control{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyerStar"; name = "Medbay Doors Control"; normaldoorcontrol = 1; pixel_x = -26; range = 6},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/medical/medbay2) "bSB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) -"bSC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{level = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay2) "bSD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/device/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"; tag = "icon-pipe-j1 (WEST)"},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/medical/medbay2) "bSE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay2) -"bSF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/junction{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitebluecorner"; tag = "icon-whitebluecorner"},/area/medical/medbay2) "bSG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay2) "bSH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 23},/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay2) "bSI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{level = 1},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"; tag = "icon-pipe-j1 (WEST)"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay2) @@ -5327,7 +5331,6 @@ "bZY" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/rack,/obj/item/weapon/circuitboard/aicore{pixel_x = -2; pixel_y = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/crew_quarters/hor) "bZZ" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "caa" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research_shuttle_dock) -"cab" = (/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/crew_quarters/hor) "cac" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asmaint2) "cad" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/plasteel{dir = 2; icon_state = "cmo"},/area/medical/research_shuttle_dock) "cae" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/shuttle/administration) @@ -5384,7 +5387,6 @@ "cbd" = (/turf/simulated/wall/r_wall,/area/toxins/server_coldroom) "cbe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/wall/r_wall,/area/toxins/server_coldroom) "cbf" = (/turf/simulated/wall/r_wall,/area/toxins/server) -"cbg" = (/turf/simulated/floor/plasteel{tag = "icon-whitepurple (EAST)"; icon_state = "whitepurple"; dir = 4},/area/medical/genetics) "cbh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/wall/r_wall,/area/toxins/storage) "cbi" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{name = "Server Room"; req_access = null; req_access_txt = "30"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/toxins/server) "cbj" = (/turf/simulated/wall/r_wall,/area/toxins/storage) @@ -5971,7 +5973,6 @@ "cmt" = (/obj/structure/stool/bed/chair/office/dark{dir = 1},/obj/effect/landmark/start{name = "Chief Medical Officer"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/cmo) "cmu" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "cmooffice"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/cmo) "cmv" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "cmooffice"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/cmo) -"cmw" = (/obj/item/weapon/paper_bin,/obj/item/weapon/folder/white{pixel_y = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/weapon/reagent_containers/food/drinks/coffee,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/accessory/stethoscope,/obj/item/weapon/stamp/cmo,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 32; pixel_y = 0},/obj/structure/table/glass,/obj/item/weapon/pen/multi,/obj/item/weapon/book/manual/sop_medical,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/medical/cmo) "cmx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{tag = "icon-whitebluecorner (WEST)"; icon_state = "whitebluecorner"; dir = 8},/area/medical/medbay2) "cmy" = (/obj/machinery/photocopier,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHWEST)"; icon_state = "whiteblue"; dir = 10},/area/medical/medbay2) "cmz" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/poddoor/shutters{density = 0; dir = 8; icon_state = "shutter0"; id_tag = "staffroom"; name = "Staff Room Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/medbreak) @@ -6040,7 +6041,6 @@ "cnK" = (/obj/machinery/light,/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/plasteel{dir = 10; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/medical/cmo) "cnL" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "cmooffice"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/cmo) "cnM" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/medical/cmo) -"cnN" = (/obj/structure/table,/obj/item/device/megaphone,/obj/item/weapon/reagent_containers/glass/bottle/morphine,/obj/item/device/radio/intercom/department/medbay{pixel_y = -28},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/medical/cmo) "cnO" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id_tag = "cmooffice"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/cmo) "cnP" = (/obj/machinery/computer/crew,/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 6; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/medical/cmo) "cnQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/medical/medbay2) @@ -7851,9 +7851,7 @@ "cWB" = (/obj/structure/closet/secure_closet/engineering_welding,/turf/simulated/floor/plasteel,/area/engine/equipmentstorage) "cWC" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) "cWD" = (/obj/structure/closet/secure_closet/engineering_chief{req_access_txt = "0"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cWE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/folder/yellow,/obj/item/weapon/stamp/ce,/obj/item/weapon/book/manual/sop_engineering,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) "cWF" = (/obj/structure/table/reinforced,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/machinery/photocopier/faxmachine{department = "Chief Engineer's Office"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) -"cWG" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter/zippo,/obj/item/weapon/pen/multi,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) "cWH" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel,/area/engine/equipmentstorage) "cWI" = (/obj/structure/table,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/item/weapon/storage/belt/utility,/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 = ""},/turf/simulated/floor/plasteel,/area/engine/equipmentstorage) "cWJ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plasteel,/area/engine/equipmentstorage) @@ -9052,14 +9050,14 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahQahQahQahQaiZaiXajfajaahQahEaigabNaolaolaolaolaolaolagtajgajiajhajlajkajnajmajpajoajrajqajLajKaivaaaajMagTajOajNajQajPanAanHanHajRajTajSanHanHaihaihaihaihaihaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwakRakPahZakRakPagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajWajUakcakbakeakdakhakgahQakiaitalcaolaolaolaolaolaolajnakjanWakkannanWaklajjajjakmajjaksakwaktaivaabaabagTakCakxakEakDanAakFakGaoJaoJakHakJakIakvakKakMakLakNaihaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvalvalvalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwalxalyahaalzalAagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajWakOakSakQakVakTalaakYaldalbaitaleaolaolaolaolaolaolagtalfalgakkalialhajnaljallalkalnalmakfakuaivanHanHanAanAanAanAaloanAalpalralqalualtalFalCalGaiYaiYaiYalHaihaihaaaaaaaaaajbajbajbajbajbajbajbalIalJaaaabpaaaaaaalvaaaaabaaaamhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagwamiamjahaamkamlagwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajWalKalMalLalOalNalQalPahQalRalSalcaolaolaolaolaolaolagtagtalUalTapPagtagtalValWaivalYalXalZaivaivanHambamaamdamcamfameanAamgaoJammampamnalFamqamrajVajVamsamuamtaihaaaaaaaaaajbajsajtajvajuajwajxajyaaaaaaaaaaaaaaaamWaabamUaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahsagZamYamZanaagZahnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahQahQamvahQahQahQahQahQahQamwaigapFapFapFapFapFapFapFapFamxamzamyamzamAamCamBamEamDamGamFamIamHamJauiaoJamKamKamKamKamLakIaoJapmamMamOamNamQamPamTamSanbamXandancaneaaaaaaaaaajbajXajwajwajwajwajxajyaaaaaaaaaaaaamWalvaaaanGaaaalvamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahsagZagZagZahnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajWalKalMalLalOalNalQalPahQalRalSalcaolaolaolaolaolaolagtagtalUalTapPagtagtalValWaivalYalXalZaivaivanHambamaamdamcamfameanAamgaoJammampamnalFamqamrajVamvamsamuamtaihaaaaaaaaaajbajsajtajvajuajwajxajyaaaaaaaaaaaaaaaamWaabamUaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahsagZamYamZanaagZahnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahQahQaqqahQahQahQahQahQahQamwaigapFapFapFapFapFapFapFapFamxamzamyamzamAamCamBamEamDamGamFamIamHamJauiaoJamKamKamKamKamLakIaoJapmamMamOamNamQamPamTamSanbamXandancaneaaaaaaaaaajbajXajwajwajwajwajxajyaaaaaaaaaaaaamWalvaaaanGaaaalvamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahsagZagZagZahnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfangaomanianhankanjanlajJanmapGanpanoanranqantansapFanuanwanvanzanyanCanBanEanDanIanFanJanJanJanKaoJanLanNanManPanOanQaofaofanRanTanSalFanUanVajVajVanXanZanYaoaaaaaaaaaaajbaknajwakoajwajwajxajyaaaaaaaaaaaaamWaabaabanGaabaabaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfangaomaocaobaoeaodaohaogaitapGaojaoiaonaokaopaooapFaoqaosaoraouaotaowaovaoxalWaozaoyaoBaoAaoDaoCaoJaoEaoGaoFaoFaoHaoLaoIaoIaoMaoPaoNalFaoQaoRaiYaiYaiYaoTaoSaihaabaaaaaaajbakyajwajwajwajwakzajyaaaaaaaaaaaaamWaaaaaaaoKaaaaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfaoUaomaoValEaoXaoWanlajJaigapGaoZaoYapbapaapdapcapFapeapgapfaphamyapjapiapkapSapAaplapCapBapEapDapIapHapJapJapLapKapNapMapOaoJapQaoJapRapNapTaiYapVapUapXapWaihaaaaabaabajbapYaqaapZaqcaqbajbalIaqeaaaaaaaaaamWaabappapnapqaabaabamWamWamWamWamWamWaqpamWamWamWamWamWamWamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapsaprapuaptapwapraprapxapraprapvaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabapyaabalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBakBakBakBaqqakWakZaomaomaomaomakUaqsapFapGapGapGaqtaquapGapFaqvalUaqwaqwalTaqxaqxapPapSapSaqyaqzapSapSapSanAaqAaqCaqBanxanAanAaqAaqDanxaqFaqEanxanAaqGaqGaqGaqGaqHaihaihaqIaqIaqIaqIajbalsaqJaqKalsajbaabaaaaaaaaaaaaamWaaaappaqdapqaaaaaaaabaabaabaabaabaabaabaabaqLaabaabaabaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapsaprapuaptapwapraprapxapraprapvaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabapyaabalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBakBakBakBaslakWakZaomaomaomaomakUaqsapFapGapGapGaqtaquapGapFaqvalUaqwaqwalTaqxaqxapPapSapSaqyaqzapSapSapSanAaqAaqCaqBanxanAanAaqAaqDanxaqFaqEanxanAaqGaqGaqGaqGaqHaihaihaqIaqIaqIaqIajbalsaqJaqKalsajbaabaaaaaaaaaaaaamWaaaappaqdapqaaaaaaaabaabaabaabaabaabaabaabaqLaabaabaabaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfaqhaqiaqgaqkaqlaqlaqlaqmaqjaqoaaaaaaaaaalwalwalwalvalvaabaabaaaaqnaaaaabaabalvalvalwalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBakXaqraqMaqNaqraqOapzaqQaqPakWaqRaqTaqSaqVaqUaqXaqWariaqYarjaqXaqXaqXaqXarkaqXaqXaqXarlarnarmarparoarrarqarsarsarsartarsaruarwarvarxaqXaryaqWaqXarzarBarAarCaqXariaqXaqXarDarEaqVaqXarFarHarGarJarIajbaabaaaaaaaaaaaaamWaaaappaqdapqaaaaaaaabaqZaraaraaraaraarbaraaraaraaraarcaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaardaqhareargaqlarharharharharharfaaaaaaaaaalwaaaaaaaabaaaaabaaaaaaaqnaaaaaaaabaaaaabaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBalDarKalDarLalDarNarMarParOarRarQarTarSasdascaseaseasfaseasgaseaseaseasiashasiasjasiasiaslaskasnasmaspasoasoasoasoasqasoasoasoasrastassasvasuasxaswaszasyasAasAasCasBasBasDasEasEasEasFasHasGasIamRamVaaaaaaaaaaaaaaaamWaabappaqdapqaaaaaaaabarUaabaaaaaaaabarUaabaabaaaaaaarUaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaardaqhareargaqlarharharharharharfaaaaaaaaaalwaaaaaaaabaaaaabaaaaaaaqnaaaaaaaabaaaaabaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBalDarKalDarLalDarNarMarParOarRarQarTarSasdascaseaseasfaseasgaseaseaseasiashasiasjasiasiassaskasnasmaspasoasoasoasoasqasoasoasoasrastasAasvasuasxaswaszasyasAasAasCasBasBasDasEasEasEasFasHasGasIamRamVaaaaaaaaaaaaaaaamWaabappaqdapqaaaaaaaabarUaabaaaaaaaabarUaabaabaaaaaaarUaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarVaqharWarYarharharharharZasaaqoaaaaaaaaaalwaabarXarXarXarXarXaaaasbaaaarXarXarXarXarXaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBamoasYasXasZasYasYataatbalBakWatcateatdatgatfatiathatkatjatmatlatnatjatpatoatratqatratsatuattatwatvatyatxatAatzatCatBatEatDatAatOatRatQaFLaFLaFLaFLaFLaFLaFLaxeatSatSatSatTatSatSatSarFatVatUatXatWajbaaaaaaaaaaaaaabamWaaaappaqdapqaabaabappapnapqaabaabappapnapqaabaabappapnapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasJaprapraprapwapraprapxapraprasKaaaaaaaaaalwaaaasMasLasLasLasLasNasPasOasQasQasQasQasRaaaalwaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaakBakBakBakBakBakBakBatYauaatZakWaubaudapFaufaueawKaugauhawKawKawKawKaujaukaucatdaulatdaucaunaumawHawHawHawHauAauoawVauEauEawXauEauFauEauEaFLauGauHaFLauHauIaFLauJauLauKauNauMauPauOauQajbajbajbajbajbajbaaaaaaaaaaaaaaaamWaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaabaqpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaabatFatFatFatFatFaaaatHaaaatFatFatFatFatFaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBauRauTauSakWauUauVapGauXauWaucauYavaauZavcavbauZavdavfaveavhavgaviaveavjaAzavlavkavmavlavoavnavzavravBavAaAFavCaCyavDaFLauIavFavEavFauIaFLavGavHayVayVavIavKavJavLaHEaaaaabaaaaaaaaaaaaaaaaaaaaaaaaamWaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9093,46 +9091,46 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaVVaVSaVXaVSaVSaVYaVZaVSaVSaVXaWaaVWaLdaToaWbaVcaWdaWcaWfaWeaWhaWgaTuaUuaVeaUqaWjaVeaVeaUuaTuaWkaWlaWiaWnaWmaWoaWqaWraWpaWtaVjaabaUEaWuaWsaWwaWvaWxaUEaabaSuaSzaSAaWzaWAaWyaWCaWBaSAaPiaRwaSBaSCaWEaWDaULaSCaWFaSCaULaWGaSLaSCaSMaRwaSNaFFaWJaEjaMFaLPaISaOhaLNaLPaOiaWHaUQaWKaVEaVEaVEaWLaOlaOkaOmaUSaWQaWPaOxaOtaPgaHPaaaaaaaaaaaaaaaaaaaaaaaaaaaaGXaWVaWUaWXaWWaWYaGXaNhaGYaQIaMkaGYaGXaaaaGXaGYaGYaGYaGYaMkaXbaXaaWZaWZaWZaWZaXcaXeaXdaXhaXiaXfaXiaXgaVTaVTaVUaXkaXjaXlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaVVaWaaVSaXmaXraXsaXtaXuaXvaXwaXxaXyaXzaXpaXnaSdaToaXqaVcaXBaXAaXFaXGaXFaXCaTuaXIaVeaXDaXHaXEaXHaXJaXLaXKaXMaXQaXQaXQaXQaXQaXQaXNaXSaVjaaaaUEaXOaWsaXPaWvaXRaUEaaaaSuaSzaSAaXTaXXaXVaXUaYaaSAaPiaRwaXWaXWaTCaXYaVuaTDaXZaTDaVuaYbaTIaTzaTzaRwaYcaIraYhaEjaMFaLPaLPaLPaLPaLPaPlaPkaPnaPmaPoaUQaUQaUQaUQaUQaUQaUSaPpaZVaPqaUSaOgaYwaHPaGXaGXaGXaGXaGXaGXaGXaGXaGXaGXaGXaGXaYnaGXaGXaGXaGXaGYaMkaWVaHNaabaHNaGYaYsaYvaYuaYyaYxaYzaYEaYEaYEaYEaYFaYGaYAaYIaYJaYKaYJaYBaYJaYJaYCaXoaYOaYPaYQaYRaYSaYSaYSaYSaYSaYSaYSaYSaYSafXajcaaaaaaaaaaaaaaaaaaaaaaYDaYUaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXpaYMaYLaYNaXzaYZaXsaYZaXsaYZaXsaYZaXzaYVaYTaSdaToaYWaVcaYYaYXaZfaZaaZhaZbaTuaZjaUraZcaZlaZmaZnaZdaTuaZeaZgaXQaXQaXQaXQaXQaXQaXNaZraVjaabaUEaZkaZiaZpaZoaZqaUEaabaSuaSzaSAaZsaZyaZtaZAaZuaSAaPiaRwaUJaUJaUJaZvaULaSCaUIaSCaULaZwaUJaUJaUJaRwaZxaZFaZGaEjaPtaPsaPsaPsaPsaPuaPxaPvaUQaPyaPzaUQaQmaQfaQnaUQaQoaUSaZDaZVaZEaUSaQpaZKaQqaZNaZNaZKaZXaZWaZWaZWaZWaZWaZZaZYaZWbaabacbabbaebadbagbafbaibahbajbahbalbakaGYaGXbarbambanbaubavbaobaxbaybazbapbazbaBbasbaqbatbaFbaAbawbaIbaCbaEbaDaYPbaMbaNbaObaGbaQbaRbaHbaTbaUbaVaaaaaaaaaaaaaaaaaaaaaaYDbaWbaXbaYaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaZaXsaXsaVXaXzaYZaXsaYZbbaaYZaXsaYZaXzaYVaYTaSdaTobaJaVcaVcbaKaUtbaLaUtaVcaTuaTuaTuaTubaSbaPbbhbbbaTubbjbbcbblaXQaXQbbmaXQbbebbdbbpaVjaaaaUEaUEbbqbbfbbqaUEaUEaaaaSuaSzaSAbbibbgbbkaZAbbnaSAaPiaRwaSBaSCbboaWDaULaSCaUIaSCaULaWGbbxaRwaRwaRwbbrbbzbbtbbsbbCbbDatGatGbbEbbFbbvbbuaUQbbwaVEaUQbbJaUQbbKaUQbbLbbybbBbbAbbHbbGbbMbbIbbObbNbbQbbPbbRbbQbbQbbSbbQbbIbbTbbIaXfbbUbbIbbVbbXbbWbbZbbYbcbbcabcdbccbcfbceaXibcmbcgbcobcpbchbcibcsbcjbaybcubckbazbcwbcxbclbczbaFbcAbcBbcCbcDbcnbcFaYPbcqbcHbcHbcIbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaYDbaWbcJbcKbcLbaYaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXpbcrbcNaYNaXzaYZaXsaYZaXsaYZaXsaYZaXzaYVaYTaSdaTobcvbctbcEbcybcSbcSaSfbcGbcMbcVbcWbcXbcPbcOaVebcQaTubdbbcRbddbdebcTbdgbdhbdibcUbdkaVjaaaaabaaabcYbcZbcYaaaaabaaaaSuaSzaSAbdcbdabdjbdfbdraSAaPiaRwbdmbdlaTCbdnbdoaTDbdpaTDbdsbdqbdzaRwbdubdtbdvbdDbdxbdwbdybdHaaaaaabbEbdIbdBbdAaUQbdCbdEaVEaVEbdNaVEaVEaVEbdOaUSbdFaUSbdQbdRaUSbdGaUSbdTbdUbdKbdJbdMbdLbdTbdPbeabebbecbebbebbebbebbdSbeebebbefbdVbdWbeibebbdXaGYbaubekbcpbelbembenbeobepbeqberbdYbazbetbeubevbewbdZbcAbcBbcCbcDbaEbedaYPbegbcHbcHbcIbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaYUbeAbeBbeCbeBbeDaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabehbejaVSaXmaXzaXsbeGbesaXsaXsbexbeGaXzaXpbeyaSdaTobeEbezbeMbeFbeMbeMbeMbeMbeMbeHaSfaTubePbeQbePaTuaTubeRbeIbeRaViaViaViaVibeRbeJbeUaVjbeLbeKbeKbeNbeObeNbeKbeKbeSaSubfaaSAbeTaSAbeWbeVbfeaSAbffaRwaRwaRwaRwbfgbfhbeXbeYbeXbfhbfgaRwaRwbeZbdDbdDbdDbdDbfbbfdbfnbfobfpbbEbfqbdBbfiaUQaUQaUQaUQaUQaUQaUQaUSaUSbdObfsbftbfkbfjbfmbflbfubfrbdTbfAbfvbfCbfwbfEbdTbfxbfybfHbfzbfHbfJbfKbfMbfBbfFbfDbfIbfGbfNbfLbebbfObfQbfPbfSbfRbelbfYbfZbeobfTbazbfVbfUbfXbfWbgfbczbczbazbazbcBbcCbcDbcnbggaYPbgabgibgbbgkbgcbgmbaTbaTbgdbaVaaaaaaaaaaaaaaaaYDbaWbgobeCbeCbeCbgpbaYaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabehaVSaVXaVSaVSaVYaVZaVSaVSaVXbejbgeaLdbghbeEaSdbgsbgsbgtbgsbgjaMsbgvbglaSfbgnbfcbgzbgzbgqbgrbgzbgubgzbgzbgzbgDbgzbgzbgwbgFbgAbgCbgBbgEbgCbgHbgCbgCbgCbgCbgIbgMbgJbgzbgzbgKbfcbgQbgxbgSbgLbgObgNbgTbgPbgPbgPbgPbgPbgPbgPbgVbgUbhabhbbhcbhdbhebgWbgYbgXbdDbdDbhfbgZbhgbgZbhgbhhbhjbhibhkbhpbhqaUSbhrbhlbhtbhmbhvbhvbhnbhxbhybhzbdTbhobhubhsbhsbhwbdTbhAbhCbhBbhEbhDbhDbhFbhHbhGbfMbhIbhJbhPbhQbhRbebbdXaTgbaubhKbhTbhTbhUbhVbhTbhLbazbhXbhNbazbhObhSbczbhWbazbhZbhYbiabcDaYPaYPaYPbibbigbihbiibigbigbigbigaYSafXajcaaaaaaaaaaaabicbikbilbeCbeCbimbinbeCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbgyaSdaSdaSdaSdaSdaSdbgyaSdaUZaLdbidbieaSdbirbisbitbitbiuaMsbivbglbifbgGbfcbijbipbiobiqbiqbixbiwbiwbiwbizbiybiybiAbiCbiBbiqbiqbiDbiybiFbiEbiGbiGbiIbiHbiKbiJbiJbiJbiLbfcbgQbgxbgSbgSbgSbgSbiMbgSbgSbgSbgSbgSbgSbiNbiUbiVbiWbiXbiObiZbiQbiPbiRbiVbiVbiVbjdbjebjebjebiSbhqbhqbhqbiYbiTbhqaUSbjabjjbhvbhvbjkbhvbjbbjmbhybjcbdTbjobjfbjqbjhbjgbdTbjtbjibjvbjwbjxbjybebbebbjzbebbebbebbjBbjlbjBbebbdXaGYbaubjDbcpbcpbcpbjEbcpbjFbazbazbazbazbazbazbazbjnbazbcDbcDbcCbcDbjpbjIaYPbjrbjNbjLblwbgRbjubjsbjAbjRaaaaaaaaaaaaaYDbjCbjGbjCbjCbjCbjHbjCbjJbjCbjGbjCaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabbjQaLdaSdaOQaSdbjTbjSbjVbjUaSdaOQaSdaSdaLdbjWbeEaSdbjXbkcbitbitbiuaMsbkdbglaSfbgGbfcbgzbjZbjYbkgbkgbkabkibkbbkgbkebkgbkfbkgbkhbjPbkgbkgbkgbkgbkgbkjbkkbkgbklbkrbknbkmbgzbgzbkpbkobksbkqbkubktbkubkvbkwbkvbkvbkvbkvbkvbkvbkybkAbkzbkzbkzbkzbkBbkzbkCbkDbkzbkzbkEbkGbkFbkFbkFbkFbkFbkFbkFbkHbhqbhqaUSbkMbkNbkObkPbkPbkIbkJbjmbhybkKbdTbdTbdTbdTbdTbkLbdTbkQbkRbkWbkSbfHbkYbebbhMbkTbkUblcbkVbleblfblgbebbdXaQLbaublhblibcpbljblkbcpbllbllbaubkXblabkZaYPbldblnblmbcDbcDblpbloaYPblqaYPblrbjKbjLblxblsbltbjKblzbjRaaaaaaaaaaaabicbmXblubmYbmYblDbeCblCblDblAblvblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaMsaSdbgyaSdaToaSfaSfaTpaSdbgyaSdblyblEblBblFaSdblIblIbgtblIbgjaMsblJbglaSfaMsblKblKblGblMblMblMblMblMblMbkxblHblMblMblMblMblMblMblPblQblRblRblLblRblTblNblVblTblTblWblXblOblKblZblZblSblSblSbmbbmbbmbbmbbmbbmbbmbbmbbmcblUblUblYblUbmabmabmabmabmebmdbmabmcbmibmibmibmibmibmibmibmibmfbmfbmfaUSbmkbmlbmmbmmbmmbmmbmnbmobmpbmqbmrbmgbmjbmhbmtbmsbdTbdTbmubmybmzbmybmybebbmAbmvbmwbmwbmwbmwbmBbmxbebbmCbmHbaubmIbcpbljbljblkbljbcpbmDbaubmEbmGbmFaYPbcDbmJbmObmPbmPbmKbmRbmLbmTbmUbmMbmWboObmNbjMbjKbjKblzbjRbjRbjRbjRbjRbicbBTbDzbDzbDzbmQbeCblCbnbblAbeCbncbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbmSaSfbmVbndbnabnibnebnfbnibnhbngbnibnibnkbnjbnmbnlbnnbnnbnnbnobnnbnpbnuaMsbnvbnwbnqblMbnybnrbnAbnBbnCbnDbnsbnFbnGbnHbnIbnJblMbnKbnLblRbnxbntbnzblTbnEbnQbnMblTbnSbnTbnNbnSbnSbnSbnObgSbnPbmbaaaaaaaaaaaaaaaaaaaaabmcbnUbnRbnWbnVbnYbnXboaaQrbocaQsbohbmcaaaaaaaaaaaaaaaaaaaaabmibodbhqboeaUSbokbmlbmqbmqbmqbmqbmqbolbombmqbmqbmqbogbofbofboibonbojbopbooborboqbosbebboubotboBboAboAboBbowbovbebbdXaGYbauboEboFbcpbljblkbcpboGboGbaubauboybauaYPbozblnbloboJboJboCbloaYPaYPaYPboDbjKbEFboHbjMbjKbjKbmZbAMboIbrMbrMboIboKbDzbDzbGJbGJbnbbeCblCbnbblAbeCblCaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdboLboPboLboLboLboLboLboLboPboLboLboQaSfboRbgGboUaSfboSaSfboTboXboYboVboWaMsbnwbnwboZblMbpabnDbnDbnDbnDbnDbnsbpdbnDbnDbnDbpeblMbnKbpfblRbpbbphbpiblTbpjbpcbpgblTbplbpkbpmbppbpnbnTbnObgSbnPbmbaaaaaaaaaaaabmcbmcbmcbmcbprbpobptbpqbpubpsbpwaQtbpzbpxbpBbmcbmcbmcbmcaaaaaaaaaaaabmibodbhqbpAbpybpDbpCbpFbpEbpDbpGbpIbpHbpJbpMbpKbmqbpNbpLbofbpObpPbofbpRbpQbpTbpSbofbpWbpVbpUboBboAboAboBbpXbqabebbdXaTgbaubmIbcpbljbljblkbljbcpbcpbpYbqcbcpbqdaYPbpZbqbbqgboJboJbqebqgbqfaYPbqibqhbjKbjRbjRbqjbqkbjRbjRbjRbqnbjRbjRbjRbqpbjCbjCbjCbjCbqobeCblCbqoblAbeCblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLdaLdaSdaSdaSdaSdaSdaSdaSdaSdaSdaLdaMsbgGbqqbqrbqrbqrbqrbqrbqrbqsbqrbqrbqraMsbnwbnKbqtblMbqubnDbnDbqvbqwbqxbqybqvbnDbnDbnDbqzblMbnKbnLblRbqAbqBbqCblTbqDbqEbqFblTbqGbqHbqIbqJbqKbnTbqLbqMbnPbmbbmbbqNbmcbmcbmcbqObqQbqPbqRbqSbqSbqTbqUbqSbqVbqSbqWbqXbqYbqZbrbbrabmcbmcbmcbqNbmibmibodbhqbhqaUSbrdbrcbpMbrebmqbrfbrgbmqbrhbribpKbmqbogbofbofbrjbrlbrkbrnbrmbrpbrobofbrqbpVbrrboBboAboAbrsbrubrtbebbdXaGYbaubrvbrwbrxbljblkbrybcpbcpbrzbcpbrAbrBaYPbrCbrEbrDboJboJbrFbrDbrGaYPbrHbqhbjKbjObGIbjMbjKbjKbrIbrJboIbrLbrMboIbrKbeCbeCbeCbeCbeCbeCbeCbeCbeCbeCblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrNbrObrObrQbrObrObrObrRbrObrObrPaabaSdaUkaSgbrSbqrbrUbrVbrWbrXbrYbrTbsabrZbqrbscbsdbsbbseblMbsfbnDbnDbqvbqxbsgbshbqvbnDbnDbsjbskblMbnKbnLblRblRbslblRblTbsibsnbsoblTbsmbqJbsqbqJbsrbnTbnObssbnPbgPbgPbspbsubstbmcbsvbptbswbqSbqSbsybsxbsAbszbsAaQubsDbsCbsFbsEbsHbsGbmcbsIbsubsJbsLbsKbodbhqbhqbsNbmqbsObmqbmqbmqbsPbsQbmqbrhbsMbpKbmqbpNbofbofbsRbsTbsSbsVbsUbsWbrobsXbebbqabrrboBboAboAboBbrubsYbebbsZbtebaubtfbaubaubtablkbthbtibcpbtjbtbbtlbtcbmUbtdbtgbtpbtqbtqbtkbtsbtmbmUbtobtnbtrbtwbjKbjMdsfbjKbtxbjRbjRbjRbjRbqnbicbttbeCblCblDblAbeCblCblDblAbeCbtubicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaZaXsaXsaVXaXzaYZaXsaYZbbaaYZaXsaYZaXzaYVaYTaSdaTobaJaVcaVcbaKaUtbaLaUtaVcaTuaTuaTuaTubaSbaPbbhbbbaTubbjbbcbblaXQaXQbbmaXQbbebbdbbpaVjaaaaUEaUEbbqbbfbbqaUEaUEaaaaSuaSzaSAbbibbgbbkaZAbbnaSAaPiaRwaSBaSCbboaWDaULaSCaUIaSCaULaWGbbxaRwaRwaRwbbrbbzbbtbbsbbCbbDatGatGbbEbbFbbvbbuaUQbbwaVEaUQbbJaUQbbKaUQbbLaQrbbBbbAbbHbbGbbUbbIaQtbbNbbQbbPbbRbbQbbQbbSbbQbbIbbTbbIaXfbbUbbIbbVbbXbbWbbZbbYbcbbcabcdbccbcfbceaXibcmbcgbcobcpbchbcibcsbcjbaybcubckbazbcwbcxbclbczbaFbcAbcBbcCbcDbcnbcFaYPbcqbcHbcHbcIbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaYDbaWbcJbcKbcLbaYaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXpbcrbcNaYNaXzaYZaXsaYZaXsaYZaXsaYZaXzaYVaYTaSdaTobcvbctbcEbcybcSbcSaSfbcGbcMbcVbcWbcXbcPbcOaVebcQaTubdbbcRbddbdebcTbdgbdhbdibcUbdkaVjaaaaabaaabcYbcZbcYaaaaabaaaaSuaSzaSAbdcbdabdjbdfbdraSAaPiaRwbdmbdlaTCbdnbdoaTDbdpaTDbdsbdqbdzaRwbdubdtbdvbdDbdxbdwbdybdHaaaaaabbEbdIbdBbdAaUQbdCbdEaVEaVEbdNaVEaVEaVEbdOaUSbdFaUSbdQaUSaUSaQuaUSbdTbdUbdKbdJbdMbdLbdTbdPbeabebbecbebbebbebbebbdSbeebebbefbdVbdWbeibebbdXaGYbaubekbcpbelbembenbeobepbeqberbdYbazbetbeubevbewbdZbcAbcBbcCbcDbaEbedaYPbegbcHbcHbcIbaTbaTbaTbaTbaUbaVaaaaaaaaaaaaaaaaaaaYUbeAbeBbeCbeBbeDaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabehbejaVSaXmaXzaXsbeGbesaXsaXsbexbeGaXzaXpbeyaSdaTobeEbezbeMbeFbeMbeMbeMbeMbeMbeHaSfaTubePbeQbePaTuaTubeRbeIbeRaViaViaViaVibeRbeJbeUaVjbeLbeKbeKbeNbeObeNbeKbeKbeSaSubfaaSAbeTaSAbeWbeVbfeaSAbffaRwaRwaRwaRwbfgbfhbeXbeYbeXbfhbfgaRwaRwbeZbdDbdDbdDbdDbfbbfdbfnbfobfpbbEbfqbdBbfiaUQaUQaUQaUQaUQaUQaUQaUSaUSbdObfsbftbfkbfjaQvbflaSQbfrbdTbfAbfvbfCbfwbfEbdTbfxbfybfHbfzbfHbfJbfKbfMbfBbfFbfDbfIbfGbfNbfLbebbfObfQbfPbfSbfRbelbfYbfZbeobfTbazbfVbfUbfXbfWbgfbczbczbazbazbcBbcCbcDbcnbggaYPbgabgibgbbgkbgcbgmbaTbaTbgdbaVaaaaaaaaaaaaaaaaYDbaWbgobeCbeCbeCbgpbaYaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabehaVSaVXaVSaVSaVYaVZaVSaVSaVXbejbgeaLdbghbeEaSdbgsbgsbgtbgsbgjaMsbgvbglaSfbgnbfcbgzbgzbgqbgrbgzbgubgzbgzbgzbgDbgzbgzbgwbgFbgAbgCbgBbgEbgCbgHbgCbgCbgCbgCbgIbgMbgJbgzbgzbgKbfcbgQbgxbgSbgLbgObgNbgTbgPbgPbgPbgPbgPbgPbgPbgVbgUbhabhbbhcbhdbhebgWbgYbgXbdDbdDbhfbgZbhgbgZbhgbhhbhjbhibhkbhpbhqaUSbhrbhlbhtbhmbhvbhvaWMbhxaWNbhzbdTbhobhubhsbhsbhwbdTbhAbhCbhBbhEbhDbhDbhFbhHbhGbfMbhIbhJbhPbhQbhRbebbdXaTgbaubhKbhTbhTbhUbhVbhTbhLbazbhXbhNbazbhObhSbczbhWbazbhZbhYbiabcDaYPaYPaYPbibbigbihbiibigbigbigbigaYSafXajcaaaaaaaaaaaabicbikbilbeCbeCbimbinbeCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbgyaSdaSdaSdaSdaSdaSdbgyaSdaUZaLdbidbieaSdbirbisbitbitbiuaMsbivbglbifbgGbfcbijbipbiobiqbiqbixbiwbiwbiwbizbiybiybiAbiCbiBbiqbiqbiDbiybiFbiEbiGbiGbiIbiHbiKbiJbiJbiJbiLbfcbgQbgxbgSbgSbgSbgSbiMbgSbgSbgSbgSbgSbgSbiNbiUbiVbiWbiXbiObiZbiQbiPbiRbiVbiVbiVbjdbjebjebjebiSbhqbhqbhqbiYbiTbhqaUSbjabjjbhvbhvbjkbhvaWTbjmaWNbjcbdTbjobjfbjqbjhbjgbdTbjtbjibjvbjwbjxbjybebbebbjzbebbebbebbjBbjlbjBbebbdXaGYbaubjDbcpbcpbcpbjEbcpbjFbazbazbazbazbazbazbazbjnbazbcDbcDbcCbcDbjpbjIaYPbjrbjNbjLblwbgRbjubjsbjAbjRaaaaaaaaaaaaaYDbjCbjGbjCbjCbjCbjHbjCbjJbjCbjGbjCaYHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabbjQaLdaSdaOQaSdbjTbjSbjVbjUaSdaOQaSdaSdaLdbjWbeEaSdbjXbkcbitbitbiuaMsbkdbglaSfbgGbfcbgzbjZbjYbkgbkgbkabkibkbbkgbkebkgbkfbkgbkhbjPbkgbkgbkgbkgbkgbkjbkkbkgbklbkrbknbkmbgzbgzbkpbkobksbkqbkubktbkubkvbkwbkvbkvbkvbkvbkvbkvbkybkAbkzbkzbkzbkzbkBbkzbkCbkDbkzbkzbkEbkGbkFbkFbkFbkFbkFbkFbkFbkHbhqbhqaUSbkMbkNbkObkPbkPbkIaYdbjmaWNbkKbdTbdTbdTbdTbdTbkLbdTbkQbkRbkWbkSbfHbkYbebbhMbkTbkUblcbkVbleblfblgbebbdXaQLbaublhblibcpbljblkbcpbllbllbaubkXblabkZaYPbldblnblmbcDbcDblpbloaYPblqaYPblrbjKbjLblxblsbltbjKblzbjRaaaaaaaaaaaabicbmXblubmYbmYblDbeCblCblDblAblvblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaMsaSdbgyaSdaToaSfaSfaTpaSdbgyaSdblyblEblBblFaSdblIblIbgtblIbgjaMsblJbglaSfaMsblKblKblGblMblMblMblMblMblMbkxblHblMblMblMblMblMblMblPblQblRblRblLblRblTblNblVblTblTblWblXblOblKblZblZblSblSblSbmbbmbbmbbmbbmbbmbbmbbmbbmcblUblUblYblUbmabmabmabmabmebmdbmabmcbmibmibmibmibmibmibmibmibmfbmfbmfaUSbmkbmlbmmbmmbmmbmmbmnbmoaYebmqbmrbmgbmjbmhbmtbmsbdTbdTbmubmybmzbmybmybebbmAbmvbmwbmwbmwbmwbmBbmxbebbmCbmHbaubmIbcpbljbljblkbljbcpbmDbaubmEbmGbmFaYPbcDbmJbmObmPbmPbmKbmRbmLbmTbmUbmMbmWboObmNbjMbjKbjKblzbjRbjRbjRbjRbjRbicbBTbDzbDzbDzbmQbeCblCbnbblAbeCbncbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbmSaSfbmVbndbnabnibnebnfbnibnhbngbnibnibnkbnjbnmbnlbnnbnnbnnbnobnnbnpbnuaMsbnvbnwbnqblMbnybnrbnAbnBbnCbnDbnsbnFbnGbnHbnIbnJblMbnKbnLblRbnxbntbnzblTbnEbnQbnMblTbnSbnTbnNbnSbnSbnSbnObgSbnPbmbaaaaaaaaaaaaaaaaaaaaabmcbnUbnRbnWbnVbnYbnXboaaYfbocaQsbohbmcaaaaaaaaaaaaaaaaaaaaabmibodbhqboeaUSbokbmlbmqbmqbmqbmqbmqbolbombmqbmqbmqbogbofbofboibonbojbopbooborboqbosbebboubotboBboAboAboBbowbovbebbdXaGYbauboEboFbcpbljblkbcpboGboGbaubauboybauaYPbozblnbloboJboJboCbloaYPaYPaYPboDbjKbEFboHbjMbjKbjKbmZbAMboIbrMbrMboIboKbDzbDzbGJbGJbnbbeCblCbnbblAbeCblCaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdboLboPboLboLboLboLboLboLboPboLboLboQaSfboRbgGboUaSfboSaSfboTboXboYboVboWaMsbnwbnwboZblMbpabnDbnDbnDbnDbnDbnsbpdbnDbnDbnDbpeblMbnKbpfblRbpbbphbpiblTbpjbpcbpgblTbplbpkbpmbppbpnbnTbnObgSbnPbmbaaaaaaaaaaaabmcbmcbmcbmcbprbpobptbpqbpubpsbpwaYgbpzbpxbpBbmcbmcbmcbmcaaaaaaaaaaaabmibodbhqbpAbpybpDbpCbpFbpEbpDbpGbpIbpHbpJbpMbpKbmqbpNbpLbofbpObpPbofbpRbpQbpTbpSbofbpWbpVbpUboBboAboAboBbpXbqabebbdXaTgbaubmIbcpbljbljblkbljbcpbcpbpYbqcbcpbqdaYPbpZbqbbqgboJboJbqebqgbqfaYPbqibqhbjKbjRbjRbqjbqkbjRbjRbjRbqnbjRbjRbjRbqpbjCbjCbjCbjCbqobeCblCbqoblAbeCblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLdaLdaSdaSdaSdaSdaSdaSdaSdaSdaSdaLdaMsbgGbqqbqrbqrbqrbqrbqrbqrbqsbqrbqrbqraMsbnwbnKbqtblMbqubnDbnDbqvbqwbqxbqybqvbnDbnDbnDbqzblMbnKbnLblRbqAbqBbqCblTbqDbqEbqFblTbqGbqHbqIbqJbqKbnTbqLbqMbnPbmbbmbbqNbmcbmcbmcbqObqQbqPbqRbqSbqSbqTbqUbqSbqVaYibqWbqXbqYbqZbrbbrabmcbmcbmcbqNbmibmibodbhqbhqaUSbrdbrcbpMbrebmqbrfbrgbmqbrhbribpKbmqbogbofbofbrjbrlbrkbrnbrmbrpbrobofbrqbpVbrrboBboAboAbrsbrubrtbebbdXaGYbaubrvbrwbrxbljblkbrybcpbcpbrzbcpbrAbrBaYPbrCbrEbrDboJboJbrFbrDbrGaYPbrHbqhbjKbjObGIbjMbjKbjKbrIbrJboIbrLbrMboIbrKbeCbeCbeCbeCbeCbeCbeCbeCbeCbeCblCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrNbrObrObrQbrObrObrObrRbrObrObrPaabaSdaUkaSgbrSbqrbrUbrVbrWbrXbrYbrTbsabrZbqrbscbsdbsbbseblMbsfbnDbnDbqvbqxbsgbshbqvbnDbnDbsjbskblMbnKbnLblRblRbslblRblTbsibsnbsoblTbsmbqJbsqbqJbsrbnTbnObssbnPbgPbgPbspbsubstbmcbsvbptbswbqSbqSbsybsxbsAbszbsAaYjbsDbsCbsFbsEbsHbsGbmcbsIbsubsJbsLbsKbodbhqbhqbsNbmqbsObmqbmqbmqbsPbsQbmqbrhbsMbpKbmqbpNbofbofbsRbsTbsSbsVbsUbsWbrobsXbebbqabrrboBboAboAboBbrubsYbebbsZbtebaubtfbaubaubtablkbthbtibcpbtjbtbbtlbtcbmUbtdbtgbtpbtqbtqbtkbtsbtmbmUbtobtnbtrbtwbjKbjMdsfbjKbtxbjRbjRbjRbjRbqnbicbttbeCblCblDblAbeCblCblDblAbeCbtubicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrNbtvbtybtCbtDbtDbtzbtDbtDbtDbtzbrQaSdaSdaSdaToboRbqrbrUbtFbtGbrUbtBbtAbtHbtEbqrbtLbtMbtIblQblMbtObtPbtKbtJbtQbtNbtSbtRbtRbtRbtUbtTblMbnKbsdbtYbtZbtVbubblTblTblTblTblTbucbudbtWbufbugbnTbnObssbgSbgSbgSbtXbuebuabuibuhbujbqSbunbukbumbulbupbuoburbuqbutbusbuubuhbuwbuvbuybuxbuAbuzbuEbuEbuBbhqbuCaUSbmqbuDbuIbpKbmqbuFbuGbmqbuHbuMbpKbmqbogbofbofbofboibofbuJbofbsWbrobuKbebbuPbrrboBboAboAboBbrubuLbebbuNbuQbuObuSbuRbuUbuTbuWbuVbuVbuVbuVbuVbuVbuXbuZbuYboJboJboJboJboJboJbvdbvabvcbvbbjKbjKbjKbvebltbjKbvgbqnbwDbvhcUBbjRblDblAbeCblCbnbblAbeCblCbnbblAbeCblCblDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabvibvjbvjbvjbvjbvjbvjbvjbvjbvjbvjbvfbvlaOQbvlaSfboRbqrbvmbrUbvnbvnbvnbvkbrUbvobqrbvqbvrbtIbvsbvsbvsbvsbvpbvsbvtbnDbvvbvubvwbvwbvybvxblMbvzbvBbvAbvDbvCbvFbvGbvHbvIbvHbvJbvJbvJbvJbvJbvKbvEbnObvLbvNbvMbvPbvObvRbvQbvTbvSbuobvUbvVbvXbvXbvXbvXbvWbvXbvZbwabwbbvYbvUbwdbwcbmcbwebwgbwfbwibwhbwjbhqbhqbsNbmqbwkbmqbmqbmqaZVbmqbmqbwmbwmbmqbmqbwlbofbofbwnbwobofbofbofbwqbwpbwrbebbqabrrboBboBboBboBbrubwsbebbwtbwvbwvbwwbwvbwubljbljbljbljbwybljbljbljbwzbvaboJboJboJboJboJboJboJbvdbvabvcbvbbjKboMboMboNboMbjKbwxbjRbwBbwAbwCbjRbnbblAbeCblCbnbblAbeCblCbnbblAbeCblCbnbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwFbwEbwGbwHbwIbwIbwJbwIbwIbwIbwJbrQaSdaSdaSdbwKblFbwLbrUbwMbvnbvnbvnbvkbwMbrUbqrbwNbwObtIbvsbwPbwQbwRbwSbvsbwUbwTbwVblMbwWbwXbwZbwYblMbnKbxabxbbxbbxcbxbbxbbxbbxbbxebxdbxdbxdbxfbxdbxgbxhbxibxjbxkbxlbxlbxlbxlbxlbxmbxmbxnbxmbvXbvXbxobxpbxqbxrbxtbxsbxobxubvXbxvbxwbxvbxvbxvbxvbxvbxvbxvbwjbhqbhqaUSbxxbmqbxybxzbmqbxAbmqbxBbxDbxCbmqbxEbdTbxFbxGbdTbdTbxHbxJbxIbxJbdTbdTbebblbbxLbxMbxMbxMbxMbxLbxNbebbxObwvbwvbwwbxPbaubxQbxRbxSbxTbxUbxVbxWbxXbxYaYPbxZbcDbyaboJboJbyabcDbybaYPbycbvbbjKbqlbqlbqmbqlbjKbvgbqnbwDbvhcUBbjRbqoblAbeCblCbqoblAbeCblCbqoblAbeCblCbqoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwFbrObrObrQbrObrObrObrRbrObrObydaabaSdbyebndbyfbqrbtFbtFbtFbrUbyhbygbyjbyibqrbykbylbtIbvsbymbvsbynbyobvsbyqbypbyrblMbwWbwXbwZbskblMbnKbxabxbbytbysbyubyvbywbxbbyybyxbyAbyzbyBbyBbyBbyCbyEbyDbyFbxlbyGbyHbyIbyJbyLbyKbyMbyNbvXbyObxqbxqbyPbyQbyPbxqbxqbyRbvXbySbyUbyTbyWbyVbyYbyXbyZbxvbzabzbbzbbzcaUSaUSaUSaUSbzdbsNbzdbzeaUSbdRaUSaUSbdTbdTbdTbdTbzgbzfbzfbzfbzfbzhbzibebbjBbzjbjBbzkbzkbjBbzjbjBbebbxObwvbwvbzlbxPbaubaubaubaubaubtfbaubaubaubauaYPaYOaYQaYQaYQaYQaYQaYQaYPaYPbznbzmbzobxKbjKbjMbjKbjKbzpbjRbjRbjRbjRbqnbicbzqbeCbeCbeCbeCbeCbeCbeCbeCbeCbeCbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjQaLdaSdaSdaSdaMsaMsaMsaMsaMsaMsbzrbzsbqrbqrbqrbqrbqrbqrbztbqrbqrbqrbnKbnKbzwbvsbzubzvbynbzxbvsbzzbzybzAblMbwWbwXbwZbnDblMbnKbxabxbbzDbzBbzCbyvbzCbxbbyybzGbzEbzFbzIbzHbzKbzJbzMbzLbyFbzRbzNbzObzPbzQbzQbzPbzUbzSbvXbzTbxqbxqbyPbzWbyPbxqbxqbzVbwbbzXbAbbzYbzZbAabAdbzYbAcbxvbAlbAebAfbAgbAhbAibAjbAkbAkbAkbAkbAkbAkbAmbAobAnbAkbAkbAqbAkbAkbAkbAkbAkbAkbAkbAkbApbAsbArbArbArbArbArbArbAtbAibAubAvbAvbAxbAwbAybAwbAzbAwbABbAAbACbAwbAFbADbAEbAHbAGbAGbAGbAGbAGbAGbAGbAIbALbAJbAJbAKbAJbBObjKbjKbrIbAMboIbANbrMboIbAObeCbeCbeCbeCbAPbeCbAPbeCbeCbeCbeCaYUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAQbARbARbARbARbASbASbARbARbATaaaaabaSdaUkaSgbAVbAUbAXbAWbAWbAWbAWbAYbAZbBablQbnwbBcbBbbvsbvsbvsbBdbyobvsblMblMblMblMbwWbBebBgbBfblMbBhbBibxbbBjbBkbyvbzCbBlbxbbyybBmbzEbzFbBnbBobBpbzJbBqbzLbyFbzRbBrbBsbBtbBubBvbBwbzUbBxbvXbBybyPbxqbBAbBzbBAbxqbyPbBBbxubBCbzYbzYbzZbBDbAdbzYbBEbxvbBFbAfbAfbAgbAhbAibAkbAkbAkbAkbAkbAkbAkbBGbAkbAkbAkbAkbAkbAkbBHbBIbBIbBIbBIbBIbBIbBIbBIbBIbBIbBIbBIbBIbBIbBJbBKbBLbAGbAGbBMbwvbwvbwvbwvbwvbwwbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbBNbwvbDobBPbjKbjKbBQbjKbjKbjKbjKbBUbjRbqnbjRbjRbjRbqpbjCbBWbBVbjCbBXaYUbBXaYUbBYbBRbBSbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbCcbBZbCebCbbCbbClbCibARbATaSdaSdaSdaTobCnbCfbCgbCfbCfbCfbCfbChbCtbCjblQblQbCkbCwbvsbwPbCmbCxbzxbvsbCobCpbCoblMblMblMblMbCqblMbCrbCsbxbbCybCubzCbCvbCzbxbbyybzJbCBbzFbBnbBnbCEbzJbCFbzLbyFbzRbCAbBsbBtbCGbCCbBwbzUbCDbvXbCHbCIbxqbCKbCJbCLbxqbCRbCNbCSbCMbCTbCObCPbCQbCUbzYbCVbxvbCYbCXbAfbAgbAhbAibAkbCZbAkbAkbAkbAkbCWbDbbDbbDbbDbbDcbAkbAkbAkbAkbDdbAkbCZbDabAkbDebDgbDfbAkbDhbDibDibDlbDjbDnbDmbwvbwvbwvbwvbwvbwvbwvbDkbDpbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbDrbDqbDqbDsbDubDtbDxbDvbDvbDybDAbEHbmZbAMboIbrMbrMboIbDBdsldsldsldsnbicaaabicbDDbDwbDwbDFbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbDGbCbbCbbCbbCbbCbbCbbCbbDHbDCaOQbDCaSfbDIbCfbDEbDJbDLbDKbDMbChbDObDNbDQbDQbDWbDVbvsbvsbvsbynbDYbymblQblQblQblQbDPbnKbnKbCsbnKbCrbCsbxbbDZbDRbDSbDTbyvbxbbDUbzJbEbbzFbBnbBnbEfbDXbEjbzLbElbxlbEabEmbzPbzPbzPbzPbzUbEcbvXbEdbEebvXbvXbvXbvXbvXbvXbvXbxubxvbErbEgbEhbEibEsbEkbEvbxvbEwbEnbEnbEobEobEobEobEobEobEobEpbEpbEqbEybEzbEzbEybEqbEpbEpbEtbEtbEtbEtbEtbEtbEubEubEBbEubEubEubEubEubEubECbExbEEbwvbwvbEIbEIbEAbEAbEAbEAbEAbEJbDqbDqbDrbDqbwvbDqbDqbDqbDqbEMbEDbEDbEDbEDbENbEFbEFbEGbEGbEGbEGbEGbEGbEGbjRbjRbjRbjRaYUdsqdsldslbEObicaaabicbEPbDwbDwbEQbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbEKbELbELbCbbELbELbELbARbERaSdaSdaSdaTobEVbCfbEYbEXbEXbEXbFcbChbnKbFfbESbETbEUbFgbvsbwPbEWbynbFhbymbFibEZbFabFbbFlbFdbFdbFebFdbFnbFobxbbFqbFpbFjbFkbFrbFmbFsbyBbFubFtbBnboxbFybFxbEjbzLbFzbxlbFAbFvbFwbFFbFIbFGbFMbxmbxmbFBbFCbFDbFEbFNbFEbFPbFCaaabFHbxvbFRbFJbFKbFLbEsbzYbFSbxvbFUbFObFWbEobFQbFXbFYbFTbFZbFVbGcbGbbGebGdbGabGabGdbGfbGhbGgbEtbGibGkbGjbGlbEtbGnbGmbGpbGobGtbGsbGsbGvbEubGxbGqbGrbGybGrbGzbGzbEAbGubGAbGwbEAbGBbGEbGBbEAbGFbDqbEMbEDbGKbGLbGKbEDbGCbGDbEDbGNbGMbGGbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicdsudswdsvdsvbicaaabicbGObDwbGObDwbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGPbARbARbARbARbARbARbARbARbERaaaaaaaSdbGRbndbHabCfbHdbCfbHebEXbHfbGQbChbHgbGSbGTbGUbFgbvsbvsbvsbvsbvsbvsbGVbGWbGXbGYbGZbxbbxbbxbbxbbxbbxbbxbbHhbxbbxbbxbbHbbxbbHcbHibHjbBnbBnbBnbHnbDXbHobzLbHpbxlbHqbFvbxlbxlbxlbxmbHrbxmbHkbHlbHmbHubHBbHzbHDbHCbHsbHtbHFbxvbHvbzYbHwbHxbEsbHybzYbxvbHHbHAbHIbEobHLbHJbHEbHMbHGbHNbHObGabGabGabGabGabGabGabGabHPbHKbHRbHVbHTbHWbEtbHYbHQbHZbHSbIbbHUbHQbIbbEubIebGqbIfbHXbIgbIhbIhbIabIjbIcbIdbImbIlbIqbInbEAbIibIrbIkbEDbItbIwbIvbIobIpbIybEDbIzbGGbIsbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabIAbjJbIubIubIubICaaabIEbIxbIxbIxbjJbIFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjQaLdaSdaSdaSdaSdaSdaSdaSdaSdaSdaToaSfbIGbCfbIHbIBbIIbIDbIDbIJbILbIKbIMbIMbIObINbDQbDQbDQbDQbDQbDQbIQbIPbIPbIRbITbxbbIVbIUbIYbIXbISbIZbJfbJbbxbbIWbJibyBbyCbDXbHjbBnbBnbJjbzJbzJbJmbJabJobJcbJdbJebJpbJgbJhbJsbJtbJkbJlbJubHsbJnbJvbJnbJvbJwbHsbHtbJqbJrbJybJxbJDbJzbJGbJEbJHbJrbJIbFObFObEobJAbJBbJCbJJbJKbEobHObGabGabGabGabGabGabGabJFbJLbJPbJNbJQbHRbJRbEtbJSbJMbJUbHSbIbbHUbJObJVbEubJWbJZbJXbJTbJTbKcbKabKgbKebJYbJYbJYbKhbJYbKkbKbbKnbKdbKobKfbKqbKrbKibKibKibKjbEDbKubGGbKlbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabIAbKmbKmbKmbIFaaabIAbKmbKmbKmbIFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbKybKxbKpaQZaQZaQZbndaSfaSfbCfbKCbCfbKDbKsbKtbKEbCfblQbKvbKvbKwbKFbKwbKwbKwbKFbKwblQblQbxbbxbbxbbKGbxbbKzbKzbKzbKzbKzbKzbJfbKAbKBbKHbzFbKIbKKbKJbKMbKLbKObKNbKQbKPbKSbKRbKVbKUbKXbKXbLabKZbKTbLbbLfbKWbLgbKYbFCbLhbHDbLibHBbLkbFCaaabLcbLdbLebLnbLdbLdbLdbLdbLpbxvbLqbFObLrbLjbLsbLlbLmbLtbLobEobLvbLubLxbLwbLzbLybLBbLAbGabLDbEtbLFbJQbLGbLHbEtbLJbLCbHZbHSbIbbHUbHQbIbbEubIebGqbLNbLEbLPbLSbLQbLIbLTbLKbLLbLMbLUbLObLVbEAbLXbLRbLYbEDbLZbMfbMabIpbLWbMgbEDbKubGGbMhbGHaaaaaaaaaaaaaabaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbMjbMibKpaSeaSebMbbMcaSebMdbCfbMebIBbMlbMkbMnbMmbCfaaaaabaabbMpbMobMobMobMobMobMraaaaaabKBbMtbMsbMubMqbKzbKzbKzbKzbKzbKzbMwbMvbMzbMybMDbMBbMxbDXbzJbzJbMFbMAbzJbzJbMJbMCbMLbMEbMMbMGbMGbMHbMGbMIbMNbMGbMKbKYbFCbMObFEbFEbFEbMPbFCaaabLcbLdbMRbMQbMVbMTbMWbMSbNbbMUbNcbFObNdbEobMXbMYbMZbNabNfbNebNjbNgbNlbNkbNhbNibNnbNmbNqbNpbNrbNobJQbNsbNtbEtbNvbNubNxbNwbNAbNybNCbGvbEubNKbNzbNLbNBbNBbNMbNDbNEbNFbNGbNHbNIbNJbNObNNbEAbNQbLRbNRbEDbNSbNPbNTbIpbIpbNUbEDbIzbGGbNWbGHaaaaaaaaaaaaaabbNXbNZbNVbNZbNVbNZbOaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbKpbKpbObaSdaSdbjQaLdaSdaSdbCfbOdbIBbIBbIBbCfbCfbCfaaaaaaaaabOebOcbOcbOfbOcbOcbOeaaaaaabKBbOgbKzbOibOhbOhbOhbOhbOhbOkbOjbOhbOlbOnbOmbOpbOobOrbOqbzJbOtbBnbOvbOsbDXbOwbOubOxbMEbMEbMGbOAbOybOCbOBbODbMGbFBbKYbFCbOEbOHbOFbOObOMbFCaaabOGbLdbOPbOIbOJbOKbOLbOKbOSbONbOXbFObOYbEobOQbOQbORbPabOTbOUbOVbOWbPcbPbbOZbOZbPebPdbPhbPfbEtbNobPkbPjbEtbEtbEubPgbPlbPibEubEubEubEubPrbPmbGqbPvbLEbLPbPxbNBbNEbPnbPobPobPpbIdbPqbPybPsbPtbIrbPubEDbPzbPwbIpbPHbPBbPJbEDbKubPAbGHbGHaaaaaaaaaaaaaabbPKbPCbPDbPEbPFbPGbPKaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIbPIbPIbPIbPNbPMbPIbPIbPIbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbOebPTbKBbKBbPUbPObPPbPQbPQbPQbPObKzbJfbKAbKzbKzbKBbPZbPSbQcbQdbPVbQebPXbBnbBnbPYbDXbOwbOubQhbQfbQbbQibQkbOzbQlbQgbQnbMGbQobQjbHmbQpbQqbQmbQsbQrbHsbHtbQtbLdbQvbQubQwbOKbQxbOKbQybONbQzbFObQAbEobQDbQBbQGbQEbQHbQCbQJbQIbQFbQFbQMbQKbQFbQFbQObQNbQPbQLbQRbQQbQTbQSbQWbQUbQZbQYbRdbQVbRebQXbRgbRfbGqbRabRbbRcbRjbRibIabRkbPobPobRlbRhbPqbRmbEAbRnbRnbRobEDbRpbRybRqbRzbIpbREbEDbKubRFbGHaaaaaaaaaaaaaaaaabbRrbRsbPDbPFbPDbRtbNVaabaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbRubRvbRwbRxbRGbRHbRAbRGbRBbRCbRDbPIbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbRJbRIbRKbRIbRSbRRbRTbRRbRRbRRbRRbRUbJfbKAbRLbxbbxbbRMbBnbzFbQdbRNbDXbRObRPbRPbRQbNYbRYbRXbRZbRVbRWbSbbSdbScbSabQgbSebMGbMKbKYbFCbSfbShbSgbSlbSkbFCaaabOGbSibSjbSibSibSibSibSibSmbSibSpbFObQAbEobSqbSnbSnbSobSrbOUbStbSsbSvbSubSxbSwbSybSvbSAbSzbSDbSBbSFbSCbSGbSGbSEbSHbSJbSIbSLbSKbSNbSMbSPbSObSRbSQbSQbSSbSUbSTbIabSWbIdbIdbSXbSVbPqbSYbTabSZbTfbTcbTbbTgbTdbTebTjbTebEDbEDbTkbPtbThbTibTibTibTibTibThbPKbPFbPDbPFbPFbPGbPKaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbCcbBZbCebCbbCbbClbCibARbATaSdaSdaSdaTobCnbCfbCgbCfbCfbCfbCfbChbCtbCjblQblQbCkbCwbvsbwPbCmbCxbzxbvsbCobCpbCoblMblMblMblMbCqblMbCrbCsbxbbCybCubzCbCvbCzbxbbyybzJbCBbzFbBnbBnbCEbzJbCFbzLbyFbzRbCAbBsbBtbCGbCCbBwbzUbCDbvXbCHbCIbxqbCKbCJbCLbxqbCRbCNbCSbCMbCTbCObCPbCQbCUbzYbCVbxvbCYbCXbAfbAgbAhbAibAkbCZbAkbAkbAkbAkbCWbDbbDbbDbbDbbDcbAkbAkbAkbAkbDdbAkbCZbDabAkbAkbDebDgbDfbDhbDibDibDlbDjbDnbDmbwvbwvbwvbwvbwvbwvbwvbDkbDpbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbwvbDrbDqbDqbDsbDubDtbDxbDvbDvbDybDAbEHbmZbAMboIbrMbrMboIbDBdsldsldsldsnbicaaabicbDDbDwbDwbDFbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbDGbCbbCbbCbbCbbCbbCbbCbbDHbDCaOQbDCaSfbDIbCfbDEbDJbDLbDKbDMbChbDObDNbDQbDQbDWbDVbvsbvsbvsbynbDYbymblQblQblQblQbDPbnKbnKbCsbnKbCrbCsbxbbDZbDRbDSbDTbyvbxbbDUbzJbEbbzFbBnbBnbEfbDXbEjbzLbElbxlbEabEmbzPbzPbzPbzPbzUbEcbvXbEdbEebvXbvXbvXbvXbvXbvXbvXbxubxvbErbEgbEhbEibEsbEkbEvbxvbEwbEnbEnbEobEobEobEobEobEobEobEpbEpbEqbEybEzbEzbEybEqbEpbEpbEtbEtbEtbEtbEtbEubEubEubEuaQwbEubEubPgbEubEubECbExbEEbwvbwvbEIbEIbEAbEAbEAbEAbEAbEJbDqbDqbDrbDqbwvbDqbDqbDqbDqbEMbEDbEDbEDbEDbENbEFbEFbEGbEGbEGbEGbEGbEGbEGbjRbjRbjRbjRaYUdsqdsldslbEObicaaabicbEPbDwbDwbEQbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCabCdbEKbELbELbCbbELbELbELbARbERaSdaSdaSdaTobEVbCfbEYbEXbEXbEXbFcbChbnKbFfbESbETbEUbFgbvsbwPbEWbynbFhbymbFibEZbFabFbbFlbFdbFdbFebFdbFnbFobxbbFqbFpbFjbFkbFrbFmbFsbyBbFubFtbBnboxbFybFxbEjbzLbFzbxlbFAbFvbFwbFFbFIbFGbFMbxmbxmbFBbFCbFDbFEbFNbFEbFPbFCaaabFHbxvbFRbFJbFKbFLbEsbzYbFSbxvbFUbFObFWbEobFQbFXbFYbFTbFZbFVbGcbGbbGebGdbGabGabGdbGfbGhbGgbEtbGiaQyaQxbEtaQAaRuaQDaRyaRvaRBaRAaRCbGvbEubGxbGqbGrbGybGrbGzbGzbEAbGubGAbGwbEAbGBbGEbGBbEAbGFbDqbEMbEDbGKbGLbGKbEDbGCbGDbEDbGNbGMbGGbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicdsudswdsvdsvbicaaabicbGObDwbGObDwbicaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGPbARbARbARbARbARbARbARbARbERaaaaaaaSdbGRbndbHabCfbHdbCfbHebEXbHfbGQbChbHgbGSbGTbGUbFgbvsbvsbvsbvsbvsbvsbGVbGWbGXbGYbGZbxbbxbbxbbxbbxbbxbbxbbHhbxbbxbbxbbHbbxbbHcbHibHjbBnbBnbBnbHnbDXbHobzLbHpbxlbHqbFvbxlbxlbxlbxmbHrbxmbHkbHlbHmbHubHBbHzbHDbHCbHsbHtbHFbxvbHvbzYbHwbHxbEsbHybzYbxvbHHbHAbHIbEobHLbHJbHEbHMbHGbHNbHObGabGabGabGabGabGabGabGabHPbHKbHRaRFaREbEtaRHaSFaROaSHaSGbIbbHUbHQbIbbEubIebGqbIfbHXbIgbIhbIhbIabIjbIcbIdbImbIlbIqbInbEAbIibIrbIkbEDbItbIwbIvbIobIpbIybEDbIzbGGbIsbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabIAbjJbIubIubIubICaaabIEbIxbIxbIxbjJbIFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjQaLdaSdaSdaSdaSdaSdaSdaSdaSdaSdaToaSfbIGbCfbIHbIBbIIbIDbIDbIJbILbIKbIMbIMbIObINbDQbDQbDQbDQbDQbDQbIQbIPbIPbIRbITbxbbIVbIUbIYbIXbISbIZbJfbJbbxbbIWbJibyBbyCbDXbHjbBnbBnbJjbzJbzJbJmbJabJobJcbJdbJebJpbJgbJhbJsbJtbJkbJlbJubHsbJnbJvbJnbJvbJwbHsbHtbJqbJrbJybJxbJDbJzbJGbJEbJHbJrbJIbFObFObEobJAbJBbJCbJJbJKbEobHObGabGabGabGabGabGabGabJFbJLbJPbHRaSIbHRaSKbHQbHQaYkbHQaSVbIbbHUbHQbIbbEubJWbJZbJXbJTbJTbKcbKabKgbKebJYbJYbJYbKhbJYbKkbKbbKnbKdbKobKfbKqbKrbKibKibKibKjbEDbKubGGbKlbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabIAbKmbKmbKmbIFaaabIAbKmbKmbKmbIFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbKybKxbKpaQZaQZaQZbndaSfaSfbCfbKCbCfbKDbKsbKtbKEbCfblQbKvbKvbKwbKFbKwbKwbKwbKFbKwblQblQbxbbxbbxbbKGbxbbKzbKzbKzbKzbKzbKzbJfbKAbKBbKHbzFbKIbKKbKJbKMbKLbKObKNbKQbKPbKSbKRbKVbKUbKXbKXbLabKZbKTbLbbLfbKWbLgbKYbFCbLhbHDbLibHBbLkbFCaaabLcbLdbLebLnbLdbLdbLdbLdbLpbxvbLqbFObLrbLjbLsbLlbLmbLtbLobEobLvbLubLxbLwbLzbLybLBbLAbGabLDbEtaTHaTLaTKaTNaTMbHQaTObHQaSVbIbbHUbHQbIbbEubIebGqbLNbLEbLPbLSbLQbLIbLTbLKbLLbLMbLUbLObLVbEAbLXbLRbLYbEDbLZbMfbMabIpbLWbMgbEDbKubGGbMhbGHaaaaaaaaaaaaaabaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbMjbMibKpaSeaSebMbbMcaSebMdbCfbMebIBbMlbMkbMnbMmbCfaaaaabaabbMpbMobMobMobMobMobMraaaaaabKBbMtbMsbMubMqbKzbKzbKzbKzbKzbKzbMwbMvbMzbMybMDbMBbMxbDXbzJbzJbMFbMAbzJbzJbMJbMCbMLbMEbMMbMGbMGbMHbMGbMIbMNbMGbMKbKYbFCbMObFEbFEbFEbMPbFCaaabLcbLdbMRbMQbMVbMTbMWbMSbNbbMUbNcbFObNdbEobMXbMYbMZbNabNfbNebNjbNgbNlbNkbNhbNibNnbNmbNqbNpbNrbLFaTQaTPbEtaTRaTTaTSaTUaSVbNAaTVaTWbGvbEubNKbNzbNLbNBbNBbNMbNDbNEbNFbNGbNHbNIbNJbNObNNbEAbNQbLRbNRbEDbNSbNPbNTbIpbIpbNUbEDbIzbGGbNWbGHaaaaaaaaaaaaaabbNXbNZbNVbNZbNVbNZbOaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdbKpbKpbObaSdaSdbjQaLdaSdaSdbCfbOdbIBbIBbIBbCfbCfbCfaaaaaaaaabOebOcbOcbOfbOcbOcbOeaaaaaabKBbOgbKzbOibOhbOhbOhbOhbOhbOkbOjbOhbOlbOnbOmbOpbOobOrbOqbzJbOtbBnbOvbOsbDXbOwbOubOxbMEbMEbMGbOAbOybOCbOBbODbMGbFBbKYbFCbOEbOHbOFbOObOMbFCaaabOGbLdbOPbOIbOJbOKbOLbOKbOSbONbOXbFObOYbEobOQbOQbORbPabOTbOUbOVbOWbPcbPbbOZbOZbPebPdbPhbPfbEtbNoaUOaTYbEtbEubPgbEubEuaUPbEubEubEubEubPrbPmbGqbPvbLEbLPbPxbNBbNEbPnbPobPobPpbIdbPqbPybPsbPtbIrbPubEDbPzbPwbIpbPHbPBbPJbEDbKubPAbGHbGHaaaaaaaaaaaaaabbPKbPCbPDbPEbPFbPGbPKaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIbPIbPIbPIbPNbPMbPIbPIbPIbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbOebPTbKBbKBbPUbPObPPbPQbPQbPQbPObKzbJfbKAbKzbKzbKBbPZbPSbQcbQdbPVbQebPXbBnbBnbPYbDXbOwbOubQhbQfbQbbQibQkbOzbQlbQgbQnbMGbQobQjbHmbQpbQqbQmbQsbQrbHsbHtbQtbLdbQvbQubQwbOKbQxbOKbQybONbQzbFObQAbEobQDbQBbQGbQEbQHbQCbQJbQIbQFbQFbQMbQKbQFbQFbQObQNbQPbQLaVyaVxbQTbQSaWIaVIaYmaYlaWObQVbRebQXbRgbRfbGqbRabRbbRcbRjbRibIabRkbPobPobRlbRhbPqbRmbEAbRnbRnbRobEDbRpbRybRqbRzbIpbREbEDbKubRFbGHaaaaaaaaaaaaaaaaabbRrbRsbPDbPFbPDbRtbNVaabaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbRubRvbRwbRxbRGbRHbRAbRGbRBbRCbRDbPIbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbRJbRIbRKbRIbRSbRRbRTbRRbRRbRRbRRbRUbJfbKAbRLbxbbxbbRMbBnbzFbQdbRNbDXbRObRPbRPbRQbNYbRYbRXbRZbRVbRWbSbbSdbScbSabQgbSebMGbMKbKYbFCbSfbShbSgbSlbSkbFCaaabOGbSibSjbSibSibSibSibSibSmbSibSpbFObQAbEobSqbSnbSnbSobSrbOUbStbSsbSvbSubSxbSwbSybSvbSAbSzbSDbSBaWSaWRbSGbSGbSEbSHbSJbSIbSLbSKbSNbSMbSPbSObSRbSQbSQbSSbSUbSTbIabSWbIdbIdbSXbSVbPqbSYbTabSZbTfbTcbTbbTgbTdbTebTjbTebEDbEDbTkbPtbThbTibTibTibTibTibThbPKbPFbPDbPFbPFbPGbPKaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIbRAbRAbRAbTlbRGbTnbTnbRGbTobRAbRAbTpbWLbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbTtbTrbTqbTrbTubKzbPPbPQbPQbPQbKzbKzbJfbKAbTsbTxbxbbTAbBnbTBbQdbTvbDXbTwbBnbBobBnbPWbOwbTybTzbRVbRWbTCbTEbTDbTKbTFbTLbTGbTHbTIbTJbTJbTNbTMbTPbFCbFCaaabOGbSibTQbTObTSbTRbTVbTTbTWbTUbTXbFObQAbNebTZbTYbUbbUabUcbOUbUebUdbUibUhbUfbUgbUkbUjbUmbUlbUobUnbUqbUpbUsbUrbUubUtbUybUvbUDbQVbUwbQXbUxbUGbGrbUzbUAbUBbUCbUCbIabUIbUEbUFbIabUJbPqbUHbIabUKbUMbULbUObUNbUQbUPbUSbURbUUbUTbUWbUVbUYbUXbUXbUZbVbbVabQabVcbNZbNVbVdbNVbNZbVjaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIbVebVfbVgbVhbVibRGbVkbRAbVlbRAbRAbRAbRAbRAbTlbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebVmbOcbOcbOcbVnbOebPTbKBbKBbVobKzbPPbKzbKzbKzbKzbKzbJfbKAbTsbVpbxbbVrbBnbVqbVsbBnbVwbzEbBnbBnbVtbDXbOwbTybTzbRVbRWbMGbVubVvbVybVxbVzbMHbVBbVAbVDbVCbHsbVEbVFbHsbHtbHtbVGbSibVIbVHbVKbVJbVLbVLbVNbVMbVObFObVPbEobOUbVQbOQbVSbVRbOUbUebVUbVTbVVbVXbVWbVYbVTbUebVZbWebWabWbbWabWcbWabWdbWdbWhbWfbWgbWgbWgbWmbWgbWgbWibWibWjbWkbWjbWjbIabIabIabIabIabWlbWnbLIbIabWobWrbWpbWqbWqbWvbWsbWtbWubWxbWwbWzbWybWBbWAbWAbWCbWEbWDbThbQabQabQabWFbThaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWObWGbRAbRAbWHbWHbWHbRGbRAbRAbRGbWIbWJbWKbRAbWMbWNbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbWPbTrbTqbTrbPUbWQbWRbKzbKzbKzbWQbKzbJfbKAbTsbWSbxbbWWbBnbzFbQdbBnbzJbWTbBnbBnbWUbDXbOwbTybWVbRVbWXbMGbXbbWYbWZbXabXdbMHbXcbXebXgbXfbXibXhbXjbFCaaaaaaaaabSibXpbXkbXlbXlbXmbXnbXobSibXrbXqbQAbXsbXubXtbXwbXvbXybXxbXAbUdbXzbXBbXDbXCbXEbXzbUebVZbXIbXFbXGbXHbXKbXJbWdbXMbXLbXObXNbXPbXRbXQbXTbXSbXVbXUbUUbXWbWqbWqbXYbXXbWqbXZbYbbYabYdbYcbWqbYebYgbYfbYibYhbYlbYjbYkbYjbYjbYjbTkbPtbThbTibTibThbYnbYmbYpbYobYrbYqbYsbQaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYubWGbRAbRAbRAbRAbRAbYtbRAbRAbRGbPIbPIbPIbPIbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbYxbYwbYybYwbYAbYzbYBbYBbYBbYBbYBbYCbYEbYDbTsbYFbxbbYGbYIbYHbYNbYJbYKbYLbYLbYLbYMbYMbYObTybYRbYQbRWbMGbYTbYSbYVbVvbYWbMHbYUbYXbZdbTJbZebQmbYYbFCaaaaaaaaabSibYZbZabZbbZcbXmbXnbXobSibZgbZfbZibZhbZkbZjbZmbZlbZobZnbZrbZqbVTbVTbZpbZvbVTbVTbUebVZbZwbZsbZtbZubZybZxbWdbZAbZBbZzbZDbZCbZFbZEbZEbZGbZIbZHbZKbZJbUNbUNbZLbUNbZMbUNbZNbUNbZPbZObZObZQbZSbZRbZUbZTbZXbZVbZYbZWcabbYjcacbZZaaaaaaaaabThcaabVbcadbYobQacajcalbThaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIcafcagcahcaibRAbRGbRAbRAbRGbRAcancakcaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbOebPTbKBbKBbxbbxbbKBbKBbKBbKBbKBbxbbxbbKBbKBbKBbxbcamcamcamcascambYMcaocapcaqcatbYMbOwbTycawbMEbMEbMGbMGbMGbMGbMGbMNbMHbTJbTIcaubTJcavcaxbFCbFCbFCbFCbFCbSibSjbSibSibSibSibSibSibSicaybFOcaBcazcaAcaCcaDcaAcaAcaEcaGcaFcaIcaHcaKcaJcaMcaLbXAcaNcaPcaOcaRcaQcaTcaScaVcaUcaXcaWcaZcaYcbbcbacbgcbcbWgbWicbdcbecbdcbfcbicbfcbfcbfcbhcblcbjcbjcbkcbmcbocbnbZUcbpcbrcbqcbtcbscbubYjcacbZZaaaaaaaaabThcbwcbvbThbQabThbThbQabThaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYubWGbRAbRAbRAbRAbRAbYtbRAbRAbRGbPIbPIbPIbPIbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbYxbYwbYybYwbYAbYzbYBbYBbYBbYBbYBbYCbYEbYDbTsbYFbxbbYGbYIbYHbYNbYJbYKbYLbYLbYLbYMbYMbYObTybYRbYQbRWbMGbYTbYSbYVbVvbYWbMHbYUbYXbZdbTJbZebQmbYYbFCaaaaaaaaabSibYZbZabZbbZcbXmbXnbXobSibZgbZfbZibZhbZkbZjbZmbZlbZobZnbZrbZqbVTbVTbZpbZvbVTbVTbUebVZbZwbZsbZtbZubZybZxbWdbZAbZBbZzbZDbZCbZFbZEbZEbZGbZIbZHbZKbZJbUNbUNbZLbUNbZMbUNbZNbUNbZPbZObZObZQbZSbZRbZUbZTbZXbZVbZYbZWaYpbYjcacbZZaaaaaaaaabThcaabVbcadbYobQacajcalbThaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIcafcagcahcaibRAbRGbRAbRAbRGbRAcancakcaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabOebOcbOcbOcbOcbOcbOebPTbKBbKBbxbbxbbKBbKBbKBbKBbKBbxbbxbbKBbKBbKBbxbcamcamcamcascambYMcaocapcaqcatbYMbOwbTycawbMEbMEbMGbMGbMGbMGbMGbMNbMHbTJbTIcaubTJcavcaxbFCbFCbFCbFCbFCbSibSjbSibSibSibSibSibSibSicaybFOcaBcazcaAcaCcaDcaAcaAcaEcaGcaFcaIcaHcaKcaJcaMcaLbXAcaNcaPcaOcaRcaQcaTcaScaVcaUcaXcaWcaZcaYcbbcbabXQcbcbWgbWicbdcbecbdcbfcbicbfcbfcbfcbhcblcbjcbjcbkcbmcbocbnbZUcbpcbrcbqcbtcbscbubYjcacbZZaaaaaaaaabThcbwcbvbThbQabThbThbQabThaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPIbPIbPIbPIbPIbPIbRGbTobRAcbzbRAcbxcbycbAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbDcbBbOccbCbOccbEcbFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbGaabaaaaaaaaaaaacamcbIcbHcbKcbJbYMcbNcbLcbMcbRbYMbOwbTycbOcbPcbQcbScbVcbTcbUcbWcbYcbXccacbZcccccbccfccdcceccgccjcchccicckccqcclccmbEnccnbFOccoccpccrbFOccscaAccvcctccuccwccxbUecczccyccBccAccDccCccFccEccHccGccIbWaccKbZuccJccMccLccOccNccPbXNccQbXQbXQbXQccRbWgcbdccTccSccVccUccXccWcdbcbfccYccZcdacbjcbjcdccbocddcdfcdecdhcdgcdjcdicdkbYjcdnbGHaaaaaaaaabThbThbThbThaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPLbPIcdlcdmcdpcdlcdobRGbRAbRAbRGbRAcdrcdqcdsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacdvcdtcducducducdtcdwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacamcdycdxcdAcdzbYLcdBcdDcdCcdEbYMbOwcdGcdFbTybTycdHcdKcdIcdJcclcdOcdLcdOcdMcdNcdNcdQcdPcdRcdNcdNcdTcdNcdScdNcclccmbEncdVcdUcdXcdWcdZcdYbFOcaAcebcctceaccucedbUececceecegcefceicehcekcejbUecelcembWaceocencencercepceqcetcesbXNceucevbXQcexcewbWgcbdcezceyceBceAceDceCceGcbfceEccZceFceFcbjceHceJceIceLceKceNceMcePceOceSbYjcacbGHceQaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWObWGceRceRceRceRceRceTbRAbRAbRGbPIbPIbPIbPIbPIbPIbPRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceVceUceUceUceWaaaaaaaaaaaaaaaaaaaaaceXceZceYceZcfaaaaaaaaaacamcamcamcffcfbcdAcfcbYLcfdcbMcfecfgbYMbOwcfhcfjcficflcfkcfncfmcfpcfocfrcfqcfucfscftcftcfxcfvcfvcfvcfvcfvcfvcfwcfAcfycfzcfBcfDcfCcfFcfEcfHcfGcfIcaAcfJcctccucfKcedbUececceecfMcfLcfOcfNcfQcfPbUmcfRcfSbWabWacfUcfUbWacepbWdcfTcfVbWgcfXcfWcfZcfYcgabWgcbdcgccgbcgecgdcghcgfcggcbfcgiccZceFceFcbjcgjcgmcgkcglcgncgpcgocgrcgqcgvbYjcaccgscgtcgscgucgycgucgucguaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYubWGceRceRceRcgwcgxbRGbRAbRAbRGbRAbRAbRAcgzbRAcgAbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacgFcgBcgCcgDcgFbYPbYPbYPcamcgHcgGcgJcgIcgLcgKcgNcgMcgOcgOcgPbYMcgRcgQcgTcgScgScgUcgXcgVcgScgWcgWcgYchbcgZcgWcgWchacclcclchechcchcchcchdchgchcchcchfchichhchhchjchhchlchkchhchnchmchpcaAchochqcecchschrchtchvchuchwchrbUecelchychxchAchzchCchBchFchDchEchGchLchHchIchJchKchNbWicbdcbdchMchQchOchPchOchRcbfchUchSchTchTcbjchVchXchWbYjbYjbYjbYjbYjbYjbYjbYjcaccgscifchYchZciaciacibcguaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcicciccicciccidcidcieciecieciecijaabaabaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIcigceRceRcihciibRGbRAbRAcikbRAbRAbRAciobRAcilbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceYcimcincimceYbYPcipciqcamcitcfbcircisciyciubYMcivciwcixcizbYMcgQcgQciCcgSciAciBciEciDciHcgWciFciGciJciIciKcgWciMciLciNchcciPciOciSciQciRciTciVciUciXciWciZciYcjbcjacjdcjccjgcjecjfcjhcjjcjicjkceecjocjlcjmcjncjqcjpbUmcjrcjtcjscjuchCcjvcjvcjxcjwbWgcjycjAcjzcjCcjBcjEaQvbWicjFcjHcjGcjIcjGcjGcjLcjJcjKcjPcjMcjNcjOcbjcjQcjRcbnbPtbGGcjTcjScjUcjUcjScjUcjYcgscjVcjWchZciackecjXcguaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaciccjZckacjZcidciecieckbckcckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIcigceRceRcihciibRGbRAbRAcikbRAbRAbRAciobRAcilbRGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceYcimcincimceYbYPcipciqcamcitcfbcircisciyciubYMcivciwcixcizbYMcgQcgQciCcgSciAciBciEciDciHcgWciFciGciJciIciKcgWciMciLciNchcciPciOciSciQciRciTciVciUciXciWciZciYcjbcjacjdcjccjgcjecjfcjhcjjcjicjkceecjocjlcjmcjncjqcjpbUmcjrcjtcjscjuchCcjvcjvcjxcjwbWgcjycjAcjzcjCcjBcjEaYobWicjFcjHcjGcjIcjGcjGcjLcjJcjKcjPcjMcjNcjOcbjcjQcjRcbnbPtbGGcjTcjScjUcjUcjScjUcjYcgscjVcjWchZciackecjXcguaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaciccjZckacjZcidciecieckbckcckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIckdceRceRckfbRGbRAbRAbRGckgbRAbRAckjckhbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacgFckicimcimckkcklcfbcfbckmckncfbcfbcisckqckobYMbYMbYMbYMbYMbYMckpcgQcksckrckxcktcktcktckucgWckvckwckwckwckzckyckBckAckDckCckFckEckHckGckJckIchcchfckKchhckMckLckOckNckPchhcebccuceaccuckRckQckUckSckTckVckXckWckYchrclackZclcclbclecldclgclfcljclhbWgbWgbWgbWgbWgclicllclkbWiclncjGcjGclmclocjGcltclpcbjclqccZclrclrcbjcbmclscbnbPtcgsclvcgscgscgscgscgscgscgscluclwcguclxclzclycguafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOafOclBcjZcjZclAciecieckbckbclHckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIclCclDclEbRGbRAclFbRGclGclIbRAbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceYcincincinceYbYPclJclMclKckncfbcfbclLclOclNclQclPclPclPclTcgQcgQcgQciCcgSclRcktclScktclVcgWckvckwclUckwclWcgWclYclXclZchccmccmacmbcmecmdcmhcmfcmgcmjcmicmlcmkcmocmmcmnchhcfJccuccucmpckRckQcmrcmqcmucjlcmscmtcmwcmvcmycmxcmAcmzcmCcmBcmEcmDcjvcmHchxcmFcmGcmJcmIcmKcmNcmLclpclncmMcjGcjGcjGcmQcmOclpcbjcmPccZclrclrcbjcmTcmRcbnbPtcmScmVcmUcgscmWcmYcmXcnbcmZcnacnfcgucnccndcnecgucgscgscgscgEcgEcgEcgEcgEaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaacnkcieclBciecieckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIbPIbPIbPIbPIbPIbPIbPIbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabafOcgQcngcngcgQcngcngcgQaaaaaacgFcnhcnicnjcgFbYPbYPbYPcamcnmcnlcnocnocnocamcamcgQcnncnpcnrcnqcgQcnscntcgSclRcktcktcktcnvcgWckvckwckwcnucnxcnwcnzcnycnAchcchcchcchcchccnBchcchccnCcnDchhchhcnEchhchkchhchhcaAcnGcnGcaAcnFcnHcnJcnIcnLcnKcnNcnMcnPcnObQVcnQcmAcmzcnScnRcnUcnTcnWcnVchxcnXcnZcnYcobcoacoecoccodcofcodcoicoicoicodcogcodcodcohcojclrclrcbjcokclscbncomcolcooconcorcopcoqcoqcotcoscovcoucoxcowcozcoycoCcoAcoBcoDcoEcoFcoHcoGcoIaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaacidciecoMcoJcoJckbckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIclCclDclEbRGbRAclFbRGclGclIbRAbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaceYcincincinceYbYPclJclMclKckncfbcfbclLclOclNclQclPclPclPclTcgQcgQcgQciCcgSclRcktclScktclVcgWckvckwclUckwclWcgWclYclXclZchccmccmacmbcmecmdcmhcmfcmgcmjcmicmlcmkcmocmmcmnchhcfJccuccucmpckRckQcmrcmqcmucjlcmscmtaYqcmvcmycmxcmAcmzcmCcmBcmEcmDcjvcmHchxcmFcmGcmJcmIcmKcmNcmLclpclncmMcjGcjGcjGcmQcmOclpcbjcmPccZclrclrcbjcmTcmRcbnbPtcmScmVcmUcgscmWcmYcmXcnbcmZcnacnfcgucnccndcnecgucgscgscgscgEcgEcgEcgEcgEaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaacnkcieclBciecieckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaebPIbPIbPIbPIbPIbPIbPIbPIbPIbPIbYvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabafOcgQcngcngcgQcngcngcgQaaaaaacgFcnhcnicnjcgFbYPbYPbYPcamcnmcnlcnocnocnocamcamcgQcnncnpcnrcnqcgQcnscntcgSclRcktcktcktcnvcgWckvckwckwcnucnxcnwcnzcnycnAchcchcchcchcchccnBchcchccnCcnDchhchhcnEchhchkchhchhcaAcnGcnGcaAcnFcnHcnJcnIcnLcnKaYrcnMcnPcnObQVcnQcmAcmzcnScnRcnUcnTcnWcnVchxcnXcnZcnYcobcoacoecoccodcofcodcoicoicoicodcogcodcodcohcojclrclrcbjcokclscbncomcolcooconcorcopcoqcoqcotcoscovcoucoxcowcozcoycoCcoAcoBcoDcoEcoFcoHcoGcoIaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaacidciecoMcoJcoJckbckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaacgQcoKcoLcgQcoKcoLcgQaaaaaacoOceZcoNceZcoQaaaaabaaacamcamcamcamcamcamcamcoPcgQcoScoRcoUcoTclPcoVcoWcgScoYcoXcpfcktcoZcpacpbcpccpdcpecpgcgWcpicphcpkcpjcplcplcplcplcpncpmcppcpocpocpqcpqcptcprcpschfcaAcpvcpucpxcpwcpyckQcpzcnIcpBcpAcpDcpCcekcpEcpGcpFcpJcpHcpHcpIcpHcpHcpHcpKchxcpLcpScpMcpNcpOcpPcpQcpRcpTcpRcpUcpWcpVcpRcpXcpYcodcqacpZcdacbjcbjcqccqbcqfcqdcqecqicqgcqhcqlcqjcqkcqncqmcqpcqocqtcqqcqrcqqcqscqrcqrcqucqwcqvcqycqxcqCaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaacieciecqDckbckbckbckbckbckbckbckbckbckbckbciecieaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOaaaafOcgQcqzcoLcgQcqzcoLcgQaaaaaaaabaabaabaabaabaabaabaabaabcgQcoLcqAcqBcgQcqEcqGcgQcqHcgQcgQcqFcgQcgQcqPcgScqRcqIcqJcqKcqLcqMcqNcqOcqScqQcqTcpacqXcqUcqYcqVcqWcqWcqWcqWcrgcrdcqZcracrbcracrccrhcrecrfcrjcricrmcrlcrkcrncrpcrocrrcrqcrtcrscrvcrucrxcrwcrzcrycrAbXwbXwcrBcrEcrCcrucrGcrDcrDcrHcrDcrFcrIcrKcrJcpRcrNcrQcrLcrMcrLcrTcrOcrPcodcbjcrUcbjcbjcrRcrSclsbLRbPtcgscrVcgscgscrWcrYcrXcsacrZcsdcsbcsfcsecsgcsecsgcshcsgcsicgEcsncvdcsqcsraabaabaabaabaabaabaabaabaaaaaaaaaaaaaaacieckbckbckbckbckbckbcssckbcstckbckbckbckbckbciecieaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcsjafOaabaMraMrafOcgQcgQcqFcgQcgQcqFcgQcgQcgQcngcngcngcgQcgQcgQcgQcgQcgQcgQcoLcskcslcgQcsmcgQcgQcsucgQcsocspcoLcgQcsvcgScsycsxcszclRcsBcsAcswckvcsEcsCcsFcsAcsIcsHcsMcsDcsDcsNcsOcsGcsTcsQcsJcsKcsLcsUchfcsWcsLcsLcsXcsPcsYcsRcsScrnctacsZcsVctbctdctcctfctectgctcctccthctictictictictictjctlctkctmctmctoctnctqctpctsctrcpRcttctxctwctyctwctActzcrLctuctvctBbLRctCbLRcrSclsbLRbIictFctHctGcgscgscgscgscgsctIcqkctKctDcsccqkctEcqkclucqkctLcgEctOctQctPcgEaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaciectJctJctJctJctJctJctSckbctTctJcstckbckbckbckbcieaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9159,7 +9157,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaabcSQaabaabaabcSQaabaaaaabcSQaabaaaaaaaaaaaaaaaaaaaaaaaaaaacRzcRzcRzcSRcTacSTcRAcTbcTccNRcRCcRCcSScTdcKbcKbcMvcSUcSUcSUcSUcSVcSWcSXcSWcSWcSWcRRcRRcSYcSZcTfcTicTgcRXcTjcTecRXcRXcRXcRXcTkcPTcTlcThcQVcSdcQPcSdcPZcSfcSlcTncTmcTqcTpcTucTraabcTocTvcSwcTwcQZcRecBQcRicRhcTxcTscSAcTtcQkcTycTAcTzcQkcTCcTDcSAcTFcTEcQkcBYcsLcTBcBPaaacBRcKPcKQcKRcTJcPlcNocTKcTNcTMcTGcTGcTHcTIcTPcTOcBRaabaabaabaaaaaaaaaaaaaaaaaabGHcTLcFcbGHbGHbGHbGHbGHaabaabaabcTQcTQcTQcTQcTQcTQaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabcTRcTScTScTUcTTcTVcTVcTVcTTcTVcTVcTVcTTcTVcTVcTVcTWcTScTScTScTScTScTXcTZcTYcUbcUacUecUdcUgcUfcNBcLwcUccRCcKbcKbcKbcUhcMvcSUcUkcUjcUmcUlcUicUncUpcUocUrcUqcUucUscUxcUwcUycUqcUtcUzcTecUvcRXcRXcRXcUAcPTcUCcUCcSdcUEcUDcUGcUFcUIcUHcUKcUJcUPcUNcUScSqcUVcSncUWcSwcSwcQZcRecBQcPdcQkcULcUMcVacQncQkcUOcVbcQncQkcUQcURcVccUTcUTcQkcBYcsLcUUcBPaaacBRcJKcMgcJKcVecMjcEHcVfcUXcUYcEHcUZcVgcxNcxNcxNcBRaaaaaaaabaabaaaaaaaaaaaaaaabGHcJQcFcbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaabcVkaabaaaaabcVkaabaaaaabcVkaabaaaaaaaaaaaaaaaaaaaaaaaaaaacRzcRzcRzcVlcVdcVmcRAcVncNBcNNcTccTccTccTccVocTccUfcSUcVhcVicVjcVpcVrcVqcVtcVscVvcVucVycVwcVAcVzcVCcVBcUtcTjcTecVxcVDcRXcRXcVFcPTcVGcVHcSdcVIcQPcVJcVEcVLcVKcVOcVMcVQcVPcVQcVRaabcQZcQZcQZcQZcQZcRecBPcPdcQkcVScVNcVUcVTcVWcVVcVYcVXcWbcWacWccSAcWecWdcQkcBYcsLcVZcBPaaacBRcJKcJKcJKcWicWhcWpcWjcWqcWfcEHcEHcEHcEHcWgcWrcWwaaaaaaaaaaabaabaaaaaaaaaaaabGHbGHcFcbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvalwaabcNFcWxcNMaaacNFcWxcNMaaacNFcWxcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabcRzcRAcRAcRAcRAcWkcWlcWmcNBcWncNBcNBcMvcWocNBcSUcWzcWycVjcWAcUicWscWtcWucWucWvcWDcWCcWFcWEcWGcWvcWBcWHcWJcWIcWLcWKcWPcWMcWScWQcUGcWTcWUcWNcWOcWVcWWcWRcWYcWXcXbcXacXdcXccQpcSncXecWZcWZcQZcRecBPcPdcQkcQkcQkcQkcQkcXgcXfcXicXhcXncXkcXpcXocXqcXjcQkcBYcXrcXlcXlcXlcXmcXmcXmcXmcXmcXscXvcXtcXzcXxcNocXAcNocXAcNocXBcWwaaaaaaaaaaaaaabaabaaaaaaaaaaaabGHcFcbGHaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvalwaabcNFcWxcNMaaacNFcWxcNMaaacNFcWxcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabcRzcRAcRAcRAcRAcWkcWlcWmcNBcWncNBcNBcMvcWocNBcSUcWzcWycVjcWAcUicWscWtcWucWucWvcWDcWCcWFaYtaZBcWvcWBcWHcWJcWIcWLcWKcWPcWMcWScWQcUGcWTcWUcWNcWOcWVcWWcWRcWYcWXcXbcXacXdcXccQpcSncXecWZcWZcQZcRecBPcPdcQkcQkcQkcQkcQkcXgcXfcXicXhcXncXkcXpcXocXqcXjcQkcBYcXrcXlcXlcXlcXmcXmcXmcXmcXmcXscXvcXtcXzcXxcNocXAcNocXAcNocXBcWwaaaaaaaaaaaaaabaabaaaaaaaaaaaabGHcFcbGHaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacNFcWxcNMaabcNFcWxcNMaaacNFcWxcNMaaaaaaaaaaaaaabaaaaaaaaaaaaaabaabaabaaaaaaaabaabcXucXucXucXucXucXucXucXCcXucXucSUcXwcXDcVjcWAcUicXycUicUicXEcRRcXGcXFcUwcXHcXIcRRcXLcRXcTecXMcXOcXNcWPcXPcXJcXKcXRcXQcXVcXScXRcXWcXYcXXcYacSdcXTcXUcYccYbaabcTocYfcYdcXZcQZcRecBQcYhcYgcYgcYgcYlcQkcYmcUMcYecYncURcYocUTcUTcURcYpcQkcBYcYichfcsLcYjcYkcBPaaaaaacBRcYqcYscYrcYvcYqcYscYwcYxcYqcYscYycBRaabaabaabaabaabaabaabaabaabaabbGHcFcbGHbGHbGHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabcNFcWxcNMaaacNFcWxcNMaaacNFcWxcNMaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaabaabaabcXucYtcYtcYucYAcYBcYBcYDcYCcYCcYEcYGcYFcVjcWAcVjcYHcVjcVjcVjcRRcYLcYKcYOcYNcYPcYIcYJcYQcYRcYMcYMcYMcYXcYUcYZcYYcZacYScVIcQPcYTcZbcYVcYWcZccSdcXTcZdcZgcZecZhcSncZicWZcWZcQZcRecBQcPdchfchfchfckKcQkcZkcZjcZfcZlcURcZmcZncUTcZpcZocQkcBYcYichfcsLcJGcsLcBPaaaaaacBRcZqcZscZrcxNcZtcZycZvcxNcZzcZBcZAcBRaabaabaaaaaaaaaaaaaaaaaaaaaaaabGHcFcbGGbGGbGHaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabcNFcWxcNMaaacNFcWxcNMaabcNFcWxcNMaabaabaabaabaaaaabaaaaaaaabaabaaaaaaaaaaabaaaaaacXucYtcYtcYucZucZucZucZCcZwcZxcSUcZEcZDcZHcZGcZJcZIcZKcZFcZFcZLcZOcZNcVjcVjcVjcZPcZRcZQcZMcZTdaacZVdacdabcSUcZScZSdafcVIcQPcZUdagcZWcZXcZYcSdcZZdahdajdaidadcQZcQZcQZcQZcQZcRecBQcPddaecsLcsLckKcQkdakcSAcSAdaldandamdaqcUTdatdascQkcBYcYicMfcsLcuccTBcBPaaaaaacBRcMkcJKcJKcxNcMkcJKcJKcxNcMkcJKcJKcBRaaaaabaabaaaaaaaaaaaaaaacuQcuQbGHdaucuQbGGbGHbGHbGHcTQcTQaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/_maps/map_files/cyberiad/z2.dmm b/_maps/map_files/cyberiad/z2.dmm index 401f5cd6e22..79d5bede9fd 100644 --- a/_maps/map_files/cyberiad/z2.dmm +++ b/_maps/map_files/cyberiad/z2.dmm @@ -116,7 +116,7 @@ "cl" = (/obj/docking_port/stationary/transit{dir = 4; dwidth = 11; height = 13; id = "emergency_transit"; name = "emergency in transit"; width = 24},/turf/space/transit,/area/space) "cm" = (/obj/docking_port/stationary/transit{dir = 8; dwidth = 5; height = 7; id = "supply_transit"; name = "supply in transit"; width = 12},/turf/space/transit,/area/space) "cn" = (/obj/machinery/door/airlock/external{aiControlDisabled = 1; frequency = 1379; hackProof = 1; icon_state = "door_locked"; id_tag = "emergency_away"; locked = 1; name = "Arrival Airlock"; req_access = null; req_access_txt = "0"},/turf/unsimulated/floor{name = "plating"},/area/centcom/evac) -"co" = (/turf/unsimulated/wall,/area/prison/solitary) +"co" = (/obj/machinery/computer/cryopod{pixel_y = 32},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "cp" = (/turf/unsimulated/floor{name = "plating"},/area/centcom/ferry) "cq" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 1},/area/centcom/ferry) "cr" = (/turf/unsimulated/floor{name = "plating"},/area/space) @@ -145,20 +145,20 @@ "cO" = (/obj/docking_port/stationary/transit{dir = 8; dwidth = 2; height = 12; id = "ferry_transit"; name = "ferry in transit"; turf_type = /turf/space/transit/horizontal; width = 5},/turf/space/transit/horizontal,/area/space) "cP" = (/obj/docking_port/stationary/transit{dir = 2; dwidth = 3; height = 5; id = "engineering_transit"; name = "engineering in transit"; turf_type = /turf/space/transit/horizontal; width = 7},/turf/space/transit/horizontal,/area/space) "cQ" = (/obj/structure/rack,/obj/item/clothing/glasses/sunglasses{pixel_x = -3; pixel_y = 3},/obj/item/clothing/glasses/hud/health/health_advanced,/obj/item/clothing/glasses/hud/security/sunglasses,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"cR" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/wall,/area/prison/solitary) -"cS" = (/obj/structure/stool/bed,/turf/unsimulated/floor{name = "plating"},/area/prison/solitary) -"cT" = (/turf/unsimulated/floor{icon_state = "platingdmg3"},/area/prison/solitary) -"cU" = (/turf/unsimulated/floor{name = "plating"},/area/prison/solitary) -"cV" = (/obj/effect/decal/cleanable/cobweb2,/turf/unsimulated/floor{name = "plating"},/area/prison/solitary) -"cW" = (/obj/structure/stool/bed,/turf/unsimulated/floor{icon_state = "floorscorched2"},/area/prison/solitary) -"cX" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{name = "plating"},/area/prison/solitary) -"cY" = (/obj/structure/closet/secure_closet/guncabinet,/obj/item/weapon/storage/box/buck,/obj/item/weapon/storage/box/buck,/obj/item/weapon/storage/box/buck,/obj/item/weapon/gun/projectile/shotgun/automatic/combat,/obj/item/weapon/gun/projectile/shotgun/automatic/combat,/obj/item/weapon/gun/projectile/shotgun/automatic/combat,/turf/simulated/floor/engine,/area/shuttle/gamma/space) +"cR" = (/obj/structure/flora/ausbushes/lavendergrass,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/specops) +"cS" = (/obj/structure/flora/ausbushes/stalkybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/specops) +"cT" = (/obj/structure/flora/ausbushes/pointybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/specops) +"cU" = (/obj/structure/flora/ausbushes/ywflowers,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/specops) +"cV" = (/obj/structure/flora/ausbushes/brflowers,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/specops) +"cW" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/specops) +"cX" = (/obj/structure/flora/ausbushes/reedbush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/specops) +"cY" = (/obj/structure/closet/secure_closet/guncabinet,/obj/item/ammo_box/shotgun/buck,/obj/item/ammo_box/shotgun/buck,/obj/item/ammo_box/shotgun/buck,/obj/item/weapon/gun/projectile/shotgun/automatic/combat,/obj/item/weapon/gun/projectile/shotgun/automatic/combat,/obj/item/weapon/gun/projectile/shotgun/automatic/combat,/turf/simulated/floor/engine,/area/shuttle/gamma/space) "cZ" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/trackimp,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) "da" = (/obj/structure/table/reinforced,/obj/item/weapon/scalpel,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) "db" = (/turf/simulated/floor/holofloor{tag = "icon-carpet2-0 (EAST)"; icon_state = "carpet2-0"; dir = 4},/area/holodeck/source_theatre) "dc" = (/obj/structure/rack,/obj/item/weapon/kitchen/knife/ritual,/turf/unsimulated/floor{dir = 8; icon_state = "chapel"},/area/wizard_station) "dd" = (/obj/structure/rack,/obj/item/weapon/kitchen/knife/ritual,/turf/unsimulated/floor{icon_state = "chapel"},/area/wizard_station) -"de" = (/obj/structure/closet/secure_closet/guncabinet,/obj/item/weapon/gun/energy/gun/nuclear,/obj/item/weapon/gun/energy/gun/nuclear,/obj/item/weapon/gun/energy/gun/nuclear,/obj/machinery/light{dir = 1},/turf/simulated/floor/engine,/area/shuttle/gamma/space) +"de" = (/obj/structure/flora/ausbushes/fernybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/control) "df" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/weapon/shard,/obj/item/weapon/kitchen/knife,/obj/item/weapon/storage/firstaid/tactical,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) "dg" = (/obj/structure/table/holotable,/obj/item/clothing/suit/armor/riot/knight/red,/obj/item/clothing/head/helmet/riot/knight/red,/obj/item/weapon/holo/claymore/red,/turf/simulated/floor/holofloor{dir = 1; icon_state = "red"},/area/holodeck/source_knightarena) "dh" = (/obj/structure/table/holotable,/obj/machinery/readybutton{pixel_y = 0},/turf/simulated/floor/holofloor{dir = 9; icon_state = "red"},/area/holodeck/source_knightarena) @@ -168,9 +168,9 @@ "dl" = (/turf/simulated/floor/holofloor{dir = 4; icon_state = "red"},/area/holodeck/source_knightarena) "dm" = (/obj/structure/holowindow,/turf/simulated/floor/holofloor,/area/holodeck/source_knightarena) "dn" = (/obj/structure/holowindow,/turf/simulated/floor/holofloor{dir = 8; icon_state = "red"},/area/holodeck/source_knightarena) -"do" = (/obj/effect/landmark{name = "prisonwarp"},/turf/unsimulated/floor{name = "plating"},/area/prison/solitary) -"dp" = (/turf/unsimulated/floor{icon_state = "floorgrime"},/area/prison/solitary) -"dq" = (/turf/unsimulated/floor{icon_state = "panelscorched"},/area/prison/solitary) +"do" = (/obj/structure/flora/ausbushes/ywflowers,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/control) +"dp" = (/obj/structure/flora/ausbushes/stalkybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/control) +"dq" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/control) "dr" = (/obj/structure/holowindow,/turf/simulated/floor/holofloor{dir = 4; icon_state = "red"},/area/holodeck/source_knightarena) "ds" = (/turf/simulated/floor/holofloor/grass,/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/holofloor{tag = "icon-wood_siding1"; icon_state = "wood_siding1"; dir = 2},/area/holodeck/source_picnicarea) "dt" = (/turf/simulated/floor/holofloor/grass,/obj/structure/flora/ausbushes/ywflowers,/turf/simulated/floor/holofloor{tag = "icon-wood_siding1"; icon_state = "wood_siding1"; dir = 2},/area/holodeck/source_picnicarea) @@ -190,8 +190,8 @@ "dH" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/weapon/grenade/smokebomb,/obj/item/weapon/restraints/legcuffs/beartrap,/obj/item/weapon/sleeping_carp_scroll,/obj/item/weapon/twohanded/bostaff,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) "dI" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/weapon/grenade/smokebomb,/obj/item/weapon/restraints/legcuffs/beartrap,/obj/item/weapon/sleeping_carp_scroll,/obj/item/weapon/twohanded/bostaff,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) "dJ" = (/obj/structure/rack,/obj/item/toy/sword,/obj/item/weapon/gun/projectile/revolver/capgun,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/ninja/holding) -"dK" = (/obj/structure/stool/bed,/turf/unsimulated/floor{icon_state = "panelscorched"},/area/prison/solitary) -"dL" = (/obj/structure/stool/bed,/obj/effect/decal/cleanable/cobweb,/turf/unsimulated/floor{name = "plating"},/area/prison/solitary) +"dK" = (/obj/structure/flora/ausbushes/lavendergrass,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/control) +"dL" = (/obj/structure/flora/ausbushes/fullgrass,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/control) "dM" = (/obj/machinery/prize_counter,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/ninja/holding) "dN" = (/turf/simulated/floor/holofloor{tag = "icon-asteroid3 (EAST)"; icon_state = "asteroid3"; dir = 4},/area/holodeck/source_desert) "dO" = (/turf/simulated/floor/holofloor{tag = "icon-carpet1-0 (EAST)"; icon_state = "carpet1-0"; dir = 4},/area/holodeck/source_theatre) @@ -209,8 +209,8 @@ "ea" = (/obj/machinery/computer/bsa_control/admin,/turf/unsimulated/floor{dir = 5; icon_state = "carpetside"},/area/centcom/control) "eb" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/turf/unsimulated/floor{dir = 8; icon_state = "carpet15-14"; tag = "icon-carpet (WEST)"},/area/centcom/control) "ec" = (/turf/unsimulated/floor{tag = "icon-warnplate (NORTHWEST)"; icon_state = "warnplate"; dir = 9},/area/centcom/control) -"ed" = (/turf/unsimulated/floor{icon_state = "platingdmg1"},/area/prison/solitary) -"ee" = (/turf/unsimulated/floor{icon_state = "floorscorched2"},/area/prison/solitary) +"ed" = (/obj/machinery/door/airlock/centcom{name = "Living Quarters"; opacity = 1; req_access_txt = "102"},/turf/unsimulated/floor{dir = 2; icon_state = "carpetsymbol"},/area/centcom/control) +"ee" = (/obj/structure/table,/obj/item/weapon/card/id/centcom,/obj/machinery/light/spot{tag = "icon-tube1 (EAST)"; icon_state = "tube1"; dir = 4},/obj/item/weapon/door_remote/centcomm,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/control) "ef" = (/turf/unsimulated/floor{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/centcom/control) "eg" = (/obj/machinery/bsa/full/admin/east,/turf/unsimulated/floor{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/centcom/control) "eh" = (/turf/unsimulated/floor{tag = "icon-warnplate (NORTHEAST)"; icon_state = "warnplate"; dir = 5},/area/centcom/control) @@ -253,30 +253,30 @@ "eS" = (/turf/unsimulated/floor{tag = "icon-warnplate (SOUTHEAST)"; icon_state = "warnplate"; dir = 6},/area/centcom/control) "eT" = (/turf/unsimulated/floor{dir = 4; icon_state = "carpetside"},/area/centcom/specops) "eU" = (/obj/structure/table/woodentable,/obj/item/stack/spacecash,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"eV" = (/obj/structure/rack,/obj/item/weapon/implanter/adrenalin{pixel_x = 12; pixel_y = -12},/obj/item/weapon/implanter/emp{pixel_x = 9; pixel_y = -9},/obj/item/weapon/implanter/explosive{pixel_x = 6; pixel_y = -6},/obj/item/weapon/implanter/explosive_macro{pixel_x = 3; pixel_y = -3},/obj/item/weapon/implanter/freedom,/obj/item/weapon/implanter/krav_maga{pixel_x = -9; pixel_y = 9},/obj/item/weapon/implanter/mindshield{pixel_x = -6; pixel_y = 6},/obj/item/weapon/implanter/storage{pixel_x = -3; pixel_y = 3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"eW" = (/obj/structure/closet/secure_closet/guncabinet,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/weapon/gun/projectile/automatic/pistol{name = "pistol"},/obj/item/weapon/gun/projectile/automatic/pistol{name = "pistol"},/obj/item/weapon/gun/projectile/automatic/pistol{name = "pistol"},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/engine,/area/shuttle/gamma/space) +"eV" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (EAST)"; icon_state = "fakewindows"; dir = 4},/area/centcom/control) +"eW" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (WEST)"; icon_state = "fakewindows"; dir = 8},/area/centcom/control) "eX" = (/obj/structure/flora/tree/pine,/turf/simulated/floor/holofloor{tag = "icon-snow"; icon_state = "snow"},/area/holodeck/source_snowfield) "eY" = (/obj/structure/table/woodentable,/turf/simulated/floor/holofloor{tag = "icon-grimy"; icon_state = "grimy"; dir = 2},/area/holodeck/source_meetinghall) "eZ" = (/turf/simulated/floor/holofloor{dir = 1; icon_state = "red"},/area/holodeck/source_basketball) "fa" = (/turf/unsimulated/floor{dir = 2; icon_state = "carpet15-5"},/area/centcom/control) "fb" = (/obj/structure/table/woodentable,/obj/machinery/photocopier{icon_state = "fax"; name = "fax machine"},/obj/item/weapon/photo{name = "butts"},/turf/unsimulated/floor{dir = 10; icon_state = "carpetside"},/area/centcom/control) "fc" = (/obj/machinery/computer/communications,/turf/unsimulated/floor{dir = 6; icon_state = "carpetside"},/area/centcom/control) -"fd" = (/obj/structure/closet/secure_closet/guncabinet,/obj/item/ammo_casing/rocket,/obj/item/ammo_casing/rocket,/obj/item/ammo_casing/rocket,/obj/item/weapon/gun/rocketlauncher,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/engine,/area/shuttle/gamma/space) -"fe" = (/obj/structure/table/reinforced,/obj/item/weapon/grenade/clusterbuster,/turf/simulated/floor/engine,/area/shuttle/gamma/space) +"fd" = (/obj/machinery/door/poddoor{icon_state = "pdoor1"; id_tag = "CCGAMMA"; name = "Gamma Security"; p_open = 0},/obj/machinery/door/airlock/centcom{name = "Gamma Armory"; opacity = 1; req_access_txt = "114"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/centcom/gamma) +"fe" = (/obj/machinery/cryopod/right,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "ff" = (/turf/unsimulated/wall,/area/ninja/outpost) "fg" = (/turf/unsimulated/wall,/area/ninja/holding) "fh" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (WEST)"; icon_state = "fakewindows"; dir = 8},/area/ninja/holding) "fi" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows2 (WEST)"; icon_state = "fakewindows2"; dir = 8},/area/ninja/holding) "fj" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (EAST)"; icon_state = "fakewindows"; dir = 4},/area/ninja/holding) "fk" = (/turf/unsimulated/wall{desc = "The door appears to be locked tightly."; icon = 'icons/obj/doors/Doorhatchele.dmi'; icon_state = "door_closed"; name = "Locked Door"},/area/ninja/holding) -"fl" = (/obj/machinery/power/apc{dir = 8; name = "Gamma Armory APC"; pixel_x = -27; pixel_y = 2},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/engine,/area/shuttle/gamma/space) -"fm" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/engine,/area/shuttle/gamma/space) -"fn" = (/obj/structure/sign/securearea,/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) -"fo" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) -"fp" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) -"fq" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) -"fr" = (/obj/structure/cable,/obj/machinery/mech_bay_recharge_port/upgraded,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) -"fs" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) +"fl" = (/obj/machinery/cryopod,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) +"fm" = (/turf/unsimulated/wall,/area/centcom/gamma) +"fn" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/centcom/gamma) +"fo" = (/obj/machinery/porta_turret/centcom/pulse,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 9},/area/centcom/gamma) +"fp" = (/obj/machinery/camera{c_tag = "CentComm Special Ops. Bathroom"; dir = 2; network = list("ERT","CentComm")},/obj/structure/table/reinforced,/obj/item/weapon/paper,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/centcom/gamma) +"fq" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/centcom/gamma) +"fr" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/centcom/gamma) +"fs" = (/obj/structure/table/reinforced,/obj/machinery/turretid/lethal{ailock = 1; check_synth = 1; name = "Gamma Turret Control Panel"; pixel_x = 0; req_access = list(114)},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/centcom/gamma) "ft" = (/turf/unsimulated/wall{desc = "The door appears to be locked tightly."; icon = 'icons/obj/doors/Doorhatchele.dmi'; icon_state = "door_closed"; name = "Locked Door"},/area/ninja/outpost) "fu" = (/turf/unsimulated/floor{icon_state = "dark"},/area/ninja/outpost) "fv" = (/obj/structure/ninjatele{pixel_y = 25},/turf/unsimulated/floor{icon_state = "dark"},/area/ninja/outpost) @@ -288,8 +288,8 @@ "fB" = (/obj/machinery/vending/boozeomat,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/ninja/holding) "fC" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/ninja/holding) "fD" = (/obj/structure/rack,/obj/item/device/camera,/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/ninja/holding) -"fE" = (/obj/mecha/combat/durand/loaded{operation_req_access = list(1)},/obj/machinery/light,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) -"fF" = (/obj/structure/table/reinforced,/obj/item/weapon/kitchen/knife/combat,/obj/item/weapon/kitchen/knife/combat,/obj/item/weapon/kitchen/knife/combat,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) +"fE" = (/obj/machinery/porta_turret/centcom/pulse,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 5},/area/centcom/gamma) +"fF" = (/obj/effect/spawner/window/reinforced,/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/gamma) "fG" = (/obj/machinery/computer/arcade,/turf/unsimulated/floor{icon_state = "cafeteria"; dir = 2},/area/ninja/holding) "fH" = (/turf/unsimulated/beach/sand,/area/ninja/holding) "fI" = (/obj/effect/overlay/palmtree_r,/obj/effect/overlay/coconut,/turf/unsimulated/beach/sand,/area/ninja/holding) @@ -499,7 +499,7 @@ "jE" = (/obj/structure/rack,/obj/item/clothing/suit/wizrobe/marisa,/obj/item/clothing/shoes/sandal/marisa,/obj/item/clothing/head/wizard/marisa,/obj/item/weapon/twohanded/staff/broom,/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "jF" = (/obj/structure/rack,/obj/item/clothing/suit/wizrobe/magusblue,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/twohanded/staff,/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "jG" = (/obj/structure/rack,/obj/item/weapon/storage/backpack/holding{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/backpack/satchel,/obj/item/weapon/storage/backpack/holding{pixel_x = -6; pixel_y = 6},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"jH" = (/obj/structure/table/reinforced,/obj/item/weapon/grenade/chem_grenade/incendiary{name = "Incendiary Grenade"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) +"jH" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/centcom/gamma) "jI" = (/turf/space,/area/adminconstruction) "jJ" = (/obj/effect/decal/warning_stripes/north,/turf/simulated/floor/plating/airless,/area/syndicate_mothership) "jK" = (/obj/effect/decal/warning_stripes/north,/obj/machinery/light,/turf/simulated/floor/plating/airless,/area/syndicate_mothership) @@ -521,6 +521,7 @@ "ka" = (/turf/unsimulated/wall/abductor{icon_state = "alien18"},/area/abductor_ship) "kb" = (/obj/machinery/light/spot{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "kc" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/mugwort,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"kd" = (/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/gamma) "ke" = (/obj/structure/rack,/obj/item/clothing/suit/wizrobe/red,/obj/item/clothing/shoes/sandal,/obj/item/clothing/head/wizard/red,/obj/item/weapon/twohanded/staff,/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "kf" = (/obj/machinery/light/spot,/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) "kg" = (/obj/structure/rack,/obj/item/clothing/suit/wizrobe/magusred,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/twohanded/staff,/turf/unsimulated/floor{icon_state = "grimy"},/area/wizard_station) @@ -620,9 +621,11 @@ "lW" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/obj/item/weapon/shield/energy,/obj/machinery/recharger/wallcharger{pixel_x = 3; pixel_y = -30},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena_source) "lX" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/obj/item/weapon/shield/energy,/obj/machinery/recharger/wallcharger{pixel_x = 3; pixel_y = -30},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena_source) "lY" = (/obj/effect/landmark/abductor/agent{team = 3},/turf/unsimulated/floor/abductor,/area/abductor_ship) +"lZ" = (/obj/effect/spawner/window/reinforced,/turf/unsimulated/floor{tag = "icon-red (EAST)"; icon_state = "red"; dir = 4},/area/centcom/gamma) "ma" = (/obj/effect/decal/cleanable/molten_object,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) "mb" = (/turf/unsimulated/wall/fakeglass,/area/wizard_station) "mc" = (/obj/item/trash/chips,/obj/machinery/light/spot,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"md" = (/obj/structure/extinguisher_cabinet,/turf/unsimulated/wall,/area/centcom/gamma) "me" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{dir = 8; icon_state = "chapel"},/area/wizard_station) "mf" = (/obj/structure/stool,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "mg" = (/obj/item/weapon/mop,/obj/structure/mirror{pixel_x = 28},/obj/item/weapon/twohanded/required/kirbyplants,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) @@ -753,18 +756,47 @@ "oB" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (WEST)"; icon_state = "fakewindows"; dir = 8},/area/syndicate_mothership) "oC" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (EAST)"; icon_state = "fakewindows"; dir = 4},/area/syndicate_mothership) "oD" = (/turf/unsimulated/floor/snow,/obj/structure/flora/bush,/turf/unsimulated/floor/snow{tag = "icon-gravsnow_corner (WEST)"; icon_state = "gravsnow_corner"; dir = 8},/area/syndicate_mothership) +"oE" = (/obj/structure/closet/secure_closet/guncabinet,/obj/item/weapon/gun/energy/gun/nuclear,/obj/item/weapon/gun/energy/gun/nuclear,/obj/item/weapon/gun/energy/gun/nuclear,/obj/machinery/light{dir = 1},/turf/simulated/floor/engine,/area/shuttle/gamma/space) +"oF" = (/obj/structure/closet/secure_closet/guncabinet,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/weapon/gun/projectile/automatic/pistol{name = "pistol"},/obj/item/weapon/gun/projectile/automatic/pistol{name = "pistol"},/obj/item/weapon/gun/projectile/automatic/pistol{name = "pistol"},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/engine,/area/shuttle/gamma/space) +"oG" = (/obj/structure/closet/secure_closet/guncabinet,/obj/item/ammo_casing/rocket,/obj/item/ammo_casing/rocket,/obj/item/ammo_casing/rocket,/obj/item/weapon/gun/rocketlauncher,/obj/machinery/ai_status_display{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/engine,/area/shuttle/gamma/space) "oH" = (/obj/structure/table,/obj/item/weapon/storage/fancy/crayons,/obj/item/weapon/storage/fancy/crayons,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) "oI" = (/obj/machinery/washing_machine,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) +"oJ" = (/obj/structure/table/reinforced,/obj/item/weapon/grenade/clusterbuster,/turf/simulated/floor/engine,/area/shuttle/gamma/space) +"oK" = (/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/centcom/gamma) +"oL" = (/turf/unsimulated/floor{tag = "icon-red (EAST)"; icon_state = "red"; dir = 4},/area/centcom/gamma) +"oM" = (/obj/machinery/door/airlock/centcom{name = "Team Storage"; opacity = 1; req_access_txt = "109"},/turf/unsimulated/floor{icon_state = "delivery"},/area/centcom/specops) +"oN" = (/obj/machinery/power/apc{dir = 8; name = "Gamma Armory APC"; pixel_x = -27; pixel_y = 2},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/engine,/area/shuttle/gamma/space) "oO" = (/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) +"oP" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/engine,/area/shuttle/gamma/space) "oQ" = (/obj/machinery/vending/syndisnack,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "oR" = (/obj/machinery/vending/syndicigs,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) +"oS" = (/obj/structure/table/woodentable{dir = 10},/obj/machinery/door_control{desc = "A remote control switch to block view of the singularity."; icon_state = "doorctrl0"; id = "SPECOPS"; name = "Ready Room"; pixel_x = 6; pixel_y = 6; req_access_txt = "114"},/obj/machinery/door_control{desc = "A remote control switch to block view of the singularity."; icon_state = "doorctrl0"; id = "ASSAULT"; name = "Assault Armor"; pixel_x = -6; pixel_y = 6; req_access_txt = "114"},/obj/machinery/door_control{desc = "A remote control switch to block view of the singularity."; icon_state = "doorctrl0"; id = "specopsoffice"; name = "Privacy Shutters"; pixel_x = 6; pixel_y = -6; req_access_txt = "114"},/obj/machinery/door_control{desc = "A remote control switch to block view of the singularity."; icon_state = "doorctrl0"; id = "CCGAMMA"; name = "Gamma Lockdown"; pixel_x = -6; pixel_y = -6; req_access_txt = "114"},/turf/unsimulated/floor{dir = 8; icon_state = "carpetside"},/area/centcom/specops) +"oT" = (/turf/simulated/floor/plasteel{icon_state = "red"},/area/centcom/gamma) +"oU" = (/turf/simulated/floor/plasteel{icon_state = "red"; dir = 10},/area/centcom/gamma) +"oV" = (/turf/simulated/floor/plasteel{icon_state = "red"; dir = 6},/area/centcom/gamma) +"oW" = (/obj/structure/sign/securearea,/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) +"oX" = (/obj/machinery/door/airlock/centcom{name = "Prison"; opacity = 1; req_access_txt = "104"},/turf/unsimulated/floor{icon_state = "bot"},/area/centcom/specops) +"oY" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/flora/ausbushes,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/specops) +"oZ" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/flora/ausbushes/fernybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/specops) "pa" = (/obj/structure/noticeboard{pixel_x = -32},/obj/item/weapon/paper/syndimemo,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) +"pb" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/flora/ausbushes/leafybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/specops) "pc" = (/mob/living/simple_animal/pet/fox/Syndifox,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "pd" = (/obj/effect/decal/warning_stripes/southeastcorner,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "pe" = (/obj/effect/decal/warning_stripes/south,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) +"pf" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) +"pg" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) +"ph" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) +"pi" = (/obj/structure/cable,/obj/machinery/mech_bay_recharge_port/upgraded,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) +"pj" = (/obj/structure/cable,/obj/machinery/computer/mech_bay_power_console,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) +"pk" = (/obj/mecha/combat/durand/loaded{operation_req_access = list(1)},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) "pl" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "pm" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/cans/beer{pixel_x = -2; pixel_y = 5},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) +"pn" = (/obj/structure/table/reinforced,/obj/item/weapon/kitchen/knife/combat,/obj/item/weapon/kitchen/knife/combat,/obj/item/weapon/kitchen/knife/combat,/turf/simulated/floor/engine,/area/shuttle/gamma/space) +"po" = (/obj/structure/table/reinforced,/obj/item/weapon/grenade/chem_grenade/incendiary{name = "Incendiary Grenade"},/turf/simulated/floor/engine,/area/shuttle/gamma/space) "pp" = (/obj/machinery/computer/telecrystals/uplinker,/turf/unsimulated/floor{icon_state = "floor4"},/area/syndicate_mothership) +"pq" = (/obj/machinery/camera{c_tag = "CentComm Special Ops. Bathroom"; dir = 2; network = list("ERT","CentComm")},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) +"pr" = (/obj/machinery/door/airlock/centcom{name = "Bathroom"; opacity = 1; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) +"ps" = (/obj/machinery/telecomms/server/presets/centcomm,/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/control) "pu" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (NORTHWEST)"; icon_state = "fakewindows"; dir = 9},/area/syndicate_mothership) "pv" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows2 (WEST)"; icon_state = "fakewindows2"; dir = 8},/area/syndicate_mothership) "pw" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/mushroompizzaslice{pixel_x = -5; pixel_y = 5},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) @@ -772,8 +804,21 @@ "py" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows2 (NORTH)"; icon_state = "fakewindows2"; dir = 1},/area/syndicate_mothership) "pz" = (/turf/unsimulated/floor{icon_state = "floor"},/area/syndicate_mothership) "pA" = (/obj/machinery/light,/turf/unsimulated/floor{icon_state = "floor"},/area/syndicate_mothership) +"pB" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{dir = 4; pixel_x = 32; pixel_y = 0},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) "pC" = (/obj/machinery/door/poddoor{id_tag = "nukeop_ready"; name = "Shuttle Dock Door"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) +"pE" = (/obj/structure/stool/bed,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "pF" = (/turf/unsimulated/wall/fakeglass,/area/syndicate_mothership) +"pG" = (/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) +"pH" = (/obj/machinery/door/airlock/centcom{name = "Prison Cell"; opacity = 1; req_access_txt = "104"},/turf/unsimulated/floor{icon_state = "delivery"},/area/centcom/specops) +"pI" = (/obj/structure/flora/ausbushes/lavendergrass,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"pJ" = (/obj/structure/flora/ausbushes/stalkybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"pK" = (/obj/structure/flora/ausbushes/pointybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"pL" = (/obj/structure/flora/ausbushes/ywflowers,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"pM" = (/obj/structure/flora/ausbushes/brflowers,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"pN" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"pO" = (/obj/structure/flora/ausbushes,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"pP" = (/obj/structure/flora/ausbushes/leafybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"pQ" = (/obj/structure/closet/secure_closet/brig,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "pR" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/reagent_containers/food/drinks/bottle/rum,/turf/unsimulated/floor{dir = 2; icon_state = "wood"},/area/syndicate_mothership) "pS" = (/obj/structure/table/woodentable,/turf/unsimulated/floor{dir = 2; icon_state = "wood"},/area/syndicate_mothership) "pT" = (/obj/structure/table/woodentable,/obj/item/device/syndicatedetonator,/turf/unsimulated/floor{dir = 2; icon_state = "wood"},/area/syndicate_mothership) @@ -781,25 +826,70 @@ "pV" = (/obj/effect/decal/warning_stripes/north,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "pW" = (/obj/machinery/door/airlock/centcom{name = "Restroom"; opacity = 1; req_access_txt = "150"},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) "pX" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership) +"pY" = (/obj/structure/closet/secure_closet/brig,/obj/machinery/camera{c_tag = "CentComm Special Ops. Ready Room East"; dir = 8; network = list("ERT","CentComm")},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) +"pZ" = (/obj/structure/flora/ausbushes/grassybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"qa" = (/obj/structure/flora/ausbushes/fullgrass,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"qb" = (/obj/structure/flora/ausbushes/fernybush,/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) +"qc" = (/obj/effect/spawner/window/reinforced,/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/evac) +"qd" = (/obj/machinery/door/airlock/centcom{name = "Medical Treatment Post"; opacity = 1; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/evac) +"qe" = (/obj/machinery/atmospherics/unary/cryo_cell,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/centcom/evac) "qf" = (/obj/effect/decal/warning_stripes/southeastcorner,/obj/item/device/radio/intercom/syndicate{pixel_x = -28},/turf/unsimulated/floor{dir = 2; icon_state = "wood"},/area/syndicate_mothership) "qg" = (/obj/effect/landmark{name = "Syndicate-Spawn"},/obj/effect/decal/warning_stripes/south,/turf/unsimulated/floor{dir = 2; icon_state = "wood"},/area/syndicate_mothership) "qh" = (/obj/effect/decal/warning_stripes/south,/turf/unsimulated/floor{dir = 2; icon_state = "wood"},/area/syndicate_mothership) "qi" = (/obj/effect/decal/warning_stripes/southwestcorner,/turf/unsimulated/floor{dir = 2; icon_state = "wood"},/area/syndicate_mothership) "qj" = (/obj/machinery/door/window{dir = 4; name = "Uplink Management Control"; req_access_txt = "151"},/turf/unsimulated/floor{dir = 2; icon_state = "wood"},/area/syndicate_mothership) +"qk" = (/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/centcom/evac) +"ql" = (/obj/machinery/atmospherics/unary/cryo_cell,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/centcom/evac) +"qm" = (/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHEAST)"; icon_state = "whiteblue"; dir = 5},/area/centcom/evac) +"qn" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/centcom/evac) +"qo" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/centcom/evac) +"qp" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9; icon_state = "intact"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/centcom/evac) +"qq" = (/turf/simulated/floor/plasteel{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/centcom/evac) "qr" = (/obj/structure/sign/double/map/left{pixel_y = -32},/obj/effect/decal/warning_stripes/west,/obj/machinery/light,/obj/structure/rack/skeletal_bar/left,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/turf/unsimulated/floor{dir = 2; icon_state = "wood"},/area/syndicate_mothership) +"qs" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/centcom/evac) "qt" = (/obj/machinery/computer/telecrystals/boss,/turf/unsimulated/floor{icon_state = "floor4"},/area/syndicate_mothership) "qu" = (/obj/structure/sign/double/map/right{pixel_y = -32},/obj/structure/rack/skeletal_bar/right,/obj/item/weapon/reagent_containers/food/drinks/bottle/gin,/turf/unsimulated/floor{dir = 2; icon_state = "wood"},/area/syndicate_mothership) +"qv" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/centcom/evac) "qw" = (/obj/machinery/door/airlock/multi_tile/glass{name = "Equipment Room"; opacity = 0; req_access_txt = "150"},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/syndicate_mothership) +"qx" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; initialize_directions = 10},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (EAST)"; icon_state = "whiteblue"; dir = 4},/area/centcom/evac) +"qy" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 1; name = "Connector Port (Air Supply)"},/obj/machinery/portable_atmospherics/canister/oxygen{name = "Canister: \[O2] (CRYO)"},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHWEST)"; icon_state = "whiteblue"; dir = 10},/area/centcom/evac) +"qz" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/centcom/evac) +"qA" = (/obj/machinery/atmospherics/unary/portables_connector{dir = 1; name = "Connector Port (Air Supply)"},/obj/machinery/portable_atmospherics/canister/oxygen{name = "Canister: \[O2] (CRYO)"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/centcom/evac) +"qB" = (/obj/machinery/atmospherics/unary/cold_sink/freezer{dir = 1},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHEAST)"; icon_state = "whiteblue"; dir = 6},/area/centcom/evac) +"qC" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/adv,/obj/item/weapon/storage/firstaid/brute,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/centcom/evac) "qD" = (/turf/unsimulated/floor{dir = 2; icon_state = "stage_stairs"},/area/syndicate_mothership) "qE" = (/obj/machinery/mech_bay_recharge_port/upgraded,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/unsimulated/floor,/area/syndicate_mothership) "qF" = (/turf/simulated/floor/mech_bay_recharge_floor,/area/syndicate_mothership) "qG" = (/obj/machinery/computer/mech_bay_power_console,/turf/unsimulated/floor,/area/syndicate_mothership) "qH" = (/obj/machinery/vending/tool,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/syndicate_mothership) +"qI" = (/turf/unsimulated/wall,/area/centcom/suppy) +"qJ" = (/obj/structure/stool/bed,/turf/unsimulated/floor{name = "plating"},/area/centcom) +"qK" = (/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{icon_state = "platingdmg3"},/area/centcom) "qL" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/syndicate_mothership) "qM" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/syndicate_mothership) +"qN" = (/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{name = "plating"},/area/centcom) +"qO" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{name = "plating"},/area/centcom) +"qP" = (/obj/effect/decal/cleanable/blood,/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{name = "plating"},/area/centcom) +"qQ" = (/obj/structure/stool/bed,/turf/unsimulated/floor{icon_state = "floorscorched2"},/area/centcom) +"qR" = (/obj/effect/landmark{name = "prisonwarp"},/turf/unsimulated/floor{name = "plating"},/area/centcom) +"qS" = (/turf/unsimulated/floor{icon_state = "floorgrime"},/area/centcom) +"qT" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{name = "plating"},/area/centcom) +"qU" = (/turf/unsimulated/floor{icon_state = "panelscorched"},/area/centcom) +"qV" = (/turf/unsimulated/floor{name = "plating"},/area/centcom) +"qW" = (/turf/unsimulated/floor{icon_state = "platingdmg3"},/area/centcom) "qX" = (/turf/unsimulated/wall/fakeglass{dir = 8; icon_state = "fakewindows3"; tag = "icon-fakewindows (WEST)"},/area/syndicate_mothership) +"qY" = (/turf/unsimulated/wall{desc = "The door appears to be locked tightly."; icon = 'icons/obj/doors/Doorhatchele.dmi'; icon_state = "door_closed"; name = "Locked Door"},/area/centcom) +"qZ" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/unsimulated/wall/fakeglass{dir = 8; icon_state = "fakewindows3"; tag = "icon-fakewindows (WEST)"},/area/centcom) +"ra" = (/turf/unsimulated/floor{icon_state = "dark"},/area/centcom) +"rb" = (/obj/machinery/camera{c_tag = "CentComm Special Ops. Bathroom"; dir = 2; network = list("ERT","CentComm")},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom) +"rc" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom) +"rd" = (/obj/effect/landmark{name = "prisonwarp"},/turf/unsimulated/floor{icon_state = "panelscorched"},/area/centcom) "re" = (/obj/structure/closet/syndicate/personal,/turf/unsimulated/floor{icon_state = "vault"; dir = 8},/area/syndicate_mothership) "rf" = (/obj/structure/table,/obj/item/weapon/gun/energy/ionrifle,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/syndicate_mothership) +"rg" = (/obj/effect/decal/cleanable/cobweb,/obj/effect/landmark{name = "prisonwarp"},/turf/unsimulated/floor{name = "plating"},/area/centcom) +"rh" = (/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{icon_state = "platingdmg1"},/area/centcom) +"ri" = (/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{icon_state = "floorscorched2"},/area/centcom) +"rj" = (/obj/structure/rack,/obj/item/weapon/implanter/adrenalin{pixel_x = 12; pixel_y = -12},/obj/item/weapon/implanter/emp{pixel_x = 9; pixel_y = -9},/obj/item/weapon/implanter/explosive{pixel_x = 6; pixel_y = -6},/obj/item/weapon/implanter/explosive_macro{pixel_x = 3; pixel_y = -3},/obj/item/weapon/implanter/freedom,/obj/item/weapon/implanter/krav_maga{pixel_x = -9; pixel_y = 9},/obj/item/weapon/implanter/mindshield{pixel_x = -6; pixel_y = 6},/obj/item/weapon/implanter/storage{pixel_x = -3; pixel_y = 3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) "rE" = (/turf/unsimulated/wall,/area/start) "rH" = (/obj/effect/landmark/start,/turf/unsimulated/floor,/area/start) "rK" = (/turf/unsimulated/wall/splashscreen,/area/start) @@ -808,7 +898,6 @@ "sa" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) "sb" = (/turf/simulated/floor/plasteel{tag = "icon-stage_stairs"; icon_state = "stage_stairs"},/area/shuttle/gamma/space) "se" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plasteel{tag = "icon-stage_stairs"; icon_state = "stage_stairs"},/area/shuttle/gamma/space) -"sf" = (/obj/machinery/door/airlock/hatch/gamma{locked = 1; req_access_txt = "1"; use_power = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/space) "sg" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) "sm" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/structure/table/reinforced,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/shuttle/gamma/space) "sq" = (/turf/unsimulated/wall,/area/centcom/control) @@ -868,7 +957,6 @@ "tw" = (/obj/machinery/mass_driver{dir = 8; drive_range = 50; id_tag = "ASSAULT2"; name = "gravpult"},/turf/unsimulated/floor{icon_state = "bot"},/area/centcom/specops) "tx" = (/obj/machinery/door/airlock/centcom{name = "Commander Quarters"; opacity = 1; req_access_txt = "114"},/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/centcom/control) "ty" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "bar"; dir = 2},/area/centcom/control) -"tz" = (/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/control) "tA" = (/obj/machinery/computer/pod/deathsquad,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "tB" = (/obj/structure/table,/turf/unsimulated/floor{dir = 9; icon_state = "carpetside"},/area/centcom/control) "tC" = (/turf/unsimulated/floor{dir = 1; icon_state = "carpetside"},/area/centcom/control) @@ -882,8 +970,6 @@ "tK" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/turf/unsimulated/floor{dir = 10; icon_state = "carpetside"},/area/centcom/control) "tL" = (/turf/unsimulated/floor{dir = 2; icon_state = "carpetside"},/area/centcom/control) "tM" = (/turf/unsimulated/floor{dir = 6; icon_state = "carpetside"},/area/centcom/control) -"tN" = (/turf/unsimulated/floor{dir = 2; icon_state = "carpetsymbol"},/area/centcom/control) -"tO" = (/obj/structure/table,/obj/item/weapon/card/id/centcom,/obj/machinery/light/spot{tag = "icon-tube1 (EAST)"; icon_state = "tube1"; dir = 4},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/centcom/control) "tQ" = (/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/control) "tR" = (/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/control) "tS" = (/turf/unsimulated/floor{icon_state = "greencorner"; dir = 4},/area/centcom/control) @@ -908,8 +994,6 @@ "ul" = (/obj/effect/landmark{name = "Response Team"},/obj/effect/landmark{name = "Commando"},/obj/machinery/camera{c_tag = "CentComm Special Ops. Starting Room"; dir = 2; network = list("ERT","CentComm")},/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "um" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/obj/item/device/radio/intercom/specops{pixel_y = 25},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "un" = (/turf/unsimulated/wall/fakeglass{dir = 8; icon_state = "fakewindows3"; tag = "icon-fakewindows (WEST)"},/area/centcom/specops) -"uo" = (/turf/unsimulated/floor{icon_state = "asteroid6"; name = "sand"},/area/centcom/specops) -"up" = (/obj/structure/extinguisher_cabinet,/turf/unsimulated/wall,/area/centcom/specops) "uq" = (/obj/machinery/door/airlock/centcom{name = "Special Operations"; opacity = 1; req_access_txt = "109"},/turf/unsimulated/floor{icon_state = "vault"; dir = 8},/area/centcom/specops) "ur" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 8},/area/centcom/specops) "us" = (/obj/structure/stool/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) @@ -923,7 +1007,6 @@ "uA" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (WEST)"; icon_state = "fakewindows"; dir = 8},/area/centcom/specops) "uB" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows2 (WEST)"; icon_state = "fakewindows2"; dir = 8},/area/centcom/specops) "uC" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (EAST)"; icon_state = "fakewindows"; dir = 4},/area/centcom/specops) -"uD" = (/obj/structure/window/reinforced,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "uE" = (/turf/unsimulated/floor{icon_state = "greencorner"; dir = 1},/area/centcom/control) "uF" = (/obj/structure/table/reinforced,/obj/item/device/radio/intercom/specops,/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/control) "uG" = (/obj/item/device/radio/intercom/specops{pixel_y = 25},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/control) @@ -941,7 +1024,6 @@ "uS" = (/obj/machinery/camera{c_tag = "CentComm Special Ops. Ready Room East"; dir = 8; network = list("ERT","CentComm")},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "uT" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/turf/unsimulated/wall/fakeglass{dir = 8; icon_state = "fakewindows3"; tag = "icon-fakewindows (WEST)"},/area/centcom/specops) "uU" = (/obj/machinery/door/airlock/centcom{name = "Special Operations Command"; opacity = 1; req_access_txt = "114"},/turf/unsimulated/floor{icon_state = "vault"; dir = 8},/area/centcom/specops) -"uV" = (/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "uW" = (/obj/structure/urinal,/turf/unsimulated/wall,/area/centcom/specops) "uX" = (/obj/structure/stool/bed/chair/comfy/black{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "va" = (/obj/structure/table/reinforced,/obj/effect/landmark{name = "Commando_Manual"},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) @@ -953,9 +1035,7 @@ "vg" = (/obj/structure/stool/bed/chair/office/dark,/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/control) "vh" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/control) "vi" = (/obj/machinery/computer/med_data,/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/control) -"vj" = (/obj/structure/toilet{dir = 4},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) "vk" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) -"vl" = (/obj/effect/decal/cleanable/vomit{name = "urine"},/obj/machinery/camera{c_tag = "CentComm Special Ops. Bathroom"; dir = 2; network = list("ERT","CentComm")},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) "vm" = (/obj/structure/table/reinforced,/obj/item/ashtray/glass{icon_state = "ashtray_half_gl"},/obj/item/weapon/cigbutt/cigarbutt{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "vn" = (/obj/machinery/door/poddoor/shutters{dir = 8; id_tag = "specopsoffice"; name = "Privacy Shutters"},/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows2 (NORTH)"; icon_state = "fakewindows2"; dir = 1},/area/centcom/specops) "vo" = (/turf/unsimulated/floor{dir = 9; icon_state = "carpetside"},/area/centcom/specops) @@ -973,14 +1053,10 @@ "vA" = (/obj/structure/table/woodentable{dir = 9},/obj/item/ashtray/glass{icon_state = "ashtray_half_gl"},/turf/unsimulated/floor{dir = 8; icon_state = "carpetside"},/area/centcom/specops) "vB" = (/obj/machinery/computer/security/telescreen{name = "Special Ops. Monitor"; desc = "Used for watching the Special Ops."; network = list("ERT")},/obj/structure/table/woodentable{dir = 5},/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/specops) "vC" = (/obj/structure/table/woodentable{dir = 5},/obj/item/device/radio/intercom/specops,/turf/unsimulated/floor{dir = 4; icon_state = "carpetside"},/area/centcom/specops) -"vE" = (/obj/machinery/telecomms/server/presets/centcomm,/turf/unsimulated/floor{icon_state = "green"; dir = 9},/area/centcom/control) "vF" = (/obj/machinery/door/airlock/centcom{name = "Telecommunications"; opacity = 1; req_access_txt = "107"},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/control) -"vG" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{dir = 4; pixel_x = -32; pixel_y = 0},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) -"vH" = (/obj/item/device/radio/intercom/specops{pixel_y = -28},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) "vI" = (/obj/machinery/camera{c_tag = "CentComm Special Ops. Ready Room South"; dir = 1; network = list("ERT","CentComm")},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "vJ" = (/obj/machinery/newscaster{layer = 3.3; pixel_x = 0; pixel_y = -27},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "vL" = (/obj/item/device/radio/intercom/specops{pixel_y = -28},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) -"vM" = (/obj/structure/table/woodentable{dir = 10},/obj/machinery/door_control{desc = "A remote control switch to block view of the singularity."; icon_state = "doorctrl0"; id = "SPECOPS"; name = "Ready Room"; pixel_y = 16; req_access_txt = "114"},/obj/machinery/door_control{desc = "A remote control switch to block view of the singularity."; icon_state = "doorctrl0"; id = "ASSAULT"; name = "Assault Armor"; pixel_y = -4; req_access_txt = "114"},/obj/machinery/door_control{desc = "A remote control switch to block view of the singularity."; icon_state = "doorctrl0"; id = "specopsoffice"; name = "Privacy Shutters"; pixel_y = 6; req_access_txt = "114"},/turf/unsimulated/floor{dir = 8; icon_state = "carpetside"},/area/centcom/specops) "vP" = (/obj/structure/stool/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "grimy"},/area/centcom/specops) "vQ" = (/obj/machinery/telecomms/processor/preset_cent,/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/control) "vS" = (/obj/machinery/newscaster/security_unit{pixel_x = -32},/turf/unsimulated/floor{icon_state = "grimy"},/area/centcom/specops) @@ -1034,8 +1110,6 @@ "xI" = (/obj/machinery/door/airlock/centcom{name = "Unit 2"; opacity = 1; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) "xJ" = (/obj/machinery/door/poddoor{id_tag = "CentComPort"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/evac) "xK" = (/obj/structure/table,/obj/machinery/door/window/southleft{name = "security checkpoint"; req_access_txt = "104"},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/evac) -"xL" = (/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) -"xM" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/unsimulated/floor{icon_state = "grass1"; name = "grass"},/area/centcom/evac) "xR" = (/obj/machinery/door/airlock/centcom{name = "Bathroom"; opacity = 1; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/evac) "xS" = (/turf/unsimulated/floor{icon_state = "green"; dir = 1},/area/centcom/evac) "xW" = (/obj/machinery/door/airlock/centcom{name = "Unit 1"; opacity = 1; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) @@ -1417,13 +1491,13 @@ ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapap ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdkdjdjdjdlbsbqbObqbqbqbsbPbQbPbQbPbsbIbIbIbIbIbsbxbxbxbxbxbsbybybybybybsbzbzbzbzbzbsbLbMbMbMbNbD ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdkdjdjdjdlbsbqbqbRbSbqbsbTbTbTbTbTbsbUbUbUbUbVbsbxbxbxbxbxbsbybybybybybsbzbzbzbzbzbsbLbMbMbMbNbD ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdndmdmdmdrbscabqbqbqbqbscbcccdcccebscfcgchcicfbsbxbxbJbxbxbsbybybybybybsbzbzbzbzbzbsbLbMbMbMbNbD -ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNcocococococococococococococococoaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdxdvdvdvdybsbqcabqbqctbscucccdcccvbscfcwcxcycfbsbxbxbJbxbxbsbybybybybybsbzbzbzbzbzbsczbMbMbMcAbD -ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNcRcScTcocScUcocScVcocWcXcocScUcoaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdzdjdjdjdAbsbqbEcabqbRbsbTbTbTbTbTbsdbcwcxcydbbsbxbxbxbxbxbsbybybybybybsbzbzbzbzbzbsczbMbMbMcAbD -ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNcododpcodocXcododqcodocUcodocTcoaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdzdjdjdjdAbsbqbqbqcabqbsdsdtdsdtdsbsducwcxcydubsbxbxbxbxbxbsbybybybybybsbzbzbzbzbzbsczbMbMbMcAbD -ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapaparapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNcocococococococococococococococoaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdzdjdjdjdAbsbqdGbqbqcabsbGbHbGbHbGbsducwcxcydubsbxbJbxbJbxbsbybybybybybsbzbKbzbKbzbsczbMbMbMcAbD -ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNcocSdpcodKcTcocScTcodLcUcocScXcoaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdCdBdBdBdDbsbRbqdNbqbEbsbtbubtbubtbsdOdPdQdRdObsbxbxbxbxbxbsbybybybybybsbzbzbzbzbzbsdSdTdTdTdUbD -ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNcodocTcodocUcodocUcodoedcodoeecoaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNhyhzhzhzhzhzbZejejejejejbZejejejejejbZejejejejejbZekekekekekbZekekekekekbZekekekekekbZekekekekekel -ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNcocococococococococococococococoaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpeneoepeneobseqeqeqeqeqbserererererbseseseteueubsevevevevevbsewexexexeybsezeAeAeAeBbD +ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdxdvdvdvdybsbqcabqbqctbscucccdcccvbscfcwcxcycfbsbxbxbJbxbxbsbybybybybybsbzbzbzbzbzbsczbMbMbMcAbD +ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdzdjdjdjdAbsbqbEcabqbRbsbTbTbTbTbTbsdbcwcxcydbbsbxbxbxbxbxbsbybybybybybsbzbzbzbzbzbsczbMbMbMcAbD +ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdzdjdjdjdAbsbqbqbqcabqbsdsdtdsdtdsbsducwcxcydubsbxbxbxbxbxbsbybybybybybsbzbzbzbzbzbsczbMbMbMcAbD +ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapaparapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdzdjdjdjdAbsbqdGbqbqcabsbGbHbGbHbGbsducwcxcydubsbxbJbxbJbxbsbybybybybybsbzbKbzbKbzbsczbMbMbMcAbD +ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpdCdBdBdBdDbsbRbqdNbqbEbsbtbubtbubtbsdOdPdQdRdObsbxbxbxbxbxbsbybybybybybsbzbzbzbzbzbsdSdTdTdTdUbD +ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNhyhzhzhzhzhzbZejejejejejbZejejejejejbZejejejejejbZekekekekekbZekekekekekbZekekekekekbZekekekekekel +ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpeneoepeneobseqeqeqeqeqbserererererbseseseteueubsevevevevevbsewexexexeybsezeAeAeAeBbD ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckbockckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpeoepeneoepbseqeDeqeqeqbsereEeFeGerbseHeHeIeJeJbseveKeveLevbseMeNeNeNeObsePeQeQeQeRbD ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapavapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpepeneoepenbseqeqeqeXeqbsereYeYeYerbseHeZeZeZeJbsevevevevevbseMeNeNeNeObsePeQeQeQeRbD ckckckckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNapapapapapapapapapapapapapapapapapapapapapapapapaNckckckckckckckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckaNckckckckckckckckckckckckckckckckckckckckckckckckaNaNaNaNaNaNaNfffffffffffgfgfhfififjfgfgfgfgfgfgfgfgfgfkfgfgfgaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbpeneoepeneobseqeqeqeqeqbserererererbseHeIeIeIeJbsevevevevevbseMeNeNeNeObsePeQeQeQeRbD @@ -1507,13 +1581,13 @@ aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaq aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjabaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNoDaeababnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjabaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNalabababnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjabaNaNaNaNaNabaNaNaNaNaNabaNaNaNaNaNalabababnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNbZbZbZbZbZbZbZbZaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjabaNaNaNaNaNabaiaNaNaNaiabaNaNaNaNaNalabababnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNbZcYeWderVfdfebZaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjabaiaNaNaNaiabababababababaiaNaNaNaiababaeabnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNbZflfmrXrXrXrXbZaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjababababababababababababababababababababababnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNbZsasesbsbsafnbZaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNsffofqfpsgsgsgbZaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNbZfrfEfssmfFjHbZaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNbZbZbZbZbZbZbZbZaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjabaNaNaNaNaNabaiaNaNaNaiabaNaNaNaNaNalabababnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjabaiaNaNaNaiabababababababaiaNaNaNaiababaeabnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjababababababababababababababababababababababnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjnjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN @@ -1537,77 +1611,77 @@ aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsqsqsqsqsqsysEmnsMsNmnsEsEsOmosqsQsQsQsQsqsRsSsTsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsvsEsEsEsEsEsEsEsEsysysqsQsUsVsVsqsqsWsqsqdVaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsqaNaNaNsvsEsEsEsEsEsEsEsEsEsEsusQmpmpsQsQsQsQsZsqsqdVaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXtatbtctdtdtesqsqsqsqsqsEsEmnsMsCmnsEsEsEsEsEsQsQsQsQtfsQsQtgsqsqsqdVaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNthtitititititititititjtktitititjtltmtntdtdtdsqsrssstsqtosEmnsMtpmnsEsEsEsEsutqsQsQsQtrsQsQtssqsqsqsqdVaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXtatttutdtdtdsqswsssssxsEsEsEsEsEsEsEsEsEsEsqsusususususususqsqdWdXsqsqsqsqsqsqsqsqsqsqsqsqsqdVaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNthtitititititititititvtktitititvtwtmtntdtdtdsqsqsqsqsqsqsqtxsqsqsqsqsEsEtysqtztztztztztztzsudZdYebeasuecefefefefefegefefefeheiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXtatttutdtdtAsqtBtCtDsqtEtFtFtFtFtGsqsEsEtHsqtztztztztztztzsufbfatLfcsuemeCeCeCeCeCeCeCeCeCeSeiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNthtitititititititititItktitititItJtmtntdtdtdsqtKtLtMtNtFtFtFtFtFtOsqsusxsusqsusususususususqsqfLsqsqsqsqsqsqsqsqsqsqsqsqsqsqfXaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXtatttutdtdtdsqsqsususqsqsqsususususqtQtRtStTtTtTtTtTtTtTtTtTuEtRtZsqfXaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNthtitititititititititVtktitititVtWtXtYtdtdtdsqtztztztztztztztztztzsqtQtRtRtRtRtRtRtRtRtRtRtRtRtRtZsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXuaubsXsqsqsqsqsqsqsqsXsXsXsXsqtQtRucudududududududududuetRtZsqaNaNoeodododododododofaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXufuguguhuiujujujsXukukukukulukumunuououosqtQtRtZsususususususususutQtRtZsqaNaNohogojoioioioiokohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNupujujujujujujujujuqururururururussXsXsXsXsqtQtRtZsuutuuuvuwuxuyuzsutQtRtZsqaNaNohogogogogogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNupujujujujujujujujsXuAuBuBuBuBuBuCsXuDuDuDsquEtRtSsuuFtRuGuHtRtRtRsuuEtRtZsqsqsqohogogogogogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXujujujuIuIujujujuJuKuKuKuKuKuKuKuLuKuKuKuMtRtRtRuNtRtRtRtRtRtRtRuNtRtRtZoltRolomogogogogogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXujujuOuPuQuRujuSsXsXuTuUuTsXsXunsXuVuVuVsquetRucsutRtRtRtRtRtRtRsuuetRtZsqsqsqohogogogogogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXuWsXsXujuXuRooonvavbujvcvdvdvdvdvesXuosXsXsXsXsqtQtRtZsuvfuuvgvgvgvhvisutQtRtZsqaNaNohogogogogogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXvjvkvlsXujujvauRvmuRujujvnvdvovpvqvdsXsXsXvrtTtUsqtQtRtZsqsqvsvtvuvvvwsqsqtQtRtZsqaNaNohogogogopogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXvkvkvkvxujujujvyvyujujujvzvdvAvBvCbesXvEtTuEtRtRvFtRtRtZsqsqsusususususqsqtQtRtZsqaNaNoqodododododododoraNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXvGvHsXvIvJujujujujvLujsXvdvMmjeTvPsXvQtRtRtRtZsutQtRtStTtTtTtTtTtTtTtTtTuEtRtZsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXbfbfsXsXsXvSvTvUvVvdsXvWtRtRtRvXsutQtRtRtRtRtRtRtRtRtRtRtRtRtRtZsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwbwcwdwbwesXiDwgwhwiwjsXwkudududwlsuwmudududududuetRucudududududwnsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwrwswtwrwesXsXsXsXsXsXsXsqsqsqsqsqsqsqsqsqsqsqsqsqwusqsqsqsqsqsqsqsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwCwDwEwFwGwCwHwIwJwKwLwMwNwOwPwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwCwCwCwIwIwIwIwIwIwKxcxdxexdxfwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbgsXaNaNaNaNaNwCwDxlwIwIwIwIwIwIwKxmxnwNxoxfwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwCwCwCwIxxwCwHwIwJwKxyxzxAxzxzwKwKwKwKwKwKwKwKwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbYbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwCwDxIwIxxwCwCwCwKwKxJxzxKxzwLwPxzxLxLxMxLxLxMwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwCwCwCwIwIwIwIwIxRwLxSxSxSxSwMxfxdxLwKxzxzxzxzxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwCwDxWwIwIwIwIwIxRxmxXxYwNxXxYxfxdxLwKxZxZxZwNcnytcnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyaybycydyeaNazaNaNaNaAaNyaybycydyeaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwCwCwCyfyfyfyfyfwKxmxXxYwNxXxYxfxzxLwKwNwNwNygxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiyjyjyjykylaBylylylaBylyoyjyjyjyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNxdxmxXxYwNxXxYxfypxdwKyqwNwNyrcnytcncDaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiyvyvywyxyyyNyAyByCyNyyyEyFyvyvyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNxdxmxXxYwNxXxYxfyGytyGwNwNwNyHxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiyvyvyKyLyMyNyMyOyMyNyMyPyKyvyvyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKxyyQyQyQyRwNxfypxdwKyqwNwNwNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNySyFyvyTyMyNyNyNyNyNyNyNyMyTyvywyUaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKwKwKwKxdxdwKwKxmwNxfxdxLwKwNwNwNwNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNySylyoyWyXyYyZyNzazbyNzcykylyUaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXsXsXsXsXsXtatbtctdtdtesqsqsqsqsqsEsEmnsMsCmnsEsEsEsEsEsQsQsQsQtfsQsQtgsqsqsqdVaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNthtitititititititjtktitititjtltmtntdtdtdsqsrssstsqtosEmnsMtpmnsEsEsEsEsutqsQsQsQtrsQsQtssqsqsqsqdVaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXsXsXsXsXsXtatttutdtdtdsqswsssssxsEsEsEsEsEsEsEsEsEsEsqsusususususususqsqdWdXsqsqsqsqsqsqsqsqsqsqsqsqsqdVaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNthtitititititititvtktitititvtwtmtntdtdtdsqsqsqsqsqsqsqtxsqsqsqsqsEsEtysqcScRcUcTcWcVcXsudZdYebeasuecefefefefefegefefefeheiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXsXsXsXsXsXtatttutdtdtAsqtBtCtDsqtEtFtFtFtFtGsqsEsEtHsqdodedqdpdLdKdesufbfatLfcsuemeCeCeCeCeCeCeCeCeCeSeiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNthtitititititititItktitititItJtmtntdtdtdsqtKtLtMedtFtFtFtFtFeesqsusxsusqsusususususususqsqfLsqsqsqsqsqsqsqsqsqsqsqsqsqsqfXaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXsXsXsXsXsXtatttutdtdtdsqsqeWeVsqeWeVsqsqsqsqsqtQtRtStTtTtTtTtTtTtTtTtTuEtRtZsqfXaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNthtitititititititVtktitititVtWtXtYtdtdtdsXaNaNaNaNaNaNsXfecoflsqtQtRtRtRtRtRtRtRtRtRtRtRtRtRtZsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNfmfmfmfmfmfmfmfmfmfmsXsXsXsXsXsXuaubsXsXsXsXsXsXsXsXsXfeujflsqtQtRucudududududududududuetRtZsqaNaNoeodododododododofaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNfmfofnfqfpfsfrfnfEfmufuguguhuiujujujsXukukukukulukumunfeujflsqtQtRtZsususususususususutQtRtZsqaNaNohogojoioioioiokohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNfmfmfmfmfmfmfmfmjHfFkdkdkdkdfFlZmdujujujujujujujujuqururururururussXfeujflsqtQtRtZsuutuuuvuwuxuyuzsutQtRtZsqaNaNohogogogogogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNfmcYoFoErVoGoJfmoKkdkdkdkdkdkdoLmdujujujujujujujujsXuAuBuBuBuBuBuCsXsXoMsXsquEtRtSsuuFtRuGuHtRtRtRsuuEtRtZsqsqsqohogogogogogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNfmoNoPrXrXrXrXfdoUoToToToToToToVfdujujujuIuIujujujuJuKuKuKuKuKuKuKuLuKuKuKuMtRtRtRuNtRtRtRtRtRtRtRuNtRtRtZoltRolomogogogogogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNfmsasesbsbsaoWfmfmfmfmfmfmfmfmfmfmujujuOuPuQuRujuSsXsXuTuUuTsXsXoXsXoZoYpbsquetRucsutRtRtRtRtRtRtRsuuetRtZsqsqsqohogogogogogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNfmpfphpgsgsgsgfmaNaNaNaNaNaNaNaNsXujuXuRooonvavbujvcvdvdvdvdvesXuKsXsXsXsXsqtQtRtZsuvfuuvgvgvgvhvisutQtRtZsqaNaNohogogogogogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNfmpipkpjsmpnpofmaNaNaNaNsXuWuWsXsXujujvauRvmuRujujvnvdvovpvqvdsXuKsXvrtTtUsqtQtRtZsqsqvsvtvuvvvwsqsqtQtRtZsqaNaNohogogogopogogogohaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNfmfmfmfmfmfmfmfmaNaNaNaNsXvkvkpqprujujujvyvyujujujvzvdvAvBvCbesXuKsqpstRtRvFtRtRtZsqsqsusususususqsqtQtRtZsqaNaNoqodododododododoraNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXvkvkvksXvIvJujujujujvLujsXvdoSmjeTvPsXuKsqvQtRtZsutQtRtStTtTtTtTtTtTtTtTtTuEtRtZsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXvkpBsXsXsXsXsXsXbfbfsXsXsXvSvTvUvVvdsXuKsqvWtRvXsutQtRtRtRtRtRtRtRtRtRtRtRtRtRtZsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXvkpBsXaNaNaNaNwbwcwdwbwesXiDwgwhwiwjsXuKsqwkudwlsuwmudududududuetRucudududududwnsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXvxsXsXaNaNaNaNwrwswtwrwesXsXsXsXsXsXsXoXsqsqsqsqsqsqsqsqsqsqsqsqwusqsqsqsqsqsqsqsqaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXvkvksXaNaNaNaNaNaNaNaNaNaNaNsXpEujuTujujwCwDwEwFwGwCwHwIwJwKwLwMwNwOwPwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXvkpGsXaNaNaNaNaNaNaNaNaNaNaNsXujujpHujujwCwCwCwIwIwIwIwIwIwKxcxdxexdxfwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXaNaNaNaNaNaNaNaNaNaNbgsXsXsXsXujuSwCwDxlwIwIwIwIwIwIwKxmxnwNxoxfwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXaNaNaNaNaNaNaNaNaNaNaNsXpEujuTujujwCwCwCwIxxwCwHwIwJwKxyxzxAxzxzwKwKwKwKwKwKwKwKwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbYbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXaNaNaNaNaNaNaNaNaNaNaNsXujujpHujujwCwDxIwIxxwCwCwCwKwKxJxzxKxzwLwPxzpJpIpLpKpNpMwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXujujwCwCwCwIwIwIwIwIxRwLxSxSxSxSwMxfxdpOwKxzxzxzxzxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXpEujuTujujwCwDxWwIwIwIwIwIxRxmxXxYwNxXxYxfxdpPxzxZxZxZwNcnytcnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyaybycydyeaNazaNaNaNaAaNyaybycydyeaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXujujpHujujwCwCwCyfyfyfyfyfwKxmxXxYwNxXxYxfxzpJxzwNwNwNygxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiyjyjyjykylaBylylylaBylyoyjyjyjyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXujujpQsXaNaNaNaNaNaNxdxmxXxYwNxXxYxfypxdwKyqwNwNyrcnytcncDaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiyvyvywyxyyyNyAyByCyNyyyEyFyvyvyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXpEujuTujujpYsXaNaNaNaNaNaNxdxmxXxYwNxXxYxfyGytyGwNwNwNyHxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiyvyvyKyLyMyNyMyOyMyNyMyPyKyvyvyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXujujpHujujpQsXaNaNaNaNaNaNwKxyyQyQyQyRwNxfypxdwKyqwNwNwNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNySyFyvyTyMyNyNyNyNyNyNyNyMyTyvywyUaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNsXsXsXsXsXsXsXsXaNaNaNwKwKwKwKxdxdwKwKxmwNxfxdpZwKwNwNwNwNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNySylyoyWyXyYyZyNzazbyNzcykylyUaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKzdzezfmqzezewKxmwNxfypxdwKyqwNwNwNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyizhzizjzkyNzazbyNyyyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKzlzezmmqzezeznxmwNxfyGytyGwNwNwNygxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyizqzrzryZyNzazbyNyMyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKztzezumqzezewKxyyQzvwKwKwKyqwNwNyrcnytcnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyizxzrzrzyyNyMyMyNyNaBaCaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKztzezezezezewKwKzBwKwKxLwKwNwNwNyHxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNykylylylyoyNzazbyNzHyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjcjcjcjcjcjcjcjcjcjcjcjcjcjcjytytytwKxLwKxZxZxZwNcnytcnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyizOzOzPzQyNzazbyNzRyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjcpcpcpcpcpcpcpcpcpcpcpcpcpcqytytytwKxLwKxzxzxzxzxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNzVzWzWzWzXyNzazbyNyMyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjcpcraNaNaNaNaNaNaNaNaNcrcpcsytytytwKxLxLxLxLxLxLwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyinozWzWAlyNyNyNyNyNaBaDaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjcraNaNaNaNaNaNaNaNaNaNaNcCcBytytytwKwKwKwKwKwKwKAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiADzWzWzQyNyMyMyMyPyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjaNaNaNaNaNaNaNaNaNaNaNcEcGcFytytytcHwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyinozWzWzXyNAMANAOyyyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjcraNaNaNaNaNaNaNaNaNaNaNcCcIytytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNySAXAXylylAYylylAXAXyUaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjcpcraNaNaNaNaNaNaNaNaNcrcpcsytytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNySyoBbzayNzbBcykyUaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjcpcpcpcpcpcpcpcpcpcpcpcpcpcJytytytcKwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiAMyMBeyMBfyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNbZwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKcLcLwKwKwKwKwKwKwKwKwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiBhBiBjBkBlyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwAwAwAwAwAwAwAwAwwKytytytcraNaNaNaNaNcMaNaNaNaNcrytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNySBqBrBrBrBsyUaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKytytcraNaNaNaNaNaNaNaNaNaNaNaNaNcrytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKytcraNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcrwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKcraNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWcNbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcrwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKcraNaNaNaNaNaNaNaNaNaNaNaNaNaNytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNdwAwwKytaNaNaNaNaNaNaNaNaNaNaNaNaNaNytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKcraNaNaNaNaNaNaNaNaNaNaNaNaNaNytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcrwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKcraNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwaNaNaNaNaNaNaNAwwKytcraNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcrwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNAwAwAwAwAwAwAwAwAwwKytytcraNaNaNaNaNaNaNaNaNaNaNaNaNcrytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKztzezezezezewKwKzBwKwKqaxzwNwNwNyHxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNykylylylyoyNzazbyNzHyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjcjcjcjcjcjcjcjcjcjcjcjcjcjcjytytytwKpIxzxZwNxZwNcnytcnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyizOzOzPzQyNzazbyNzRyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjcpcpcpcpcpcpcpcpcpcpcpcpcpcqytytytwKpMwKxzwNxzxzxzxzxzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNzVzWzWzWzXyNzazbyNyMyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNHjHjHjHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcjcpcraNaNaNaNaNaNaNaNaNcrcpcsytytytwKpLqbqcwNqcpIwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyinozWzWAlyNyNyNyNyNaBaDaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNHjHxHyHyHyHyHzHjHjHjHjHjHjHjHjHkHkHjHjHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNcjcraNaNaNaNaNaNaNaNaNaNaNcCcBytytytwKwKwKwKqdwKwKwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiADzWzWzQyNyMyMyMyPyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNHjHxHyHyHyHyHzHjHEHFHGHFHHHIHJHJHJHIHHHJHHHJHKHjaNaNaNaNaNaNaNaNaNaNaNaNcjaNaNaNaNaNaNaNaNaNaNaNcEcGcFytytytcHwKqeqlqkqkqmwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyinozWzWzXyNAMANAOyyyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNHjHRHyHyHyHyHSHjHJHTHTHTHTHTHJHJHJHTHTHTHTHTHUHjaNaNaNaNaNaNaNaNaNaNaNaNcjcraNaNaNaNaNaNaNaNaNaNaNcCcIytytytytwKqnqpqoqoqqwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNySAXAXylylAYylylAXAXyUaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNHjHRHXHYHYHyHyHZHJHJHJIaHJHJHJHJHJHJHJIaHJHJHJHjaNaNaNaNaNaNaNaNaNaNaNaNcjcpcraNaNaNaNaNaNaNaNaNcrcpcsytytytytwKqnqvqsqsqxwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNySyoBbzayNzbBcykyUaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNHjHjHjHjHjHjHjHjHJHTHTHTHTHTHJHJHJHTHTHTHTHTHJHjHjHjHjHjHjHjaNaNaNaNaNaNcjcpcpcpcpcpcpcpcpcpcpcpcpcpcJytytytcKwKqyqAqzqCqBwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiAMyMBeyMBfyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNHjdHdHdHdHdHHjIdIeIeIeIeIeIeIeIeIeIeIeIeIeIfHjdIdIdIdIdIHjaNaNaNaNaNaNcjcjcjcjcjcjcjcjcjcjcjcjcjcjcjwKcLcLwKwKwKwKwKwKwKwKwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNyiBhBiBjBkBlyiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNHjHjHjIhIhIhIhIhjajbjcjcjcjcjcjcjcjcjcjcjcjcjcjbjaIhIhIhIhIhHjHjHjaNaNqIqIqIqIqIqIqIqIqIwKytytytcraNaNaNaNaNcMaNaNaNaNcrytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNySBqBrBrBrBsyUaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNHjIiIjIkIkIkIkIkIlImjcjcjcjcjcjcjcjcjcjcjcjcjcInIlIoIoIoIoIoIjIpHjaNaNqIaNaNaNaNaNaNaNqIwKytytcraNaNaNaNaNaNaNaNaNaNaNaNaNcrytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNHjIiIjIkIrIkIrIkIlImjcjcjcjcjcjcjcjcjcjcjcjcjcInIlIoIsIoIsIoIjIpHjaNaNqIaNaNaNaNaNaNaNqIwKytcraNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcrwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNHjIiIjIkIkIvIkIkIlImjcjcjcjcjcIwIxIwjcjcjcjcjcInIlIoIoIyIoIoIjIpHjaNaNqIaNaNaNaNaNaNaNqIwKcraNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWcNbWbWbWbWbWbWbWbWbWbWbWaNaNaNHjIiIjIkIrIkIrIkIlImjcjcjcjcjcIwIzIwjcjcjcjcjcInIlIoIsIoIsIoIjIpHjaNaNqIaNaNaNaNaNaNaNqIwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNHjIiIjIkIkIkIkIkIlImjcjcjcjcjcjcjcjcjcjcjcjcjcInIlIoIoIoIoIoIjIpHjaNaNqIaNaNaNaNaNaNaNqIwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcrwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNHjHjHjIEIEIEIEIEjajbjcjcjcjcjcjcjcjcjcjcjcjcjcjbjaIEIEIEIEIEHjHjHjaNaNqIaNaNaNaNaNaNaNqIwKcraNaNaNaNaNaNaNaNaNaNaNaNaNaNytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNHjIKIKIKIKIKHjIdIeIeIeIeIeIeIeIeIeIeIeIeIeIfHjILILILILILHjaNaNaNaNqIaNaNaNaNaNaNdwqIwKytaNaNaNaNaNaNaNaNaNaNaNaNaNaNytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNHjHjHjHjHjHjHjIMINININININIOIPIQINININININIMHjHjHjHjHjHjHjaNaNaNaNqIaNaNaNaNaNaNaNqIwKcraNaNaNaNaNaNaNaNaNaNaNaNaNaNytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNHjIMIMIMIRIMISISISISISIMIRIMIMIMHjaNaNaNaNaNaNaNaNaNaNqIaNaNaNaNaNaNaNqIwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcrwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNHjHjHkHjHjHjHjITIUIVHjHjHjHjHkHjHjaNaNaNaNaNaNaNaNaNaNqIaNaNaNaNaNaNaNqIwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNqIaNaNaNaNaNaNaNqIwKcraNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNqIaNaNaNaNaNaNaNqIwKytcraNaNaNaNaNaNaNaNaNaNaNaNaNaNaNcrwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNqIqIqIqIqIqIqIqIqIwKytytcraNaNaNaNaNaNaNaNaNaNaNaNaNcrytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKytytytcraNaNaNaNaNaNaNaNaNaNcrytytytwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWcObWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWcObWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNAwAwAwAwAwAwAwAwAwAwAwAwAwAwAwAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKwKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNAwqJqKAwqJqNAwqJqOAwqQqPAwqJqNAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNAwqRqSAwqRqTAwqRqUAwqRqVAwqRqWAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNAwqYqZAwqYqZAwqYqZAwqYqZAwqYqZAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNAwrarararararbrararbrararararaAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNAwrararcrararararararararararaAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNAwqYqZAwqYqZAwqYqZAwqYqZAwqYqZAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNAwqRqSAwrdqWAwqRqWAwrgqVAwqRqTAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNAwqJqKAwqJqNAwqJqNAwqJrhAwqJriAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNAwAwAwAwAwAwAwAwAwAwAwAwAwAwAwAwaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtaNaNaNaNaNDuaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN @@ -1618,7 +1692,7 @@ aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNbWbWbWbWbWbWbWbWbWbW aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDNDZDKDKDKDKDKEdDADTDKDUDKDVDWDXDYDADvaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfEgDKEaEbEcDKEiDADKDKDKDKDKDKDKEeDIaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNiQDAiRDKDKDKDKDKjfDAEjDKEkDKElDWDXDYEfaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAjGEhDKDKDKEheVDADKDKDKDKDKDKDKEmDADvaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAjGEhDKDKDKEhrjDADKDKDKDKDKDKDKEmDADvaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDuaNDADwDwDMEoDMDwDwDwDwDwDMEpDMDwDwDwEnaNDtDwEqErErEsDwDuaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDADwDwEtDKDKDKDKDKDKDKDKDKDKDKDKEuDAEnaNDvDwEvEwExEyEwEzDwjIaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWbWaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEBDKECDKDKDKDKDKDKDKDKDKDKDKDKDKDKDAaNaNaNEDEEEFEwEwEwEGEDaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN @@ -1644,25 +1718,25 @@ aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDwDwDuaNEMDxDyDyDzEIDKDKDAaNDAGVFvFvFvFvFvGWDAEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNjQjPjSjRjTaNaNaNjQjPjSjRjTaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtaNaNDtDAGXGYGZDuaNaNaNaNaNDIDKDKDAaNEMDwHaHbHcHbHdDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNjUjWjVjYjXkajZaNjUjWktkvkukajZaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDwDwDwDwDAHeHfDADwDwDwDwDuaNEfDKDKDAaNaNEMDwHgHhHiDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHjHjHjHjHkHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkwkykxkxkxkAkzaNkwkDkxkxkxkAkzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDAHlHmHnDAHoFvFvHpDAHqHrHsHpDwGaDKDKDAaNaNaNHtHuHvHwHtaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHjHxHyHyHyHyHzHjHjHjHjHjHjHjHjHkHjHjHjHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkEkGkFkIkHkNkMaNkEkGkOkIkPkNkMaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNHAFvFvFvHBFvFvFvFvHCFvFvFvFvHCDKDKDKDAaNaNEMDwDwHDDwDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHjHxHyHyHyHyHzHjHEHFHGHFHHHIHJHJHJHIHHHJHHHJHKHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkQkRkxkxkxkAkSaNkQkRkxkxkxkAkSaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDAHLdacZDAGVFvFvGWDAHOHPHQGWDwEIDKDKDAaNaNaNEMaNaNaNEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHjHRHyHyHyHyHSHjHJHTHTHTHTHTHJHJHJHTHTHTHTHTHUHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkUlikVlkljlmllaNkUlikVlkljlmllaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwDwDwGZHVHWDADwDwDwDwEnaNDIDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHjHRHXHYHYHyHyHZHJHJHJIaHJHJHJHJHJHJHJIaHJHJHJHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNlylnlAlzlFaNaNaNlylnlAlzlFaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMaNaNEMDAGXIbDAEnaNaNaNaNaNEfDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHjHjHjHjHjHjHjHjHJHTHTHTHTHTHJHJHJHTHTHTHTHTHJHjHjHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwEnaNDtDxDyDyDzGaDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNHjdHdHdHdHdHHjIdIeIeIeIeIeIeIeIeIeIeIeIeIeIfHjdIdIdIdIdIHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNjQjPjSjRjTaNaNaNjQjPjSjRjTaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIDKDKDKDKDKDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHjHjHjIhIhIhIhIhjajbjcjcjcjcjcjcjcjcjcjcjcjcjcjbjaIhIhIhIhIhHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNjUjWlLlNlMkajZaNjUjWlOlQlPkajZaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfDKDKDKDKDKDKFkDAEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHjIiIjIkIkIkIkIkIlImjcjcjcjcjcjcjcjcjcjcjcjcjcInIlIoIoIoIoIoIjIpHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkwlRkxkxkxkAkzaNkwlSkxkxkxkAkzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwDMIqDMDwDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHjIiIjIkIrIkIrIkIlImjcjcjcjcjcjcjcjcjcjcjcjcjcInIlIoIsIoIsIoIjIpHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkEkGlTkIlUkNkMaNkEkGlVkIlYkNkMaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAItDKDKDKIuDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHjIiIjIkIkIvIkIkIlImjcjcjcjcjcIwIxIwjcjcjcjcjcInIlIoIoIyIoIoIjIpHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkQkRkxkxkxkAkSaNkQkRkxkxkxkAkSaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIDKDKDKDKlKDIaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHjIiIjIkIrIkIrIkIlImjcjcjcjcjcIwIzIwjcjcjcjcjcInIlIoIsIoIsIoIjIpHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkUlikVlkljlmllaNkUlikVlkljlmllaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDNIADKDKDKIBDNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHjIiIjIkIkIkIkIkIlImjcjcjcjcjcjcjcjcjcjcjcjcjcInIlIoIoIoIoIoIjIpHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNlylnlAlzlFaNaNaNlylnlAlzlFaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfICDKDKDKIDEfaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHjHjHjIEIEIEIEIEjajbjcjcjcjcjcjcjcjcjcjcjcjcjcjbjaIEIEIEIEIEHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwIFIGIHmsIJDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNHjIKIKIKIKIKHjIdIeIeIeIeIeIeIeIeIeIeIeIeIeIfHjILILILILILHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDxDyDzDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNHjHjHjHjHjHjHjIMINININININIOIPIQINININININIMHjHjHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMaNaNaNEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNHjIMIMIMIRIMISISISISISIMIRIMIMIMHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNHjHjHkHjHjHjHjITIUIVHjHjHjHjHkHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkwkykxkxkxkAkzaNkwkDkxkxkxkAkzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDAHlHmHnDAHoFvFvHpDAHqHrHsHpDwGaDKDKDAaNaNaNHtHuHvHwHtaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkEkGkFkIkHkNkMaNkEkGkOkIkPkNkMaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNHAFvFvFvHBFvFvFvFvHCFvFvFvFvHCDKDKDKDAaNaNEMDwDwHDDwDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkQkRkxkxkxkAkSaNkQkRkxkxkxkAkSaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDAHLdacZDAGVFvFvGWDAHOHPHQGWDwEIDKDKDAaNaNaNEMaNaNaNEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkUlikVlkljlmllaNkUlikVlkljlmllaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwDwDwGZHVHWDADwDwDwDwEnaNDIDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNlylnlAlzlFaNaNaNlylnlAlzlFaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMaNaNEMDAGXIbDAEnaNaNaNaNaNEfDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwEnaNDtDxDyDyDzGaDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNjQjPjSjRjTaNaNaNjQjPjSjRjTaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIDKDKDKDKDKDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNjUjWlLlNlMkajZaNjUjWlOlQlPkajZaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfDKDKDKDKDKDKFkDAEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkwlRkxkxkxkAkzaNkwlSkxkxkxkAkzaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwDMIqDMDwDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkEkGlTkIlUkNkMaNkEkGlVkIlYkNkMaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAItDKDKDKIuDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkQkRkxkxkxkAkSaNkQkRkxkxkxkAkSaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIDKDKDKDKlKDIaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNkUlikVlkljlmllaNkUlikVlkljlmllaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDNIADKDKDKIBDNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNlylnlAlzlFaNaNaNlylnlAlzlFaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfICDKDKDKIDEfaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwIFIGIHmsIJDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDxDyDzDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMaNaNaNEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN diff --git a/_maps/map_files/templates/spacehotel/n_04.dmm b/_maps/map_files/templates/spacehotel/n_04.dmm index 74a6e875b4a..91a433502b9 100644 --- a/_maps/map_files/templates/spacehotel/n_04.dmm +++ b/_maps/map_files/templates/spacehotel/n_04.dmm @@ -14,7 +14,7 @@ "n" = (/obj/machinery/door/window/southright,/obj/structure/alien/weeds{icon_state = "weeds1"},/turf/unsimulated/floor/carpet,/area/template_noop) "o" = (/obj/structure/table/woodentable,/obj/item/weapon/lipstick/black,/turf/unsimulated/floor/carpet,/area/template_noop) "p" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/alien/weeds,/obj/structure/mirror{dir = 8; pixel_x = -28},/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/template_noop) -"q" = (/obj/structure/toilet{dir = 1},/obj/structure/alien/weeds{icon_state = "weeds2"},/obj/item/organ/internal/body_egg/alien_embryo,/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/template_noop) +"q" = (/obj/structure/toilet{dir = 1},/obj/structure/alien/weeds{icon_state = "weeds2"},/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/template_noop) "r" = (/obj/machinery/door/window/eastleft,/obj/structure/alien/weeds,/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/template_noop) "s" = (/obj/machinery/shower{dir = 8},/obj/structure/alien/weeds{icon_state = "weeds1"},/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/template_noop) "t" = (/turf/unsimulated/wall/metal,/area/template_noop) diff --git a/code/__DEFINES/callbacks.dm b/code/__DEFINES/callbacks.dm new file mode 100644 index 00000000000..c0d8ac15ace --- /dev/null +++ b/code/__DEFINES/callbacks.dm @@ -0,0 +1,2 @@ +#define CALLBACK new /datum/callback +#define INVOKE_ASYNC ImmediateInvokeAsync \ No newline at end of file diff --git a/code/__DEFINES/combat.dm b/code/__DEFINES/combat.dm index 0bd2b82b42a..499be494056 100644 --- a/code/__DEFINES/combat.dm +++ b/code/__DEFINES/combat.dm @@ -70,3 +70,6 @@ #define WEAPON_LIGHT 0 #define WEAPON_MEDIUM 1 #define WEAPON_HEAVY 2 + +// Embedded objects +#define EMBED_THROWSPEED_THRESHOLD 15 \ No newline at end of file diff --git a/code/__DEFINES/flags.dm b/code/__DEFINES/flags.dm index 1cba02075a7..05133d226f1 100644 --- a/code/__DEFINES/flags.dm +++ b/code/__DEFINES/flags.dm @@ -77,11 +77,12 @@ #define SAFE 16 //flags for pass_flags -#define PASSTABLE 1 -#define PASSGLASS 2 -#define PASSGRILLE 4 -#define PASSBLOB 8 -#define PASSMOB 16 +#define PASSTABLE 1 +#define PASSGLASS 2 +#define PASSGRILLE 4 +#define PASSBLOB 8 +#define PASSMOB 16 +#define LETPASSTHROW 32 //turf-only flags #define NOJAUNT 1 diff --git a/code/__DEFINES/language.dm b/code/__DEFINES/language.dm index b1781de3314..2af0fd6ade8 100644 --- a/code/__DEFINES/language.dm +++ b/code/__DEFINES/language.dm @@ -17,4 +17,10 @@ #define NONGLOBAL 32 // Do not add to general languages list #define INNATE 64 // All mobs can be assumed to speak and understand this language (audible emotes) #define NO_TALK_MSG 128 // Do not show the "\The [speaker] talks into \the [radio]" message -#define NO_STUTTER 256 // No stuttering, slurring, or other speech problems \ No newline at end of file +#define NO_STUTTER 256 // No stuttering, slurring, or other speech problems + +//Auto-accent level defines. +#define AUTOHISS_OFF 0 +#define AUTOHISS_BASIC 1 +#define AUTOHISS_FULL 2 +#define AUTOHISS_NUM 3 //Number of auto-accent options. diff --git a/code/__DEFINES/machines.dm b/code/__DEFINES/machines.dm index 23b44679a9d..b46427979fb 100644 --- a/code/__DEFINES/machines.dm +++ b/code/__DEFINES/machines.dm @@ -71,3 +71,10 @@ #define PROGRAM_STATE_KILLED 0 #define PROGRAM_STATE_BACKGROUND 1 #define PROGRAM_STATE_ACTIVE 2 + +// Demotion Console (card/minor/*) departments +#define TARGET_DEPT_GENERIC 1 +#define TARGET_DEPT_SEC 2 +#define TARGET_DEPT_MED 3 +#define TARGET_DEPT_SCI 4 +#define TARGET_DEPT_ENG 5 \ No newline at end of file diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index b3263a93425..99079fd81bb 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -329,4 +329,7 @@ #define TENDRIL_CLEAR_SCORE "Tendrils Killed" // The number of station goals generated each round. -#define STATION_GOAL_BUDGET 1 \ No newline at end of file +#define STATION_GOAL_BUDGET 1 + +#define FIRST_DIAG_STEP 1 +#define SECOND_DIAG_STEP 2 \ No newline at end of file diff --git a/code/__DEFINES/mob.dm b/code/__DEFINES/mob.dm index 97cea621dae..c2295b9c5dc 100644 --- a/code/__DEFINES/mob.dm +++ b/code/__DEFINES/mob.dm @@ -47,7 +47,7 @@ #define HUMAN_STRIP_DELAY 40 //takes 40ds = 4s to strip someone. #define ALIEN_SELECT_AFK_BUFFER 1 // How many minutes that a person can be AFK before not being allowed to be an alien. -#define SHOES_SLOWDOWN -1.0 // How much shoes slow you down by default. Negative values speed you up +#define SHOES_SLOWDOWN 0 // How much shoes slow you down by default. Negative values speed you up //Mob attribute defaults. diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 5edccb012e3..2d2acdbbba5 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -454,7 +454,7 @@ proc/pollCandidates(Question, be_special_type, antag_age_check = 0, poll_time = if(roletext) if(jobban_isbanned(G, roletext) || jobban_isbanned(G, "Syndicate")) continue - if(min_hours) + if(config.use_exp_restrictions && min_hours) if(G.client.get_exp_living_num() < min_hours * 60) continue if(G.has_enabled_antagHUD) diff --git a/code/_globalvars/lists/objects.dm b/code/_globalvars/lists/objects.dm index f4fad058068..e453d748428 100644 --- a/code/_globalvars/lists/objects.dm +++ b/code/_globalvars/lists/objects.dm @@ -12,6 +12,8 @@ var/global/list/airlocks = list() //list of all airlocks var/global/list/singularities = list() //list of all singularities var/global/list/janitorial_equipment = list() //list of janitorial equipment var/global/list/crafting_recipes = list() //list of all crafting recipes +var/global/list/prisoncomputer_list = list() +var/global/list/cell_logs = list() var/global/list/all_areas = list() var/global/list/machines = list() diff --git a/code/_onclick/adjacent.dm b/code/_onclick/adjacent.dm index 5a84463c8f1..038174388ff 100644 --- a/code/_onclick/adjacent.dm +++ b/code/_onclick/adjacent.dm @@ -23,7 +23,7 @@ * If you are in the same turf, always true * If you are vertically/horizontally adjacent, ensure there are no border objects * If you are diagonally adjacent, ensure you can pass through at least one of the mutually adjacent square. - * Passing through in this case ignores anything with the throwpass flag, such as tables, racks, and morgue trays. + * Passing through in this case ignores anything with the LETPASSTHROW flag, such as tables, racks, and morgue trays. */ /turf/Adjacent(var/atom/neighbor, var/atom/target = null) var/turf/T0 = get_turf(neighbor) @@ -82,26 +82,18 @@ /* This checks if you there is uninterrupted airspace between that turf and this one. - This is defined as any dense ON_BORDER object, or any dense object without throwpass. + This is defined as any dense ON_BORDER object, or any dense object without LETPASSTHROW. The border_only flag allows you to not objects (for source and destination squares) */ /turf/proc/ClickCross(var/target_dir, var/border_only, var/target_atom = null) for(var/obj/O in src) - if( !O.density || O == target_atom || O.throwpass) continue // throwpass is used for anything you can click through + if( !O.density || O == target_atom || (O.pass_flags & LETPASSTHROW)) + continue // LETPASSTHROW is used for anything you can click through - if( O.flags&ON_BORDER) // windows have throwpass but are on border, check them first + if( O.flags&ON_BORDER) // windows are on border, check them first if( O.dir & target_dir || O.dir&(O.dir-1) ) // full tile windows are just diagonals mechanically return 0 else if( !border_only ) // dense, not on border, cannot pass over return 0 - return 1 -/* - Aside: throwpass does not do what I thought it did originally, and is only used for checking whether or not - a thrown object should stop after already successfully entering a square. Currently the throw code involved - only seems to affect hitting mobs, because the checks performed against objects are already performed when - entering or leaving the square. Since throwpass isn't used on mobs, but only on objects, it is effectively - useless. Throwpass may later need to be removed and replaced with a passcheck (bitfield on movable atom passflags). - - Since I don't want to complicate the click code rework by messing with unrelated systems it won't be changed here. -*/ \ No newline at end of file + return 1 \ No newline at end of file diff --git a/code/controllers/Processes/spacedrift.dm b/code/controllers/Processes/spacedrift.dm new file mode 100644 index 00000000000..d799aeb99d9 --- /dev/null +++ b/code/controllers/Processes/spacedrift.dm @@ -0,0 +1,53 @@ +var/global/datum/controller/process/spacedrift/drift_master + +/datum/controller/process/spacedrift + var/list/processing_list = list() + +/datum/controller/process/spacedrift/setup() + name = "spacedrift" + schedule_interval = 5 + start_delay = 20 + log_startup_progress("Spacedrift starting up.") + +/datum/controller/process/spacedrift/statProcess() + ..() + stat(null, "P:[processing_list.len]") + +/datum/controller/process/spacedrift/doWork() + var/list/currentrun = processing_list.Copy() + + while(currentrun.len) + var/atom/movable/AM = currentrun[currentrun.len] + currentrun.len-- + if(!AM) + processing_list -= AM + SCHECK + continue + + if(AM.inertia_next_move > world.time) + SCHECK + continue + + if(!AM.loc || AM.loc != AM.inertia_last_loc || AM.Process_Spacemove(0)) + AM.inertia_dir = 0 + + if(!AM.inertia_dir) + AM.inertia_last_loc = null + processing_list -= AM + SCHECK + continue + + var/old_dir = AM.dir + var/old_loc = AM.loc + AM.inertia_moving = TRUE + step(AM, AM.inertia_dir) + AM.inertia_moving = FALSE + AM.inertia_next_move = world.time + AM.inertia_move_delay + if(AM.loc == old_loc) + AM.inertia_dir = 0 + + AM.setDir(old_dir) + AM.inertia_last_loc = AM.loc + SCHECK + +DECLARE_GLOBAL_CONTROLLER(spacedrift, drift_master) \ No newline at end of file diff --git a/code/controllers/Processes/throwing.dm b/code/controllers/Processes/throwing.dm new file mode 100644 index 00000000000..a11c1252d35 --- /dev/null +++ b/code/controllers/Processes/throwing.dm @@ -0,0 +1,138 @@ +#define MAX_THROWING_DIST 512 // 2 z-levels on default width +#define MAX_TICKS_TO_MAKE_UP 3 //how many missed ticks will we attempt to make up for this run. + +var/global/datum/controller/process/throwing/throw_master + +/datum/controller/process/throwing + var/list/processing_list + +/datum/controller/process/throwing/setup() + name = "throwing" + schedule_interval = 1 + start_delay = 20 + log_startup_progress("Throw ticker starting up.") + +/datum/controller/process/throwing/statProcess() + ..() + stat(null, "P:[processing_list.len]") + +/datum/controller/process/throwing/started() + ..() + if(!processing_list) + processing_list = list() + +/datum/controller/process/throwing/doWork() + for(last_object in processing_list) + var/atom/movable/AM = last_object + if(istype(AM) && isnull(AM.gcDestroyed)) + var/datum/thrownthing/TT = processing_list[AM] + if(istype(TT) && isnull(TT.gcDestroyed)) + TT.tick() + SCHECK + else + catchBadType(TT) + processing_list -= AM + AM.throwing = null + else + catchBadType(AM) + processing_list -= AM + SCHECK + +DECLARE_GLOBAL_CONTROLLER(throwing, throw_master) + +/datum/thrownthing + var/atom/movable/thrownthing + var/atom/target + var/turf/target_turf + var/init_dir + var/maxrange + var/speed + var/mob/thrower + var/diagonals_first + var/dist_travelled = 0 + var/start_time + var/dist_x + var/dist_y + var/dx + var/dy + var/pure_diagonal + var/diagonal_error + var/datum/callback/callback + +/datum/thrownthing/proc/tick() + var/atom/movable/AM = thrownthing + if(!isturf(AM.loc) || !AM.throwing) + finalize() + return + + if(dist_travelled && hitcheck()) //to catch sneaky things moving on our tile while we slept + finalize() + return + + var/atom/step + + // calculate how many tiles to move, making up for any missed ticks. + if((dist_travelled >= maxrange || AM.loc == target_turf) && has_gravity(AM, AM.loc)) + finalize() + return + + if(dist_travelled <= max(dist_x, dist_y)) //if we haven't reached the target yet we home in on it, otherwise we use the initial direction + step = get_step(AM, get_dir(AM, target_turf)) + else + step = get_step(AM, init_dir) + + if(!pure_diagonal && !diagonals_first) // not a purely diagonal trajectory and we don't want all diagonal moves to be done first + if(diagonal_error >= 0 && max(dist_x, dist_y) - dist_travelled != 1) // we do a step forward unless we're right before the target + step = get_step(AM, dx) + diagonal_error += (diagonal_error < 0) ? dist_x / 2 : -dist_y + + if(!step) // going off the edge of the map makes get_step return null, don't let things go off the edge + finalize() + return + + AM.Move(step, get_dir(AM, step)) + + if(!AM.throwing) // we hit something during our move + finalize(hit = TRUE) + return + + dist_travelled++ + + if(dist_travelled > MAX_THROWING_DIST) + finalize() + return + +/datum/thrownthing/proc/finalize(hit = FALSE) + set waitfor = 0 + throw_master.processing_list -= thrownthing + // done throwning, either because it hit something or it finished moving + thrownthing.throwing = null + if(!hit) + for(var/thing in get_turf(thrownthing)) //looking for our target on the turf we land on. + var/atom/A = thing + if(A == target) + hit = 1 + thrownthing.throw_impact(A, src) + break + if(!hit) + thrownthing.throw_impact(get_turf(thrownthing), src) // we haven't hit something yet and we still must, let's hit the ground. + thrownthing.newtonian_move(init_dir) + else + thrownthing.newtonian_move(init_dir) + if(callback) + callback.Invoke() + +/datum/thrownthing/proc/hit_atom(atom/A) + thrownthing.throw_impact(A, src) + thrownthing.newtonian_move(init_dir) + finalize(TRUE) + +/datum/thrownthing/proc/hitcheck() + for(var/thing in get_turf(thrownthing)) + var/atom/movable/AM = thing + if(AM == thrownthing) + continue + if(AM.density && !(AM.pass_flags & LETPASSTHROW) && !(AM.flags & ON_BORDER)) + thrownthing.throwing = null + thrownthing.throw_impact(AM, src) + return TRUE \ No newline at end of file diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm index 6cccb48e492..2ab267ce5a8 100644 --- a/code/controllers/configuration.dm +++ b/code/controllers/configuration.dm @@ -39,7 +39,6 @@ var/allow_Metadata = 0 // Metadata is supported. var/popup_admin_pm = 0 //adminPMs to non-admins show in a pop-up 'reply' window when set to 1. var/Ticklag = 0.5 - var/Tickcomp = 0 var/socket_talk = 0 // use socket_talk to communicate with other processes var/list/resource_urls = null var/antag_hud_allowed = 0 // Ghosts can turn on Antagovision to see a HUD of who is the bad guys this round. @@ -445,9 +444,6 @@ if("socket_talk") socket_talk = text2num(value) - if("tickcomp") - Tickcomp = 1 - if("allow_antag_hud") config.antag_hud_allowed = 1 diff --git a/code/datums/action.dm b/code/datums/action.dm index 0bec4e37d35..499570be291 100644 --- a/code/datums/action.dm +++ b/code/datums/action.dm @@ -145,7 +145,7 @@ name = "Pull The Starting Cord" /datum/action/item_action/print_report - name = "Print Forensic Report" + name = "Print Report" /datum/action/item_action/toggle_gunlight name = "Toggle Gunlight" diff --git a/code/datums/callback.dm b/code/datums/callback.dm new file mode 100644 index 00000000000..02909c1a196 --- /dev/null +++ b/code/datums/callback.dm @@ -0,0 +1,98 @@ +/* + USAGE: + + var/datum/callback/C = new(object|null, /proc/type/path|"procstring", arg1, arg2, ... argn) + var/timerid = addtimer(C, time, timertype) + OR + var/timerid = addtimer(CALLBACK(object|null, /proc/type/path|procstring, arg1, arg2, ... argn), time, timertype) + + Note: proc strings can only be given for datum proc calls, global procs must be proc paths + Also proc strings are strongly advised against because they don't compile error if the proc stops existing + See the note on proc typepath shortcuts + + INVOKING THE CALLBACK: + var/result = C.Invoke(args, to, add) //additional args are added after the ones given when the callback was created + OR + var/result = C.InvokeAsync(args, to, add) //Sleeps will not block, returns . on the first sleep (then continues on in the "background" after the sleep/block ends), otherwise operates normally. + OR + INVOKE_ASYNC() to immediately create and call InvokeAsync + + PROC TYPEPATH SHORTCUTS (these operate on paths, not types, so to these shortcuts, datum is NOT a parent of atom, etc...) + + global proc while in another global proc: + .procname + Example: + CALLBACK(GLOBAL_PROC, .some_proc_here) + + proc defined on current(src) object (when in a /proc/ and not an override) OR overridden at src or any of it's parents: + .procname + Example: + CALLBACK(src, .some_proc_here) + + + when the above doesn't apply: + .proc/procname + Example: + CALLBACK(src, .proc/some_proc_here) + + proc defined on a parent of a some type: + /some/type/.proc/some_proc_here + + + + Other wise you will have to do the full typepath of the proc (/type/of/thing/proc/procname) + +*/ + +/datum/callback + var/datum/object = GLOBAL_PROC + var/delegate + var/list/arguments + +/datum/callback/New(thingtocall, proctocall, ...) + if(thingtocall) + object = thingtocall + delegate = proctocall + if(length(args) > 2) + arguments = args.Copy(3) + +/proc/ImmediateInvokeAsync(thingtocall, proctocall, ...) + set waitfor = FALSE + + if(!thingtocall) + return + + var/list/calling_arguments = length(args) > 2 ? args.Copy(3) : null + + if(thingtocall == GLOBAL_PROC) + call(proctocall)(arglist(calling_arguments)) + else + call(thingtocall, proctocall)(arglist(calling_arguments)) + +/datum/callback/proc/Invoke(...) + if(!object) + return + var/list/calling_arguments = arguments + if(length(args)) + if(length(arguments)) + calling_arguments = calling_arguments + args //not += so that it creates a new list so the arguments list stays clean + else + calling_arguments = args + if(object == GLOBAL_PROC) + return call(delegate)(arglist(calling_arguments)) + return call(object, delegate)(arglist(calling_arguments)) + +//copy and pasted because fuck proc overhead +/datum/callback/proc/InvokeAsync(...) + set waitfor = FALSE + if(!object) + return + var/list/calling_arguments = arguments + if(length(args)) + if(length(arguments)) + calling_arguments = calling_arguments + args //not += so that it creates a new list so the arguments list stays clean + else + calling_arguments = args + if(object == GLOBAL_PROC) + return call(delegate)(arglist(calling_arguments)) + return call(object, delegate)(arglist(calling_arguments)) diff --git a/code/game/area/Space Station 13 areas.dm b/code/game/area/Space Station 13 areas.dm index e814bc9081f..7b7952b5f88 100644 --- a/code/game/area/Space Station 13 areas.dm +++ b/code/game/area/Space Station 13 areas.dm @@ -486,15 +486,19 @@ var/list/ghostteleportlocs = list() /area/centcom/control name = "\improper Centcom Control" + icon_state = "centcom_ctrl" /area/centcom/evac name = "\improper Centcom Emergency Shuttle" + icon_state = "centcom_evac" /area/centcom/suppy name = "\improper Centcom Supply Shuttle" + icon_state = "centcom_supply" /area/centcom/ferry name = "\improper Centcom Transport Shuttle" + icon_state = "centcom_ferry" /area/centcom/shuttle name = "\improper Centcom Administration Shuttle" @@ -507,9 +511,11 @@ var/list/ghostteleportlocs = list() /area/centcom/specops name = "\improper Centcom Special Ops" + icon_state = "centcom_specops" -/area/centcom/creed - name = "Creed's Office" +/area/centcom/gamma + name = "\improper Centcom Gamma Armory" + icon_state = "centcom_gamma" /area/centcom/holding name = "\improper Holding Facility" diff --git a/code/game/atoms.dm b/code/game/atoms.dm index b5d25c7f5a1..5d1dd5c74fb 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -9,7 +9,6 @@ var/blood_color var/last_bumped = 0 var/pass_flags = 0 - var/throwpass = 0 var/germ_level = GERM_LEVEL_AMBIENT // The higher the germ level, the more germ on the atom. var/simulated = 1 //filter for actions - used by lighting overlays var/atom_say_verb = "says" @@ -236,10 +235,13 @@ /atom/proc/emag_act() return -/atom/proc/hitby(atom/movable/AM as mob|obj) - if(density) - AM.throwing = 0 - return +/atom/proc/hitby(atom/movable/AM, skipcatch, hitpush, blocked) + if(density && !has_gravity(AM)) //thrown stuff bounces off dense stuff in no grav, unless the thrown stuff ends up inside what it hit(embedding, bola, etc...). + addtimer(src, "hitby_react", 2, TRUE, AM) + +/atom/proc/hitby_react(atom/movable/AM) + if(AM && isturf(AM.loc)) + step(AM, turn(AM.dir, 180)) /atom/proc/add_hiddenprint(mob/living/M as mob) if(isnull(M)) return diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index 7dd8d0c5be8..906706de62e 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -6,15 +6,21 @@ // var/elevation = 2 - not used anywhere var/move_speed = 10 var/l_move_time = 1 - var/throwing = 0 - var/thrower - var/turf/throw_source = null - var/throw_speed = 2 + var/datum/thrownthing/throwing = null + var/throw_speed = 2 //How many tiles to move per ds when being thrown. Float values are fully supported var/throw_range = 7 - var/no_spin_thrown = 0 //set this to 1 if you don't want an item that you throw to spin, no matter what. -Fox + var/no_spin = 0 + var/no_spin_thrown = 0 var/moved_recently = 0 var/mob/pulledby = null + var/inertia_dir = 0 + var/atom/inertia_last_loc + var/inertia_moving = 0 + var/inertia_next_move = 0 + var/inertia_move_delay = 5 + + var/moving_diagonally = 0 //0: not doing a diagonal move. 1 and 2: doing the first/second step of the diagonal move var/area/areaMaster @@ -71,61 +77,74 @@ if(!(direct & (direct - 1))) //Cardinal move . = ..() else //Diagonal move, split it into cardinal moves + moving_diagonally = FIRST_DIAG_STEP if(direct & 1) if(direct & 4) if(step(src, NORTH)) + moving_diagonally = SECOND_DIAG_STEP . = step(src, EAST) else if(step(src, EAST)) + moving_diagonally = SECOND_DIAG_STEP . = step(src, NORTH) else if(direct & 8) if(step(src, NORTH)) + moving_diagonally = SECOND_DIAG_STEP . = step(src, WEST) else if(step(src, WEST)) + moving_diagonally = SECOND_DIAG_STEP . = step(src, NORTH) else if(direct & 2) if(direct & 4) if(step(src, SOUTH)) + moving_diagonally = SECOND_DIAG_STEP . = step(src, EAST) else if(step(src, EAST)) + moving_diagonally = SECOND_DIAG_STEP . = step(src, SOUTH) else if(direct & 8) if(step(src, SOUTH)) + moving_diagonally = SECOND_DIAG_STEP . = step(src, WEST) else if(step(src, WEST)) + moving_diagonally = SECOND_DIAG_STEP . = step(src, SOUTH) - + moving_diagonally = 0 + return if(!loc || (loc == oldloc && oldloc != newloc)) last_move = 0 return + if(.) + Moved(oldloc, direct) + last_move = direct src.move_speed = world.time - src.l_move_time src.l_move_time = world.time - spawn(5) // Causes space drifting. /tg/station has no concept of speed, we just use 5 - if(loc && direct && last_move == direct) - if(loc == newloc) //Remove this check and people can accelerate. Not opening that can of worms just yet. - newtonian_move(last_move) - if(. && buckled_mob && !handle_buckled_mob_movement(loc, direct)) //movement failed due to buckled mob . = 0 +// Called after a successful Move(). By this point, we've already moved +/atom/movable/proc/Moved(atom/OldLoc, Dir) + if(!inertia_moving) + inertia_next_move = world.time + inertia_move_delay + newtonian_move(Dir) + return 1 -// Previously known as Crossed() +// Previously known as HasEntered() // This is automatically called when something enters your square /atom/movable/Crossed(atom/movable/AM) return -/atom/movable/Bump(var/atom/A as mob|obj|turf|area, sendBump) - if(src.throwing) - src.throw_impact(A) - - if(A && sendBump) - A.last_bumped = world.time +/atom/movable/Bump(atom/A, yes) //the "yes" arg is to differentiate our Bump proc from byond's, without it every Bump() call would become a double Bump(). + if(A && yes) + if(throwing) + throwing.hit_atom(A) + . = 1 + if(!A || qdeleted(A)) + return A.Bumped(src) - else - ..() /atom/movable/proc/forceMove(atom/destination) var/turf/old_loc = loc @@ -166,29 +185,6 @@ update_canmove() //if the mob was asleep inside a container and then got forceMoved out we need to make them fall. -//called when src is thrown into hit_atom -/atom/movable/proc/throw_impact(atom/hit_atom, var/speed) - if(istype(hit_atom,/mob/living)) - var/mob/living/M = hit_atom - M.hitby(src,speed) - - else if(isobj(hit_atom)) - var/obj/O = hit_atom - if(!O.anchored) - step(O, src.dir) - O.hitby(src,speed) - - else if(isturf(hit_atom)) - src.throwing = 0 - var/turf/T = hit_atom - if(T.density) - spawn(2) - step(src, turn(src.dir, 180)) - if(istype(src,/mob/living)) - var/mob/living/M = src - M.turf_collision(T, speed) - - //Called whenever an object moves and by mobs when they attempt to move themselves through space //And when an object or action applies a force on src, see newtonian_move() below //Return 0 to have src start/keep drifting in a no-grav area and 1 to stop/not start drifting @@ -201,13 +197,15 @@ if(pulledby && !pulledby.pulling) return 1 + if(throwing) + return 1 + if(locate(/obj/structure/lattice) in range(1, get_turf(src))) //Not realistic but makes pushing things in space easier return 1 return 0 /atom/movable/proc/newtonian_move(direction) //Only moves the object if it's under no gravity - if(!loc || Process_Spacemove(0)) inertia_dir = 0 return 0 @@ -216,119 +214,93 @@ if(!direction) return 1 - var/old_dir = dir - . = step(src, direction) - dir = old_dir + inertia_last_loc = loc + drift_master.processing_list[src] = src + return 1 -//decided whether a movable atom being thrown can pass through the turf it is in. -/atom/movable/proc/hit_check(var/speed) - if(src.throwing) - for(var/atom/A in get_turf(src)) - if(A == src) continue - if(istype(A,/mob/living)) - if(A:lying) continue - src.throw_impact(A,speed) - if(isobj(A)) - if(A.density && !A.throwpass) // **TODO: Better behaviour for windows which are dense, but shouldn't always stop movement - src.throw_impact(A,speed) -/atom/movable/proc/throw_at_fast(atom/target, range, speed, thrower, no_spin) +//called when src is thrown into hit_atom +/atom/movable/proc/throw_impact(atom/hit_atom, throwingdatum) set waitfor = 0 - throw_at(target, range, speed, thrower, no_spin) + return hit_atom.hitby(src) -/atom/movable/proc/throw_at(atom/target, range, speed, thrower, no_spin) - if(!target || !src || (flags & NODROP)) +/atom/movable/hitby(atom/movable/AM, skipcatch, hitpush = 1, blocked) + if(!anchored && hitpush) + step(src, AM.dir) + ..() + +/atom/movable/proc/throw_at(atom/target, range, speed, mob/thrower, spin = TRUE, diagonals_first = FALSE, var/datum/callback/callback) + if(!target || (flags & NODROP) || speed <= 0) return 0 - //use a modified version of Bresenham's algorithm to get from the atom's current position to that of the target - src.throwing = 1 - src.thrower = thrower - src.throw_source = get_turf(src) //store the origin turf - if(target.allow_spin) // turns out 1000+ spinning objects being thrown at the singularity creates lag - Iamgoofball - if(!no_spin_thrown && !no_spin) - SpinAnimation(5, 1) + if(pulledby) + pulledby.stop_pulling() + + // They are moving! Wouldn't it be cool if we calculated their momentum and added it to the throw? + if(thrower && thrower.last_move && thrower.client && thrower.client.move_delay >= world.time + world.tick_lag * 2) + var/user_momentum = thrower.movement_delay() + if(!user_momentum) // no movement_delay, this means they move once per byond tick, let's calculate from that instead + user_momentum = world.tick_lag + + user_momentum = 1 / user_momentum // convert from ds to the tiles per ds that throw_at uses + + if(get_dir(thrower, target) & last_move) + user_momentum = user_momentum // basically a noop, but needed + else if(get_dir(target, thrower) & last_move) + user_momentum = -user_momentum // we are moving away from the target, lets slowdown the throw accordingly + else + user_momentum = 0 + + if(user_momentum) + // first lets add that momentum to range + range *= (user_momentum / speed) + 1 + //then lets add it to speed + speed += user_momentum + if(speed <= 0) + return //no throw speed, the user was moving too fast. + + var/datum/thrownthing/TT = new() + TT.thrownthing = src + TT.target = target + TT.target_turf = get_turf(target) + TT.init_dir = get_dir(src, target) + TT.maxrange = range + TT.speed = speed + TT.thrower = thrower + TT.diagonals_first = diagonals_first + TT.callback = callback + var/dist_x = abs(target.x - src.x) var/dist_y = abs(target.y - src.y) + var/dx = (target.x > src.x) ? EAST : WEST + var/dy = (target.y > src.y) ? NORTH : SOUTH - var/dx - if(target.x > src.x) - dx = EAST - else - dx = WEST + if(dist_x == dist_y) + TT.pure_diagonal = 1 - var/dy - if(target.y > src.y) - dy = NORTH - else - dy = SOUTH - var/dist_travelled = 0 - var/dist_since_sleep = 0 - var/area/a = get_area(src.loc) - if(dist_x > dist_y) - var/error = dist_x/2 - dist_y - while(src && target &&((((src.x < target.x && dx == EAST) || (src.x > target.x && dx == WEST)) && dist_travelled < range) || (a && a.has_gravity == 0) || istype(src.loc, /turf/space)) && src.throwing && istype(src.loc, /turf)) - // only stop when we've gone the whole distance (or max throw range) and are on a non-space tile, or hit something, or hit the end of the map, or someone picks it up - if(error < 0) - var/atom/step = get_step(src, dy) - if(!step) // going off the edge of the map makes get_step return null, don't let things go off the edge - break - src.Move(step, get_dir(loc, step)) - hit_check(speed) - error += dist_x - dist_travelled++ - dist_since_sleep++ - if(dist_since_sleep >= speed) - dist_since_sleep = 0 - sleep(1) - else - var/atom/step = get_step(src, dx) - if(!step) // going off the edge of the map makes get_step return null, don't let things go off the edge - break - src.Move(step) - hit_check(speed) - error -= dist_y - dist_travelled++ - dist_since_sleep++ - if(dist_since_sleep >= speed) - dist_since_sleep = 0 - sleep(1) - a = get_area(src.loc) - else - var/error = dist_y/2 - dist_x - while(src && target &&((((src.y < target.y && dy == NORTH) || (src.y > target.y && dy == SOUTH)) && dist_travelled < range) || (a && a.has_gravity == 0) || istype(src.loc, /turf/space)) && src.throwing && istype(src.loc, /turf)) - // only stop when we've gone the whole distance (or max throw range) and are on a non-space tile, or hit something, or hit the end of the map, or someone picks it up - if(error < 0) - var/atom/step = get_step(src, dx) - if(!step) // going off the edge of the map makes get_step return null, don't let things go off the edge - break - src.Move(step) - hit_check(speed) - error += dist_y - dist_travelled++ - dist_since_sleep++ - if(dist_since_sleep >= speed) - dist_since_sleep = 0 - sleep(1) - else - var/atom/step = get_step(src, dy) - if(!step) // going off the edge of the map makes get_step return null, don't let things go off the edge - break - src.Move(step) - hit_check(speed) - error -= dist_x - dist_travelled++ - dist_since_sleep++ - if(dist_since_sleep >= speed) - dist_since_sleep = 0 - sleep(1) + else if(dist_x <= dist_y) + var/olddist_x = dist_x + var/olddx = dx + dist_x = dist_y + dist_y = olddist_x + dx = dy + dy = olddx + TT.dist_x = dist_x + TT.dist_y = dist_y + TT.dx = dx + TT.dy = dy + TT.diagonal_error = dist_x / 2 - dist_y + TT.start_time = world.time - a = get_area(src.loc) + if(pulledby) + pulledby.stop_pulling() - //done throwing, either because it hit something or it finished moving - if(isobj(src)) src.throw_impact(get_turf(src),speed) - src.throwing = 0 - src.thrower = null - src.throw_source = null + throwing = TT + if(spin && !no_spin && !no_spin_thrown) + SpinAnimation(5, 1) + + throw_master.processing_list[src] = TT + TT.tick() //Overlays diff --git a/code/game/dna/genes/goon_powers.dm b/code/game/dna/genes/goon_powers.dm index 0c56c3330cd..16f8dad4bdb 100644 --- a/code/game/dna/genes/goon_powers.dm +++ b/code/game/dna/genes/goon_powers.dm @@ -278,6 +278,10 @@ var/list/targets = new /list() var/list/possible_targets = new /list() + if(!check_mouth(user)) + revert_cast(user) + return + for(var/atom/movable/O in view_or_range(range, user, selection_type)) if((O in user) && is_type_in_list(O,own_blacklist)) continue @@ -294,8 +298,21 @@ revert_cast(user) return + if(!check_mouth(user)) + revert_cast(user) + return + perform(targets, user = user) +/obj/effect/proc_holder/spell/targeted/eat/proc/check_mouth(mob/user = usr) + var/can_eat = 1 + if(iscarbon(user)) + var/mob/living/carbon/C = user + if((C.head && (C.head.flags_cover & HEADCOVERSMOUTH)) || (C.wear_mask && (C.wear_mask.flags_cover & MASKCOVERSMOUTH) && !C.wear_mask.mask_adjusted)) + to_chat(C, "Your mouth is covered, preventing you from eating!") + can_eat = 0 + return can_eat + /obj/effect/proc_holder/spell/targeted/eat/cast(list/targets, mob/user = usr) if(!targets.len) to_chat(user, "No target found in range.") @@ -554,7 +571,8 @@ return to_chat(user, "Mind Reading of [M.name]:") - var/pain_condition = M.health + + var/pain_condition = M.health / M.maxHealth // lower health means more pain var/list/randomthoughts = list("what to have for lunch","the future","the past","money", "their hair","what to do next","their job","space","amusing things","sad things", @@ -562,20 +580,20 @@ var/thoughts = "thinking about [pick(randomthoughts)]" if(M.fire_stacks) - pain_condition -= 50 + pain_condition -= 0.5 thoughts = "preoccupied with the fire" if(M.radiation) - pain_condition -= 25 + pain_condition -= 0.25 switch(pain_condition) - if(81 to INFINITY) + if(0.81 to INFINITY) to_chat(user, "Condition: [M.name] feels good.") - if(61 to 80) + if(0.61 to 0.8) to_chat(user, "Condition: [M.name] is suffering mild pain.") - if(41 to 60) + if(0.41 to 0.6) to_chat(user, "Condition: [M.name] is suffering significant pain.") - if(21 to 40) + if(0.21 to 0.4) to_chat(user, "Condition: [M.name] is suffering severe pain.") else to_chat(user, "Condition: [M.name] is suffering excruciating pain.") diff --git a/code/game/gamemodes/gameticker.dm b/code/game/gamemodes/gameticker.dm index 006c0642202..f3191491c88 100644 --- a/code/game/gamemodes/gameticker.dm +++ b/code/game/gamemodes/gameticker.dm @@ -406,18 +406,6 @@ var/round_start_time = 0 if(F.name == name) return F -/datum/controller/gameticker/proc/karmareminder() - for(var/mob/living/player in player_list) - - if(player.client) - if(player.client.karma_spent == 0) - if(!player.get_preference(DISABLE_KARMA_REMINDER)) - var/dat - dat += {"Karma Reminder

Karma Reminder


- You have not yet spent your karma for the round, surely there is a player who was worthy of receiving
- your reward? Look under 'OOC' for the 'Award Karma' button, and use it once a round for best results!"} - player << browse(dat, "window=karmareminder;size=400x300") - /datum/controller/gameticker/proc/declare_completion() nologevent = 1 //end of round murder and shenanigans are legal; there's no need to jam up attack logs past this point. @@ -472,7 +460,6 @@ var/round_start_time = 0 call(mode, handler)() scoreboard() - karmareminder() // Declare the completion of the station goals mode.declare_station_goal_completion() diff --git a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm b/code/game/gamemodes/miniantags/abduction/abduction_gear.dm index 2a72c4a9b9b..1408e0a87fc 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction_gear.dm @@ -588,6 +588,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} icon = 'icons/obj/abductor.dmi' icon_state = "bed" no_icon_updates = 1 //no icon updates for this; it's static. + injected_reagents = list("corazone") /obj/structure/closet/abductor name = "alien locker" @@ -595,4 +596,4 @@ Congratulations! You are now trained for invasive xenobiology research!"} icon_state = "abductor" icon_closed = "abductor" icon_opened = "abductoropen" - material_drop = /obj/item/stack/sheet/mineral/abductor \ No newline at end of file + material_drop = /obj/item/stack/sheet/mineral/abductor diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm index 40b1dfd8bd1..4535e1c6c41 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -5,6 +5,7 @@ total_positions = -1 spawn_positions = -1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list() //See /datum/job/assistant/get_access() minimal_access = list() //See /datum/job/assistant/get_access() diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index 8d3c4d65165..50c8a06777b 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -6,6 +6,7 @@ spawn_positions = 1 is_engineering = 1 supervisors = "the captain" + department_head = list("Captain") selection_color = "#ffeeaa" req_admin_notify = 1 access = list(access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, @@ -52,6 +53,7 @@ spawn_positions = 5 is_engineering = 1 supervisors = "the chief engineer" + department_head = list("Chief Engineer") selection_color = "#fff5cc" access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics, access_mineral_storeroom) minimal_access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_mineral_storeroom) @@ -89,6 +91,7 @@ spawn_positions = 2 is_engineering = 1 supervisors = "the chief engineer" + department_head = list("Chief Engineer") selection_color = "#fff5cc" access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics, access_mineral_storeroom) minimal_access = list(access_eva, access_atmospherics, access_maint_tunnels, access_external_airlocks, access_emergency_storage, access_construction, access_mineral_storeroom) @@ -119,6 +122,7 @@ spawn_positions = 1 is_engineering = 1 supervisors = "the chief engineer" + department_head = list("Chief Engineer") selection_color = "#fff5cc" access = list(access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_mechanic, access_external_airlocks, access_mineral_storeroom) minimal_access = list(access_maint_tunnels, access_emergency_storage, access_mechanic, access_external_airlocks, access_mineral_storeroom) diff --git a/code/game/jobs/job/job.dm b/code/game/jobs/job/job.dm index ec9b8776f80..bac7efd0b8a 100644 --- a/code/game/jobs/job/job.dm +++ b/code/game/jobs/job/job.dm @@ -10,6 +10,7 @@ //Bitflags for the job var/flag = 0 var/department_flag = 0 + var/department_head = list() //Players will be allowed to spawn in as jobs that are set to "Station" var/list/faction = list("Station") @@ -207,7 +208,7 @@ if(isturf(placed_in)) to_chat(H, "Placing \the [G] on [placed_in]!") else - to_chat(H, "Placing \the [G] in [placed_in.name]]") + to_chat(H, "Placing \the [G] in [placed_in.name]") continue if(H.equip_to_appropriate_slot(G)) to_chat(H, "Placing \the [G] in your inventory!") diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index a240618aa34..e92a95e70b6 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -6,6 +6,7 @@ spawn_positions = 1 is_medical = 1 supervisors = "the captain" + department_head = list("Captain") selection_color = "#ffddf0" req_admin_notify = 1 access = list(access_medical, access_morgue, access_genetics, access_heads, @@ -47,10 +48,11 @@ spawn_positions = 3 is_medical = 1 supervisors = "the chief medical officer" + department_head = list("Chief Medical Officer") selection_color = "#ffeef0" access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_mineral_storeroom) minimal_access = list(access_medical, access_morgue, access_surgery, access_maint_tunnels) - alt_titles = list("Surgeon","Nurse","Coroner") + alt_titles = list("Surgeon","Nurse") minimal_player_age = 3 exp_requirements = 180 exp_type = EXP_TYPE_CREW @@ -73,19 +75,49 @@ satchel = /obj/item/weapon/storage/backpack/satchel_med dufflebag = /obj/item/weapon/storage/backpack/duffel/medical +/datum/job/coroner + title = "Coroner" + flag = CORONER + department_flag = MEDSCI + total_positions = 1 + spawn_positions = 1 + is_medical = 1 + supervisors = "the chief medical officer" + selection_color = "#ffeef0" + access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_mineral_storeroom) + minimal_access = list(access_medical, access_morgue, access_maint_tunnels) + minimal_player_age = 3 + exp_requirements = 180 + exp_type = EXP_TYPE_CREW + outfit = /datum/outfit/job/coroner + +/datum/outfit/job/coroner + name = "Coroner" + jobtype = /datum/job/coroner + + uniform = /obj/item/clothing/under/rank/medical/mortician + suit = /obj/item/clothing/suit/storage/labcoat/mortician + shoes = /obj/item/clothing/shoes/white + l_ear = /obj/item/device/radio/headset/headset_med + id = /obj/item/weapon/card/id/medical + suit_store = /obj/item/device/flashlight/pen + l_hand = /obj/item/weapon/clipboard + pda = /obj/item/device/pda/medical + + backpack = /obj/item/weapon/storage/backpack/medic + satchel = /obj/item/weapon/storage/backpack/satchel_med + dufflebag = /obj/item/weapon/storage/backpack/duffel/medical + + backpack_contents = list( + /obj/item/clothing/head/surgery/black = 1, + /obj/item/weapon/autopsy_scanner = 1, + /obj/item/device/mass_spectrometer = 1, + /obj/item/weapon/storage/box/bodybags = 1) + /datum/outfit/job/doctor/pre_equip(mob/living/carbon/human/H, visualsOnly = FALSE) . = ..() if(H.mind.role_alt_title) switch(H.mind.role_alt_title) - if("Coroner") - uniform = /obj/item/clothing/under/rank/medical/mortician - suit = /obj/item/clothing/suit/storage/labcoat/mortician - backpack_contents = list( - /obj/item/clothing/head/surgery/black = 1, - /obj/item/weapon/autopsy_scanner = 1, - /obj/item/device/mass_spectrometer = 1, - /obj/item/weapon/storage/box/bodybags = 1 - ) if("Surgeon") uniform = /obj/item/clothing/under/rank/medical/blue head = /obj/item/clothing/head/surgery/blue @@ -112,6 +144,7 @@ spawn_positions = 2 is_medical = 1 supervisors = "the chief medical officer" + department_head = list("Chief Medical Officer") selection_color = "#ffeef0" access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_mineral_storeroom) minimal_access = list(access_medical, access_chemistry, access_maint_tunnels, access_mineral_storeroom) @@ -145,6 +178,7 @@ spawn_positions = 2 is_medical = 1 supervisors = "the chief medical officer and the research director" + department_head = list("Chief Medical Officer", "Research Director") selection_color = "#ffeef0" access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_research, access_mineral_storeroom) minimal_access = list(access_medical, access_morgue, access_genetics, access_research, access_maint_tunnels) @@ -178,6 +212,7 @@ spawn_positions = 1 is_medical = 1 supervisors = "the chief medical officer" + department_head = list("Chief Medical Officer") selection_color = "#ffeef0" access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) minimal_access = list(access_medical, access_virology, access_maint_tunnels, access_mineral_storeroom) @@ -212,6 +247,7 @@ spawn_positions = 1 is_medical = 1 supervisors = "the chief medical officer" + department_head = list("Chief Medical Officer") selection_color = "#ffeef0" access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_psychiatrist) minimal_access = list(access_medical, access_psychiatrist, access_maint_tunnels) @@ -249,6 +285,7 @@ spawn_positions = 1 is_medical = 1 supervisors = "the chief medical officer" + department_head = list("Chief Medical Officer") selection_color = "#ffeef0" access = list(access_paramedic, access_medical, access_maint_tunnels, access_external_airlocks, access_morgue) minimal_access=list(access_paramedic, access_medical, access_maint_tunnels, access_external_airlocks, access_morgue) diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index bfab5c736ec..cfccd0be21f 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -6,6 +6,7 @@ spawn_positions = 1 is_science = 1 supervisors = "the captain" + department_head = list("Captain") selection_color = "#ffddff" req_admin_notify = 1 access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue, @@ -55,6 +56,7 @@ spawn_positions = 6 is_science = 1 supervisors = "the research director" + department_head = list("Research Director") selection_color = "#ffeeff" access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_xenoarch, access_mineral_storeroom) minimal_access = list(access_tox, access_tox_storage, access_research, access_xenobiology, access_xenoarch, access_maint_tunnels, access_mineral_storeroom) @@ -93,6 +95,7 @@ spawn_positions = 2 is_science = 1 supervisors = "the research director" + department_head = list("Research Director") selection_color = "#ffeeff" access = list(access_robotics, access_tox, access_tox_storage, access_tech_storage, access_morgue, access_research, access_mineral_storeroom) //As a job that handles so many corpses, it makes sense for them to have morgue access. minimal_access = list(access_robotics, access_tech_storage, access_morgue, access_research, access_maint_tunnels, access_mineral_storeroom) //As a job that handles so many corpses, it makes sense for them to have morgue access. diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index 37f2974ddc2..326f4ee85b6 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -6,6 +6,7 @@ spawn_positions = 1 is_security = 1 supervisors = "the captain" + department_head = list("Captain") selection_color = "#ffdddd" req_admin_notify = 1 access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, @@ -56,6 +57,7 @@ spawn_positions = 1 is_security = 1 supervisors = "the head of security" + department_head = list("Head of Security") selection_color = "#ffeeee" access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_morgue, access_weapons) minimal_access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_weapons) @@ -99,6 +101,7 @@ spawn_positions = 1 is_security = 1 supervisors = "the head of security" + department_head = list("Head of Security") selection_color = "#ffeeee" alt_titles = list("Forensic Technician") access = list(access_security, access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels, access_court, access_weapons) @@ -157,6 +160,7 @@ spawn_positions = 7 is_security = 1 supervisors = "the head of security" + department_head = list("Head of Security") selection_color = "#ffeeee" access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_morgue, access_weapons) minimal_access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_weapons) @@ -199,6 +203,7 @@ spawn_positions = 1 is_security = 1 supervisors = "the head of security" + department_head = list("Head of Security") selection_color = "#ffeeee" access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) minimal_access = list(access_medical, access_morgue, access_surgery, access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels) @@ -234,6 +239,7 @@ spawn_positions = 1 is_security = 1 supervisors = "the head of security" + department_head = list("Head of Security") selection_color = "#ffeeee" access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_morgue, access_weapons, access_pilot, access_external_airlocks) minimal_access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_weapons, access_pilot, access_external_airlocks) diff --git a/code/game/jobs/job/silicon.dm b/code/game/jobs/job/silicon.dm index 1b092087997..0def40bc7b1 100644 --- a/code/game/jobs/job/silicon.dm +++ b/code/game/jobs/job/silicon.dm @@ -6,6 +6,7 @@ spawn_positions = 1 selection_color = "#ccffcc" supervisors = "your laws" + department_head = list("Captain") req_admin_notify = 1 minimal_player_age = 30 exp_requirements = 1200 @@ -26,6 +27,7 @@ total_positions = 1 spawn_positions = 1 supervisors = "your laws and the AI" //Nodrak + department_head = list("AI") selection_color = "#ddffdd" minimal_player_age = 21 exp_requirements = 300 diff --git a/code/game/jobs/job/supervisor.dm b/code/game/jobs/job/supervisor.dm index 3cd236881c5..f82b4cd00d4 100644 --- a/code/game/jobs/job/supervisor.dm +++ b/code/game/jobs/job/supervisor.dm @@ -6,6 +6,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) total_positions = 1 spawn_positions = 1 supervisors = "Nanotrasen officials" + department_head = list("Nanotrasen Navy Officer") selection_color = "#ccccff" req_admin_notify = 1 is_command = 1 @@ -64,6 +65,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) total_positions = 1 spawn_positions = 1 supervisors = "the captain" + department_head = list("Captain") selection_color = "#ddddff" req_admin_notify = 1 is_command = 1 @@ -111,6 +113,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) total_positions = 1 spawn_positions = 1 supervisors = "the command staff" + department_head = list("Captain") selection_color = "#ddddff" req_admin_notify = 1 is_command = 1 @@ -156,6 +159,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) total_positions = 1 spawn_positions = 1 supervisors = "the Nanotrasen representative" + department_head = list("Captain") selection_color = "#ddddff" req_admin_notify = 1 is_command = 1 @@ -202,6 +206,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) total_positions = 1 spawn_positions = 1 supervisors = "the Nanotrasen Supreme Court" + department_head = list("Captain") selection_color = "#ddddff" req_admin_notify = 1 is_legal = 1 @@ -250,6 +255,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) spawn_positions = 2 is_legal = 1 supervisors = "the magistrate" + department_head = list("Captain") selection_color = "#ddddff" access = list(access_lawyer, access_court, access_sec_doors, access_maint_tunnels) minimal_access = list(access_lawyer, access_court, access_sec_doors, access_maint_tunnels) diff --git a/code/game/jobs/job/support.dm b/code/game/jobs/job/support.dm index b7d6b448895..60f1bd541a8 100644 --- a/code/game/jobs/job/support.dm +++ b/code/game/jobs/job/support.dm @@ -7,6 +7,7 @@ spawn_positions = 1 is_service = 1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_hydroponics, access_bar, access_kitchen, access_morgue, access_weapons, access_mineral_storeroom) minimal_access = list(access_bar, access_maint_tunnels, access_weapons, access_mineral_storeroom) @@ -46,6 +47,7 @@ spawn_positions = 1 is_service = 1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_hydroponics, access_bar, access_kitchen, access_morgue) minimal_access = list(access_kitchen, access_maint_tunnels) @@ -73,6 +75,7 @@ spawn_positions = 2 is_service = 1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_hydroponics, access_bar, access_kitchen, access_morgue) minimal_access = list(access_hydroponics, access_morgue, access_maint_tunnels) @@ -106,6 +109,7 @@ spawn_positions = 1 is_supply = 1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mint, access_mining, access_mining_station, access_mineral_storeroom) minimal_access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mint, access_mining, access_mining_station, access_mineral_storeroom) @@ -133,6 +137,7 @@ spawn_positions = 2 is_supply = 1 supervisors = "the quartermaster" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mint, access_mining, access_mining_station, access_mineral_storeroom) minimal_access = list(access_maint_tunnels, access_cargo, access_cargo_bot, access_mailsorting, access_mineral_storeroom) @@ -158,6 +163,7 @@ spawn_positions = 3 is_supply = 1 supervisors = "the quartermaster" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mint, access_mining, access_mining_station, access_mineral_storeroom) minimal_access = list(access_mining, access_mint, access_mining_station, access_mailsorting, access_maint_tunnels, access_mineral_storeroom) @@ -196,6 +202,7 @@ spawn_positions = 1 is_service = 1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_clown, access_theatre, access_maint_tunnels) minimal_access = list(access_clown, access_theatre, access_maint_tunnels) @@ -252,6 +259,7 @@ spawn_positions = 1 is_service = 1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_mime, access_theatre, access_maint_tunnels) minimal_access = list(access_mime, access_theatre, access_maint_tunnels) @@ -303,6 +311,7 @@ spawn_positions = 1 is_service = 1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_janitor, access_maint_tunnels) minimal_access = list(access_janitor, access_maint_tunnels) @@ -328,6 +337,7 @@ spawn_positions = 1 is_service = 1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_library, access_maint_tunnels) minimal_access = list(access_library, access_maint_tunnels) @@ -354,6 +364,7 @@ spawn_positions = 1 is_service = 1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" alt_titles = list("Hair Stylist","Beautician") access = list(access_maint_tunnels) diff --git a/code/game/jobs/job/support_chaplain.dm b/code/game/jobs/job/support_chaplain.dm index 8ff51148b9f..17cc36bb059 100644 --- a/code/game/jobs/job/support_chaplain.dm +++ b/code/game/jobs/job/support_chaplain.dm @@ -7,6 +7,7 @@ spawn_positions = 1 is_service = 1 supervisors = "the head of personnel" + department_head = list("Head of Personnel") selection_color = "#dddddd" access = list(access_morgue, access_chapel_office, access_crematorium, access_maint_tunnels) minimal_access = list(access_morgue, access_chapel_office, access_crematorium, access_maint_tunnels) diff --git a/code/game/jobs/job_exp.dm b/code/game/jobs/job_exp.dm index c9ce95a86a9..4a1624426b7 100644 --- a/code/game/jobs/job_exp.dm +++ b/code/game/jobs/job_exp.dm @@ -1,3 +1,40 @@ +// Playtime requirements for special roles (hours) + +var/global/list/role_playtime_requirements = list( + // CREW-FRIENDLY ROLES + ROLE_PAI = 0, + ROLE_POSIBRAIN = 5, // Same as cyborg job. + ROLE_SENTIENT = 5, + ROLE_ERT = 10, // High, because they're team-based, and we want ERT to be robust + ROLE_TRADER = 5, + + // SOLO ANTAGS + ROLE_TRAITOR = 3, + ROLE_CHANGELING = 3, + ROLE_WIZARD = 3, + ROLE_VAMPIRE = 3, + ROLE_BLOB = 3, + ROLE_REVENANT = 3, + ROLE_BORER = 3, + ROLE_NINJA = 3, + ROLE_MORPH = 3, + ROLE_DEMON = 3, + + // DUO ANTAGS + ROLE_GUARDIAN = 5, + ROLE_GSPIDER = 5, + + // TEAM ANTAGS + // Higher numbers here, because they require more experience to be played correctly + ROLE_SHADOWLING = 10, + ROLE_REV = 10, + ROLE_OPERATIVE = 10, + ROLE_CULTIST = 10, + ROLE_RAIDER = 10, + ROLE_ALIEN = 10, + ROLE_ABDUCTOR = 10, +) + // Admin Verbs /client/proc/cmd_mentor_check_player_exp() //Allows admins to determine who the newer players are. @@ -53,6 +90,27 @@ // Procs +/proc/role_available_in_playtime(client/C, role) + if(!C) + return 0 + if(!role) + return 0 + if(!config.use_exp_restrictions) + return 0 + if(config.use_exp_restrictions_admin_bypass && check_rights(R_ADMIN, 0, C.mob)) + return 0 + var/list/play_records = params2list(C.prefs.exp) + var/isexempt = text2num(play_records[EXP_TYPE_EXEMPT]) + if(isexempt) + return 0 + var/minimal_player_hrs = role_playtime_requirements[role] + if(!minimal_player_hrs) + return 0 + var/req_mins = minimal_player_hrs * 60 + var/my_exp = text2num(play_records[EXP_TYPE_CREW]) + if(!isnum(my_exp)) + return req_mins + return max(0, req_mins - my_exp) /datum/job/proc/available_in_playtime(client/C) if(!C) diff --git a/code/game/jobs/jobs.dm b/code/game/jobs/jobs.dm index 73f5cc2e5b0..a9aa142ac1d 100644 --- a/code/game/jobs/jobs.dm +++ b/code/game/jobs/jobs.dm @@ -25,6 +25,7 @@ var/const/VIROLOGIST =(1<<6) var/const/PSYCHIATRIST =(1<<7) var/const/ROBOTICIST =(1<<8) var/const/PARAMEDIC =(1<<9) +var/const/CORONER =(1<<10) var/const/SUPPORT =(1<<2) @@ -84,7 +85,8 @@ var/list/medical_positions = list( "Psychiatrist", "Chemist", "Virologist", - "Paramedic" + "Paramedic", + "Coroner" ) diff --git a/code/game/machinery/OpTable.dm b/code/game/machinery/OpTable.dm index 6a5253b599c..4b332b94543 100644 --- a/code/game/machinery/OpTable.dm +++ b/code/game/machinery/OpTable.dm @@ -14,6 +14,7 @@ var/obj/machinery/computer/operating/computer = null buckle_lying = 90 var/no_icon_updates = 0 //set this to 1 if you don't want the icons ever changing + var/list/injected_reagents = list() /obj/machinery/optable/New() ..() @@ -97,8 +98,18 @@ icon_state = "table2-idle" return 0 +/obj/machinery/optable/Crossed(atom/movable/AM) + . = ..() + if(iscarbon(AM) && LAZYLEN(injected_reagents)) + to_chat(AM, "You feel a series of tiny pricks!") + /obj/machinery/optable/process() check_victim() + if(LAZYLEN(injected_reagents)) + for(var/mob/living/carbon/C in get_turf(src)) + for(var/chemical in injected_reagents) + if(C.reagents.get_reagent_amount(chemical) < 1) + C.reagents.add_reagent(chemical, 1) /obj/machinery/optable/proc/take_victim(mob/living/carbon/C, mob/living/carbon/user as mob) if(C == user) diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index b3957234d01..e5c9d1a0804 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -5,6 +5,9 @@ #define CLONE_BIOMASS 150 #define BIOMASS_MEAT_AMOUNT 50 +#define MINIMUM_HEAL_LEVEL 40 +#define CLONE_INITIAL_DAMAGE 190 +#define BRAIN_INITIAL_DAMAGE 90 // our minds are too feeble for 190 /obj/machinery/clonepod anchored = 1 @@ -15,12 +18,10 @@ icon_state = "pod_0" req_access = list(access_genetics) //For premature unlocking. var/mob/living/carbon/human/occupant - var/heal_level = 90 //The clone is released once its health reaches this level. - var/locked = 0 + var/heal_level //The clone is released once its health reaches this level. var/obj/machinery/computer/cloning/connected = null //So we remember the connected clone machine. var/mess = 0 //Need to clean out it if it's full of exploded clone. var/attempting = 0 //One clone attempt at a time thanks - var/eject_wait = 0 //Don't eject them as soon as they are created fuckkk var/biomass = 0 var/speed_coeff var/efficiency @@ -33,6 +34,10 @@ var/obj/effect/countdown/clonepod/countdown + var/list/brine_types = list("corazone", "salbutamol", "hydrocodone") + var/list/missing_organs + var/organs_number = 0 + light_color = LIGHT_COLOR_PURE_GREEN /obj/machinery/clonepod/power_change() @@ -84,6 +89,7 @@ connected.pods -= src QDEL_NULL(Radio) QDEL_NULL(countdown) + QDEL_LIST(missing_organs) return ..() /obj/machinery/clonepod/RefreshParts() @@ -93,7 +99,7 @@ efficiency += S.rating for(var/obj/item/weapon/stock_parts/manipulator/P in component_parts) speed_coeff += P.rating - heal_level = min((efficiency * 15) + 10, 100) + heal_level = max(min((efficiency * 15) + 10, 100), MINIMUM_HEAL_LEVEL) //The return of data disks?? Just for transferring between genetics machine/cloning machine. //TO-DO: Make the genetics machine accept them. @@ -217,19 +223,21 @@ if(!G) return 0 +/* + if(clonemind.damnation_type) //Can't clone the damned. + playsound('sound/hallucinations/veryfar_noise.ogg', 50, 0) + malfunction() + return -1 // so that the record gets flushed out + */ + if(biomass >= CLONE_BIOMASS) biomass -= CLONE_BIOMASS else return 0 attempting = 1 //One at a time!! - locked = 1 countdown.start() - eject_wait = 1 - spawn(30) - eject_wait = 0 - if(!R.dna) R.dna = new /datum/dna() @@ -246,9 +254,24 @@ for(var/datum/language/L in R.languages) H.add_language(L.name) + domutcheck(H, null, MUTCHK_FORCED) //Ensures species that get powers by the species proc handle_dna keep them + + if(efficiency > 2 && efficiency < 5 && prob(25)) + randmutb(H) + if(efficiency > 5 && prob(20)) + randmutg(H) + if(efficiency < 3 && prob(50)) + randmutb(H) + + H.dna.UpdateSE() + H.dna.UpdateUI() + + H.sync_organ_dna(1) // It's literally a fresh body as you can get, so all organs properly belong to it + H.UpdateAppearance() + + check_brine() //Get the clone body ready - H.adjustCloneLoss(190) //new damage var so you can't eject a clone early then stab them to abuse the current damage system --NeoFite - H.adjustBrainLoss(90) // The rand(10, 30) will come out as extra brain damage + maim_clone(H) H.Paralyse(4) //Here let's calculate their health so the pod doesn't immediately eject them!!! @@ -266,21 +289,6 @@ beginning to regenerate in a cloning pod. You will become conscious when it is complete."}) - domutcheck(H, null, MUTCHK_FORCED) //Ensures species that get powers by the species proc handle_dna keep them - - if(efficiency > 2 && efficiency < 5 && prob(25)) - randmutb(H) - if(efficiency > 5 && prob(20)) - randmutg(H) - if(efficiency < 3 && prob(50)) - randmutb(H) - - H.dna.UpdateSE() - H.dna.UpdateUI() - - H.sync_organ_dna(1) // It's literally a fresh body as you can get, so all organs properly belong to it - H.UpdateAppearance() - update_icon() H.suiciding = 0 @@ -299,13 +307,11 @@ if(stat & NOPOWER) //Autoeject if power is lost if(occupant) - locked = 0 go_out() connected_message("Clone Ejected: Loss of power.") else if((occupant) && (occupant.loc == src)) if((occupant.stat == DEAD) || (occupant.suiciding)) //Autoeject corpses and suiciding dudes. - locked = 0 announce_radio_message("The cloning of [occupant] has been aborted due to unrecoverable tissue failure.") go_out() connected_message("Clone Rejected: Deceased.") @@ -316,34 +322,43 @@ //Slowly get that clone healed and finished. occupant.adjustCloneLoss(-((speed_coeff/2))) + // For human species that lack non-vital parts for some weird reason + if(organs_number) + var/progress = CLONE_INITIAL_DAMAGE - occupant.getCloneLoss() + progress += (100 - MINIMUM_HEAL_LEVEL) + var/milestone = CLONE_INITIAL_DAMAGE / organs_number +// Doing this as a #define so that the value can change when evaluated multiple times +#define INSTALLED (organs_number - LAZYLEN(missing_organs)) + + while((progress / milestone) > INSTALLED && LAZYLEN(missing_organs)) + var/obj/item/organ/I = pick_n_take(missing_organs) + I.replaced(occupant) + +#undef INSTALLED + //Premature clones may have brain damage. occupant.adjustBrainLoss(-((speed_coeff/20)*efficiency)) - //So clones don't die of oxyloss in a running pod. - if(occupant.reagents.get_reagent_amount("salbutamol") < 5) - occupant.reagents.add_reagent("salbutamol", 5) + check_brine() //Also heal some oxyloss ourselves just in case!! occupant.adjustOxyLoss(-4) use_power(7500) //This might need tweaking. - else if((occupant.cloneloss <= (100 - heal_level)) && (!eject_wait)) + else if((occupant.cloneloss <= (100 - heal_level))) connected_message("Cloning Process Complete.") announce_radio_message("The cloning cycle of [occupant] is complete.") - locked = 0 go_out() else if((!occupant) || (occupant.loc != src)) occupant = null - if(locked) - locked = 0 update_icon() use_power(200) //Let's unlock this early I guess. Might be too early, needs tweaking. /obj/machinery/clonepod/attackby(obj/item/weapon/W, mob/user, params) - if(!(occupant || mess || locked)) + if(!(occupant || mess)) if(default_deconstruction_screwdriver(user, "[icon_state]_maintenance", "[initial(icon_state)]", W)) return @@ -357,14 +372,14 @@ if(!check_access(W)) to_chat(user, "Access Denied.") return - if (!locked || !occupant) - return - if(occupant.health < -20 && occupant.stat != DEAD) - to_chat(user, "Access Refused. Patient status still unstable.") + if(!(occupant || mess)) + to_chat(user, "Error: Pod has no occupant.") return else - locked = 0 - to_chat(user, "System unlocked.") + connected_message("Authorized Ejection") + announce_radio_message("An authorized ejection of [occupant.real_name] has occured") + to_chat(user, "You force an emergency ejection.") + go_out() //Removing cloning pod biomass else if(istype(W, /obj/item/weapon/reagent_containers/food/snacks/meat)) @@ -374,7 +389,7 @@ qdel(W) return else if(istype(W, /obj/item/weapon/wrench)) - if(locked && (anchored || occupant)) + if(occupant) to_chat(user, "Can not do that while [src] is in use.") else if(anchored) @@ -399,8 +414,6 @@ /obj/machinery/clonepod/emag_act(user) if(isnull(occupant)) return - to_chat(user, "You force an emergency ejection.") - locked = 0 go_out() /obj/machinery/clonepod/proc/update_clone_antag(var/mob/living/carbon/human/H) @@ -435,21 +448,7 @@ connected.updateUsrDialog() return 1 -/obj/machinery/clonepod/verb/eject() - set name = "Eject Cloner" - set category = "Object" - set src in oview(1) - - if(!usr) - return - if(usr.incapacitated()) - return - go_out() - add_fingerprint(usr) - /obj/machinery/clonepod/proc/go_out() - if(locked) - return countdown.stop() if(mess) //Clean that mess and dump those gibs! @@ -470,8 +469,11 @@ You feel like a new being.") occupant.flash_eyes(visual = 1) + for(var/i in missing_organs) + qdel(i) + missing_organs.Cut() occupant.forceMove(get_turf(src)) - eject_wait = 0 //If it's still set somehow. + occupant.update_body() domutcheck(occupant) //Waiting until they're out before possible notransform. occupant.shock_stage = 0 //Reset Shock occupant = null @@ -481,19 +483,24 @@ if(occupant) connected_message("Critical Error!") announce_radio_message("Critical error! Please contact a Thinktronic Systems technician, as your warranty may be affected.") - mess = 1 - update_icon() if(occupant.mind != clonemind) clonemind.transfer_to(occupant) occupant.grab_ghost() // We really just want to make you suffer. to_chat(occupant, {"Agony blazes across your consciousness as your body is torn apart.
Is this what dying is like? Yes it is.
"}) - playsound(loc, 'sound/machines/warning-buzzer.ogg', 50, 0) occupant << sound('sound/hallucinations/veryfar_noise.ogg',0,1,50) + for(var/i in missing_organs) + qdel(i) + missing_organs.Cut() spawn(40) qdel(occupant) + + playsound(loc, 'sound/machines/warning-buzzer.ogg', 50, 0) + mess = TRUE + update_icon() + /obj/machinery/clonepod/update_icon() ..() icon_state = "pod_0" @@ -535,6 +542,43 @@ else return +/obj/machinery/clonepod/proc/maim_clone(mob/living/carbon/human/H) + LAZYINITLIST(missing_organs) + for(var/i in missing_organs) + qdel(i) + missing_organs.Cut() + + H.setCloneLoss(CLONE_INITIAL_DAMAGE) + H.setBrainLoss(BRAIN_INITIAL_DAMAGE) + + for(var/o in H.internal_organs) + var/obj/item/organ/O = o + if(!istype(O) || O.vital) + continue + + // Let's non-specially remove all non-vital organs + // What could possibly go wrong + var/obj/item/I = O.remove(H) + // Make this support stuff that turns into items when removed + I.forceMove(src) + missing_organs += I + + var/static/list/zones = list("r_arm", "l_arm", "r_leg", "l_leg") + for(var/zone in zones) + var/obj/item/organ/external/E = H.get_organ(zone) + var/obj/item/I = E.remove(H) + I.forceMove(src) + missing_organs += I + + organs_number = LAZYLEN(missing_organs) + +/obj/machinery/clonepod/proc/check_brine() + // Clones are in a pickled bath of mild chemicals, keeping + // them alive, despite their lack of internal organs + for(var/bt in brine_types) + if(occupant.reagents.get_reagent_amount(bt) < 1) + occupant.reagents.add_reagent(bt, 1) + /* * Diskette Box */ @@ -586,3 +630,5 @@ if(istype(A, /obj/machinery/clonepod)) A:malfunction() */ + +#undef MINIMUM_HEAL_LEVEL diff --git a/code/game/machinery/computer/HolodeckControl.dm b/code/game/machinery/computer/HolodeckControl.dm index 0aaba4caf13..886dac328de 100644 --- a/code/game/machinery/computer/HolodeckControl.dm +++ b/code/game/machinery/computer/HolodeckControl.dm @@ -498,7 +498,7 @@ icon_state = "hoop" anchored = 1 density = 1 - throwpass = 1 + pass_flags = LETPASSTHROW /obj/structure/holohoop/attackby(obj/item/weapon/W as obj, mob/user as mob, params) if(istype(W, /obj/item/weapon/grab) && get_dist(src,user)<2) diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index 2f5e90e3039..1dc88f9663d 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -30,14 +30,14 @@ var/frame_desc = null var/contain_parts = 1 toolspeed = 1 - usesound = 'sound/items/Deconstruct.ogg' + usesound = 'sound/items/Deconstruct.ogg' /obj/item/weapon/circuitboard/computer - board_type = "computer" - + board_type = "computer" + /obj/item/weapon/circuitboard/machine - board_type = "machine" - + board_type = "machine" + /obj/item/weapon/circuitboard/message_monitor name = "Circuit board (Message Monitor)" build_path = /obj/machinery/computer/message_monitor @@ -80,6 +80,26 @@ /obj/item/weapon/circuitboard/card name = "Circuit board (ID Computer)" build_path = /obj/machinery/computer/card +/obj/item/weapon/circuitboard/card/minor + name = "Circuit board (Dept ID Computer)" + build_path = /obj/machinery/computer/card/minor + var/target_dept = TARGET_DEPT_GENERIC +/obj/item/weapon/circuitboard/card/minor/hos + name = "Circuit board (Sec ID Computer)" + build_path = /obj/machinery/computer/card/minor/hos + target_dept = TARGET_DEPT_SEC +/obj/item/weapon/circuitboard/card/minor/cmo + name = "Circuit board (Medical ID Computer)" + build_path = /obj/machinery/computer/card/minor/cmo + target_dept = TARGET_DEPT_MED +/obj/item/weapon/circuitboard/card/minor/rd + name = "Circuit board (Science ID Computer)" + build_path = /obj/machinery/computer/card/minor/rd + target_dept = TARGET_DEPT_SCI +/obj/item/weapon/circuitboard/card/minor/ce + name = "Circuit board (Engineering ID Computer)" + build_path = /obj/machinery/computer/card/minor/ce + target_dept = TARGET_DEPT_ENG /obj/item/weapon/circuitboard/card/centcom name = "Circuit board (CentComm ID Computer)" build_path = /obj/machinery/computer/card/centcom diff --git a/code/game/machinery/computer/card.dm b/code/game/machinery/computer/card.dm index 3b48539febc..a6c072fec60 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -14,6 +14,7 @@ var/time_last_changed_position = 0 var/obj/item/weapon/card/id/modify = null var/mode = 0.0 var/printing = null + var/target_dept = 0 //Which department this computer has access to. 0=all departments //Cooldown for closing positions in seconds //if set to -1: No cooldown... probably a bad idea @@ -65,10 +66,11 @@ var/time_last_changed_position = 0 /obj/machinery/computer/card/proc/format_jobs(list/jobs) var/list/formatted = list() for(var/job in jobs) - formatted.Add(list(list( - "display_name" = replacetext(job, " ", " "), - "target_rank" = get_target_rank(), - "job" = job))) + if(job_in_department(job_master.GetJob(job))) + formatted.Add(list(list( + "display_name" = replacetext(job, " ", " "), + "target_rank" = get_target_rank(), + "job" = job))) return formatted @@ -77,6 +79,8 @@ var/time_last_changed_position = 0 for(var/datum/job/job in job_master.occupations) if(job_blacklisted(job)) continue + if(!job_in_department(job)) + continue formatted.Add(list(list( "title" = job.title, "current_positions" = job.current_positions, @@ -92,7 +96,6 @@ var/time_last_changed_position = 0 formatted.Add(list(list( "display_name" = get_skin_desc(skin), "skin" = skin))) - return formatted /obj/machinery/computer/card/verb/eject_id() @@ -100,7 +103,7 @@ var/time_last_changed_position = 0 set name = "Eject ID Card" set src in oview(1) - if(usr.restrained()) + if(usr.restrained()) return if(scan) @@ -141,7 +144,7 @@ var/time_last_changed_position = 0 //Logic check for Topic() if you can open the job /obj/machinery/computer/card/proc/can_open_job(datum/job/job) if(job) - if(!job_blacklisted(job)) + if(!job_blacklisted(job) && job_in_department(job, FALSE)) if((job.total_positions <= player_list.len * (max_relative_positions / 100))) var/delta = (world.time / 10) - time_last_changed_position if((change_position_cooldown < delta) || (opened_positions[job.title] < 0)) @@ -153,7 +156,7 @@ var/time_last_changed_position = 0 //Logic check for Topic() if you can close the job /obj/machinery/computer/card/proc/can_close_job(datum/job/job) if(job) - if(!job_blacklisted(job)) + if(!job_blacklisted(job) && job_in_department(job, FALSE)) if(job.total_positions > job.current_positions) var/delta = (world.time / 10) - time_last_changed_position if((change_position_cooldown < delta) || (opened_positions[job.title] > 0)) @@ -162,6 +165,28 @@ var/time_last_changed_position = 0 return -1 return 0 +/obj/machinery/computer/card/proc/job_in_department(datum/job/targetjob, includecivs = 1) + if(!scan || !scan.access) + return 0 + if(!target_dept) + return 1 + if(!scan.assignment) + return 0 + if(!targetjob || !targetjob.title) + return 0 + if(targetjob.title in get_subordinates(scan.assignment, includecivs)) + return 1 + return 0 + +/obj/machinery/computer/card/proc/get_subordinates(rank, addcivs) + var/list/jobs_returned = list() + for(var/datum/job/thisjob in job_master.occupations) + if(rank in thisjob.department_head) + jobs_returned += thisjob.title + if(addcivs) + jobs_returned += "Civilian" + return jobs_returned + /obj/machinery/computer/card/attack_ai(var/mob/user as mob) return attack_hand(user) @@ -198,6 +223,7 @@ var/time_last_changed_position = 0 data["centcom_access"] = is_centcom() data["all_centcom_access"] = null data["regions"] = null + data["target_dept"] = target_dept data["engineering_jobs"] = format_jobs(engineering_positions) data["medical_jobs"] = format_jobs(medical_positions) @@ -267,7 +293,7 @@ var/time_last_changed_position = 0 else modify.forceMove(get_turf(src)) modify = null - else if(Adjacent(usr)) + else if(Adjacent(usr)) var/obj/item/I = usr.get_active_hand() if(istype(I, /obj/item/weapon/card/id)) usr.drop_item() @@ -284,7 +310,7 @@ var/time_last_changed_position = 0 else scan.forceMove(get_turf(src)) scan = null - else if(Adjacent(usr)) + else if(Adjacent(usr)) var/obj/item/I = usr.get_active_hand() if(istype(I, /obj/item/weapon/card/id)) usr.drop_item() @@ -292,7 +318,7 @@ var/time_last_changed_position = 0 scan = I if("access") - if(href_list["allowed"]) + if(href_list["allowed"] && !target_dept) if(is_authenticated(usr)) var/access_type = text2num(href_list["access_target"]) var/access_allowed = text2num(href_list["allowed"]) @@ -302,13 +328,22 @@ var/time_last_changed_position = 0 modify.access += access_type if("skin") - var/skin = href_list["skin_target"] - if(is_authenticated(usr) && modify && ((skin in get_station_card_skins()) || ((skin in get_centcom_card_skins()) && is_centcom()))) - modify.icon_state = href_list["skin_target"] + if(!target_dept) + var/skin = href_list["skin_target"] + if(is_authenticated(usr) && modify && ((skin in get_station_card_skins()) || ((skin in get_centcom_card_skins()) && is_centcom()))) + modify.icon_state = href_list["skin_target"] if("assign") if(is_authenticated(usr) && modify) var/t1 = href_list["assign_target"] + if(target_dept && modify.assignment == "Unassigned") + visible_message("[src]: Demoted individuals must see the HoP for a new job.") + return 0 + if(!job_in_department(job_master.GetJob(modify.rank), FALSE)) + visible_message("[src]: Cross-department job transfers must be done by the HoP.") + return 0 + if(!job_in_department(job_master.GetJob(t1))) + return 0 if(t1 == "Custom") var/temp_t = sanitize(copytext(input("Enter a custom job assignment.","Assignment"),1,MAX_MESSAGE_LEN)) //let custom jobs function as an impromptu alt title, mainly for sechuds @@ -332,24 +367,25 @@ var/time_last_changed_position = 0 access = jobdatum.get_access() modify.access = access - modify.assignment = t1 modify.rank = t1 + modify.assignment = t1 + callHook("reassign_employee", list(modify)) if("reg") - if(is_authenticated(usr)) + if(is_authenticated(usr) && !target_dept) var/t2 = modify if((modify == t2 && (in_range(src, usr) || (istype(usr, /mob/living/silicon))) && istype(loc, /turf))) var/temp_name = reject_bad_name(href_list["reg"]) if(temp_name) modify.registered_name = temp_name else - src.visible_message("[src] buzzes rudely.") + visible_message("[src] buzzes rudely.") nanomanager.update_uis(src) if("account") - if(is_authenticated(usr)) + if(is_authenticated(usr) && !target_dept) var/t2 = modify if((modify == t2 && (in_range(src, usr) || (istype(usr, /mob/living/silicon))) && istype(loc, /turf))) var/account_num = text2num(href_list["account"]) @@ -360,7 +396,7 @@ var/time_last_changed_position = 0 mode = text2num(href_list["mode_target"]) if("print") - if(!printing) + if(!printing && !target_dept) printing = 1 playsound(loc, 'sound/goonstation/machines/printer_dotmatrix.ogg', 50, 1) spawn(50) @@ -393,17 +429,36 @@ var/time_last_changed_position = 0 P.info += "" if("terminate") - if(is_authenticated(usr)) + if(is_authenticated(usr) && !target_dept) modify.assignment = "Terminated" modify.access = list() - callHook("terminate_employee", list(modify)) + if("demote") + if(is_authenticated(usr)) + if(modify.assignment == "Unassigned") + visible_message("[src]: Unassigned crew cannot be demoted any further. If further action is warranted, ask the Captain about Termination.") + return 0 + if(!job_in_department(job_master.GetJob(modify.rank), FALSE)) + visible_message("[src]: Heads may only demote members of their own department.") + return 0 + + var/list/access = list() + var/datum/job/jobdatum = new /datum/job/civilian + access = jobdatum.get_access() + + modify.access = access + modify.rank = "Civilian" + modify.assignment = "Unassigned" + modify.icon_state = "id" + if("make_job_available") // MAKE ANOTHER JOB POSITION AVAILABLE FOR LATE JOINERS if(is_authenticated(usr)) var/edit_job_target = href_list["job"] var/datum/job/j = job_master.GetJob(edit_job_target) + if(!job_in_department(j, FALSE)) + return 0 if(!j) return 0 if(can_open_job(j) != 1) @@ -420,6 +475,8 @@ var/time_last_changed_position = 0 if(is_authenticated(usr)) var/edit_job_target = href_list["job"] var/datum/job/j = job_master.GetJob(edit_job_target) + if(!job_in_department(j, FALSE)) + return 0 if(!j) return 0 if(can_close_job(j) != 1) @@ -442,4 +499,42 @@ var/time_last_changed_position = 0 circuit = /obj/item/weapon/circuitboard/card/centcom req_access = list(access_cent_commander) change_position_cooldown = -1 - blacklisted = list() \ No newline at end of file + blacklisted = list() + +/obj/machinery/computer/card/minor + name = "department management console" + target_dept = TARGET_DEPT_GENERIC + desc = "You can use this to change ID's for specific departments." + icon_screen = "idminor" + circuit = /obj/item/weapon/circuitboard/card/minor + +/obj/machinery/computer/card/minor/hos + name = "security management console" + target_dept = TARGET_DEPT_SEC + icon_screen = "idhos" + light_color = LIGHT_COLOR_RED + req_access = list(access_hos) + circuit = /obj/item/weapon/circuitboard/card/minor/hos + +/obj/machinery/computer/card/minor/cmo + name = "medical management console" + target_dept = TARGET_DEPT_MED + icon_screen = "idcmo" + req_access = list(access_cmo) + circuit = /obj/item/weapon/circuitboard/card/minor/cmo + +/obj/machinery/computer/card/minor/rd + name = "science management console" + target_dept = TARGET_DEPT_SCI + icon_screen = "idrd" + light_color = LIGHT_COLOR_PINK + req_access = list(access_rd) + circuit = /obj/item/weapon/circuitboard/card/minor/rd + +/obj/machinery/computer/card/minor/ce + name = "engineering management console" + target_dept = TARGET_DEPT_ENG + icon_screen = "idce" + light_color = COLOR_YELLOW + req_access = list(access_ce) + circuit = /obj/item/weapon/circuitboard/card/minor/ce \ No newline at end of file diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm index ee307dd84d5..5f72dab528c 100644 --- a/code/game/machinery/computer/cloning.dm +++ b/code/game/machinery/computer/cloning.dm @@ -310,6 +310,7 @@ temp = "Error: No cloning pod detected." else var/obj/machinery/clonepod/pod = selected_pod + var/cloneresult if(!selected_pod) temp = "Error: No cloning pod selected." else if(pod.occupant) @@ -320,13 +321,16 @@ temp = "Error: The cloning pod is malfunctioning." else if(!config.revival_cloning) temp = "Error: Unable to initiate cloning cycle." - else if(pod.growclone(C)) - temp = "Initiating cloning cycle..." - records.Remove(C) - qdel(C) - menu = 1 else - temp = "[C.name] => Initialisation failure." + cloneresult = pod.growclone(C) + if(cloneresult) + if(cloneresult > 0) + temp = "Initiating cloning cycle..." + records.Remove(C) + qdel(C) + menu = 1 + else + temp = "[C.name] => Initialisation failure." else temp = "Error: Data corruption." diff --git a/code/game/machinery/computer/prisoner.dm b/code/game/machinery/computer/prisoner.dm index 7c647b61e90..fed409d9507 100644 --- a/code/game/machinery/computer/prisoner.dm +++ b/code/game/machinery/computer/prisoner.dm @@ -20,6 +20,14 @@ /obj/machinery/computer/prisoner/attack_ai(var/mob/user as mob) return src.attack_hand(user) +/obj/machinery/computer/prisoner/New() + prisoncomputer_list += src + return ..() + +/obj/machinery/computer/prisoner/Destroy() + prisoncomputer_list -= src + return ..() + /obj/machinery/computer/prisoner/attack_hand(var/mob/user as mob) if(..()) return 1 diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 6fdb90575ea..16efcb7de76 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -120,7 +120,7 @@ else security["empty"] = 1 return data - + /obj/machinery/computer/secure_data/Topic(href, href_list) if(..()) return 1 @@ -141,6 +141,12 @@ qdel(R) update_all_mob_security_hud() setTemp("

All records deleted.

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

All cell logs deleted.

") + cell_logs.Cut() + else + to_chat(usr, "Error; No cell logs to delete.") if("del_r2") if(active2) qdel(active2) @@ -254,6 +260,12 @@ buttons[++buttons.len] = list("name" = "No", "icon" = "times", "href" = null, "status" = null) setTemp("

Are you sure you wish to delete all records?

", buttons) + else if(href_list["del_alllogs"]) + var/list/buttons = list() + buttons[++buttons.len] = list("name" = "Yes", "icon" = "check", "href" = "del_alllogs2=1", "status" = null) + buttons[++buttons.len] = list("name" = "No", "icon" = "times", "href" = null, "status" = null) + setTemp("

Are you sure you wish to delete all cell logs?

", buttons) + else if(href_list["del_rg"]) if(active1) var/list/buttons = list() @@ -342,6 +354,24 @@ create_record_photo(active1) printing = 0 + else if(href_list["printlogs"]) + if(cell_logs.len && !printing) + var/obj/item/weapon/paper/P = input(usr, "Select log to print", "Available Cell Logs") as null|anything in cell_logs + if(!P) + return 0 + printing = 1 + playsound(loc, "sound/goonstation/machines/printer_dotmatrix.ogg", 50, 1) + to_chat(usr, "Printing file [P.name].") + sleep(50) + var/obj/item/weapon/paper/log = new /obj/item/weapon/paper(loc) + log.name = P.name + log.info = P.info + printing = 0 + return 1 + else + to_chat(usr, "[src] has no logs stored or is already printing.") + + else if(href_list["add_c"]) if(istype(active2, /datum/data/record)) var/a2 = active2 @@ -454,10 +484,10 @@ /obj/machinery/computer/secure_data/proc/setTemp(text, list/buttons = list()) temp = list("text" = text, "buttons" = buttons, "has_buttons" = buttons.len > 0) - -/obj/machinery/computer/secure_data/proc/update_all_mob_security_hud() + +/obj/machinery/computer/secure_data/proc/update_all_mob_security_hud() for(var/mob/living/carbon/human/H in mob_list) - H.sec_hud_set_security_status() + H.sec_hud_set_security_status() /obj/machinery/computer/secure_data/proc/create_record_photo(datum/data/record/R) // basically copy-pasted from the camera code but different enough that it has to be redone diff --git a/code/game/machinery/doors/brigdoors.dm b/code/game/machinery/doors/brigdoors.dm index 7ec9630a54c..a24af37dc72 100644 --- a/code/game/machinery/doors/brigdoors.dm +++ b/code/game/machinery/doors/brigdoors.dm @@ -28,9 +28,34 @@ var/list/obj/machinery/targets = list() var/timetoset = 0 // Used to set releasetime upon starting the timer var/obj/item/device/radio/Radio + var/printed = 0 maptext_height = 26 maptext_width = 32 +/obj/machinery/door_timer/proc/print_report() + var/logname = input(usr, "Name of the guilty?","[id] log name") + var/logcharges = stripped_multiline_input(usr, "What have they been charged with?","[id] log charges") + + if(!logname || !logcharges) + return 0 + + for(var/obj/machinery/computer/prisoner/C in prisoncomputer_list) + var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(C.loc) + P.name = "[id] log - [logname] [worldtime2text()]" + P.info = "
[id] - Brig record



" + P.info += {"
[station_name()] - Security Department

+
Admission data:

+ Log generated at: [worldtime2text()]
+ Detainee: [logname]
+ Duration: [timetoset/10] seconds
+ Charge(s): [logcharges]
+ Arresting Officer: [usr.name]


+ This log file was generated automatically upon activation of a cell timer."} + + playsound(C.loc, "sound/goonstation/machines/printer_dotmatrix.ogg", 50, 1) + cell_logs += P + return 1 + /obj/machinery/door_timer/initialize() ..() @@ -98,9 +123,15 @@ // Closes and locks doors, power check /obj/machinery/door_timer/proc/timer_start() + if(stat & (NOPOWER|BROKEN)) return 0 + if(!printed) + if(!print_report()) + timing = 0 + return 0 + // Set releasetime releasetime = world.timeofday + timetoset if(!(src in machine_processing)) @@ -134,6 +165,7 @@ // Reset releasetime releasetime = 0 + printed = 0 for(var/obj/machinery/door/window/brigdoor/door in targets) if(!door.density) @@ -277,6 +309,7 @@ F.flash() if(href_list["change"]) + printed = 1 timer_start() add_fingerprint(usr) diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index 2cd5f0a7a34..baaf936e189 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -167,18 +167,16 @@ ..() //When an object is thrown at the window -/obj/machinery/door/window/hitby(AM as mob|obj) - +/obj/machinery/door/window/hitby(atom/movable/AM) ..() var/tforce = 0 if(ismob(AM)) tforce = 40 - else - tforce = AM:throwforce + else if(isobj(AM)) + var/obj/O = AM + tforce = O.throwforce playsound(loc, 'sound/effects/Glasshit.ogg', 100, 1) take_damage(tforce) - //..() //Does this really need to be here twice? The parent proc doesn't even do anything yet. - Nodrak - return /obj/machinery/door/window/mech_melee_attack(obj/mecha/M) if(M.damtype == "brute") diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 03f5cc1f8c8..0f19d5c42ff 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -65,6 +65,7 @@ var/has_cover = 1 //Hides the cover /obj/machinery/porta_turret/centcom + name = "Centcom Turret" enabled = 0 ailock = 1 check_synth = 0 @@ -74,6 +75,14 @@ check_weapons = 1 check_anomalies = 1 +/obj/machinery/porta_turret/centcom/pulse + name = "Pulse Turret" + health = 200 + enabled = 1 + lethal = 1 + req_access = list(access_cent_commander) + installation = /obj/item/weapon/gun/energy/pulse/turret + /obj/machinery/porta_turret/stationary ailock = 1 lethal = 1 @@ -149,6 +158,10 @@ eshot_sound = 'sound/weapons/Laser.ogg' egun = 1 + if(/obj/item/weapon/gun/energy/pulse/turret) + eprojectile = /obj/item/projectile/beam/pulse + eshot_sound = 'sound/weapons/pulse.ogg' + var/list/turret_icons /obj/machinery/porta_turret/update_icon() if(!turret_icons) diff --git a/code/game/machinery/requests_console.dm b/code/game/machinery/requests_console.dm index 476162a27a1..21e91f3759b 100644 --- a/code/game/machinery/requests_console.dm +++ b/code/game/machinery/requests_console.dm @@ -19,6 +19,14 @@ #define RCS_SHIPPING 9 // Print Shipping Labels/Packages #define RCS_SHIP_LOG 10 // View Shipping Label Log +//Radio list +#define ENGI_ROLES list("Atmospherics","Mechanic","Engineering","Chief Engineer's Desk","Telecoms Admin") +#define SEC_ROLES list("Warden","Security","Brig Medbay","Head of Security's Desk") +#define MISC_ROLES list("Bar","Chapel","Kitchen","Hydroponics","Janitorial") +#define MED_ROLES list("Virology","Chief Medical Officer's Desk","Medbay") +#define COM_ROLES list("Blueshield","NT Representative","Head of Personnel's Desk","Captain's Desk","Bridge") +#define SCI_ROLES list("Robotics","Science","Research Director's Desk") + var/req_console_assistance = list() var/req_console_supplies = list() var/req_console_information = list() @@ -58,6 +66,8 @@ var/list/obj/machinery/requests_console/allConsoles = list() var/ship_tag_name = "" var/ship_tag_index = 0 var/print_cooldown = 0 //cooldown on shipping label printer, stores the in-game time of when the printer will next be ready + var/obj/item/device/radio/Radio + var/radiochannel = "" /obj/machinery/requests_console/power_change() ..() @@ -71,6 +81,10 @@ var/list/obj/machinery/requests_console/allConsoles = list() icon_state = "req_comp[newmessagepriority]" /obj/machinery/requests_console/New() + Radio = new /obj/item/device/radio(src) + Radio.listening = 1 + Radio.config(list("Engineering","Medical","Supply","Command","Science","Service","Security", "AI Private" = 0)) + Radio.follow_target = src ..() announcement.title = "[department] announcement" @@ -101,6 +115,7 @@ var/list/obj/machinery/requests_console/allConsoles = list() req_console_supplies -= department if(departmentType & RC_INFO) req_console_information -= department + QDEL_NULL(Radio) return ..() /obj/machinery/requests_console/attack_ghost(user as mob) @@ -189,7 +204,24 @@ var/list/obj/machinery/requests_console/allConsoles = list() pass = 1 if(pass) screen = RCS_SENTPASS - message_log += "Message sent to [recipient]
[message]" + if(recipient in ENGI_ROLES) + radiochannel = "Engineering" + if(recipient in SEC_ROLES) + radiochannel = "Security" + if(recipient in MISC_ROLES) + radiochannel = "Service" + if(recipient in MED_ROLES) + radiochannel = "Medical" + if(recipient in COM_ROLES) + radiochannel = "Command" + if(recipient in SCI_ROLES) + radiochannel = "Science" + if(recipient == "AI") + radiochannel = "AI Private" + if(recipient == "Cargo Bay") + radiochannel = "Supply" + message_log += "Message sent to [recipient] at [worldtime2text()]
[message]" + Radio.autosay("Alert; a new requests console message received for [recipient] from [department]", null, "[radiochannel]") else audible_message(text("[bicon(src)] *The Requests Console beeps: 'NOTICE: No server detected!'"),,4) diff --git a/code/game/machinery/shieldgen.dm b/code/game/machinery/shieldgen.dm index ff319d5037d..071ae52c942 100644 --- a/code/game/machinery/shieldgen.dm +++ b/code/game/machinery/shieldgen.dm @@ -94,51 +94,49 @@ /obj/machinery/shield/hitby(AM as mob|obj) - - //Super realistic, resource-intensive, real-time damage calculations. + ..() var/tforce = 0 if(ismob(AM)) tforce = 40 - else - tforce = AM:throwforce + else if(isobj(AM)) + var/obj/O = AM + tforce = O.throwforce - src.health -= tforce + health -= tforce //This seemed to be the best sound for hitting a force field. - playsound(src.loc, 'sound/effects/EMPulse.ogg', 100, 1) + playsound(loc, 'sound/effects/EMPulse.ogg', 100, 1) //Handle the destruction of the shield - if(src.health <= 0) + if(health <= 0) visible_message("The [src] dissipates") qdel(src) return //The shield becomes dense to absorb the blow.. purely asthetic. opacity = 1 - spawn(20) if(src) opacity = 0 - - ..() - return - + spawn(20) + if(src) + opacity = 0 /obj/machinery/shieldgen - name = "Emergency shield projector" - desc = "Used to seal minor hull breaches." - icon = 'icons/obj/objects.dmi' - icon_state = "shieldoff" - density = 1 - opacity = 0 - anchored = 0 - pressure_resistance = 2*ONE_ATMOSPHERE - req_access = list(access_engine) - var/const/max_health = 100 - var/health = max_health - var/active = 0 - var/malfunction = 0 //Malfunction causes parts of the shield to slowly dissapate - var/list/deployed_shields = list() - var/is_open = 0 //Whether or not the wires are exposed - var/locked = 0 + name = "Emergency shield projector" + desc = "Used to seal minor hull breaches." + icon = 'icons/obj/objects.dmi' + icon_state = "shieldoff" + density = 1 + opacity = 0 + anchored = 0 + pressure_resistance = 2*ONE_ATMOSPHERE + req_access = list(access_engine) + var/const/max_health = 100 + var/health = max_health + var/active = 0 + var/malfunction = 0 //Malfunction causes parts of the shield to slowly dissapate + var/list/deployed_shields = list() + var/is_open = 0 //Whether or not the wires are exposed + var/locked = 0 /obj/machinery/shieldgen/Destroy() QDEL_LIST(deployed_shields) diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index e694ac98817..f9de8b8d596 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -546,12 +546,10 @@ to_chat(user, "You successfully pull the coin out before the [src] could swallow it.") else to_chat(user, "You weren't able to pull the coin out fast enough, the machine ate it, string and all.") - coin = null - qdel(coin) + QDEL_NULL(coin) categories &= ~CAT_COIN else - coin = null - qdel(coin) + QDEL_NULL(coin) categories &= ~CAT_COIN R.amount-- diff --git a/code/game/mecha/combat/marauder.dm b/code/game/mecha/combat/marauder.dm index 97b442a51da..1a901f4a71e 100644 --- a/code/game/mecha/combat/marauder.dm +++ b/code/game/mecha/combat/marauder.dm @@ -21,7 +21,7 @@ add_req_access = 0 internal_damage_threshold = 25 force = 45 - max_equip = 4 + max_equip = 5 /obj/mecha/combat/marauder/loaded/New() @@ -30,6 +30,8 @@ ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack ME.attach(src) + ME = new /obj/item/mecha_parts/mecha_equipment/weapon/energy/xray(src) + ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay(src) ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster(src) @@ -47,8 +49,8 @@ health = 550 wreckage = /obj/effect/decal/mecha_wreckage/seraph internal_damage_threshold = 20 - force = 55 - max_equip = 5 + force = 80 + max_equip = 8 /obj/mecha/combat/marauder/seraph/add_cell() cell = new /obj/item/weapon/stock_parts/cell/bluespace(src) @@ -62,9 +64,11 @@ for(ME in equipment) equipment -= ME qdel(ME) - ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot(src) + ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/heavy(src) ME.attach(src) - ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack(src) + ME = new /obj/item/mecha_parts/mecha_equipment/weapon/energy/xray/triple(src) + ME.attach(src) + ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg/dual(src) ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/teleporter/precise(src) ME.attach(src) @@ -73,6 +77,7 @@ ME = new /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster(src) ME.attach(src) + /obj/mecha/combat/marauder/mauler desc = "Heavy-duty, combat exosuit, developed off of the existing Marauder model." name = "Mauler" diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index a4c7b7d2f5d..5fea88f278f 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -68,12 +68,18 @@ /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser equip_cooldown = 8 - name = "CH-PS \"Immolator\" Laser" + name = "CH-PS \"Firedart\" Laser" icon_state = "mecha_laser" energy_drain = 30 projectile = /obj/item/projectile/beam fire_sound = 'sound/weapons/Laser.ogg' +/obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/disabler + name = "CH-PD Disabler" + projectile = /obj/item/projectile/beam/disabler + projectiles_per_shot = 2 + projectile_delay = 1 + /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/heavy equip_cooldown = 10 name = "CH-LC \"Solaris\" Laser Cannon" @@ -90,6 +96,41 @@ projectile = /obj/item/projectile/ion fire_sound = 'sound/weapons/Laser.ogg' +/obj/item/mecha_parts/mecha_equipment/weapon/energy/tesla + equip_cooldown = 35 + name = "P-X Tesla Cannon" + desc = "A weapon for combat exosuits. Fires bolts of electricity similar to the experimental tesla engine" + icon_state = "mecha_laser" + origin_tech = "materials=4;combat=5;magnets=4" + energy_drain = 500 + projectile = /obj/item/projectile/energy/shock_revolver + fire_sound = 'sound/magic/lightningbolt.ogg' + +/obj/item/mecha_parts/mecha_equipment/weapon/energy/xray + equip_cooldown = 35 + name = "S-1 X-Ray Projector" + desc = "A weapon for combat exosuits. Fires beams of X-Rays that pass through solid matter." + icon_state = "mecha_laser" + origin_tech = "materials=3;combat=5;magnets=2;syndicate=2" + energy_drain = 80 + projectile = /obj/item/projectile/beam/xray + fire_sound = 'sound/weapons/laser3.ogg' + +/obj/item/mecha_parts/mecha_equipment/weapon/energy/xray/triple + name = "X-XR Triple-barrel X-Ray Stream Projector" + projectiles_per_shot = 3 + projectile_delay = 1 + +/obj/item/mecha_parts/mecha_equipment/weapon/energy/immolator + equip_cooldown = 35 + name = "ZFI Immolation Beam Gun" + desc = "A weapon for combat exosuits. Fires beams of extreme heat that set targets on fire." + icon_state = "mecha_laser" + origin_tech = "materials=4;combat=4;magnets=3;plasmatech=2" + energy_drain = 80 + projectile = /obj/item/projectile/beam/immolator + fire_sound = 'sound/weapons/laser3.ogg' + /obj/item/mecha_parts/mecha_equipment/weapon/energy/pulse equip_cooldown = 30 name = "eZ-13 mk2 Heavy pulse rifle" @@ -273,8 +314,12 @@ variance = 6 projectile_delay = 2 +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg/dual + name = "XMG-9 Autocannon" + projectiles_per_shot = 6 + /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack - name = "SRM-8 Missile Rack" + name = "SRM-8 Light Missile Rack" icon_state = "mecha_missilerack" projectile = /obj/item/missile fire_sound = 'sound/effects/bang.ogg' @@ -283,6 +328,7 @@ equip_cooldown = 60 var/missile_speed = 2 var/missile_range = 30 + var/heavy_missile = 0 /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/action(target, params) if(!action_checks(target)) @@ -290,6 +336,8 @@ set_ready_state(0) var/obj/item/missile/M = new projectile(chassis.loc) M.primed = 1 + if(heavy_missile) + M.heavy_missile = 1 playsound(chassis, fire_sound, 50, 1) M.throw_at(target, missile_range, missile_speed, chassis) projectiles-- @@ -300,16 +348,23 @@ do_after_cooldown() return +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/heavy + name = "SRX-13 Heavy Missile Launcher" + heavy_missile = 1 /obj/item/missile icon = 'icons/obj/grenade.dmi' icon_state = "missile" var/primed = null + var/heavy_missile = 0 throwforce = 15 /obj/item/missile/throw_impact(atom/hit_atom) if(primed) - explosion(hit_atom, 0, 0, 2, 4, 0) + if(heavy_missile) + explosion(hit_atom, 2, 3, 4, 6, 0) + else + explosion(hit_atom, 0, 0, 2, 4, 0) qdel(src) else ..() diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index fdf1b341488..2fa9b3af00f 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -368,9 +368,12 @@ breakthrough = 1 else - throwing = 0 //so mechas don't get stuck when landing after being sent by a Mass Driver + if(throwing) + throwing.finalize(FALSE) crashing = null + ..() + if(breakthrough) if(crashing) spawn(1) @@ -524,7 +527,7 @@ user.create_attack_log("attacked [name]") return -/obj/mecha/hitby(atom/movable/A as mob|obj) //wrapper +/obj/mecha/hitby(atom/movable/A) //wrapper ..() log_message("Hit by [A].",1) @@ -537,6 +540,7 @@ dam_coeff = B.damage_coeff counter_tracking = 1 break + if(istype(A, /obj/item/mecha_parts/mecha_tracking)) if(!counter_tracking) A.forceMove(src) diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index 122f1741a3c..ebeda7a77c0 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -104,9 +104,9 @@ /obj/structure/alien/resin/hitby(atom/movable/AM) ..() var/tforce = 0 - if(!isobj(AM)) + if(ismob(AM)) tforce = 10 - else + else if(isobj(AM)) var/obj/O = AM tforce = O.throwforce playsound(loc, 'sound/effects/attackblob.ogg', 100, 1) diff --git a/code/game/objects/effects/decals/contraband.dm b/code/game/objects/effects/decals/contraband.dm index 9d3bd53159e..1ab2cd985cf 100644 --- a/code/game/objects/effects/decals/contraband.dm +++ b/code/game/objects/effects/decals/contraband.dm @@ -2,7 +2,7 @@ #define NUM_OF_POSTER_DESIGNS 33 //subtype 0-contraband posters -#define NUM_OF_POSTER_DESIGNS_LEGIT 33 //subtype 1-corporate approved posters +#define NUM_OF_POSTER_DESIGNS_LEGIT 40 //subtype 1-corporate approved posters /obj/item/weapon/contraband name = "contraband item" @@ -167,20 +167,20 @@ obj/structure/sign/poster/New(serial,var/subtypeIn = -1) name += " - Rebels Unite!" desc += " A poster telling the viewer to rebel against Nanotrasen." if(24) - name += " - C-20r Advertisment" + name += " - C-20r Advertisement" desc += " A poster advertising the Scarborough Arms C-20r." if(25) name += " - Have A Puff" desc += " Who cares about lung cancer when you're high as a kite?" if(26) - name += " - Revolver Advertisment" + name += " - Revolver Advertisement" desc += " Because seven shots are all you need." if(27) name += " - D-Day Promotional Poster" desc += " A promotional poster for some rapper." if(28) - name += " - Syndicate Pistol Advertisment" - desc += " A poster advertising syndicate pistols as being 'Classy as fuck'." + name += " - Syndicate Pistol Advertisement" + desc += " A poster advertising Syndicate pistols as being 'Classy as fuck'." if(29) name += " - E-sword Rainbow" desc += " All the colors of bloody murder rainbow." @@ -188,7 +188,7 @@ obj/structure/sign/poster/New(serial,var/subtypeIn = -1) name += " - Red Rum" desc += " Looking at this poster makes you want to kill." if(31) - name += " - CC 64K Advertisment" + name += " - CC 64K Advertisement" desc += " The latest portable computer from Comrade Computing, with a whole 64kB of ram!" if(32) name += " - Punch Shit" @@ -198,13 +198,13 @@ obj/structure/sign/poster/New(serial,var/subtypeIn = -1) desc += " The Griffin commands you to be the worst you can be. Will you?" else name += " - Error (subtype 0 serial_number)" - desc += " This is a bug, please report the circumstances under which you encountered this poster at https://github.com/tgstation/-tg-station/issues." + desc += " This is a bug, please report the circumstances under which you encountered this poster at https://github.com/ParadiseSS13/Paradise/issues." if(subtype == 1) icon_state = "poster[serial_number]_legit" switch(serial_number) if(1) - name += " - Here for Your Saftey" + name += " - Here for Your Safety" desc += " A poster glorifying the station's security force." if(2) name += " - Nanotrasen Logo" @@ -247,7 +247,7 @@ obj/structure/sign/poster/New(serial,var/subtypeIn = -1) desc += " This thing is all in Japanese." if(15) name += " - Get Your LEGS" - desc += " LEGS: Leadership, Experiance, Genius, S(Opportunity)." + desc += " LEGS: Leadership, Experience, Genius, S(Opportunity)." if(16) name += " - Do Not Question" desc += " A poster instructing the viewer not to ask about things they aren't meant to know." @@ -258,47 +258,47 @@ obj/structure/sign/poster/New(serial,var/subtypeIn = -1) name += " - Soft Cap Pop Art" desc += " A poster reprint of some cheap pop art." if(19) - name += " - Saftey: Internals" + name += " - Safety: Internals" desc += " A poster instructing the viewer to wear internals in environments where there is no oxygen or the air has been rendered toxic." if(20) - name += " - Saftey: Eye Protection" + name += " - Safety: Eye Protection" desc += " A poster instructing the viewer to wear eye protection when dealing with chemicals, smoke, or bright lights." if(21) - name += " - Saftey: Report" + name += " - Safety: Report" desc += " A poster instructing the viewer to report suspicious activity to the security force." if(22) name += " - Report Crimes" - desc += " Report crimes at: 1-800-FUCKING-TERRORISTS or at https://www.sectorthirteen.nt/malconetents." + desc += " Report crimes at: 1-800-FUCKING-TERRORISTS or at https://www.sectorthirteen.nt/malcontents." if(23) name += " - Ion Rifle" desc += " A poster displaying an Ion Rifle." if(24) - name += " - Foam Force Advertisment" + name += " - Foam Force Advertisement" desc += " Foam Force, it's Foam or be Foamed!" if(25) - name += " - Cohiba Robusto Advertisment" + name += " - Cohiba Robusto Advertisement" desc += " Cohiba Robusto, the classy cigar." if(26) - name += " - 50th Aniversery Vintage Reprint" - desc += " A reprint of a poster from 2504, commemorating the 50th Aniversery of Nanoposters Manufacturing, a subsidary of Nanotrasen." + name += " - 50th Anniversary Vintage Reprint" + desc += " A reprint of a poster from 2504, commemorating the 50th Anniversary of Nanoposters Manufacturing, a subsidiary of Nanotrasen." if(27) name += " - Fruit Bowl" desc += " Simple, yet awe inspiring." if(28) - name += " - NanoPDA 1000 Advertisment" + name += " - NanoPDA 1000 Advertisement" desc += " A poster advertising the latest PDA from Nanotrasen." if(29) name += " - Enlist" desc += " Enlist in the Nanotrasen ERT reserves today!" if(30) - name += " - Nanomichi Advertisment" + name += " - Nanomichi Advertisement" desc += " A poster advertising Nanomichi brand audio cassettes." if(31) name += " - 12 Gauge" - desc += " A poster boasting about the superiority of 12 gauge shotgun shells." + desc += " A poster boasting about the superiority of 12-gauge shotgun shells." if(32) name += " - High-Class Martini" - desc += " I told you to shake it, no stirring" + desc += " I told you to shake it, no stirring." if(33) name += " - The Owl" desc += " The Owl would do his best to protect the station. Will you?" @@ -310,12 +310,12 @@ obj/structure/sign/poster/New(serial,var/subtypeIn = -1) desc += " A poster demanding that all crew should be ready to fight the Syndicate." if(36) name += " - Information on Air" - desc += " A poster providing visual aid to remind crew of air canisters" + desc += " A poster providing visual aid to remind crew of air canisters." if(37) name += " - Information on Air" - desc += " A poster providing visual aid to remind crew of air canisters" + desc += " A poster providing visual aid to remind crew of air canisters." if(38) - name += " - Dig For Glory!" + name += " - Dig for Glory!" desc += " A poster providing trying to convince crew to mine for ore." if(39) name += " - Religious Poster" @@ -325,7 +325,7 @@ obj/structure/sign/poster/New(serial,var/subtypeIn = -1) desc += " A healthy crew is a happy crew!" else name += " - Error (subtype 1 serial_number)" - desc += " This is a bug, please report the circumstances under which you encountered this poster at https://github.com/NTStation/NTstation13/issues." + desc += " This is a bug, please report the circumstances under which you encountered this poster at https://github.com/ParadiseSS13/Paradise/issues." ..() obj/structure/sign/poster/attackby(obj/item/I, mob/user, params) @@ -426,6 +426,6 @@ obj/structure/sign/poster/attackby(obj/item/I, mob/user, params) //Putting non-contraband posters here because everything else here is related to posters anyway. -JS /obj/item/weapon/contraband/poster/legit - desc = "The poster comes with its own automatic adhesive mechanism, for easy pinning to any vertical surface. It's contents go through Nanotrasen's strict content guidlines." + desc = "The poster comes with its own automatic adhesive mechanism, for easy pinning to any vertical surface. It's contents go through Nanotrasen's strict content guidelines." icon_state = "rolled_poster_legit" subtype = 1 \ No newline at end of file diff --git a/code/game/objects/effects/spawners/lootdrop.dm b/code/game/objects/effects/spawners/lootdrop.dm index 5972d75f3dd..7045a06a875 100644 --- a/code/game/objects/effects/spawners/lootdrop.dm +++ b/code/game/objects/effects/spawners/lootdrop.dm @@ -67,7 +67,7 @@ /obj/item/clothing/gloves/color/black = 20, /obj/item/clothing/head/hardhat = 10, /obj/item/clothing/head/hardhat/red = 10, - /obj/item/clothing/head/that{throwforce = 1; throwing = 1} = 10, + /obj/item/clothing/head/that = 10, /obj/item/clothing/head/ushanka = 10, /obj/item/clothing/head/welding = 10, /obj/item/clothing/mask/gas = 10, diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index f67178e1e67..f56ada78145 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -61,6 +61,8 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d var/block_chance = 0 var/hit_reaction_chance = 0 //If you want to have something unrelated to blocking/armour piercing etc. Maybe not needed, but trying to think ahead/allow more freedom + var/mob/thrownby = null + var/toolspeed = 1 // If this item is a tool, the speed multiplier /* Species-specific sprites, concept stolen from Paradise//vg/. @@ -217,7 +219,8 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d var/obj/item/weapon/storage/S = src.loc S.remove_from_storage(src) - src.throwing = 0 + if(throwing) + throwing.finalize(FALSE) if(loc == user) if(!user.unEquip(src)) return 0 @@ -231,36 +234,6 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d user.put_in_active_hand(src) return 1 - -/obj/item/attack_alien(mob/user as mob) - - if(isalien(user)) // -- TLE - var/mob/living/carbon/alien/A = user - - if(!A.has_fine_manipulation) - if(src in A.contents) // To stop Aliens having items stuck in their pockets - A.unEquip(src) - to_chat(user, "Your claws aren't capable of such fine manipulation.") - return - - if(istype(src.loc, /obj/item/weapon/storage)) - for(var/mob/M in range(1, src.loc)) - if(M.s_active == src.loc) - if(M.client) - M.client.screen -= src - src.throwing = 0 - if(src.loc == user) - if(!user.unEquip(src)) - return - else - if(istype(src.loc, /mob/living)) - return - src.pickup(user) - - user.put_in_active_hand(src) - return - - /obj/item/attack_alien(mob/user as mob) var/mob/living/carbon/alien/A = user @@ -323,9 +296,6 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d /obj/item/proc/talk_into(mob/M, var/text, var/channel=null) return -/obj/item/proc/moved(mob/user, old_loc) - return - /obj/item/proc/dropped(mob/user) for(var/X in actions) var/datum/action/A = X @@ -546,6 +516,23 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d throw_at(S,14,3) else ..() +/obj/item/throw_impact(atom/A) + if(A && !qdeleted(A)) + var/itempush = 1 + if(w_class < 4) + itempush = 0 // too light to push anything + return A.hitby(src, 0, itempush) + +/obj/item/throw_at(atom/target, range, speed, mob/thrower, spin=1, diagonals_first = 0, datum/callback/callback) + thrownby = thrower + callback = CALLBACK(src, .proc/after_throw, callback) //replace their callback with our own + . = ..(target, range, speed, thrower, spin, diagonals_first, callback) + +/obj/item/proc/after_throw(datum/callback/callback) + if(callback) //call the original callback + . = callback.Invoke() + throw_speed = initial(throw_speed) //explosions change this. + /obj/item/proc/pwr_drain() return 0 // Process Kill diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index a2fd5881ca7..8c747a26d97 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -240,7 +240,7 @@ REAGENT SCANNER if(H.species.exotic_blood) user.show_message("Subject possesses exotic blood.") user.show_message("Exotic blood type: [blood_type].") - if(H.heart_attack && H.stat != DEAD) + if(H.undergoing_cardiac_arrest() && H.stat != DEAD) user.show_message("Subject suffering from heart attack: Apply defibrillator immediately.") user.show_message("Subject's pulse: [H.get_pulse(GETPULSE_TOOL)] bpm.") var/implant_detect @@ -379,6 +379,9 @@ REAGENT SCANNER origin_tech = "magnets=2;biotech=2" var/details = 0 var/recent_fail = 0 + var/datatoprint = "" + var/scanning = 1 + actions_types = list(/datum/action/item_action/print_report) /obj/item/device/mass_spectrometer/New() ..() @@ -409,13 +412,13 @@ REAGENT SCANNER else blood_traces = params2list(R.data["trace_chem"]) break - var/dat = "Trace Chemicals Found: " + var/dat = "" for(var/R in blood_traces) if(prob(reliability)) if(details) dat += "[R] ([blood_traces[R]] units) " else - dat += "[R] " + dat += "[R]
" recent_fail = 0 else if(recent_fail) @@ -424,8 +427,14 @@ REAGENT SCANNER return else recent_fail = 1 - to_chat(user, "[dat]") - reagents.clear_reagents() + if(dat) + to_chat(user, "Trace chemicals detected in blood sample: [dat]") + datatoprint = dat + scanning = 0 + reagents.clear_reagents() + else + reagents.clear_reagents() + to_chat(user, "No trace chemicals detected in blood sample.") return /obj/item/device/mass_spectrometer/adv @@ -434,6 +443,28 @@ REAGENT SCANNER details = 1 origin_tech = "magnets=4;biotech=2" +/obj/item/device/mass_spectrometer/proc/print_report() + if(!scanning) + usr.visible_message("[src] rattles and prints out a sheet of paper.") + playsound(loc, 'sound/goonstation/machines/printer_thermal.ogg', 50, 1) + sleep(50) + + var/obj/item/weapon/paper/P = new(get_turf(src)) + P.name = "Mass Spectrometer Scanner Report: [worldtime2text()]" + P.info = "
Mass Spectrometer

Data Analysis:



Trace chemicals detected:
[datatoprint]

" + + if(ismob(loc)) + var/mob/M = loc + M.put_in_hands(P) + to_chat(M, "Report printed. Log cleared.") + datatoprint = "" + scanning = 1 + else + to_chat(usr, "[src] has no logs or is already in use.") + +/obj/item/device/mass_spectrometer/ui_action_click() + print_report() + /obj/item/device/reagent_scanner name = "reagent scanner" desc = "A hand-held reagent scanner which identifies chemical agents." @@ -449,6 +480,9 @@ REAGENT SCANNER origin_tech = "magnets=2;biotech=2" var/details = 0 var/recent_fail = 0 + var/datatoprint = "" + var/scanning = 1 + actions_types = list(/datum/action/item_action/print_report) /obj/item/device/reagent_scanner/afterattack(obj/O, mob/user as mob) if(user.stat) @@ -461,7 +495,6 @@ REAGENT SCANNER if(crit_fail) to_chat(user, "This device has critically failed and is no longer functional!") return - if(!isnull(O.reagents)) var/dat = "" if(O.reagents.reagent_list.len > 0) @@ -478,11 +511,12 @@ REAGENT SCANNER recent_fail = 1 if(dat) to_chat(user, "Chemicals found: [dat]") + datatoprint = dat + scanning = 0 else to_chat(user, "No active chemical agents found in [O].") else to_chat(user, "No significant chemical agents found in [O].") - return /obj/item/device/reagent_scanner/adv @@ -491,6 +525,28 @@ REAGENT SCANNER details = 1 origin_tech = "magnets=4;biotech=2" +/obj/item/device/reagent_scanner/proc/print_report() + if(!scanning) + usr.visible_message("[src] rattles and prints out a sheet of paper.") + playsound(loc, 'sound/goonstation/machines/printer_thermal.ogg', 50, 1) + sleep(50) + + var/obj/item/weapon/paper/P = new(get_turf(src)) + P.name = "Reagent Scanner Report: [worldtime2text()]" + P.info = "
Reagent Scanner

Data Analysis:



Chemical agents detected:
[datatoprint]

" + + if(ismob(loc)) + var/mob/M = loc + M.put_in_hands(P) + to_chat(M, "Report printed. Log cleared.") + datatoprint = "" + scanning = 1 + else + to_chat(usr, "[src] has no logs or is already in use.") + +/obj/item/device/reagent_scanner/ui_action_click() + print_report() + /obj/item/device/slime_scanner name = "slime scanner" icon_state = "adv_spectrometer_s" @@ -532,4 +588,4 @@ REAGENT SCANNER user.show_message("Genetic destability: [T.mutation_chance]% chance of mutation on splitting", 1) if(T.cores > 1) user.show_message("Anomalous slime core amount detected", 1) - user.show_message("Growth progress: [T.amount_grown]/10", 1) + user.show_message("Growth progress: [T.amount_grown]/10", 1) \ No newline at end of file diff --git a/code/game/objects/items/devices/taperecorder.dm b/code/game/objects/items/devices/taperecorder.dm index 6ec1a36504b..1d8c92662e8 100644 --- a/code/game/objects/items/devices/taperecorder.dm +++ b/code/game/objects/items/devices/taperecorder.dm @@ -155,8 +155,7 @@ return else if(playing) playing = 0 - var/turf/T = get_turf(src) - T.visible_message("Tape Recorder: Playback stopped.") + atom_say("Playback stopped.") update_icon() @@ -185,19 +184,18 @@ break if(mytape.storedinfo.len < i) break - var/turf/T = get_turf(src) - T.visible_message("Tape Recorder: [mytape.storedinfo[i]]") + atom_say("[mytape.storedinfo[i]]") if(mytape.storedinfo.len < i + 1) playsleepseconds = 1 sleep(10) T = get_turf(src) - T.visible_message("Tape Recorder: End of recording.") + atom_say("End of recording.") else playsleepseconds = mytape.timestamp[i + 1] - mytape.timestamp[i] if(playsleepseconds > 14) sleep(10) T = get_turf(src) - T.visible_message("Tape Recorder: Skipping [playsleepseconds] seconds of silence") + atom_say("Skipping [playsleepseconds] seconds of silence.") playsleepseconds = 1 i++ @@ -314,4 +312,4 @@ //Random colour tapes /obj/item/device/tape/random/New() - icon_state = "tape_[pick("white", "blue", "red", "yellow", "purple")]" \ No newline at end of file + icon_state = "tape_[pick("white", "blue", "red", "yellow", "purple")]" diff --git a/code/game/objects/items/policetape.dm b/code/game/objects/items/policetape.dm index f171e984f36..26b0e8772af 100644 --- a/code/game/objects/items/policetape.dm +++ b/code/game/objects/items/policetape.dm @@ -151,7 +151,7 @@ var/list/tape_roll_applications = list() if(!density) return 1 if(height==0) return 1 - if((mover.pass_flags & PASSTABLE || istype(mover, /obj/effect/meteor) || mover.throwing == 1) ) + if((mover.pass_flags & PASSTABLE || istype(mover, /obj/effect/meteor) || mover.throwing)) return 1 else if(ismob(mover) && allowed(mover)) return 1 diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm index 5598a42cc8f..3fb02da2bdf 100644 --- a/code/game/objects/items/weapons/RCD.dm +++ b/code/game/objects/items/weapons/RCD.dm @@ -279,8 +279,7 @@ RCD return 0 activate() var/turf/T1 = get_turf(A) - qdel(A) - A = null + QDEL_NULL(A) for(var/obj/structure/window/W in T1.contents) W.disassembled = 1 W.density = 0 diff --git a/code/game/objects/items/weapons/RCL.dm b/code/game/objects/items/weapons/RCL.dm index 8e0357ecd13..0655c0b4b8b 100644 --- a/code/game/objects/items/weapons/RCL.dm +++ b/code/game/objects/items/weapons/RCL.dm @@ -115,7 +115,7 @@ last = C break -/obj/item/weapon/twohanded/rcl/moved(mob/user, turf/old_loc, direct) +/obj/item/weapon/twohanded/rcl/on_mob_move(direct, mob/user) if(active) trigger(user) diff --git a/code/game/objects/items/weapons/cosmetics.dm b/code/game/objects/items/weapons/cosmetics.dm index f311d56d1ba..a5a2438771e 100644 --- a/code/game/objects/items/weapons/cosmetics.dm +++ b/code/game/objects/items/weapons/cosmetics.dm @@ -136,6 +136,9 @@ if(C.h_style == "Bald" || C.h_style == "Balding Hair" || C.h_style == "Skinhead") to_chat(user, "There is not enough hair left to shave...") return + if(M.get_species() == "Skrell") + to_chat(user, "Your razor isn't going to cut through tentacles.") + return if(H == user) //shaving yourself user.visible_message("[user] starts to shave their head with \the [src].", \ "You start to shave your head with \the [src].") @@ -160,4 +163,4 @@ else ..() else - ..() \ No newline at end of file + ..() diff --git a/code/game/objects/items/weapons/defib.dm b/code/game/objects/items/weapons/defib.dm index 5d0dcebcacc..e332011d2ee 100644 --- a/code/game/objects/items/weapons/defib.dm +++ b/code/game/objects/items/weapons/defib.dm @@ -330,8 +330,8 @@ H.updatehealth() //forces health update before next life tick playsound(get_turf(src), 'sound/machines/defib_zap.ogg', 50, 1, -1) H.emote("gasp") - if(!H.heart_attack && (prob(10) || defib.combat)) // Your heart explodes. - H.heart_attack = 1 + if(!H.undergoing_cardiac_arrest() && (prob(10) || defib.combat)) // Your heart explodes. + H.set_heartattack(TRUE) add_logs(user, M, "stunned", object="defibrillator") defib.deductcharge(revivecost) cooldown = 1 @@ -368,7 +368,7 @@ busy = 0 update_icon() return - if(H.heart_attack) + if(H.undergoing_cardiac_arrest()) if(!H.get_int_organ(/obj/item/organ/internal/heart) && !H.get_int_organ(/obj/item/organ/internal/brain/slime)) //prevents defibing someone still alive suffering from a heart attack attack if they lack a heart user.visible_message("[defib] buzzes: Resuscitation failed - Failed to pick up any heart electrical activity.") playsound(get_turf(src), 'sound/machines/defib_failed.ogg', 50, 0) @@ -376,7 +376,7 @@ update_icon() return else - H.heart_attack = 0 + H.set_heartattack(FALSE) user.visible_message("[defib] pings: Cardiac arrhythmia corrected.") M.visible_message("[M]'s body convulses a bit.") playsound(get_turf(src), 'sound/machines/defib_zap.ogg', 50, 1, -1) @@ -474,8 +474,8 @@ H.adjustStaminaLoss(50) H.Weaken(5) H.updatehealth() //forces health update before next life tick - if(!H.heart_attack && prob(10)) // Your heart explodes. - H.heart_attack = 1 + if(!H.undergoing_cardiac_arrest() && prob(10)) // Your heart explodes. + H.set_heartattack(TRUE) playsound(get_turf(src), 'sound/machines/defib_zap.ogg', 50, 1, -1) H.emote("gasp") add_logs(user, M, "stunned", object="defibrillator") diff --git a/code/game/objects/items/weapons/dice.dm b/code/game/objects/items/weapons/dice.dm index 5714f5e4310..80274a4d7ca 100644 --- a/code/game/objects/items/weapons/dice.dm +++ b/code/game/objects/items/weapons/dice.dm @@ -111,10 +111,10 @@ /obj/item/weapon/dice/attack_self(mob/user as mob) diceroll(user) -/obj/item/weapon/dice/throw_at(atom/target, range, speed, mob/user as mob) +/obj/item/weapon/dice/throw_at(atom/target, range, speed, mob/thrower, spin=1, diagonals_first = 0, datum/callback/callback) if(!..()) return - diceroll(user) + diceroll(thrower) /obj/item/weapon/dice/proc/diceroll(mob/user) result = rand(1, sides) @@ -133,7 +133,7 @@ user.visible_message("[user] has thrown [src]. It lands on [result]. [comment]", \ "You throw [src]. It lands on [result]. [comment]", \ "You hear [src] rolling, it sounds like a [fake_result].") - else if(src.throwing == 0) //Dice was thrown and is coming to rest + else if(!throwing) //Dice was thrown and is coming to rest visible_message("[src] rolls to a stop, landing on [result]. [comment]") /obj/item/weapon/dice/d20/e20/diceroll(mob/user as mob, thrown) diff --git a/code/game/objects/items/weapons/grenades/smokebomb.dm b/code/game/objects/items/weapons/grenades/smokebomb.dm index 798565e63fd..f010bb977c0 100644 --- a/code/game/objects/items/weapons/grenades/smokebomb.dm +++ b/code/game/objects/items/weapons/grenades/smokebomb.dm @@ -14,8 +14,7 @@ src.smoke.attach(src) Destroy() - qdel(smoke) - smoke = null + QDEL_NULL(smoke) return ..() prime() diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm index e5fb0646169..adeb8fadcd3 100644 --- a/code/game/objects/items/weapons/storage/storage.dm +++ b/code/game/objects/items/weapons/storage/storage.dm @@ -254,7 +254,7 @@ if(W.w_class > max_w_class) if(!stop_messages) - to_chat(usr, "[W] is too big for this [src].") + to_chat(usr, "[W] is too big for [src].") return 0 var/sum_w_class = W.w_class diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index b23601e8df2..3460699fbe4 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -511,7 +511,8 @@ to_chat(user, "You need more fuel!") switched_off(user) else - to_chat(user, "You switch [src] off.") + if(user) + to_chat(user, "You switch [src] off.") playsound(loc, deac_sound, 50, 1) switched_off(user) diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 24fdc2e43ce..844c1828200 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -316,4 +316,7 @@ a { for(var/obj/item/Item in contents) //Empty out the contents Item.forceMove(new_loc) if(burn) - Item.fire_act() //Set them on fire, too \ No newline at end of file + Item.fire_act() //Set them on fire, too + +/obj/proc/on_mob_move(dir, mob/user) + return \ No newline at end of file diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 7180e59b800..6db9a26fd8d 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -56,7 +56,7 @@ if(throwing) // you keep some momentum when getting out of a thrown closet step(AM, dir) if(throwing) - throwing = 0 + throwing.finalize(FALSE) /obj/structure/closet/proc/open() if(opened) @@ -327,7 +327,7 @@ /obj/structure/closet/attack_hand(mob/user) add_fingerprint(user) toggle(user) - + /obj/structure/closet/attack_ghost(mob/user) if(user.can_advanced_admin_interact()) toggle(user) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index df1309b3d03..c1b4984c158 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -297,8 +297,8 @@ tforce = 5 else if(isobj(AM)) if(prob(50)) - var/obj/item/I = AM - tforce = max(0, I.throwforce * 0.5) + var/obj/O = AM + tforce = max(0, O.throwforce * 0.5) else if(anchored && !broken) var/turf/T = get_turf(src) var/obj/structure/cable/C = T.get_cable_node() diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm index 39a7ac21301..596673ba0c7 100644 --- a/code/game/objects/structures/morgue.dm +++ b/code/game/objects/structures/morgue.dm @@ -183,14 +183,14 @@ */ /obj/structure/m_tray name = "morgue tray" - desc = "Apply corpse before closing." + desc = "Apply corpse before closing. May float away in no-gravity." icon = 'icons/obj/stationobjs.dmi' icon_state = "morguet" density = 1 layer = 2.0 var/obj/structure/morgue/connected = null anchored = 1.0 - throwpass = 1 + pass_flags = LETPASSTHROW /obj/structure/m_tray/attack_hand(mob/user as mob) @@ -432,7 +432,7 @@ layer = 2.0 var/obj/structure/crematorium/connected = null anchored = 1.0 - throwpass = 1 + pass_flags = LETPASSTHROW /obj/structure/c_tray/attack_hand(mob/user as mob) if(connected) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 76dc6a507a3..55181579699 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -18,7 +18,7 @@ density = 1 anchored = 1.0 layer = 2.8 - throwpass = 1 //You can throw objects over this, despite it's density.") + pass_flags = LETPASSTHROW climbable = 1 var/parts = /obj/item/weapon/table_parts @@ -127,7 +127,8 @@ return /obj/structure/table/CanPass(atom/movable/mover, turf/target, height=0) - if(height==0) return 1 + if(height == 0) + return 1 if(istype(mover,/obj/item/projectile)) return (check_cover(mover,target)) if(ismob(mover)) @@ -136,6 +137,8 @@ return 1 if(istype(mover) && mover.checkpass(PASSTABLE)) return 1 + if(mover.throwing) + return 1 if(locate(/obj/structure/table) in get_turf(mover)) return 1 if(flipped) @@ -526,7 +529,7 @@ icon_state = "rack" density = 1 anchored = 1.0 - throwpass = 1 //You can throw objects over this, despite it's density. + pass_flags = LETPASSTHROW var/parts = /obj/item/weapon/rack_parts var/health = 5 @@ -563,6 +566,8 @@ return 1 if(istype(mover) && mover.checkpass(PASSTABLE)) return 1 + if(mover.throwing) + return 1 else return 0 diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index c74e2b47861..9da30e5fe82 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -108,22 +108,24 @@ var/global/wcCommon = pick(list("#379963", "#0d8395", "#58b5c3", "#49e46e", "#8f return 1 -/obj/structure/window/hitby(atom/movable/AM) - if(!CanPass(AM, get_step(src, AM.dir))) //So thrown objects that cross a tile with non-full windows will no longer hit the window even if it isn't visually obstructing the path. - ..() - var/tforce = 0 - if(isobj(AM)) - var/obj/item/I = AM - tforce = I.throwforce - if(reinf) tforce *= 0.25 - playsound(loc, 'sound/effects/Glasshit.ogg', 100, 1) - health = max(0, health - tforce) - if(health <= 7 && !reinf) - anchored = 0 - update_nearby_icons() - step(src, get_dir(AM, src)) - if(health <= 0) - destroy() +/obj/structure/window/hitby(atom/movable/AM) + ..() + var/tforce = 0 + if(ismob(AM)) + tforce = 10 + else if(isobj(AM)) + var/obj/O = AM + tforce = O.throwforce + if(reinf) + tforce *= 0.25 + playsound(loc, 'sound/effects/Glasshit.ogg', 100, 1) + health = max(0, health - tforce) + if(health <= 7 && !reinf) + anchored = 0 + update_nearby_icons() + step(src, get_dir(AM, src)) + if(health <= 0) + destroy() /obj/structure/window/attack_hand(mob/user as mob) diff --git a/code/game/objects/weapons.dm b/code/game/objects/weapons.dm index b62efa1c049..f35fa65b3c7 100644 --- a/code/game/objects/weapons.dm +++ b/code/game/objects/weapons.dm @@ -2,8 +2,3 @@ name = "weapon" icon = 'icons/obj/weapons.dmi' hitsound = "swing_hit" - -/obj/item/weapon/Bump(mob/M as mob) - spawn(0) - ..() - return \ No newline at end of file diff --git a/code/game/response_team.dm b/code/game/response_team.dm index 5b0cec99de1..bf25ad6760e 100644 --- a/code/game/response_team.dm +++ b/code/game/response_team.dm @@ -104,7 +104,7 @@ var/ert_request_answered = 0 active_team = response_team_type send_emergency_team = 1 - var/list/ert_candidates = pollCandidates("Join the Emergency Response Team?",, responseteam_age, 600, 1) + var/list/ert_candidates = pollCandidates("Join the Emergency Response Team?",, responseteam_age, 600, 1, role_playtime_requirements[ROLE_ERT]) if(!ert_candidates.len) active_team.cannot_send_team() send_emergency_team = 0 diff --git a/code/game/turfs/unsimulated/walls.dm b/code/game/turfs/unsimulated/walls.dm index 42a8b133a24..82f8c1390b5 100644 --- a/code/game/turfs/unsimulated/walls.dm +++ b/code/game/turfs/unsimulated/walls.dm @@ -16,10 +16,10 @@ icon = 'icons/obj/doors/Doorele.dmi' icon_state = "door_closed" -turf/unsimulated/wall/splashscreen +/turf/unsimulated/wall/splashscreen name = "Space Station 13" - icon = 'icons/misc/fullscreen.dmi' - icon_state = "title" + icon = 'config/title_screens/images/blank.png' + icon_state = "" layer = FLY_LAYER /turf/unsimulated/wall/other diff --git a/code/modules/admin/banjob.dm b/code/modules/admin/banjob.dm index f95d5094446..3dffd403caf 100644 --- a/code/modules/admin/banjob.dm +++ b/code/modules/admin/banjob.dm @@ -140,3 +140,43 @@ DEBUG jobban_savebanfile() return 1 return 0 + +/mob/verb/displayjobbans() + set category = "OOC" + set name = "Display Current Jobbans" + set desc = "Displays all of your current jobbans." + + if(!client || !ckey) + return + if(config.ban_legacy_system) + //using the legacy .txt ban system + to_chat(src, "The server is using the legacy ban system. Ask an administrator for help!") + + else + //using the SQL ban system + var/is_actually_banned = FALSE + var/DBQuery/select_query = dbcon.NewQuery("SELECT bantime, bantype, reason, job, duration, expiration_time, a_ckey FROM [format_table_name("ban")] WHERE ckey like '[ckey]' AND ((bantype like 'JOB_TEMPBAN' AND expiration_time > Now()) OR (bantype like 'JOB_PERMABAN')) AND isnull(unbanned) ORDER BY bantime DESC LIMIT 100") + select_query.Execute() + + while(select_query.NextRow()) + + var/bantime = select_query.item[1] + var/bantype = select_query.item[2] + var/reason = select_query.item[3] + var/job = select_query.item[4] + var/duration = select_query.item[5] + var/expiration = select_query.item[6] + var/ackey = select_query.item[7] + + if(bantype == "JOB_PERMABAN") + to_chat(src, "[bantype]: [job] - REASON: [reason], by [ackey]; [bantime]") + else if(bantype == "JOB_TEMPBAN") + to_chat(src, "[bantype]: [job] - REASON: [reason], by [ackey]; [bantime]; [duration]; expires [expiration]") + + is_actually_banned = TRUE + + if(is_actually_banned) + if(config.banappeals) + to_chat(src, "You can appeal the bans at: [config.banappeals]") + else + to_chat(src, "You have no active jobbans!") diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 7e94010b3b4..9976c7d10b9 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -150,12 +150,11 @@ adminhelp(reply) //sender has left, adminhelp instead return - // for emoji, we have to define a specific span for jquery to look for - msg = "[msg]" - recieve_message = "[type] from-[recieve_pm_type][key_name(src, C, C.holder ? 1 : 0, type)]: [msg]" + var/emoji_msg = "[msg]" + recieve_message = "[type] from-[recieve_pm_type][key_name(src, C, C.holder ? 1 : 0, type)]: [emoji_msg]" to_chat(C, recieve_message) - to_chat(src, "[send_pm_type][type] to-[key_name(C, src, holder ? 1 : 0, type)]: [msg]") + to_chat(src, "[send_pm_type][type] to-[key_name(C, src, holder ? 1 : 0, type)]: [emoji_msg]") /*if(holder && !C.holder) C.last_pm_recieved = world.time @@ -176,13 +175,13 @@ switch(type) if("Mentorhelp") if(check_rights(R_ADMIN|R_MOD|R_MENTOR, 0, X.mob)) - to_chat(X, "[type]: [key_name(src, X, 0, type)]->[key_name(C, X, 0, type)]: [msg]") + to_chat(X, "[type]: [key_name(src, X, 0, type)]->[key_name(C, X, 0, type)]: [emoji_msg]") if("Adminhelp") if(check_rights(R_ADMIN|R_MOD, 0, X.mob)) - to_chat(X, "[type]: [key_name(src, X, 0, type)]->[key_name(C, X, 0, type)]: [msg]") + to_chat(X, "[type]: [key_name(src, X, 0, type)]->[key_name(C, X, 0, type)]: [emoji_msg]") else if(check_rights(R_ADMIN|R_MOD, 0, X.mob)) - to_chat(X, "[type]: [key_name(src, X, 0, type)]->[key_name(C, X, 0, type)]: [msg]") + to_chat(X, "[type]: [key_name(src, X, 0, type)]->[key_name(C, X, 0, type)]: [emoji_msg]") /client/proc/cmd_admin_irc_pm() if(prefs.muted & MUTE_ADMINHELP) diff --git a/code/modules/admin/verbs/ticklag.dm b/code/modules/admin/verbs/ticklag.dm index f49984b8fb3..316adf935b0 100644 --- a/code/modules/admin/verbs/ticklag.dm +++ b/code/modules/admin/verbs/ticklag.dm @@ -15,9 +15,6 @@ world.tick_lag = newtick feedback_add_details("admin_verb","TICKLAG") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! - switch(alert("Enable Tick Compensation?","Tick Comp is currently: [config.Tickcomp]","Yes","No")) - if("Yes") config.Tickcomp = 1 - else config.Tickcomp = 0 else to_chat(src, "Error: ticklag(): Invalid world.ticklag value. No changes made.") diff --git a/code/modules/arcade/mob_hunt/mob_avatar.dm b/code/modules/arcade/mob_hunt/mob_avatar.dm index 8717d5eb2a5..4603622da2a 100644 --- a/code/modules/arcade/mob_hunt/mob_avatar.dm +++ b/code/modules/arcade/mob_hunt/mob_avatar.dm @@ -42,9 +42,9 @@ attempt_capture(P, -20) //attempting a melee capture reduces the mob's effective run_chance by 20% to balance the risk of triggering a trap mob return 1 -/obj/effect/nanomob/hitby(obj/item/O) - if(istype(O, /obj/item/device/pda)) - var/obj/item/device/pda/P = O +/obj/effect/nanomob/hitby(atom/movable/AM) + if(istype(AM, /obj/item/device/pda)) + var/obj/item/device/pda/P = AM attempt_capture(P) //attempting a ranged capture does not affect the mob's effective run_chance but does prevent you from being shocked by a trap mob return 1 diff --git a/code/modules/client/preference/loadout/loadout_accessories.dm b/code/modules/client/preference/loadout/loadout_accessories.dm index c591295d940..8353514fb37 100644 --- a/code/modules/client/preference/loadout/loadout_accessories.dm +++ b/code/modules/client/preference/loadout/loadout_accessories.dm @@ -134,8 +134,13 @@ display_name = "cowboy shirt, short sleeved navy" path = /obj/item/clothing/accessory/cowboyshirt/navy/short_sleeved - - +/datum/gear/accessory/locket + display_name = "gold locket" + path = /obj/item/clothing/accessory/necklace/locket + +/datum/gear/accessory/necklace + display_name = "simple necklace" + path = /obj/item/clothing/accessory/necklace diff --git a/code/modules/client/preference/loadout/loadout_uniform.dm b/code/modules/client/preference/loadout/loadout_uniform.dm index 82ccc357312..7ffb7e09516 100644 --- a/code/modules/client/preference/loadout/loadout_uniform.dm +++ b/code/modules/client/preference/loadout/loadout_uniform.dm @@ -68,6 +68,11 @@ path = /obj/item/clothing/under/rank/medical/skirt allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic","Brig Physician") +/datum/gear/uniform/skirt/job/phys + display_name = "skirt, physician" + path = /obj/item/clothing/under/rank/security/brigphys/skirt + allowed_roles = list("Brig Physician") + /datum/gear/uniform/skirt/job/sci display_name = "skirt, scientist" path = /obj/item/clothing/under/rank/scientist/skirt @@ -98,6 +103,17 @@ path = /obj/item/clothing/under/rank/head_of_security/skirt allowed_roles = list("Head of Security") +/datum/gear/uniform/skirt/job/ntrep + display_name = "skirt, nt rep" + path = /obj/item/clothing/under/rank/ntrep/skirt + allowed_roles = list("Nanotrasen Representative") + +/datum/gear/uniform/skirt/job/blueshield + display_name = "skirt, blueshield" + path = /obj/item/clothing/under/rank/blueshield/skirt + allowed_roles = list("Blueshield") + + /datum/gear/uniform/medical subtype_path = /datum/gear/uniform/medical diff --git a/code/modules/client/preference/preferences.dm b/code/modules/client/preference/preferences.dm index bbf6e40d625..9e40914da9b 100644 --- a/code/modules/client/preference/preferences.dm +++ b/code/modules/client/preference/preferences.dm @@ -28,9 +28,11 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts ) /proc/player_old_enough_antag(client/C, role) - if(available_in_days_antag(C, role) == 0) - return 1 //Available in 0 days = available right now = player is old enough to play. - return 0 + if(available_in_days_antag(C, role)) + return 0 //available_in_days>0 = still some days required = player not old enough + if(role_available_in_playtime(C, role)) + return 0 //available_in_playtime>0 = still some more playtime required = they are not eligible + return 1 /proc/available_in_days_antag(client/C, role) if(!C) @@ -147,6 +149,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts var/alt_head = "None" //Alt head style. var/species = "Human" var/language = "None" //Secondary language + var/autohiss_mode = AUTOHISS_OFF //Species autohiss level. OFF, BASIC, FULL. var/body_accessory = null @@ -259,6 +262,12 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts switch(current_tab) if(TAB_CHAR) // Character Settings + var/datum/species/S = all_species[species] + if(!istype(S)) //The species was invalid. Set the species to the default, fetch the datum for that species and generate a random character. + species = initial(species) + S = all_species[species] + random_character() + dat += "
" dat += "
" dat += "Name: " @@ -289,9 +298,11 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if(species == "Grey") dat += "Voice: [speciesprefs ? "Wingdings" : "Normal"]
" dat += "Secondary Language: [language]
" + if(S.autohiss_basic_map) + dat += "Auto-accent: [autohiss_mode == AUTOHISS_FULL ? "Full" : (autohiss_mode == AUTOHISS_BASIC ? "Basic" : "Off")]
" dat += "Blood Type: [b_type]
" - if(species in list("Human", "Drask", "Vox")) - dat += "Skin Tone: [species == "Vox" ? "[s_tone]" : "[-s_tone + 35]/220"]
" + if(S.bodyflags & (HAS_SKIN_TONE|HAS_ICON_SKIN_TONE)) + dat += "Skin Tone: [S.bodyflags & HAS_ICON_SKIN_TONE ? "[s_tone]" : "[-s_tone + 35]/220"]
" dat += "Disabilities: \[Set\]
" dat += "Nanotrasen Relation: [nanotrasen_relation]
" dat += "Set Flavor Text
" @@ -302,7 +313,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts dat += "

Hair & Accessories

" - if(species in list("Unathi", "Vulpkanin", "Tajaran", "Machine", "Kidan")) //Species that have head accessories. + if(S.bodyflags & HAS_HEAD_ACCESSORY) //Species that have head accessories. var/headaccessoryname = "Head Accessory: " if(species == "Unathi") headaccessoryname = "Horns: " @@ -310,15 +321,15 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts dat += "[ha_style] " dat += "Color [color_square(r_headacc, g_headacc, b_headacc)]
" - if(species in list("Machine", "Tajaran", "Unathi", "Vulpkanin", "Kidan")) //Species with head markings. + if(S.bodyflags & HAS_HEAD_MARKINGS) //Species with head markings. dat += "Head Markings: " dat += "[m_styles["head"]]" dat += "Color [color_square(color2R(m_colours["head"]), color2G(m_colours["head"]), color2B(m_colours["head"]))]
" - if(species in list("Human", "Unathi", "Grey", "Vulpkanin", "Tajaran", "Skrell", "Vox", "Drask", "Kidan")) //Species with body markings/tattoos. + if(S.bodyflags & HAS_BODY_MARKINGS) //Species with body markings/tattoos. dat += "Body Markings: " dat += "[m_styles["body"]]" dat += "Color [color_square(color2R(m_colours["body"]), color2G(m_colours["body"]), color2B(m_colours["body"]))]
" - if(species in list("Vox", "Vulpkanin")) //Species with tail markings. + if(S.bodyflags & HAS_TAIL_MARKINGS) //Species with tail markings. dat += "Tail Markings: " dat += "[m_styles["tail"]]" dat += "Color [color_square(color2R(m_colours["tail"]), color2G(m_colours["tail"]), color2B(m_colours["tail"]))]
" @@ -340,11 +351,11 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts dat += "
" - if(species != "Machine") + if(!(S.flags & ALL_RPARTS)) dat += "Eyes: " dat += "Color [color_square(r_eyes, g_eyes, b_eyes)]
" - if((species in list("Unathi", "Tajaran", "Skrell", "Slime People", "Vulpkanin", "Machine")) || body_accessory_by_species[species] || check_rights(R_ADMIN, 0, user)) //admins can always fuck with this, because they are admins + if((S.bodyflags & HAS_SKIN_COLOR) || body_accessory_by_species[species] || check_rights(R_ADMIN, 0, user)) //admins can always fuck with this, because they are admins dat += "Body Color: " dat += "Color [color_square(r_skin, g_skin, b_skin)]
" @@ -361,7 +372,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts dat += "Character Records
" dat += "

Limbs

" - if(species in list("Unathi")) //Species with alt heads. + if(S.bodyflags & HAS_ALT_HEADS) //Species with alt heads. dat += "Alternate Head: " dat += "[alt_head]
" dat += "Limbs and Parts: Adjust
" @@ -412,9 +423,12 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts else dat += "
" dat += "

Clothing

" - dat += "Underwear: [underwear]
" - dat += "Undershirt: [undershirt]
" - dat += "Socks: [socks]
" + if(S.clothing_flags & HAS_UNDERWEAR) + dat += "Underwear: [underwear]
" + if(S.clothing_flags & HAS_UNDERSHIRT) + dat += "Undershirt: [undershirt]
" + if(S.clothing_flags & HAS_SOCKS) + dat += "Socks: [socks]
" dat += "Backpack Type: [backbag]
" dat += "
" @@ -460,9 +474,15 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts for(var/i in special_roles) if(jobban_isbanned(user, i)) dat += "Be [capitalize(i)]: \[BANNED]
" - else if(!player_old_enough_antag(user.client,i)) - var/available_in_days_antag = available_in_days_antag(user.client,i) - dat += "Be [capitalize(i)]: \[IN [(available_in_days_antag)] DAYS]
" + else if(!player_old_enough_antag(user.client, i)) + var/available_in_days_antag = available_in_days_antag(user.client, i) + var/role_available_in_playtime = get_exp_format(role_available_in_playtime(user.client, i)) + if(available_in_days_antag) + dat += "Be [capitalize(i)]: \[IN [(available_in_days_antag)] DAYS]
" + else if(role_available_in_playtime) + dat += "Be [capitalize(i)]: \[IN [(role_available_in_playtime)]]
" + else + dat += "Be [capitalize(i)]: \[ERROR]
" else dat += "Be [capitalize(i)]: [(i in src.be_special) ? "Yes" : "No"]
" dat += "" @@ -556,7 +576,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts metadata["[tweak]"] = new_metadata -/datum/preferences/proc/SetChoices(mob/user, limit = 12, list/splitJobs = list("Civilian","Research Director","AI","Bartender"), width = 760, height = 790) +/datum/preferences/proc/SetChoices(mob/user, limit = 13, list/splitJobs = list("Civilian","Research Director","AI","Bartender"), width = 760, height = 790) if(!job_master) return @@ -806,7 +826,8 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts return 1 /datum/preferences/proc/ShowDisabilityState(mob/user,flag,label) - if(flag==DISABILITY_FLAG_FAT && species!=("Human" || "Tajaran" || "Grey")) + var/datum/species/S = all_species[species] + if(flag==DISABILITY_FLAG_FAT && !(S.flags & CAN_BE_FAT)) return "
  • [species] cannot be fat.
  • " return "
  • [label]: [disabilities & flag ? "Yes" : "No"]
  • " @@ -1068,7 +1089,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("input") var/dflag=text2num(href_list["disability"]) if(dflag >= 0) - if(!(dflag==DISABILITY_FLAG_FAT && species!=("Human" || "Tajaran" || "Grey"))) + if(!(dflag==DISABILITY_FLAG_FAT && !(S.flags & CAN_BE_FAT))) //If the disability isn't fatness, toggle it. If it IS fatness, check to see if the species can be fat before going ahead. disabilities ^= text2num(href_list["disability"]) //MAGIC SetDisabilities(user) else @@ -1154,7 +1175,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts switch(href_list["task"]) if("random") var/datum/robolimb/robohead - if(species == "Machine") + if(S.flags & ALL_RPARTS) var/head_model = "[!rlimb_data["head"] ? "Morpheus Cyberkinetics" : rlimb_data["head"]]" robohead = all_robolimbs[head_model] switch(href_list["preference"]) @@ -1187,30 +1208,30 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("f_style") f_style = random_facial_hair_style(gender, species, robohead) if("headaccessory") - if(species in list("Unathi", "Vulpkanin", "Tajaran", "Machine")) //Species that have head accessories. + if(S.bodyflags & HAS_HEAD_ACCESSORY) //Species that have head accessories. r_headacc = rand(0,255) g_headacc = rand(0,255) b_headacc = rand(0,255) if("ha_style") - if(species in list("Unathi", "Vulpkanin", "Tajaran", "Machine")) //Species that have head accessories. + if(S.bodyflags & HAS_HEAD_ACCESSORY) //Species that have head accessories. ha_style = random_head_accessory(species) if("m_style_head") - if(species in list("Machine", "Tajaran", "Unathi", "Vulpkanin", "Kidan")) //Species with head markings. + if(S.bodyflags & HAS_HEAD_MARKINGS) //Species with head markings. m_styles["head"] = random_marking_style("head", species, robohead, null, alt_head) if("m_head_colour") - if(species in list("Machine", "Tajaran", "Unathi", "Vulpkanin", "Kidan")) //Species with head markings. + if(S.bodyflags & HAS_HEAD_MARKINGS) //Species with head markings. m_colours["head"] = rgb(rand(0,255), rand(0,255), rand(0,255)) if("m_style_body") - if(species in list("Human", "Unathi", "Grey", "Vulpkanin", "Tajaran", "Skrell", "Vox", "Drask", "Kidan")) //Species with body markings. + if(S.bodyflags & HAS_BODY_MARKINGS) //Species with body markings. m_styles["body"] = random_marking_style("body", species) if("m_body_colour") - if(species in list("Human", "Unathi", "Grey", "Vulpkanin", "Tajaran", "Skrell", "Vox", "Drask", "Kidan")) //Species with body markings. + if(S.bodyflags & HAS_BODY_MARKINGS) //Species with body markings. m_colours["body"] = rgb(rand(0,255), rand(0,255), rand(0,255)) if("m_style_tail") - if(species in list("Vox", "Vulpkanin")) //Species with tail markings. + if(S.bodyflags & HAS_TAIL_MARKINGS) //Species with tail markings. m_styles["tail"] = random_marking_style("tail", species, null, body_accessory) if("m_tail_colour") - if(species in list("Vox", "Vulpkanin")) //Species with tail markings. + if(S.bodyflags & HAS_TAIL_MARKINGS) //Species with tail markings. m_colours["tail"] = rgb(rand(0,255), rand(0,255), rand(0,255)) if("underwear") underwear = random_underwear(gender, species) @@ -1226,10 +1247,10 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts g_eyes = rand(0,255) b_eyes = rand(0,255) if("s_tone") - if(species in list("Human", "Drask", "Vox")) + if(S.bodyflags & (HAS_SKIN_TONE|HAS_ICON_SKIN_TONE)) s_tone = random_skin_tone() if("s_color") - if(species in list("Unathi", "Tajaran", "Skrell", "Slime People", "Wryn", "Vulpkanin", "Machine")) + if(S.bodyflags & HAS_SKIN_COLOR) r_skin = rand(0,255) g_skin = rand(0,255) b_skin = rand(0,255) @@ -1253,7 +1274,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("age") var/new_age = input(user, "Choose your character's age:\n([AGE_MIN]-[AGE_MAX])", "Character Preference") as num|null if(new_age) - age = max(min( round(text2num(new_age)), AGE_MAX),AGE_MIN) + age = max(min(round(text2num(new_age)), AGE_MAX),AGE_MIN) if("species") var/list/new_species = list("Human", "Tajaran", "Skrell", "Unathi", "Diona", "Vulpkanin") var/prev_species = species @@ -1271,11 +1292,15 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts species = input("Please select a species", "Character Generation", null) in new_species var/datum/species/NS = all_species[species] + if(!istype(NS)) //The species was invalid. Notify the user and fail out. + species = prev_species + to_chat(user, "Invalid species, please pick something else.") + return if(prev_species != species) if(NS.has_gender && gender == PLURAL) gender = pick(MALE,FEMALE) var/datum/robolimb/robohead - if(species == "Machine") + if(NS.flags & ALL_RPARTS) var/head_model = "[!rlimb_data["head"] ? "Morpheus Cyberkinetics" : rlimb_data["head"]]" robohead = all_robolimbs[head_model] //grab one of the valid hair styles for the newly chosen species @@ -1284,7 +1309,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts //grab one of the valid facial hair styles for the newly chosen species f_style = random_facial_hair_style(gender, species, robohead) - if(species in list("Unathi", "Vulpkanin", "Tajaran", "Machine")) //Species that have head accessories. + if(NS.bodyflags & HAS_HEAD_ACCESSORY) //Species that have head accessories. ha_style = random_head_accessory(species) else ha_style = "None" // No Vulp ears on Unathi @@ -1292,19 +1317,19 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts g_headacc = 0 b_headacc = 0 - if(species in list("Machine", "Tajaran", "Unathi", "Vulpkanin", "Kidan")) //Species with head markings. + if(NS.bodyflags & HAS_HEAD_MARKINGS) //Species with head markings. m_styles["head"] = random_marking_style("head", species, robohead, null, alt_head) else m_styles["head"] = "None" m_colours["head"] = "#000000" - if(species in list("Human", "Unathi", "Grey", "Vulpkanin", "Tajaran", "Skrell", "Vox", "Drask", "Kidan")) //Species with body markings/tattoos. + if(NS.bodyflags & HAS_BODY_MARKINGS) //Species with body markings/tattoos. m_styles["body"] = random_marking_style("body", species) else m_styles["body"] = "None" m_colours["body"] = "#000000" - if(species in list("Vox", "Vulpkanin")) //Species with tail markings. + if(NS.bodyflags & HAS_TAIL_MARKINGS) //Species with tail markings. m_styles["tail"] = random_marking_style("tail", species, null, body_accessory) else m_styles["tail"] = "None" @@ -1324,12 +1349,12 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts socks = random_socks(gender, species) //reset skin tone and colour - if(species in list("Human", "Drask", "Vox")) + if(NS.bodyflags & (HAS_SKIN_TONE|HAS_ICON_SKIN_TONE)) random_skin_tone(species) else s_tone = 0 - if(!(species in list("Unathi", "Tajaran", "Skrell", "Slime People", "Vulpkanin", "Machine"))) + if(!(NS.bodyflags & HAS_SKIN_COLOR)) r_skin = 0 g_skin = 0 b_skin = 0 @@ -1342,6 +1367,9 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts //Reset prosthetics. organ_data = list() rlimb_data = list() + + if(!(NS.autohiss_basic_map)) + autohiss_mode = AUTOHISS_OFF if("speciesprefs") speciesprefs = !speciesprefs //Starts 0, so if someone clicks the button up top there, this won't be 0 anymore. If they click it again, it'll go back to 0. if("language") @@ -1366,6 +1394,12 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts language = input("Please select a secondary language", "Character Generation", null) in new_languages + if("autohiss_mode") + if(S.autohiss_basic_map) + var/list/autohiss_choice = list("Off" = AUTOHISS_OFF, "Basic" = AUTOHISS_BASIC, "Full" = AUTOHISS_FULL) + var/new_autohiss_pref = input(user, "Choose your character's auto-accent level:", "Character Preference") as null|anything in autohiss_choice + autohiss_mode = autohiss_choice[new_autohiss_pref] + if("metadata") var/new_metadata = input(user, "Enter any information you'd like others to see, such as Roleplay-preferences:", "Game Preference" , metadata) as message|null if(new_metadata) @@ -1377,7 +1411,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts b_type = new_b_type if("hair") - if(species in list("Human", "Unathi", "Tajaran", "Skrell", "Machine", "Vulpkanin", "Vox")) + if(species in list("Human", "Unathi", "Tajaran", "Skrell", "Machine", "Vulpkanin", "Vox")) //Species that have hair. (No HAS_HAIR flag) var/input = "Choose your character's hair colour:" var/new_hair = input(user, input, "Character Preference", rgb(r_hair, g_hair, b_hair)) as color|null if(new_hair) @@ -1403,7 +1437,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if(hairstyle == "Bald") //Just in case. valid_hairstyles += hairstyle continue - if(species == "Machine") //Species that can use prosthetic heads. + if(S.flags & ALL_RPARTS) //Species that can use prosthetic heads. var/head_model if(!rlimb_data["head"]) //Handle situations where the head is default. head_model = "Morpheus Cyberkinetics" @@ -1425,7 +1459,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts h_style = new_h_style if("headaccessory") - if(species in list("Unathi", "Vulpkanin", "Tajaran", "Machine", "Kidan")) //Species with head accessories. + if(S.bodyflags & HAS_HEAD_ACCESSORY) //Species with head accessories. var/input = "Choose the colour of your your character's head accessory:" var/new_head_accessory = input(user, input, "Character Preference", rgb(r_headacc, g_headacc, b_headacc)) as color|null if(new_head_accessory) @@ -1434,7 +1468,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts b_headacc = color2B(new_head_accessory) if("ha_style") - if(species in list("Unathi", "Vulpkanin", "Tajaran", "Machine", "Kidan")) //Species with head accessories. + if(S.bodyflags & HAS_HEAD_ACCESSORY) //Species with head accessories. var/list/valid_head_accessory_styles = list() for(var/head_accessory_style in head_accessory_styles_list) var/datum/sprite_accessory/H = head_accessory_styles_list[head_accessory_style] @@ -1450,7 +1484,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("alt_head") if(organ_data["head"] == "cyborg") return - if(species in list("Unathi")) //Species with alt heads. + if(S.bodyflags & HAS_ALT_HEADS) //Species with alt heads. var/list/valid_alt_heads = list() valid_alt_heads["None"] = alt_heads_list["None"] //The only null entry should be the "None" option for(var/alternate_head in alt_heads_list) @@ -1470,7 +1504,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts m_styles["head"] = "None" if("m_style_head") - if(species in list("Machine", "Tajaran", "Unathi", "Vulpkanin", "Kidan")) //Species with head markings. + if(S.bodyflags & HAS_HEAD_MARKINGS) //Species with head markings. var/list/valid_markings = list() valid_markings["None"] = marking_styles_list["None"] for(var/markingstyle in marking_styles_list) @@ -1486,7 +1520,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if(M.heads_allowed && !("All" in M.heads_allowed)) continue - if(species == "Machine") //Species that can use prosthetic heads. + if(S.flags & ALL_RPARTS) //Species that can use prosthetic heads. var/head_model if(!rlimb_data["head"]) //Handle situations where the head is default. head_model = "Morpheus Cyberkinetics" @@ -1506,14 +1540,14 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts m_styles["head"] = new_marking_style if("m_head_colour") - if(species in list("Machine", "Tajaran", "Unathi", "Vulpkanin", "Kidan")) //Species with head markings. + if(S.bodyflags & HAS_HEAD_MARKINGS) //Species with head markings. var/input = "Choose the colour of your your character's head markings:" var/new_markings = input(user, input, "Character Preference", m_colours["head"]) as color|null if(new_markings) m_colours["head"] = new_markings if("m_style_body") - if(species in list("Human", "Unathi", "Grey", "Vulpkanin", "Tajaran", "Skrell", "Vox", "Drask", "Kidan")) //Species with body markings/tattoos. + if(S.bodyflags & HAS_BODY_MARKINGS) //Species with body markings/tattoos. var/list/valid_markings = list() valid_markings["None"] = marking_styles_list["None"] for(var/markingstyle in marking_styles_list) @@ -1530,14 +1564,14 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts m_styles["body"] = new_marking_style if("m_body_colour") - if(species in list("Human", "Unathi", "Grey", "Vulpkanin", "Tajaran", "Skrell", "Vox", "Drask", "Kidan")) //Species with body markings/tattoos. + if(S.bodyflags & HAS_BODY_MARKINGS) //Species with body markings/tattoos. var/input = "Choose the colour of your your character's body markings:" var/new_markings = input(user, input, "Character Preference", m_colours["body"]) as color|null if(new_markings) m_colours["body"] = new_markings if("m_style_tail") - if(species in list("Vox", "Vulpkanin")) //Species with tail markings. + if(S.bodyflags & HAS_TAIL_MARKINGS) //Species with tail markings. var/list/valid_markings = list() valid_markings["None"] = marking_styles_list["None"] for(var/markingstyle in marking_styles_list) @@ -1560,7 +1594,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts m_styles["tail"] = new_marking_style if("m_tail_colour") - if(species in list("Vox", "Vulpkanin")) //Species with tail markings. + if(S.bodyflags & HAS_TAIL_MARKINGS) //Species with tail markings. var/input = "Choose the colour of your your character's tail markings:" var/new_markings = input(user, input, "Character Preference", m_colours["tail"]) as color|null if(new_markings) @@ -1585,7 +1619,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts body_accessory = (new_body_accessory == "None") ? null : new_body_accessory if("facial") - if(species in list("Human", "Unathi", "Tajaran", "Skrell", "Machine", "Vulpkanin", "Vox")) + if(species in list("Human", "Unathi", "Tajaran", "Skrell", "Machine", "Vulpkanin", "Vox")) //Species that have facial hair. (No HAS_HAIR_FACIAL flag) var/new_facial = input(user, "Choose your character's facial-hair colour:", "Character Preference", rgb(r_facial, g_facial, b_facial)) as color|null if(new_facial) r_facial = color2R(new_facial) @@ -1614,7 +1648,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts continue if(gender == FEMALE && SA.gender == MALE) continue - if(species == "Machine") //Species that can use prosthetic heads. + if(S.flags & ALL_RPARTS) //Species that can use prosthetic heads. var/head_model if(!rlimb_data["head"]) //Handle situations where the head is default. head_model = "Morpheus Cyberkinetics" @@ -1690,17 +1724,26 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts b_eyes = color2B(new_eyes) if("s_tone") - if(species == "Human" || species == "Drask") + if(S.bodyflags & HAS_SKIN_TONE) var/new_s_tone = input(user, "Choose your character's skin-tone:\n(Light 1 - 220 Dark)", "Character Preference") as num|null if(new_s_tone) s_tone = 35 - max(min(round(new_s_tone), 220), 1) - else if(species == "Vox") - var/skin_c = input(user, "Choose your Vox's skin color:\n(1 = Default Green, 2 = Dark Green, 3 = Brown, 4 = Grey, \n5 = Emerald, 6 = Azure)", "Character Preference") as num|null - if(skin_c) - s_tone = max(min(round(skin_c), 6), 1) + else if(S.bodyflags & HAS_ICON_SKIN_TONE) + var/const/MAX_LINE_ENTRIES = 4 + var/prompt = "Choose your character's skin tone: 1-[S.icon_skin_tones.len]\n(" + for(var/i = 1 to S.icon_skin_tones.len) + if(i > MAX_LINE_ENTRIES && !((i - 1) % MAX_LINE_ENTRIES)) + prompt += "\n" + prompt += "[i] = [S.icon_skin_tones[i]]" + if(i != S.icon_skin_tones.len) + prompt += ", " + prompt += ")" + var/skin_c = input(user, prompt, "Character Preference") as num|null + if(isnum(skin_c)) + s_tone = max(min(round(skin_c), S.icon_skin_tones.len), 1) if("skin") - if((species in list("Unathi", "Tajaran", "Skrell", "Slime People", "Vulpkanin", "Machine")) || body_accessory_by_species[species] || check_rights(R_ADMIN, 0, user)) + if((S.bodyflags & HAS_SKIN_COLOR) || body_accessory_by_species[species] || check_rights(R_ADMIN, 0, user)) var/new_skin = input(user, "Choose your character's skin colour: ", "Character Preference", rgb(r_skin, g_skin, b_skin)) as color|null if(new_skin) r_skin = color2R(new_skin) @@ -1734,7 +1777,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if("limbs") var/valid_limbs = list("Left Leg", "Right Leg", "Left Arm", "Right Arm", "Left Foot", "Right Foot", "Left Hand", "Right Hand") - if(species == "Machine") + if(S.flags & ALL_RPARTS) valid_limbs = list("Torso", "Lower Body", "Head", "Left Leg", "Right Leg", "Left Arm", "Right Arm", "Left Foot", "Right Foot", "Left Hand", "Right Hand") var/limb_name = input(user, "Which limb do you want to change?") as null|anything in valid_limbs if(!limb_name) return @@ -1770,19 +1813,19 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts second_limb = "r_hand" if("Left Foot") limb = "l_foot" - if(species != "Machine") + if(!(S.flags & ALL_RPARTS)) third_limb = "l_leg" if("Right Foot") limb = "r_foot" - if(species != "Machine") + if(!(S.flags & ALL_RPARTS)) third_limb = "r_leg" if("Left Hand") limb = "l_hand" - if(species != "Machine") + if(!(S.flags & ALL_RPARTS)) third_limb = "l_arm" if("Right Hand") limb = "r_hand" - if(species != "Machine") + if(!(S.flags & ALL_RPARTS)) third_limb = "r_arm" var/new_state = input(user, "What state do you wish the limb to be in?") as null|anything in valid_limb_states @@ -1838,7 +1881,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts if(subchoice) choice = subchoice if(limb in list("head", "chest", "groin")) - if(species != "Machine") + if(!(S.flags & ALL_RPARTS)) return if(limb == "head") ha_style = "None" diff --git a/code/modules/client/preference/preferences_mysql.dm b/code/modules/client/preference/preferences_mysql.dm index 02d246b4f70..579699a9414 100644 --- a/code/modules/client/preference/preferences_mysql.dm +++ b/code/modules/client/preference/preferences_mysql.dm @@ -175,7 +175,8 @@ speciesprefs, socks, body_accessory, - gear + gear, + autohiss FROM [format_table_name("characters")] WHERE ckey='[C.ckey]' AND slot='[slot]'"}) if(!query.Execute()) var/err = query.ErrorMsg() @@ -268,6 +269,7 @@ socks = query.item[63] body_accessory = query.item[64] gear = params2list(query.item[65]) + autohiss_mode = text2num(query.item[66]) //Sanitize var/datum/species/SP = all_species[species] @@ -315,6 +317,7 @@ undershirt = sanitize_text(undershirt, initial(undershirt)) backbag = sanitize_text(backbag, initial(backbag)) b_type = sanitize_text(b_type, initial(b_type)) + autohiss_mode = sanitize_integer(autohiss_mode, 0, 2, initial(autohiss_mode)) alternate_option = sanitize_integer(alternate_option, 0, 2, initial(alternate_option)) job_support_high = sanitize_integer(job_support_high, 0, 65535, initial(job_support_high)) @@ -427,7 +430,8 @@ speciesprefs='[speciesprefs]', socks='[socks]', body_accessory='[body_accessory]', - gear='[gearlist]' + gear='[gearlist]', + autohiss='[autohiss_mode]' WHERE ckey='[C.ckey]' AND slot='[default_slot]'"} ) @@ -467,7 +471,7 @@ gen_record, player_alt_titles, disabilities, organ_data, rlimb_data, nanotrasen_relation, speciesprefs, - socks, body_accessory, gear) + socks, body_accessory, gear, autohiss) VALUES ('[C.ckey]', '[default_slot]', '[sanitizeSQL(metadata)]', '[sanitizeSQL(real_name)]', '[be_random_name]','[gender]', @@ -497,7 +501,7 @@ '[sanitizeSQL(gen_record)]', '[playertitlelist]', '[disabilities]', '[organlist]', '[rlimblist]', '[nanotrasen_relation]', '[speciesprefs]', - '[socks]', '[body_accessory]', '[gearlist]') + '[socks]', '[body_accessory]', '[gearlist]', '[autohiss_mode]') "} ) diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index e1d0232b84c..7a651881699 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -175,27 +175,15 @@ item_color = "noble_boot" item_state = "noble_boot" - /obj/item/clothing/shoes/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/shoe_silencer)) - silence_steps = 1 - shoe_sound = null - user.unEquip(I) - qdel(I) - else . = ..() - -/obj/item/shoe_silencer - name = "shoe rags" - desc = "Looks sneaky." - icon_state = "sheet-cloth" - -/datum/crafting_recipe/shoe_rags - name = "Shoe Rags" - result = /obj/item/shoe_silencer - reqs = list(/obj/item/stack/tape_roll = 10) - tools = list(/obj/item/weapon/wirecutters) - time = 40 - category = CAT_MISC + if(istype(I, /obj/item/stack/tape_roll)) + var/obj/item/stack/tape_roll/TR = I + if((!silence_steps || shoe_sound) && TR.use(4)) + silence_steps = 1 + shoe_sound = null + to_chat(user, "You tape the soles of [src] to silence their footsteps.") + else + return ..() /obj/item/clothing/shoes/sandal/white name = "White Sandals" @@ -255,4 +243,4 @@ name = "pink cowgirl boots" desc = "For a Rustlin' tustlin' cowgirl." icon_state = "cowboyboots_pink" - item_color = "cowboyboots_pink" \ No newline at end of file + item_color = "cowboyboots_pink" diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm index 20a14cc4fc5..9ece7d54aa3 100644 --- a/code/modules/clothing/spacesuits/plasmamen.dm +++ b/code/modules/clothing/spacesuits/plasmamen.dm @@ -107,14 +107,14 @@ name = "plasmaman atmospheric suit" icon_state = "plasmamanAtmos_suit" armor = list(melee = 10, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 0) - max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT + max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT /obj/item/clothing/head/helmet/space/eva/plasmaman/atmostech name = "plasmaman atmospheric helmet" icon_state = "plasmamanAtmos_helmet0" base_state = "plasmamanAtmos_helmet" armor = list(melee = 10, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 0) - max_heat_protection_temperature = FIRE_HELM_MAX_TEMP_PROTECT + max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT /obj/item/clothing/suit/space/eva/plasmaman/engineer name = "plasmaman engineer suit" @@ -130,13 +130,14 @@ /obj/item/clothing/suit/space/eva/plasmaman/engineer/ce name = "plasmaman chief engineer suit" icon_state = "plasmaman_CE" - max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT + max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT + /obj/item/clothing/head/helmet/space/eva/plasmaman/engineer/ce name = "plasmaman chief engineer helmet" icon_state = "plasmaman_CE_helmet0" base_state = "plasmaman_CE_helmet" - max_heat_protection_temperature = FIRE_HELM_MAX_TEMP_PROTECT + max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT //SERVICE diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm index 33bb0bcd269..24f5a340760 100644 --- a/code/modules/clothing/spacesuits/rig/rig.dm +++ b/code/modules/clothing/spacesuits/rig/rig.dm @@ -985,11 +985,6 @@ // AIs are a bit slower than regular and ignore move intent. wearer_move_delay = world.time + ai_controlled_move_delay - var/tickcomp = 0 - if(config.Tickcomp) - tickcomp = ((1/(world.tick_lag))*1.3) - 1.3 - wearer_move_delay += tickcomp - if(wearer.buckled) //if we're buckled to something, tell it we moved. return wearer.buckled.relaymove(wearer, direction) diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index 2cf6bf3d12c..f0da2e141a0 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -384,6 +384,66 @@ icon_state = "stripedbluescarf" item_color = "stripedbluescarf" +//Necklaces +/obj/item/clothing/accessory/necklace + name = "necklace" + desc = "A simple necklace." + icon_state = "necklace" + item_state = "necklace" + item_color = "necklace" + slot_flags = SLOT_MASK | SLOT_TIE + +/obj/item/clothing/accessory/necklace/locket + name = "gold locket" + desc = "A gold locket that seems to have space for a photo within." + icon_state = "locket" + item_state = "locket" + item_color = "locket" + slot_flags = SLOT_MASK | SLOT_TIE + var/base_icon + var/open + var/obj/item/held //Item inside locket. + +/obj/item/clothing/accessory/necklace/locket/Destroy() + QDEL_NULL(held) + return ..() + + +/obj/item/clothing/accessory/necklace/locket/attack_self(mob/user as mob) + if(!base_icon) + base_icon = icon_state + + if(!("[base_icon]_open" in icon_states(icon))) + to_chat(user, "[src] doesn't seem to open.") + return + + open = !open + to_chat(user, "You flip [src] [open?"open":"closed"].") + if(open) + icon_state = "[base_icon]_open" + if(held) + to_chat(user, "[held] falls out!") + held.forceMove(get_turf(user)) + held = null + else + icon_state = "[base_icon]" + +/obj/item/clothing/accessory/necklace/locket/attackby(var/obj/item/O as obj, mob/user as mob) + if(!open) + to_chat(user, "You have to open it first.") + return + + if(istype(O,/obj/item/weapon/paper) || istype(O, /obj/item/weapon/photo) && !(istype(O, /obj/item/weapon/paper/talisman))) + if(held) + to_chat(usr, "[src] already has something inside it.") + else + to_chat(usr, "You slip [O] into [src].") + user.drop_item() + O.forceMove(src) + held = O + else + return ..() + //Cowboy Shirts /obj/item/clothing/accessory/cowboyshirt name = "black cowboy shirt" diff --git a/code/modules/clothing/under/jobs/civilian.dm b/code/modules/clothing/under/jobs/civilian.dm index bac5b3d51e3..1ca94e9a4f3 100644 --- a/code/modules/clothing/under/jobs/civilian.dm +++ b/code/modules/clothing/under/jobs/civilian.dm @@ -119,6 +119,14 @@ item_color = "internalaffairs" flags_size = ONESIZEFITSALL +/obj/item/clothing/under/rank/ntrep/skirt + desc = "A silky smooth black and gold representative uniform with blue markings." + name = "representative skirt" + icon_state = "ntrepf" + item_state = "ntrepf" + item_color = "ntrepf" + flags_size = ONESIZEFITSALL + /obj/item/clothing/under/rank/janitor desc = "It's the official uniform of the station's janitor. It has minor protection from biohazards." name = "janitor's jumpsuit" diff --git a/code/modules/clothing/under/jobs/security.dm b/code/modules/clothing/under/jobs/security.dm index 31d36cdcb19..da905dd1e75 100644 --- a/code/modules/clothing/under/jobs/security.dm +++ b/code/modules/clothing/under/jobs/security.dm @@ -182,6 +182,16 @@ armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 10, rad = 0) flags_size = ONESIZEFITSALL +/obj/item/clothing/under/rank/security/brigphys/skirt + desc = "A skirted Brig Physician uniform. It has both security and medical protection." + name = "brig physician's jumpskirt" + icon_state = "brig_physf" + item_state = "brig_physf" + item_color = "brig_physf" + permeability_coefficient = 0.50 + armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 10, rad = 0) + flags_size = ONESIZEFITSALL + //Pod Pilot /obj/item/clothing/under/rank/security/pod_pilot desc = "Suit for your regular pod pilot." diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index d388db29b5c..7494f559383 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -153,6 +153,14 @@ item_color = "ert_uniform" armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) +/obj/item/clothing/under/rank/blueshield/skirt + name = "blueshield skirt" + desc = "A short, black and grey with blue markings skirted uniform. For the feminine Blueshield officers." + icon_state = "blueshieldf" + item_state = "blueshieldf" + item_color = "blueshieldf" + armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) + /obj/item/clothing/under/space name = "\improper NASA jumpsuit" desc = "It has a NASA logo on it and is made of space-proofed materials." diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index 12ff121e6e8..723cd4095e3 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -391,14 +391,10 @@ sallet.put_on_delay = helm.put_on_delay sallet.burn_state = helm.burn_state sallet.flags_cover = helm.flags_cover - if(helm.up) - sallet.flags &= ~helm.visor_flags - sallet.flags_inv &= ~helm.visor_flags_inv - if(!BLOCKHAIR in sallet.flags) + sallet.visor_flags = helm.visor_flags + sallet.visor_flags_inv = helm.visor_flags_inv + if(!(BLOCKHAIR in sallet.flags)) sallet.flags |= BLOCKHAIR - for(var/flag in list(HIDEMASK, HIDEFACE, HIDEEYES, HIDEEARS)) //Check for and apply missing flags. - if(!(sallet.flags_inv & flag)) - sallet.flags_inv |= flag sallet.add_fingerprint(H) target.transfer_fingerprints_to(sallet) @@ -553,11 +549,8 @@ if(choice && choice != state && !user.incapacitated() && Adjacent(user)) var/list/new_state = options[choice] - var/list/old_state = options[state] icon_state = new_state["icon_state"] - flags_inv &= ~(old_state["visor_flags"]|old_state["mask_flags"]) state = choice - flags_inv |= (new_state["visor_flags"]|new_state["mask_flags"]) to_chat(user, "You adjust the sallet.") playsound(src.loc, "[toggle_sound]", 100, 0, 4) user.update_inv_head() @@ -965,21 +958,13 @@ icon_state = options[choice] to_chat(user, "Your strange witch hat has now shapeshifted into it's [choice] form!") return 1 - -/obj/item/weapon/reagent_containers/food/drinks/bottle/fluff/moonshine //nethiafins : Serhij Zozulia - name = "Cloudy Bottle" - desc = "The contents of this bottle are vile. You should only drink it when you hit rock bottom." - icon = 'icons/obj/custom_items.dmi' - icon_state = "questionable_liquid" - item_state = "questionable_liquid" - amount_per_transfer_from_this = 5 - list_reagents = list("moonshine" = 100) - -/obj/item/weapon/storage/box/fluff/moonshine_kit //nethiafins : Serhij Zozulia - name = "Moonshine Serving box" - -/obj/item/weapon/storage/box/fluff/moonshine_kit/New() ..() - new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass(src) - new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass(src) - new /obj/item/weapon/reagent_containers/food/drinks/bottle/fluff/moonshine(src) + +/obj/item/clothing/accessory/necklace/locket/fluff/fethasnecklace //Fethas: Sefra'neem + name = "Orange gemmed locket" + desc = "A locket with a orange gem set on the front, the picture inside seems to be of a Tajaran." + icon = 'icons/obj/custom_items.dmi' + icon_state = "fethasnecklace" + item_state = "fethasnecklace" + item_color = "fethasnecklace" + slot_flags = SLOT_MASK | SLOT_TIE diff --git a/code/modules/fancytitle/fancytitle.dm b/code/modules/fancytitle/fancytitle.dm new file mode 100644 index 00000000000..e445024aae1 --- /dev/null +++ b/code/modules/fancytitle/fancytitle.dm @@ -0,0 +1,33 @@ +/hook/startup/proc/setup_title_screen() + var/list/provisional_title_screens = flist("config/title_screens/images/") + var/list/title_screens = list() + var/use_rare_screens = prob(1) + + for(var/S in provisional_title_screens) + var/list/L = splittext(S,"+") + if(L.len == 1 && L[1] != "blank.png") + title_screens += S + + else if(L.len > 1) + if(use_rare_screens && lowertext(L[1]) == "rare") + title_screens += S + else if(lowertext(L[1]) == lowertext(MAP_NAME)) + title_screens += S + + if(!isemptylist(title_screens)) + if(length(title_screens) > 1) + for(var/S in title_screens) + var/list/L = splittext(S,".") + if(L.len != 2 || L[1] != "default") + continue + title_screens -= S + break + + var/file_path = "config/title_screens/images/[pick(title_screens)]" + + var/icon/icon = new(fcopy_rsc(file_path)) + + for(var/turf/unsimulated/wall/splashscreen/splash in world) + splash.icon = icon + return TRUE + return FALSE \ No newline at end of file diff --git a/code/modules/fish/fishtank.dm b/code/modules/fish/fishtank.dm index bbd7615b6ce..34d393fad0c 100644 --- a/code/modules/fish/fishtank.dm +++ b/code/modules/fish/fishtank.dm @@ -11,7 +11,7 @@ icon_state = "tank1" density = 0 anchored = 0 - throwpass = 0 + pass_flags = 0 var/tank_type = "" // Type of aquarium, used for icon updating var/water_capacity = 0 // Number of units the tank holds (varies with tank type) @@ -38,8 +38,7 @@ icon_state = "bowl1" density = 0 // Small enough to not block stuff anchored = 0 // Small enough to move even when filled - throwpass = 1 // Just like at the county fair, you can't seem to throw the ball in to win the goldfish - pass_flags = PASSTABLE // Small enough to pull onto a table + pass_flags = PASSTABLE | LETPASSTHROW // Just like at the county fair, you can't seem to throw the ball in to win the goldfish, and it's small enough to pull onto a table tank_type = "bowl" water_capacity = 50 // Not very big, therefore it can't hold much @@ -57,7 +56,7 @@ icon_state = "tank1" density = 1 anchored = 1 - throwpass = 1 // You can throw objects over this, despite it's density, because it's short enough. + pass_flags = LETPASSTHROW tank_type = "tank" water_capacity = 200 // Decent sized, holds almost 2 full buckets @@ -75,7 +74,7 @@ icon_state = "wall1" density = 1 anchored = 1 - throwpass = 0 // This thing is the size of a wall, you can't throw past it. + pass_flags = 0 // This thing is the size of a wall, you can't throw past it. tank_type = "wall" water_capacity = 500 // This thing fills an entire tile, it holds a lot. diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index f9c97c87a0b..64bb91a9db4 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -180,49 +180,6 @@ Gunshots/explosions/opening doors/less rare audio (done) ..() name = "alien hunter ([rand(1, 1000)])" -/obj/effect/hallucination/simple/xeno/throw_at(atom/target, range, speed) // TODO : Make diagonal trhow into proc/property - if(!target || !src || (flags & NODROP)) - return 0 - - throwing = 1 - - var/dist_x = abs(target.x - x) - var/dist_y = abs(target.y - y) - var/dist_travelled = 0 - var/dist_since_sleep = 0 - - var/tdist_x = dist_x; - var/tdist_y = dist_y; - - if(dist_x <= dist_y) - tdist_x = dist_y; - tdist_y = dist_x; - - var/error = tdist_x/2 - tdist_y - while(target && (((((dist_x > dist_y) && ((x < target.x) || (x > target.x))) || ((dist_x <= dist_y) && ((y < target.y) || (y > target.y))) || (x > target.x)) && dist_travelled < range) || !has_gravity(src))) - if(!throwing) - break - if(!istype(loc, /turf)) - break - - var/atom/step = get_step(src, get_dir(src, target)) - if(!step) - break - Move(step, get_dir(src, step)) - hit_check() - error += (error < 0) ? tdist_x : -tdist_y; - dist_travelled++ - dist_since_sleep++ - if(dist_since_sleep >= speed) - dist_since_sleep = 0 - sleep(1) - - - throwing = 0 - throw_impact(get_turf(src)) - - return 1 - /obj/effect/hallucination/simple/xeno/throw_impact(A) update_icon("alienh_pounce") if(A == target) @@ -247,12 +204,12 @@ Gunshots/explosions/opening doors/less rare audio (done) if(!xeno) return xeno.update_icon("alienh_leap",'icons/mob/alienleap.dmi',-32,-32) - xeno.throw_at(target,7,1) + xeno.throw_at(target,7,1, spin = 0, diagonals_first = 1) sleep(10) if(!xeno) return xeno.update_icon("alienh_leap",'icons/mob/alienleap.dmi',-32,-32) - xeno.throw_at(pump,7,1) + xeno.throw_at(pump,7,1, spin = 0, diagonals_first = 1) sleep(10) if(!xeno) return diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm index 53130d972f4..75f9c9a776f 100644 --- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm @@ -216,7 +216,7 @@ /obj/item/weapon/reagent_containers/food/drinks/bottle/cognac name = "Chateau De Baton Premium Cognac" - desc = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. You might as well not scream 'SHITCURITY' this time." + desc = "A sweet and strongly alcoholic drink, made after numerous distillations and years of maturing. You might as well not scream 'SHITCURITY' this time." icon_state = "cognacbottle" list_reagents = list("cognac" = 100) @@ -228,7 +228,7 @@ /obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe name = "Extra-Strong Absinthe" - desc = "An strong alcoholic drink brewed and distributed by" + desc = "A strong alcoholic drink brewed and distributed by REDACTED." icon_state = "absinthebottle" list_reagents = list("absinthe" = 100) diff --git a/code/modules/food_and_drinks/kitchen_machinery/gibber.dm b/code/modules/food_and_drinks/kitchen_machinery/gibber.dm index ae7cf92c92d..efdd173bed9 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/gibber.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/gibber.dm @@ -123,7 +123,7 @@ return if(!ishuman(victim) || issmall(victim)) - to_chat(user, "This is not suitable for the [src]]!") + to_chat(user, "This is not suitable for the [src]!") return if(victim.abiotic(1)) @@ -133,7 +133,7 @@ user.visible_message("[user] starts to put [victim] into the [src]!") add_fingerprint(user) if(do_after(user, 30, target = victim) && user.Adjacent(src) && victim.Adjacent(user) && !occupant) - user.visible_message("[user] stuffs [victim] into the [src]]!") + user.visible_message("[user] stuffs [victim] into the [src]!") victim.forceMove(src) occupant = victim diff --git a/code/modules/mob/living/autohiss.dm b/code/modules/mob/living/autohiss.dm index 4506ce50cfb..da19b6a35b2 100644 --- a/code/modules/mob/living/autohiss.dm +++ b/code/modules/mob/living/autohiss.dm @@ -1,29 +1,18 @@ - -#define AUTOHISS_OFF 0 -#define AUTOHISS_BASIC 1 -#define AUTOHISS_FULL 2 - -#define AUTOHISS_NUM 3 - - /mob/living/proc/handle_autohiss(message, datum/language/L) return message // no autohiss at this level /mob/living/carbon/human/handle_autohiss(message, datum/language/L) - if(!client || client.autohiss_mode == AUTOHISS_OFF) // no need to process if there's no client or they have autohiss off + if(!client || client.prefs.autohiss_mode == AUTOHISS_OFF) // no need to process if there's no client or they have autohiss off return message - return species.handle_autohiss(message, L, client.autohiss_mode) - -/client - var/autohiss_mode = AUTOHISS_OFF + return species.handle_autohiss(message, L, client.prefs.autohiss_mode) /client/verb/toggle_autohiss() set name = "Toggle Auto-Accent" set desc = "Toggle automatic accents for your species" set category = "OOC" - autohiss_mode = (autohiss_mode + 1) % AUTOHISS_NUM - switch(autohiss_mode) + prefs.autohiss_mode = (prefs.autohiss_mode + 1) % AUTOHISS_NUM + switch(prefs.autohiss_mode) if(AUTOHISS_OFF) to_chat(src, "Auto-hiss is now OFF.") if(AUTOHISS_BASIC) @@ -31,7 +20,7 @@ if(AUTOHISS_FULL) to_chat(src, "Auto-hiss is now FULL.") else - autohiss_mode = AUTOHISS_OFF + prefs.autohiss_mode = AUTOHISS_OFF to_chat(src, "Auto-hiss is now OFF.") /datum/species diff --git a/code/modules/mob/living/carbon/alien/alien_defenses.dm b/code/modules/mob/living/carbon/alien/alien_defenses.dm index c1ce34bf8e7..65e32e2fae9 100644 --- a/code/modules/mob/living/carbon/alien/alien_defenses.dm +++ b/code/modules/mob/living/carbon/alien/alien_defenses.dm @@ -1,5 +1,5 @@ -/mob/living/carbon/alien/hitby(atom/movable/AM) - ..(AM, 1) +/mob/living/carbon/alien/hitby(atom/movable/AM, skipcatch, hitpush) + ..(AM, hitpush = 0) /*Code for aliens attacking aliens. Because aliens act on a hivemind, I don't see them as very aggressive with each other. As such, they can either help or harm other aliens. Help works like the human help command while harm is a simple nibble. diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm index bc1e1e4f56d..cdd1b55bcf9 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm @@ -79,17 +79,18 @@ else //Maybe uses plasma in the future, although that wouldn't make any sense... leaping = 1 update_icons() - throw_at(A,MAX_ALIEN_LEAP_DIST,1) - leaping = 0 - update_icons() + throw_at(A, MAX_ALIEN_LEAP_DIST, 1, spin = 0, diagonals_first = 1, callback = CALLBACK(src, .leap_end)) + +/mob/living/carbon/alien/humanoid/hunter/proc/leap_end() + leaping = 0 + update_icons() /mob/living/carbon/alien/humanoid/hunter/throw_impact(atom/A) - if(!leaping) return ..() if(A) - if(istype(A, /mob/living)) + if(isliving(A)) var/mob/living/L = A var/blocked = 0 if(ishuman(A)) @@ -126,46 +127,3 @@ if(leaping) return ..() - - -//Modified throw_at() that will use diagonal dirs where appropriate -//instead of locking it to cardinal dirs -/mob/living/carbon/alien/humanoid/throw_at(atom/target, range, speed) - if(!target || !src) return 0 - - src.throwing = 1 - - var/dist_x = abs(target.x - src.x) - var/dist_y = abs(target.y - src.y) - var/dist_travelled = 0 - var/dist_since_sleep = 0 - - var/tdist_x = dist_x; - var/tdist_y = dist_y; - - if(dist_x <= dist_y) - tdist_x = dist_y; - tdist_y = dist_x; - - var/error = tdist_x/2 - tdist_y - while(target && (((((dist_x > dist_y) && ((src.x < target.x) || (src.x > target.x))) || ((dist_x <= dist_y) && ((src.y < target.y) || (src.y > target.y))) || (src.x > target.x)) && dist_travelled < range) || !has_gravity(src))) - - if(!src.throwing) break - if(!istype(src.loc, /turf)) break - - var/atom/step = get_step(src, get_dir(src,target)) - if(!step) - break - src.Move(step, get_dir(src, step)) - hit_check() - error += (error < 0) ? tdist_x : -tdist_y; - dist_travelled++ - dist_since_sleep++ - if(dist_since_sleep >= speed) - dist_since_sleep = 0 - sleep(1) - - - src.throwing = 0 - - return 1 diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index b99cde337d6..735b4ccb777 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -24,32 +24,6 @@ add_language("Hivemind") ..() -//This is fine, works the same as a human -/mob/living/carbon/alien/humanoid/Bump(atom/movable/AM as mob|obj, yes) - spawn( 0 ) - if((!( yes ) || now_pushing)) - return - now_pushing = 0 - ..() - if(!istype(AM, /atom/movable)) - return - - if(ismob(AM)) - var/mob/tmob = AM - tmob.LAssailant = src - - if(!now_pushing) - now_pushing = 1 - if(!AM.anchored) - var/t = get_dir(src, AM) - if(istype(AM, /obj/structure/window/full)) - for(var/obj/structure/window/win in get_step(AM,t)) - now_pushing = 0 - return - step(AM, t) - now_pushing = null - return - return /mob/living/carbon/alien/humanoid/movement_delay() var/tally = 0 diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index a78ab9c4c77..df00e862b38 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -26,38 +26,6 @@ ..() -//This is fine, works the same as a human -/mob/living/carbon/alien/larva/Bump(atom/movable/AM as mob|obj, yes) - - spawn( 0 ) - if((!( yes ) || now_pushing)) - return - now_pushing = 1 - if(ismob(AM)) - var/mob/tmob = AM - if(istype(tmob, /mob/living/carbon/human) && (FAT in tmob.mutations)) - if(prob(70)) - to_chat(src, "You fail to push [tmob]'s fat ass out of the way.") - now_pushing = 0 - return - if(!(tmob.status_flags & CANPUSH)) - now_pushing = 0 - return - tmob.LAssailant = src - - now_pushing = 0 - ..() - if(!( istype(AM, /atom/movable) )) - return - if(!( now_pushing )) - now_pushing = 1 - if(!( AM.anchored )) - var/t = get_dir(src, AM) - step(AM, t) - now_pushing = null - return - return - //This needs to be fixed /mob/living/carbon/alien/larva/Stat() ..() diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 5911c04f563..141d760287a 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -492,6 +492,29 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/unary/vent_pump, //Throwing stuff +/mob/living/carbon/throw_impact(atom/hit_atom, throwingdatum) + . = ..() + var/hurt = TRUE + /*if(istype(throwingdatum, /datum/thrownthing)) + var/datum/thrownthing/D = throwingdatum + if(isrobot(D.thrower)) + var/mob/living/silicon/robot/R = D.thrower + if(!R.emagged) + hurt = FALSE*/ + if(hit_atom.density && isturf(hit_atom)) + if(hurt) + Weaken(1) + take_organ_damage(10) + if(iscarbon(hit_atom) && hit_atom != src) + var/mob/living/carbon/victim = hit_atom + if(hurt) + victim.take_organ_damage(10) + take_organ_damage(10) + victim.Weaken(1) + Weaken(1) + visible_message("[src] crashes into [victim], knocking them both over!", "You violently crash into [victim]!") + playsound(src, 'sound/weapons/punch1.ogg', 50, 1) + /mob/living/carbon/proc/toggle_throw_mode() if(in_throw_mode) throw_mode_off() diff --git a/code/modules/mob/living/carbon/carbon_defenses.dm b/code/modules/mob/living/carbon/carbon_defenses.dm index b2dcf20f1b2..1c911a3f661 100644 --- a/code/modules/mob/living/carbon/carbon_defenses.dm +++ b/code/modules/mob/living/carbon/carbon_defenses.dm @@ -1,13 +1,14 @@ -/mob/living/carbon/hitby(atom/movable/AM) - if(in_throw_mode && !get_active_hand()) //empty active hand and we're in throw mode - if(canmove && !restrained()) - if(istype(AM, /obj/item)) - var/obj/item/I = AM - if(isturf(I.loc)) - put_in_active_hand(I) - visible_message("[src] catches [I]!") - throw_mode_off() - return +/mob/living/carbon/hitby(atom/movable/AM, skipcatch, hitpush = 1, blocked = 0) + if(!skipcatch) + if(in_throw_mode && !get_active_hand()) //empty active hand and we're in throw mode + if(canmove && !restrained()) + if(istype(AM, /obj/item)) + var/obj/item/I = AM + if(isturf(I.loc)) + put_in_active_hand(I) + visible_message("[src] catches [I]!") + throw_mode_off() + return 1 ..() /mob/living/carbon/water_act(volume, temperature, source) diff --git a/code/modules/mob/living/carbon/carbon_defines.dm b/code/modules/mob/living/carbon/carbon_defines.dm index e900fc10517..6e34291caae 100644 --- a/code/modules/mob/living/carbon/carbon_defines.dm +++ b/code/modules/mob/living/carbon/carbon_defines.dm @@ -20,7 +20,6 @@ var/pulse = PULSE_NORM //current pulse level - var/heart_attack = 0 var/wetlevel = 0 //how wet the mob is var/oxygen_alert = 0 @@ -29,4 +28,4 @@ var/fire_alert = 0 var/failed_last_breath = 0 //This is used to determine if the mob failed a breath. If they did fail a brath, they will attempt to breathe each tick, otherwise just once per 4 ticks. - var/co2overloadtime = null \ No newline at end of file + var/co2overloadtime = null diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index b3580778d22..69e86de81e6 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -99,7 +99,7 @@ stat = DEAD SetDizzy(0) SetJitter(0) - heart_attack = 0 + set_heartattack(FALSE) //Handle species-specific deaths. if(species) species.handle_death(src) diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 71cb0ec883b..1b15dccdc2c 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -66,6 +66,12 @@ else //Everyone else fails, skip the emote attempt return + if("hiss", "hisses") + if(species.name == "Unathi") //Only Unathi can hiss. + on_CD = handle_emote_CD() //proc located in code\modules\mob\emote.dm' + else //Everyone else fails, skip the emote attempt + return + if("scream", "screams") on_CD = handle_emote_CD(50) //longer cooldown if("fart", "farts", "flip", "flips", "snap", "snaps") @@ -141,6 +147,13 @@ playsound(loc, 'sound/effects/Kidanclack2.ogg', 50, 0) //Credit to DrMinky (freesound.org) for the sound. m_type = 2 + if("hiss", "hisses") + var/M = handle_emote_param(param) + + message = "[src] hisses[M ? " at [M]" : ""]." + playsound(loc, 'sound/effects/unathihiss.ogg', 50, 0) //Credit to Jamius (freesound.org) for the sound. + m_type = 2 + if("yes") var/M = handle_emote_param(param) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 1c012655cdc..000a7a52bd0 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -147,93 +147,6 @@ /mob/living/carbon/human/stok/New(var/new_loc) ..(new_loc, "Stok") -/mob/living/carbon/human/Bump(atom/movable/AM, yes) - if(!(yes) || now_pushing || buckled) - return 0 - now_pushing = 1 - if(ismob(AM)) - var/mob/tmob = AM - - //BubbleWrap - Should stop you pushing a restrained person out of the way - //i still don't get it, is this supposed to be 'bubblewrapping' or was it made by a guy named 'BubbleWrap' - if(ishuman(tmob)) - for(var/mob/M in range(tmob, 1)) - - if(tmob.pinned.len || (M.pulling == tmob && (tmob.restrained() && !M.restrained()) && M.stat == CONSCIOUS)) - if(!(world.time % 5)) //tmob is pinned to wall, or is restrained and pulled by a concious unrestrained human - to_chat(src, "[tmob] is restrained, you cannot push past.") - now_pushing = 0 - return 0 - - //I have to fucking document this somewhere- the above if(tmob.pinned.len || etc) check above had - //locate(/obj/item/weapon/grab, tmob.grabbed_by.len)) at the end of it - //FIRST OF ALL, THAT IS NOT HOW YOU FUCKING USE LOCATE() - //SECOND OF ALL, OH GOD, WHY WOULD YOU EVER WANT GRABBED MOBS TO BE UNABLE TO BE PUSHED PAST GOD - - if(tmob.pulling == M && (M.restrained() && !tmob.restrained()) && tmob.stat == CONSCIOUS) - if(!(world.time % 5)) - to_chat(src, "[tmob] is restraining [M], you cannot push past.") - now_pushing = 0 - return 0 - - //Leaping mobs just land on the tile, no pushing, no anything. - if(status_flags & LEAPING) - loc = tmob.loc - status_flags &= ~LEAPING - now_pushing = 0 - return - - //BubbleWrap: people in handcuffs are always switched around as if they were on 'help' intent to prevent a person being pulled from being seperated from their puller - //it might be 'bubblewrapping' given that this rhymes with 'hugboxing' - if((tmob.a_intent == I_HELP || tmob.restrained()) && (a_intent == I_HELP || restrained())) - if((canmove && tmob.canmove) && (!tmob.buckled && !tmob.buckled_mob)) - var/turf/oldloc = loc - loc = tmob.loc - tmob.loc = oldloc - now_pushing = 0 - for(var/mob/living/carbon/slime/slime in view(1,tmob)) - if(slime.Victim == tmob) - slime.UpdateFeed() - return - - if(ishuman(tmob) && (FAT in tmob.mutations)) - if(prob(40) && !(FAT in src.mutations)) - to_chat(src, "You fail to push [tmob]'s fat ass out of the way.") - now_pushing = 0 - return - - - //anti-riot equipment is also anti-push - if(tmob.r_hand && (prob(tmob.r_hand.block_chance * 2)) && !istype(tmob.r_hand, /obj/item/clothing)) - now_pushing = 0 - return - if(tmob.l_hand && (prob(tmob.l_hand.block_chance * 2)) && !istype(tmob.l_hand, /obj/item/clothing)) - now_pushing = 0 - return - - if(!(tmob.status_flags & CANPUSH)) - now_pushing = 0 - return - - tmob.LAssailant = src - - now_pushing = 0 - spawn(0) - ..() - if(!istype(AM, /atom/movable)) - return - if(!now_pushing) - now_pushing = 1 - - if(!AM.anchored) - var/t = get_dir(src, AM) - if(istype(AM, /obj/structure/window/full)) - for(var/obj/structure/window/win in get_step(AM, t)) - now_pushing = 0 - return - step(AM, t) - now_pushing = 0 - /mob/living/carbon/human/Stat() ..() statpanel("Status") @@ -531,6 +444,17 @@ dat += "Head:[(head && !(head.flags&ABSTRACT)) ? head : "Empty"]" + var/obj/item/organ/internal/headpocket/C = get_int_organ(/obj/item/organ/internal/headpocket) + if(C) + if(slot_wear_mask in obscured) + dat += " ↳Headpocket:Obscured" + else + var/list/items = C.get_contents() + if(items.len) + dat += " ↳Headpocket:Dislodge Items" + else + dat += " ↳Headpocket:Empty" + if(slot_wear_mask in obscured) dat += "Mask:Obscured" else @@ -759,9 +683,9 @@ if(species) species_siemens_coeff = species.siemens_coeff siemens_coeff = gloves_siemens_coeff * species_siemens_coeff - if(heart_attack) + if(undergoing_cardiac_arrest()) if(shock_damage * siemens_coeff >= 1 && prob(25)) - heart_attack = 0 + set_heartattack(FALSE) if(stat == CONSCIOUS) to_chat(src, "You feel your heart beating again!") . = ..() @@ -826,6 +750,16 @@ var/obj/item/clothing/under/U = w_uniform U.set_sensors(usr) + if(href_list["dislodge_headpocket"]) + usr.visible_message("[usr] is trying to remove something from [src]'s head!", + "You start to dislodge whatever's inside [src]'s headpocket!") + if(do_mob(usr, src, POCKET_STRIP_DELAY)) + usr.visible_message("[usr] has dislodged something from [src]'s head!", + "You have dislodged everything from [src]'s headpocket!") + var/obj/item/organ/internal/headpocket/C = get_int_organ(/obj/item/organ/internal/headpocket) + C.empty_contents() + add_logs(usr, src, "stripped", addition="of headpocket items", print_attack_log=isLivingSSD(src)) + if(href_list["strip_accessory"]) if(istype(w_uniform, /obj/item/clothing/under)) var/obj/item/clothing/under/U = w_uniform diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 3f25873e5f2..585ac587ffc 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -313,85 +313,37 @@ emp_act return 1*/ //this proc handles being hit by a thrown atom -/mob/living/carbon/human/hitby(atom/movable/AM as mob|obj,var/speed = 5) +/mob/living/carbon/human/hitby(atom/movable/AM, skipcatch = 0, hitpush = 1, blocked = 0) + var/obj/item/I + var/throwpower = 30 if(istype(AM, /obj/item)) - var/obj/item/I = AM - - if(in_throw_mode && !get_active_hand() && speed <= 5) //empty active hand and we're in throw mode - if(canmove && !restrained()) - if(isturf(I.loc)) - put_in_active_hand(I) - visible_message("[src] catches [I]!") - throw_mode_off() - return - - var/zone = ran_zone("chest", 65) - var/dtype = BRUTE - if(istype(I, /obj/item/weapon)) - var/obj/item/weapon/W = I - dtype = W.damtype - var/throw_damage = I.throwforce*(speed/5) - - I.throwing = 0 //it hit, so stop moving - - if((I.thrower != src) && check_shields(throw_damage, "\the [I.name]", I, THROWN_PROJECTILE_ATTACK)) - return - - var/obj/item/organ/external/affecting = get_organ(zone) - if(!affecting) - var/missverb = (I.gender == PLURAL) ? "whizz" : "whizzes" - visible_message("\The [I] [missverb] past [src]'s missing [parse_zone(zone)]!", - "\The [I] [missverb] past your missing [parse_zone(zone)]!") - return - var/hit_area = affecting.name - - src.visible_message("[src] has been hit in the [hit_area] by [I].") - var/armor = run_armor_check(affecting, "melee", "Your armor has protected your [hit_area].", "Your armor has softened hit to your [hit_area].", I.armour_penetration) //I guess "melee" is the best fit here - - apply_damage(throw_damage, dtype, zone, armor, is_sharp(I), has_edge(I), I) - - if(ismob(I.thrower)) - var/mob/M = I.thrower - if(M) - add_logs(M, src, "hit", I, " (thrown)", print_attack_log = I.throwforce) - - //thrown weapon embedded object code. - if(dtype == BRUTE && istype(I)) - if(!I.is_robot_module()) + I = AM + throwpower = I.throwforce + if(I.thrownby == src) //No throwing stuff at yourself to trigger reactions + return ..() + if(check_shields(throwpower, "\the [AM.name]", AM, THROWN_PROJECTILE_ATTACK)) + hitpush = 0 + skipcatch = 1 + blocked = 1 + /*else if(I) + if(I.throw_speed >= EMBED_THROWSPEED_THRESHOLD) + if(!I.is_robot_module()) + var/armor = run_armor_check(affecting, "melee", "Your armor has protected your [hit_area].", "Your armor has softened hit to your [hit_area].", I.armour_penetration) //I guess "melee" is the best fit here var/sharp = is_sharp(I) - var/damage = throw_damage + var/damage = throwpower * (I.throw_speed / 5) if(armor) - damage /= armor+1 + damage /= armor + 1 //blunt objects should really not be embedding in things unless a huge amount of force is involved - var/embed_chance = sharp? damage/I.w_class : damage/(I.w_class*3) - var/embed_threshold = sharp? 5*I.w_class : 15*I.w_class + var/embed_chance = sharp? damage / I.w_class : damage/(I.w_class * 3) + var/embed_threshold = sharp? 5 * I.w_class : 15 * I.w_class //Sharp objects will always embed if they do enough damage. //Thrown sharp objects have some momentum already and have a small chance to embed even if the damage is below the threshold - if(((sharp && prob(damage/(10*I.w_class)*100)) || (damage > embed_threshold && prob(embed_chance))) && (I.no_embed == 0)) - affecting.embed(I) - - // Begin BS12 momentum-transfer code. - if(I.throw_source && speed >= 15) - var/obj/item/weapon/W = I - var/momentum = speed/2 - var/dir = get_dir(I.throw_source, src) - - visible_message("[src] staggers under the impact!","You stagger under the impact!") - src.throw_at(get_edge_target_turf(src,dir),1,momentum) - - if(!W || !src) return - - if(W.loc == src && W.sharp) //Projectile is embedded and suitable for pinning. - var/turf/T = near_wall(dir,2) - - if(T) - src.loc = T - visible_message("[src] is pinned to the wall by [I]!","You are pinned to the wall by [I]!") - src.anchored = 1 - src.pinned += I + if(((sharp && prob(damage / (10 * I.w_class) * 100)) || (damage > embed_threshold && prob(embed_chance))) && (I.no_embed == 0)) + affecting.embed(I)*/ + return ..() /mob/living/carbon/human/proc/bloody_hands(var/mob/living/source, var/amount = 2) diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm index cf66c1d2c15..c65e5f70f99 100644 --- a/code/modules/mob/living/carbon/human/human_movement.dm +++ b/code/modules/mob/living/carbon/human/human_movement.dm @@ -1,67 +1,75 @@ /mob/living/carbon/human/movement_delay() - var/tally = 0 + . = 0 + . += ..() - if(species.slowdown) - tally = species.slowdown + var/gravity = 1 if(!has_gravity(src)) - return -1 // It's hard to be slowed down in space by... anything + gravity = 0 - if(flying) return -1 + if(flying) + gravity = 0 if(embedded_flag) handle_embedded_objects() //Moving with objects stuck in you can cause bad times. if(slowed) - tally += 10 + . += 10 - var/health_deficiency = (maxHealth - health + staminaloss) - if(reagents) - for(var/datum/reagent/R in reagents.reagent_list) - if(R.shock_reduction) - health_deficiency -= R.shock_reduction - if(health_deficiency >= 40) - tally += (health_deficiency / 25) + if(gravity) + if(species.slowdown) + . = species.slowdown - var/hungry = (500 - nutrition)/5 // So overeat would be 100 and default level would be 80 - if(hungry >= 70) - tally += hungry/50 + var/health_deficiency = (maxHealth - health + staminaloss) + if(reagents) + for(var/datum/reagent/R in reagents.reagent_list) + if(R.shock_reduction) + health_deficiency -= R.shock_reduction + if(health_deficiency >= 40) + . += (health_deficiency / 25) - if(wear_suit) - tally += wear_suit.slowdown + var/hungry = (500 - nutrition)/5 // So overeat would be 100 and default level would be 80 + if(hungry >= 70) + . += hungry/50 - if(!buckled) - if(shoes) - tally += shoes.slowdown + if(wear_suit) + . += wear_suit.slowdown - if(shock_stage >= 10) tally += 3 + if(!buckled) + if(shoes) + . += shoes.slowdown - if(back) - tally += back.slowdown + if(shock_stage >= 10) + . += 3 - if(l_hand && (l_hand.flags & HANDSLOW)) - tally += l_hand.slowdown - if(r_hand && (r_hand.flags & HANDSLOW)) - tally += r_hand.slowdown + if(back) + . += back.slowdown - if(FAT in src.mutations) - tally += 1.5 - if(bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT) - tally += (BODYTEMP_COLD_DAMAGE_LIMIT - bodytemperature) / COLD_SLOWDOWN_FACTOR + if(l_hand && (l_hand.flags & HANDSLOW)) + . += l_hand.slowdown + if(r_hand && (r_hand.flags & HANDSLOW)) + . += r_hand.slowdown - tally += 2*stance_damage //damaged/missing feet or legs is slow + if(FAT in src.mutations) + . += 1.5 - if(RUN in mutations) - tally = -1 - if(status_flags & IGNORESLOWDOWN) // make sure this is always at the end so we don't have ignore slowdown getting ignored itself - tally = -1 + if(bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT) + . += (BODYTEMP_COLD_DAMAGE_LIMIT - bodytemperature) / COLD_SLOWDOWN_FACTOR - if(status_flags & GOTTAGOFAST) - tally -= 1 - if(status_flags & GOTTAGOREALLYFAST) - tally -= 2 + . += 2 * stance_damage //damaged/missing feet or legs is slow - return (tally + config.human_delay) + if(RUN in mutations) + . = -1 + + if(status_flags & IGNORESLOWDOWN) // make sure this is always at the end so we don't have ignore slowdown getting ignored itself + . = -1 + + if(status_flags & GOTTAGOFAST) + . -= 1 + if(status_flags & GOTTAGOREALLYFAST) + . -= 2 + + . += config.human_delay /mob/living/carbon/human/Process_Spacemove(movement_dir = 0) diff --git a/code/modules/mob/living/carbon/human/human_organs.dm b/code/modules/mob/living/carbon/human/human_organs.dm index 5ae7547be58..24ed336a4a3 100644 --- a/code/modules/mob/living/carbon/human/human_organs.dm +++ b/code/modules/mob/living/carbon/human/human_organs.dm @@ -65,7 +65,8 @@ stance_damage = 0 // Buckled to a bed/chair. Stance damage is forced to 0 since they're sitting on something solid - if(istype(buckled, /obj/structure/stool/bed)) + // Not standing, so no need to care about stance + if(istype(buckled, /obj/structure/stool/bed) || !isturf(loc)) return for(var/limb_tag in list("l_leg","r_leg","l_foot","r_foot")) diff --git a/code/modules/mob/living/carbon/human/interactive/interactive.dm b/code/modules/mob/living/carbon/human/interactive/interactive.dm index a208752af24..9f27956b764 100644 --- a/code/modules/mob/living/carbon/human/interactive/interactive.dm +++ b/code/modules/mob/living/carbon/human/interactive/interactive.dm @@ -449,7 +449,7 @@ ..() retalTarget(user) -/mob/living/carbon/human/interactive/hitby(atom/movable/AM) +/mob/living/carbon/human/interactive/hitby(atom/movable/AM, skipcatch, hitpush, blocked) ..() var/mob/living/carbon/C = locate(/mob/living/carbon) in view(SNPC_MIN_RANGE_FIND, src) if(C) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index be265669b79..00dbc50e8d0 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -1032,7 +1032,7 @@ if(stat == DEAD) return PULSE_NONE //that's it, you're dead, nothing can influence your pulse - if(heart_attack) + if(undergoing_cardiac_arrest()) return PULSE_NONE var/temp = PULSE_NORM @@ -1175,14 +1175,37 @@ return stuttering + +/mob/living/carbon/human/proc/can_heartattack() + if(species.flags & (NO_BLOOD|NO_INTORGANS)) + return FALSE + return TRUE + +/mob/living/carbon/human/proc/undergoing_cardiac_arrest() + if(!can_heartattack()) + return FALSE + var/obj/item/organ/internal/heart/heart = get_int_organ(/obj/item/organ/internal/heart) + if(istype(heart) && heart.beating) + return FALSE + return TRUE + +/mob/living/carbon/human/proc/set_heartattack(status) + if(!can_heartattack()) + return FALSE + + var/obj/item/organ/internal/heart/heart = get_int_organ(/obj/item/organ/internal/heart) + if(!istype(heart)) + return FALSE + + heart.beating = !status + /mob/living/carbon/human/proc/handle_heartattack() - if(!heart_attack) + if(!can_heartattack() || !undergoing_cardiac_arrest() || reagents.has_reagent("corazone")) return - else - AdjustLoseBreath(2, bound_lower = 0, bound_upper = 3) - adjustOxyLoss(5) - Paralyse(4) - adjustBruteLoss(2) + AdjustLoseBreath(2, bound_lower = 0, bound_upper = 3) + adjustOxyLoss(5) + Paralyse(4) + adjustBruteLoss(2) diff --git a/code/modules/mob/living/carbon/human/species/station.dm b/code/modules/mob/living/carbon/human/species/station.dm index c1005f2b932..4348b8b048b 100644 --- a/code/modules/mob/living/carbon/human/species/station.dm +++ b/code/modules/mob/living/carbon/human/species/station.dm @@ -230,7 +230,8 @@ "kidneys" = /obj/item/organ/internal/kidneys, "brain" = /obj/item/organ/internal/brain, "appendix" = /obj/item/organ/internal/appendix, - "eyes" = /obj/item/organ/internal/eyes //Default darksight of 2. + "eyes" = /obj/item/organ/internal/eyes, //Default darksight of 2. + "headpocket" = /obj/item/organ/internal/headpocket ) suicide_messages = list( @@ -899,7 +900,7 @@ oxy_mod = 0 death_message = "gives one shrill beep before falling limp, their monitor flashing blue before completely shutting off..." - flags = IS_WHITELISTED | NO_BREATHE | NO_SCAN | NO_BLOOD | NO_PAIN | NO_DNA | RADIMMUNE | ALL_RPARTS| NOTRANSSTING + flags = IS_WHITELISTED | NO_BREATHE | NO_SCAN | NO_BLOOD | NO_PAIN | NO_DNA | RADIMMUNE | ALL_RPARTS | NOTRANSSTING clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS bodyflags = HAS_SKIN_COLOR | HAS_HEAD_MARKINGS | HAS_HEAD_ACCESSORY dietflags = 0 //IPCs can't eat, so no diet diff --git a/code/modules/mob/living/carbon/slime/slime.dm b/code/modules/mob/living/carbon/slime/slime.dm index 003cd4a079e..9031a77311c 100644 --- a/code/modules/mob/living/carbon/slime/slime.dm +++ b/code/modules/mob/living/carbon/slime/slime.dm @@ -83,79 +83,44 @@ if(bodytemperature >= 330.23) // 135 F return -1 // slimes become supercharged at high temperatures - var/tally = 0 + . = ..(1) var/health_deficiency = (100 - health) - if(health_deficiency >= 45) tally += (health_deficiency / 25) + if(health_deficiency >= 45) . += (health_deficiency / 25) if(bodytemperature < 183.222) - tally += (283.222 - bodytemperature) / 10 * 1.75 + . += (283.222 - bodytemperature) / 10 * 1.75 if(reagents) if(reagents.has_reagent("methamphetamine")) // Meth slows slimes down - tally *= 2 + . *= 2 if(reagents.has_reagent("frostoil")) // Frostoil also makes them move VEEERRYYYYY slow - tally *= 5 + . *= 5 if(health <= 0) // if damaged, the slime moves twice as slow - tally *= 2 + . *= 2 - return tally + config.slime_delay + return . + config.slime_delay -/mob/living/carbon/slime/Bump(atom/movable/AM as mob|obj, yes) - if((!(yes) || now_pushing)) - return - now_pushing = 1 - - if(isobj(AM)) - if(!client && powerlevel > 0) - var/probab = 10 - switch(powerlevel) - if(1 to 2) probab = 20 - if(3 to 4) probab = 30 - if(5 to 6) probab = 40 - if(7 to 8) probab = 60 - if(9) probab = 70 - if(10) probab = 95 - if(prob(probab)) - if(istype(AM, /obj/structure/window) || istype(AM, /obj/structure/grille)) - if(nutrition <= get_hunger_nutrition() && !Atkcool) - if(is_adult || prob(5)) - AM.attack_slime(src) - spawn() - Atkcool = 1 - sleep(45) - Atkcool = 0 - - if(ismob(AM)) - var/mob/tmob = AM - - if(is_adult) - if(istype(tmob, /mob/living/carbon/human)) - if(prob(90)) - now_pushing = 0 - return - else - if(istype(tmob, /mob/living/carbon/human)) - now_pushing = 0 - return - - now_pushing = 0 - ..() - if(!istype(AM, /atom/movable)) - return - if(!( now_pushing )) - now_pushing = 1 - if(!( AM.anchored )) - var/t = get_dir(src, AM) - if(istype(AM, /obj/structure/window)) - if(AM:ini_dir == NORTHWEST || AM:ini_dir == NORTHEAST || AM:ini_dir == SOUTHWEST || AM:ini_dir == SOUTHEAST) - for(var/obj/structure/window/win in get_step(AM,t)) - now_pushing = 0 - return - step(AM, t) - now_pushing = null +/mob/living/carbon/slime/ObjBump(obj/O) + if(!client && powerlevel > 0) + var/chance = 10 + switch(powerlevel) + if(1 to 2) chance = 20 + if(3 to 4) chance = 30 + if(5 to 6) chance = 40 + if(7 to 8) chance = 60 + if(9) chance = 70 + if(10) chance = 95 + if(prob(chance)) + if(istype(O, /obj/structure/window) || istype(O, /obj/structure/grille)) + if(nutrition <= get_hunger_nutrition() && !Atkcool) + if(is_adult || prob(5)) + O.attack_slime(src) + Atkcool = 1 + spawn(45) + Atkcool = 0 /mob/living/carbon/slime/Process_Spacemove(var/movement_dir = 0) return 2 diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 525559e8e6c..5e1dab9874b 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -14,6 +14,121 @@ /mob/living/proc/OpenCraftingMenu() return +//Generic Bump(). Override MobBump() and ObjBump() instead of this. +/mob/living/Bump(atom/A, yes) + if(..()) //we are thrown onto something + return + if(buckled || !yes || now_pushing) + return + if(ismob(A)) + if(MobBump(A)) + return + if(isobj(A)) + if(ObjBump(A)) + return + if(istype(A, /atom/movable)) + if(PushAM(A)) + return + +//Called when we bump into a mob +/mob/living/proc/MobBump(mob/M) + //Even if we don't push/swap places, we "touched" them, so spread fire + spreadFire(M) + + if(now_pushing) + return 1 + + //Should stop you pushing a restrained person out of the way + if(isliving(M)) + var/mob/living/L = M + if(L.pulledby && L.pulledby != src && L.restrained()) + if(!(world.time % 5)) + to_chat(src, "[L] is restrained, you cannot push past.") + return 1 + + if(L.pulling) + if(ismob(L.pulling)) + var/mob/P = L.pulling + if(P.restrained()) + if(!(world.time % 5)) + to_chat(src, "[L] is restrained, you cannot push past.") + return 1 + + if(moving_diagonally) //no mob swap during diagonal moves. + return 1 + + if(!M.buckled && !M.has_buckled_mobs()) + var/mob_swap + //the puller can always swap with it's victim if on grab intent + if(M.pulledby == src && a_intent == I_GRAB) + mob_swap = 1 + //restrained people act if they were on 'help' intent to prevent a person being pulled from being seperated from their puller + else if((M.restrained() || M.a_intent == I_HELP) && (restrained() || a_intent == I_HELP)) + mob_swap = 1 + if(mob_swap) + //switch our position with M + if(loc && !loc.Adjacent(M.loc)) + return 1 + now_pushing = 1 + var/oldloc = loc + var/oldMloc = M.loc + + var/M_passmob = (M.pass_flags & PASSMOB) // we give PASSMOB to both mobs to avoid bumping other mobs during swap. + var/src_passmob = (pass_flags & PASSMOB) + M.pass_flags |= PASSMOB + pass_flags |= PASSMOB + + M.Move(oldloc) + Move(oldMloc) + + if(!src_passmob) + pass_flags &= ~PASSMOB + if(!M_passmob) + M.pass_flags &= ~PASSMOB + + now_pushing = 0 + return 1 + + // okay, so we didn't switch. but should we push? + // not if he's not CANPUSH of course + if(!(M.status_flags & CANPUSH)) + return 1 + //anti-riot equipment is also anti-push + if(M.r_hand && (prob(M.r_hand.block_chance * 2)) && !istype(M.r_hand, /obj/item/clothing)) + return 1 + if(M.l_hand && (prob(M.l_hand.block_chance * 2)) && !istype(M.l_hand, /obj/item/clothing)) + return 1 + +//Called when we bump into an obj +/mob/living/proc/ObjBump(obj/O) + return + +//Called when we want to push an atom/movable +/mob/living/proc/PushAM(atom/movable/AM) + if(now_pushing) + return 1 + if(moving_diagonally) // no pushing during diagonal moves + return 1 + if(!client && (mob_size < MOB_SIZE_SMALL)) + return + if(!AM.anchored) + now_pushing = 1 + var/t = get_dir(src, AM) + if(istype(AM, /obj/structure/window/full)) + for(var/obj/structure/window/win in get_step(AM, t)) + now_pushing = 0 + return + if(pulling == AM) + stop_pulling() + var/current_dir + if(isliving(AM)) + current_dir = AM.dir + step(AM, t) + if(current_dir) + AM.setDir(current_dir) + now_pushing = 0 + + /mob/living/Stat() . = ..() if(. && get_rig_stats) @@ -377,7 +492,6 @@ if(iscarbon(src)) var/mob/living/carbon/C = src C.handcuffed = initial(C.handcuffed) - C.heart_attack = 0 for(var/datum/disease/D in C.viruses) D.cure(0) @@ -385,6 +499,7 @@ // restore all of the human's blood and reset their shock stage if(ishuman(src)) human_mob = src + human_mob.set_heartattack(FALSE) human_mob.restore_blood() human_mob.shock_stage = 0 human_mob.decaylevel = 0 @@ -430,83 +545,47 @@ else return 0 + var/atom/movable/pullee = pulling + if(pullee && get_dist(src, pullee) > 1) + stop_pulling() + if(pullee && !isturf(pullee.loc) && pullee.loc != loc) + log_game("DEBUG: [src]'s pull on [pullee] was broken despite [pullee] being in [pullee.loc]. Pull stopped manually.") + stop_pulling() if(restrained()) stop_pulling() - - var/t7 = 1 - if(restrained()) - for(var/mob/living/M in range(src, 1)) - if((M.pulling == src && M.stat == 0 && !( M.restrained() ))) - t7 = null - if(t7 && pulling && (get_dist(src, pulling) <= 1 || pulling.loc == loc)) - var/turf/T = loc - . = ..() - - if(pulling && pulling.loc) - if(!( isturf(pulling.loc) )) - stop_pulling() - return - else - if(Debug) - diary <<"pulling disappeared? at [__LINE__] in mob.dm - pulling = [pulling]" - diary <<"REPORT THIS" - - ///// - if(pulling && pulling.anchored) - stop_pulling() - return - - if(!restrained()) - var/diag = get_dir(src, pulling) - if((diag - 1) & diag) - else - diag = null - if((get_dist(src, pulling) > 1 || diag)) - if(isliving(pulling)) - var/mob/living/M = pulling - var/ok = 1 - if(locate(/obj/item/weapon/grab, M.grabbed_by)) - if(prob(75)) - var/obj/item/weapon/grab/G = pick(M.grabbed_by) - if(istype(G, /obj/item/weapon/grab)) - for(var/mob/O in viewers(M, null)) - O.show_message(text("[] has been pulled from []'s grip by []", G.affecting, G.assailant, src), 1) - //G = null - qdel(G) - else - ok = 0 - if(locate(/obj/item/weapon/grab, M.grabbed_by.len)) - ok = 0 - if(ok) - var/atom/movable/t = M.pulling - M.stop_pulling() - - if(M.lying && (prob(M.getBruteLoss() / 6))) - var/turf/location = M.loc - if(istype(location, /turf/simulated)) - location.add_blood(M) - pulling.Move(T, get_dir(pulling, T)) - if(M) - M.start_pulling(t) - else - if(pulling) - pulling.Move(T, get_dir(pulling, T)) - else - stop_pulling() - . = ..() - - if(s_active && !( s_active in contents ) && get_turf(s_active) != get_turf(src)) //check !( s_active in contents ) first so we hopefully don't have to call get_turf() so much. - s_active.close(src) - - if(.) // did we actually move? + var/turf/T = loc + . = ..() + if(.) handle_footstep(loc) step_count++ + if(pulling && pulling == pullee) // we were pulling a thing and didn't lose it during our move. + if(pulling.anchored) + stop_pulling() + return + + var/pull_dir = get_dir(src, pulling) + if(get_dist(src, pulling) > 1 || ((pull_dir - 1) & pull_dir)) // puller and pullee more than one tile away or in diagonal position + //if(isliving(pulling)) + //var/mob/living/M = pulling + //if(M.lying && !M.buckled && (prob(M.getBruteLoss() * 200 / M.maxHealth))) + //M.makeTrail(T) + pulling.Move(T, get_dir(pulling, T)) // the pullee tries to reach our previous position + if(pulling && get_dist(src, pulling) > 1) // the pullee couldn't keep up + stop_pulling() + + if(pulledby && moving_diagonally != FIRST_DIAG_STEP && get_dist(src, pulledby) > 1) //seperated from our puller and not in the middle of a diagonal move + pulledby.stop_pulling() + + if(s_active && !(s_active in contents) && get_turf(s_active) != get_turf(src)) //check !( s_active in contents ) first so we hopefully don't have to call get_turf() so much. + s_active.close(src) + if(update_slimes) for(var/mob/living/carbon/slime/M in view(1,src)) M.UpdateFeed(src) + /mob/living/proc/handle_footstep(turf/T) if(istype(T)) return 1 @@ -838,13 +917,25 @@ visible_message("[user] butchers [src].") gib() -/mob/living/movement_delay() - var/tally = 0 +/mob/living/movement_delay(ignorewalk = 0) + . = ..() + if(isturf(loc)) + var/turf/T = loc + . += T.slowdown if(slowed) - tally += 10 + . += 10 + if(ignorewalk) + . += config.run_speed + else + switch(m_intent) + if("run") + if(drowsyness > 0) + . += 6 + . += config.run_speed + if("walk") + . += config.walk_speed - return tally /mob/living/proc/can_use_guns(var/obj/item/weapon/gun/G) if(G.trigger_guard != TRIGGER_GUARD_ALLOW_ALL && !IsAdvancedToolUser() && !issmall(src)) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index bdca022648e..3aec754eabb 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -52,7 +52,7 @@ if(P.dismemberment) check_projectile_dismemberment(P, def_zone) return P.on_hit(src, armor, def_zone) - + /mob/living/proc/check_projectile_dismemberment(obj/item/projectile/P, def_zone) return 0 @@ -65,60 +65,47 @@ O.emp_act(severity) ..() +/obj/item/proc/get_volume_by_throwforce_and_or_w_class() + if(throwforce && w_class) + return Clamp((throwforce + w_class) * 5, 30, 100)// Add the item's throwforce to its weight class and multiply by 5, then clamp the value between 30 and 100 + else if(w_class) + return Clamp(w_class * 8, 20, 100) // Multiply the item's weight class by 8, then clamp the value between 20 and 100 + else + return 0 + //this proc handles being hit by a thrown atom -/mob/living/hitby(atom/movable/AM as mob|obj,var/speed = 5)//Standardization and logging -Sieve +/mob/living/hitby(atom/movable/AM, skipcatch, hitpush = 1, blocked = 0)//Standardization and logging -Sieve if(istype(AM, /obj/item)) var/obj/item/I = AM var/zone = ran_zone("chest", 65)//Hits a random part of the body, geared towards the chest - var/dtype = BRUTE + var/dtype = BRUTE + var/volume = I.get_volume_by_throwforce_and_or_w_class() if(istype(I, /obj/item/weapon)) var/obj/item/weapon/W = I dtype = W.damtype - if(W.hitsound && W.throwforce > 0) - playsound(loc, W.hitsound, 30, 1, -1) + if(W.throwforce > 0) //If the weapon's throwforce is greater than zero... + if(W.hitsound) //...and hitsound is defined... + playsound(loc, W.hitsound, volume, 1, -1) //...play the weapon's hitsound. + else //Otherwise, if hitsound isn't defined... + playsound(loc, 'sound/weapons/genhit1.ogg', volume, 1, -1) //...play genhit1.ogg. - //run to-hit check here + else if(I.throwforce > 0) //Otherwise, if the item doesn't have a throwhitsound and has a throwforce greater than zero... + playsound(loc, 'sound/weapons/genhit1.ogg', volume, 1, -1)//...play genhit1.ogg + if(!I.throwforce)// Otherwise, if the item's throwforce is 0... + playsound(loc, 'sound/weapons/throwtap.ogg', 1, volume, -1)//...play throwtap.ogg. + if(!blocked) + visible_message("[src] has been hit by [I].", + "[src] has been hit by [I].") + var/armor = run_armor_check(zone, "melee", "Your armor has protected your [parse_zone(zone)].", "Your armor has softened hit to your [parse_zone(zone)].", I.armour_penetration) + apply_damage(I.throwforce, dtype, zone, armor, is_sharp(I), has_edge(I), I) + if(I.thrownby) + add_logs(I.thrownby, src, "hit", I) + else + return 1 + else + playsound(loc, 'sound/weapons/genhit1.ogg', 50, 1, -1) //...play genhit1.ogg.) + ..() - var/throw_damage = I.throwforce*(speed/5) - - src.visible_message("[src] has been hit by [I].") - var/armor = run_armor_check(zone, "melee", "Your armor has protected your [parse_zone(zone)].", "Your armor has softened hit to your [parse_zone(zone)].", I.armour_penetration) - - apply_damage(throw_damage, dtype, zone, armor, is_sharp(I), has_edge(I), I) - - I.throwing = 0 //it hit, so stop moving - - if(ismob(I.thrower)) - var/mob/M = I.thrower - if(M) - create_attack_log("Has been hit with a [I], thrown by [key_name(M)]") - M.create_attack_log("Hit [key_name(src)] with a thrown [I]") - if(!istype(src,/mob/living/simple_animal/mouse)) - msg_admin_attack("[key_name_admin(src)] was hit by a [I], thrown by [key_name_admin(M)]") - - // Begin BS12 momentum-transfer code. - if(I.throw_source && speed >= 15) - var/obj/item/weapon/W = I - var/momentum = speed/2 - var/dir = get_dir(I.throw_source, src) - - visible_message("[src] staggers under the impact!","You stagger under the impact!") - src.throw_at(get_edge_target_turf(src,dir),1,momentum) - - if(!W || !src) return - - if(W.sharp) //Projectile is suitable for pinning. - //Handles embedding for non-humans and simple_animals. - I.loc = src - embedded += I - - var/turf/T = near_wall(dir,2) - - if(T) - src.loc = T - visible_message("[src] is pinned to the wall by [I]!","You are pinned to the wall by [I]!") - src.anchored = 1 - src.pinned += I /mob/living/mech_melee_attack(obj/mecha/M) if(M.occupant.a_intent == I_HARM) @@ -201,6 +188,24 @@ adjust_fire_stacks(3) IgniteMob() +//Share fire evenly between the two mobs +//Called in MobBump() and Crossed() +/mob/living/proc/spreadFire(mob/living/L) + if(!istype(L)) + return + var/L_old_on_fire = L.on_fire + + if(on_fire) //Only spread fire stacks if we're on fire + fire_stacks /= 2 + L.fire_stacks += fire_stacks + if(L.IgniteMob()) + log_game("[key_name(src)] bumped into [key_name(L)] and set them on fire") + + if(L_old_on_fire) //Only ignite us and gain their stacks if they were onfire before we bumped them + L.fire_stacks /= 2 + fire_stacks += L.fire_stacks + IgniteMob() + //Mobs on Fire end /mob/living/water_act(volume, temperature) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 5218d399007..202984fd14e 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -539,10 +539,10 @@ card.forceMove(card.loc) icon_state = "[chassis]" -/mob/living/silicon/pai/Bump(atom/movable/AM as mob|obj, yes) +/mob/living/silicon/pai/Bump() return -/mob/living/silicon/pai/Bumped(AM as mob|obj) +/mob/living/silicon/pai/Bumped() return /mob/living/silicon/pai/start_pulling(var/atom/movable/AM) diff --git a/code/modules/mob/living/silicon/robot/drone/drone.dm b/code/modules/mob/living/silicon/robot/drone/drone.dm index 4c52f2f415d..bbda7a05318 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone.dm @@ -310,18 +310,15 @@ */ -/mob/living/silicon/robot/drone/Bump(atom/movable/AM as mob|obj, yes) - if(!yes || ( \ - !istype(AM,/obj/machinery/door) && \ - !istype(AM,/obj/machinery/recharge_station) && \ - !istype(AM,/obj/machinery/disposal/deliveryChute) && \ - !istype(AM,/obj/machinery/teleport/hub) && \ - !istype(AM,/obj/effect/portal) - )) return - ..() - return +/mob/living/silicon/robot/drone/Bump(atom/movable/AM, yes) + if(istype(AM, /obj/machinery/door) \ + || istype(AM, /obj/machinery/recharge_station) \ + || istype(AM, /obj/machinery/disposal/deliveryChute) \ + || istype(AM, /obj/machinery/teleport/hub) \ + || istype(AM, /obj/effect/portal)) + return ..() -/mob/living/silicon/robot/drone/Bumped(AM as mob|obj) +/mob/living/silicon/robot/drone/Bumped(atom/movable/AM) return /mob/living/silicon/robot/drone/start_pulling(var/atom/movable/AM) diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm index 7148f780ff3..16c8f1a3ef0 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -15,7 +15,9 @@ /obj/item/weapon/firelock_electronics, /obj/item/weapon/intercom_electronics, /obj/item/weapon/apc_electronics, + /obj/item/weapon/tracker_electronics, /obj/item/weapon/stock_parts, + /obj/item/weapon/vending_refill, /obj/item/mounted/frame/light_fixture, /obj/item/mounted/frame/apc_frame, /obj/item/mounted/frame/alarm_frame, diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 8ab82e7d9ca..9d93d0baa77 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -552,38 +552,6 @@ var/list/robot_verbs_default = list( return 2 -/mob/living/silicon/robot/Bump(atom/movable/AM as mob|obj, yes) - spawn( 0 ) - if((!( yes ) || now_pushing)) - return - now_pushing = 1 - if(ismob(AM)) - var/mob/tmob = AM - if(istype(tmob, /mob/living/carbon/human) && (FAT in tmob.mutations)) - if(prob(20)) - to_chat(usr, "You fail to push [tmob]'s fat ass out of the way.") - now_pushing = 0 - return - if(!(tmob.status_flags & CANPUSH)) - now_pushing = 0 - return - now_pushing = 0 - ..() - if(!istype(AM, /atom/movable)) - return - if(!now_pushing) - now_pushing = 1 - if(!AM.anchored) - var/t = get_dir(src, AM) - if(istype(AM, /obj/structure/window/full)) - for(var/obj/structure/window/win in get_step(AM,t)) - now_pushing = 0 - return - step(AM, t) - now_pushing = null - return - return - /mob/living/silicon/robot/attackby(obj/item/weapon/W as obj, mob/user as mob, params) if(istype(W, /obj/item/weapon/restraints/handcuffs)) // fuck i don't even know why isrobot() in handcuff code isn't working so this will have to do return diff --git a/code/modules/mob/living/silicon/robot/robot_movement.dm b/code/modules/mob/living/silicon/robot/robot_movement.dm index ff28a93a64e..5ccc6e9585c 100644 --- a/code/modules/mob/living/silicon/robot/robot_movement.dm +++ b/code/modules/mob/living/silicon/robot/robot_movement.dm @@ -1,30 +1,27 @@ -/mob/living/silicon/robot/Process_Spacemove(var/movement_dir = 0) - if(ionpulse()) - return 1 - if(..()) - return 1 - return 0 - - //No longer needed, but I'll leave it here incase we plan to re-use it. -/mob/living/silicon/robot/movement_delay() - var/tally = 0 //Incase I need to add stuff other than "speed" later - - tally = speed - - if(module_active && istype(module_active,/obj/item/borg/combat/mobility)) - tally-=3 - - return tally+config.robot_delay - -/mob/living/silicon/robot/Move() - ..() - -/mob/living/silicon/robot/mob_negates_gravity() - return magpulse - -/mob/living/silicon/robot/mob_has_gravity() - return ..() || mob_negates_gravity() - -/mob/living/silicon/robot/experience_pressure_difference(pressure_difference, direction) - if(!magpulse) +/mob/living/silicon/robot/Process_Spacemove(var/movement_dir = 0) + if(ionpulse()) + return 1 + if(..()) + return 1 + return 0 + + //No longer needed, but I'll leave it here incase we plan to re-use it. +/mob/living/silicon/robot/movement_delay() + . = ..(1) //Incase I need to add stuff other than "speed" later + + . += speed + + if(module_active && istype(module_active,/obj/item/borg/combat/mobility)) + . -= 3 + + return . + config.robot_delay + +/mob/living/silicon/robot/mob_negates_gravity() + return magpulse + +/mob/living/silicon/robot/mob_has_gravity() + return ..() || mob_negates_gravity() + +/mob/living/silicon/robot/experience_pressure_difference(pressure_difference, direction) + if(!magpulse) return ..() \ No newline at end of file diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index d7435fdff5a..16b81582faa 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -195,31 +195,6 @@ src << browse(dat, "window=airoster") onclose(src, "airoster") -/mob/living/silicon/Bump(atom/movable/AM as mob|obj, yes) //Allows the AI to bump into mobs if it's itself pushed - if((!( yes ) || now_pushing)) - return - now_pushing = 1 - if(ismob(AM)) - var/mob/tmob = AM - if(!(tmob.status_flags & CANPUSH)) - now_pushing = 0 - return - now_pushing = 0 - ..() - if(!istype(AM, /atom/movable)) - return - if(!now_pushing) - now_pushing = 1 - if(!AM.anchored) - var/t = get_dir(src, AM) - if(istype(AM, /obj/structure/window)) - if(AM:ini_dir == NORTHWEST || AM:ini_dir == NORTHEAST || AM:ini_dir == SOUTHWEST || AM:ini_dir == SOUTHEAST) - for(var/obj/structure/window/win in get_step(AM,t)) - now_pushing = 0 - return - step(AM, t) - now_pushing = null - /mob/living/silicon/assess_threat() //Secbots won't hunt silicon units return -10 diff --git a/code/modules/mob/living/simple_animal/bot/secbot.dm b/code/modules/mob/living/simple_animal/bot/secbot.dm index de09cc11084..a77429eb631 100644 --- a/code/modules/mob/living/simple_animal/bot/secbot.dm +++ b/code/modules/mob/living/simple_animal/bot/secbot.dm @@ -218,8 +218,8 @@ Auto Patrol: []"}, /mob/living/simple_animal/bot/secbot/hitby(atom/movable/AM, skipcatch = 0, hitpush = 1, blocked = 0) if(istype(AM, /obj/item)) var/obj/item/I = AM - if(I.throwforce < src.health && I.thrower && (istype(I.thrower, /mob/living/carbon/human))) - var/mob/living/carbon/human/H = I.thrower + if(I.throwforce < src.health && I.thrownby && ishuman(I.thrownby)) + var/mob/living/carbon/human/H = I.thrownby retaliate(H) ..() diff --git a/code/modules/mob/living/simple_animal/friendly/corgi.dm b/code/modules/mob/living/simple_animal/friendly/corgi.dm index 86beb8f6bda..97702a28027 100644 --- a/code/modules/mob/living/simple_animal/friendly/corgi.dm +++ b/code/modules/mob/living/simple_animal/friendly/corgi.dm @@ -470,41 +470,6 @@ name = "Corgi meat" desc = "Tastes like... well you know..." -/mob/living/simple_animal/pet/corgi/Ian/Bump(atom/movable/AM as mob|obj, yes) - - spawn( 0 ) - if((!( yes ) || now_pushing)) - return - now_pushing = 1 - if(ismob(AM)) - var/mob/tmob = AM - if(istype(tmob, /mob/living/carbon/human) && (FAT in tmob.mutations)) - if(prob(70)) - to_chat(src, "You fail to push [tmob]'s fat ass out of the way.") - now_pushing = 0 - return - if(!(tmob.status_flags & CANPUSH)) - now_pushing = 0 - return - - tmob.LAssailant = src - now_pushing = 0 - ..() - if(!( istype(AM, /atom/movable) )) - return - if(!( now_pushing )) - now_pushing = 1 - if(!( AM.anchored )) - var/t = get_dir(src, AM) - if(istype(AM, /obj/structure/window/full)) - for(var/obj/structure/window/win in get_step(AM,t)) - now_pushing = 0 - return - step(AM, t) - now_pushing = null - return - return - /mob/living/simple_animal/pet/corgi/regenerate_icons() overlays.Cut() if(inventory_head) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm index 85a351606f6..d6d1d92618d 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm @@ -103,7 +103,7 @@ Difficulty: Hard triple_charge() else spawn(0) - warp_charge() + warp_charge() /mob/living/simple_animal/hostile/megafauna/bubblegum/New() ..() @@ -186,7 +186,7 @@ Difficulty: Hard shake_camera(L, 4, 3) shake_camera(src, 2, 3) var/throwtarget = get_edge_target_turf(src, get_dir(src, get_step_away(L, src))) - L.throw_at_fast(throwtarget, 3) + L.throw_at(throwtarget, 3) charging = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm index 5afa7613c78..38f8c121d5d 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm @@ -238,7 +238,7 @@ Difficulty: Medium if(L.loc == loc) throw_dir = pick(alldirs) var/throwtarget = get_edge_target_turf(src, throw_dir) - L.throw_at_fast(throwtarget, 3) + L.throw_at(throwtarget, 3) visible_message("[L] is thrown clear of [src]!") for(var/mob/M in range(7, src)) diff --git a/code/modules/mob/living/simple_animal/hostile/spaceworms.dm b/code/modules/mob/living/simple_animal/hostile/spaceworms.dm index 64469bb87ef..b1393e84ef9 100644 --- a/code/modules/mob/living/simple_animal/hostile/spaceworms.dm +++ b/code/modules/mob/living/simple_animal/hostile/spaceworms.dm @@ -123,7 +123,6 @@ //Attempt to eat things we bump into, Mobs, Walls, Clowns /mob/living/simple_animal/hostile/spaceWorm/wormHead/Bump(atom/obstacle) - attemptToEat(obstacle) //Attempt to eat things, only the head can eat diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/reproduction.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/reproduction.dm index d1ffa073582..d9c20c09172 100644 --- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/reproduction.dm +++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/reproduction.dm @@ -25,13 +25,12 @@ ts_spiderling_list -= src return ..() -/obj/structure/spider/spiderling/terror_spiderling/Bump(atom/A) - if(istype(A, /obj/structure/table)) - forceMove(A.loc) - else if(istype(A, /obj/machinery/recharge_station)) +/obj/structure/spider/spiderling/terror_spiderling/Bump(obj/O) + if(istype(O, /obj/structure/table)) + forceMove(O.loc) + else if(istype(O, /obj/machinery/recharge_station)) qdel(src) - else - ..() + . = ..() /obj/structure/spider/spiderling/terror_spiderling/process() if(travelling_in_vent) diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm index caff5e2017f..0f85d78d01f 100644 --- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm +++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm @@ -329,16 +329,17 @@ var/global/list/ts_spiderling_list = list() /mob/living/simple_animal/hostile/poison/terror_spider/proc/spider_special_action() return -/mob/living/simple_animal/hostile/poison/terror_spider/Bump(atom/A) - if(istype(A, /obj/machinery/door/airlock)) - var/obj/machinery/door/airlock/L = A +/mob/living/simple_animal/hostile/poison/terror_spider/ObjBump(obj/O) + if(istype(O, /obj/machinery/door/airlock)) + var/obj/machinery/door/airlock/L = O if(L.density) - try_open_airlock(L) - if(istype(A, /obj/machinery/door/firedoor)) - var/obj/machinery/door/firedoor/F = A + return try_open_airlock(L) + if(istype(O, /obj/machinery/door/firedoor)) + var/obj/machinery/door/firedoor/F = O if(F.density && !F.welded) F.open() - ..() + return 1 + . = ..() /mob/living/simple_animal/hostile/poison/terror_spider/proc/msg_terrorspiders(msgtext) for(var/mob/living/simple_animal/hostile/poison/terror_spider/T in ts_spiderlist) @@ -362,6 +363,7 @@ var/global/list/ts_spiderling_list = list() to_chat(src, "The door is bolted shut.") else if(D.allowed(src)) D.open(1) + return 1 else if(D.arePowerSystemsOn() && (spider_opens_doors != 2)) to_chat(src, "The door's motors resist your efforts to force it.") else if(!spider_opens_doors) @@ -369,4 +371,5 @@ var/global/list/ts_spiderling_list = list() else visible_message("[src] pries open the door!") playsound(src.loc, "sparks", 100, 1) - D.open(1) \ No newline at end of file + D.open(1) + return 1 \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 7c951cebbc9..bd6ed65a979 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -250,20 +250,6 @@ else if(bodytemperature > maxbodytemp) adjustBruteLoss(heat_damage_per_tick) -/mob/living/simple_animal/Bumped(AM as mob|obj) - if(!AM) return - - if(resting || buckled) - return - - if(isturf(src.loc)) - if((status_flags & CANPUSH) && ismob(AM)) - var/newamloc = src.loc - src.loc = AM:loc - AM:loc = newamloc - else - ..() - /mob/living/simple_animal/gib() if(icon_gib) flick(icon_gib, src) diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index cef870811db..03ba9618bd4 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -15,21 +15,27 @@ return 1 return (!mover.density || !density || lying) +//The byond version of these verbs wait for the next tick before acting. +// instant verbs however can run mid tick or even during the time between ticks. +/client/verb/moveup() + set name = ".moveup" + set instant = 1 + Move(get_step(mob, NORTH), NORTH) -/client/North() - ..() +/client/verb/movedown() + set name = ".movedown" + set instant = 1 + Move(get_step(mob, SOUTH), SOUTH) +/client/verb/moveright() + set name = ".moveright" + set instant = 1 + Move(get_step(mob, EAST), EAST) -/client/South() - ..() - - -/client/West() - ..() - - -/client/East() - ..() +/client/verb/moveleft() + set name = ".moveleft" + set instant = 1 + Move(get_step(mob, WEST), WEST) /client/Northeast() @@ -105,12 +111,11 @@ /client/verb/toggle_throw_mode() set hidden = 1 - if(!istype(mob, /mob/living/carbon)) - return - if(!mob.stat && isturf(mob.loc) && !mob.restrained()) - mob:toggle_throw_mode() + if(iscarbon(mob)) + var/mob/living/carbon/C = mob + C.toggle_throw_mode() else - return + to_chat(usr, "This mob type cannot throw items.") /client/verb/drop_item() @@ -134,16 +139,16 @@ /client/proc/Move_object(direct) if(mob && mob.control_object) if(mob.control_object.density) - step(mob.control_object,direct) - if(!mob.control_object) return - mob.control_object.dir = direct + step(mob.control_object, direct) + if(!mob.control_object) + return + mob.control_object.setDir(direct) else - mob.control_object.forceMove(get_step(mob.control_object,direct)) + mob.control_object.forceMove(get_step(mob.control_object, direct)) return /client/Move(n, direct) - if(viewingCanvas) view = world.view //Reset the view winset(src, "mapwindow.map", "icon-size=[src.reset_stretch]") @@ -152,19 +157,28 @@ if(mob.hud_used) mob.hud_used.show_hud(HUD_STYLE_STANDARD) - if(mob.control_object) Move_object(direct) + if(world.time < move_delay) + return - if(world.time < move_delay) return + move_delay = world.time + world.tick_lag //this is here because Move() can now be called multiple times per tick + if(!mob || !mob.loc) + return 0 - if(!isliving(mob)) return mob.Move(n,direct) + if(mob.notransform) + return 0 //This is sota the goto stop mobs from moving var - if(moving) return 0 + if(mob.control_object) + return Move_object(direct) - if(!mob) return + if(!isliving(mob)) + return mob.Move(n, direct) - if(mob.stat==DEAD) return + if(mob.stat == DEAD) + mob.ghostize() + return 0 - if(mob.notransform) return//This is sota the goto stop mobs from moving var + if(moving) + return 0 if(isliving(mob)) var/mob/living/L = mob @@ -172,126 +186,105 @@ Process_Incorpmove(direct) return - if(Process_Grab()) return - - if(mob.buckled) //if we're buckled to something, tell it we moved. - return mob.buckled.relaymove(mob, direct) - - if(mob.remote_control) //we're controlling something, our movement is relayed to it + if(mob.remote_control) //we're controlling something, our movement is relayed to it return mob.remote_control.relaymove(mob, direct) if(isAI(mob)) if(istype(mob.loc, /obj/item/device/aicard)) var/obj/O = mob.loc - return O.relaymove(mob, direct) //aicards have special relaymove stuff - return AIMove(n,direct,mob) + return O.relaymove(mob, direct) // aicards have special relaymove stuff + return AIMove(n, direct, mob) + + + if(Process_Grab()) + return + + if(mob.buckled) //if we're buckled to something, tell it we moved. + return mob.buckled.relaymove(mob, direct) if(!mob.canmove) return - //if(istype(mob.loc, /turf/space) || (mob.flags & NOGRAV)) - // if(!mob.Process_Spacemove(0)) return 0 - if(!mob.lastarea) mob.lastarea = get_area(mob.loc) - if(isobj(mob.loc) || ismob(mob.loc))//Inside an object, tell it we moved + if(isobj(mob.loc) || ismob(mob.loc)) //Inside an object, tell it we moved var/atom/O = mob.loc return O.relaymove(mob, direct) - - if(istype(mob.get_active_hand(), /obj/item)) - var/obj/item/I = mob.get_active_hand() - I.moved(mob, n, direct) - + if(!mob.Process_Spacemove(direct)) - return 0 + return 0 - if(isturf(mob.loc)) - - if(mob.restrained())//Why being pulled while cuffed prevents you from moving - for(var/mob/M in range(mob, 1)) - if(M.pulling == mob) - if(!M.restrained() && M.stat == 0 && M.canmove && mob.Adjacent(M)) - to_chat(src, "You're restrained! You can't move!") - return 0 - else - M.stop_pulling() - - if(mob.pinned.len) - to_chat(src, "You're pinned to a wall by [mob.pinned[1]]!") - return 0 - - var/turf/T = mob.loc - move_delay = world.time//set move delay - move_delay += T.slowdown - mob.last_movement = world.time - switch(mob.m_intent) - if("run") - if(mob.drowsyness > 0) - move_delay += 6 - move_delay += 1+config.run_speed - if("walk") - move_delay += 1+config.walk_speed - move_delay += mob.movement_delay() - - if(config.Tickcomp) - move_delay -= 1.3 - var/tickcomp = ((1/(world.tick_lag))*1.3) - move_delay = move_delay + tickcomp - - //We are now going to move - moving = 1 - //Something with pulling things - if(locate(/obj/item/weapon/grab, mob)) - move_delay = max(move_delay, world.time + 7) - var/list/L = mob.ret_grab() - if(istype(L, /list)) - if(L.len == 2) - L -= mob - var/mob/M = L[1] - if(M) - if((get_dist(mob, M) <= 1 || M.loc == mob.loc)) - . = ..() - if(isturf(M.loc)) - var/diag = get_dir(mob, M) - if((diag - 1) & diag) - else - diag = null - if((get_dist(mob, M) > 1 || diag)) - step(M, get_dir(M.loc, T)) + if(mob.restrained()) // Why being pulled while cuffed prevents you from moving + for(var/mob/M in orange(1, mob)) + if(M.pulling == mob) + if(!M.incapacitated() && mob.Adjacent(M)) + to_chat(src, "You're restrained! You can't move!") + move_delay = world.time + 10 + return 0 else - for(var/mob/M in L) - M.other_mobs = 1 - if(mob != M) - M.animate_movement = 3 - for(var/mob/M in L) - spawn( 0 ) - step(M, direct) - return - spawn( 1 ) - M.other_mobs = null - M.animate_movement = 2 - return + M.stop_pulling() - else if(mob.confused) - step(mob, pick(cardinal)) - else - . = ..() - for(var/obj/item/weapon/grab/G in mob) - if(G.state == GRAB_NECK) - mob.setDir(reverse_dir[direct]) - G.adjust_position() - for(var/obj/item/weapon/grab/G in mob.grabbed_by) - G.adjust_position() + //We are now going to move + moving = 1 + move_delay = mob.movement_delay() + world.time + mob.last_movement = world.time + + if(locate(/obj/item/weapon/grab, mob)) + move_delay = max(move_delay, world.time + 7) + var/list/L = mob.ret_grab() + if(istype(L, /list)) + if(L.len == 2) + L -= mob + var/mob/M = L[1] + if(M) + if((get_dist(mob, M) <= 1 || M.loc == mob.loc)) + var/turf/prev_loc = mob.loc + . = ..() + if(M && isturf(M.loc)) // Mob may get deleted during parent call + var/diag = get_dir(mob, M) + if((diag - 1) & diag) + else + diag = null + if((get_dist(mob, M) > 1 || diag)) + step(M, get_dir(M.loc, prev_loc)) + else + for(var/mob/M in L) + M.other_mobs = 1 + if(mob != M) + M.animate_movement = 3 + for(var/mob/M in L) + spawn(0) + step(M, direct) + return + spawn(1) + M.other_mobs = null + M.animate_movement = 2 + return + + else if(mob.confused) + step(mob, pick(cardinal)) + else + . = ..() + + for(var/obj/item/weapon/grab/G in mob) + if(G.state == GRAB_NECK) + mob.setDir(reverse_dir[direct]) + G.adjust_position() + for(var/obj/item/weapon/grab/G in mob.grabbed_by) + G.adjust_position() + + moving = 0 + if(mob && .) + if(mob.throwing) + mob.throwing.finalize(FALSE) + + for(var/obj/O in mob) + O.on_mob_move(direct, mob) - moving = 0 - if(mob && .) - mob.throwing = 0 - return . - return ///Process_Grab() @@ -408,13 +401,13 @@ var/atom/movable/backup = get_spacemove_backup() if(backup) if(istype(backup) && movement_dir && !backup.anchored) - if(backup.newtonian_move(turn(movement_dir, 180))) //You're pushing off something movable, so it moves - src << "You push off of [backup] to propel yourself." + var/opposite_dir = turn(movement_dir, 180) + if(backup.newtonian_move(opposite_dir)) //You're pushing off something movable, so it moves + to_chat(src, "You push off of [backup] to propel yourself.") return 1 return 0 /mob/get_spacemove_backup() - var/atom/movable/dense_object_backup for(var/A in orange(1, get_turf(src))) if(isarea(A)) continue @@ -434,9 +427,7 @@ return AM if(pulling == AM) continue - dense_object_backup = AM - break - . = dense_object_backup + . = AM /mob/proc/mob_has_gravity(turf/T) diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index e8899ef6123..9a2ea2e3499 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -658,6 +658,20 @@ clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-med"), ICON_OVERLAY) if(4) clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel"), ICON_OVERLAY) + if(CORONER) + clothes_s = new /icon(uniform_dmi, "medical_s") + clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_UNDERLAY) + if(prob(1)) + clothes_s.Blend(new /icon('icons/mob/suit.dmi', "mortician"), ICON_OVERLAY) + else + clothes_s.Blend(new /icon('icons/mob/suit.dmi', "labcoat_open"), ICON_OVERLAY) + switch(backbag) + if(2) + clothes_s.Blend(new /icon('icons/mob/back.dmi', "medicalpack"), ICON_OVERLAY) + if(3) + clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel-med"), ICON_OVERLAY) + if(4) + clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel"), ICON_OVERLAY) if(GENETICIST) clothes_s = new /icon(uniform_dmi, "geneticswhite_s") clothes_s.Blend(new /icon('icons/mob/feet.dmi', "white"), ICON_UNDERLAY) diff --git a/code/modules/mob/pulling.dm b/code/modules/mob/pulling.dm index 6a6a66675b0..5a532ee1a42 100644 --- a/code/modules/mob/pulling.dm +++ b/code/modules/mob/pulling.dm @@ -15,7 +15,11 @@ return stop_pulling() - src.pulling = AM + if(AM.pulledby) + visible_message("[src] has pulled [AM] from [AM.pulledby]'s grip.") + AM.pulledby.stop_pulling() //an object can't be pulled by two mobs at once. + + pulling = AM AM.pulledby = src if(pullin) pullin.update_icon(src) diff --git a/code/modules/nano/nanoui.dm b/code/modules/nano/nanoui.dm index 1622fe1700e..8b749a67903 100644 --- a/code/modules/nano/nanoui.dm +++ b/code/modules/nano/nanoui.dm @@ -178,6 +178,7 @@ nanoui is used to open and update nano browser uis var/name = "[src_object]" var/list/config_data = list( "title" = title, + "map" = MAP_NAME, "srcObject" = list("name" = name), "stateKey" = state_key, "status" = status, diff --git a/code/modules/pda/PDA.dm b/code/modules/pda/PDA.dm index 3ff11689078..d5208a01b8f 100755 --- a/code/modules/pda/PDA.dm +++ b/code/modules/pda/PDA.dm @@ -502,8 +502,3 @@ var/global/list/obj/item/device/pda/PDAs = list() /obj/item/device/pda/process() if(current_app) current_app.program_process() - -/obj/item/device/pda/hit_check(speed) - if(current_app) - current_app.program_hit_check() - ..() \ No newline at end of file diff --git a/code/modules/pda/mob_hunt_game_app.dm b/code/modules/pda/mob_hunt_game_app.dm index 9b8e3225976..bec10f782ab 100644 --- a/code/modules/pda/mob_hunt_game_app.dm +++ b/code/modules/pda/mob_hunt_game_app.dm @@ -74,12 +74,6 @@ return scan_nearby() -/datum/data/pda/app/mob_hunter_game/program_hit_check() - if(!pda) - return - for(var/obj/effect/nanomob/hit_mob in get_turf(pda)) - hit_mob.hitby(pda) - /datum/data/pda/app/mob_hunter_game/proc/register_capture(datum/mob_hunt/captured, wild = 0) if(!captured) return 0 diff --git a/code/modules/projectiles/guns/energy/pulse.dm b/code/modules/projectiles/guns/energy/pulse.dm index c155cfb9dff..456627398ce 100644 --- a/code/modules/projectiles/guns/energy/pulse.dm +++ b/code/modules/projectiles/guns/energy/pulse.dm @@ -70,3 +70,16 @@ /obj/item/weapon/gun/energy/pulse/pistol/m1911/isHandgun() return 1 + +/obj/item/weapon/gun/energy/pulse/turret + name = "pulse turret gun" + desc = "A heavy, turret-mounted pulse energy cannon." + icon_state = "turretlaser" + item_state = "turretlaser" + slot_flags = null + w_class = 5 + ammo_type = list(/obj/item/ammo_casing/energy/electrode, /obj/item/ammo_casing/energy/laser/pulse) + weapon_weight = WEAPON_MEDIUM + can_flashlight = 0 + trigger_guard = TRIGGER_GUARD_NONE + ammo_x_offset = 2 \ No newline at end of file diff --git a/code/modules/projectiles/guns/throw.dm b/code/modules/projectiles/guns/throw.dm index f19069bc32f..0ea753f4cfa 100644 --- a/code/modules/projectiles/guns/throw.dm +++ b/code/modules/projectiles/guns/throw.dm @@ -16,10 +16,10 @@ return /obj/item/weapon/gun/throw/proc/get_throwrange() - return projectile_speed + return projectile_range /obj/item/weapon/gun/throw/proc/get_throwspeed() - return projectile_range + return projectile_speed /obj/item/weapon/gun/throw/proc/modify_projectile(obj/item/I, on_chamber = 0) return @@ -80,7 +80,7 @@ to_launch = null modify_projectile(I) playsound(user, fire_sound, 50, 1) - I.throw_at(target, get_throwrange(), get_throwspeed(), user, 1) + I.throw_at(target, get_throwrange(), get_throwspeed(), user, FALSE) message_admins("[key_name_admin(user)] fired \a [I] from a [src].") log_game("[key_name_admin(user)] used \a [src].") process_chamber() diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm index 5c8d5136324..7434038eb91 100644 --- a/code/modules/projectiles/projectile/bullets.dm +++ b/code/modules/projectiles/projectile/bullets.dm @@ -145,6 +145,8 @@ name = "rubber pellet" damage = 3 stamina = 25 + embed = 0 + sharp = 0 icon_state = "bullet-r" /obj/item/projectile/bullet/stunshot//taser slugs for shotguns, nothing special @@ -201,11 +203,14 @@ stun = 4 /obj/item/projectile/bullet/honker + name = "banana" damage = 0 weaken = 5 stun = 5 forcedodge = 1 nodamage = 1 + embed = 0 + sharp = 0 pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE hitsound = 'sound/items/bikehorn.ogg' icon = 'icons/obj/hydroponics/harvest.dmi' diff --git a/code/modules/reagents/chemistry/reagents/alcohol.dm b/code/modules/reagents/chemistry/reagents/alcohol.dm index b07e9da9124..9b651a21443 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol.dm @@ -819,10 +819,11 @@ drink_desc = "A drink that is guaranteed to knock you silly." /datum/reagent/consumable/ethanol/neurotoxin/on_mob_life(mob/living/M) - M.Weaken(3) - if(current_cycle >=55) + if(current_cycle >= 13) + M.Weaken(3) + if(current_cycle >= 55) M.Druggy(55) - if(current_cycle >=200) + if(current_cycle >= 200) M.adjustToxLoss(2) ..() diff --git a/code/modules/reagents/chemistry/reagents/disease.dm b/code/modules/reagents/chemistry/reagents/disease.dm index f9fbf930e3e..7db78883e90 100644 --- a/code/modules/reagents/chemistry/reagents/disease.dm +++ b/code/modules/reagents/chemistry/reagents/disease.dm @@ -141,11 +141,11 @@ can_synth = 0 /datum/reagent/concentrated_initro/on_mob_life(mob/living/M) - if(volume >=5) + if(volume >= 5) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(!H.heart_attack) - H.heart_attack = 1 // rip in pepperoni + if(!H.undergoing_cardiac_arrest()) + H.set_heartattack(TRUE) // rip in pepperoni //virus foods @@ -183,4 +183,4 @@ /datum/reagent/plasma_dust/plasmavirusfood/weak name = "weakened virus plasma" id = "weakplasmavirusfood" - color = "#CEC3C6" // rgb: 206,195,198 \ No newline at end of file + color = "#CEC3C6" // rgb: 206,195,198 diff --git a/code/modules/reagents/chemistry/reagents/food.dm b/code/modules/reagents/chemistry/reagents/food.dm index 082b6496357..a18f1c01c42 100644 --- a/code/modules/reagents/chemistry/reagents/food.dm +++ b/code/modules/reagents/chemistry/reagents/food.dm @@ -772,8 +772,8 @@ M.Weaken(1) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(!H.heart_attack) - H.heart_attack = 1 + if(!H.undergoing_cardiac_arrest()) + H.set_heartattack(TRUE) ..() /datum/reagent/fungus @@ -847,7 +847,7 @@ if(volume >= 5 && !istype(T, /turf/space)) new /obj/effect/decal/cleanable/vomit/green(T) playsound(T, 'sound/effects/splat.ogg', 50, 1, -3) - + ////Lavaland Flora Reagents//// /datum/reagent/consumable/entpoly @@ -878,7 +878,7 @@ if(!light_activated) M.set_light(2) light_activated = 1 - ..() + ..() /datum/reagent/consumable/tinlux/on_mob_delete(mob/living/M) M.set_light(0) @@ -894,4 +894,4 @@ if(prob(80)) M.adjustBruteLoss(-1 * REAGENTS_EFFECT_MULTIPLIER) M.adjustFireLoss(-1 * REAGENTS_EFFECT_MULTIPLIER) - ..() \ No newline at end of file + ..() diff --git a/code/modules/reagents/chemistry/reagents/medicine.dm b/code/modules/reagents/chemistry/reagents/medicine.dm index a8fcf888318..452f9f6d2ff 100644 --- a/code/modules/reagents/chemistry/reagents/medicine.dm +++ b/code/modules/reagents/chemistry/reagents/medicine.dm @@ -1023,3 +1023,11 @@ /datum/reagent/medicine/earthsblood/overdose_process(mob/living/M) M.SetHallucinate(min(max(0, M.hallucination + 10), 50)) M.adjustToxLoss(5 * REAGENTS_EFFECT_MULTIPLIER) + +/datum/reagent/medicine/corazone + name = "Corazone" + id = "corazone" + description = "A medication used to treat pain, fever, and inflammation, along with heart attacks." + color = "#F5F5F5" + +// This reagent's effects are handled in heart attack handling code diff --git a/code/modules/reagents/chemistry/reagents/toxins.dm b/code/modules/reagents/chemistry/reagents/toxins.dm index 8fabc46db00..40d9cb1c481 100644 --- a/code/modules/reagents/chemistry/reagents/toxins.dm +++ b/code/modules/reagents/chemistry/reagents/toxins.dm @@ -648,8 +648,8 @@ M.Weaken(2) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(!H.heart_attack) - H.heart_attack = 1 // rip in pepperoni + if(!H.undergoing_cardiac_arrest()) + H.set_heartattack(TRUE) // rip in pepperoni ..() /datum/reagent/pancuronium @@ -1090,4 +1090,4 @@ shock_timer = 0 M.electrocute_act(rand(5,20), "Teslium in their body", 1, 1) //Override because it's caused from INSIDE of you playsound(M, "sparks", 50, 1) - ..() \ No newline at end of file + ..() diff --git a/code/modules/reagents/chemistry/recipes/medicine.dm b/code/modules/reagents/chemistry/recipes/medicine.dm index 1c22693513f..31547e10c44 100644 --- a/code/modules/reagents/chemistry/recipes/medicine.dm +++ b/code/modules/reagents/chemistry/recipes/medicine.dm @@ -271,4 +271,11 @@ required_reagents = list("ethanol" = 1, "copper" = 1, "silver" = 1) result_amount = 3 min_temp = 370 - mix_message = "The solution gently swirls with a metallic sheen." \ No newline at end of file + mix_message = "The solution gently swirls with a metallic sheen." + +/datum/chemical_reaction/corazone + name = "Corazone" + id = "corazone" + result = "corazone" + result_amount = 3 + required_reagents = list("phenol" = 2, "lithium" = 1) diff --git a/code/modules/research/designs/mechfabricator_designs.dm b/code/modules/research/designs/mechfabricator_designs.dm index 876a4352fe9..b31eeb43319 100644 --- a/code/modules/research/designs/mechfabricator_designs.dm +++ b/code/modules/research/designs/mechfabricator_designs.dm @@ -883,7 +883,7 @@ category = list("Exosuit Equipment") /datum/design/mech_laser - name = "Exosuit Weapon (CH-PS \"Immolator\" Laser)" + name = "Exosuit Weapon (CH-PL \"Firedart\" Laser)" desc = "Allows for the construction of CH-PS Laser." id = "mech_laser" build_type = MECHFAB @@ -893,6 +893,17 @@ construction_time = 100 category = list("Exosuit Equipment") +/datum/design/mech_disabler + name = "Exosuit Weapon (CH-PD Disabler)" + desc = "Allows for the construction of CH-PD Disabler." + id = "mech_laser" + build_type = MECHFAB + req_tech = list("combat" = 3, "magnets" = 3) + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/disabler + materials = list(MAT_METAL=10000) + construction_time = 100 + category = list("Exosuit Equipment") + /datum/design/mech_carbine name = "Exosuit Weapon (FNX-99 \"Hades\" Carbine)" desc = "Allows for the construction of FNX-99 \"Hades\" Carbine." @@ -959,6 +970,28 @@ construction_time = 100 category = list("Exosuit Equipment") +/datum/design/mech_tesla + name = "Exosuit Weapon (P-X Tesla Cannon)" + desc = "Allows for the construction of P-X Tesla Cannon." + id = "mech_tesla" + build_type = MECHFAB + req_tech = list("combat" = 6, "magnets" = 5, "materials" = 5) + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/tesla + materials = list(MAT_METAL = 10000, MAT_GLASS = 10000, MAT_SILVER = 10000) + construction_time = 100 + category = list("Exosuit Equipment") + +/datum/design/mech_immolator + name = "Exosuit Weapon (ZFI Immolation Beam Gun)" + desc = "Allows for the construction of ZFI Immolation Beam Gun." + id = "mech_tesla" + build_type = MECHFAB + req_tech = list("combat" = 4, "materials" = 4, "plasmatech" = 2, "magnets" = 3) + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/immolator + materials = list(MAT_METAL = 4000, MAT_GLASS = 1000, MAT_SILVER = 3000, MAT_PLASMA = 2000) + construction_time = 100 + category = list("Exosuit Equipment") + //Cyborg Upgrade Modules /datum/design/borg_upgrade_reset diff --git a/code/modules/research/xenoarchaeology/genetics/reconstitutor.dm b/code/modules/research/xenoarchaeology/genetics/reconstitutor.dm index 2cacdc4801e..a4a52b3ea5f 100644 --- a/code/modules/research/xenoarchaeology/genetics/reconstitutor.dm +++ b/code/modules/research/xenoarchaeology/genetics/reconstitutor.dm @@ -191,7 +191,6 @@ datum/genesequence visible_message("[bicon(src)] [src] clones something from a reconstituted gene sequence!") playsound(src.loc, 'sound/effects/screech.ogg', 50, 1, -3) pod1.occupant = new cloned_genesequence.spawned_type(pod1) - pod1.locked = 1 pod1.icon_state = "pod_1" //pod1.occupant.name = "[pod1.occupant.name] ([rand(0,999)])" pod1.biomass -= CLONE_BIOMASS diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 116ac637ac5..5903035903b 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -262,6 +262,10 @@ mode = SHUTTLE_ESCAPE timer = world.time priority_announcement.Announce("The Emergency Shuttle has left the station. Estimate [timeLeft(600)] minutes until the shuttle docks at Central Command.") + for(var/mob/M in player_list) + if(!isnewplayer(M) && !M.client.karma_spent && !M.get_preference(DISABLE_KARMA_REMINDER)) + to_chat(M, "You have not yet spent your karma for the round; was there a player worthy of receiving your reward? Look under OOC tab, Award Karma.") + if(SHUTTLE_ESCAPE) if(time_left <= 0) //move each escape pod to its corresponding escape dock diff --git a/code/modules/surgery/organs/augments_internal.dm b/code/modules/surgery/organs/augments_internal.dm index ffd0b4f0b1e..278941d87e4 100644 --- a/code/modules/surgery/organs/augments_internal.dm +++ b/code/modules/surgery/organs/augments_internal.dm @@ -249,9 +249,9 @@ if(istype(owner, /mob/living/carbon/human)) var/mob/living/carbon/human/H = owner if(H.stat != DEAD && prob(50 / severity)) - H.heart_attack = 1 + H.set_heartattack(TRUE) spawn(600 / severity) - H.heart_attack = 0 + H.set_heartattack(FALSE) if(H.stat == CONSCIOUS) to_chat(H, "You feel your heart beating again!") diff --git a/code/modules/surgery/organs/organ.dm b/code/modules/surgery/organs/organ.dm index 1af9e92b233..045e34ea41e 100644 --- a/code/modules/surgery/organs/organ.dm +++ b/code/modules/surgery/organs/organ.dm @@ -294,7 +294,7 @@ var/list/organ_cache = list() /obj/item/organ/internal/heart/emp_act(intensity) if(owner && robotic == 2) - owner.heart_attack = 1 + Stop() // In the name of looooove~! owner.visible_message("[owner] clutches their chest and gasps!","You clutch your chest in pain!") else if(owner && robotic == 1) take_damage(11,1) @@ -324,18 +324,8 @@ var/list/organ_cache = list() owner = null return src -/obj/item/organ/proc/replaced(var/mob/living/carbon/human/target,var/obj/item/organ/external/affected) - - if(!istype(target)) return - - owner = target - processing_objects -= src - affected.internal_organs |= src - if(!target.get_int_organ(src)) - target.internal_organs += src - loc = target - if(robotic) - status |= ORGAN_ROBOT +/obj/item/organ/proc/replaced(var/mob/living/carbon/human/target) + return // Nothing uses this, it is always overridden /obj/item/organ/proc/surgeryize() diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index 7bea9c480af..ae421c98025 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -69,9 +69,8 @@ A.Remove(M) return src -/obj/item/organ/internal/replaced(var/mob/living/carbon/human/target,var/obj/item/organ/external/affected) +/obj/item/organ/internal/replaced(var/mob/living/carbon/human/target) insert(target) - ..() /obj/item/organ/internal/item_action_slot_check(slot, mob/user) return @@ -155,11 +154,9 @@ . = ..() if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.stat == DEAD || H.heart_attack) + if(H.stat == DEAD) Stop() return - if(!special) - H.heart_attack = 1 spawn(120) if(!owner) @@ -173,15 +170,6 @@ if(!owner) Stop() - -/obj/item/organ/internal/heart/insert(mob/living/carbon/M, special = 0) - ..() - if(ishuman(M) && beating) - var/mob/living/carbon/human/H = M - if(H.heart_attack) - H.heart_attack = 0 - return - /obj/item/organ/internal/heart/proc/Stop() beating = 0 update_icon() diff --git a/code/modules/surgery/organs/subtypes/skrell.dm b/code/modules/surgery/organs/subtypes/skrell.dm index c069b852886..b8debe746e7 100644 --- a/code/modules/surgery/organs/subtypes/skrell.dm +++ b/code/modules/surgery/organs/subtypes/skrell.dm @@ -1,3 +1,63 @@ /obj/item/organ/internal/liver/skrell alcohol_intensity = 4 species = "Skrell" + +/obj/item/organ/internal/headpocket + name = "headpocket" + desc = "Allows Skrell to hide tiny objects within their head tentacles." + icon_state = "skrell_headpocket" + origin_tech = "biotech=2" + w_class = WEIGHT_CLASS_TINY + parent_organ = "head" + slot = "headpocket" + species = "Skrell" + actions_types = list(/datum/action/item_action/organ_action/toggle) + var/obj/item/weapon/storage/internal/pocket + +/obj/item/organ/internal/headpocket/New() + ..() + pocket = new /obj/item/weapon/storage/internal(src) + pocket.storage_slots = 1 + // Allow adjacency calculation to work properly + loc = owner + // Fit only pocket sized items + pocket.max_w_class = 2 + pocket.max_combined_w_class = 2 + +/obj/item/organ/internal/headpocket/on_life() + ..() + var/obj/item/organ/external/head/head = owner.get_organ("head") + if(pocket.contents.len && (owner.stunned || !findtextEx(head.h_style, "Tentacles"))) + owner.visible_message("Something falls from [owner]'s head!", + "Something falls from your head!") + empty_contents() + +/obj/item/organ/internal/headpocket/ui_action_click() + if(!loc) + loc = owner + pocket.MouseDrop(owner) + +/obj/item/organ/internal/headpocket/on_owner_death() + empty_contents() + +/obj/item/organ/internal/headpocket/remove() + empty_contents() + . = ..() + +/obj/item/organ/internal/headpocket/proc/empty_contents() + pocket.empty_object_contents(0, get_turf(owner)) + +/obj/item/organ/internal/headpocket/proc/get_contents() + return pocket.contents + +/obj/item/organ/internal/headpocket/emp_act(severity) + pocket.emp_act(severity) + ..() + +/obj/item/organ/internal/headpocket/hear_talk(mob/living/M as mob, msg) + pocket.hear_talk(M, msg) + ..() + +/obj/item/organ/internal/headpocket/hear_message(mob/living/M as mob, msg) + pocket.hear_message(M, msg) + ..() diff --git a/config/example/config.txt b/config/example/config.txt index 60702180691..5617b5ad039 100644 --- a/config/example/config.txt +++ b/config/example/config.txt @@ -206,9 +206,6 @@ ALLOW_HOLIDAYS ##Defines the ticklag for the world. 0.9 is the normal one, 0.5 is smoother. TICKLAG 0.5 -## Defines if Tick Compensation is used. It results in a minor slowdown of movement of all mobs, but attempts to result in a level movement speed across all ticks. Recommended if tickrate is lowered. -TICKCOMP 1 - ## Whether the server will talk to other processes through socket_talk SOCKET_TALK 0 diff --git a/config/example/game_options.txt b/config/example/game_options.txt index 5d82bfb425d..549633d6a2d 100644 --- a/config/example/game_options.txt +++ b/config/example/game_options.txt @@ -38,17 +38,17 @@ REVIVAL_BRAIN_LIFE -1 ## We suggest editing these variabled in-game to find a good speed for your server. To do this you must be a high level admin. Open the 'debug' tab ingame. Select "Debug Controller" and then, in the popup, select "Configuration". These variables should have the same name. ## These values get directly added to values and totals in-game. To speed things up make the number negative, to slow things down, make the number positive. -## These modify the run/walk speed of all mobs before the mob-specific modifiers are applied. +## These modify the run/walk speed of all mobs before the mob-specific modifiers are applied. RUN_SPEED 1 WALK_SPEED 4 ## The variables below affect the movement of specific mob types. -HUMAN_DELAY 0 -ROBOT_DELAY 0 -MONKEY_DELAY 0 -ALIEN_DELAY 0 -METROID_DELAY 0 -ANIMAL_DELAY 0 +HUMAN_DELAY 1.5 +ROBOT_DELAY 1.5 +MONKEY_DELAY 1.5 +ALIEN_DELAY 1.5 +SLIME_DELAY 1.5 +ANIMAL_DELAY 1.5 ## Comment for "normal" explosions, which ignore obstacles ## Uncomment for explosions that react to doors and walls diff --git a/config/title_screens/LICENSE.txt b/config/title_screens/LICENSE.txt new file mode 100644 index 00000000000..831689b417c --- /dev/null +++ b/config/title_screens/LICENSE.txt @@ -0,0 +1,38 @@ +---LICENSE NOTICE--- + +The server operator(s) is responsible for the copyright status of all images placed within the /config/title_screens/images folder unless otherwise noted. + +If an image requires attribution and/or a specific license it is up to the operator(s) to make this information publicly available on either +a website associated with their server or on the server itself. + +If operators(s) allow these configuration files to be public this file can serve that purpose by keeping it properly updated. + +If in the future new images are published to these folders (i.e. in an online code repository) they must explicitly state their +license if said license is not the same as the default licensing found in README.md in the root directory of the project. + +Do not remove this notice. + +---END NOTICE--- + + + + +---EXAMPLES (NOT PART OF ANY LICENSE)--- + +These are examples of properly attrubuted and licensed images. +They are not an actual part of any license under any circumstance. + +rare+foobar.png was created by Mya Quinn on Feburary 28, 2557. It is licensed under a Combative Clowning 3.0 HO-NK license (http://example.com/license/url/). + +Unless otherwise noted all images were created by Cuban Pete on July 26, 2555. They are licensed under the RUMBABEAT Public License.(http://example.com/license/url/). + +---END EXAMPLES (NOT PART OF ANY LICENSE)--- + + + + +---ADD LICENSING INFORMATION BELOW--- + +blank.png and default.dmi use the default licensing found in README.md in the root directory of the project. + + diff --git a/config/title_screens/README.txt b/config/title_screens/README.txt new file mode 100644 index 00000000000..6e7bf166f8f --- /dev/null +++ b/config/title_screens/README.txt @@ -0,0 +1,50 @@ +The enclosed images folder holds the image files used as the title screen for the game. All common formats such as PNG, JPG, and GIF are supported. +Byond's DMI format is also supported, but if you use a DMI only include one image per file and do not give it an icon_state (the text label below the image). + +Keep in mind that the area a title screen fills is a 480px square so you should scale/crop source images to these dimensions first. +The game won't scale these images for you, so smaller images will not fill the screen and larger ones will be cut off. + +Using unnecessarily huge images can cause client side lag and should be avoided. Extremely large GIFs should preferentially be converted to DMIs. +Placing non-image files in the images folder can cause errors. + +You may add as many title screens as you like, if there is more than one a random screen is chosen (see name conventions for specifics). + +--- + +Naming Conventions: + +Every title screen you add must have a unique name. It is allowed to name two things the same if they have different file types, but this should be discouraged. +Avoid using the plus sign "+" and the period "." in names, as these are used internally to classify images. + + +Common Titles: + +Common titles are in the rotation to be displayed all the time. Any name that does not include the character "+" is considered a common title. + +An example of a common title name is "clown". + +The common title screen named "default" is special. It is only used if no other titles are available. You can overwrite "default" safely, but you +should have a title named "default" somewhere in your DMI file if you don't have any other common titles. Because default only runs in the +absence of other titles, if you want it to also appear in the general rotation you must rename it. + +The common title screen named "blank.png" is also special. It is only used to fill space while the real title screen loads. You should leave this file alone. + + +Map Titles: + +Map titles are tied to a specific in game map. To make a map title you format the name like this "(name of a map)+(name of your title)" + +The spelling of the map name is important. It must match exactly the define MAP_NAME found in the relevant .DM file in the /_maps folder in +the root directory. It can also be seen in game in the status menu. Note that there are no spaces between the two names. + +It is absolutely fine to have more than one title tied to the same map. + +An example of a map title name is "Omegastation+splash". + + +Rare Titles: + +Rare titles are a just for fun feature where they will only have a 1% chance of appear in in the title screen pool of a given round. +Add the phrase "rare+" to the beginning of the name. Again note there are no spaces. A title cannot be rare title and a map title at the same time. + +An example of a rare title name is "rare+explosion" \ No newline at end of file diff --git a/config/title_screens/images/blank.png b/config/title_screens/images/blank.png new file mode 100644 index 0000000000000000000000000000000000000000..c3167a923bf8987b6b448ef8c3b23c23bf8f5382 GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0y~yV0-|=jLbk0cPX7~K#DoQC&U#
    +

    27 May 2017

    +

    Crazylemon64 updated:

    +
      +
    • Cloning now can be halted at any point, but ejecting too early may result in clones with missing body parts.
    • +
    • Slime people now no longer spontaneously die
    • +
    + +

    26 May 2017

    +

    FlattyPatty updated:

    +
      +
    • Removes gateway hotel xeno embryo for the crew's safety.
    • +
    + +

    25 May 2017

    +

    FalseIncarnate updated:

    +
      +
    • Matter Eater now requires your mouth be uncovered before you can eat matter.
    • +
    +

    Fethas updated:

    +
      +
    • PLASMAMAN ATMOS SUITS ARE NOW THE SAME AS REGULAR ATMOS SUITS FLAG WISE! AND SO IS THE CE SUIT
    • +
    +

    Kyep updated:

    +
      +
    • Fixed some mapping bugs on Centcom, e.g: shuttle medbay no longer has black walls.
    • +
    +

    Purpose2 updated:

    +
      +
    • Metastation - Adds the Paramedic's cart and locker.
    • +
    • Metastation - Adds a backup set of paramedic keys in the CMO's office.
    • +
    • Metastation - Engine no longer hotwired.
    • +
    • Metastation - Turbine doors now function properly.
    • +
    • Metastation - Toxin Mixing's Controller is now accessible.
    • +
    • Metastation - Moved Containment out a single tile, to fix irregularities with Singularity setups.
    • +
    • Metastation - Reduced redundant redundancies in the Atmos/Wiring.
    • +
    • Metastation - removed blob spawn that was only a few tiles from Cryostorage....
    • +
    • Drones can now grip Tracker Electronics & Vending Refills
    • +
    +

    Tayyyyyyy, PhantasmicDream updated:

    +
      +
    • Skrell can put a pocket sized item in their head tentacles, which can be dislodged via stunning, stripping, or death
    • +
    • Skrell can no longer have their tentacles shaved off
    • +
    • Minor grammar fix for putting stuff that's too big into containers
    • +
    + +

    24 May 2017

    +

    Kyep updated:

    +
      +
    • Every head of staff now has a Department Management Console in their office. This is a very limited version of the ID console that they can use to demote people out of their departments, or move people between jobs in their department. These consoles cannot be used to hire anyone, or to accept cross-department transfers.
    • +
    + +

    23 May 2017

    +

    Fethas updated:

    +
      +
    • Lockets and necklaces to the loadout. Lockets can hold paper and photos
    • +
    • Fethas fluff item
    • +
    +

    Purpose2 updated:

    +
      +
    • Adds functionality for the Atmos/Engineering Minimap to update to the right station.
    • +
    + +

    22 May 2017

    +

    DarkPyrolord updated:

    +
      +
    • Rubber pellets should no longer embed.
    • +
    • Bananas fired from the staff of the honkmother should no longer embed, or be called bullets.
    • +
    +

    Kyep updated:

    +
      +
    • Adds mech-mounted variants of the existing tesla, immolator, and x-ray laser guns, with the same material and tech requirements. Admin-only Seraph mech also gets better weapons.
    • +
    + +

    21 May 2017

    +

    KasparoVy updated:

    +
      +
    • Fixes a bug where only the fat roundstart disability could be selected.
    • +
    + +

    20 May 2017

    +

    FlattestGuitar updated:

    +
      +
    • Adds a jobban-checking verb to the OOC tab.
    • +
    +

    KasparoVy updated:

    +
      +
    • You can now set your character's auto-accent at character creation. The verb still exists in the OOC tab.
    • +
    +

    Kyep updated:

    +
      +
    • Antag roles now have playtime requirements.
    • +
    +

    Kyep: updated:

    +
      +
    • Updated CC map.
    • +
    +

    Xantholne updated:

    +
      +
    • The Coroner now has an actual job icon.
    • +
    + +

    19 May 2017

    +

    IK3I updated:

    +
      +
    • Empath stops telling you how much it hurts to not be human
    • +
    +

    MarsM0nd updated:

    +
      +
    • NanoUI map now shows the up-to-date map.
    • +
    +

    Purpose2 updated:

    +
      +
    • Coroner no longer alt title for MD
    • +
    • Adds Coroner job as its own job.
    • +
    • Adds a swanky new office for the Coroner.
    • +
    + +

    18 May 2017

    +

    FreeStylaLT updated:

    +
      +
    • Added a Newscaster to Brig Toilet.
    • +
    +

    Purpose2 updated:

    +
      +
    • Adds a subtle chat-window reminder for karma on Shuttle departure. Disable/enable via preferences tab.
    • +
    • Removes the ugly round-end karma popup.
    • +
    +

    TullyBurnalot updated:

    +
      +
    • Deaf people cannot hear tape recordings anymore
    • +
    + +

    17 May 2017

    +

    Fethas updated:

    +
      +
    • MORE GREY SPRITES!
    • +
    +

    FlattestGuitar updated:

    +
      +
    • You can now silence shoes just by using some duct tape on them! Shoe rags no longer exist.
    • +
    +

    Fox McCloud updated:

    +
      +
    • Neuro-toxin bar drink weakens after 13 cycles as opposed to instantly
    • +
    +

    Purpose2 updated:

    +
      +
    • Makes the new posters actually spawnable.
    • +
    • Fixes far more spelling errors than there ever should have been on the posters.
    • +
    +

    Travelling Merchant updated:

    +
      +
    • Adds a hiss emote for Unathi.
    • +
    + +

    16 May 2017

    +

    FlattestGuitar updated:

    +
      +
    • Brig lockers now have radios and prisoner IDs. As per SOP!
    • +
    +

    FreeStylaLT updated:

    +
      +
    • Fixed broken disposals in brig.
    • +
    • Returned missing Sergeant Araneus to HoS office.
    • +
    • Fixed missing floor tiles in the execution hallway in Brig.
    • +
    • Remapped the entire Brig.
    • +
    +

    Kyep updated:

    +
      +
    • changed security officer job slots from 5 to 7.
    • +
    +

    uraniummeltdown updated:

    +
      +
    • You can now resist out of straightjackets
    • +
    • Straightjacketed people can be handcuffed
    • +
    +

    15 May 2017

    TullyBurnalot updated:

    '},dangerToClass:function(e){return 0==e?"good":1==e?"average":"bad"},dangerToSpan:function(e){return 0==e?'"Good"':1==e?'"Minor Alert"':'"Major Alert"'},generateHref:function(e){var t=$("body");_urlParameters=t.data("urlParameters");var n="?";for(var a in _urlParameters)_urlParameters.hasOwnProperty(a)&&("?"!==n&&(n+=";"),n+=a+"="+_urlParameters[a]);for(var a in e)e.hasOwnProperty(a)&&("?"!==n&&(n+=";"),n+=a+"="+e[a]);return n},displayDNABlocks:function(e,t,n,a,r){if(!e)return'
    Please place a valid subject into the DNA modifier.
    ';var o=e.split(""),i='
    ',l=1,s=1;for(var c in o)if(o.hasOwnProperty(c)&&"object"!=typeof o[c]){var u;u="UI"==r.toUpperCase()?{selectUIBlock:l,selectUISubblock:s}:{selectSEBlock:l,selectSESubblock:s};var d="linkActive";l==t&&s==n&&(d="selected"),i+='",c++,c%a==0&&c
    "):s++}return i+="
    "},cMirror:function(e){CodeMirror.fromTextArea(document.getElementById(e),{lineNumbers:!0,indentUnit:4,indentWithTabs:!0,theme:"lesser-dark"})},smoothNumber:function(e){var t=NanoTransition.allocID("n");return''},smoothRound:function(e,t){var n=NanoTransition.allocID(t);return void 0===t&&(placed=0),''}};return{addHelpers:function(){NanoTemplate.addHelpers(e)},removeHelpers:function(){for(var t in e)e.hasOwnProperty(t)&&NanoTemplate.removeHelper(t)}}}(),NanoStateDefaultClass.inheritsFrom(NanoStateClass);var NanoStateDefault=new NanoStateDefaultClass;NanoStatePDAClass.inheritsFrom(NanoStateClass);var NanoStatePDA=new NanoStatePDAClass;NanoStatePDAClass.prototype.onUpdate=function(e){NanoStateClass.prototype.onUpdate.call(this,e);var t=this;try{if(null!=e.data.app){var n=e.data.app.template;null!=n&&n!=t.current_template?$.when($.ajax({url:n+".tmpl",cache:!1,dataType:"text"})).done(function(a){a+='
    ';try{NanoTemplate.addTemplate("app",a),NanoTemplate.resetTemplate("app"),$("#uiApp").html(NanoTemplate.parse("app",e)),t.current_template=n,t.onAfterUpdate(e)}catch(r){return void reportError("ERROR: An error occurred while loading the PDA App UI: "+r.message)}}).fail(function(){reportError("ERROR: Loading template app("+n+") failed!")}):NanoTemplate.templateExists("app")&&$("#uiApp").html(NanoTemplate.parse("app",e))}}catch(a){return void reportError("ERROR: An error occurred while rendering the PDA App UI: "+a.message)}},NanoStateClass.prototype.key=null,NanoStateClass.prototype.layoutRendered=!1,NanoStateClass.prototype.contentRendered=!1,NanoStateClass.prototype.mapInitialised=!1,NanoStateClass.prototype.isCurrent=function(){return NanoStateManager.getCurrentState()==this},NanoStateClass.prototype.onAdd=function(e){NanoBaseCallbacks.addCallbacks(),NanoBaseHelpers.addHelpers()},NanoStateClass.prototype.onRemove=function(e){NanoBaseCallbacks.removeCallbacks(),NanoBaseHelpers.removeHelpers()},NanoStateClass.prototype.onBeforeUpdate=function(e){return e=NanoStateManager.executeBeforeUpdateCallbacks(e)},NanoStateClass.prototype.onUpdate=function(e){try{(!this.layoutRendered||e.config.hasOwnProperty("autoUpdateLayout")&&e.config.autoUpdateLayout)&&($("#uiLayout").html(NanoTemplate.parse("layout",e)),this.layoutRendered=!0),(!this.contentRendered||e.config.hasOwnProperty("autoUpdateContent")&&e.config.autoUpdateContent)&&($("#uiContent").html(NanoTemplate.parse("main",e)),this.contentRendered=!0),NanoTemplate.templateExists("mapContent")&&(this.mapInitialised||($("#uiMap").draggable(),$("#uiMapTooltip").off("click").on("click",function(e){e.preventDefault(),$(this).fadeOut(400)}),this.mapInitialised=!0),$("#uiMapContent").html(NanoTemplate.parse("mapContent",e)),e.config.hasOwnProperty("showMap")&&e.config.showMap?($("#uiContent").addClass("hidden"),$("#uiMapWrapper").removeClass("hidden")):($("#uiMapWrapper").addClass("hidden"),$("#uiContent").removeClass("hidden"))),NanoTemplate.templateExists("mapHeader")&&$("#uiMapHeader").html(NanoTemplate.parse("mapHeader",e)),NanoTemplate.templateExists("mapFooter")&&$("#uiMapFooter").html(NanoTemplate.parse("mapFooter",e))}catch(t){return void reportError("ERROR: An error occurred while rendering the UI: "+t.message)}},NanoStateClass.prototype.onAfterUpdate=function(e){NanoStateManager.executeAfterUpdateCallbacks(e)},NanoStateClass.prototype.alertText=function(e){alert(e)};var NanoTemplate=function(){var e={},t={},n={},a={},r=function(){e=$("body").data("templateData"),null==e&&reportError("Error: Template data did not load correctly."),o()},o=function(){var t=Object.size(e);if(!t)return void $(document).trigger("templatesLoaded");for(var n in e)if(e.hasOwnProperty(n))return void $.when($.ajax({url:e[n],cache:!1,dataType:"text"})).done(function(t){t+='
    ';try{NanoTemplate.addTemplate(n,t)}catch(a){return void reportError("ERROR: An error occurred while loading the UI: "+a.message)}delete e[n],o()}).fail(function(){reportError("ERROR: Loading template "+n+"("+e[n]+") failed!")})},i=function(){for(var e in t)try{n[e]=doT.template(t[e],null,t)}catch(a){reportError(a.message)}};return{init:function(){r()},addTemplate:function(e,n){t[e]=n},templateExists:function(e){return t.hasOwnProperty(e)},resetTemplate:function(e){n[e]=null},parse:function(e,r){if(!n.hasOwnProperty(e)||!n[e]){if(!t.hasOwnProperty(e))return reportError('ERROR: Template "'+e+'" does not exist in _compiledTemplates!'),"

    Template error (does not exist)

    ";i()}return"function"!=typeof n[e]?(reportError(n[e]),reportError('ERROR: Template "'+e+'" failed to compile!'),"

    Template error (failed to compile)

    "):n[e].call(this,r.data,r.config,a)},addHelper:function(e,t){return jQuery.isFunction(t)?void(a[e]=t):void reportError("NanoTemplate.addHelper failed to add "+e+" as it is not a function.")},addHelpers:function(e){for(var t in e)e.hasOwnProperty(t)&&NanoTemplate.addHelper(t,e[t])},removeHelper:function(e){helpers.hasOwnProperty(e)&&delete a[e]}}}();NanoTransition=function(){var e={},t={},n=0;NanoStateManager.addBeforeUpdateCallback("TransitionReset",function(e){return n=0,e});var a=function(e){return"_Hide_Map_close"==e?"transition__map":(void 0===e&&(e=""),"transition__"+n++ +"_"+e.toString())},r=function(n,a,r){var o,i=e[n];void 0===r&&(r=!1);var l=$("."+n);if(0==l.length)return a;if(l=l[0],i&&i.tagName==l.tagName&&i.tabIndex==l.tabIndex&&i.parent==l.parentNode.tagName&&i.children==l.children.length){if(o=t[n],r){var s={};for(k in o)s[k]=o[k];for(k in a)s[k]=a[k];a=s}}else o=a,e[n]={tagName:l.tagName,tabIndex:l.tabIndex,parent:l.parentNode.tagName,children:l.children.length};return t[n]=a,o},o=function(e,t){var n=$("."+e);return t?$(n).children(t):$(n)},i=function(e,t,n,a,r){var i=o(e,t);void 0===r&&(r=1900),i.css(n).animate(a,{duration:r,queue:!1});var l=n["..class"],s=a["..class"];if(l&&s&&(i.addClass(l),l!=s)){var l=l.split(" "),s=s.split(" "),c=l.filter(function(e){return s.indexOf(e)==-1}),u=s.filter(function(e){return l.indexOf(e)==-1});l=c.join(" "),s=u.join(" "),i.switchClass(l,s,{duration:r,queue:!1})}},l=function(e,t,n,a,r,i){var l=o(e,t);void 0===i&&(i=1900),n==-1?l.text(a.toString()):l.text(a.toFixed(n)),a!=r&&l.animate({i:1},{duration:i,queue:!1,step:function(e,t){n==-1?t.elem.textContent=(a*(1-e)+r*e).toString():t.elem.textContent=(a*(1-e)+r*e).toFixed(n)}})},s=function(e,t,n,a,i){var l=o(e,t);void 0===i&&(i=200),n["..hover"]&&l.addClass("hover"),l.hover(function(){l.stop(1,1).addClass("hover",{duration:i,queue:!1}),r(e,{"..hover":!0},!0)},function(){l.stop(1,1).removeClass("hover",{duration:i,queue:!1}),r(e,{"..hover":!1},!0)})},c=function(e,t,n,a){var o=r(e,n);return i(e,t,o,n,a),o};return{allocID:a,updateElement:r,animateElement:i,animateTextValue:l,animateHover:s,transitionElement:c}}();var NanoWindow=function(){var e,t,n,a,r,o,i=function(e,t){NanoUtility.winset("pos",e+","+t)},l=function(e,t){NanoUtility.winset("size",e+","+t)},s=function(){NanoStateManager.getData().config.user.fancy&&(c(),u(),d())},c=function(){NanoUtility.winset("titlebar",0),NanoUtility.winset("can-resize",0),$(".fancy").show(),$("#uiTitleFluff").css("right","65px")},u=function(){var e=function(){return NanoUtility.close()},t=function(){return NanoUtility.winset("is-minimized","true")};$(".close").on("click",function(t){e()}),$(".minimize").on("click",function(e){t()})},d=function(){$(document).on("mousemove",function(e){p(),f()}),$(document).on("mouseup",function(i){e&&(e=!1,t=null,n=null),a&&(a=!1,r=null,o=null)}),$("#uiTitleWrapper").on("mousedown",function(t){e=!0}),$("#resize").on("mousedown",function(e){a=!0})},p=function(a){var r,o;null==a&&(a=window.event),e&&(null==t&&(t=a.screenX),null==n&&(n=a.screenY),r=a.screenX-t+window.screenLeft,o=a.screenY-n+window.screenTop,i(r,o),t=a.screenX,n=a.screenY)},f=function(){var e,t;null==event&&(event=window.event),a&&(null==r&&(r=event.screenX),null==o&&(o=event.screenY),e=Math.max(150,event.screenX-r+window.innerWidth),t=Math.max(150,event.screenY-o+window.innerHeight),l(e,t),r=event.screenX,o=event.screenY)};return{init:function(){$(document).on("templatesLoaded",function(){s()})}}}(); \ No newline at end of file +function NanoStateDefaultClass(){this.key="default",this.key=this.key.toLowerCase(),NanoStateManager.addState(this)}function NanoStatePDAClass(){this.key="pda",this.key=this.key.toLowerCase(),this.current_template="",NanoStateManager.addState(this)}function NanoStateClass(){}var NanoUtility=function(){var e={};return{init:function(){var t=$("body");e=t.data("urlParameters")},generateHref:function(t){var n="?";for(var a in e)e.hasOwnProperty(a)&&("?"!==n&&(n+=";"),n+=a+"="+e[a]);for(var a in t)t.hasOwnProperty(a)&&("?"!==n&&(n+=";"),n+=a+"="+t[a]);return n},winset:function(e,t,n){var a,r;return null==n&&(n=NanoStateManager.getData().config.window.ref),a={},a[n+"."+e]=t,r=a,location.href=NanoUtility.href("winset",r)},extend:function(e,t){return Object.keys(t).forEach(function(n){var a;return a=t[n],a&&"[object Object]"===Object.prototype.toString.call(a)?(e[n]=e[n]||{},NanoUtility.extend(e[n],a)):e[n]=a}),e},href:function(e,t){return null==e&&(e=""),null==t&&(t={}),e=new Url("byond://"+e),NanoUtility.extend(e.query,t),e},close:function(){var t;return t={command:"nanoclose "+e.src},this.winset("is-visible","false"),location.href=NanoUtility.href("winset",t)}}}();"undefined"==typeof jQuery&&reportError("ERROR: Javascript library failed to load!"),"undefined"==typeof doT&&reportError("ERROR: Template engine failed to load!");var reportError=function(e){window.location="byond://?nano_err="+encodeURIComponent(e),alert(e)};$(document).ready(function(){NanoUtility.init(),NanoStateManager.init(),NanoTemplate.init(),NanoWindow.init()}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e){var t=this.length,n=Number(arguments[1])||0;for(n=n<0?Math.ceil(n):Math.floor(n),n<0&&(n+=t);n=0?e[a]:a===-1?"{":a===-2?"}":""})},String.prototype.format.regex=new RegExp("{-?[0-9]+}","g")),Object.size=function(e){var t,n=0;for(var t in e)e.hasOwnProperty(t)&&n++;return n},window.console||(window.console={log:function(e){return!1}}),String.prototype.toTitleCase=function(){var e=/^(a|an|and|as|at|but|by|en|for|if|in|of|on|or|the|to|vs?\.?|via)$/i;return this.replace(/([^\W_]+[^\s-]*) */g,function(t,n,a,r){return a>0&&a+n.length!==r.length&&n.search(e)>-1&&":"!==r.charAt(a-2)&&r.charAt(a-1).search(/[^\s-]/)<0?t.toLowerCase():n.substr(1).search(/[A-Z]|\../)>-1?t:t.charAt(0).toUpperCase()+t.substr(1)})},$.ajaxSetup({cache:!1}),Function.prototype.inheritsFrom=function(e){return this.prototype=new e,this.prototype.constructor=this,this.prototype.parent=e.prototype,this},String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}),String.prototype.ckey||(String.prototype.ckey=function(){return this.replace(/\W/g,"").toLowerCase()}),NanoStateManager=function(){var e=!1,t=null,n={},a={},r={},o=null,i=function(){t=$("body").data("initialData"),null!=t&&t.hasOwnProperty("config")&&t.hasOwnProperty("data")||reportError("Error: Initial data did not load correctly."+JSON.stringify(t));var n="default";t.config.hasOwnProperty("stateKey")&&t.config.stateKey&&(n=t.config.stateKey.toLowerCase()),NanoStateManager.setCurrentState(n),$(document).on("templatesLoaded",function(){s(t),e=!0})},l=function(n){var a;try{a=jQuery.parseJSON(n)}catch(r){return void reportError("recieveUpdateData failed.
    Error name: "+r.name+"
    Error Message: "+r.message)}a.hasOwnProperty("data")||(t&&t.hasOwnProperty("data")?a.data=t.data:a.data={}),e?s(a):t=a},s=function(e){if(null!=o){if(e=o.onBeforeUpdate(e),e===!1)return void reportError("data is false, return");t=e,o.onUpdate(t),o.onAfterUpdate(t)}},c=function(e,t){for(var n in e)e.hasOwnProperty(n)&&jQuery.isFunction(e[n])&&(t=e[n].call(this,t));return t};return{init:function(){i()},receiveUpdateData:function(e){l(e)},addBeforeUpdateCallback:function(e,t){n[e]=t},addBeforeUpdateCallbacks:function(e){for(var t in e)e.hasOwnProperty(t)&&NanoStateManager.addBeforeUpdateCallback(t,e[t])},removeBeforeUpdateCallback:function(e){n.hasOwnProperty(e)&&delete n[e]},executeBeforeUpdateCallbacks:function(e){return c(n,e)},addAfterUpdateCallback:function(e,t){a[e]=t},addAfterUpdateCallbacks:function(e){for(var t in e)e.hasOwnProperty(t)&&NanoStateManager.addAfterUpdateCallback(t,e[t])},removeAfterUpdateCallback:function(e){a.hasOwnProperty(e)&&delete a[e]},executeAfterUpdateCallbacks:function(e){return c(a,e)},addState:function(e){return e instanceof NanoStateClass?e.key?void(r[e.key]=e):void reportError("ERROR: Attempted to add a state with an invalid stateKey"):void reportError("ERROR: Attempted to add a state which is not instanceof NanoStateClass")},setCurrentState:function(e){if("undefined"==typeof e||!e)return reportError("ERROR: No state key was passed!"),!1;if(!r.hasOwnProperty(e))return reportError("ERROR: Attempted to set a current state which does not exist: "+e),!1;var t=o;return o=r[e],null!=t&&t.onRemove(o),o.onAdd(t),!0},getCurrentState:function(){return o},getData:function(){return t}}}(),NanoBaseCallbacks=function(){var e=!0,t={},n={status:function(t){var n;return 2==t.config.status?(n="good",$(".linkActive").removeClass("inactive")):1==t.config.status?(n="average",$(".linkActive").addClass("inactive")):(n="bad",$(".linkActive").addClass("inactive")),$(".statusicon").removeClass("good bad average").addClass(n),$(".linkActive").stopTime("linkPending"),$(".linkActive").removeClass("linkPending"),$(".linkActive").off("click").on("click",function(n){n.preventDefault();var a=$(this).data("href");null!=a&&e&&(e=!1,$("body").oneTime(300,"enableClick",function(){e=!0}),2==t.config.status&&$(this).oneTime(300,"linkPending",function(){$(this).addClass("linkPending")}),window.location.href=a)}),t},nanomap:function(e){return $(".mapIcon").off("mouseenter mouseleave").on("mouseenter",function(e){$("#uiMapTooltip").html($(this).children(".tooltip").html()).show().stopTime().oneTime(5e3,"hideTooltip",function(){$(this).fadeOut(500)})}),$(".zoomLink").off("click").on("click",function(e){e.preventDefault();var t=$(this).data("zoomLevel"),n=$("#uiMap"),a=n.width()*t,r=n.height()*t;n.css({zoom:t,left:"50%",top:"50%",marginLeft:"-"+Math.floor(a/2)+"px",marginTop:"-"+Math.floor(r/2)+"px"})}),$("#uiMapImage").attr("src",e.config.map+"_nanomap_z"+e.config.mapZLevel+".png"),e}};return{addCallbacks:function(){NanoStateManager.addBeforeUpdateCallbacks(t),NanoStateManager.addAfterUpdateCallbacks(n)},removeCallbacks:function(){for(var e in t)t.hasOwnProperty(e)&&NanoStateManager.removeBeforeUpdateCallback(e);for(var e in n)n.hasOwnProperty(e)&&NanoStateManager.removeAfterUpdateCallback(e)}}}(),NanoBaseHelpers=function(){var e={syndicateMode:function(){return $("body").css("background-color","#8f1414"),$("body").css("background-image","url('uiBackground-Syndicate.png')"),$("body").css("background-position","50% 0"),$("body").css("background-repeat","repeat-x"),$("#uiTitleFluff").css("background-image","url('uiTitleFluff-Syndicate.png')"),$("#uiTitleFluff").css("background-position","50% 50%"),$("#uiTitleFluff").css("background-repeat","no-repeat"),""},combine:function(e,t){return e&&t?e.concat(t):e||t},dump:function(e){return JSON.stringify(e)},link:function(e,t,n,a,r,o){var i="",l="noIcon";"undefined"!=typeof t&&t&&(i='
    ',l="hasIcon"),"undefined"!=typeof r&&r||(r="link");var s="";"undefined"!=typeof o&&o&&(s='id="'+o+'"');var c=NanoTransition.allocID(s+"_"+e.toString().replace(/[^a-z0-9_]/gi,"_")+"_"+t);return"undefined"!=typeof a&&a?'':'
    "+i+e+'
    '},xor:function(e,t){return e^t},precisionRound:function(e,t){if(0==t)return Math.round(number);var n=Math.pow(10,t);return Math.round(e*n)/n},round:function(e){return Math.round(e)},fixed:function(e){return Math.round(10*e)/10},floor:function(e){return Math.floor(e)},ceil:function(e){return Math.ceil(e)},string:function(){if(0==arguments.length)return"";if(1==arguments.length)return arguments[0];if(arguments.length>1){stringArgs=[];for(var e=1;en&&(e=n):e>t?e=t:e
    '+r+'
    '},dangerToClass:function(e){return 0==e?"good":1==e?"average":"bad"},dangerToSpan:function(e){return 0==e?'"Good"':1==e?'"Minor Alert"':'"Major Alert"'},generateHref:function(e){var t=$("body");_urlParameters=t.data("urlParameters");var n="?";for(var a in _urlParameters)_urlParameters.hasOwnProperty(a)&&("?"!==n&&(n+=";"),n+=a+"="+_urlParameters[a]);for(var a in e)e.hasOwnProperty(a)&&("?"!==n&&(n+=";"),n+=a+"="+e[a]);return n},displayDNABlocks:function(e,t,n,a,r){if(!e)return'
    Please place a valid subject into the DNA modifier.
    ';var o=e.split(""),i='
    ',l=1,s=1;for(var c in o)if(o.hasOwnProperty(c)&&"object"!=typeof o[c]){var u;u="UI"==r.toUpperCase()?{selectUIBlock:l,selectUISubblock:s}:{selectSEBlock:l,selectSESubblock:s};var d="linkActive";l==t&&s==n&&(d="selected"),i+='",c++,c%a==0&&c
    "):s++}return i+="
    "},cMirror:function(e){CodeMirror.fromTextArea(document.getElementById(e),{lineNumbers:!0,indentUnit:4,indentWithTabs:!0,theme:"lesser-dark"})},smoothNumber:function(e){var t=NanoTransition.allocID("n");return''},smoothRound:function(e,t){var n=NanoTransition.allocID(t);return void 0===t&&(placed=0),''}};return{addHelpers:function(){NanoTemplate.addHelpers(e)},removeHelpers:function(){for(var t in e)e.hasOwnProperty(t)&&NanoTemplate.removeHelper(t)}}}(),NanoStateDefaultClass.inheritsFrom(NanoStateClass);var NanoStateDefault=new NanoStateDefaultClass;NanoStatePDAClass.inheritsFrom(NanoStateClass);var NanoStatePDA=new NanoStatePDAClass;NanoStatePDAClass.prototype.onUpdate=function(e){NanoStateClass.prototype.onUpdate.call(this,e);var t=this;try{if(null!=e.data.app){var n=e.data.app.template;null!=n&&n!=t.current_template?$.when($.ajax({url:n+".tmpl",cache:!1,dataType:"text"})).done(function(a){a+='
    ';try{NanoTemplate.addTemplate("app",a),NanoTemplate.resetTemplate("app"),$("#uiApp").html(NanoTemplate.parse("app",e)),t.current_template=n,t.onAfterUpdate(e)}catch(r){return void reportError("ERROR: An error occurred while loading the PDA App UI: "+r.message)}}).fail(function(){reportError("ERROR: Loading template app("+n+") failed!")}):NanoTemplate.templateExists("app")&&$("#uiApp").html(NanoTemplate.parse("app",e))}}catch(a){return void reportError("ERROR: An error occurred while rendering the PDA App UI: "+a.message)}},NanoStateClass.prototype.key=null,NanoStateClass.prototype.layoutRendered=!1,NanoStateClass.prototype.contentRendered=!1,NanoStateClass.prototype.mapInitialised=!1,NanoStateClass.prototype.isCurrent=function(){return NanoStateManager.getCurrentState()==this},NanoStateClass.prototype.onAdd=function(e){NanoBaseCallbacks.addCallbacks(),NanoBaseHelpers.addHelpers()},NanoStateClass.prototype.onRemove=function(e){NanoBaseCallbacks.removeCallbacks(),NanoBaseHelpers.removeHelpers()},NanoStateClass.prototype.onBeforeUpdate=function(e){return e=NanoStateManager.executeBeforeUpdateCallbacks(e)},NanoStateClass.prototype.onUpdate=function(e){try{(!this.layoutRendered||e.config.hasOwnProperty("autoUpdateLayout")&&e.config.autoUpdateLayout)&&($("#uiLayout").html(NanoTemplate.parse("layout",e)),this.layoutRendered=!0),(!this.contentRendered||e.config.hasOwnProperty("autoUpdateContent")&&e.config.autoUpdateContent)&&($("#uiContent").html(NanoTemplate.parse("main",e)),this.contentRendered=!0),NanoTemplate.templateExists("mapContent")&&(this.mapInitialised||($("#uiMap").draggable(),$("#uiMapTooltip").off("click").on("click",function(e){e.preventDefault(),$(this).fadeOut(400)}),this.mapInitialised=!0),$("#uiMapContent").html(NanoTemplate.parse("mapContent",e)),e.config.hasOwnProperty("showMap")&&e.config.showMap?($("#uiContent").addClass("hidden"),$("#uiMapWrapper").removeClass("hidden")):($("#uiMapWrapper").addClass("hidden"),$("#uiContent").removeClass("hidden"))),NanoTemplate.templateExists("mapHeader")&&$("#uiMapHeader").html(NanoTemplate.parse("mapHeader",e)),NanoTemplate.templateExists("mapFooter")&&$("#uiMapFooter").html(NanoTemplate.parse("mapFooter",e))}catch(t){return void reportError("ERROR: An error occurred while rendering the UI: "+t.message)}},NanoStateClass.prototype.onAfterUpdate=function(e){NanoStateManager.executeAfterUpdateCallbacks(e)},NanoStateClass.prototype.alertText=function(e){alert(e)};var NanoTemplate=function(){var e={},t={},n={},a={},r=function(){e=$("body").data("templateData"),null==e&&reportError("Error: Template data did not load correctly."),o()},o=function(){var t=Object.size(e);if(!t)return void $(document).trigger("templatesLoaded");for(var n in e)if(e.hasOwnProperty(n))return void $.when($.ajax({url:e[n],cache:!1,dataType:"text"})).done(function(t){t+='
    ';try{NanoTemplate.addTemplate(n,t)}catch(a){return void reportError("ERROR: An error occurred while loading the UI: "+a.message)}delete e[n],o()}).fail(function(){reportError("ERROR: Loading template "+n+"("+e[n]+") failed!")})},i=function(){for(var e in t)try{n[e]=doT.template(t[e],null,t)}catch(a){reportError(a.message)}};return{init:function(){r()},addTemplate:function(e,n){t[e]=n},templateExists:function(e){return t.hasOwnProperty(e)},resetTemplate:function(e){n[e]=null},parse:function(e,r){if(!n.hasOwnProperty(e)||!n[e]){if(!t.hasOwnProperty(e))return reportError('ERROR: Template "'+e+'" does not exist in _compiledTemplates!'),"

    Template error (does not exist)

    ";i()}return"function"!=typeof n[e]?(reportError(n[e]),reportError('ERROR: Template "'+e+'" failed to compile!'),"

    Template error (failed to compile)

    "):n[e].call(this,r.data,r.config,a)},addHelper:function(e,t){return jQuery.isFunction(t)?void(a[e]=t):void reportError("NanoTemplate.addHelper failed to add "+e+" as it is not a function.")},addHelpers:function(e){for(var t in e)e.hasOwnProperty(t)&&NanoTemplate.addHelper(t,e[t])},removeHelper:function(e){helpers.hasOwnProperty(e)&&delete a[e]}}}();NanoTransition=function(){var e={},t={},n=0;NanoStateManager.addBeforeUpdateCallback("TransitionReset",function(e){return n=0,e});var a=function(e){return"_Hide_Map_close"==e?"transition__map":(void 0===e&&(e=""),"transition__"+n++ +"_"+e.toString())},r=function(n,a,r){var o,i=e[n];void 0===r&&(r=!1);var l=$("."+n);if(0==l.length)return a;if(l=l[0],i&&i.tagName==l.tagName&&i.tabIndex==l.tabIndex&&i.parent==l.parentNode.tagName&&i.children==l.children.length){if(o=t[n],r){var s={};for(k in o)s[k]=o[k];for(k in a)s[k]=a[k];a=s}}else o=a,e[n]={tagName:l.tagName,tabIndex:l.tabIndex,parent:l.parentNode.tagName,children:l.children.length};return t[n]=a,o},o=function(e,t){var n=$("."+e);return t?$(n).children(t):$(n)},i=function(e,t,n,a,r){var i=o(e,t);void 0===r&&(r=1900),i.css(n).animate(a,{duration:r,queue:!1});var l=n["..class"],s=a["..class"];if(l&&s&&(i.addClass(l),l!=s)){var l=l.split(" "),s=s.split(" "),c=l.filter(function(e){return s.indexOf(e)==-1}),u=s.filter(function(e){return l.indexOf(e)==-1});l=c.join(" "),s=u.join(" "),i.switchClass(l,s,{duration:r,queue:!1})}},l=function(e,t,n,a,r,i){var l=o(e,t);void 0===i&&(i=1900),n==-1?l.text(a.toString()):l.text(a.toFixed(n)),a!=r&&l.animate({i:1},{duration:i,queue:!1,step:function(e,t){n==-1?t.elem.textContent=(a*(1-e)+r*e).toString():t.elem.textContent=(a*(1-e)+r*e).toFixed(n)}})},s=function(e,t,n,a,i){var l=o(e,t);void 0===i&&(i=200),n["..hover"]&&l.addClass("hover"),l.hover(function(){l.stop(1,1).addClass("hover",{duration:i,queue:!1}),r(e,{"..hover":!0},!0)},function(){l.stop(1,1).removeClass("hover",{duration:i,queue:!1}),r(e,{"..hover":!1},!0)})},c=function(e,t,n,a){var o=r(e,n);return i(e,t,o,n,a),o};return{allocID:a,updateElement:r,animateElement:i,animateTextValue:l,animateHover:s,transitionElement:c}}();var NanoWindow=function(){var e,t,n,a,r,o,i=function(e,t){NanoUtility.winset("pos",e+","+t)},l=function(e,t){NanoUtility.winset("size",e+","+t)},s=function(){NanoStateManager.getData().config.user.fancy&&(c(),u(),d())},c=function(){NanoUtility.winset("titlebar",0),NanoUtility.winset("can-resize",0),$(".fancy").show(),$("#uiTitleFluff").css("right","65px")},u=function(){var e=function(){return NanoUtility.close()},t=function(){return NanoUtility.winset("is-minimized","true")};$(".close").on("click",function(t){e()}),$(".minimize").on("click",function(e){t()})},d=function(){$(document).on("mousemove",function(e){p(),f()}),$(document).on("mouseup",function(i){e&&(e=!1,t=null,n=null),a&&(a=!1,r=null,o=null)}),$("#uiTitleWrapper").on("mousedown",function(t){e=!0}),$("#resize").on("mousedown",function(e){a=!0})},p=function(a){var r,o;null==a&&(a=window.event),e&&(null==t&&(t=a.screenX),null==n&&(n=a.screenY),r=a.screenX-t+window.screenLeft,o=a.screenY-n+window.screenTop,i(r,o),t=a.screenX,n=a.screenY)},f=function(){var e,t;null==event&&(event=window.event),a&&(null==r&&(r=event.screenX),null==o&&(o=event.screenY),e=Math.max(150,event.screenX-r+window.innerWidth),t=Math.max(150,event.screenY-o+window.innerHeight),l(e,t),r=event.screenX,o=event.screenY)};return{init:function(){$(document).on("templatesLoaded",function(){s()})}}}(); \ No newline at end of file diff --git a/nano/images/Cyberiad_nanomap_z1.png b/nano/images/Cyberiad_nanomap_z1.png new file mode 100644 index 0000000000000000000000000000000000000000..0f064d6a3dbca927501050b6c8601f218ade6555 GIT binary patch literal 569736 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Ξ&+5Te~ly*D2V8@1z@18&J0@HYOr(q$&&4xk@u} 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�Y9YtSPDZPUieIeHa#3;Wh&0I%>bmIyt|R0r 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 z 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%0D75l#48pqH9nf)^xRHtHX5k@==`dEVnUBFX#-i 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