From ed6508e9ffe1d5ea7bb5eefc7ae80cd1caa35f7b Mon Sep 17 00:00:00 2001 From: Jovaniph Date: Sat, 22 Apr 2017 12:04:56 -0400 Subject: [PATCH 01/76] I hate doing map changes --- _maps/map_files/cyberiad/cyberiad.dmm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index fe0d5aaed3f..dcccc107ed1 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -8048,7 +8048,7 @@ "cYN" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall/r_wall,/area/engine/engineering) "cYO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/wall/r_wall,/area/engine/engineering) "cYP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5; level = 1},/turf/simulated/wall/r_wall,/area/atmos) -"cYQ" = (/obj/structure/table,/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/item/stack/sheet/glass{amount = 50},/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/machinery/atmospherics/pipe/simple/visible/universal{dir = 4},/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 3; name = "Atmospherics Requests Console"; pixel_y = -30},/turf/simulated/floor/plasteel,/area/atmos) +"cYQ" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/visible/universal{dir = 4},/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 3; name = "Atmospherics Requests Console"; pixel_y = -30},/obj/item/clothing/glasses/welding,/obj/item/stack/sheet/glass{amount = 50},/obj/item/clothing/glasses/welding,/turf/simulated/floor/plasteel,/area/atmos) "cYR" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/weapon/wrench,/obj/item/device/pipe_painter,/obj/item/device/pipe_painter,/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 9},/turf/simulated/floor/plasteel,/area/atmos) "cYS" = (/obj/structure/table,/obj/item/device/t_scanner,/obj/item/device/multitool{pixel_x = 5},/obj/item/device/radio/headset/headset_eng,/obj/item/weapon/cartridge/atmos,/obj/item/weapon/cartridge/atmos,/obj/item/device/t_scanner,/turf/simulated/floor/plasteel,/area/atmos) "cYT" = (/obj/machinery/atmospherics/trinary/tvalve/digital/flipped,/turf/simulated/floor/plasteel,/area/atmos) From 0e421900229c6bb71090d65cfab90a42ed94d52d Mon Sep 17 00:00:00 2001 From: Jovaniph Date: Sat, 29 Apr 2017 06:15:47 -0400 Subject: [PATCH 02/76] merge conflict test --- _maps/map_files/cyberiad/cyberiad.dmm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index 6588c0fd90e..7af520ccbf5 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -8056,7 +8056,7 @@ "cYV" = (/obj/machinery/atmospherics/pipe/manifold4w/visible,/turf/simulated/floor/plasteel,/area/atmos) "cYW" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold4w/visible,/turf/simulated/floor/plasteel,/area/atmos) "cYX" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall/r_wall,/area/engine/engineering) -"cYY" = (/obj/structure/table,/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/item/stack/sheet/glass{amount = 50},/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/machinery/atmospherics/pipe/simple/visible/universal{dir = 4},/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 3; name = "Atmospherics Requests Console"; pixel_y = -30},/turf/simulated/floor/plasteel,/area/atmos) +"cYY" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/visible/universal{dir = 4},/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 3; name = "Atmospherics Requests Console"; pixel_y = -30},/obj/item/clothing/glasses/welding,/obj/item/stack/sheet/glass{amount = 50},/obj/item/clothing/glasses/welding,/turf/simulated/floor/plasteel,/area/atmos) "cYZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5; level = 1},/turf/simulated/wall/r_wall,/area/atmos) "cZa" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/weapon/wrench,/obj/item/device/pipe_painter,/obj/item/device/pipe_painter,/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 9},/turf/simulated/floor/plasteel,/area/atmos) "cZb" = (/obj/machinery/atmospherics/binary/pump{dir = 4; name = "Waste to Port"},/turf/simulated/floor/plasteel,/area/atmos) From 8a065238e8f2593bd585ac688d9dc24c6fe6b372 Mon Sep 17 00:00:00 2001 From: Crazylemon64 Date: Sat, 25 Feb 2017 17:27:22 -0800 Subject: [PATCH 03/76] Cloning now puts you together bit by bit --- code/game/machinery/cloning.dm | 163 +++++++++++------- code/game/machinery/computer/cloning.dm | 16 +- .../xenoarchaeology/genetics/reconstitutor.dm | 1 - code/modules/surgery/organs/organ.dm | 14 +- code/modules/surgery/organs/organ_internal.dm | 3 +- 5 files changed, 116 insertions(+), 81 deletions(-) diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index b3957234d01..70c955c2169 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,9 @@ var/obj/effect/countdown/clonepod/countdown + var/list/missing_organs + var/organs_number = 0 + light_color = LIGHT_COLOR_PURE_GREEN /obj/machinery/clonepod/power_change() @@ -82,8 +86,21 @@ /obj/machinery/clonepod/Destroy() if(connected) connected.pods -= src +<<<<<<< HEAD QDEL_NULL(Radio) QDEL_NULL(countdown) +======= + if(Radio) + qdel(Radio) + Radio = null + if(countdown) + qdel(countdown) + countdown = null + for(var/i in missing_organs) + qdel(i) + LAZYCLEARLIST(missing_organs) + missing_organs = null +>>>>>>> Cloning now puts you together bit by bit return ..() /obj/machinery/clonepod/RefreshParts() @@ -93,7 +110,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 +234,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 +265,23 @@ 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() + //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 +299,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 +317,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,6 +332,15 @@ //Slowly get that clone healed and finished. occupant.adjustCloneLoss(-((speed_coeff/2))) + var/progress = CLONE_INITIAL_DAMAGE - occupant.getCloneLoss() + progress += (100 - MINIMUM_HEAL_LEVEL) + var/milestone = CLONE_INITIAL_DAMAGE / organs_number + var/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) + //Premature clones may have brain damage. occupant.adjustBrainLoss(-((speed_coeff/20)*efficiency)) @@ -328,22 +353,19 @@ 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 +379,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 +396,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 +421,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 +455,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 +476,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 +490,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 +549,33 @@ 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 + var/obj/item/I = O.remove(H, TRUE) + // 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, TRUE) + I.forceMove(src) + missing_organs += I + + organs_number = LAZYLEN(missing_organs) + /* * Diskette Box */ @@ -586,3 +627,5 @@ if(istype(A, /obj/machinery/clonepod)) A:malfunction() */ + +#undef MINIMUM_HEAL_LEVEL diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm index 0d47420edc9..c1a115e8d96 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/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/surgery/organs/organ.dm b/code/modules/surgery/organs/organ.dm index dd0c9655384..084e16f877e 100644 --- a/code/modules/surgery/organs/organ.dm +++ b/code/modules/surgery/organs/organ.dm @@ -316,18 +316,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 6c775862373..7a87d3c6b39 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -74,9 +74,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 From 2e59984ae938f1bdccbebac78d1c8d3a5561f6f7 Mon Sep 17 00:00:00 2001 From: Crazylemon64 Date: Sat, 25 Feb 2017 23:39:36 -0800 Subject: [PATCH 04/76] No more screaming clones --- code/modules/mob/living/carbon/human/human_organs.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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")) From 528e359296acf1f36ea30a65bdd080aed9b8bdda Mon Sep 17 00:00:00 2001 From: Crazylemon64 Date: Sat, 29 Apr 2017 22:22:57 -0700 Subject: [PATCH 05/76] Refactors heart attacks, unbreaks incremental cloning --- code/__HELPERS/lists.dm | 1 + code/game/machinery/cloning.dm | 53 ++++++++++--------- code/game/objects/items/devices/scanners.dm | 2 +- code/game/objects/items/weapons/defib.dm | 12 ++--- .../mob/living/carbon/carbon_defines.dm | 3 +- code/modules/mob/living/carbon/human/death.dm | 2 +- code/modules/mob/living/carbon/human/human.dm | 4 +- code/modules/mob/living/carbon/human/life.dm | 37 ++++++++++--- code/modules/mob/living/living.dm | 2 +- .../reagents/chemistry/reagents/disease.dm | 8 +-- .../reagents/chemistry/reagents/food.dm | 10 ++-- .../reagents/chemistry/reagents/medicine.dm | 8 +++ .../reagents/chemistry/reagents/toxins.dm | 6 +-- .../surgery/organs/augments_internal.dm | 4 +- code/modules/surgery/organs/organ.dm | 2 +- code/modules/surgery/organs/organ_internal.dm | 13 +---- 16 files changed, 95 insertions(+), 72 deletions(-) diff --git a/code/__HELPERS/lists.dm b/code/__HELPERS/lists.dm index 0196f326792..1cb8f1fc468 100644 --- a/code/__HELPERS/lists.dm +++ b/code/__HELPERS/lists.dm @@ -640,3 +640,4 @@ proc/dd_sortedObjectList(list/incoming) // LAZYING PT 2: THE LAZENING #define LAZYREINITLIST(L) LAZYCLEARLIST(L); LAZYINITLIST(L); +#define LAZYQDELLIST(L) if(L) { for(var/o in L) qdel(o); L.Cut() } diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index 70c955c2169..af66a54010d 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -34,6 +34,7 @@ var/obj/effect/countdown/clonepod/countdown + var/list/brine_types = list("corazone", "salbutamol", "hydrocodone") var/list/missing_organs var/organs_number = 0 @@ -86,21 +87,9 @@ /obj/machinery/clonepod/Destroy() if(connected) connected.pods -= src -<<<<<<< HEAD QDEL_NULL(Radio) QDEL_NULL(countdown) -======= - if(Radio) - qdel(Radio) - Radio = null - if(countdown) - qdel(countdown) - countdown = null - for(var/i in missing_organs) - qdel(i) - LAZYCLEARLIST(missing_organs) - missing_organs = null ->>>>>>> Cloning now puts you together bit by bit + LAZYDESTROYLIST(missing_organs) return ..() /obj/machinery/clonepod/RefreshParts() @@ -280,6 +269,7 @@ 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 maim_clone(H) H.Paralyse(4) @@ -332,21 +322,24 @@ //Slowly get that clone healed and finished. occupant.adjustCloneLoss(-((speed_coeff/2))) - var/progress = CLONE_INITIAL_DAMAGE - occupant.getCloneLoss() - progress += (100 - MINIMUM_HEAL_LEVEL) - var/milestone = CLONE_INITIAL_DAMAGE / organs_number - var/installed = organs_number - LAZYLEN(missing_organs) + // 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) + 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) @@ -562,7 +555,10 @@ var/obj/item/organ/O = o if(!istype(O) || O.vital) continue - var/obj/item/I = O.remove(H, TRUE) + + // 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 @@ -570,12 +566,19 @@ 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, TRUE) + 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 */ diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index a2fd5881ca7..b3b6648f773 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 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/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/human.dm b/code/modules/mob/living/carbon/human/human.dm index cc2458c7cf4..54782f869db 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -759,9 +759,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!") . = ..() diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index be265669b79..b9ce09f88a9 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) + 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/living.dm b/code/modules/mob/living/living.dm index 525559e8e6c..1af74e9234a 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -377,7 +377,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 +384,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 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/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 084e16f877e..95a71a5ce84 100644 --- a/code/modules/surgery/organs/organ.dm +++ b/code/modules/surgery/organs/organ.dm @@ -286,7 +286,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) diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index 7a87d3c6b39..e1bcaffbf65 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -165,11 +165,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) @@ -183,15 +181,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() From ee7b0f070bdc6f1d00bdfe85b192e36ad96e4c8f Mon Sep 17 00:00:00 2001 From: Crazylemon64 Date: Mon, 1 May 2017 05:15:47 -0700 Subject: [PATCH 06/76] Integrates corazone properly --- .../miniantags/abduction/abduction_gear.dm | 3 ++- code/game/machinery/OpTable.dm | 13 +++++++++++++ code/game/machinery/cloning.dm | 2 +- code/modules/reagents/chemistry/recipes/medicine.dm | 9 ++++++++- 4 files changed, 24 insertions(+), 3 deletions(-) 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/machinery/OpTable.dm b/code/game/machinery/OpTable.dm index 6a5253b599c..5da2a4b164d 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() ..() @@ -30,6 +31,8 @@ computer = null if(victim) victim = null + injected_reagents.Cut() + injected_reagents = null return ..() /obj/machinery/optable/ex_act(severity) @@ -97,8 +100,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 af66a54010d..e5c9d1a0804 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -89,7 +89,7 @@ connected.pods -= src QDEL_NULL(Radio) QDEL_NULL(countdown) - LAZYDESTROYLIST(missing_organs) + QDEL_LIST(missing_organs) return ..() /obj/machinery/clonepod/RefreshParts() 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) From 40c4035c585a45380d9038a2c7ddcc01561322e7 Mon Sep 17 00:00:00 2001 From: Crazylemon64 Date: Sun, 7 May 2017 02:52:42 -0700 Subject: [PATCH 07/76] Fox stuff --- code/__HELPERS/lists.dm | 1 - code/game/machinery/OpTable.dm | 2 -- 2 files changed, 3 deletions(-) diff --git a/code/__HELPERS/lists.dm b/code/__HELPERS/lists.dm index 1cb8f1fc468..0196f326792 100644 --- a/code/__HELPERS/lists.dm +++ b/code/__HELPERS/lists.dm @@ -640,4 +640,3 @@ proc/dd_sortedObjectList(list/incoming) // LAZYING PT 2: THE LAZENING #define LAZYREINITLIST(L) LAZYCLEARLIST(L); LAZYINITLIST(L); -#define LAZYQDELLIST(L) if(L) { for(var/o in L) qdel(o); L.Cut() } diff --git a/code/game/machinery/OpTable.dm b/code/game/machinery/OpTable.dm index 5da2a4b164d..4b332b94543 100644 --- a/code/game/machinery/OpTable.dm +++ b/code/game/machinery/OpTable.dm @@ -31,8 +31,6 @@ computer = null if(victim) victim = null - injected_reagents.Cut() - injected_reagents = null return ..() /obj/machinery/optable/ex_act(severity) From 0cf735601c744a30f39aa6af668804415abe85fa Mon Sep 17 00:00:00 2001 From: IK3I Date: Tue, 16 May 2017 22:33:12 -0500 Subject: [PATCH 08/76] Adds Fluff Webbing for IK3I --- code/modules/customitems/item_defines.dm | 50 +++++++++++++++++++++++ icons/mob/species/vox/suit.dmi | Bin 213193 -> 218940 bytes icons/obj/custom_items.dmi | Bin 72910 -> 73556 bytes 3 files changed, 50 insertions(+) diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index 8aa82439bcb..7a38cdfb137 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -410,6 +410,30 @@ else to_chat(user, "You can't modify [target]!") +/obj/item/device/fluff/k3_webbing_modkit //IK3I: Yakikatachi + name = "webbing modkit" + desc = "A modkit that can be used to turn certain vests and labcoats into lightweight webbing" + icon_state = "modkit" + w_class = 2 + force = 0 + throwforce = 0 + +/obj/item/device/fluff/k3_webbing_modkit/afterattack(atom/target, mob/user, proximity) + if(!proximity || !ishuman(user) || user.incapacitated()) + return + + if(istype(target, /obj/item/clothing/suit/storage/labcoat) || istype(target, /obj/item/clothing/suit/storage/hazardvest)) + var/mob/living/carbon/human/H = user + var/obj/item/clothing/suit/storage/S = target + var/obj/item/clothing/suit/storage/fluff/k3_webbing/webbing = new(get_turf(target)) + webbing.allowed = S.allowed + to_chat(user, "You modify the [S] with [src].") + H.update_inv_wear_suit() + qdel(S) + qdel(src) + else + to_chat(user, "You can't modify [target]!") + ////////////////////////////////// //////////// Clothing //////////// ////////////////////////////////// @@ -649,6 +673,32 @@ icon = 'icons/obj/custom_items.dmi' icon_state = "shodancoat" +/obj/item/clothing/suit/storage/fluff/k3_webbing + name = "vox tactical webbing" + desc = "A somewhat worn but well kept set of vox tactical webbing. It has a couple of pouches attached." + icon = 'icons/obj/custom_items.dmi' + icon_state = "k3_webbing_off" + species_fit = list("Vox") + sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') + var/mode = 0 + +/obj/item/clothing/suit/storage/fluff/k3_webbing/verb/toggle() + set name = "Toggle Webbing Lights" + set category = "Object" + set src in usr + + if (usr.stat || usr.restrained()) + return 0 + + if(mode) + to_chat(usr, "You turn the lighting system off") + icon_state = "k3_webbing_off" + else + to_chat(usr, "you turn the lighting system on") + icon_state = "k3_webbing_on" + mode = !mode + usr.update_inv_wear_suit() + //////////// Uniforms //////////// /obj/item/clothing/under/fluff/kharshai // Kharshai: Athena Castile name = "Castile formal outfit" diff --git a/icons/mob/species/vox/suit.dmi b/icons/mob/species/vox/suit.dmi index b0e9f61d7bfe312a6862dcbe6c5f20cd7d9f5c1b..f035236c876dcca8529453edc853fd74983d09ef 100644 GIT binary patch literal 218940 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 literal 213193 zcmY(q1z23cvMoF~1PCFxLm;>ZcXxt@0Ko}PaCdi?;O@cQ-GjS(aF;;_dz{v}er6{)a`+j>pp%3+KmOul6eA(45x83U5fA&S^jP!kR

HxG{kZ!%osEE2Wt3}NKcTDa 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 z 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 delta 13161 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 BlqdiI From 045cbff456e13ac75367ccdcabe3de6a0285d6ec Mon Sep 17 00:00:00 2001 From: IK3I Date: Wed, 17 May 2017 07:11:29 -0500 Subject: [PATCH 09/76] Verb -> Button Makes the lighting toggle an action button. --- code/modules/customitems/item_defines.dm | 39 +++++++++++++---------- icons/mob/species/vox/suit.dmi | Bin 218940 -> 218938 bytes icons/obj/custom_items.dmi | Bin 73556 -> 73553 bytes 3 files changed, 22 insertions(+), 17 deletions(-) diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index 7a38cdfb137..f92c400f0ee 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -677,27 +677,32 @@ name = "vox tactical webbing" desc = "A somewhat worn but well kept set of vox tactical webbing. It has a couple of pouches attached." icon = 'icons/obj/custom_items.dmi' - icon_state = "k3_webbing_off" + icon_state = "k3_webbing" species_fit = list("Vox") sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') - var/mode = 0 + ignore_suitadjust = 0 + actions_types = list(/datum/action/item_action/toggle) + suit_adjusted = 0 -/obj/item/clothing/suit/storage/fluff/k3_webbing/verb/toggle() - set name = "Toggle Webbing Lights" - set category = "Object" - set src in usr +/obj/item/clothing/suit/storage/fluff/k3_webbing/adjustsuit(var/mob/user) + if(!user.incapacitated()) + var/flavour + if(suit_adjusted) + flavour = "off" + icon_state = copytext(icon_state, 1, findtext(icon_state, "_on")) + item_state = copytext(item_state, 1, findtext(item_state, "_on")) + suit_adjusted = 0 //Lights Off + else + flavour = "on" + icon_state += "_on" + item_state += "_on" + suit_adjusted = 1 //Lights On - if (usr.stat || usr.restrained()) - return 0 - - if(mode) - to_chat(usr, "You turn the lighting system off") - icon_state = "k3_webbing_off" - else - to_chat(usr, "you turn the lighting system on") - icon_state = "k3_webbing_on" - mode = !mode - usr.update_inv_wear_suit() + for(var/X in actions) + var/datum/action/A = X + A.UpdateButtonIcon() + to_chat(user, "You turn the lighting system on \the [src] [flavour].") + user.update_inv_wear_suit() //////////// Uniforms //////////// /obj/item/clothing/under/fluff/kharshai // Kharshai: Athena Castile diff --git a/icons/mob/species/vox/suit.dmi b/icons/mob/species/vox/suit.dmi index f035236c876dcca8529453edc853fd74983d09ef..afec241502d8854f3a44622ce25f9043dfb56ba5 100644 GIT binary patch delta 1204 zcmV;l1WWt8t_`}b4Ui;%uzFNjbVOxyV{&P5bZKvH004NLotjN=BR33&&-Skv>|Wzy z-3`!Qd|4zYa@cLrLyMjU9Elz=8A$_5GmiV~d$8j;?t1kqM+47G>VuRhjz2bE?tgpu z*4%x4SkA0TVrVwa?N6VUi=Ei)noaZh=jFn&^e!KMq)eHcP4nS@%kOvpw1510|JTF) z-yfC>E1H^3bGuw@l{}|r)2x>Z7jqh8ZZ^&OW_^3JewEXxFZU6TEYh@q_DtBcqw)^U9FYNal+9+vURY zK>Nczb+f*?P9eOQ=uFFMiip@T1_&-;o90=6|roYRPw%3 zHL{6gIaTKPyh@pA$gaqykqigk6+w+1uckoRmG3uCArCOknn``s*7$O~p5R9+A6+My zfmA-ho-2ldBr#Td9qcJ@2h=3uyPJlA^QbXa6i6#<#N9A)a>BqdL+YchO!OU4_H@IO zF9H^Sk)#aOaL`@2)fTL~Pb7B1chPsi(RsjXOhU2uLSlx~B>6bEZXokiEqI5UseEu> z@YPPnNk*aT#&xPTfE+d1mLxIDX4anOx30&Q@by2n9i0PN^ zJA3@g4tw;ZVgr_xClWL4C8M9_UQuj84v%us_&E%I^qb(3zoO_?dernQikS|7@SsEO zYEO(W_KC%e=Mgo1B0i+uwb zBv^uTDSy0l*>86}jPqvwKvJW|gENW5Q; zsBR8{=6#()*_H)QpIh`{@rt${*Zyqt>y@s<&3gHcg?$hPru*))Bf@2!(WdN zf4^I=tY~WPn%nhir!;VC?waj-x^ z7%T}#QX1Hb+02~E!Tpjn8_GjWIL@J$z^oE_Tr{v1L%u>Fq0WH>34QeCWjad|mru_# zymylEgX@SRqnYFL#*orT=8E~-^~$oR!||TF+1^~J2e!a}H898L&8VExq~&QW;q!ji zsn897BMMQ6T1_&-;o90=6|tFA@}W{SvWa6kRp$7-NtwxKS7g&jh6C@5pvI0jQ=sh1 z_uD`rdzfa;q(ju!4CQz|!(XXX#ou4=lIbq*RlcWsQaL`@2(-y3|&m?xicX8-|qw|Q> zn1o{Qg~SY}N%CoKohS2DE%*U9Q~BV&;H#aCla4@)q5*Iw!3r-cm)(b~JYoiSQ8^?r z30u8aT!CXX&aC8pIsXie->+J}c}zhG+xe^Lfx9w@zZ)b6^D?q@Bd}D+S3&(Jrw~MmS^v zva*xd!jIKXVmpgQANw-A=dMFKEOECJ!wRkcf(6U8=&gXp7c6)`O317xQf{$-7T2W! zYr8E}hQ>@%HL{cB2V7}i4&qBewHpq7xq)!OS37YBt5tJx2dnjSLHY`B@p=~$fY;uo zpxR9`RhyDb{hlDl_*=ZzMb(BQreC`6Jm7zJctB4oHegA4CNaZr+mx6#iQkMcG-Y-W~H-|v;p-!P}%Yvtm?df6BB8`9_C4MEHe!bFp rxY@4XHxFO#oBPj?>;C|Csqx(2e9IDp-2{i-1ObQL1Om6+1Or`C2qa%t diff --git a/icons/obj/custom_items.dmi b/icons/obj/custom_items.dmi index f67d9ab52ccf88bd1d78a5ff2456895347bd5bf1..64f2619b7798e5e902b2ff7fa42fede618a2d7cc 100644 GIT binary patch delta 1351 zcmV-N1-Sauz68;}1dt?u^m zZ~y!9NB8;bm+J$nk(BPP`}pha_0>YD=I*Zh@c#NLBkgj1{KqPhqap!+k;brpeopjq z6qz62B7gsXY@b!iedvK9G923R@FZ}ZWP$^wu!T~n>>Ou_=|Ck^WSp|tl*QwX$OuK$ zs+4vZVG#?E7|647%}~MutApJ#>_)Jm4a$AkgDb&q#d*#-+Dw2;smc$g@%f}Rb<<7HU zqSAgZ$M9v#E2c|W=i&$>*gG7jx_V(2NFG}rX+;(|L%%=C5+~A{QG1bp+P;*Z;5|gg z=~D_9C3+^Nn%yNKQ_VDwTlS=Io=eQ3m-{9;f2xMGp%rFO-TU`3B%m?#1V%i^f|Mq=?+hy{!^3>nrHMu#N@i6^KP)ui0I z^3;iB$4xOe<2oXmZP%l8+?Z-EE z_e2OB8l5P=WqYQdg)?NtVUG>0O|Zpmbo+vj1Z zR5Jz83QV5GjTH8wO4-fG2yM@>5tzH@3egcTF9Z&gP6Uq8)C+-Q2Vqcfw&ONoB;XLi zag$rc1BSii;+qE9JfV_kaJ6Iq(5{BT7O0-ksGw^J18rUNl!`GIiUh@T&s2iqJmaI~AkP}3erHA%yZB=?uisBtMJkNFFT65c5 zp6M*;n7%#2S;X1g90|OvO7FH>rAMD373ywoV^oG92ULcCb}xp^BsDBlQm^Q$yuO$C ztluNEgxyTl;V=u89is+UO@S*;+8!hzlVx(W0G1^|IV~m5Oayf8SKIRJsJOnN=a0)X zBTci_)f-1PfmSHK+h-?|!a_A>$1GI`Cu$X8oaW-?BZC=5C!G-()w}du3B6|L)l1^N z7wzX#yzC??m895@=yQV)TT603XsH)G=R!5+m-qc?Y+PljHc9R7y3K!XHXm+|zLOXQ zB!7R!e4&C^>2NO9fBN=%Zh!rB^Tyw!lNgY(N^w?)$F%SE`bXlT^PJv2<^{7a3B+nzjG{ delta 1329 zcmV-11z68|11dt?u_j*)VbVOxyV{&P5bZKvH004NLrJ2ueBRLL-&&g91W)5>n z590oV-96;8=)s~f=sC;_2rP-V=wgXAq{@}b)6XHvw4IJybQVT{82Ek?OGQ#7{d4!< z-~RXIkM8r=FV_cDBPrco_wm=;>#K!Q&D~x1;r;bhM%v~2_{A!bqap$Sk;brpJ|}uP zip-C1k-z^xw$Cc%KJ>s484m4ucoMiyGQojT*g`2(c8;^ebf6L{GEP}+%Hr`xWP~DW zRZ2UIu!sdn4CGn4W+-8S)xmBVb|cu(2IW5N!IfaQ;ymY_LVBQS5(sq(Tsg#f%FPfo`0yXrrmJ8_@70JgROJa)d>Z9%UA-_1B#$kRv?2?fq2Hfmi4$qfsJ%#kZC}by@E)S$ z^eKgl5Oca5GWpPw}Be8fZ!~#Ydh79Wpqr;Md#1qttYEo`p zdFn*6aY-btW;k2031gstcGw7~$NJSzx+-1aloZXpt}F^=hfY%_goq;ys28B^_TwA7 zarE2Y==Yy4fInTb^1mD_3xoCuIw80HW14kh3=cF-;(Cv#0)P2+rMOT@uPqj3?3?>4 zqTvW}!16%t#Hm;(;Rx;O?TPdhgpa7#gAEjNh`V?3ugD@yK+i{yP5^#v% zxXG>J0mEK$@lAtlo={0NxZ1IQXjj8v3sg^NRM54Afwr!BO2wE9MS|kFXDUH)o^xG8 z!8kC)_A$>7SQZF>MrN*{I{=3<79{q-6su?$V5DM$r=MPcD{AOfWbg#tf)-2|)YI56 z#7r<|hy&L4TVI5?Tc%yU1bye|YL^vib=Rm5$O)p#(nI^Uwkka+MezWw3tKr0mA?Xwd}VWAqcW0tCe6SaykPIK|{k-?0jlgRo!SgkH1r>Lu~s zi}rIVUUrfxN>c1c^tr)@ttGi1wA2fpbD?!%H1Ic6X|mzB=o-xo?} zWP4bjY7$q~9dN}7E>7GdYRph-Fkr?S4rHRC$Ah%DeN}t0>P>sK1N1{!u Date: Wed, 17 May 2017 15:04:07 -0500 Subject: [PATCH 10/76] Corrects and Rewords Fox Issue --- code/modules/customitems/item_defines.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index f92c400f0ee..12ff121e6e8 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -701,7 +701,7 @@ for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() - to_chat(user, "You turn the lighting system on \the [src] [flavour].") + to_chat(user, "You turn the [src]'s lighting system [flavour].") user.update_inv_wear_suit() //////////// Uniforms //////////// From 8d3dbec00e7b606fcdd570d059762a466b562b00 Mon Sep 17 00:00:00 2001 From: FreeStylaLT Date: Wed, 24 May 2017 16:52:55 +0300 Subject: [PATCH 11/76] tweaks hallway, fire alarm, windoor and areas --- _maps/map_files/cyberiad/cyberiad.dmm | 30 +++++++++++++-------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index 094c6e6c12f..01d0a0c0df3 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -574,7 +574,7 @@ "alb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/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/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/permabrig) "alc" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/security/permabrig) "ald" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Prisoner Transfer Center"; req_access = null; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) -"ale" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch/gamma{locked = 1; req_access_txt = "1"; use_power = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/permabrig) +"ale" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch/gamma{locked = 1; req_access_txt = "1"; use_power = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/armoury) "alf" = (/obj/machinery/vending/security,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/item/device/radio/intercom/department/security{pixel_x = -28},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 1},/area/security/armoury) "alg" = (/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 1},/area/security/armoury) "alh" = (/obj/effect/decal/warning_stripes/red/hollow,/obj/structure/closet/l3closet/security,/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 4},/area/security/armoury) @@ -621,7 +621,7 @@ "alW" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/turf/simulated/floor/plating,/area/security/warden) "alX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/poddoor/shutters{dir = 2; id_tag = "Secure Armory"; name = "Secure Armory Shutters"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) "alY" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/turf/simulated/floor/plating,/area/security/securearmoury) -"alZ" = (/obj/structure/table/reinforced,/obj/machinery/door/window/brigdoor{dir = 2; name = "Secure Armory"; req_access_txt = "3"},/obj/machinery/door/window/brigdoor{dir = 1; name = "Secure Armory"; req_access_txt = "3"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) +"alZ" = (/obj/structure/table/reinforced,/obj/machinery/door/window/brigdoor{dir = 2; name = "Secure Armory"; req_access_txt = "1"},/obj/machinery/door/window/brigdoor{dir = 1; name = "Secure Armory"; req_access_txt = "3"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/securearmoury) "ama" = (/obj/structure/closet/secure_closet/security,/obj/structure/window/reinforced{dir = 8},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 9},/area/security/main) "amb" = (/obj/structure/table,/obj/item/clothing/suit/tracksuit/red,/obj/item/device/radio/intercom/department/security{pixel_x = -28},/obj/machinery/camera{c_tag = "Brig Security Equipment Lockers"; dir = 4; network = list("SS13")},/obj/machinery/requests_console{department = "Security"; departmentType = 5; name = "Security Requests Console"; pixel_x = 0; pixel_y = 30},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 1},/area/security/main) "amc" = (/obj/structure/closet/secure_closet/security,/obj/structure/sign/goldenplaque{pixel_y = 30},/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/main) @@ -873,9 +873,9 @@ "aqO" = (/obj/structure/sign/poster/legit{pixel_x = 0; pixel_y = 32},/obj/machinery/camera{c_tag = "Firing Range"; dir = 2; network = list("SS13")},/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/range) "aqP" = (/obj/structure/closet/crate,/obj/item/target,/obj/item/target,/obj/item/target,/obj/item/target,/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/security/range) "aqQ" = (/obj/effect/decal/cleanable/dirt,/obj/item/device/radio/intercom{broadcasting = 0; name = "station intercom (General)"; pixel_y = 25},/turf/simulated/floor/plasteel{dir = 8; icon_state = "redcorner"},/area/security/range) -"aqR" = (/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 = "red"; dir = 8},/area/security/brig) -"aqS" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/security/brig) -"aqT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/brig) +"aqR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plasteel{dir = 1; icon_state = "darkredcorners"},/area/security/brig) +"aqS" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) +"aqT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/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},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "aqU" = (/obj/machinery/light{dir = 1; on = 1},/obj/item/device/radio/intercom/department/security{pixel_x = 0; pixel_y = 25},/turf/simulated/floor/plasteel{dir = 1; icon_state = "darkredcorners"},/area/security/brig) "aqV" = (/obj/machinery/ai_status_display{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plasteel{dir = 1; icon_state = "darkredcorners"},/area/security/brig) "aqW" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) @@ -924,10 +924,10 @@ "arN" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor/plasteel{icon_state = "floorgrime"},/area/security/range) "arO" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/security/range) "arP" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/range) -"arQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/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},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/turf/simulated/floor/plasteel,/area/security/brig) +"arQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) "arR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Firing Range"; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/security/range) -"arS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) -"arT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel,/area/security/brig) +"arS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/brig) +"arT" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "redcorner"},/area/hallway/primary/fore) "arU" = (/turf/simulated/floor/plating/airless,/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk3"; icon_state = "catwalk3"},/area/solar/auxstarboard) "arV" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "burst_r"},/turf/space,/area/shuttle/trade/sol) "arW" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1450; master_tag = "trade_sol"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "160"},/turf/simulated/shuttle/floor,/area/shuttle/trade/sol) @@ -988,9 +988,8 @@ "asZ" = (/obj/machinery/light,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 1},/area/security/range) "ata" = (/obj/structure/table/reinforced,/obj/item/weapon/gun/energy/laser/practice,/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor/plating,/area/security/range) "atb" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 1},/area/security/range) -"atc" = (/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 = "red"; dir = 8},/area/security/brig) +"atc" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plasteel{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/fore) "atd" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable,/turf/simulated/floor/plating,/area/security/brig) -"ate" = (/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/brig) "atf" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "darkredcorners"},/area/security/brig) "atg" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/brig) "ath" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel{dir = 8; icon_state = "darkredcorners"},/area/security/brig) @@ -1720,7 +1719,6 @@ "aHd" = (/obj/structure/stool/bed,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating,/area/maintenance/fpmaint2) "aHe" = (/obj/machinery/camera{c_tag = "Fore Primary Hallway West"; dir = 4; network = list("SS13")},/obj/structure/stool/bed/chair{dir = 4},/obj/machinery/newscaster{layer = 3.3; pixel_x = 0; pixel_y = -27},/turf/simulated/floor/plasteel{dir = 8; icon_state = "redcorner"},/area/hallway/primary/fore) "aHf" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/turf/simulated/floor/plasteel{dir = 8; icon_state = "redcorner"},/area/hallway/primary/fore) -"aHg" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/plasteel{dir = 8; icon_state = "redcorner"},/area/hallway/primary/fore) "aHh" = (/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/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/mrchangs) "aHi" = (/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/item/weapon/twohanded/required/kirbyplants,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5; level = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "barber"},/area/civilian/barber) "aHj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plasteel{dir = 2; icon_state = "barber"},/area/civilian/barber) @@ -9056,9 +9054,9 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalvalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfangaomaocaobaoeaodaohaogaitapGaojaoiaonaokaopaooapFaoqaosaoraouaotaowaovaoxalWaozaoyaoBaoAaoDaoCaoJaoEaoGaoFaoFaoHaoLaoIaoIaoMaoPaoNalFaoQaoRaiYaiYaiYaoTaoSaihaabaaaaaaajbakyajwajwajwajwakzajyaaaaaaaaaaaaamWaaaaaaaoKaaaaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaabaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanfaoUaomaoValEaoXaoWanlajJaigapGaoZaoYapbapaapdapcapFapeapgapfaphamyapjapiapkapSapAaplapCapBapEapDapIapHapJapJapLapKapNapMapOaoJapQaoJapRapNapTaiYapVapUapXapWaihaaaaabaabajbapYaqaapZaqcaqbajbalIaqeaaaaaaaaaamWaabappapnapqaabaabamWamWamWamWamWamWaqpamWamWamWamWamWamWamWamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapsaprapuaptapwapraprapxapraprapvaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaabapyaabalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBakBakBakBaslakWakZaomaomaomaomakUaqsapFapGapGapGaqtaquapGapFaqvalUaqwaqwalTaqxaqxapPapSapSaqyaqzapSapSapSanAaqAaqCaqBanxanAanAaqAaqDanxaqFaqEanxanAaqGaqGaqGaqGaqHaihaihaqIaqIaqIaqIajbalsaqJaqKalsajbaabaaaaaaaaaaaaamWaaaappaqdapqaaaaaaaabaabaabaabaabaabaabaabaqLaabaabaabaaaaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfaqhaqiaqgaqkaqlaqlaqlaqmaqjaqoaaaaaaaaaalwalwalwalvalvaabaabaaaaqnaaaaabaabalvalvalwalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBakXaqraqMaqNaqraqOapzaqQaqPakWaqRaqTaqSaqVaqUaqXaqWariaqYarjaqXaqXaqXaqXarkaqXaqXaqXarlarnarmarparoarrarqarsarsarsartarsaruarwarvarxaqXaryaqWaqXarzarBarAarCaqXariaqXaqXarDarEaqVaqXarFarHarGarJarIajbaabaaaaaaaaaaaaamWaaaappaqdapqaaaaaaaabaqZaraaraaraaraarbaraaraaraaraarcaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaardaqhareargaqlarharharharharharfaaaaaaaaaalwaaaaaaaabaaaaabaaaaaaaqnaaaaaaaabaaaaabaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBalDarKalDarLalDarNarMarParOarRarQarTarSasdascaseaseasfaseasgaseaseaseasiashasiasjasiasiassaskasnasmaspasoasoasoasoasqasoasoasoasrastasAasvasuasxaswaszasyasAasAasCasBasBasDasEasEasEasFasHasGasIamRamVaaaaaaaaaaaaaaaamWaabappaqdapqaaaaaaaabarUaabaaaaaaaabarUaabaabaaaaaaarUaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarVaqharWarYarharharharharZasaaqoaaaaaaaaaalwaabarXarXarXarXarXaaaasbaaaarXarXarXarXarXaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBamoasYasXasZasYasYataatbalBakWatcateatdatgatfatiathatkatjatmatlatnatjatpatoatratqatratsatuattatwatvatyatxatAatzatCatBatEatDatAatOatRatQaFLaFLaFLaFLaFLaFLaFLaxeatSatSatSatTatSatSatSarFatVatUatXatWajbaaaaaaaaaaaaaabamWaaaappaqdapqaabaabappapnapqaabaabappapnapqaabaabappapnapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfaqhaqiaqgaqkaqlaqlaqlaqmaqjaqoaaaaaaaaaalwalwalwalvalvaabaabaaaaqnaaaaabaabalvalvalwalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBakXaqraqMaqNaqraqOapzaqQaqPakWaqRaqSaqXaqVaqUaqXaqWariaqYarjaqXaqXaqXaqXarkaqXaqXaqXarlarnarmarparoarrarqarsarsarsartarsaruarwarvarxaqXaryaqWaqXarzarBarAarCaqXariaqXaqXarDarEaqVaqXarFarHarGarJarIajbaabaaaaaaaaaaaaamWaaaappaqdapqaaaaaaaabaqZaraaraaraaraarbaraaraaraaraarcaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaardaqhareargaqlarharharharharharfaaaaaaaaaalwaaaaaaaabaaaaabaaaaaaaqnaaaaaaaabaaaaabaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBalDarKalDarLalDarNarMarParOarRaqTarSarQasdascaseaseasfaseasgaseaseaseasiashasiasjasiasiassaskasnasmaspasoasoasoasoasqasoasoasoasrastasAasvasuasxaswaszasyasAasAasCasBasBasDasEasEasEasFasHasGasIamRamVaaaaaaaaaaaaaaaamWaabappaqdapqaaaaaaaabarUaabaaaaaaaabarUaabaabaaaaaaarUaabaaaamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarVaqharWarYarharharharharZasaaqoaaaaaaaaaalwaabarXarXarXarXarXaaaasbaaaarXarXarXarXarXaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBamoasYasXasZasYasYataatbalBakWaryatgatgatgatfatiathatkatjatmatlatnatjatpatoatratqatratsatuattatwatvatyatxatAatzatCatBatEatDatAatOatRatQaFLaFLaFLaFLaFLaFLaFLaxeatSatSatSatTatSatSatSarFatVatUatXatWajbaaaaaaaaaaaaaabamWaaaappaqdapqaabaabappapnapqaabaabappapnapqaabaabappapnapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasJaprapraprapwapraprapxapraprasKaaaaaaaaaalwaaaasMasLasLasLasLasNasPasOasQasQasQasQasRaaaalwaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaakBakBakBakBakBakBakBatYauaatZakWaubaudapFaufaueawKaugauhawKawKawKawKaujaukaucatdaulatdaucaunaumawHawHawHawHauAauoawVauEauEawXauEauFauEauEaFLauGauHaFLauHauIaFLauJauLauKauNauMauPauOauQajbajbajbajbajbajbaaaaaaaaaaaaaaaamWaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaabaqpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaabatFatFatFatFatFaaaatHaaaatFatFatFatFatFaabalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakBauRauTauSakWauUauVapGauXauWaucauYavaauZavcavbauZavdavfaveavhavgaviaveavjaAzavlavkavmavlavoavnavzavravBavAaAFavCaCyavDaFLauIavFavEavFauIaFLavGavHayVayVavIavKavJavLaHEaaaaabaaaaaaaaaaaaaaaaaaaaaaaaamWaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaaaaaaappaqdapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaaaaabaaaaaaaaaautaaaaaaaaaaabaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasSasUasTasWasVaaaaaaawBawBaudaudaudaudavMavNaucavOauWaucavPavRavQavTavSavUavdavfavVavXavWavZavYavjaAzawbawaawdawcawfaweawgaCyawhavAaAFawiawnawjaFLawAawDawCawEawAaFLawFawGayVawJawIawLawGawMaHEaabaabaaaaaaaaaaaaaaaaaaaaaaaaamWaaaappaqdapqaabaabappaqdapqaabaabappaqdapqaabaabappaqdapqaabamWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9074,7 +9072,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxiaEbazgaEeaxiaaaaxkaEfaykaykaxkaabaaaaabaaaaaaaabaaaaDbaEgaEdaaaaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEiaEiaEiaEiaEiaEiaEiaAmaElaElaElaDtaElaElaElaDuaAmaAxaAxaAxaAxaAxaAxaEBaEBaDvaDgaFFaDhaDvaDvaDvaEpaEpaEpaEpaDxaDwaBsaDyaDAaDzaBsaDsaDNaELaEMaEKaDPaENaDBaEOaEQaDRaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaabaabaaaaabaabaabaabaabaaaaDSaERaDSaaaaabaaaaabaaaaaaaaaaabaabaaaaaaaaaaaaaaaaAfaETaESaCPaEUaEWaEVaEXaBgaEZaEYaFbaFaaAfaFdaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFeaFfaFcaFfaFgaaaaFiaFhaykaFkaFiaabaaaaabaaaaaaaabaDbaDbaFjaFmaDbaaaaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEiaFlaFoaDCaDDaFvaFwaFsaDFaDEaDDaDGaFvaFvaDIaDHaFBaFAaFyaFyaFyaFyaFyaFyaFyaDJaDLaGraDMaEjaDOavqavqavqavqavqaBsaDQaEkaEhaEnaEmaBsaEoaDNaFTaFUaFPaDPaFVaEqaFWaFYaDPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaabaabaDSaDSaFZaDSaDSaabaaaaabaaaaaaaaaaaaaabaabaaaaaaaaaaaaaAfaGbaGaaCPaAfaCPaCPaGdaGcaAfaAfaAfaAfaAfaAfaabaabaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaFeaGfaFgaaaaaaaGgaFiaGeaFiaGhaabaaaaabaaaaaaaabaGjaGiaGlaGkaGjaGnaGnaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGoaGmaEraGpaEtaEsaEuaEsaEvaEsaExaEwaGraGraEzaEyaGraGraGraGraGraGraGraGraGraECaEEaEDaEGaEFaEHaAQaASaEIaASaAQaBsaEJaFnaEPaFnaFnaBsaDsaDNaFpaGNaFqaDPaFraGRaGQaEQaDPaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaabaGTaGUaGSaGWaGTaabaaaaabaaaaaaaabaaaaaaaabaabaaaaaaaGXaAfaCPaAfaCPaGYaGVaGYaMzaGYaGYaGYaHbaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaGnaGnaGnaGnaGnaGnaGnaGnaabaabaGjaHcaHaaGZaGjaHdaGnaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGoaHeaHgaHfaFuaFtaFxaHnaFzaHnaFCaHqaHnaHnaFEaFDaHnaHnaHnaHnaHnaHnaHnaFHaFJaFIaFKaHvaHxaEjaFMaAQaFNaASaFOaAQaBsaBsaBsaBsaBsaBsaBsaFQaDNaHCaFUaFRaDPaFSaHGaFWaHHaDPaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaabaGTaHKaHIaHJaGTaabaaaaabaaaaaaaabaaaaaaaGXaHNaGXaHNaGXaHbaGYaGYaGYaGYaGYaGYaGYaGYaGYaHOaHPaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaGnaGnaGnaGnaGnaGnaGnaGnaabaabaGjaHcaHaaGZaGjaHdaGnaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaGoaHearTaHfaFuaFtaFxaHnaFzaHnaFCaHqaHnaHnaFEaFDaHnaHnaHnaHnaHnaHnaHnaFHaFJaFIaFKaHvaHxaEjaFMaAQaFNaASaFOaAQaBsaBsaBsaBsaBsaBsaBsaFQaDNaHCaFUaFRaDPaFSaHGaFWaHHaDPaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaabaGTaHKaHIaHJaGTaabaaaaabaaaaaaaabaaaaaaaGXaHNaGXaHNaGXaHbaGYaGYaGYaGYaGYaGYaGYaGYaGYaHOaHPaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaHQaHLaHQaaaaaaaaaaGnaHSaHTaHSaHRaHMaHUaGnaaaaaaaGjaHVaHXaHWaIaaHSaGnaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIbaIcaIcaIeaIeaFXaLAaIhaIhaGqaLAaGsaIlaIiaIiaIlaGtaIlaIoaIoaIoaIoaIoaIoaImaIoaIoaInaIraIpaEjaGuavqaAQaAQaAQavqavqavqaydaGvaGwavqavqaGxaDNaIwaFUaGyaDPaGzaGRaGQaEQaDPaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaHQaIzaHQaaaaabaGTaIBaIAaICaGTaIFaIFaIFaIFaIFaHNaHNaHNaGXaIDaGYaHOaHPaMzaGYaMzaMzaMzaGXaIEaGXaGXaGXaGXaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaIIaIGaIIaaaaaaaabaGnaIHaILaHSaHSaIJaHSaGnaIIaIIaGjaGjaIMaIKaIaaHSaGnaGnaIIaIIaIIaGnaGnaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaIbaIPaGAaGCaGBaGDaLAaGFaGEaGGaLAaGHaIlaIWaIZaGJaGIaJbaJaaJdaJcaJfaJeaJhaJgaJjaJiaJkaFFaFGaEjaGKavqavqavqavqavqavqavqavqavqavqavqavqaGLaGOaGMaHhaGPaDPaHiaHjaJyaJBaDPaabaJEaJFaJFaJFaJFaJFaJGaabaabaaaaaaaaaaaaaHNaJCaHNaaaaIFaGTaGTaJDaJHaGTaJIaGYaGYaGYaMzaJJaGYaJMaGXaGYaGYaGYaJKaMzaGYaGXaJNaJLaGXaGYaJOaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJPaJSaJQaaaaJRaJVaJTaabaabaIIaHSaIIaaaaaaaabaGnaJXaJYaJZaJWaJUaKaaGnaKbaHSaKdaKcaKfaKeaKeaKeaKeaKeaKeaKeaKeaKgaGnaaaaKhaaaaaaaaaaaaaaaaaaaaaaaaaIbaKkaHkaKmaKnaHlaLAaHmaKraHoaLAaGHaIlaKtaKuaKvaGIaJbaKqaKsaKsaKsaKsaKsaJgaKwaJiaFyaFFaFGaEjaFMaLPaLPaLPaLPaLPaHpaKOaKOaKOaKOaKOaKOaKOaDNaDNaHraDNaDPaDPaHsaDPaDPaDPaKOaKPaKQaKQaKQaKQaKQaKPaKOaabaaaaaaaaaaaaaHNaKJaKMaaaaIFaKRaKTaKSaKWaGYaGYaGYaMzaGYaMzaKXaGYaGYaGXaGYaKVaKUaKXaIEaGYaGXaKZaKYaGXaGYaLcaGXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9085,7 +9083,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPVaSdaSdaLdaMsaPZaQaaLdaMsaPZaQaaLdaGnaLkaGnaGnaGnaGnaGnaHSaGnaHSaQbaPXaHSaHSaGnaLsaGnaPYaabaPYaGnaJYaOZaGnaQeaQcaGnaNAaKaaGnaLsaMAaMAaQgaQgaQgaQgaQgaQgaQgaQgaQgaPiaPiaPjaQhaQiaQjaQkaQlaQdaKEaKDaKFaKFaKFaKFaKFaKGaKIaKHaKFaKFaKFaKKaKKaKLaLzaKNaLBaEjaHBaLPaQzaKpaLNaLPaITaOpaPAaQEaQFaOpaMVaPCaPDaPDaPEaQGaOqaPGaPIaPIaPJaKBaKCaODaKQaKQaKQaKQaKQaODaQHaPMaODaaaaaaaGXaQIaGYaGYaQBaMzaQCaHOaQLaQJaHbaGXaOFaHbaGXaQKaGYaGXaQMaGYaGXaQOaQNaQPaOGaQQaOGaQSaQRaQUaQTaQVaQYaQWaMqaMraMrafOafOaMraMraMraMraabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaQXaRbaOQaRbaQZaQZaQZaRaaQZaQZaQZaRdaRcaReaReaReaReaRfaGnaHSaGnaRhaRgaRiaHSaRjaPcaLsaGnaGnaGnaGnaGnaGnaPcaGnaHSaRiaLkaHSaHSaHSaRkaRmaRlaRnaRnaRnaRnaRoaRnaRnaRpaRqaRlaRsaRraRraRraRraRraRraRraRtaRwaRwaRwaRwaRxaRwaRwaLDaRwaRwaRxaRwaRwaRwaRwaRzaLFaLKaLGaLLaLPaRDaLMaLWaLOaLXaOpaRJaRKaRLaOpaMVaRMaRNaRNaRGaMWaOqaRPaRQaRQaRIaLYaLZaOzaKQaKQaKQaKQaKQaOAaRVaRRaODaaaaaaaGXaGYaGYaGYaGYaGYaGYaQPaOGaOGaOGaOGaOGaOGaOGaKSaGYaGYaGYaGYaMnaGYaGYaMkaGYaRTaRSaRXaRWaRYaOLaOLaOLaRZaMqaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSaaSdaSdaSbaSfaScaSgaSiaSjaShaSkaSjaSmaSlaSjaSjaSnaGnaHSaGnaSoaHSaHSaSpaSqaGnaNIaKgaHSaHSaHSaHSaHSaHSaPcaSsaHSaGnaNxaNxaGnaSraMAaSuaSwaSvaSvaSvaSxaSvaSvaSvaSyaSuaSzaSAaSAaSAaSAaSAaSAaSAaPiaRwaSBaSCaSEaSDaMdaMcaMDaMBaMEaSJaSLaSCaSMaRwaSNaFFaSOaEjaMFaLPaSRaMGaSTaSSaMHaSUaSXaSWaSWaMIaMJaSZaSYaTaaTaaTbaTeaTcaMVaMVaTdaKBaThaTfaKQaKQaKQaKQaKQaTfaKOaKOaKOaGXaGXaGXaHbaMzaMzaIEaGXaGXaMkaMzaGXaTgaMzaGXaIEaGXaMkaQIaMzaGXaIEaGXaGYaQIaMkaGYaTiaMqaTjaQRaTlaTkaTmaQRaTnaMqaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaMsaSdaRUaSdaToaSfaSfaTpaSdaRUaSdaTqaTraTsaTtaGnaHSaPcaPcaGnaGnaGnaTuaTuaTuaIfaTuaTuaTuaTuaTuaHSaGnaGnaGnaGnaGnaGnaGnaSraKbaStaaaaabaaaaabaaaaabaaaaabaaaaSuaSzaSAaTwaTvaTyaTxaTAaSAaPiaRwaTzaTzaTCaTBaTEaTDaTFaTDaMKaTGaTIaTzaTzaRwaSNaFFaTJaEjaMFaLPaOnaKpaLNaLPaMNaMLaMUaMTaMYaMXaNaaMZaNdaNcaNdaNeaNSaNRaNUaNTaNXaNVaKOaTfaKQaKQaKQaKQaKQaTfaGXaLcaGYaTXaUaaMzaGXaMzaLcaGYaGXaLcaMkaGXaTZaGYaGXaUbaGYaMzaUdaUcaGXaUeaGYaMzaIEaIEaMkaIEaUfaMqaUgaQRaUiaUhaUiaQRaUjaMqaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaMsaSdaRUaSdaToaSfaSfaTpaSdaRUaSdaTqaTraTsaTtaGnaHSaPcaPcaGnaGnaGnaTuaTuaTuaIfaTuaTuaTuaTuaTuaHSaGnaGnaGnaGnaGnaGnaGnaSraKbaStaaaaabaaaaabaaaaabaaaaabaaaaSuaSzaSAaTwaTvaTyaTxaTAaSAaPiaRwaTzaTzaTCaTBaTEaTDaTFaTDaMKaTGaTIaTzaTzaRwatcaFFaTJaEjaMFaLPaOnaKpaLNaLPaMNaMLaMUaMTaMYaMXaNaaMZaNdaNcaNdaNeaNSaNRaNUaNTaNXaNVaKOaTfaKQaKQaKQaKQaKQaTfaGXaLcaGYaTXaUaaMzaGXaMzaLcaGYaGXaLcaMkaGXaTZaGYaGXaUbaGYaMzaUdaUcaGXaUeaGYaMzaIEaIEaMkaIEaUfaMqaUgaQRaUiaUhaUiaQRaUjaMqaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaLdaLdaSdaOQaSdaUkaUoaUmaUlaSdaOQaSdaSdaLdaUnaUpaGnaHSaHSaHSaHSaHSaHSaTuaUuaUvaUqaUxaUsaUzaUuaTuaUwaUAaUyaUyaUyaUyaUyaUyaUBaNxaStaabaUEaUEaUEaUEaUEaUEaUEaabaSuaSzaSAaUFaUCaUHaUDaUFaSAaPiaRwaUJaUJaUJaUGaULaSCaUIaSCaULaUKaUJaUJaUJaRwaSNaFFaUMaEjaMFaLPaOjaKpaLNaLPaNYaUNaUQaUQaUQaUQaUQaUQaUQaNZaUQaUSaUSaUSaUSaUSaOaaGXaKOaTfaKQaKQaKQaKQaKQaTfaGXaGXaGYaURaUaaMzaUTaGXaGYaGYaGXaGYaMkaMzaGYaGYaGXaGYaGYaMzaMkaGVaGXaGYaGYaMzaUWaGYaMkaGYaUUaUYaUYaMqaMqaMqaMqaMqaMqaMqaMraMraMraMraMraabaaaaaaaaaaaaaaaaaaaaaaaaabpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSdaRUaSdaSdaSdaSdaSdaSdaRUaSdaUZaLdaUVaUXaVcaVcaVcaVcaVcaVcaVaaTuaUuaVeaUqaVfaVeaVeaUuaTuaVgaVbaViaViaViaViaViaViaViaViaVjaaaaUEaVkaVdaVmaVlaVnaUEaaaaSuaSzaSAaVpaVoaVraVqaUFaSAaPiaRwaVsaVsaTCaVtaVuaTDaTFaTDaVuaVvaVwaTzaTzaRwaSNaFFaSOaEjaObaLPaOdaOcaLNaLPaOeaUNaUQaVzaVAaVCaVCaUQaVBaOfaVDaUSaVGaVFaVHaUSaOgaGXaaaaVKaVLaVLaVLaVLaVLaVMaaaaGXaGYaVNaVJaMzaMzaGXaGXaMzaMzaVOaVPaMzaGXaHPaGXaGXaMzaMzaVRaVQaGXaGXaGXaQLaUWaGYaMkaGYaUUaHOaHbaOFaYPbcDaVhbcDaYPaYPaYPaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaVVaVSaVXaVSaVSaVYaVZaVSaVSaVXaWaaVWaLdaToaWbaVcaWdaWcaWfaWeaWhaWgaTuaUuaVeaUqaWjaVeaVeaUuaTuaWkaWlaWiaWnaWmaWoaWqaWraWpaWtaVjaabaUEaWuaWsaWwaWvaWxaUEaabaSuaSzaSAaWzaWAaWyaWCaWBaSAaPiaRwaSBaSCaWEaWDaULaSCaWFaSCaULaWGaSLaSCaSMaRwaSNaFFaWJaEjaMFaLPaISaOhaLNaLPaOiaWHaUQaWKaVEaVEaVEaWLaOlaOkaOmaUSaWQaWPaOxaOtaPgaHPaaaaaaaaaaaaaaaaaaaaaaaaaaaaGXaWVaWUaWXaWWaWYaGXaNhaGYaQIaMkaGYaGXaaaaGXaGYaGYaGYaGYaMkaXbaXaaWZaWZaWZaWZaXcaXeaXdaXhaXiaXfaXiaXgaVTaVTaVUaXkaXjaXlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 49f9b48d156ca990fd68267d785631690e24e889 Mon Sep 17 00:00:00 2001 From: Tayyyyyyy Date: Thu, 25 May 2017 15:17:38 -0700 Subject: [PATCH 12/76] Visibly message when someone points a gun at something --- code/modules/mob/living/living.dm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 525559e8e6c..7f0098bafac 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -59,6 +59,15 @@ return 0 if(!..()) return 0 + if(ishuman(src)) + var/obj/item/hand_item = src.get_active_hand() + if(hand_item && istype(hand_item, /obj/item/weapon/gun) && A != hand_item) + if(src.a_intent == I_HELP || !ismob(A)) + visible_message("[src] points to [A] with [hand_item]") + return 1 + A.visible_message("[src] points [hand_item] at [A]!", + "[src] points [hand_item] at you!") + return 1 visible_message("[src] points to [A]") return 1 From 4c276bb47f1046d1ffdd70c53301d09ede182c41 Mon Sep 17 00:00:00 2001 From: Tayyyyyyy Date: Thu, 25 May 2017 15:57:51 -0700 Subject: [PATCH 13/76] Fix bad style --- code/modules/mob/living/living.dm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 7f0098bafac..1b49f5cd28b 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -59,15 +59,14 @@ return 0 if(!..()) return 0 - if(ishuman(src)) - var/obj/item/hand_item = src.get_active_hand() - if(hand_item && istype(hand_item, /obj/item/weapon/gun) && A != hand_item) - if(src.a_intent == I_HELP || !ismob(A)) - visible_message("[src] points to [A] with [hand_item]") - return 1 - A.visible_message("[src] points [hand_item] at [A]!", - "[src] points [hand_item] at you!") + var/obj/item/hand_item = get_active_hand() + if(istype(hand_item, /obj/item/weapon/gun) && A != hand_item) + if(a_intent == I_HELP || !ismob(A)) + visible_message("[src] points to [A] with [hand_item]") return 1 + A.visible_message("[src] points [hand_item] at [A]!", + "[src] points [hand_item] at you!") + return 1 visible_message("[src] points to [A]") return 1 From beec82745948a15bec86a47fa249329644c6e114 Mon Sep 17 00:00:00 2001 From: Tayyyyyyy Date: Thu, 25 May 2017 17:58:51 -0700 Subject: [PATCH 14/76] Add targetOn sound notification --- code/modules/mob/living/living.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 1b49f5cd28b..4394de1fa6b 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -66,6 +66,7 @@ return 1 A.visible_message("[src] points [hand_item] at [A]!", "[src] points [hand_item] at you!") + A << 'sound/weapons/TargetOn.ogg' return 1 visible_message("[src] points to [A]") return 1 From 6ce8612d667cc060915f97398b2344fea0ef2ea6 Mon Sep 17 00:00:00 2001 From: Xantholne Date: Fri, 26 May 2017 04:31:56 -0600 Subject: [PATCH 15/76] Loadout Requirement Fixes --- code/modules/client/preference/loadout/loadout_hat.dm | 2 +- code/modules/client/preference/loadout/loadout_racial.dm | 2 +- code/modules/client/preference/loadout/loadout_suit.dm | 2 +- code/modules/client/preference/loadout/loadout_uniform.dm | 6 +++--- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/code/modules/client/preference/loadout/loadout_hat.dm b/code/modules/client/preference/loadout/loadout_hat.dm index 1b1978f7d71..196f9f65ca0 100644 --- a/code/modules/client/preference/loadout/loadout_hat.dm +++ b/code/modules/client/preference/loadout/loadout_hat.dm @@ -137,7 +137,7 @@ /datum/gear/hat/med_beret display_name = "medical beret" path = /obj/item/clothing/head/beret/med - allowed_roles = list("Chief Medical Officer", "Medical Doctor" , "Virologist", "Brig Physician") + allowed_roles = list("Chief Medical Officer", "Medical Doctor" , "Virologist", "Brig Physician" , "Coroner") /datum/gear/hat/surgicalcap_purple display_name = "surgical cap, purple" diff --git a/code/modules/client/preference/loadout/loadout_racial.dm b/code/modules/client/preference/loadout/loadout_racial.dm index e9d89a31d34..f7d96011e5c 100644 --- a/code/modules/client/preference/loadout/loadout_racial.dm +++ b/code/modules/client/preference/loadout/loadout_racial.dm @@ -19,7 +19,7 @@ display_name = "lightweight veil" description = "A common traditional nano-fiber veil worn by many Tajaran, It is rare and offensive to see it on other races. This one has an in-built medical HUD." path = /obj/item/clothing/glasses/hud/health/tajblind - allowed_roles = list("Chief Medical Officer", "Medical Doctor", "Chemist", "Psychiatrist", "Paramedic", "Virologist", "Brig Physician") + allowed_roles = list("Chief Medical Officer", "Medical Doctor", "Chemist", "Psychiatrist", "Paramedic", "Virologist", "Brig Physician" , "Coroner") /datum/gear/racial/tajsci display_name = "hi-tech veil" diff --git a/code/modules/client/preference/loadout/loadout_suit.dm b/code/modules/client/preference/loadout/loadout_suit.dm index 2ac4b3bb7e9..ae43a10ee89 100644 --- a/code/modules/client/preference/loadout/loadout_suit.dm +++ b/code/modules/client/preference/loadout/loadout_suit.dm @@ -29,7 +29,7 @@ /datum/gear/suit/coat/job/med display_name = "winter coat, medical" path = /obj/item/clothing/suit/hooded/wintercoat/medical - allowed_roles = list("Chief Medical Officer", "Medical Doctor", "Chemist", "Psychiatrist", "Paramedic", "Virologist", "Brig Physician") + allowed_roles = list("Chief Medical Officer", "Medical Doctor", "Chemist", "Psychiatrist", "Paramedic", "Virologist", "Brig Physician" , "Coroner") /datum/gear/suit/coat/job/sci display_name = "winter coat, science" diff --git a/code/modules/client/preference/loadout/loadout_uniform.dm b/code/modules/client/preference/loadout/loadout_uniform.dm index 7ffb7e09516..4efd372a04b 100644 --- a/code/modules/client/preference/loadout/loadout_uniform.dm +++ b/code/modules/client/preference/loadout/loadout_uniform.dm @@ -61,17 +61,17 @@ /datum/gear/uniform/skirt/job/viro display_name = "skirt, virologist" path = /obj/item/clothing/under/rank/virologist/skirt - allowed_roles = list("Chief Medical Officer","Medical Doctor") + allowed_roles = list("Chief Medical Officer","Medical Doctor" , "Virologist") /datum/gear/uniform/skirt/job/med display_name = "skirt, medical" path = /obj/item/clothing/under/rank/medical/skirt - allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic","Brig Physician") + allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic","Brig Physician", "Virologist" , "Coroner") /datum/gear/uniform/skirt/job/phys display_name = "skirt, physician" path = /obj/item/clothing/under/rank/security/brigphys/skirt - allowed_roles = list("Brig Physician") + allowed_roles = list("Brig Physician" , "Chief Medical Officer") /datum/gear/uniform/skirt/job/sci display_name = "skirt, scientist" From d668cb7bf52ba25d12684fd753408aa26bff5e67 Mon Sep 17 00:00:00 2001 From: Sam Date: Fri, 26 May 2017 22:05:08 +0100 Subject: [PATCH 16/76] why are they bigger than the headsets they go in... --- code/game/objects/items/devices/radio/encryptionkey.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm index 7350f3965cc..9f3d57862e9 100644 --- a/code/game/objects/items/devices/radio/encryptionkey.dm +++ b/code/game/objects/items/devices/radio/encryptionkey.dm @@ -5,6 +5,7 @@ icon = 'icons/obj/radio.dmi' icon_state = "cypherkey" item_state = "" + w_class = 1 var/translate_binary = 0 var/translate_hive = 0 var/syndie = 0 @@ -147,4 +148,4 @@ name = "AI Integrated Encryption Key" desc = "Integrated encryption key" icon_state = "cap_cypherkey" - channels = list("Command" = 1, "Security" = 1, "Engineering" = 1, "Science" = 1, "Medical" = 1, "Supply" = 1, "Service" = 1, "AI Private" = 1) \ No newline at end of file + channels = list("Command" = 1, "Security" = 1, "Engineering" = 1, "Science" = 1, "Medical" = 1, "Supply" = 1, "Service" = 1, "AI Private" = 1) From 743887387f03c6cf8835e3de8a4c224b103cd2cc Mon Sep 17 00:00:00 2001 From: GuppyLaxx Date: Fri, 26 May 2017 20:05:15 -0400 Subject: [PATCH 17/76] makes plasmaman helmets weld proof and flash proof? --- code/modules/clothing/spacesuits/plasmamen.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm index 9ece7d54aa3..c7c093dd997 100644 --- a/code/modules/clothing/spacesuits/plasmamen.dm +++ b/code/modules/clothing/spacesuits/plasmamen.dm @@ -80,6 +80,7 @@ var/base_state = "plasmaman_helmet" var/brightness_on = 4 //luminosity when on var/on = 0 + flash_protect = 2 actions_types = list(/datum/action/item_action/toggle_helmet_light) /obj/item/clothing/head/helmet/space/eva/plasmaman/attack_self(mob/user) From 24eed4c7401c2fb86806b99bb838ada20bdef0c6 Mon Sep 17 00:00:00 2001 From: Sam Date: Sat, 27 May 2017 12:38:24 +0100 Subject: [PATCH 18/76] Using the defines --- code/game/objects/items/devices/radio/encryptionkey.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm index 9f3d57862e9..a31e09e896c 100644 --- a/code/game/objects/items/devices/radio/encryptionkey.dm +++ b/code/game/objects/items/devices/radio/encryptionkey.dm @@ -5,7 +5,7 @@ icon = 'icons/obj/radio.dmi' icon_state = "cypherkey" item_state = "" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/translate_binary = 0 var/translate_hive = 0 var/syndie = 0 From 07e0f768d608f1250bb7ee0bac6464552b59b674 Mon Sep 17 00:00:00 2001 From: Sam Date: Sat, 27 May 2017 16:34:49 +0100 Subject: [PATCH 19/76] Using Weight Defines --- code/game/gamemodes/antag_spawner.dm | 2 +- .../gamemodes/changeling/powers/mutations.dm | 2 +- code/game/gamemodes/cult/cult_items.dm | 8 +-- code/game/gamemodes/cult/cult_structures.dm | 2 +- code/game/gamemodes/cult/ritual.dm | 2 +- .../gamemodes/miniantags/revenant/revenant.dm | 2 +- code/game/gamemodes/nuclear/pinpointer.dm | 2 +- code/game/gamemodes/wizard/artefact.dm | 12 ++--- code/game/gamemodes/wizard/godhand.dm | 2 +- code/game/gamemodes/wizard/soulstone.dm | 4 +- code/game/gamemodes/wizard/spellbook.dm | 4 +- code/game/machinery/alarm.dm | 2 +- code/game/machinery/camera/camera_assembly.dm | 2 +- .../machinery/computer/HolodeckControl.dm | 10 ++-- code/game/machinery/computer/arcade.dm | 2 +- .../game/machinery/computer/buildandrepair.dm | 2 +- .../machinery/doors/airlock_electronics.dm | 7 ++- code/game/machinery/doors/firedoor.dm | 2 +- code/game/machinery/dye_generator.dm | 2 +- code/game/machinery/firealarm.dm | 2 +- code/game/machinery/newscaster.dm | 2 +- code/game/machinery/pipe/construction.dm | 6 +-- code/game/machinery/syndicatebomb.dm | 8 +-- code/game/mecha/mecha_control_console.dm | 2 +- code/game/mecha/mecha_parts.dm | 6 +-- code/game/objects/items.dm | 16 +++--- code/game/objects/items/blueprints.dm | 4 +- code/game/objects/items/bodybag.dm | 4 +- code/game/objects/items/candle.dm | 4 +- code/game/objects/items/control_wand.dm | 2 +- code/game/objects/items/crayons.dm | 2 +- code/game/objects/items/devices/aicard.dm | 2 +- code/game/objects/items/devices/camera_bug.dm | 2 +- .../objects/items/devices/chameleonproj.dm | 4 +- code/game/objects/items/devices/flash.dm | 2 +- code/game/objects/items/devices/flashlight.dm | 14 ++--- .../objects/items/devices/floor_painter.dm | 28 +++++----- .../objects/items/devices/laserpointer.dm | 2 +- code/game/objects/items/devices/megaphone.dm | 2 +- code/game/objects/items/devices/paicard.dm | 2 +- code/game/objects/items/devices/powersink.dm | 2 +- .../items/devices/radio/electropack.dm | 2 +- .../objects/items/devices/radio/intercom.dm | 4 +- .../game/objects/items/devices/radio/radio.dm | 2 +- code/game/objects/items/devices/scanners.dm | 16 +++--- .../objects/items/devices/sensor_device.dm | 4 +- .../objects/items/devices/taperecorder.dm | 4 +- .../objects/items/devices/traitordevices.dm | 4 +- .../objects/items/devices/transfer_valve.dm | 10 ++-- code/game/objects/items/devices/whistle.dm | 3 +- code/game/objects/items/documents.dm | 4 +- code/game/objects/items/flag.dm | 10 ++-- code/game/objects/items/latexballoon.dm | 4 +- code/game/objects/items/misc.dm | 4 +- code/game/objects/items/policetape.dm | 4 +- code/game/objects/items/stacks/medical.dm | 2 +- code/game/objects/items/stacks/rods.dm | 2 +- .../objects/items/stacks/sheets/leather.dm | 14 ++--- .../game/objects/items/stacks/sheets/light.dm | 2 +- .../objects/items/stacks/sheets/mineral.dm | 6 +-- .../items/stacks/sheets/sheet_types.dm | 2 +- .../objects/items/stacks/sheets/sheets.dm | 4 +- code/game/objects/items/stacks/telecrystal.dm | 2 +- .../objects/items/stacks/tiles/tile_types.dm | 4 +- code/game/objects/items/toys.dm | 52 +++++++++---------- code/game/objects/items/trash.dm | 2 +- code/game/objects/items/weapons/AI_modules.dm | 4 +- code/game/objects/items/weapons/RCD.dm | 2 +- code/game/objects/items/weapons/RSF.dm | 4 +- .../objects/items/weapons/alien_specific.dm | 4 +- .../objects/items/weapons/bee_briefcase.dm | 2 +- code/game/objects/items/weapons/cards_ids.dm | 2 +- code/game/objects/items/weapons/caution.dm | 2 +- .../objects/items/weapons/chrono_eraser.dm | 4 +- code/game/objects/items/weapons/cigs.dm | 8 +-- .../game/objects/items/weapons/clown_items.dm | 4 +- code/game/objects/items/weapons/cosmetics.dm | 4 +- code/game/objects/items/weapons/courtroom.dm | 6 +-- code/game/objects/items/weapons/defib.dm | 8 +-- code/game/objects/items/weapons/dice.dm | 2 +- code/game/objects/items/weapons/disks.dm | 2 +- .../objects/items/weapons/dna_injector.dm | 2 +- .../objects/items/weapons/extinguisher.dm | 4 +- .../objects/items/weapons/flamethrower.dm | 2 +- code/game/objects/items/weapons/garrote.dm | 2 +- .../items/weapons/grenades/bananade.dm | 2 +- .../items/weapons/grenades/chem_grenade.dm | 4 +- .../items/weapons/grenades/clowngrenade.dm | 4 +- .../items/weapons/grenades/ghettobomb.dm | 4 +- .../objects/items/weapons/grenades/grenade.dm | 2 +- code/game/objects/items/weapons/handcuffs.dm | 2 +- code/game/objects/items/weapons/holosign.dm | 2 +- .../objects/items/weapons/holy_weapons.dm | 24 ++++----- .../items/weapons/implants/implant_storage.dm | 8 +-- .../items/weapons/implants/implantcase.dm | 4 +- .../items/weapons/implants/implanter.dm | 4 +- .../items/weapons/implants/implantpad.dm | 2 +- code/game/objects/items/weapons/kitchen.dm | 12 ++--- code/game/objects/items/weapons/legcuffs.dm | 6 +-- code/game/objects/items/weapons/lighters.dm | 8 +-- .../objects/items/weapons/melee/energy.dm | 14 ++--- code/game/objects/items/weapons/melee/misc.dm | 10 ++-- code/game/objects/items/weapons/misc.dm | 10 ++-- code/game/objects/items/weapons/mop.dm | 2 +- code/game/objects/items/weapons/paint.dm | 4 +- .../objects/items/weapons/pneumaticCannon.dm | 4 +- code/game/objects/items/weapons/powerfist.dm | 2 +- code/game/objects/items/weapons/scissors.dm | 2 +- code/game/objects/items/weapons/scrolls.dm | 4 +- code/game/objects/items/weapons/shards.dm | 4 +- code/game/objects/items/weapons/shields.dm | 14 ++--- code/game/objects/items/weapons/signs.dm | 4 +- code/game/objects/items/weapons/soap.dm | 4 +- code/game/objects/items/weapons/staff.dm | 4 +- .../game/objects/items/weapons/stock_parts.dm | 12 ++--- .../objects/items/weapons/storage/backpack.dm | 12 ++--- .../objects/items/weapons/storage/bags.dm | 40 +++++++------- .../objects/items/weapons/storage/belt.dm | 24 ++++----- .../objects/items/weapons/storage/bible.dm | 2 +- .../objects/items/weapons/storage/boxes.dm | 6 +-- .../items/weapons/storage/briefcase.dm | 6 +-- .../objects/items/weapons/storage/fancy.dm | 8 +-- .../objects/items/weapons/storage/firstaid.dm | 6 +-- .../objects/items/weapons/storage/lockbox.dm | 10 ++-- .../objects/items/weapons/storage/secure.dm | 10 ++-- .../objects/items/weapons/storage/storage.dm | 6 +-- .../objects/items/weapons/storage/toolbox.dm | 6 +-- .../items/weapons/storage/uplink_kits.dm | 10 ++-- .../objects/items/weapons/storage/wallets.dm | 2 +- code/game/objects/items/weapons/stunbaton.dm | 4 +- .../objects/items/weapons/swords_axes_etc.dm | 8 +-- .../objects/items/weapons/syndie_uplink.dm | 6 +-- .../objects/items/weapons/tanks/jetpack.dm | 6 +-- .../objects/items/weapons/tanks/tank_types.dm | 2 +- .../game/objects/items/weapons/tanks/tanks.dm | 2 +- .../objects/items/weapons/tanks/watertank.dm | 6 +-- code/game/objects/items/weapons/tape.dm | 4 +- .../objects/items/weapons/teleportation.dm | 4 +- code/game/objects/items/weapons/twohanded.dm | 22 ++++---- .../objects/items/weapons/vending_items.dm | 3 +- code/game/objects/items/weapons/weaponry.dm | 12 ++--- code/game/objects/items/weapons/whetstone.dm | 4 +- code/game/objects/structures/bedsheet_bin.dm | 6 +-- code/game/objects/structures/flora.dm | 6 +-- code/game/objects/structures/inflatable.dm | 4 +- code/game/objects/structures/signs.dm | 3 +- .../structures/stool_bed_chair_nest/bed.dm | 4 +- .../structures/stool_bed_chair_nest/stools.dm | 2 +- code/game/objects/structures/watercloset.dm | 4 +- 149 files changed, 430 insertions(+), 436 deletions(-) diff --git a/code/game/gamemodes/antag_spawner.dm b/code/game/gamemodes/antag_spawner.dm index e0187e940e4..d85b3c91258 100644 --- a/code/game/gamemodes/antag_spawner.dm +++ b/code/game/gamemodes/antag_spawner.dm @@ -1,7 +1,7 @@ /obj/item/weapon/antag_spawner throw_speed = 1 throw_range = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/used = 0 /obj/item/weapon/antag_spawner/proc/spawn_antag(var/client/C, var/turf/T, var/type = "") diff --git a/code/game/gamemodes/changeling/powers/mutations.dm b/code/game/gamemodes/changeling/powers/mutations.dm index 9a6438853c0..c7d393b77a7 100644 --- a/code/game/gamemodes/changeling/powers/mutations.dm +++ b/code/game/gamemodes/changeling/powers/mutations.dm @@ -125,7 +125,7 @@ icon_state = "arm_blade" item_state = "arm_blade" flags = ABSTRACT | NODROP - w_class = 5 + w_class = WEIGHT_CLASS_HUGE sharp = 1 edge = 1 force = 25 diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm index 6ab24e1d8b4..97511414e7a 100644 --- a/code/game/gamemodes/cult/cult_items.dm +++ b/code/game/gamemodes/cult/cult_items.dm @@ -3,7 +3,7 @@ desc = "An arcane weapon wielded by the followers of a cult." icon_state = "cultblade" item_state = "cultblade" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 30 throwforce = 10 sharp = 1 @@ -38,7 +38,7 @@ desc = "A strange dagger said to be used by sinister groups for \"preparing\" a corpse before sacrificing it to their dark gods." icon = 'icons/obj/wizard.dmi' icon_state = "render" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 15 throwforce = 25 var/cooldown = 0 @@ -123,7 +123,7 @@ icon_state = "cult_armour" item_state = "cult_armour" desc = "A bulky suit of armour, bristling with spikes. It looks space proof." - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade,/obj/item/weapon/tank) slowdown = 1 armor = list(melee = 60, bullet = 50, laser = 30, energy = 15, bomb = 30, bio = 30, rad = 30) @@ -133,7 +133,7 @@ desc = "Empowered garb which creates a powerful shield around the user." icon_state = "cult_armour" item_state = "cult_armour" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY armor = list(melee = 50, bullet = 40, laser = 50, energy = 30, bomb = 50, bio = 30, rad = 30) body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade) diff --git a/code/game/gamemodes/cult/cult_structures.dm b/code/game/gamemodes/cult/cult_structures.dm index 1f35890373c..60b9fcb2c85 100644 --- a/code/game/gamemodes/cult/cult_structures.dm +++ b/code/game/gamemodes/cult/cult_structures.dm @@ -261,7 +261,7 @@ var/list/blacklisted_pylon_turfs = typecacheof(list( /obj/item/weapon/storage/box/cult name = "Dark Forge Cache" can_hold = list("/obj/item/clothing/suit/space/cult", "/obj/item/clothing/head/helmet/space/cult") - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/storage/box/cult/New() ..() diff --git a/code/game/gamemodes/cult/ritual.dm b/code/game/gamemodes/cult/ritual.dm index 3a48f472603..1553ec0aa94 100644 --- a/code/game/gamemodes/cult/ritual.dm +++ b/code/game/gamemodes/cult/ritual.dm @@ -24,7 +24,7 @@ icon_state ="tome" throw_speed = 2 throw_range = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/scribereduct = 0 var/canbypass = 0 //ADMINBUS diff --git a/code/game/gamemodes/miniantags/revenant/revenant.dm b/code/game/gamemodes/miniantags/revenant/revenant.dm index 4a2a629c1d2..ca9e7b7ac28 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant.dm @@ -317,7 +317,7 @@ desc = "A pile of fine blue dust. Small tendrils of violet mist swirl around it." icon = 'icons/effects/effects.dmi' icon_state = "revenantEctoplasm" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/reforming = 1 var/essence = 75 //the maximum essence of the reforming revenant var/inert = 0 diff --git a/code/game/gamemodes/nuclear/pinpointer.dm b/code/game/gamemodes/nuclear/pinpointer.dm index f118bf548f0..4ed35c5b707 100644 --- a/code/game/gamemodes/nuclear/pinpointer.dm +++ b/code/game/gamemodes/nuclear/pinpointer.dm @@ -4,7 +4,7 @@ icon_state = "pinoff" flags = CONDUCT slot_flags = SLOT_PDA | SLOT_BELT - w_class = 2 + w_class = WEIGHT_CLASS_SMALL item_state = "electronic" throw_speed = 4 throw_range = 20 diff --git a/code/game/gamemodes/wizard/artefact.dm b/code/game/gamemodes/wizard/artefact.dm index d47610140ae..1dd20906704 100644 --- a/code/game/gamemodes/wizard/artefact.dm +++ b/code/game/gamemodes/wizard/artefact.dm @@ -7,7 +7,7 @@ icon_state ="scroll2" throw_speed = 1 throw_range = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/used = 0 @@ -119,7 +119,7 @@ item_state = "render" force = 15 throwforce = 10 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL hitsound = 'sound/weapons/bladeslice.ogg' var/charged = 1 var/spawn_type = /obj/singularity/narsie/wizard @@ -232,7 +232,7 @@ var/global/list/multiverse = list() throwforce = 10 sharp = 1 edge = 1 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") var/faction = list("unassigned") var/cooldown = 0 @@ -616,7 +616,7 @@ var/global/list/multiverse = list() icon_state = "necrostone" item_state = "electronic" origin_tech = "bluespace=4;materials=4" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/list/spooky_scaries = list() var/unlimited = 0 var/heresy = 0 @@ -753,7 +753,7 @@ var/global/list/multiverse = list() icon_state = "nyacrostone" item_state = "electronic" origin_tech = "bluespace=4;materials=4" - w_class = 1 + w_class = WEIGHT_CLASS_TINY heresy = 1 unlimited = 1 @@ -793,7 +793,7 @@ var/global/list/multiverse = list() return if(!link) - if(I.loc == user && istype(I) && I.w_class <= 2) + if(I.loc == user && istype(I) && I.w_class <= WEIGHT_CLASS_SMALL) user.drop_item() I.loc = src link = I diff --git a/code/game/gamemodes/wizard/godhand.dm b/code/game/gamemodes/wizard/godhand.dm index 55afe36f1d2..95d804179cd 100644 --- a/code/game/gamemodes/wizard/godhand.dm +++ b/code/game/gamemodes/wizard/godhand.dm @@ -8,7 +8,7 @@ icon_state = "syndballoon" item_state = null flags = ABSTRACT | NODROP - w_class = 5 + w_class = WEIGHT_CLASS_HUGE force = 0 throwforce = 0 throw_range = 0 diff --git a/code/game/gamemodes/wizard/soulstone.dm b/code/game/gamemodes/wizard/soulstone.dm index 7fcd9c198b4..cc3c1a131e9 100644 --- a/code/game/gamemodes/wizard/soulstone.dm +++ b/code/game/gamemodes/wizard/soulstone.dm @@ -4,7 +4,7 @@ icon_state = "soulstone" item_state = "electronic" desc = "A fragment of the legendary treasure known simply as the 'Soul Stone'. The shard still flickers with a fraction of the full artifact's power." - w_class = 1 + w_class = WEIGHT_CLASS_TINY slot_flags = SLOT_BELT origin_tech = "bluespace=4;materials=4" var/imprinted = "empty" @@ -347,4 +347,4 @@ T.unEquip(W) init_shade(T, U) qdel(T) - return 1 \ No newline at end of file + return 1 diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/game/gamemodes/wizard/spellbook.dm index 65843d0e0fc..4f3e7fe9001 100644 --- a/code/game/gamemodes/wizard/spellbook.dm +++ b/code/game/gamemodes/wizard/spellbook.dm @@ -497,7 +497,7 @@ icon_state ="book" throw_speed = 2 throw_range = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/uses = 10 var/temp = null var/op = 1 @@ -863,4 +863,4 @@ spell = /obj/effect/proc_holder/spell/targeted/sacred_flame spellname = "sacred flame" icon_state ="booksacredflame" - desc = "Become one with the flames that burn within... and invite others to do so as well." \ No newline at end of file + desc = "Become one with the flames that burn within... and invite others to do so as well." diff --git a/code/game/machinery/alarm.dm b/code/game/machinery/alarm.dm index b5612389def..02a815c096f 100644 --- a/code/game/machinery/alarm.dm +++ b/code/game/machinery/alarm.dm @@ -1070,7 +1070,7 @@ Just an object used in constructing air alarms icon = 'icons/obj/doors/door_assembly.dmi' icon_state = "door_electronics" desc = "Looks like a circuit. Probably is." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=50, MAT_GLASS=50) toolspeed = 1 usesound = 'sound/items/Deconstruct.ogg' diff --git a/code/game/machinery/camera/camera_assembly.dm b/code/game/machinery/camera/camera_assembly.dm index 7c888aa2a3d..a8d16939944 100644 --- a/code/game/machinery/camera/camera_assembly.dm +++ b/code/game/machinery/camera/camera_assembly.dm @@ -3,7 +3,7 @@ desc = "A pre-fabricated security camera kit, ready to be assembled and mounted to a surface." icon = 'icons/obj/monitors.dmi' icon_state = "cameracase" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL anchored = 0 materials = list(MAT_METAL=400, MAT_GLASS=250) diff --git a/code/game/machinery/computer/HolodeckControl.dm b/code/game/machinery/computer/HolodeckControl.dm index 886dac328de..ba7aadc3054 100644 --- a/code/game/machinery/computer/HolodeckControl.dm +++ b/code/game/machinery/computer/HolodeckControl.dm @@ -423,7 +423,7 @@ hitsound = 'sound/weapons/bladeslice.ogg' force = 40 throwforce = 10 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") block_chance = 50 @@ -442,7 +442,7 @@ throw_speed = 1 throw_range = 5 throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL armour_penetration = 50 block_chance = 50 var/active = 0 @@ -466,13 +466,13 @@ if(active) force = 30 icon_state = "sword[item_color]" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY playsound(user, 'sound/weapons/saberon.ogg', 50, 1) to_chat(user, "[src] is now active.") else force = 3 icon_state = "sword0" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL playsound(user, 'sound/weapons/saberoff.ogg', 50, 1) to_chat(user, "[src] can now be concealed.") if(istype(user,/mob/living/carbon/human)) @@ -489,7 +489,7 @@ name = "basketball" item_state = "basketball" desc = "Here's your chance, do your dance at the Space Jam." - w_class = 4 //Stops people from hiding it in their bags/pockets + w_class = WEIGHT_CLASS_BULKY //Stops people from hiding it in their bags/pockets /obj/structure/holohoop name = "basketball hoop" diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 603c0483129..b0dde9e20cd 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -991,7 +991,7 @@ desc = "A model spaceship, it looks like those used back in the day when travelling to Orion! It even has a miniature FX-293 reactor, which was renowned for its instability and tendency to explode..." icon = 'icons/obj/toy.dmi' icon_state = "ship" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/active = 0 //if the ship is on /obj/item/weapon/orion_ship/examine(mob/user) diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index 1dc88f9663d..22355ed4fbc 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -13,7 +13,7 @@ /obj/item/weapon/circuitboard density = 0 anchored = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL name = "circuit board" icon = 'icons/obj/module.dmi' icon_state = "id_mod" diff --git a/code/game/machinery/doors/airlock_electronics.dm b/code/game/machinery/doors/airlock_electronics.dm index b39e3798ae1..186d4c9705a 100644 --- a/code/game/machinery/doors/airlock_electronics.dm +++ b/code/game/machinery/doors/airlock_electronics.dm @@ -4,7 +4,7 @@ name = "airlock electronics" icon = 'icons/obj/doors/door_assembly.dmi' icon_state = "door_electronics" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=50, MAT_GLASS=50) req_access = list(access_engine) @@ -64,10 +64,10 @@ /obj/item/weapon/airlock_electronics/Topic(href, href_list) ..() - + if(usr.incapacitated() || (!ishuman(usr) && !isrobot(usr))) return 1 - + if(href_list["close"]) usr << browse(null, "window=airlock") return @@ -106,4 +106,3 @@ conf_access -= req if(!conf_access.len) conf_access = null - diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index dbbe53055a4..477bc4b1e98 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -259,7 +259,7 @@ icon = 'icons/obj/doors/door_assembly.dmi' icon_state = "door_electronics" desc = "A circuit board used in construction of firelocks." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=50, MAT_GLASS=50) toolspeed = 1 usesound = 'sound/items/Deconstruct.ogg' diff --git a/code/game/machinery/dye_generator.dm b/code/game/machinery/dye_generator.dm index 73e590361a7..a4d70d78023 100644 --- a/code/game/machinery/dye_generator.dm +++ b/code/game/machinery/dye_generator.dm @@ -74,7 +74,7 @@ throw_speed = 4 throw_range = 7 force = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/dye_color = "#FFFFFF" /obj/item/hair_dye_bottle/New() diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index da85a864214..710dde7ebda 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -267,7 +267,7 @@ Just a object used in constructing fire alarms icon = 'icons/obj/doors/door_assembly.dmi' icon_state = "door_electronics" desc = "A circuit. It has a label on it, it says \"Can handle heat levels up to 40 degrees celsius!\"" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=50, MAT_GLASS=50) toolspeed = 1 usesound = 'sound/items/Deconstruct.ogg' diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm index 6040f72ab6b..65cd281340c 100644 --- a/code/game/machinery/newscaster.dm +++ b/code/game/machinery/newscaster.dm @@ -607,7 +607,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co desc = "An issue of The Griffon, the newspaper circulating aboard Nanotrasen Space Stations." icon = 'icons/obj/bureaucracy.dmi' icon_state = "newspaper" - w_class = 2 //Let's make it fit in trashbags! + w_class = WEIGHT_CLASS_SMALL //Let's make it fit in trashbags! attack_verb = list("bapped") var/screen = 0 var/pages = 0 diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm index 5bd7861623b..c83d32e7ac7 100644 --- a/code/game/machinery/pipe/construction.dm +++ b/code/game/machinery/pipe/construction.dm @@ -49,7 +49,7 @@ icon = 'icons/obj/pipe-item.dmi' icon_state = "simple" item_state = "buildpipe" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL level = 2 var/flipped = 0 @@ -635,7 +635,7 @@ icon = 'icons/obj/pipe-item.dmi' icon_state = "meter" item_state = "buildpipe" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY /obj/item/pipe_meter/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob, params) ..() @@ -656,7 +656,7 @@ icon = 'icons/obj/stationobjs.dmi' icon_state = "gsensor0" item_state = "buildpipe" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY /obj/item/pipe_gsensor/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob) ..() diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index 8fb2d173b6f..193c311e012 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -192,7 +192,7 @@ icon = 'icons/obj/assemblies.dmi' icon_state = "bombcore" item_state = "eshield0" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "syndicate=6;combat=5" burn_state = FLAMMABLE //Burnable (but the casing isn't) var/adminlog = null @@ -296,7 +296,7 @@ /obj/item/weapon/bombcore/miniature name = "small bomb core" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/bombcore/miniature/detonate() explosion(src.loc,1,2,4,flame_range = 2) //Identical to a minibomb @@ -310,7 +310,7 @@ icon = 'icons/obj/assemblies.dmi' icon_state = "bigred" item_state = "electronic" - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "syndicate=2" var/cooldown = 0 var/detonated = 0 @@ -335,4 +335,4 @@ detonated = 0 existant = 0 cooldown = 1 - spawn(30) cooldown = 0 \ No newline at end of file + spawn(30) cooldown = 0 diff --git a/code/game/mecha/mecha_control_console.dm b/code/game/mecha/mecha_control_console.dm index 2bb73e2c636..1e2868673c0 100644 --- a/code/game/mecha/mecha_control_console.dm +++ b/code/game/mecha/mecha_control_console.dm @@ -71,7 +71,7 @@ desc = "Device used to transmit exosuit data." icon = 'icons/obj/device.dmi' icon_state = "motion2" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL origin_tech = "programming=2;magnets=2" var/ai_beacon = FALSE //If this beacon allows for AI control. Exists to avoid using istype() on checking. diff --git a/code/game/mecha/mecha_parts.dm b/code/game/mecha/mecha_parts.dm index 9250dfa4839..0516d8bf659 100644 --- a/code/game/mecha/mecha_parts.dm +++ b/code/game/mecha/mecha_parts.dm @@ -6,7 +6,7 @@ name = "mecha part" icon = 'icons/mecha/mech_construct.dmi' icon_state = "blank" - w_class = 6 + w_class = WEIGHT_CLASS_GIGANTIC flags = CONDUCT origin_tech = "programming=2;materials=2" @@ -379,7 +379,7 @@ board_type = "other" flags = CONDUCT force = 5.0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throwforce = 5.0 throw_speed = 3 throw_range = 15 @@ -487,5 +487,3 @@ /obj/item/weapon/circuitboard/mecha/pod name = "Circuit board (Space Pod Mainboard)" icon_state = "mainboard" - - diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index f56ada78145..cca6f9d9265 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -20,7 +20,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d var/health = null var/hitsound = null var/usesound = null - var/w_class = 3 + var/w_class = WEIGHT_CLASS_NORMAL var/slot_flags = 0 //This is used to determine on which slots an item can fit. pass_flags = PASSTABLE pressure_resistance = 3 @@ -146,16 +146,18 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d /obj/item/examine(mob/user, var/distance = -1) var/size switch(src.w_class) - if(1.0) + if(WEIGHT_CLASS_TINY) size = "tiny" - if(2.0) + if(WEIGHT_CLASS_SMALL) size = "small" - if(3.0) + if(WEIGHT_CLASS_NORMAL) size = "normal-sized" - if(4.0) + if(WEIGHT_CLASS_BULKY) size = "bulky" - if(5.0) + if(WEIGHT_CLASS_HUGE) size = "huge" + if(WEIGHT_CLASS_GIGANTIC) + size = "gigantic" . = ..(user, distance, "", "It is a [size] item.") @@ -519,7 +521,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d /obj/item/throw_impact(atom/A) if(A && !qdeleted(A)) var/itempush = 1 - if(w_class < 4) + if(w_class < WEIGHT_CLASS_BULKY) itempush = 0 // too light to push anything return A.hitby(src, 0, itempush) diff --git a/code/game/objects/items/blueprints.dm b/code/game/objects/items/blueprints.dm index 3cc0f9b6023..315eacb8f95 100644 --- a/code/game/objects/items/blueprints.dm +++ b/code/game/objects/items/blueprints.dm @@ -51,7 +51,7 @@ desc = "This is a one-use permit that allows the user to officially declare a built room as new addition to the station." fluffnotice = "Nanotrasen Engineering requires all on-station construction projects to be approved by a head of staff, as detailed in Nanotrasen Company Regulation 512-C (Mid-Shift Modifications to Company Property). \ By submitting this form, you accept any fines, fees, or personal injury/death that may occur during construction." - w_class = 1 + w_class = WEIGHT_CLASS_TINY /obj/item/areaeditor/permit/attack_self(mob/user) . = ..() @@ -76,7 +76,7 @@ icon = 'icons/obj/items.dmi' icon_state = "blueprints" fluffnotice = "Property of Nanotrasen. For heads of staff only. Store in high-secure storage." - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/list/showing = list() var/client/viewing diff --git a/code/game/objects/items/bodybag.dm b/code/game/objects/items/bodybag.dm index c52aa0e1792..4108fe85ddd 100644 --- a/code/game/objects/items/bodybag.dm +++ b/code/game/objects/items/bodybag.dm @@ -5,7 +5,7 @@ desc = "A folded bag designed for the storage and transportation of cadavers." icon = 'icons/obj/bodybag.dmi' icon_state = "bodybag_folded" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL attack_self(mob/user) var/obj/structure/closet/body_bag/R = new /obj/structure/closet/body_bag(user.loc) @@ -136,4 +136,4 @@ to_chat(user, "The controls are now [src.locked ? "locked." : "unlocked."]") else to_chat(user, "Access denied.") - return \ No newline at end of file + return diff --git a/code/game/objects/items/candle.dm b/code/game/objects/items/candle.dm index 46ee95d119b..801f74770ba 100644 --- a/code/game/objects/items/candle.dm +++ b/code/game/objects/items/candle.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/candle.dmi' icon_state = "candle1" item_state = "candle1" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/wax = 200 var/lit = 0 var/infinite = 0 @@ -91,4 +91,4 @@ /obj/item/candle/eternal desc = "A candle. This one seems to have an odd quality about the wax." - infinite = 1 \ No newline at end of file + infinite = 1 diff --git a/code/game/objects/items/control_wand.dm b/code/game/objects/items/control_wand.dm index 95cf94a3a1e..0fe6cf48631 100644 --- a/code/game/objects/items/control_wand.dm +++ b/code/game/objects/items/control_wand.dm @@ -8,7 +8,7 @@ icon = 'icons/obj/device.dmi' name = "control wand" desc = "Remotely controls airlocks." - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/mode = WAND_OPEN var/region_access = 1 //See access.dm var/obj/item/weapon/card/id/ID diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index 3852d67e6ff..a3d302f1326 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -7,7 +7,7 @@ desc = "A colourful crayon. Looks tasty. Mmmm..." icon = 'icons/obj/crayons.dmi' icon_state = "crayonred" - w_class = 1 + w_class = WEIGHT_CLASS_TINY slot_flags = SLOT_BELT | SLOT_EARS attack_verb = list("attacked", "coloured") toolspeed = 1 diff --git a/code/game/objects/items/devices/aicard.dm b/code/game/objects/items/devices/aicard.dm index 0d02add30a3..542d3cd3fb4 100644 --- a/code/game/objects/items/devices/aicard.dm +++ b/code/game/objects/items/devices/aicard.dm @@ -3,7 +3,7 @@ icon = 'icons/obj/aicards.dmi' icon_state = "aicard" // aicard-full item_state = "electronic" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL slot_flags = SLOT_BELT flags = NOBLUDGEON var/flush = null diff --git a/code/game/objects/items/devices/camera_bug.dm b/code/game/objects/items/devices/camera_bug.dm index af745b97f1f..5554fd4f0f4 100644 --- a/code/game/objects/items/devices/camera_bug.dm +++ b/code/game/objects/items/devices/camera_bug.dm @@ -9,7 +9,7 @@ desc = "For illicit snooping through the camera network." icon = 'icons/obj/device.dmi' icon_state = "camera_bug" - w_class = 1.0 + w_class = WEIGHT_CLASS_TINY item_state = "camera_bug" throw_speed = 4 throw_range = 20 diff --git a/code/game/objects/items/devices/chameleonproj.dm b/code/game/objects/items/devices/chameleonproj.dm index d3f13c284c1..ff7eb0ac2cc 100644 --- a/code/game/objects/items/devices/chameleonproj.dm +++ b/code/game/objects/items/devices/chameleonproj.dm @@ -7,7 +7,7 @@ throwforce = 5.0 throw_speed = 3 throw_range = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL origin_tech = "syndicate=4;magnets=4" var/can_use = 1 var/obj/effect/dummy/chameleon/active_dummy = null @@ -150,4 +150,4 @@ /obj/effect/dummy/chameleon/Destroy() master.disrupt(0) - return ..() \ No newline at end of file + return ..() diff --git a/code/game/objects/items/devices/flash.dm b/code/game/objects/items/devices/flash.dm index fefb20e90e4..e309cae9bbe 100644 --- a/code/game/objects/items/devices/flash.dm +++ b/code/game/objects/items/devices/flash.dm @@ -4,7 +4,7 @@ icon_state = "flash" item_state = "flashtool" //looks exactly like a flash (and nothing like a flashbang) throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 3 throw_range = 7 flags = CONDUCT diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index 9ac4897c8f3..f82e8ab2cee 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/lighting.dmi' icon_state = "flashlight" item_state = "flashlight" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT slot_flags = SLOT_BELT materials = list(MAT_METAL=50, MAT_GLASS=20) @@ -88,7 +88,7 @@ desc = "A pen-sized light, used by medical staff." icon_state = "penlight" item_state = "" - w_class = 1 + w_class = WEIGHT_CLASS_TINY slot_flags = SLOT_BELT | SLOT_EARS flags = CONDUCT brightness_on = 2 @@ -109,7 +109,7 @@ item_state = "" flags = CONDUCT brightness_on = 2 - w_class = 1 + w_class = WEIGHT_CLASS_TINY // the desk lamps are a bit special /obj/item/device/flashlight/lamp @@ -118,7 +118,7 @@ icon_state = "lamp" item_state = "lamp" brightness_on = 5 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY flags = CONDUCT materials = list() on = 1 @@ -153,7 +153,7 @@ obj/item/device/flashlight/lamp/bananalamp /obj/item/device/flashlight/flare name = "flare" desc = "A red Nanotrasen issued flare. There are instructions on the side, it reads 'pull cord, make light'." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL brightness_on = 8 // Made it brighter (from 7 to 8). light_color = "#ff0000" // changed colour to a more brighter red. icon_state = "flare" @@ -214,7 +214,7 @@ obj/item/device/flashlight/lamp/bananalamp /obj/item/device/flashlight/flare/torch name = "torch" desc = "A torch fashioned from some leaves and a log." - w_class = 4 + w_class = WEIGHT_CLASS_BULKY brightness_on = 7 icon_state = "torch" item_state = "torch" @@ -227,7 +227,7 @@ obj/item/device/flashlight/lamp/bananalamp icon = 'icons/obj/lighting.dmi' icon_state = "floor1" //not a slime extract sprite but... something close enough! item_state = "slime" - w_class = 1 + w_class = WEIGHT_CLASS_TINY brightness_on = 6 light_color = "#FFBF00" materials = list() diff --git a/code/game/objects/items/devices/floor_painter.dm b/code/game/objects/items/devices/floor_painter.dm index c278a1be72a..74b119c7b62 100644 --- a/code/game/objects/items/devices/floor_painter.dm +++ b/code/game/objects/items/devices/floor_painter.dm @@ -3,37 +3,37 @@ /obj/item/device/floor_painter name = "floor painter" icon_state = "floor_painter" - + var/floor_icon var/floor_state = "floor" var/floor_dir = SOUTH - - w_class = 1 + + w_class = WEIGHT_CLASS_TINY item_state = "electronic" flags = CONDUCT slot_flags = SLOT_BELT - - var/static/list/allowed_states = list("arrival", "arrivalcorner", "bar", "barber", "blackcorner", "blue", "bluecorner", + + var/static/list/allowed_states = list("arrival", "arrivalcorner", "bar", "barber", "blackcorner", "blue", "bluecorner", "bluefull", "bluered", "blueyellow", "blueyellowfull", "bot", "brown", "browncorner", "browncornerold", "brownold", "cafeteria", "caution", "cautioncorner", "chapel", "cmo", "dark", "delivery", "escape", "escapecorner", "floor", "freezerfloor", "green", "greenblue", "greenbluefull", "greencorner", "greenfull", "greenyellow", "greenyellowfull", "grimy", "loadingarea", "neutral", "neutralcorner", "neutralfull", "orange", "orangecorner", "orangefull", "purple", "purplecorner", "purplefull", "rampbottom", "ramptop", "red", "redblue", "redbluefull", - "redcorner", "redfull", "redgreen", "redgreenfull", "redyellow", "redyellowfull", "warning", "warningcorner", "warnwhite", - "warnwhitecorner", "white", "whiteblue", "whitebluecorner", "whitebluefull", "whitebot", "whitecorner", "whitedelivery", - "whitegreen", "whitegreencorner", "whitegreenfull", "whitehall", "whitepurple", "whitepurplecorner", "whitepurplefull", - "whitered", "whiteredcorner", "whiteredfull", "whiteyellow", "whiteyellowcorner", "whiteyellowfull", "yellow", + "redcorner", "redfull", "redgreen", "redgreenfull", "redyellow", "redyellowfull", "warning", "warningcorner", "warnwhite", + "warnwhitecorner", "white", "whiteblue", "whitebluecorner", "whitebluefull", "whitebot", "whitecorner", "whitedelivery", + "whitegreen", "whitegreencorner", "whitegreenfull", "whitehall", "whitepurple", "whitepurplecorner", "whitepurplefull", + "whitered", "whiteredcorner", "whiteredfull", "whiteyellow", "whiteyellowcorner", "whiteyellowfull", "yellow", "yellowcorner", "yellowcornersiding", "yellowsiding") /obj/item/device/floor_painter/afterattack(var/atom/A, var/mob/user, proximity, params) if(!proximity) return - + var/turf/simulated/floor/plasteel/F = A if(!istype(F)) to_chat(user, "\The [src] can only be used on station flooring.") return - + F.icon_state = floor_state F.icon_regular_floor = floor_state F.dir = floor_dir @@ -60,7 +60,7 @@ Choose Direction

Direction: [dir2text(floor_dir)]
"} - + var/datum/browser/popup = new(user, "floor_painter", name, 225, 300) popup.set_content(dat) popup.open() @@ -68,7 +68,7 @@ /obj/item/device/floor_painter/Topic(href, href_list) if(..()) return - + if(href_list["choose_state"]) var/state = input("Please select a style", "[src]") as null|anything in allowed_states if(state) @@ -92,7 +92,7 @@ index = 1 floor_state = allowed_states[index] floor_dir = SOUTH - + floor_icon = icon('icons/turf/floors.dmi', floor_state, floor_dir) if(usr) attack_self(usr) diff --git a/code/game/objects/items/devices/laserpointer.dm b/code/game/objects/items/devices/laserpointer.dm index b172ea052f0..ee49962cfe7 100644 --- a/code/game/objects/items/devices/laserpointer.dm +++ b/code/game/objects/items/devices/laserpointer.dm @@ -8,7 +8,7 @@ flags = CONDUCT slot_flags = SLOT_BELT materials = list(MAT_METAL=500, MAT_GLASS=500) - w_class = 2 //Increased to 2, because diodes are w_class 2. Conservation of matter. + w_class = WEIGHT_CLASS_SMALL //Increased to 2, because diodes are w_class 2. Conservation of matter. origin_tech = "combat=1" origin_tech = "magnets=2" var/energy = 5 diff --git a/code/game/objects/items/devices/megaphone.dm b/code/game/objects/items/devices/megaphone.dm index d38ac3b71ff..c59e39a2043 100644 --- a/code/game/objects/items/devices/megaphone.dm +++ b/code/game/objects/items/devices/megaphone.dm @@ -3,7 +3,7 @@ desc = "A device used to project your voice. Loudly." icon_state = "megaphone" item_state = "radio" - w_class = 1 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT var/spamcheck = 0 diff --git a/code/game/objects/items/devices/paicard.dm b/code/game/objects/items/devices/paicard.dm index feb288d327d..1d42bf70108 100644 --- a/code/game/objects/items/devices/paicard.dm +++ b/code/game/objects/items/devices/paicard.dm @@ -3,7 +3,7 @@ icon = 'icons/obj/aicards.dmi' icon_state = "pai" item_state = "electronic" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL slot_flags = SLOT_BELT origin_tech = "programming=2" var/request_cooldown = 5 // five seconds diff --git a/code/game/objects/items/devices/powersink.dm b/code/game/objects/items/devices/powersink.dm index 65093361197..7c81ca0e6e9 100644 --- a/code/game/objects/items/devices/powersink.dm +++ b/code/game/objects/items/devices/powersink.dm @@ -5,7 +5,7 @@ desc = "A nulling power sink which drains energy from electrical systems." icon_state = "powersink0" item_state = "electronic" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY flags = CONDUCT throwforce = 5 throw_speed = 1 diff --git a/code/game/objects/items/devices/radio/electropack.dm b/code/game/objects/items/devices/radio/electropack.dm index 35848bdc087..7c01d03ca36 100644 --- a/code/game/objects/items/devices/radio/electropack.dm +++ b/code/game/objects/items/devices/radio/electropack.dm @@ -6,7 +6,7 @@ frequency = 1449 flags = CONDUCT slot_flags = SLOT_BACK - w_class = 5 + w_class = WEIGHT_CLASS_HUGE materials = list(MAT_METAL=10000, MAT_GLASS=2500) var/code = 2 diff --git a/code/game/objects/items/devices/radio/intercom.dm b/code/game/objects/items/devices/radio/intercom.dm index 43289678591..4cf20378443 100644 --- a/code/game/objects/items/devices/radio/intercom.dm +++ b/code/game/objects/items/devices/radio/intercom.dm @@ -3,7 +3,7 @@ desc = "Talk through this." icon_state = "intercom" anchored = 1 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY canhear_range = 2 flags = CONDUCT var/number = 0 @@ -231,7 +231,7 @@ icon = 'icons/obj/doors/door_assembly.dmi' icon_state = "door_electronics" desc = "Looks like a circuit. Probably is." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=50, MAT_GLASS=50) toolspeed = 1 usesound = 'sound/items/Deconstruct.ogg' diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index c14fba68606..99096ac2649 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -44,7 +44,7 @@ var/global/list/default_medbay_channels = list( slot_flags = SLOT_BELT throw_speed = 2 throw_range = 9 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=75) diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index ca4da5b2107..eebda5d242b 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -14,7 +14,7 @@ REAGENT SCANNER icon_state = "t-ray0" var/on = 0 slot_flags = SLOT_BELT - w_class = 2 + w_class = WEIGHT_CLASS_SMALL item_state = "electronic" materials = list(MAT_METAL=150) origin_tech = "magnets=1;engineering=1" @@ -117,7 +117,7 @@ REAGENT SCANNER flags = CONDUCT slot_flags = SLOT_BELT throwforce = 3 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 5 throw_range = 10 materials = list(MAT_METAL=200) @@ -294,7 +294,7 @@ REAGENT SCANNER name = "Health Analyzer Upgrade" icon_state = "healthupgrade" desc = "An upgrade unit that can be installed on a health analyzer for expanded functionality." - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "magnets=2;biotech=2" usesound = 'sound/items/Deconstruct.ogg' @@ -303,7 +303,7 @@ REAGENT SCANNER name = "analyzer" icon_state = "atmos" item_state = "analyzer" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT slot_flags = SLOT_BELT throwforce = 0 @@ -369,7 +369,7 @@ REAGENT SCANNER name = "mass-spectrometer" icon_state = "spectrometer" item_state = "analyzer" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT | OPENCONTAINER slot_flags = SLOT_BELT throwforce = 5 @@ -470,7 +470,7 @@ REAGENT SCANNER desc = "A hand-held reagent scanner which identifies chemical agents." icon_state = "spectrometer" item_state = "analyzer" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT slot_flags = SLOT_BELT throwforce = 5 @@ -552,7 +552,7 @@ REAGENT SCANNER icon_state = "adv_spectrometer_s" item_state = "analyzer" origin_tech = "biotech=1" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT throwforce = 0 throw_speed = 3 @@ -588,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) \ No newline at end of file + user.show_message("Growth progress: [T.amount_grown]/10", 1) diff --git a/code/game/objects/items/devices/sensor_device.dm b/code/game/objects/items/devices/sensor_device.dm index 79fc2f92457..b063682f770 100644 --- a/code/game/objects/items/devices/sensor_device.dm +++ b/code/game/objects/items/devices/sensor_device.dm @@ -3,7 +3,7 @@ desc = "A miniature machine that tracks suit sensors across the station." icon = 'icons/obj/device.dmi' icon_state = "scanner" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL slot_flags = SLOT_BELT origin_tech = "biotech=3;materials=3;magnets=3" var/datum/nano_module/crew_monitor/crew_monitor @@ -19,4 +19,4 @@ ui_interact(user) /obj/item/device/sensor_device/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1) - crew_monitor.ui_interact(user, ui_key, ui, force_open) \ No newline at end of file + crew_monitor.ui_interact(user, ui_key, ui, force_open) diff --git a/code/game/objects/items/devices/taperecorder.dm b/code/game/objects/items/devices/taperecorder.dm index 1d8c92662e8..9f773c0d402 100644 --- a/code/game/objects/items/devices/taperecorder.dm +++ b/code/game/objects/items/devices/taperecorder.dm @@ -3,7 +3,7 @@ desc = "A device that can record to cassette tapes, and play them. It automatically translates the content in playback." icon_state = "taperecorder_empty" item_state = "analyzer" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL slot_flags = SLOT_BELT materials = list(MAT_METAL=60, MAT_GLASS=30) force = 2 @@ -249,7 +249,7 @@ desc = "A magnetic tape that can hold up to ten minutes of content." icon_state = "tape_white" item_state = "analyzer" - w_class = 1 + w_class = WEIGHT_CLASS_TINY materials = list(MAT_METAL=20, MAT_GLASS=5) force = 1 throwforce = 0 diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index 0b38b3f9e18..5f140f05d03 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -19,7 +19,7 @@ effective or pretty fucking useless. desc = "A strange device with twin antennas." icon_state = "batterer" throwforce = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 4 throw_range = 10 flags = CONDUCT @@ -79,7 +79,7 @@ effective or pretty fucking useless. flags = CONDUCT slot_flags = SLOT_BELT throwforce = 3 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 3 throw_range = 7 materials = list(MAT_METAL=400) diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm index 877cb1a5fc9..9c293bd6073 100644 --- a/code/game/objects/items/devices/transfer_valve.dm +++ b/code/game/objects/items/devices/transfer_valve.dm @@ -122,16 +122,16 @@ tank_one.forceMove(get_turf(src)) tank_one = null update_icon() - if((!tank_two || tank_two.w_class < 4) && (w_class > 3)) - w_class = 3 + if((!tank_two || tank_two.w_class < WEIGHT_CLASS_BULKY) && (w_class > WEIGHT_CLASS_NORMAL)) + w_class = WEIGHT_CLASS_NORMAL else if(tank_two && href_list["tanktwo"]) split_gases() valve_open = 0 tank_two.forceMove(get_turf(src)) tank_two = null update_icon() - if((!tank_one || tank_one.w_class < 4) && (w_class > 3)) - w_class = 3 + if((!tank_one || tank_one.w_class < WEIGHT_CLASS_BULKY) && (w_class > WEIGHT_CLASS_NORMAL)) + w_class = WEIGHT_CLASS_NORMAL else if(href_list["open"]) toggle_valve() else if(attached_device) @@ -217,4 +217,4 @@ else if(valve_open && tank_one && tank_two) split_gases() valve_open = 0 - update_icon() \ No newline at end of file + update_icon() diff --git a/code/game/objects/items/devices/whistle.dm b/code/game/objects/items/devices/whistle.dm index 359dfd82efa..d9aae300360 100644 --- a/code/game/objects/items/devices/whistle.dm +++ b/code/game/objects/items/devices/whistle.dm @@ -3,7 +3,7 @@ desc = "Used by obese officers to save their breath for running." icon_state = "voice0" item_state = "flashtool" //looks exactly like a flash (and nothing like a flashbang) - w_class = 1 + w_class = WEIGHT_CLASS_TINY flags = CONDUCT var/spamcheck = 0 @@ -28,4 +28,3 @@ if(!emagged) to_chat(user, "You overload \the [src]'s voice synthesizer.") emagged = 1 - diff --git a/code/game/objects/items/documents.dm b/code/game/objects/items/documents.dm index f76a4942195..9540dcbb966 100644 --- a/code/game/objects/items/documents.dm +++ b/code/game/objects/items/documents.dm @@ -5,7 +5,7 @@ icon_state = "docs_generic" item_state = "paper" throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_range = 1 throw_speed = 1 layer = 4 @@ -26,4 +26,4 @@ /obj/item/documents/syndicate/blue name = "'Blue' secret documents" desc = "\"Top Secret\" documents printed on special copy-protected paper. It details sensitive Syndicate operational intelligence. These documents are marked \"Blue\"." - icon_state = "docs_blue" \ No newline at end of file + icon_state = "docs_blue" diff --git a/code/game/objects/items/flag.dm b/code/game/objects/items/flag.dm index e05182bf3c1..0117f1b9f19 100644 --- a/code/game/objects/items/flag.dm +++ b/code/game/objects/items/flag.dm @@ -1,6 +1,6 @@ /obj/item/flag icon = 'icons/obj/flag.dmi' - w_class = 4 + w_class = WEIGHT_CLASS_BULKY burntime = 20 burn_state = FLAMMABLE @@ -156,7 +156,7 @@ name = "Nar'Sie Cultist flag" desc = "A flag proudly boasting the logo of the cultists, sworn enemies of NT." icon_state = "cultflag" - + //Chameleon /obj/item/flag/chameleon @@ -165,7 +165,7 @@ icon_state = "ntflag" origin_tech = "materials=3;magnets=4;syndicate=4" var/used = 0 - + /obj/item/flag/chameleon/attack_self(mob/user) if(used) return @@ -190,7 +190,7 @@ icon_state = chosen_flag.icon_state desc = chosen_flag.desc used = 1 - + /obj/item/flag/chameleon/burn() explosion(loc,1,2,4,4, flame_range = 4) - qdel(src) \ No newline at end of file + qdel(src) diff --git a/code/game/objects/items/latexballoon.dm b/code/game/objects/items/latexballoon.dm index a7a45de8cb8..5f55a5acdcc 100644 --- a/code/game/objects/items/latexballoon.dm +++ b/code/game/objects/items/latexballoon.dm @@ -5,7 +5,7 @@ item_state = "lgloves" force = 0 throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 1 throw_range = 7 var/state @@ -60,4 +60,4 @@ blow(T, user) return if(is_sharp(W) || is_hot(W) || can_puncture(W)) - burst() \ No newline at end of file + burst() diff --git a/code/game/objects/items/misc.dm b/code/game/objects/items/misc.dm index f2fa9596375..67b1523db8d 100644 --- a/code/game/objects/items/misc.dm +++ b/code/game/objects/items/misc.dm @@ -16,9 +16,9 @@ item_state = "beachball" density = 0 anchored = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY force = 0.0 throwforce = 0.0 throw_speed = 1 throw_range = 20 - flags = CONDUCT \ No newline at end of file + flags = CONDUCT diff --git a/code/game/objects/items/policetape.dm b/code/game/objects/items/policetape.dm index 26b0e8772af..127f3f82c41 100644 --- a/code/game/objects/items/policetape.dm +++ b/code/game/objects/items/policetape.dm @@ -3,7 +3,7 @@ name = "tape roll" icon = 'icons/policetape.dmi' icon_state = "rollstart" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/turf/start var/turf/end var/tape_type = /obj/item/tape @@ -201,5 +201,3 @@ var/list/tape_roll_applications = list() qdel(src) return - - diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index 4c2bbfa3bcd..e50c51ba100 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/items.dmi' amount = 6 max_amount = 6 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 3 throw_range = 7 var/heal_brute = 0 diff --git a/code/game/objects/items/stacks/rods.dm b/code/game/objects/items/stacks/rods.dm index 1b63eaae7f0..96d5d381a72 100644 --- a/code/game/objects/items/stacks/rods.dm +++ b/code/game/objects/items/stacks/rods.dm @@ -9,7 +9,7 @@ var/global/list/datum/stack_recipe/rod_recipes = list ( \ icon_state = "rods" item_state = "rods" flags = CONDUCT - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL force = 9.0 throwforce = 10.0 throw_speed = 3 diff --git a/code/game/objects/items/stacks/sheets/leather.dm b/code/game/objects/items/stacks/sheets/leather.dm index 3a2d07aa2f6..e222f1627cd 100644 --- a/code/game/objects/items/stacks/sheets/leather.dm +++ b/code/game/objects/items/stacks/sheets/leather.dm @@ -108,8 +108,8 @@ var/global/list/datum/stack_recipe/human_recipes = list( \ desc = "Long stringy filaments which presumably came from a watcher's wings." singular_name = "watcher sinew" icon_state = "sinew" - origin_tech = "biotech=4" - + origin_tech = "biotech=4" + var/global/list/datum/stack_recipe/sinew_recipes = list ( \ new/datum/stack_recipe("sinew restraints", /obj/item/weapon/restraints/handcuffs/sinew, 1, on_floor = 1), \ ) @@ -117,7 +117,7 @@ var/global/list/datum/stack_recipe/sinew_recipes = list ( \ /obj/item/stack/sheet/sinew/New(var/loc, var/amount=null) recipes = sinew_recipes return ..() - + /obj/item/stack/sheet/animalhide/goliath_hide name = "goliath hide plates" desc = "Pieces of a goliath's rocky hide, these might be able to make your suit a bit more durable to attack from the local fauna." @@ -125,7 +125,7 @@ var/global/list/datum/stack_recipe/sinew_recipes = list ( \ icon_state = "goliath_hide" singular_name = "hide plate" flags = NOBLUDGEON - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL layer = MOB_LAYER /obj/item/stack/sheet/animalhide/ashdrake @@ -135,9 +135,9 @@ var/global/list/datum/stack_recipe/sinew_recipes = list ( \ icon_state = "dragon_hide" singular_name = "drake plate" flags = NOBLUDGEON - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL layer = MOB_LAYER - + //Step one - dehairing. /obj/item/stack/sheet/animalhide/attackby(obj/item/weapon/W as obj, mob/user as mob, params) @@ -177,4 +177,4 @@ var/global/list/datum/stack_recipe/sinew_recipes = list ( \ var/obj/item/stack/sheet/leather/HS = new(src.loc) HS.amount = 1 wetness = initial(wetness) - src.use(1) \ No newline at end of file + src.use(1) diff --git a/code/game/objects/items/stacks/sheets/light.dm b/code/game/objects/items/stacks/sheets/light.dm index 9ca562b50ce..d399e152bbe 100644 --- a/code/game/objects/items/stacks/sheets/light.dm +++ b/code/game/objects/items/stacks/sheets/light.dm @@ -5,7 +5,7 @@ desc = "A glass tile, which is wired, somehow." icon = 'icons/obj/tiles.dmi' icon_state = "glass_wire" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL force = 3.0 throwforce = 5.0 throw_speed = 5 diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm index ef9781f9a0d..fc933a14f20 100644 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ b/code/game/objects/items/stacks/sheets/mineral.dm @@ -104,7 +104,7 @@ var/global/list/datum/stack_recipe/abductor_recipes = list ( \ /obj/item/stack/sheet/mineral force = 5.0 throwforce = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throw_speed = 3 throw_range = 3 @@ -240,7 +240,7 @@ var/global/list/datum/stack_recipe/abductor_recipes = list ( \ singular_name = "alien alloy sheet" force = 5 throwforce = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throw_speed = 1 throw_range = 3 origin_tech = "materials=6;abductor=1" @@ -248,4 +248,4 @@ var/global/list/datum/stack_recipe/abductor_recipes = list ( \ /obj/item/stack/sheet/mineral/abductor/New(loc, amount=null) recipes = abductor_recipes - ..() \ No newline at end of file + ..() diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 02031404360..858365f6d29 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -298,7 +298,7 @@ var/global/list/datum/stack_recipe/runed_metal_recipes = list ( \ desc = "Someone's been drinking their milk." force = 7 throwforce = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throw_speed = 1 throw_range = 3 origin_tech = "materials=2;biotech=2" diff --git a/code/game/objects/items/stacks/sheets/sheets.dm b/code/game/objects/items/stacks/sheets/sheets.dm index 4e5a0e9fdc8..3a92d0f7662 100644 --- a/code/game/objects/items/stacks/sheets/sheets.dm +++ b/code/game/objects/items/stacks/sheets/sheets.dm @@ -1,6 +1,6 @@ /obj/item/stack/sheet name = "sheet" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL force = 5 throwforce = 5 max_amount = 50 @@ -24,4 +24,4 @@ else for(var/obj/item/stack/sheet/stack in locate(src.x,src.y,src.z)) S.add(stack,user) - ..()*/ \ No newline at end of file + ..()*/ diff --git a/code/game/objects/items/stacks/telecrystal.dm b/code/game/objects/items/stacks/telecrystal.dm index 0c6c3d42cf3..d2fb50bd385 100644 --- a/code/game/objects/items/stacks/telecrystal.dm +++ b/code/game/objects/items/stacks/telecrystal.dm @@ -5,7 +5,7 @@ singular_name = "telecrystal" icon = 'icons/obj/telescience.dmi' icon_state = "telecrystal" - w_class = 1 + w_class = WEIGHT_CLASS_TINY max_amount = 50 flags = NOBLUDGEON origin_tech = "materials=6;syndicate=1" diff --git a/code/game/objects/items/stacks/tiles/tile_types.dm b/code/game/objects/items/stacks/tiles/tile_types.dm index b8078bfebcb..1fec38f491b 100644 --- a/code/game/objects/items/stacks/tiles/tile_types.dm +++ b/code/game/objects/items/stacks/tiles/tile_types.dm @@ -5,7 +5,7 @@ icon = 'icons/obj/tiles.dmi' icon_state = "tile" item_state = "tile" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL force = 1 throwforce = 1 throw_speed = 5 @@ -160,4 +160,4 @@ singular_name = "pod floor tile" desc = "A grooved floor tile." icon_state = "tile_pod" - turf_type = /turf/simulated/floor/pod \ No newline at end of file + turf_type = /turf/simulated/floor/pod diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 87da0987487..575cf09a6b1 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -113,7 +113,7 @@ icon = 'icons/obj/weapons.dmi' icon_state = "syndballoon" item_state = "syndballoon" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY /* * Fake telebeacon @@ -144,7 +144,7 @@ icon_state = "sword0" item_state = "sword0" var/active = 0.0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL attack_verb = list("attacked", "struck", "hit") /obj/item/toy/sword/attack_self(mob/user as mob) @@ -154,13 +154,13 @@ playsound(user, 'sound/weapons/saberon.ogg', 50, 1) icon_state = "swordblue" item_state = "swordblue" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY else to_chat(user, "You push the plastic blade back down into the handle.") playsound(user, 'sound/weapons/saberoff.ogg', 50, 1) icon_state = "sword0" item_state = "sword0" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL if(istype(user,/mob/living/carbon/human)) var/mob/living/carbon/human/H = user @@ -218,7 +218,7 @@ slot_flags = SLOT_BELT | SLOT_BACK force = 5 throwforce = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL attack_verb = list("attacked", "slashed", "stabbed", "sliced") hitsound = 'sound/weapons/bladeslice.ogg' @@ -239,7 +239,7 @@ throwforce = 5.0 throw_speed = 10 throw_range = 30 - w_class = 1 + w_class = WEIGHT_CLASS_TINY /obj/item/toy/snappop/virus/throw_impact(atom/hit_atom) @@ -260,7 +260,7 @@ desc = "Wow!" icon = 'icons/obj/toy.dmi' icon_state = "snappop" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/ash_type = /obj/effect/decal/cleanable/ash /obj/item/toy/snappop/proc/pop_burst(var/n=3, var/c=1) @@ -403,7 +403,7 @@ slot_flags = SLOT_BELT | SLOT_BACK force = 5 throwforce = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL attack_verb = list("attacked", "slashed", "stabbed", "sliced") @@ -438,7 +438,7 @@ obj/item/toy/cards/deck icon = 'icons/obj/toy.dmi' deckstyle = "nanotrasen" icon_state = "deck_nanotrasen_full" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/cooldown = 0 var/list/cards = list() @@ -568,7 +568,7 @@ obj/item/toy/cards/cardhand desc = "A number of cards not in a deck, customarily held in ones hand." icon = 'icons/obj/toy.dmi' icon_state = "nanotrasen_hand2" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/list/currenthand = list() var/choice = null @@ -661,7 +661,7 @@ obj/item/toy/cards/singlecard desc = "a card" icon = 'icons/obj/toy.dmi' icon_state = "singlecard_nanotrasen_down" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/cardname = null var/flipped = 0 pixel_x = -5 @@ -787,7 +787,7 @@ obj/item/toy/cards/deck/syndicate/black desc = "A plastic model of a Nuclear Fission Explosive." icon = 'icons/obj/toy.dmi' icon_state = "nuketoyidle" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/cooldown = 0 /obj/item/toy/nuke/attack_self(mob/user) @@ -810,7 +810,7 @@ obj/item/toy/cards/deck/syndicate/black desc = "A toy for therapeutic and recreational purposes." icon_state = "therapyred" item_state = "egg4" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/cooldown = 0 /obj/item/toy/therapy/New() @@ -863,7 +863,7 @@ obj/item/toy/cards/deck/syndicate/black name = "toddler" desc = "This baby looks almost real. Wait, did it just burp?" force = 5 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK @@ -886,7 +886,7 @@ obj/item/toy/cards/deck/syndicate/black desc = "Relive the excitement of a meteor shower! SweetMeat-eor. Co is not responsible for any injuries, headaches or hearing loss caused by Mini-Meteor." icon = 'icons/obj/toy.dmi' icon_state = "minimeteor" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/toy/minimeteor/throw_impact(atom/hit_atom) ..() @@ -1095,7 +1095,7 @@ obj/item/toy/cards/deck/syndicate/black icon_state = "foamblade" item_state = "arm_blade" attack_verb = list("pricked", "absorbed", "gored") - w_class = 2 + w_class = WEIGHT_CLASS_SMALL burn_state = FLAMMABLE /* @@ -1107,7 +1107,7 @@ obj/item/toy/cards/deck/syndicate/black icon = 'icons/obj/device.dmi' icon_state = "flash" item_state = "flashtool" - w_class = 1 + w_class = WEIGHT_CLASS_TINY /obj/item/toy/flash/attack(mob/living/M, mob/user) playsound(src.loc, 'sound/weapons/flash.ogg', 100, 1) @@ -1123,7 +1123,7 @@ obj/item/toy/cards/deck/syndicate/black desc = "A big, plastic red button. Reads 'From HonkCo Pranks?' on the back." icon = 'icons/obj/assemblies.dmi' icon_state = "bigred" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/cooldown = 0 /obj/item/toy/redbutton/attack_self(mob/user) @@ -1148,7 +1148,7 @@ obj/item/toy/cards/deck/syndicate/black desc = "A little toy model AI core with real law announcing action!" icon = 'icons/obj/toy.dmi' icon_state = "AI" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/cooldown = 0 /obj/item/toy/AI/attack_self(mob/user) @@ -1167,7 +1167,7 @@ obj/item/toy/cards/deck/syndicate/black desc = "An action figure modeled after 'The Owl', defender of justice." icon = 'icons/obj/toy.dmi' icon_state = "owlprize" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/cooldown = 0 /obj/item/toy/owl/attack_self(mob/user) @@ -1186,7 +1186,7 @@ obj/item/toy/cards/deck/syndicate/black desc = "An action figure modeled after 'The Griffin', criminal mastermind." icon = 'icons/obj/toy.dmi' icon_state = "griffinprize" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/cooldown = 0 /obj/item/toy/griffin/attack_self(mob/user) @@ -1203,7 +1203,7 @@ obj/item/toy/cards/deck/syndicate/black // DND Character minis. Use the naming convention (type)character for the icon states. /obj/item/toy/character icon = 'icons/obj/toy.dmi' - w_class = 2 + w_class = WEIGHT_CLASS_SMALL pixel_z = 5 /obj/item/toy/character/alien @@ -1256,7 +1256,7 @@ obj/item/toy/cards/deck/syndicate/black desc = "The perfect pet!" icon = 'icons/obj/toy.dmi' icon_state = "pet_rock" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 5 throwforce = 5 attack_verb = list("attacked", "bashed", "smashed", "stoned") @@ -1280,7 +1280,7 @@ obj/item/toy/cards/deck/syndicate/black icon = 'icons/obj/toy.dmi' icon_state = "minigibber" attack_verb = list("grinded", "gibbed") - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/cooldown = 0 var/obj/stored_minature = null @@ -1322,7 +1322,7 @@ obj/item/toy/cards/deck/syndicate/black icon_state = "toy_xeno" name = "xenomorph action figure" desc = "MEGA presents the new Xenos Isolated action figure! Comes complete with realistic sounds! Pull back string to use." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/cooldown = 0 /obj/item/toy/toy_xeno/attack_self(mob/user) @@ -1352,7 +1352,7 @@ obj/item/toy/cards/deck/syndicate/black flags = CONDUCT slot_flags = SLOT_BELT materials = list(MAT_METAL=2000) - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throwforce = 5 throw_speed = 4 throw_range = 5 diff --git a/code/game/objects/items/trash.dm b/code/game/objects/items/trash.dm index dc538674993..30a75b310b6 100644 --- a/code/game/objects/items/trash.dm +++ b/code/game/objects/items/trash.dm @@ -4,7 +4,7 @@ //Added by Jack Rost /obj/item/trash icon = 'icons/obj/trash.dmi' - w_class = 1 + w_class = WEIGHT_CLASS_TINY desc = "This is rubbish." burn_state = FLAMMABLE diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index cca1464d6e7..17d40971804 100755 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -14,7 +14,7 @@ AI MODULES desc = "An AI Module for transmitting encrypted instructions to the AI." flags = CONDUCT force = 5.0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throwforce = 5.0 throw_speed = 3 throw_range = 15 @@ -397,4 +397,4 @@ AI MODULES laws[1] = generate_ion_law() to_chat(user, "You press the button on [src].") playsound(user, 'sound/machines/click.ogg', 20, 1) - src.loc.visible_message("[bicon(src)] [laws[1]]") \ No newline at end of file + src.loc.visible_message("[bicon(src)] [laws[1]]") diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm index 5598a42cc8f..595f1c42160 100644 --- a/code/game/objects/items/weapons/RCD.dm +++ b/code/game/objects/items/weapons/RCD.dm @@ -17,7 +17,7 @@ RCD throwforce = 10.0 throw_speed = 3 throw_range = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL materials = list(MAT_METAL = 30000) origin_tech = "engineering=4;materials=2" toolspeed = 1 diff --git a/code/game/objects/items/weapons/RSF.dm b/code/game/objects/items/weapons/RSF.dm index 07a489490e1..ddeefa002b0 100644 --- a/code/game/objects/items/weapons/RSF.dm +++ b/code/game/objects/items/weapons/RSF.dm @@ -13,7 +13,7 @@ RSF anchored = 0.0 var/matter = 0 var/mode = 1 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/rsf/New() desc = "A RSF. It currently holds [matter]/30 fabrication-units." @@ -231,4 +231,4 @@ RSF matter-- to_chat(user, "The RSF now holds [matter]/30 fabrication-units.") desc = "A RSF. It currently holds [matter]/30 fabrication-units." - return \ No newline at end of file + return diff --git a/code/game/objects/items/weapons/alien_specific.dm b/code/game/objects/items/weapons/alien_specific.dm index 922f4004714..49258c05c4e 100644 --- a/code/game/objects/items/weapons/alien_specific.dm +++ b/code/game/objects/items/weapons/alien_specific.dm @@ -12,8 +12,8 @@ throwforce_on = 5 throw_speed = 1 throw_range = 5 - w_class = 2 - w_class_on = 2 + w_class = WEIGHT_CLASS_SMALL + w_class_on = WEIGHT_CLASS_SMALL attack_verb = list("attacked", "slashed", "gored", "sliced", "torn", "ripped", "butchered", "cut") attack_verb_on = list() diff --git a/code/game/objects/items/weapons/bee_briefcase.dm b/code/game/objects/items/weapons/bee_briefcase.dm index 3252fe4d856..229a025a18f 100644 --- a/code/game/objects/items/weapons/bee_briefcase.dm +++ b/code/game/objects/items/weapons/bee_briefcase.dm @@ -11,7 +11,7 @@ force = 10 throw_speed = 2 throw_range = 4 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") var/bees_left = 10 var/list/blood_list = list() diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm index 27d659dcbe2..826cd386f3c 100644 --- a/code/game/objects/items/weapons/cards_ids.dm +++ b/code/game/objects/items/weapons/cards_ids.dm @@ -15,7 +15,7 @@ name = "card" desc = "A card." icon = 'icons/obj/card.dmi' - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/associated_account_number = 0 var/list/files = list( ) diff --git a/code/game/objects/items/weapons/caution.dm b/code/game/objects/items/weapons/caution.dm index 44a357a6d92..250aff951fd 100644 --- a/code/game/objects/items/weapons/caution.dm +++ b/code/game/objects/items/weapons/caution.dm @@ -7,7 +7,7 @@ throwforce = 3.0 throw_speed = 1 throw_range = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL attack_verb = list("warned", "cautioned", "smashed") proximity_sign diff --git a/code/game/objects/items/weapons/chrono_eraser.dm b/code/game/objects/items/weapons/chrono_eraser.dm index 71e09a3cf0d..ef1e2c91498 100644 --- a/code/game/objects/items/weapons/chrono_eraser.dm +++ b/code/game/objects/items/weapons/chrono_eraser.dm @@ -6,7 +6,7 @@ icon = 'icons/obj/chronos.dmi' icon_state = "chronobackpack" item_state = "backpack" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK slowdown = 1 actions_types = list(/datum/action/item_action/equip_unequip_TED_Gun) @@ -46,7 +46,7 @@ icon = 'icons/obj/chronos.dmi' icon_state = "chronogun" item_state = "chronogun" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL flags = NODROP ammo_type = list(/obj/item/ammo_casing/energy/chrono_beam) can_charge = 0 diff --git a/code/game/objects/items/weapons/cigs.dm b/code/game/objects/items/weapons/cigs.dm index 2b46e8de101..766fe92c1ee 100644 --- a/code/game/objects/items/weapons/cigs.dm +++ b/code/game/objects/items/weapons/cigs.dm @@ -20,7 +20,7 @@ LIGHTERS ARE IN LIGHTERS.DM throw_speed = 0.5 item_state = "cigoff" slot_flags = SLOT_EARS|SLOT_MASK - w_class = 1 + w_class = WEIGHT_CLASS_TINY body_parts_covered = null attack_verb = list("burnt", "singed") var/lit = 0 @@ -285,7 +285,7 @@ LIGHTERS ARE IN LIGHTERS.DM desc = "A manky old cigarette butt." icon = 'icons/obj/clothing/masks.dmi' icon_state = "cigbutt" - w_class = 1 + w_class = WEIGHT_CLASS_TINY throwforce = 1 /obj/item/weapon/cigbutt/New() @@ -389,7 +389,7 @@ LIGHTERS ARE IN LIGHTERS.DM desc = "A thin piece of paper used to make fine smokeables." icon = 'icons/obj/cigarettes.dmi' icon_state = "cig_paper" - w_class = 1 + w_class = WEIGHT_CLASS_TINY /obj/item/weapon/rollingpaper/afterattack(atom/target, mob/user, proximity) if(!proximity) @@ -410,4 +410,4 @@ LIGHTERS ARE IN LIGHTERS.DM else to_chat(user, "You need to dry this first!") else - ..() \ No newline at end of file + ..() diff --git a/code/game/objects/items/weapons/clown_items.dm b/code/game/objects/items/weapons/clown_items.dm index 3312c6555d4..bb69ffaee50 100644 --- a/code/game/objects/items/weapons/clown_items.dm +++ b/code/game/objects/items/weapons/clown_items.dm @@ -60,7 +60,7 @@ item_state = "bike_horn" hitsound = null throwforce = 3 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 3 throw_range = 15 attack_verb = list("HONKED") @@ -112,4 +112,4 @@ var/mob/living/carbon/human/H = M if(istype(H.l_ear, /obj/item/clothing/ears/earmuffs) || istype(H.r_ear, /obj/item/clothing/ears/earmuffs) || H.ear_deaf) continue - M.emote("flip") \ No newline at end of file + M.emote("flip") diff --git a/code/game/objects/items/weapons/cosmetics.dm b/code/game/objects/items/weapons/cosmetics.dm index a5a2438771e..d480f8f4010 100644 --- a/code/game/objects/items/weapons/cosmetics.dm +++ b/code/game/objects/items/weapons/cosmetics.dm @@ -3,7 +3,7 @@ desc = "A generic brand of lipstick." icon = 'icons/obj/items.dmi' icon_state = "lipstick" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/colour = "red" var/open = 0 @@ -86,7 +86,7 @@ icon = 'icons/obj/items.dmi' icon_state = "razor" flags = CONDUCT - w_class = 1 + w_class = WEIGHT_CLASS_TINY usesound = 'sound/items/Welder2.ogg' toolspeed = 1 diff --git a/code/game/objects/items/weapons/courtroom.dm b/code/game/objects/items/weapons/courtroom.dm index 055faa03a8c..0f5671f8e1a 100644 --- a/code/game/objects/items/weapons/courtroom.dm +++ b/code/game/objects/items/weapons/courtroom.dm @@ -9,7 +9,7 @@ icon_state = "gavelhammer" force = 5.0 throwforce = 6.0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL attack_verb = list("bashed", "battered", "judged", "whacked") burn_state = FLAMMABLE @@ -25,7 +25,7 @@ icon_state = "gavelblock" force = 2.0 throwforce = 2.0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY burn_state = FLAMMABLE /obj/item/weapon/gavelblock/attackby(obj/item/I, mob/user, params) @@ -33,4 +33,4 @@ playsound(loc, 'sound/items/gavel.ogg', 100, 1) user.visible_message("[user] strikes \the [src] with \the [I].") else - return \ No newline at end of file + return diff --git a/code/game/objects/items/weapons/defib.dm b/code/game/objects/items/weapons/defib.dm index 5d0dcebcacc..0586e8b23d1 100644 --- a/code/game/objects/items/weapons/defib.dm +++ b/code/game/objects/items/weapons/defib.dm @@ -9,7 +9,7 @@ slot_flags = SLOT_BACK force = 5 throwforce = 6 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY origin_tech = "biotech=4" actions_types = list(/datum/action/item_action/toggle_paddles) species_fit = list("Vox") @@ -206,7 +206,7 @@ desc = "A belt-equipped defibrillator that can be rapidly deployed." icon_state = "defibcompact" item_state = "defibcompact" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL slot_flags = SLOT_BELT origin_tech = "biotech=4" @@ -251,7 +251,7 @@ item_state = "defibpaddles" force = 0 throwforce = 6 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY toolspeed = 1 var/revivecost = 1000 @@ -446,7 +446,7 @@ icon_state = "defibpaddles0" item_state = "defibpaddles0" force = 0 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY var/revivecost = 1000 var/cooldown = 0 var/busy = 0 diff --git a/code/game/objects/items/weapons/dice.dm b/code/game/objects/items/weapons/dice.dm index 80274a4d7ca..7871f19e91a 100644 --- a/code/game/objects/items/weapons/dice.dm +++ b/code/game/objects/items/weapons/dice.dm @@ -29,7 +29,7 @@ desc = "A die with six sides. Basic and servicable." icon = 'icons/obj/dice.dmi' icon_state = "d6" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/sides = 6 var/result = null var/list/special_faces = list() //entries should match up to sides var if used diff --git a/code/game/objects/items/weapons/disks.dm b/code/game/objects/items/weapons/disks.dm index 2c3f71f5cf3..58f590dc629 100644 --- a/code/game/objects/items/weapons/disks.dm +++ b/code/game/objects/items/weapons/disks.dm @@ -1,5 +1,5 @@ /obj/item/weapon/disk icon = 'icons/obj/module.dmi' - w_class = 1 + w_class = WEIGHT_CLASS_TINY item_state = "card-id" icon_state = "datadisk0" diff --git a/code/game/objects/items/weapons/dna_injector.dm b/code/game/objects/items/weapons/dna_injector.dm index b4d0e0b5eaa..b583b3e2c25 100644 --- a/code/game/objects/items/weapons/dna_injector.dm +++ b/code/game/objects/items/weapons/dna_injector.dm @@ -8,7 +8,7 @@ var/datum/dna2/record/buf = null throw_speed = 3 throw_range = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "biotech=1" var/damage_coeff = 1 diff --git a/code/game/objects/items/weapons/extinguisher.dm b/code/game/objects/items/weapons/extinguisher.dm index 0767e26fbdb..42874e05cf4 100644 --- a/code/game/objects/items/weapons/extinguisher.dm +++ b/code/game/objects/items/weapons/extinguisher.dm @@ -7,7 +7,7 @@ hitsound = 'sound/weapons/smash.ogg' flags = CONDUCT throwforce = 10 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throw_speed = 2 throw_range = 7 force = 10 @@ -29,7 +29,7 @@ hitsound = null //it is much lighter, after all. flags = null //doesn't CONDUCT throwforce = 2 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 3.0 materials = list() max_water = 30 diff --git a/code/game/objects/items/weapons/flamethrower.dm b/code/game/objects/items/weapons/flamethrower.dm index 70fbde22224..9adb05f15a7 100644 --- a/code/game/objects/items/weapons/flamethrower.dm +++ b/code/game/objects/items/weapons/flamethrower.dm @@ -11,7 +11,7 @@ throwforce = 10.0 throw_speed = 1 throw_range = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL materials = list(MAT_METAL=500) origin_tech = "combat=1;plasmatech=1" var/status = 0 diff --git a/code/game/objects/items/weapons/garrote.dm b/code/game/objects/items/weapons/garrote.dm index 196b0d269a0..be96e29f97a 100644 --- a/code/game/objects/items/weapons/garrote.dm +++ b/code/game/objects/items/weapons/garrote.dm @@ -8,7 +8,7 @@ name = "fiber wire" desc = "A length of razor-thin wire with an elegant wooden handle on either end.
You suspect you'd have to be behind the target to use this weapon effectively." icon_state = "garrot_wrap" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/mob/living/carbon/human/strangling var/improvised = 0 var/garrote_time diff --git a/code/game/objects/items/weapons/grenades/bananade.dm b/code/game/objects/items/weapons/grenades/bananade.dm index 580cb993a63..6c672193bb6 100644 --- a/code/game/objects/items/weapons/grenades/bananade.dm +++ b/code/game/objects/items/weapons/grenades/bananade.dm @@ -4,7 +4,7 @@ var/turf/T /obj/item/weapon/grenade/bananade name = "bananade" desc = "A yellow grenade." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL icon = 'icons/obj/grenade.dmi' icon_state = "banana" item_state = "flashbang" diff --git a/code/game/objects/items/weapons/grenades/chem_grenade.dm b/code/game/objects/items/weapons/grenades/chem_grenade.dm index 5dc0e8d4199..4221528e100 100644 --- a/code/game/objects/items/weapons/grenades/chem_grenade.dm +++ b/code/game/objects/items/weapons/grenades/chem_grenade.dm @@ -9,7 +9,7 @@ item_state = "flashbang" var/bomb_state = "chembomb" var/payload_name = null // used for spawned grenades - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 2 var/prime_sound = 'sound/items/Screwdriver2.ogg' var/stage = EMPTY @@ -539,4 +539,4 @@ #undef EMPTY #undef WIRED -#undef READY \ No newline at end of file +#undef READY diff --git a/code/game/objects/items/weapons/grenades/clowngrenade.dm b/code/game/objects/items/weapons/grenades/clowngrenade.dm index 0fcdceff9ac..0d24bd80a95 100644 --- a/code/game/objects/items/weapons/grenades/clowngrenade.dm +++ b/code/game/objects/items/weapons/grenades/clowngrenade.dm @@ -3,7 +3,7 @@ desc = "HONK! brand Bananas. In a special applicator for rapid slipping of wide areas." icon_state = "banana" item_state = "flashbang" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 2.0 var/stage = 0 var/state = 0 @@ -74,4 +74,4 @@ if(istype(hit_atom ,/mob/living)) var/mob/living/M = hit_atom M.take_organ_damage(0, burned) - return ..() \ No newline at end of file + return ..() diff --git a/code/game/objects/items/weapons/grenades/ghettobomb.dm b/code/game/objects/items/weapons/grenades/ghettobomb.dm index 745afd967ee..13b0f0b8140 100644 --- a/code/game/objects/items/weapons/grenades/ghettobomb.dm +++ b/code/game/objects/items/weapons/grenades/ghettobomb.dm @@ -17,7 +17,7 @@ /obj/item/weapon/grenade/iedcasing name = "improvised explosive assembly" desc = "An igniter stuffed into an aluminum shell." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL icon = 'icons/obj/grenade.dmi' icon_state = "improvised_grenade" item_state = "flashbang" @@ -67,7 +67,7 @@ /obj/item/weapon/grenade/iedcasing/filled name = "improvised firebomb" desc = "A weak, improvised incendiary device." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL icon = 'icons/obj/grenade.dmi' icon_state = "improvised_grenade" item_state = "flashbang" diff --git a/code/game/objects/items/weapons/grenades/grenade.dm b/code/game/objects/items/weapons/grenades/grenade.dm index af855e63016..88abd66913f 100644 --- a/code/game/objects/items/weapons/grenades/grenade.dm +++ b/code/game/objects/items/weapons/grenades/grenade.dm @@ -1,7 +1,7 @@ /obj/item/weapon/grenade name = "grenade" desc = "A hand held grenade, with an adjustable timer." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL icon = 'icons/obj/grenade.dmi' icon_state = "grenade" item_state = "flashbang" diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm index 723920e7a5c..e802916de27 100644 --- a/code/game/objects/items/weapons/handcuffs.dm +++ b/code/game/objects/items/weapons/handcuffs.dm @@ -7,7 +7,7 @@ flags = CONDUCT slot_flags = SLOT_BELT throwforce = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 2 throw_range = 5 materials = list(MAT_METAL=500) diff --git a/code/game/objects/items/weapons/holosign.dm b/code/game/objects/items/weapons/holosign.dm index bfd16e71003..47547ec543a 100644 --- a/code/game/objects/items/weapons/holosign.dm +++ b/code/game/objects/items/weapons/holosign.dm @@ -5,7 +5,7 @@ icon_state = "signmaker" item_state = "electronic" force = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throwforce = 0 throw_speed = 3 throw_range = 7 diff --git a/code/game/objects/items/weapons/holy_weapons.dm b/code/game/objects/items/weapons/holy_weapons.dm index a6a1039f1c7..c4c4175d2fa 100644 --- a/code/game/objects/items/weapons/holy_weapons.dm +++ b/code/game/objects/items/weapons/holy_weapons.dm @@ -7,7 +7,7 @@ throw_speed = 3 throw_range = 4 throwforce = 10 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/reskinned = FALSE var/reskin_selectable = TRUE //set to FALSE if a subtype is meant to not normally be available as a reskin option (fluff ones will get re-added through their list) var/list/fluff_transformations = list() //does it have any special transformations only accessible to it? Should only be subtypes of /obj/item/weapon/nullrod @@ -71,7 +71,7 @@ item_state = "disintegrate" desc = "This hand of yours glows with an awesome power!" flags = ABSTRACT | NODROP - w_class = 5 + w_class = WEIGHT_CLASS_HUGE hitsound = 'sound/weapons/sear.ogg' damtype = BURN attack_verb = list("punched", "cross countered", "pummeled") @@ -81,7 +81,7 @@ icon_state = "godstaff-red" item_state = "godstaff-red" desc = "It has a mysterious, protective aura." - w_class = 5 + w_class = WEIGHT_CLASS_HUGE force = 5 slot_flags = SLOT_BACK block_chance = 50 @@ -96,7 +96,7 @@ icon_state = "claymore" item_state = "claymore" desc = "A weapon fit for a crusade!" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK|SLOT_BELT block_chance = 30 sharp = 1 @@ -183,7 +183,7 @@ icon_state = "scythe0" item_state = "scythe0" desc = "Ask not for whom the bell tolls..." - w_class = 4 + w_class = WEIGHT_CLASS_BULKY armour_penetration = 35 slot_flags = SLOT_BACK sharp = 1 @@ -255,7 +255,7 @@ item_state = "hammeron" desc = "This war hammer cost the chaplain fourty thousand space dollars." slot_flags = SLOT_BELT - w_class = 5 + w_class = WEIGHT_CLASS_HUGE attack_verb = list("smashed", "bashed", "hammered", "crunched") /obj/item/weapon/nullrod/chainsaw @@ -263,7 +263,7 @@ desc = "Good? Bad? You're the guy with the chainsaw hand." icon_state = "chainsaw1" item_state = "mounted_chainsaw" - w_class = 5 + w_class = WEIGHT_CLASS_HUGE flags = NODROP | ABSTRACT sharp = 1 edge = 1 @@ -322,7 +322,7 @@ icon_state = "arm_blade" item_state = "arm_blade" flags = ABSTRACT | NODROP - w_class = 5 + w_class = WEIGHT_CLASS_HUGE sharp = 1 edge = 1 @@ -349,7 +349,7 @@ /obj/item/weapon/nullrod/claymore/bostaff //May as well make it a "claymore" and inherit the blocking name = "monk's staff" desc = "A long, tall staff made of polished wood. Traditionally used in ancient old-Earth martial arts, now used to harass the clown." - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 13 block_chance = 40 slot_flags = SLOT_BACK @@ -365,7 +365,7 @@ name = "arrhythmic knife" icon_state = "crysknife" item_state = "crysknife" - w_class = 5 + w_class = WEIGHT_CLASS_HUGE desc = "They say fear is the true mind killer, but stabbing them in the head works too. Honour compels you to not sheathe it once drawn." sharp = 1 edge = 1 @@ -389,7 +389,7 @@ name = "unholy pitchfork" icon_state = "pitchfork0" item_state = "pitchfork0" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL desc = "Holding this makes you look absolutely devilish." attack_verb = list("poked", "impaled", "pierced", "jabbed") hitsound = 'sound/weapons/bladeslice.ogg' @@ -518,7 +518,7 @@ reskin_selectable = FALSE icon_state = "godstaff-red" item_state = "godstaff-red" - w_class = 5 + w_class = WEIGHT_CLASS_HUGE force = 5 slot_flags = SLOT_BACK block_chance = 50 diff --git a/code/game/objects/items/weapons/implants/implant_storage.dm b/code/game/objects/items/weapons/implants/implant_storage.dm index fba9c1377ef..acbed742159 100644 --- a/code/game/objects/items/weapons/implants/implant_storage.dm +++ b/code/game/objects/items/weapons/implants/implant_storage.dm @@ -1,9 +1,9 @@ /obj/item/weapon/storage/hidden/implant name = "bluespace pocket" storage_slots = 2 - max_w_class = 3 - max_combined_w_class = 6 - w_class = 4 + max_w_class = WEIGHT_CLASS_NORMAL + max_combined_w_class = WEIGHT_CLASS_GIGANTIC + w_class = WEIGHT_CLASS_BULKY cant_hold = list(/obj/item/weapon/disk/nuclear) silent = 1 @@ -58,4 +58,4 @@ /obj/item/weapon/implanter/storage/New() imp = new /obj/item/weapon/implant/storage(src) - ..() \ No newline at end of file + ..() diff --git a/code/game/objects/items/weapons/implants/implantcase.dm b/code/game/objects/items/weapons/implants/implantcase.dm index 41354136648..b35fecf77b1 100644 --- a/code/game/objects/items/weapons/implants/implantcase.dm +++ b/code/game/objects/items/weapons/implants/implantcase.dm @@ -6,7 +6,7 @@ item_state = "implantcase" throw_speed = 2 throw_range = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "materials=1;biotech=2" materials = list(MAT_GLASS=500) var/obj/item/weapon/implant/imp = null @@ -98,4 +98,4 @@ /obj/item/weapon/implantcase/death_alarm/New() imp = new /obj/item/weapon/implant/death_alarm(src) - ..() \ No newline at end of file + ..() diff --git a/code/game/objects/items/weapons/implants/implanter.dm b/code/game/objects/items/weapons/implants/implanter.dm index 8209de8da80..d055c7f1bb4 100644 --- a/code/game/objects/items/weapons/implants/implanter.dm +++ b/code/game/objects/items/weapons/implants/implanter.dm @@ -6,7 +6,7 @@ item_state = "syringe_0" throw_speed = 3 throw_range = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL origin_tech = "materials=1;biotech=3;programming=2" materials = list(MAT_METAL=600, MAT_GLASS=200) toolspeed = 1 @@ -86,4 +86,4 @@ /obj/item/weapon/implanter/death_alarm/New() imp = new /obj/item/weapon/implant/death_alarm(src) - ..() \ No newline at end of file + ..() diff --git a/code/game/objects/items/weapons/implants/implantpad.dm b/code/game/objects/items/weapons/implants/implantpad.dm index cd988d6310e..2e427638fd1 100644 --- a/code/game/objects/items/weapons/implants/implantpad.dm +++ b/code/game/objects/items/weapons/implants/implantpad.dm @@ -8,7 +8,7 @@ item_state = "electronic" throw_speed = 3 throw_range = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/obj/item/weapon/implantcase/case = null /obj/item/weapon/implantpad/Destroy() diff --git a/code/game/objects/items/weapons/kitchen.dm b/code/game/objects/items/weapons/kitchen.dm index 069bf06ddfb..c2bb92d4f89 100644 --- a/code/game/objects/items/weapons/kitchen.dm +++ b/code/game/objects/items/weapons/kitchen.dm @@ -18,7 +18,7 @@ */ /obj/item/weapon/kitchen/utensil force = 5.0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throwforce = 0.0 throw_speed = 3 throw_range = 5 @@ -91,7 +91,7 @@ desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come." flags = CONDUCT force = 10 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throwforce = 10 hitsound = 'sound/weapons/bladeslice.ogg' throw_speed = 3 @@ -122,7 +122,7 @@ desc = "The unearthly energies that once powered this blade are now dormant." icon = 'icons/obj/wizard.dmi' icon_state = "render" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/kitchen/knife/butcher name = "butcher's cleaver" @@ -132,7 +132,7 @@ force = 15 throwforce = 8 attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/kitchen/knife/butcher/meatcleaver name = "Meat Cleaver" @@ -175,7 +175,7 @@ throwforce = 10.0 throw_speed = 3 throw_range = 7 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") /* Trays moved to /obj/item/weapon/storage/bag */ @@ -192,7 +192,7 @@ throwforce = 5 throw_speed = 3 throw_range = 3 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "smashed") /obj/item/weapon/kitchen/mould/bear diff --git a/code/game/objects/items/weapons/legcuffs.dm b/code/game/objects/items/weapons/legcuffs.dm index 3bec7f32f9e..4592ff67cc2 100644 --- a/code/game/objects/items/weapons/legcuffs.dm +++ b/code/game/objects/items/weapons/legcuffs.dm @@ -6,7 +6,7 @@ icon_state = "handcuff" flags = CONDUCT throwforce = 0 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "materials=1" slowdown = 7 breakouttime = 300 //Deciseconds = 30s = 0.5 minute @@ -196,7 +196,7 @@ desc = "A specialized hard-light bola designed to ensnare fleeing criminals and aid in arrests." icon_state = "ebola" hitsound = 'sound/weapons/tase.ogg' - w_class = 2 + w_class = WEIGHT_CLASS_SMALL breakouttime = 60 /obj/item/weapon/restraints/legcuffs/bola/energy/throw_impact(atom/hit_atom) @@ -204,4 +204,4 @@ var/obj/item/weapon/restraints/legcuffs/beartrap/B = new /obj/item/weapon/restraints/legcuffs/beartrap/energy/cyborg(get_turf(hit_atom)) B.Crossed(hit_atom) qdel(src) - ..() \ No newline at end of file + ..() diff --git a/code/game/objects/items/weapons/lighters.dm b/code/game/objects/items/weapons/lighters.dm index 307ec829072..6525351fd67 100644 --- a/code/game/objects/items/weapons/lighters.dm +++ b/code/game/objects/items/weapons/lighters.dm @@ -9,7 +9,7 @@ item_state = "lighter-g" var/icon_on = "lighter-g-on" var/icon_off = "lighter-g" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throwforce = 4 flags = CONDUCT slot_flags = SLOT_BELT @@ -35,7 +35,7 @@ if(user.r_hand == src || user.l_hand == src || isrobot(user)) if(!lit) lit = 1 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY icon_state = icon_on item_state = icon_on if(istype(src, /obj/item/weapon/lighter/zippo) ) @@ -59,7 +59,7 @@ processing_objects.Add(src) else lit = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY icon_state = icon_off item_state = icon_off if(istype(src, /obj/item/weapon/lighter/zippo) ) @@ -147,7 +147,7 @@ icon_state = "match_unlit" var/lit = 0 var/smoketime = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "materials=1" attack_verb = list("burnt", "singed") diff --git a/code/game/objects/items/weapons/melee/energy.dm b/code/game/objects/items/weapons/melee/energy.dm index afc5dbd93ad..e0c4ec435fa 100644 --- a/code/game/objects/items/weapons/melee/energy.dm +++ b/code/game/objects/items/weapons/melee/energy.dm @@ -2,8 +2,8 @@ var/active = 0 var/force_on = 30 //force when active var/throwforce_on = 20 - w_class = 2 - var/w_class_on = 4 + w_class = WEIGHT_CLASS_SMALL + var/w_class_on = WEIGHT_CLASS_BULKY var/icon_state_on = "axe1" var/list/attack_verb_on = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") no_embed = 1 // Physically impossible for energy weapons to embed themselves into people, this should fix that. -- Dave @@ -61,8 +61,8 @@ throwforce_on = 30 throw_speed = 3 throw_range = 5 - w_class = 3 - w_class_on = 5 + w_class = WEIGHT_CLASS_NORMAL + w_class_on = WEIGHT_CLASS_HUGE hitsound = "swing_hit" flags = CONDUCT armour_penetration = 100 @@ -129,7 +129,7 @@ icon_state_on = "esaw_1" hitcost = 75 //Costs more than a standard cyborg esword item_color = null - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/melee/energy/sword/cyborg/saw/New() ..() @@ -207,7 +207,7 @@ throwforce = 1//Throwing or dropping the item deletes it. throw_speed = 3 throw_range = 1 - w_class = 4//So you can't hide it in your pocket or some such. + w_class = WEIGHT_CLASS_BULKY //So you can't hide it in your pocket or some such. armour_penetration = 50 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") var/datum/effect/system/spark_spread/spark_system @@ -223,4 +223,4 @@ qdel(src) /obj/item/weapon/melee/energy/blade/attack_self(mob/user) - return \ No newline at end of file + return diff --git a/code/game/objects/items/weapons/melee/misc.dm b/code/game/objects/items/weapons/melee/misc.dm index 7a05ca00cb6..6f0de4720e3 100644 --- a/code/game/objects/items/weapons/melee/misc.dm +++ b/code/game/objects/items/weapons/melee/misc.dm @@ -10,7 +10,7 @@ slot_flags = SLOT_BELT force = 10 throwforce = 7 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "combat=4" attack_verb = list("flogged", "whipped", "lashed", "disciplined") hitsound = 'sound/weapons/slash.ogg' //pls replace @@ -28,7 +28,7 @@ flags = CONDUCT force = 15 throwforce = 10 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY block_chance = 50 armour_penetration = 75 sharp = 1 @@ -50,7 +50,7 @@ item_state = "icepick" force = 15 throwforce = 10 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL attack_verb = list("stabbed", "jabbed", "iced,") /obj/item/weapon/melee/candy_sword @@ -60,5 +60,5 @@ item_state = "candy_sword" force = 10 throwforce = 7 - w_class = 3 - attack_verb = list("slashed", "stabbed", "sliced", "caned") \ No newline at end of file + w_class = WEIGHT_CLASS_NORMAL + attack_verb = list("slashed", "stabbed", "sliced", "caned") diff --git a/code/game/objects/items/weapons/misc.dm b/code/game/objects/items/weapons/misc.dm index ffd021aae4b..cd86a04a377 100644 --- a/code/game/objects/items/weapons/misc.dm +++ b/code/game/objects/items/weapons/misc.dm @@ -30,7 +30,7 @@ flags = CONDUCT force = 5.0 throwforce = 7.0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=50) attack_verb = list("bludgeoned", "whacked", "disciplined", "thrashed", "Vaudevilled") @@ -43,7 +43,7 @@ icon = 'icons/obj/items.dmi' icon_state = "c_tube" throwforce = 1 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 4 throw_range = 5 @@ -65,7 +65,7 @@ var/data = "" var/base_url = "http://svn.slurm.us/public/spacestation13/misc/game_kit" item_state = "sheet-metal" - w_class = 5 + w_class = WEIGHT_CLASS_HUGE */ /obj/item/weapon/gift @@ -76,7 +76,7 @@ var/size = 3.0 var/obj/item/gift = null item_state = "gift" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY /obj/item/weapon/kidanglobe name = "Kidan homeworld globe" @@ -134,7 +134,7 @@ throwforce = 2 throw_speed = 1 throw_range = 4 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL attack_verb = list("called", "rang") hitsound = 'sound/weapons/ring.ogg' var/cooldown = 0 diff --git a/code/game/objects/items/weapons/mop.dm b/code/game/objects/items/weapons/mop.dm index 4495f637e56..59db57459b9 100644 --- a/code/game/objects/items/weapons/mop.dm +++ b/code/game/objects/items/weapons/mop.dm @@ -9,7 +9,7 @@ throwforce = 5.0 throw_speed = 3 throw_range = 7 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL attack_verb = list("mopped", "bashed", "bludgeoned", "whacked") burn_state = FLAMMABLE var/mopping = 0 diff --git a/code/game/objects/items/weapons/paint.dm b/code/game/objects/items/weapons/paint.dm index 67d4f078264..dc5c4d048b5 100644 --- a/code/game/objects/items/weapons/paint.dm +++ b/code/game/objects/items/weapons/paint.dm @@ -7,7 +7,7 @@ icon_state = "paint_neutral" item_state = "paintcan" materials = list(MAT_METAL=200) - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL burn_state = FLAMMABLE burntime = 5 amount_per_transfer_from_this = 5 @@ -63,4 +63,4 @@ /obj/item/weapon/reagent_containers/glass/paint/remover name = "paint remover bucket" - list_reagents = list("paint_remover" = 70) \ No newline at end of file + list_reagents = list("paint_remover" = 70) diff --git a/code/game/objects/items/weapons/pneumaticCannon.dm b/code/game/objects/items/weapons/pneumaticCannon.dm index 307da253e64..116391803bd 100644 --- a/code/game/objects/items/weapons/pneumaticCannon.dm +++ b/code/game/objects/items/weapons/pneumaticCannon.dm @@ -1,7 +1,7 @@ /obj/item/weapon/pneumatic_cannon name = "pneumatic cannon" desc = "A gas-powered cannon that can fire any object loaded into it." - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 8 //Very heavy attack_verb = list("bludgeoned", "smashed", "beaten") icon = 'icons/obj/pneumaticCannon.dmi' @@ -132,7 +132,7 @@ name = "improvised pneumatic cannon" desc = "A gas-powered, object-firing cannon made out of common parts." force = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL maxWeightClass = 7 gasPerThrow = 5 diff --git a/code/game/objects/items/weapons/powerfist.dm b/code/game/objects/items/weapons/powerfist.dm index 9ee2c46728e..218fe47ed6b 100644 --- a/code/game/objects/items/weapons/powerfist.dm +++ b/code/game/objects/items/weapons/powerfist.dm @@ -8,7 +8,7 @@ force = 12 throwforce = 10 throw_range = 7 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "combat=5;powerstorage=3;syndicate=3" var/click_delay = 1.5 var/fisto_setting = 1 diff --git a/code/game/objects/items/weapons/scissors.dm b/code/game/objects/items/weapons/scissors.dm index 6cfb677bd21..5571640f08f 100644 --- a/code/game/objects/items/weapons/scissors.dm +++ b/code/game/objects/items/weapons/scissors.dm @@ -6,7 +6,7 @@ force = 5 sharp = 1 edge = 1 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL hitsound = 'sound/weapons/bladeslice.ogg' attack_verb = list("slices", "cuts", "stabs", "jabs") toolspeed = 1 diff --git a/code/game/objects/items/weapons/scrolls.dm b/code/game/objects/items/weapons/scrolls.dm index 0b45cd4a42e..254b936ed46 100644 --- a/code/game/objects/items/weapons/scrolls.dm +++ b/code/game/objects/items/weapons/scrolls.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/wizard.dmi' icon_state = "scroll" var/uses = 4.0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL item_state = "paper" throw_speed = 4 throw_range = 20 @@ -96,4 +96,4 @@ user.loc = pick(L) smoke.start() - src.uses -= 1 \ No newline at end of file + src.uses -= 1 diff --git a/code/game/objects/items/weapons/shards.dm b/code/game/objects/items/weapons/shards.dm index 70073b38123..554347224eb 100644 --- a/code/game/objects/items/weapons/shards.dm +++ b/code/game/objects/items/weapons/shards.dm @@ -7,7 +7,7 @@ sharp = 1 edge = 1 desc = "Could probably be used as ... a throwing weapon?" - w_class = 1 + w_class = WEIGHT_CLASS_TINY force = 5.0 throwforce = 10.0 item_state = "shard-glass" @@ -112,4 +112,4 @@ src.pixel_x = rand(-5, 5) src.pixel_y = rand(-5, 5) else - return \ No newline at end of file + return diff --git a/code/game/objects/items/weapons/shields.dm b/code/game/objects/items/weapons/shields.dm index 479cb278e91..d801ec7d460 100644 --- a/code/game/objects/items/weapons/shields.dm +++ b/code/game/objects/items/weapons/shields.dm @@ -19,7 +19,7 @@ throwforce = 5 throw_speed = 2 throw_range = 3 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY materials = list(MAT_GLASS=7500, MAT_METAL=1000) origin_tech = "materials=2" attack_verb = list("shoved", "bashed") @@ -58,7 +58,7 @@ throwforce = 3 throw_speed = 3 throw_range = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "materials=4;magnets=3;syndicate=4" attack_verb = list("shoved", "bashed") var/active = 0 @@ -80,14 +80,14 @@ force = 10 throwforce = 8 throw_speed = 2 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY playsound(user, 'sound/weapons/saberon.ogg', 35, 1) to_chat(user, "[src] is now active.") else force = 3 throwforce = 3 throw_speed = 3 - w_class = 1 + w_class = WEIGHT_CLASS_TINY playsound(user, 'sound/weapons/saberoff.ogg', 35, 1) to_chat(user, "[src] can now be concealed.") if(istype(user,/mob/living/carbon/human)) @@ -107,7 +107,7 @@ throwforce = 3 throw_speed = 3 throw_range = 4 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/active = 0 /obj/item/weapon/shield/riot/tele/hit_reaction(mob/living/carbon/human/owner, attack_text, final_block_chance) @@ -124,14 +124,14 @@ force = 8 throwforce = 5 throw_speed = 2 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK to_chat(user, "You extend \the [src].") else force = 3 throwforce = 3 throw_speed = 3 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL slot_flags = null to_chat(user, "[src] can now be concealed.") if(istype(user,/mob/living/carbon/human)) diff --git a/code/game/objects/items/weapons/signs.dm b/code/game/objects/items/weapons/signs.dm index fa68b09135e..006ad92dcf5 100644 --- a/code/game/objects/items/weapons/signs.dm +++ b/code/game/objects/items/weapons/signs.dm @@ -4,7 +4,7 @@ name = "blank picket sign" desc = "It's blank" force = 5 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY attack_verb = list("bashed","smacked") burn_state = FLAMMABLE @@ -42,4 +42,4 @@ reqs = list(/obj/item/stack/rods = 1, /obj/item/stack/sheet/cardboard = 2) time = 80 - category = CAT_MISC \ No newline at end of file + category = CAT_MISC diff --git a/code/game/objects/items/weapons/soap.dm b/code/game/objects/items/weapons/soap.dm index f21c0581888..e4183b5bafd 100644 --- a/code/game/objects/items/weapons/soap.dm +++ b/code/game/objects/items/weapons/soap.dm @@ -4,7 +4,7 @@ gender = PLURAL icon = 'icons/obj/items.dmi' icon_state = "soap" - w_class = 1 + w_class = WEIGHT_CLASS_TINY throwforce = 0 throw_speed = 4 throw_range = 20 @@ -53,4 +53,4 @@ /obj/item/weapon/soap/syndie desc = "An untrustworthy bar of soap made of strong chemical agents that dissolve blood faster." icon_state = "soapsyndie" - cleanspeed = 10 //much faster than mop so it is useful for traitors who want to clean crime scenes \ No newline at end of file + cleanspeed = 10 //much faster than mop so it is useful for traitors who want to clean crime scenes diff --git a/code/game/objects/items/weapons/staff.dm b/code/game/objects/items/weapons/staff.dm index 19c771873ce..b9d1896f70c 100644 --- a/code/game/objects/items/weapons/staff.dm +++ b/code/game/objects/items/weapons/staff.dm @@ -7,7 +7,7 @@ throwforce = 5.0 throw_speed = 1 throw_range = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL armour_penetration = 100 attack_verb = list("bludgeoned", "whacked", "disciplined") burn_state = FLAMMABLE @@ -73,4 +73,4 @@ throwforce = 5.0 throw_speed = 1 throw_range = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL diff --git a/code/game/objects/items/weapons/stock_parts.dm b/code/game/objects/items/weapons/stock_parts.dm index 74fc3a5be6c..3615d6848c2 100644 --- a/code/game/objects/items/weapons/stock_parts.dm +++ b/code/game/objects/items/weapons/stock_parts.dm @@ -5,7 +5,7 @@ desc = "Special mechanical module made to store, sort, and apply standard machine parts." icon_state = "RPED" item_state = "RPED" - w_class = 5 + w_class = WEIGHT_CLASS_HUGE can_hold = list(/obj/item/weapon/stock_parts) storage_slots = 50 use_to_pickup = 1 @@ -13,7 +13,7 @@ allow_quick_empty = 1 collection_mode = 1 display_contents_with_number = 1 - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 100 var/works_from_distance = 0 var/primary_sound = 'sound/items/rped.ogg' @@ -36,9 +36,9 @@ name = "bluespace rapid part exchange device" desc = "A version of the RPED that allows for replacement of parts and scanning from a distance, along with higher capacity for parts." icon_state = "BS_RPED" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL storage_slots = 400 - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 800 works_from_distance = 1 primary_sound = 'sound/items/PSHOOM.ogg' @@ -63,11 +63,11 @@ desc = "What?" gender = PLURAL icon = 'icons/obj/stock_parts.dmi' - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/rating = 1 toolspeed = 1 usesound = 'sound/items/Deconstruct.ogg' - + /obj/item/weapon/stock_parts/New() src.pixel_x = rand(-5.0, 5) src.pixel_y = rand(-5.0, 5) diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index d0dee297cd7..6a5f9b80ae3 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -10,9 +10,9 @@ item_state = "backpack" lefthand_file = 'icons/mob/inhands/clothing_lefthand.dmi' righthand_file = 'icons/mob/inhands/clothing_righthand.dmi' - w_class = 4 + w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK //ERROOOOO - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 21 storage_slots = 21 burn_state = FLAMMABLE @@ -35,7 +35,7 @@ desc = "A backpack that opens into a localized pocket of Blue Space." origin_tech = "bluespace=4" icon_state = "holdingpack" - max_w_class = 5 + max_w_class = WEIGHT_CLASS_HUGE max_combined_w_class = 35 burn_state = FIRE_PROOF @@ -88,8 +88,8 @@ desc = "Space Santa uses this to deliver toys to all the nice children in space on Christmas! Wow, it's pretty big!" icon_state = "giftbag0" item_state = "giftbag" - w_class = 4 - max_w_class = 3 + w_class = WEIGHT_CLASS_BULKY + max_w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 400 // can store a ton of shit! /obj/item/weapon/storage/backpack/cultpack @@ -243,7 +243,7 @@ name = "smuggler's satchel" desc = "A very slim satchel that can easily fit into tight spaces." icon_state = "satchel-flat" - w_class = 3 //Can fit in backpacks itself. + w_class = WEIGHT_CLASS_NORMAL //Can fit in backpacks itself. max_combined_w_class = 15 level = 1 cant_hold = list(/obj/item/weapon/storage/backpack/satchel_flat) //muh recursive backpacks diff --git a/code/game/objects/items/weapons/storage/bags.dm b/code/game/objects/items/weapons/storage/bags.dm index b90d11a543e..0cff8d89ea4 100644 --- a/code/game/objects/items/weapons/storage/bags.dm +++ b/code/game/objects/items/weapons/storage/bags.dm @@ -33,8 +33,8 @@ icon_state = "trashbag" item_state = "trashbag" - w_class = 1 - max_w_class = 2 + w_class = WEIGHT_CLASS_TINY + max_w_class = WEIGHT_CLASS_SMALL storage_slots = 30 can_hold = list() // any cant_hold = list(/obj/item/weapon/disk/nuclear) @@ -46,16 +46,16 @@ /obj/item/weapon/storage/bag/trash/update_icon() if(contents.len == 0) - w_class = 1 + w_class = WEIGHT_CLASS_TINY icon_state = "[initial(icon_state)]" else if(contents.len < 12) - w_class = 4 + w_class = WEIGHT_CLASS_BULKY icon_state = "[initial(icon_state)]1" else if(contents.len < 21) - w_class = 4 + w_class = WEIGHT_CLASS_BULKY icon_state = "[initial(icon_state)]2" else - w_class = 4 + w_class = WEIGHT_CLASS_BULKY icon_state = "[initial(icon_state)]3" /obj/item/weapon/storage/bag/trash/cyborg @@ -88,8 +88,8 @@ item_state = "plasticbag" slot_flags = SLOT_HEAD|SLOT_BELT throwforce = 0 - w_class = 4 - max_w_class = 2 + w_class = WEIGHT_CLASS_BULKY + max_w_class = WEIGHT_CLASS_SMALL storage_slots = 7 display_contents_with_number = 0 //or else this will lead to stupid behavior. can_hold = list() // any @@ -132,10 +132,10 @@ icon = 'icons/obj/mining.dmi' icon_state = "satchel" slot_flags = SLOT_BELT | SLOT_POCKET - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL storage_slots = 50 max_combined_w_class = 200 //Doesn't matter what this is, so long as it's more or equal to storage_slots * ore.w_class - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL can_hold = list(/obj/item/weapon/ore) /obj/item/weapon/storage/bag/ore/cyborg @@ -164,8 +164,8 @@ icon_state = "plantbag" storage_slots = 100 //the number of plant pieces it can carry. max_combined_w_class = 100 //Doesn't matter what this is, so long as it's more or equal to storage_slots * plants.w_class - max_w_class = 3 - w_class = 1 + max_w_class = WEIGHT_CLASS_NORMAL + w_class = WEIGHT_CLASS_TINY can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/grown,/obj/item/seeds,/obj/item/weapon/grown,/obj/item/weapon/reagent_containers/food/snacks/ash_flora) burn_state = FLAMMABLE @@ -202,7 +202,7 @@ desc = "A patented Nanotrasen storage system designed for any kind of mineral sheet." var/capacity = 300; //the number of sheets it can carry. - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL allow_quick_empty = 1 // this function is superceded New() @@ -343,8 +343,8 @@ desc = "A bag for carrying lots of cash. It's got a big dollar sign printed on the front." storage_slots = 50; //the number of cash pieces it can carry. max_combined_w_class = 200 //Doesn't matter what this is, so long as it's more or equal to storage_slots * cash.w_class - max_w_class = 3 - w_class = 1 + max_w_class = WEIGHT_CLASS_NORMAL + w_class = WEIGHT_CLASS_TINY can_hold = list(/obj/item/weapon/coin,/obj/item/stack/spacecash) // ----------------------------- @@ -359,8 +359,8 @@ display_contents_with_number = 0 //This would look really stupid otherwise storage_slots = 7 max_combined_w_class = 21 - max_w_class = 3 - w_class = 4 //Bigger than a book because physics + max_w_class = WEIGHT_CLASS_NORMAL + w_class = WEIGHT_CLASS_BULKY //Bigger than a book because physics can_hold = list(/obj/item/weapon/book, /obj/item/weapon/storage/bible, /obj/item/weapon/tome, /obj/item/weapon/spellbook) burn_state = FLAMMABLE @@ -376,7 +376,7 @@ throwforce = 10.0 throw_speed = 3 throw_range = 5 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY flags = CONDUCT materials = list(MAT_METAL=3000) @@ -469,7 +469,7 @@ desc = "A bag for storing pills, patches, and bottles." storage_slots = 50 max_combined_w_class = 200 - w_class = 1 + w_class = WEIGHT_CLASS_TINY can_hold = list(/obj/item/weapon/reagent_containers/food/pill,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/glass/bottle) burn_state = FLAMMABLE /* @@ -483,6 +483,6 @@ desc = "A bag for the safe transportation and disposal of biowaste and other biological materials." storage_slots = 25 max_combined_w_class = 200 - w_class = 1 + w_class = WEIGHT_CLASS_TINY can_hold = list(/obj/item/slime_extract,/obj/item/weapon/reagent_containers/food/snacks/monkeycube,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/blood,/obj/item/weapon/reagent_containers/hypospray/autoinjector) burn_state = FLAMMABLE diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 609edd2961f..dd1af4c6ea4 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -176,7 +176,7 @@ icon_state = "securitybelt" item_state = "security"//Could likely use a better one. storage_slots = 5 - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL use_item_overlays = 1 can_hold = list( /obj/item/weapon/grenade/flashbang, @@ -249,7 +249,7 @@ icon_state = "militarybelt" item_state = "military" max_w_class = WEIGHT_CLASS_SMALL - + /obj/item/weapon/storage/belt/military/abductor name = "agent belt" desc = "A belt used by abductor agents." @@ -280,7 +280,7 @@ icon_state = "janibelt" item_state = "janibelt" storage_slots = 6 - max_w_class = 4 // Set to this so the light replacer can fit. + max_w_class = WEIGHT_CLASS_BULKY // Set to this so the light replacer can fit. use_item_overlays = 1 can_hold = list( /obj/item/weapon/grenade/chem_grenade/cleaner, @@ -306,8 +306,8 @@ desc = "For the mining master, holds your lazarus capsules." icon_state = "lazarusbelt" item_state = "lazbelt" - w_class = 4 - max_w_class = 1 + w_class = WEIGHT_CLASS_BULKY + max_w_class = WEIGHT_CLASS_TINY max_combined_w_class = 6 storage_slots = 6 can_hold = list(/obj/item/device/mobcapsule) @@ -379,7 +379,7 @@ icon_state = "holster" item_state = "holster" storage_slots = 1 - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL can_hold = list( /obj/item/weapon/gun/projectile/automatic/pistol, /obj/item/weapon/gun/projectile/revolver/detective @@ -417,7 +417,7 @@ icon_state = "fannypack_leather" item_state = "fannypack_leather" storage_slots = 3 - max_w_class = 2 + max_w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/storage/belt/fannypack/black name = "black fannypack" @@ -475,8 +475,8 @@ icon_state = "sheath" item_state = "sheath" storage_slots = 1 - w_class = 4 - max_w_class = 4 + w_class = WEIGHT_CLASS_BULKY + max_w_class = WEIGHT_CLASS_BULKY can_hold = list(/obj/item/weapon/melee/rapier) /obj/item/weapon/storage/belt/rapier/update_icon() @@ -506,8 +506,8 @@ icon_state = "holdingbelt" item_state = "holdingbelt" storage_slots = 14 - w_class = 4 - max_w_class = 2 + w_class = WEIGHT_CLASS_BULKY + max_w_class = WEIGHT_CLASS_SMALL max_combined_w_class = 21 // = 14 * 1.5, not 14 * 2. This is deliberate origin_tech = "bluespace=4" can_hold = list() @@ -530,7 +530,7 @@ icon_state = "securitybelt" item_state = "security" storage_slots = 6 - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 18 origin_tech = "bluespace=4;syndicate=2" allow_quick_empty = 1 diff --git a/code/game/objects/items/weapons/storage/bible.dm b/code/game/objects/items/weapons/storage/bible.dm index f005f2f8b8e..17bf8fcac8e 100644 --- a/code/game/objects/items/weapons/storage/bible.dm +++ b/code/game/objects/items/weapons/storage/bible.dm @@ -4,7 +4,7 @@ icon_state ="bible" throw_speed = 1 throw_range = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL burn_state = FLAMMABLE var/mob/affecting = null var/deity_name = "Christ" diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 8a487289e35..594028e4f1f 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -634,8 +634,8 @@ icon_state = "matchbox" item_state = "zippo" storage_slots = 10 - w_class = 1 - max_w_class = 1 + w_class = WEIGHT_CLASS_TINY + max_w_class = WEIGHT_CLASS_TINY slot_flags = SLOT_BELT can_hold = list(/obj/item/weapon/match) @@ -810,4 +810,4 @@ #undef NANOTRASEN #undef SYNDI #undef HEART -#undef SMILE \ No newline at end of file +#undef SMILE diff --git a/code/game/objects/items/weapons/storage/briefcase.dm b/code/game/objects/items/weapons/storage/briefcase.dm index 7f2a91054c1..89122d1a337 100644 --- a/code/game/objects/items/weapons/storage/briefcase.dm +++ b/code/game/objects/items/weapons/storage/briefcase.dm @@ -8,12 +8,12 @@ force = 8.0 throw_speed = 2 throw_range = 4 - w_class = 4 - max_w_class = 3 + w_class = WEIGHT_CLASS_BULKY + max_w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 21 attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") burn_state = FLAMMABLE burntime = 20 /obj/item/weapon/storage/briefcase/New() - ..() \ No newline at end of file + ..() diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm index a3f2a21a5fa..d8de4ee7c53 100644 --- a/code/game/objects/items/weapons/storage/fancy.dm +++ b/code/game/objects/items/weapons/storage/fancy.dm @@ -115,7 +115,7 @@ desc = "A box of crayons for all your rune drawing needs." icon = 'icons/obj/crayons.dmi' icon_state = "crayonbox" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL storage_slots = 6 icon_type = "crayon" can_hold = list( @@ -158,7 +158,7 @@ icon = 'icons/obj/cigarettes.dmi' icon_state = "cigpacket" item_state = "cigpacket" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throwforce = 2 slot_flags = SLOT_BELT storage_slots = 6 @@ -318,7 +318,7 @@ /obj/item/weapon/storage/fancy/rollingpapers name = "rolling paper pack" desc = "A pack of NanoTrasen brand rolling papers." - w_class = 1 + w_class = WEIGHT_CLASS_TINY icon = 'icons/obj/cigarettes.dmi' icon_state = "cig_paper_pack" storage_slots = 10 @@ -360,7 +360,7 @@ icon = 'icons/obj/vialbox.dmi' icon_state = "vialbox0" item_state = "syringe_kit" - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL can_hold = list(/obj/item/weapon/reagent_containers/glass/beaker/vial) max_combined_w_class = 14 //The sum of the w_classes of all the items in this storage item. storage_slots = 6 diff --git a/code/game/objects/items/weapons/storage/firstaid.dm b/code/game/objects/items/weapons/storage/firstaid.dm index 5ab8713a49a..8794c09014b 100644 --- a/code/game/objects/items/weapons/storage/firstaid.dm +++ b/code/game/objects/items/weapons/storage/firstaid.dm @@ -155,7 +155,7 @@ name = "first-aid kit" icon_state = "bezerk" desc = "I hope you've got insurance." - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL treatment_oxy = "perfluorodecalin" treatment_brute = "styptic_powder" treatment_fire = "silver_sulfadiazine" @@ -181,7 +181,7 @@ name = "field surgery kit" icon_state = "duffel-med" desc = "A kit for surgery in the field." - max_w_class = 4 + max_w_class = WEIGHT_CLASS_BULKY max_combined_w_class = 21 storage_slots = 10 can_hold = list(/obj/item/roller,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel, /obj/item/weapon/scalpel, /obj/item/weapon/hemostat, @@ -209,7 +209,7 @@ icon_state = "pill_canister" icon = 'icons/obj/chemical.dmi' item_state = "contsolid" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL can_hold = list(/obj/item/weapon/reagent_containers/food/pill, /obj/item/weapon/dice, /obj/item/weapon/paper) allow_quick_gather = 1 use_to_pickup = 1 diff --git a/code/game/objects/items/weapons/storage/lockbox.dm b/code/game/objects/items/weapons/storage/lockbox.dm index b622e469124..2f4a3b2e5ac 100644 --- a/code/game/objects/items/weapons/storage/lockbox.dm +++ b/code/game/objects/items/weapons/storage/lockbox.dm @@ -5,8 +5,8 @@ desc = "A locked box." icon_state = "lockbox+l" item_state = "syringe_kit" - w_class = 4 - max_w_class = 3 + w_class = WEIGHT_CLASS_BULKY + max_w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 14 //The sum of the w_classes of all the items in this storage item. storage_slots = 4 req_access = list(access_armory) @@ -76,7 +76,7 @@ /obj/item/weapon/storage/lockbox/large name = "Large lockbox" desc = "A large lockbox" - max_w_class = 4 + max_w_class = WEIGHT_CLASS_BULKY max_combined_w_class = 4 //The sum of the w_classes of all the items in this storage item. storage_slots = 1 @@ -105,8 +105,8 @@ desc = "A locked box used to store medals of honor." icon_state = "medalbox+l" item_state = "syringe_kit" - w_class = 3 - max_w_class = 2 + w_class = WEIGHT_CLASS_NORMAL + max_w_class = WEIGHT_CLASS_SMALL max_combined_w_class = 20 storage_slots = 12 req_access = list(access_captain) diff --git a/code/game/objects/items/weapons/storage/secure.dm b/code/game/objects/items/weapons/storage/secure.dm index e06cbb91255..7619fd953d7 100644 --- a/code/game/objects/items/weapons/storage/secure.dm +++ b/code/game/objects/items/weapons/storage/secure.dm @@ -23,8 +23,8 @@ var/l_hacking = 0 var/emagged = 0 var/open = 0 - w_class = 3 - max_w_class = 2 + w_class = WEIGHT_CLASS_NORMAL + max_w_class = WEIGHT_CLASS_SMALL max_combined_w_class = 14 /obj/item/weapon/storage/secure/examine(mob/user) @@ -180,8 +180,8 @@ force = 8 throw_speed = 2 throw_range = 4 - w_class = 4 - max_w_class = 3 + w_class = WEIGHT_CLASS_BULKY + max_w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 21 attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") @@ -228,7 +228,7 @@ icon_locking = "safeb" icon_sparking = "safespark" force = 8 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE max_w_class = 8 anchored = 1 density = 0 diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm index adeb8fadcd3..21ea7c33993 100644 --- a/code/game/objects/items/weapons/storage/storage.dm +++ b/code/game/objects/items/weapons/storage/storage.dm @@ -8,11 +8,11 @@ /obj/item/weapon/storage name = "storage" icon = 'icons/obj/storage.dmi' - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/silent = 0 // No message on putting items in var/list/can_hold = new/list() //List of objects which this item can store (if set, it can't store anything else) var/list/cant_hold = new/list() //List of objects which this item can't store (in effect only if can_hold isn't set) - var/max_w_class = 2 //Max size of objects that this object can store (in effect only if can_hold isn't set) + var/max_w_class = WEIGHT_CLASS_SMALL //Max size of objects that this object can store (in effect only if can_hold isn't set) var/max_combined_w_class = 14 //The sum of the w_classes of all the items in this storage item. var/storage_slots = 7 //The number of storage slots in this container. var/obj/screen/storage/boxes = null @@ -304,7 +304,7 @@ to_chat(usr, "You put the [W] into [src].") else if(M in range(1)) //If someone is standing close enough, they can tell what it is... M.show_message("[usr] puts [W] into [src].") - else if(W && W.w_class >= 3.0) //Otherwise they can only see large or normal items from a distance... + else if(W && W.w_class >= WEIGHT_CLASS_NORMAL) //Otherwise they can only see large or normal items from a distance... M.show_message("[usr] puts [W] into [src].") src.orient2hud(usr) diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm index a6ecd3d45ac..3c7bcee7ab4 100644 --- a/code/game/objects/items/weapons/storage/toolbox.dm +++ b/code/game/objects/items/weapons/storage/toolbox.dm @@ -9,7 +9,7 @@ throwforce = 10.0 throw_speed = 2 throw_range = 7 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY materials = list(MAT_METAL = 500) origin_tech = "combat=1" attack_verb = list("robusted") @@ -85,7 +85,7 @@ new /obj/item/weapon/wirecutters(src, "red") new /obj/item/device/multitool(src) new /obj/item/clothing/gloves/combat(src) - + /obj/item/weapon/storage/toolbox/drone name = "mechanical toolbox" icon_state = "blue" @@ -119,4 +119,4 @@ new /obj/item/weapon/wirecutters/brass(src) new /obj/item/weapon/wrench/brass(src) new /obj/item/weapon/crowbar/brass(src) - new /obj/item/weapon/weldingtool/experimental/brass(src) \ No newline at end of file + new /obj/item/weapon/weldingtool/experimental/brass(src) diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm index 03fc0a7b742..d721cb46271 100644 --- a/code/game/objects/items/weapons/storage/uplink_kits.dm +++ b/code/game/objects/items/weapons/storage/uplink_kits.dm @@ -69,7 +69,7 @@ new /obj/item/clothing/suit/hooded/chaplain_hoodie(src) new /obj/item/weapon/card/id/syndicate(src) return - + if("gadgets") new /obj/item/clothing/gloves/color/yellow/power(src) new /obj/item/weapon/pen/sleepy(src) @@ -88,7 +88,7 @@ /obj/item/weapon/storage/box/syndie_kit/space name = "Boxed Space Suit and Helmet" can_hold = list(/obj/item/clothing/suit/space/syndicate/black/red, /obj/item/clothing/head/helmet/space/syndicate/black/red) - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/storage/box/syndie_kit/space/New() ..() @@ -99,7 +99,7 @@ /obj/item/weapon/storage/box/syndie_kit/hardsuit name = "Boxed Blood Red Suit and Helmet" can_hold = list(/obj/item/clothing/suit/space/hardsuit/syndi, /obj/item/clothing/head/helmet/space/hardsuit/syndi) - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/storage/box/syndie_kit/hardsuit/New() ..() @@ -110,7 +110,7 @@ /obj/item/weapon/storage/box/syndie_kit/elite_hardsuit name = "Boxed Elite Syndicate Hardsuit and Helmet" can_hold = list(/obj/item/clothing/suit/space/hardsuit/syndi/elite, /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite) - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/storage/box/syndie_kit/elite_hardsuit/New() ..() @@ -120,7 +120,7 @@ /obj/item/weapon/storage/box/syndie_kit/shielded_hardsuit name = "Boxed Shielded Syndicate Hardsuit and Helmet" can_hold = list(/obj/item/clothing/suit/space/hardsuit/shielded/syndi, /obj/item/clothing/head/helmet/space/hardsuit/shielded/syndi) - max_w_class = 4 + max_w_class = WEIGHT_CLASS_BULKY /obj/item/weapon/storage/box/syndie_kit/shielded_hardsuit/New() ..() diff --git a/code/game/objects/items/weapons/storage/wallets.dm b/code/game/objects/items/weapons/storage/wallets.dm index 0d9712ed43f..667b2ca7605 100644 --- a/code/game/objects/items/weapons/storage/wallets.dm +++ b/code/game/objects/items/weapons/storage/wallets.dm @@ -4,7 +4,7 @@ storage_slots = 10 icon = 'icons/obj/wallets.dmi' icon_state = "wallet" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL burn_state = FLAMMABLE can_hold = list( /obj/item/stack/spacecash, diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index 1de82690573..ca91b988442 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -7,7 +7,7 @@ slot_flags = SLOT_BELT force = 10 throwforce = 7 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "combat=2" attack_verb = list("beaten") var/stunforce = 7 @@ -190,7 +190,7 @@ icon_state = "stunprod_nocell" base_icon = "stunprod" item_state = "prod" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL force = 3 throwforce = 5 stunforce = 5 diff --git a/code/game/objects/items/weapons/swords_axes_etc.dm b/code/game/objects/items/weapons/swords_axes_etc.dm index 786b980d38f..e55b2451347 100644 --- a/code/game/objects/items/weapons/swords_axes_etc.dm +++ b/code/game/objects/items/weapons/swords_axes_etc.dm @@ -25,7 +25,7 @@ item_state = "classic_baton" slot_flags = SLOT_BELT force = 12 //9 hit crit - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/cooldown = 0 var/on = 1 @@ -90,7 +90,7 @@ icon_state = "telebaton_0" item_state = null slot_flags = SLOT_BELT - w_class = 2 + w_class = WEIGHT_CLASS_SMALL needs_permit = 0 force = 0 on = 0 @@ -101,7 +101,7 @@ to_chat(user, "You extend the baton.") icon_state = "telebaton_1" item_state = "nullrod" - w_class = 4 //doesnt fit in backpack when its on for balance + w_class = WEIGHT_CLASS_BULKY //doesnt fit in backpack when its on for balance force = 10 //stunbaton damage attack_verb = list("smacked", "struck", "cracked", "beaten") else @@ -109,7 +109,7 @@ icon_state = "telebaton_0" item_state = null //no sprite for concealment even when in hand slot_flags = SLOT_BELT - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 0 //not so robust now attack_verb = list("hit", "poked") if(istype(user,/mob/living/carbon/human)) diff --git a/code/game/objects/items/weapons/syndie_uplink.dm b/code/game/objects/items/weapons/syndie_uplink.dm index 3dd9a230ad1..0515dd41dd3 100644 --- a/code/game/objects/items/weapons/syndie_uplink.dm +++ b/code/game/objects/items/weapons/syndie_uplink.dm @@ -10,7 +10,7 @@ var/mob/currentUser = null var/obj/item/device/radio/origradio = null flags = CONDUCT | ONBELT - w_class = 2 + w_class = WEIGHT_CLASS_SMALL item_state = "radio" throw_speed = 4 throw_range = 20 @@ -31,8 +31,8 @@ slot_flags = SLOT_BELT item_state = "radio" throwforce = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 4 throw_range = 20 materials = list(MAT_METAL=100) - origin_tech = "magnets=1" \ No newline at end of file + origin_tech = "magnets=1" diff --git a/code/game/objects/items/weapons/tanks/jetpack.dm b/code/game/objects/items/weapons/tanks/jetpack.dm index 1bd8d8b761c..eef5475bdcd 100644 --- a/code/game/objects/items/weapons/tanks/jetpack.dm +++ b/code/game/objects/items/weapons/tanks/jetpack.dm @@ -4,7 +4,7 @@ name = "Jetpack (Empty)" desc = "A tank of compressed gas for use as propulsion in zero-gravity areas. Use with caution." icon_state = "jetpack" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY item_state = "jetpack" distribute_pressure = ONE_ATMOSPHERE*O2STANDARD var/datum/effect/system/ion_trail_follow/ion_trail @@ -116,7 +116,7 @@ item_state = "jetpack-mini" volume = 40 throw_range = 8 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/tank/jetpack/oxygenblack name = "Jetpack (Oxygen)" @@ -174,4 +174,4 @@ var/turf/T = get_turf(user) T.assume_air(removed) - return 1 \ No newline at end of file + return 1 diff --git a/code/game/objects/items/weapons/tanks/tank_types.dm b/code/game/objects/items/weapons/tanks/tank_types.dm index 428c4885814..4778a53c28b 100644 --- a/code/game/objects/items/weapons/tanks/tank_types.dm +++ b/code/game/objects/items/weapons/tanks/tank_types.dm @@ -126,7 +126,7 @@ icon_state = "emergency" flags = CONDUCT slot_flags = SLOT_BELT - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 4.0 distribute_pressure = ONE_ATMOSPHERE*O2STANDARD volume = 3 //Tiny. Real life equivalents only have 21 breaths of oxygen in them. They're EMERGENCY tanks anyway -errorage (dangercon 2011) diff --git a/code/game/objects/items/weapons/tanks/tanks.dm b/code/game/objects/items/weapons/tanks/tanks.dm index bd62357ba76..3b99936b0a8 100644 --- a/code/game/objects/items/weapons/tanks/tanks.dm +++ b/code/game/objects/items/weapons/tanks/tanks.dm @@ -7,7 +7,7 @@ flags = CONDUCT slot_flags = SLOT_BACK hitsound = 'sound/weapons/smash.ogg' - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL pressure_resistance = ONE_ATMOSPHERE*5 diff --git a/code/game/objects/items/weapons/tanks/watertank.dm b/code/game/objects/items/weapons/tanks/watertank.dm index e8cf034a5b5..5229a59fe5f 100644 --- a/code/game/objects/items/weapons/tanks/watertank.dm +++ b/code/game/objects/items/weapons/tanks/watertank.dm @@ -5,7 +5,7 @@ icon = 'icons/obj/watertank.dmi' icon_state = "waterbackpack" item_state = "waterbackpack" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK slowdown = 1 actions_types = list(/datum/action/item_action/toggle_mister) @@ -112,7 +112,7 @@ icon = 'icons/obj/watertank.dmi' icon_state = "mister" item_state = "mister" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY amount_per_transfer_from_this = 50 possible_transfer_amounts = list(25,50,100) volume = 500 @@ -220,7 +220,7 @@ power = 8 precision = 1 cooling_power = 5 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE flags = NODROP //Necessary to ensure that the nozzle and tank never seperate var/obj/item/weapon/watertank/tank var/nozzle_mode = 0 diff --git a/code/game/objects/items/weapons/tape.dm b/code/game/objects/items/weapons/tape.dm index 067bacaef4b..05486c9d85f 100644 --- a/code/game/objects/items/weapons/tape.dm +++ b/code/game/objects/items/weapons/tape.dm @@ -3,7 +3,7 @@ desc = "A roll of sticky tape. Possibly for taping ducks... or was that ducts?" icon = 'icons/obj/bureaucracy.dmi' icon_state = "taperoll" - w_class = 1 + w_class = WEIGHT_CLASS_TINY amount = 10 max_amount = 10 @@ -76,7 +76,7 @@ desc = "A piece of sticky tape." icon = 'icons/obj/bureaucracy.dmi' icon_state = "tape" - w_class = 1 + w_class = WEIGHT_CLASS_TINY layer = 4 anchored = 1 //it's sticky, no you cant move it diff --git a/code/game/objects/items/weapons/teleportation.dm b/code/game/objects/items/weapons/teleportation.dm index 87309c5927c..dafda733396 100644 --- a/code/game/objects/items/weapons/teleportation.dm +++ b/code/game/objects/items/weapons/teleportation.dm @@ -17,7 +17,7 @@ var/broadcasting = null var/listening = 1.0 flags = CONDUCT - w_class = 2 + w_class = WEIGHT_CLASS_SMALL item_state = "electronic" throw_speed = 4 throw_range = 20 @@ -98,7 +98,7 @@ Frequency: icon_state = "hand_tele" item_state = "electronic" throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 5 materials = list(MAT_METAL=10000) diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/twohanded.dm index ce2b5965c6c..a79ddf37341 100644 --- a/code/game/objects/items/weapons/twohanded.dm +++ b/code/game/objects/items/weapons/twohanded.dm @@ -109,7 +109,7 @@ ///////////OFFHAND/////////////// /obj/item/weapon/twohanded/offhand - w_class = 5 + w_class = WEIGHT_CLASS_HUGE icon_state = "offhand" name = "offhand" flags = ABSTRACT @@ -123,7 +123,7 @@ ///////////Two hand required objects/////////////// //This is for objects that require two hands to even pick up /obj/item/weapon/twohanded/required/ - w_class = 5 + w_class = WEIGHT_CLASS_HUGE /obj/item/weapon/twohanded/required/attack_self() return @@ -163,7 +163,7 @@ throwforce = 15 sharp = 1 edge = 1 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK force_unwielded = 5 force_wielded = 24 @@ -199,7 +199,7 @@ throwforce = 5.0 throw_speed = 1 throw_range = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force_unwielded = 3 force_wielded = 34 wieldsound = 'sound/weapons/saberon.ogg' @@ -286,7 +286,7 @@ name = "spear" desc = "A haphazardly-constructed yet still deadly weapon of ancient design." force = 10 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK force_unwielded = 10 force_wielded = 18 @@ -433,7 +433,7 @@ flags = CONDUCT force = 13 var/force_on = 21 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE throwforce = 13 throw_speed = 2 throw_range = 4 @@ -490,7 +490,7 @@ throwforce = 15 throw_speed = 1 throw_range = 5 - w_class = 4 // can't fit in backpacks + w_class = WEIGHT_CLASS_BULKY // can't fit in backpacks force_unwielded = 15 //still pretty robust force_wielded = 40 //you'll gouge their eye out! Or a limb...maybe even their entire body! wieldsound = 'sound/weapons/chainsawstart.ogg' @@ -545,7 +545,7 @@ force_wielded = 20 throwforce = 15 throw_range = 1 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE var/charged = 5 origin_tech = "combat=5;bluespace=4" @@ -610,7 +610,7 @@ force_wielded = 25 throwforce = 30 throw_range = 7 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE //var/charged = 5 origin_tech = "combat=5;powerstorage=5" @@ -658,7 +658,7 @@ force_wielded = 30 throwforce = 15 throw_range = 1 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE var/charged = 5 origin_tech = "combat=5;bluespace=4" @@ -719,7 +719,7 @@ throwforce = 15 sharp = 1 edge = 1 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE armour_penetration = 20 slot_flags = SLOT_BACK force_unwielded = 5 diff --git a/code/game/objects/items/weapons/vending_items.dm b/code/game/objects/items/weapons/vending_items.dm index 3fb54c16609..34c4cd6c6d0 100644 --- a/code/game/objects/items/weapons/vending_items.dm +++ b/code/game/objects/items/weapons/vending_items.dm @@ -10,7 +10,7 @@ throwforce = 10.0 throw_speed = 1 throw_range = 7 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY var/charges = 0 //how many restocking "charges" the refill has @@ -86,4 +86,3 @@ /obj/item/weapon/vending_refill/chinese machine_name = "MrChangs" charges = 8// of 24 - diff --git a/code/game/objects/items/weapons/weaponry.dm b/code/game/objects/items/weapons/weaponry.dm index d5b679fde56..95317b7f0a6 100644 --- a/code/game/objects/items/weapons/weaponry.dm +++ b/code/game/objects/items/weapons/weaponry.dm @@ -5,7 +5,7 @@ icon_state = "toyhammer" slot_flags = SLOT_BELT throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 7 throw_range = 15 attack_verb = list("banned") @@ -23,7 +23,7 @@ slot_flags = SLOT_BELT force = 2 throwforce = 1 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL hitsound = 'sound/weapons/bladeslice.ogg' attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") @@ -44,7 +44,7 @@ throwforce = 10 sharp = 1 edge = 1 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") block_chance = 50 @@ -68,7 +68,7 @@ throwforce = 10 sharp = 1 edge = 1 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL hitsound = 'sound/weapons/bladeslice.ogg' attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") block_chance = 50 @@ -89,7 +89,7 @@ item_state = "harpoon" force = 20 throwforce = 15 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL attack_verb = list("jabbed","stabbed","ripped") obj/item/weapon/wirerod @@ -100,7 +100,7 @@ obj/item/weapon/wirerod flags = CONDUCT force = 9 throwforce = 10 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL materials = list(MAT_METAL=1150, MAT_GLASS=75) attack_verb = list("hit", "bludgeoned", "whacked", "bonked") diff --git a/code/game/objects/items/weapons/whetstone.dm b/code/game/objects/items/weapons/whetstone.dm index d498d4c75e8..b268540f92a 100644 --- a/code/game/objects/items/weapons/whetstone.dm +++ b/code/game/objects/items/weapons/whetstone.dm @@ -3,7 +3,7 @@ icon = 'icons/obj/kitchen.dmi' icon_state = "whetstone" desc = "A block of stone used to sharpen things." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL usesound = 'sound/items/Screwdriver.ogg' var/used = 0 var/increment = 4 @@ -63,4 +63,4 @@ increment = 200 max = 200 prefix = "super-sharpened" - requires_sharpness = 0 \ No newline at end of file + requires_sharpness = 0 diff --git a/code/game/objects/structures/bedsheet_bin.dm b/code/game/objects/structures/bedsheet_bin.dm index 10f09401ba5..3190a69177d 100644 --- a/code/game/objects/structures/bedsheet_bin.dm +++ b/code/game/objects/structures/bedsheet_bin.dm @@ -14,7 +14,7 @@ LINEN BINS throwforce = 1 throw_speed = 1 throw_range = 2 - w_class = 1 + w_class = WEIGHT_CLASS_TINY item_color = "white" burn_state = FLAMMABLE slot_flags = SLOT_BACK @@ -204,7 +204,7 @@ LINEN BINS sheets.Add(I) amount++ to_chat(user, "You put [I] in [src].") - else if(amount && !hidden && I.w_class < 4) //make sure there's sheets to hide it among, make sure nothing else is hidden in there. + else if(amount && !hidden && I.w_class < WEIGHT_CLASS_BULKY) //make sure there's sheets to hide it among, make sure nothing else is hidden in there. user.drop_item() I.loc = src hidden = I @@ -255,4 +255,4 @@ LINEN BINS if(hidden) hidden.loc = loc - hidden = null \ No newline at end of file + hidden = null diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm index ed690192098..c93a481189d 100644 --- a/code/game/objects/structures/flora.dm +++ b/code/game/objects/structures/flora.dm @@ -43,7 +43,7 @@ /obj/structure/flora/tree/palm/New() ..() icon_state = pick("palm1","palm2") - pixel_x = 0 + pixel_x = 0 //grass /obj/structure/flora/grass @@ -209,7 +209,7 @@ icon_state = "plant-1" anchored = 0 layer = 5 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE force = 10 throwforce = 13 throw_speed = 2 @@ -333,4 +333,4 @@ else qdel(src) else - return ..() \ No newline at end of file + return ..() diff --git a/code/game/objects/structures/inflatable.dm b/code/game/objects/structures/inflatable.dm index 265d1d1c236..14f1357af87 100644 --- a/code/game/objects/structures/inflatable.dm +++ b/code/game/objects/structures/inflatable.dm @@ -3,7 +3,7 @@ desc = "A folded membrane which rapidly expands into a large cubical shape on activation." icon = 'icons/obj/inflatable.dmi' icon_state = "folded_wall" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL /obj/item/inflatable/attack_self(mob/user) playsound(loc, 'sound/items/zip.ogg', 75, 1) @@ -279,7 +279,7 @@ icon_state = "inf_box" item_state = "syringe_kit" max_combined_w_class = 21 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/storage/briefcase/inflatable/New() ..() diff --git a/code/game/objects/structures/signs.dm b/code/game/objects/structures/signs.dm index bfb5d584965..3f4eea3dbf4 100644 --- a/code/game/objects/structures/signs.dm +++ b/code/game/objects/structures/signs.dm @@ -40,7 +40,7 @@ name = "sign" desc = "" icon = 'icons/obj/decals.dmi' - w_class = 3 //big + w_class = WEIGHT_CLASS_NORMAL burn_state = FLAMMABLE var/sign_state = "" @@ -225,4 +225,3 @@ name = "\improper Escape Arm" desc = "A direction sign, pointing out which way escape shuttle dock is." icon_state = "direction_evac" - diff --git a/code/game/objects/structures/stool_bed_chair_nest/bed.dm b/code/game/objects/structures/stool_bed_chair_nest/bed.dm index 1835a1bb31a..56c6861e4fc 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/bed.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/bed.dm @@ -93,7 +93,7 @@ desc = "A collapsed roller bed that can be carried around." icon = 'icons/obj/rollerbed.dmi' icon_state = "folded" - w_class = 4 // Can't be put in backpacks. + w_class = WEIGHT_CLASS_BULKY // Can't be put in backpacks. /obj/item/roller/attack_self(mob/user) var/obj/structure/stool/bed/roller/R = new /obj/structure/stool/bed/roller(user.loc) @@ -140,4 +140,4 @@ var/obj/structure/stool/bed/roller/R = new /obj/structure/stool/bed/roller(user.loc) R.add_fingerprint(user) qdel(held) - held = null \ No newline at end of file + held = null diff --git a/code/game/objects/structures/stool_bed_chair_nest/stools.dm b/code/game/objects/structures/stool_bed_chair_nest/stools.dm index 6de3c88981d..6000b361aa5 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/stools.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/stools.dm @@ -54,7 +54,7 @@ icon_state = "stool" force = 10 throwforce = 10 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE var/obj/structure/stool/origin = null /obj/item/weapon/stool/attack_self(mob/user as mob) diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index 767d934c7dd..a43406eb3c7 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -106,10 +106,10 @@ to_chat(user, "You need a tighter grip!") if(cistern) - if(I.w_class > 3) + if(I.w_class > WEIGHT_CLASS_NORMAL) to_chat(user, "[I] does not fit!") return - if(w_items + I.w_class > 5) + if(w_items + I.w_class > WEIGHT_CLASS_HUGE) to_chat(user, "The cistern is full!") return if(!user.drop_item()) From e1ea5646428be7074444dae8c707b2666f172a73 Mon Sep 17 00:00:00 2001 From: ParadiseSS13-Bot Date: Sat, 27 May 2017 14:48:24 -0400 Subject: [PATCH 20/76] Automatic changelog generation for PR #6612 [ci skip] --- html/changelogs/AutoChangeLog-pr-6612.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-6612.yml diff --git a/html/changelogs/AutoChangeLog-pr-6612.yml b/html/changelogs/AutoChangeLog-pr-6612.yml new file mode 100644 index 00000000000..86acd2cee6a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-6612.yml @@ -0,0 +1,4 @@ +author: "Crazylemon64" +delete-after: True +changes: + - rscadd: "Cloning now can be halted at any point, but ejecting too early may result in clones with missing body parts." From 9943df05fd7879e59ff4d64834129ff5b48f026e Mon Sep 17 00:00:00 2001 From: Sam Date: Sat, 27 May 2017 20:07:39 +0100 Subject: [PATCH 21/76] Fixes small issue --- code/game/objects/items/devices/megaphone.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/devices/megaphone.dm b/code/game/objects/items/devices/megaphone.dm index c59e39a2043..09b02e5082c 100644 --- a/code/game/objects/items/devices/megaphone.dm +++ b/code/game/objects/items/devices/megaphone.dm @@ -3,7 +3,7 @@ desc = "A device used to project your voice. Loudly." icon_state = "megaphone" item_state = "radio" - w_class = WEIGHT_CLASS_SMALL + w_class = WEIGHT_CLASS_TINY flags = CONDUCT var/spamcheck = 0 From b0b1b8f147d5b545a56a0fbeb605d620407539f2 Mon Sep 17 00:00:00 2001 From: ParadiseSS13-Bot Date: Sat, 27 May 2017 16:27:20 -0400 Subject: [PATCH 22/76] Automatic changelog compile, [ci skip] --- html/changelog.html | 6 ++++++ html/changelogs/.all_changelog.yml | 4 ++++ html/changelogs/AutoChangeLog-pr-6612.yml | 4 ---- 3 files changed, 10 insertions(+), 4 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-6612.yml diff --git a/html/changelog.html b/html/changelog.html index eb5448ee47f..bda0abe5cb7 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -55,6 +55,12 @@ -->
+

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.
  • +
+

26 May 2017

FlattyPatty updated:

    diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 668d4d95221..a32a6e3e97d 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -4778,3 +4778,7 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. 2017-05-26: FlattyPatty: - rscdel: Removes gateway hotel xeno embryo for the crew's safety. +2017-05-27: + Crazylemon64: + - rscadd: Cloning now can be halted at any point, but ejecting too early may result + in clones with missing body parts. diff --git a/html/changelogs/AutoChangeLog-pr-6612.yml b/html/changelogs/AutoChangeLog-pr-6612.yml deleted file mode 100644 index 86acd2cee6a..00000000000 --- a/html/changelogs/AutoChangeLog-pr-6612.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Crazylemon64" -delete-after: True -changes: - - rscadd: "Cloning now can be halted at any point, but ejecting too early may result in clones with missing body parts." From 3bc135b825426016b853b48bc5f5257e480e2519 Mon Sep 17 00:00:00 2001 From: Sam Date: Sat, 27 May 2017 22:11:51 +0100 Subject: [PATCH 23/76] Reverts Megaphone change Will do in separate PR. --- code/game/objects/items/devices/megaphone.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/devices/megaphone.dm b/code/game/objects/items/devices/megaphone.dm index 09b02e5082c..d38ac3b71ff 100644 --- a/code/game/objects/items/devices/megaphone.dm +++ b/code/game/objects/items/devices/megaphone.dm @@ -3,7 +3,7 @@ desc = "A device used to project your voice. Loudly." icon_state = "megaphone" item_state = "radio" - w_class = WEIGHT_CLASS_TINY + w_class = 1 flags = CONDUCT var/spamcheck = 0 From f803a8ca1eae549ab2683d71d014f2a396aec60e Mon Sep 17 00:00:00 2001 From: Crazylemon64 Date: Sat, 27 May 2017 14:27:15 -0700 Subject: [PATCH 24/76] Slime people don't die of heart attacks now --- code/modules/mob/living/carbon/human/life.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index b9ce09f88a9..00dbc50e8d0 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -1177,7 +1177,7 @@ /mob/living/carbon/human/proc/can_heartattack() - if(species.flags & NO_BLOOD) + if(species.flags & (NO_BLOOD|NO_INTORGANS)) return FALSE return TRUE From 62d9162367d3d10daafbd2627e87a5f906f5f46d Mon Sep 17 00:00:00 2001 From: ParadiseSS13-Bot Date: Sat, 27 May 2017 17:48:30 -0400 Subject: [PATCH 25/76] Automatic changelog generation for PR #7404 [ci skip] --- html/changelogs/AutoChangeLog-pr-7404.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-7404.yml diff --git a/html/changelogs/AutoChangeLog-pr-7404.yml b/html/changelogs/AutoChangeLog-pr-7404.yml new file mode 100644 index 00000000000..f20d74c6aee --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7404.yml @@ -0,0 +1,4 @@ +author: "Crazylemon64" +delete-after: True +changes: + - bugfix: "Slime people now no longer spontaneously die" From cc207e2e547b57fa95b113c896b2badcaa62b566 Mon Sep 17 00:00:00 2001 From: Sam Date: Sat, 27 May 2017 22:54:13 +0100 Subject: [PATCH 26/76] Enlarges megaphones --- code/game/objects/items/devices/megaphone.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/devices/megaphone.dm b/code/game/objects/items/devices/megaphone.dm index d38ac3b71ff..c59e39a2043 100644 --- a/code/game/objects/items/devices/megaphone.dm +++ b/code/game/objects/items/devices/megaphone.dm @@ -3,7 +3,7 @@ desc = "A device used to project your voice. Loudly." icon_state = "megaphone" item_state = "radio" - w_class = 1 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT var/spamcheck = 0 From 19875229503bead449627cc3cfcb43a4b193a0f6 Mon Sep 17 00:00:00 2001 From: ParadiseSS13-Bot Date: Sat, 27 May 2017 19:39:59 -0400 Subject: [PATCH 27/76] Automatic changelog compile, [ci skip] --- html/changelog.html | 1 + html/changelogs/.all_changelog.yml | 1 + html/changelogs/AutoChangeLog-pr-7404.yml | 4 ---- 3 files changed, 2 insertions(+), 4 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-7404.yml diff --git a/html/changelog.html b/html/changelog.html index bda0abe5cb7..aafd6723606 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -59,6 +59,7 @@

    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

    diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index a32a6e3e97d..d53b0c4f70f 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -4782,3 +4782,4 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. Crazylemon64: - rscadd: Cloning now can be halted at any point, but ejecting too early may result in clones with missing body parts. + - bugfix: Slime people now no longer spontaneously die diff --git a/html/changelogs/AutoChangeLog-pr-7404.yml b/html/changelogs/AutoChangeLog-pr-7404.yml deleted file mode 100644 index f20d74c6aee..00000000000 --- a/html/changelogs/AutoChangeLog-pr-7404.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Crazylemon64" -delete-after: True -changes: - - bugfix: "Slime people now no longer spontaneously die" From 2d13e2f7bfd4d7c1bcc9077599095c901c2d8260 Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 28 May 2017 01:25:09 +0100 Subject: [PATCH 28/76] Converts /modules/ to using WEIGHT_CLASS_x --- code/modules/arcade/arcade_prize.dm | 4 ++-- code/modules/arcade/mob_hunt/mob_cards.dm | 4 ++-- code/modules/assembly/assembly.dm | 2 +- code/modules/assembly/bomb.dm | 4 ++-- code/modules/assembly/holder.dm | 9 ++----- code/modules/assembly/shock_kit.dm | 2 +- code/modules/clothing/clothing.dm | 10 ++++---- code/modules/clothing/head/misc.dm | 2 +- code/modules/clothing/masks/boxing.dm | 6 ++--- code/modules/clothing/masks/breath.dm | 2 +- code/modules/clothing/masks/gasmask.dm | 5 ++-- code/modules/clothing/masks/miscellaneous.dm | 24 +++++++++---------- code/modules/clothing/spacesuits/alien.dm | 2 +- code/modules/clothing/spacesuits/ert.dm | 2 +- code/modules/clothing/spacesuits/hardsuit.dm | 4 ++-- .../clothing/spacesuits/miscellaneous.dm | 6 ++--- code/modules/clothing/spacesuits/plasmamen.dm | 2 +- code/modules/clothing/spacesuits/rig/rig.dm | 2 +- code/modules/clothing/spacesuits/syndi.dm | 4 ++-- code/modules/clothing/suits/armor.dm | 4 ++-- code/modules/clothing/suits/bio.dm | 4 ++-- code/modules/clothing/suits/miscellaneous.dm | 4 ++-- code/modules/clothing/suits/storage.dm | 2 +- code/modules/clothing/suits/utility.dm | 10 ++++---- .../clothing/under/accessories/accessory.dm | 2 +- .../clothing/under/accessories/holster.dm | 4 ++-- .../clothing/under/accessories/storage.dm | 4 ++-- code/modules/clothing/under/miscellaneous.dm | 2 +- code/modules/customitems/item_defines.dm | 14 +++++------ code/modules/detective_work/evidence.dm | 10 ++++---- .../detective_work/footprints_and_rag.dm | 2 +- code/modules/detective_work/scanner.dm | 2 +- code/modules/fish/fish_eggs.dm | 3 +-- code/modules/fish/fish_items.dm | 10 ++++---- code/modules/food_and_drinks/drinks/drinks.dm | 10 ++++---- .../food_and_drinks/drinks/drinks/bottle.dm | 2 +- code/modules/food_and_drinks/food/snacks.dm | 4 ++-- code/modules/hydroponics/grown/banana.dm | 2 +- code/modules/hydroponics/grown/corn.dm | 6 ++--- code/modules/hydroponics/grown/flowers.dm | 4 ++-- code/modules/hydroponics/grown/melon.dm | 2 +- code/modules/hydroponics/grown/nettle.dm | 2 +- code/modules/hydroponics/grown/towercap.dm | 4 ++-- code/modules/hydroponics/hydroitemdefines.dm | 22 ++++++++--------- code/modules/hydroponics/seeds.dm | 2 +- code/modules/library/lib_items.dm | 6 ++--- code/modules/martial_arts/martial.dm | 2 +- code/modules/mining/coins.dm | 4 ++-- code/modules/mining/equipment_locker.dm | 22 ++++++++--------- code/modules/mining/lavaland/ash_flora.dm | 4 ++-- .../mining/lavaland/loot/ashdragon_loot.dm | 14 +++++------ .../mining/lavaland/loot/hierophant_loot.dm | 4 ++-- .../mining/lavaland/loot/legion_loot.dm | 4 ++-- .../mining/lavaland/loot/tendril_loot.dm | 6 ++--- code/modules/mining/mine_items.dm | 12 +++++----- code/modules/mining/money_bag.dm | 4 ++-- code/modules/mining/ore.dm | 2 +- .../living/carbon/alien/humanoid/inventory.dm | 6 ++--- .../living/carbon/alien/special/facehugger.dm | 4 ++-- code/modules/mob/living/carbon/brain/MMI.dm | 2 +- .../mob/living/carbon/brain/brain_item.dm | 2 +- .../mob/living/carbon/brain/posibrain.dm | 4 ++-- .../mob/living/carbon/human/inventory.dm | 6 ++--- .../mob/living/silicon/robot/component.dm | 2 +- .../mob/living/silicon/robot/drone/drone.dm | 2 +- .../living/simple_animal/bot/construction.dm | 10 ++++---- .../simple_animal/friendly/spiderbot.dm | 2 +- .../simple_animal/hostile/mining_mobs.dm | 2 +- .../mob/living/simple_animal/parrot.dm | 14 +++++------ code/modules/mob/mob.dm | 6 ++--- code/modules/mob/mob_grab.dm | 2 +- code/modules/paperwork/clipboard.dm | 2 +- code/modules/paperwork/folders.dm | 3 +-- code/modules/paperwork/paper.dm | 2 +- code/modules/paperwork/paper_bundle.dm | 4 ++-- code/modules/paperwork/paperbin.dm | 2 +- code/modules/paperwork/pen.dm | 6 ++--- code/modules/paperwork/photography.dm | 8 +++---- code/modules/paperwork/stamps.dm | 4 ++-- code/modules/pda/PDA.dm | 2 +- code/modules/pda/cart.dm | 4 ++-- code/modules/power/apc.dm | 4 ++-- code/modules/power/cable.dm | 6 ++--- code/modules/power/lighting.dm | 4 ++-- code/modules/power/solar.dm | 2 +- code/modules/power/supermatter/sm_shard.dm | 4 ++-- code/modules/power/tracker.dm | 2 +- code/modules/projectiles/ammunition.dm | 6 ++--- code/modules/projectiles/gun.dm | 2 +- code/modules/projectiles/guns/alien.dm | 4 ++-- code/modules/projectiles/guns/energy/laser.dm | 4 ++-- .../projectiles/guns/energy/nuclear.dm | 4 ++-- code/modules/projectiles/guns/energy/pulse.dm | 10 ++++---- .../projectiles/guns/energy/special.dm | 18 +++++++------- .../projectiles/guns/grenade_launcher.dm | 2 +- code/modules/projectiles/guns/magic.dm | 2 +- code/modules/projectiles/guns/magic/wand.dm | 2 +- code/modules/projectiles/guns/medbeam.dm | 2 +- code/modules/projectiles/guns/mounted.dm | 4 ++-- code/modules/projectiles/guns/projectile.dm | 8 +++---- .../projectiles/guns/projectile/automatic.dm | 8 +++---- .../projectiles/guns/projectile/launchers.dm | 4 ++-- .../projectiles/guns/projectile/pistol.dm | 6 ++--- .../projectiles/guns/projectile/revolver.dm | 6 ++--- .../projectiles/guns/projectile/saw.dm | 2 +- .../projectiles/guns/projectile/shotgun.dm | 6 ++--- .../projectiles/guns/projectile/sniper.dm | 2 +- .../projectiles/guns/projectile/toy.dm | 6 ++--- code/modules/projectiles/guns/rocket.dm | 2 +- code/modules/projectiles/guns/syringe_gun.dm | 4 ++-- .../projectiles/guns/throw/crossbow.dm | 2 +- .../projectiles/guns/throw/pielauncher.dm | 2 +- code/modules/reagents/reagent_containers.dm | 2 +- .../reagent_containers/glass_containers.dm | 4 ++-- .../reagents/reagent_containers/spray.dm | 6 ++--- .../reagents/reagent_containers/syringes.dm | 4 ++-- code/modules/recycling/conveyor2.dm | 4 ++-- code/modules/recycling/sortingmachinery.dm | 4 ++-- .../research/xenoarchaeology/chemistry.dm | 4 ++-- .../research/xenoarchaeology/geosample.dm | 2 +- .../research/xenoarchaeology/tools/tools.dm | 6 ++--- .../xenoarchaeology/tools/tools_anoscanner.dm | 2 +- .../tools/tools_coresampler.dm | 4 ++-- .../tools/tools_depthscanner.dm | 2 +- .../xenoarchaeology/tools/tools_pickaxe.dm | 20 ++++++++-------- .../research/xenobiology/xenobiology.dm | 8 +++---- code/modules/spacepods/equipment.dm | 2 +- code/modules/surgery/organs/augments_eyes.dm | 2 +- code/modules/surgery/organs/autoimplanter.dm | 2 +- code/modules/surgery/organs/organ_internal.dm | 8 +++---- .../modules/surgery/organs/subtypes/skrell.dm | 2 +- .../surgery/organs/subtypes/standard.dm | 14 +++++------ code/modules/surgery/organs/subtypes/xenos.dm | 6 ++--- code/modules/surgery/tools.dm | 20 ++++++++-------- code/modules/telesci/bscrystal.dm | 2 +- code/modules/telesci/gps.dm | 16 ++++++------- code/modules/vehicle/vehicle.dm | 4 ++-- 137 files changed, 350 insertions(+), 358 deletions(-) diff --git a/code/modules/arcade/arcade_prize.dm b/code/modules/arcade/arcade_prize.dm index d3457696268..6af1ca30f36 100644 --- a/code/modules/arcade/arcade_prize.dm +++ b/code/modules/arcade/arcade_prize.dm @@ -67,7 +67,7 @@ throwforce = 0 throw_speed = 1 throw_range = 1 - w_class = 1 + w_class = WEIGHT_CLASS_TINY max_amount = 9999 //Dang that's a lot of tickets /obj/item/stack/tickets/New(var/loc, var/amount=null) @@ -86,4 +86,4 @@ else if(amount >= 4) icon_state = "tickets_2" else - icon_state = "tickets_1" \ No newline at end of file + icon_state = "tickets_1" diff --git a/code/modules/arcade/mob_hunt/mob_cards.dm b/code/modules/arcade/mob_hunt/mob_cards.dm index 0479644ad85..26393e8e370 100644 --- a/code/modules/arcade/mob_hunt/mob_cards.dm +++ b/code/modules/arcade/mob_hunt/mob_cards.dm @@ -7,7 +7,7 @@ icon_state = "trade_card" force = 0 throwforce = 1 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/datum/mob_hunt/mob_data /obj/item/weapon/nanomob_card/proc/update_info() @@ -40,4 +40,4 @@ /obj/item/weapon/storage/box/nanomob_booster_pack/New() ..() for(var/i in 1 to 6) - new /obj/item/weapon/nanomob_card/booster(src) \ No newline at end of file + new /obj/item/weapon/nanomob_card/booster(src) diff --git a/code/modules/assembly/assembly.dm b/code/modules/assembly/assembly.dm index bd981e99076..8092d768ad0 100644 --- a/code/modules/assembly/assembly.dm +++ b/code/modules/assembly/assembly.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/assemblies/new_assemblies.dmi' icon_state = "" flags = CONDUCT - w_class = 2 + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=100) throwforce = 2 throw_speed = 3 diff --git a/code/modules/assembly/bomb.dm b/code/modules/assembly/bomb.dm index f6019ace266..41a67a43560 100644 --- a/code/modules/assembly/bomb.dm +++ b/code/modules/assembly/bomb.dm @@ -3,7 +3,7 @@ icon = 'icons/obj/tank.dmi' item_state = "assembly" throwforce = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throw_speed = 2 throw_range = 4 flags = CONDUCT //Copied this from old code, so this may or may not be necessary @@ -171,4 +171,4 @@ if(!T) return T.assume_air(removed) - air_update_turf() \ No newline at end of file + air_update_turf() diff --git a/code/modules/assembly/holder.dm b/code/modules/assembly/holder.dm index 47d33a1e5ce..f4a71a77ced 100644 --- a/code/modules/assembly/holder.dm +++ b/code/modules/assembly/holder.dm @@ -5,7 +5,7 @@ item_state = "assembly" flags = CONDUCT throwforce = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 10 @@ -100,7 +100,7 @@ a_left.hear_talk(M, msg) if(a_right) a_right.hear_talk(M, msg) - + hear_message(mob/living/M as mob, msg) if(a_left) a_left.hear_message(M, msg) @@ -210,8 +210,3 @@ qdel(src) return return - - - - - diff --git a/code/modules/assembly/shock_kit.dm b/code/modules/assembly/shock_kit.dm index 6ffe6f42d12..aa8bc299e66 100644 --- a/code/modules/assembly/shock_kit.dm +++ b/code/modules/assembly/shock_kit.dm @@ -6,7 +6,7 @@ var/obj/item/clothing/head/helmet/part1 = null var/obj/item/device/radio/electropack/part2 = null var/status = 0 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE flags = CONDUCT /obj/item/assembly/shock_kit/Destroy() diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 914b3ed9209..2142d336fac 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -85,7 +85,7 @@ //Ears: currently only used for headsets and earmuffs /obj/item/clothing/ears name = "ears" - w_class = 1 + w_class = WEIGHT_CLASS_TINY throwforce = 2 slot_flags = SLOT_EARS burn_state = FIRE_PROOF @@ -128,7 +128,7 @@ /obj/item/clothing/ears/offear name = "Other ear" - w_class = 5 + w_class = WEIGHT_CLASS_HUGE icon = 'icons/mob/screen_gen.dmi' icon_state = "block" slot_flags = SLOT_EARS | SLOT_TWOEARS @@ -145,7 +145,7 @@ /obj/item/clothing/glasses name = "glasses" icon = 'icons/obj/clothing/glasses.dmi' - w_class = 2 + w_class = WEIGHT_CLASS_SMALL flags_cover = GLASSESCOVERSEYES slot_flags = SLOT_EYES materials = list(MAT_GLASS = 250) @@ -177,7 +177,7 @@ BLIND // can't see anything /obj/item/clothing/gloves name = "gloves" gender = PLURAL //Carn: for grammarically correct text-parsing - w_class = 2 + w_class = WEIGHT_CLASS_SMALL icon = 'icons/obj/clothing/gloves.dmi' siemens_coefficient = 0.50 body_parts_covered = HANDS @@ -543,7 +543,7 @@ BLIND // can't see anything desc = "A suit that protects against low pressure environments. Has a big 13 on the back." icon_state = "space" item_state = "s_suit" - w_class = 4//bulky item + w_class = WEIGHT_CLASS_BULKY gas_transfer_coefficient = 0.01 permeability_coefficient = 0.02 flags = STOPSPRESSUREDMAGE | THICKMATERIAL diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index 5ddb28359e6..6d46eb7b061 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -380,7 +380,7 @@ throwforce = 3.0 throw_speed = 2 throw_range = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL attack_verb = list("warned", "cautioned", "smashed") burn_state = FIRE_PROOF diff --git a/code/modules/clothing/masks/boxing.dm b/code/modules/clothing/masks/boxing.dm index 25cdc259f92..59081cf3d00 100644 --- a/code/modules/clothing/masks/boxing.dm +++ b/code/modules/clothing/masks/boxing.dm @@ -5,7 +5,7 @@ item_state = "balaclava" flags = BLOCKHAIR flags_inv = HIDEFACE - w_class = 2 + w_class = WEIGHT_CLASS_SMALL actions_types = list(/datum/action/item_action/adjust) adjusted_flags = SLOT_HEAD species_fit = list("Vox", "Unathi", "Tajaran", "Vulpkanin") @@ -27,7 +27,7 @@ item_state = "luchag" flags = BLOCKHAIR flags_inv = HIDEFACE - w_class = 2 + w_class = WEIGHT_CLASS_SMALL species_fit = list("Vox", "Unathi", "Tajaran", "Vulpkanin") sprite_sheets = list( "Vox" = 'icons/mob/species/vox/mask.dmi', @@ -47,4 +47,4 @@ name = "Rudos Mask" desc = "Worn by robust fighters who are willing to do anything to win." icon_state = "luchar" - item_state = "luchar" \ No newline at end of file + item_state = "luchar" diff --git a/code/modules/clothing/masks/breath.dm b/code/modules/clothing/masks/breath.dm index c0ebe33a796..851c10db354 100644 --- a/code/modules/clothing/masks/breath.dm +++ b/code/modules/clothing/masks/breath.dm @@ -5,7 +5,7 @@ item_state = "breath" flags = AIRTIGHT flags_cover = MASKCOVERSMOUTH - w_class = 2 + w_class = WEIGHT_CLASS_SMALL gas_transfer_coefficient = 0.10 permeability_coefficient = 0.50 actions_types = list(/datum/action/item_action/adjust) diff --git a/code/modules/clothing/masks/gasmask.dm b/code/modules/clothing/masks/gasmask.dm index 0a3ee36ebbb..908397f990e 100644 --- a/code/modules/clothing/masks/gasmask.dm +++ b/code/modules/clothing/masks/gasmask.dm @@ -5,7 +5,7 @@ flags = BLOCK_GAS_SMOKE_EFFECT | AIRTIGHT flags_inv = HIDEEARS|HIDEEYES|HIDEFACE flags_cover = MASKCOVERSMOUTH | MASKCOVERSEYES - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL item_state = "gas_alt" gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 @@ -70,7 +70,7 @@ flags = BLOCK_GAS_SMOKE_EFFECT | AIRTIGHT flags_inv = HIDEEARS|HIDEEYES|HIDEFACE flags_cover = MASKCOVERSMOUTH | MASKCOVERSEYES - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL item_state = "bane_mask" gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 @@ -494,4 +494,3 @@ // ******************************************************************** - diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm index 8d031476931..d524d87e3d8 100644 --- a/code/modules/clothing/masks/miscellaneous.dm +++ b/code/modules/clothing/masks/miscellaneous.dm @@ -4,7 +4,7 @@ icon_state = "muzzle" item_state = "muzzle" flags_cover = MASKCOVERSMOUTH - w_class = 2 + w_class = WEIGHT_CLASS_SMALL gas_transfer_coefficient = 0.90 put_on_delay = 20 var/resist_time = 0 //deciseconds of how long you need to gnaw to get rid of the gag, 0 to make it impossible to remove @@ -24,14 +24,14 @@ name = "gag" desc = "Stick this in their mouth to stop the noise." icon_state = "gag" - w_class = 1 + w_class = WEIGHT_CLASS_TINY /obj/item/clothing/mask/muzzle/tapegag name = "tape gag" desc = "MHPMHHH!" icon_state = "tapegag" item_state = null - w_class = 1 + w_class = WEIGHT_CLASS_TINY resist_time = 150 mute = 0 species_fit = list("Vox", "Unathi", "Tajaran", "Vulpkanin") @@ -59,7 +59,7 @@ desc = "A sterile mask designed to help prevent the spread of diseases." icon_state = "sterile" item_state = "sterile" - w_class = 1 + w_class = WEIGHT_CLASS_TINY flags_cover = MASKCOVERSMOUTH gas_transfer_coefficient = 0.90 permeability_coefficient = 0.01 @@ -109,7 +109,7 @@ icon_state = "blueneckscarf" item_state = "blueneckscarf" flags_cover = MASKCOVERSMOUTH - w_class = 2 + w_class = WEIGHT_CLASS_SMALL gas_transfer_coefficient = 0.90 /obj/item/clothing/mask/redscarf @@ -118,7 +118,7 @@ icon_state = "redwhite_scarf" item_state = "redwhite_scarf" flags_cover = MASKCOVERSMOUTH - w_class = 2 + w_class = WEIGHT_CLASS_SMALL gas_transfer_coefficient = 0.90 /obj/item/clothing/mask/greenscarf @@ -127,7 +127,7 @@ icon_state = "green_scarf" item_state = "green_scarf" flags_cover = MASKCOVERSMOUTH - w_class = 2 + w_class = WEIGHT_CLASS_SMALL gas_transfer_coefficient = 0.90 /obj/item/clothing/mask/ninjascarf @@ -136,7 +136,7 @@ icon_state = "ninja_scarf" item_state = "ninja_scarf" flags_cover = MASKCOVERSMOUTH - w_class = 2 + w_class = WEIGHT_CLASS_SMALL gas_transfer_coefficient = 0.90 @@ -147,7 +147,7 @@ item_state = "pig" flags = BLOCKHAIR flags_inv = HIDEFACE - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/clothing/mask/horsehead @@ -157,7 +157,7 @@ item_state = "horsehead" flags = BLOCKHAIR flags_inv = HIDEFACE - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/voicechange = 0 var/temporaryname = " the Horse" var/originalname = "" @@ -247,7 +247,7 @@ icon_state = "fawkes" item_state = "fawkes" flags_inv = HIDEFACE - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/clothing/mask/gas/clown_hat/pennywise name = "Pennywise Mask" @@ -263,7 +263,7 @@ desc = "A colorful bandana." flags_inv = HIDEFACE flags_cover = MASKCOVERSMOUTH - w_class = 1 + w_class = WEIGHT_CLASS_TINY slot_flags = SLOT_MASK adjusted_flags = SLOT_HEAD icon_state = "bandbotany" diff --git a/code/modules/clothing/spacesuits/alien.dm b/code/modules/clothing/spacesuits/alien.dm index 33e08206fd1..69ecd6eca0e 100644 --- a/code/modules/clothing/spacesuits/alien.dm +++ b/code/modules/clothing/spacesuits/alien.dm @@ -74,7 +74,7 @@ // Vox space gear (vaccuum suit, low pressure armour) // Can't be equipped by any other species due to bone structure and vox cybernetics. /obj/item/clothing/suit/space/vox - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword/saber,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank) armor = list(melee = 40, bullet = 40, laser = 30, energy = 15, bomb = 30, bio = 30, rad = 30) heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS diff --git a/code/modules/clothing/spacesuits/ert.dm b/code/modules/clothing/spacesuits/ert.dm index 82c4a832c6c..80257cda101 100644 --- a/code/modules/clothing/spacesuits/ert.dm +++ b/code/modules/clothing/spacesuits/ert.dm @@ -29,7 +29,7 @@ desc = "A suit worn by members of the Nanotrasen Emergency Response Team. Armoured, space ready, and fire resistant." icon_state = "ert_commander" item_state = "suit-command" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword/saber,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank) armor = list(melee = 45, bullet = 25, laser = 30, energy = 10, bomb = 25, bio = 100, rad = 50) allowed = list(/obj/item/device/flashlight, /obj/item/weapon/tank, /obj/item/device/t_scanner, /obj/item/weapon/rcd, /obj/item/weapon/crowbar, \ diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index ab601821ef8..802f39ad361 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -352,7 +352,7 @@ icon_state = "hardsuit1-syndi" item_state = "syndie_hardsuit" item_color = "syndi" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/on = 1 actions_types = list(/datum/action/item_action/toggle_hardsuit_mode) armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50) @@ -447,7 +447,7 @@ name = "gem-encrusted hardsuit" desc = "A bizarre gem-encrusted suit that radiates magical energies." item_state = "wiz_hardsuit" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL unacidable = 1 armor = list(melee = 40, bullet = 40, laser = 40, energy = 20, bomb = 35, bio = 100, rad = 50) allowed = list(/obj/item/weapon/teleportation_scroll,/obj/item/weapon/tank) diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index 54aa39a305e..20d9809f2b2 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -27,7 +27,7 @@ desc = "A bulky, heavy-duty piece of exclusive Nanotrasen armor. YOU are in charge!" icon_state = "caparmor" item_state = "capspacesuit" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY allowed = list(/obj/item/weapon/tank, /obj/item/device/flashlight,/obj/item/weapon/gun/energy, /obj/item/weapon/gun/projectile, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs) armor = list(melee = 40, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50) species_restricted = list("exclude", "Diona", "Wryn") @@ -86,7 +86,7 @@ blood_overlay_type = "coat" flags_inv = 0 slowdown = 0 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL //Space santa outfit suit /obj/item/clothing/head/helmet/space/santahat @@ -123,7 +123,7 @@ desc = "Yarr." icon_state = "pirate" item_state = "pirate" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank) slowdown = 0 armor = list(melee = 30, bullet = 50, laser = 30, energy = 15, bomb = 30, bio = 30, rad = 30) diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm index 9ece7d54aa3..4e43aaf61b4 100644 --- a/code/modules/clothing/spacesuits/plasmamen.dm +++ b/code/modules/clothing/spacesuits/plasmamen.dm @@ -62,7 +62,7 @@ flags = null //non-conductive force = 0 throwforce = 0 - w_class = 2 //Fits in boxes. + w_class = WEIGHT_CLASS_SMALL //Fits in boxes. materials = list() attack_verb = list("tapped") diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm index 24f5a340760..da181368cc5 100644 --- a/code/modules/clothing/spacesuits/rig/rig.dm +++ b/code/modules/clothing/spacesuits/rig/rig.dm @@ -14,7 +14,7 @@ slot_flags = SLOT_BACK req_one_access = list() req_access = list() - w_class = 4 + w_class = WEIGHT_CLASS_BULKY // These values are passed on to all component pieces. armor = list(melee = 10, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75) diff --git a/code/modules/clothing/spacesuits/syndi.dm b/code/modules/clothing/spacesuits/syndi.dm index 4b8f32f5a74..37aa5b776ba 100644 --- a/code/modules/clothing/spacesuits/syndi.dm +++ b/code/modules/clothing/spacesuits/syndi.dm @@ -12,7 +12,7 @@ icon_state = "syndicate" item_state = "space_suit_syndicate" desc = "Has a tag on it: Totally not property of of a hostile corporation, honest!" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword/saber,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank) armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 30, bio = 30, rad = 30) @@ -173,4 +173,4 @@ obj/item/clothing/suit/space/syndicate/black/red/strike /obj/item/clothing/suit/space/syndicate/black/engie name = "Black Engineering Space Suit" icon_state = "syndicate-black-engie" - item_state = "syndicate-black" \ No newline at end of file + item_state = "syndicate-black" diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index c9d3ccac27b..7a2fa10db07 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -376,7 +376,7 @@ desc = "A suit that protects against some damage." icon_state = "centcom" item_state = "centcom" - w_class = 4//bulky item + w_class = WEIGHT_CLASS_BULKY body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/emergency_oxygen) flags = THICKMATERIAL @@ -393,7 +393,7 @@ icon_state = "heavy" item_state = "swat_suit" armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100) - w_class = 4//bulky item + w_class = WEIGHT_CLASS_BULKY gas_transfer_coefficient = 0.90 flags = THICKMATERIAL body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS diff --git a/code/modules/clothing/suits/bio.dm b/code/modules/clothing/suits/bio.dm index f0fbfca0cbd..49f8a8ea8d1 100644 --- a/code/modules/clothing/suits/bio.dm +++ b/code/modules/clothing/suits/bio.dm @@ -15,7 +15,7 @@ desc = "A suit that protects against biological contamination." icon_state = "bio" item_state = "bio_suit" - w_class = 4//bulky item + w_class = WEIGHT_CLASS_BULKY gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 flags = THICKMATERIAL @@ -93,4 +93,4 @@ strip_delay = 40 put_on_delay = 20 species_fit = null - sprite_sheets = null \ No newline at end of file + sprite_sheets = null diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index 5d25cf95c2d..8b6e4d2e0d3 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -135,7 +135,7 @@ icon_state = "syndicate-black-red" item_state = "syndicate-black-red" desc = "A plastic replica of the syndicate space suit, you'll look just like a real murderous syndicate agent in this! This is a toy, it is not made for use in space!" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen,/obj/item/toy) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT burn_state = FIRE_PROOF @@ -714,7 +714,7 @@ desc = "A soft white robe made of a synthetic fiber that provides improved protection against biohazards. Possessing multiple overlapping layers, yet light enough to allow complete freedom of movement, it denotes its wearer as a master physician." icon_state = "mercy_hoodie" item_state = "mercy_hoodie" - w_class = 4//bulky item + w_class = WEIGHT_CLASS_BULKY gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 flags_size = ONESIZEFITSALL diff --git a/code/modules/clothing/suits/storage.dm b/code/modules/clothing/suits/storage.dm index 70fa8a30227..5e73af7aa39 100644 --- a/code/modules/clothing/suits/storage.dm +++ b/code/modules/clothing/suits/storage.dm @@ -5,7 +5,7 @@ ..() pockets = new/obj/item/weapon/storage/internal(src) pockets.storage_slots = 2 //two slots - pockets.max_w_class = 2 //fit only pocket sized items + pockets.max_w_class = WEIGHT_CLASS_SMALL //fit only pocket sized items pockets.max_combined_w_class = 4 /obj/item/clothing/suit/storage/Destroy() diff --git a/code/modules/clothing/suits/utility.dm b/code/modules/clothing/suits/utility.dm index 81cc172d0e2..3d31af6230b 100644 --- a/code/modules/clothing/suits/utility.dm +++ b/code/modules/clothing/suits/utility.dm @@ -14,7 +14,7 @@ desc = "A suit that protects against fire and heat." icon_state = "fire" item_state = "fire_suit" - w_class = 4//bulky item + w_class = WEIGHT_CLASS_BULKY gas_transfer_coefficient = 0.90 permeability_coefficient = 0.50 body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS @@ -43,7 +43,7 @@ desc = "A suit that protects against extreme fire and heat." //icon_state = "thermal" item_state = "ro_suit" - w_class = 4//bulky item + w_class = WEIGHT_CLASS_BULKY slowdown = 1.5 /obj/item/clothing/suit/fire/atmos @@ -85,7 +85,7 @@ desc = "A suit designed for safety when handling explosives." icon_state = "bombsuit" item_state = "bombsuit" - w_class = 4//bulky item + w_class = WEIGHT_CLASS_BULKY gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 flags = THICKMATERIAL @@ -142,7 +142,7 @@ desc = "A suit that protects against radiation. Label: Made with lead, do not eat insulation." icon_state = "rad" item_state = "rad_suit" - w_class = 4//bulky item + w_class = WEIGHT_CLASS_BULKY gas_transfer_coefficient = 0.90 permeability_coefficient = 0.50 flags = THICKMATERIAL @@ -157,4 +157,4 @@ species_fit = list("Vox") sprite_sheets = list( "Vox" = 'icons/mob/species/vox/suit.dmi' - ) \ No newline at end of file + ) diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index f0da2e141a0..5f358ac58f4 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -6,7 +6,7 @@ item_state = "" //no inhands item_color = "bluetie" slot_flags = SLOT_TIE - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/slot = "decor" var/obj/item/clothing/under/has_suit = null //the suit the tie may be attached to var/image/inv_overlay = null //overlay used when attached to clothing. diff --git a/code/modules/clothing/under/accessories/holster.dm b/code/modules/clothing/under/accessories/holster.dm index cab12cba542..4c53d9c3c8d 100644 --- a/code/modules/clothing/under/accessories/holster.dm +++ b/code/modules/clothing/under/accessories/holster.dm @@ -7,7 +7,7 @@ var/holster_allow = /obj/item/weapon/gun var/obj/item/weapon/gun/holstered = null actions_types = list(/datum/action/item_action/accessory/holster) - w_class = 3 // so it doesn't fit in pockets + w_class = WEIGHT_CLASS_NORMAL // so it doesn't fit in pockets /obj/item/clothing/accessory/holster/Destroy() QDEL_NULL(holstered) @@ -140,4 +140,4 @@ name = "shoulder holster" desc = "A handgun holster. Made of expensive leather." icon_state = "holster" - item_color = "holster_low" \ No newline at end of file + item_color = "holster_low" diff --git a/code/modules/clothing/under/accessories/storage.dm b/code/modules/clothing/under/accessories/storage.dm index fd335f43fb7..a306864cbfc 100644 --- a/code/modules/clothing/under/accessories/storage.dm +++ b/code/modules/clothing/under/accessories/storage.dm @@ -7,7 +7,7 @@ var/slots = 3 var/obj/item/weapon/storage/internal/hold actions_types = list(/datum/action/item_action/accessory/storage) - w_class = 3 // so it doesn't fit in pockets + w_class = WEIGHT_CLASS_NORMAL // so it doesn't fit in pockets /obj/item/clothing/accessory/storage/New() ..() @@ -110,4 +110,4 @@ hold.can_hold = list(/obj/item/weapon/hatchet/unathiknife, /obj/item/weapon/kitchen/knife) new /obj/item/weapon/hatchet/unathiknife(hold) - new /obj/item/weapon/hatchet/unathiknife(hold) \ No newline at end of file + new /obj/item/weapon/hatchet/unathiknife(hold) diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index 7494f559383..41111585072 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -167,7 +167,7 @@ icon_state = "black" item_state = "bl_suit" item_color = "black" - w_class = 4//bulky item + w_class = WEIGHT_CLASS_BULKY gas_transfer_coefficient = 0.01 permeability_coefficient = 0.02 body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index ee6747b39d3..807f49153c5 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -20,7 +20,7 @@ icon_state = "tatgun" force = 0 throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/tattoo_name = "tiger stripe tattoo" // Tat name for visible messages var/tattoo_icon = "Tiger-stripe Tattoo" // body_accessory.dmi, new icons defined in sprite_accessories.dm var/tattoo_r = 1 // RGB values for the body markings @@ -221,7 +221,7 @@ item_state = "lunch_box" force = 5 throwforce = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 9 storage_slots = 3 @@ -248,7 +248,7 @@ hitsound = 'sound/weapons/tap.ogg' force = 0 throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/used = 0 /obj/item/fluff/wingler_comb/attack_self(mob/user) @@ -268,7 +268,7 @@ desc = "Some sci-fi looking parts for a stun baton." icon = 'icons/obj/custom_items.dmi' icon_state = "scifikit" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/device/fluff/desolate_baton_kit/afterattack(atom/target, mob/user, proximity) if(!proximity || !ishuman(user) || user.incapacitated()) @@ -293,7 +293,7 @@ name = "welding helmet modkit" desc = "Some spraypaint and a stencil, perfect for painting flames onto a welding helmet!" icon_state = "modkit" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 0 throwforce = 0 @@ -318,7 +318,7 @@ name = "plasmaman suit modkit" desc = "A kit containing nanites that are able to modify the look of a plasmaman suit and helmet without exposing the wearer to hostile environments." icon_state = "modkit" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 0 throwforce = 0 @@ -367,7 +367,7 @@ name = "sallet modkit" desc = "A modkit that can make most helmets look like a steel sallet." icon_state = "modkit" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 0 throwforce = 0 diff --git a/code/modules/detective_work/evidence.dm b/code/modules/detective_work/evidence.dm index e457d73fb87..cb4e2604771 100644 --- a/code/modules/detective_work/evidence.dm +++ b/code/modules/detective_work/evidence.dm @@ -6,7 +6,7 @@ icon = 'icons/obj/storage.dmi' icon_state = "evidenceobj" item_state = "" - w_class = 1 + w_class = WEIGHT_CLASS_TINY /obj/item/weapon/evidencebag/afterattack(obj/item/I, mob/user,proximity) if(!proximity || loc == I) @@ -29,7 +29,7 @@ to_chat(user, "You find putting an evidence bag in another evidence bag to be slightly absurd.") return 1 //now this is podracing - if(I.w_class > 3) + if(I.w_class > WEIGHT_CLASS_NORMAL) to_chat(user, "[I] won't fit in [src].") return @@ -76,7 +76,7 @@ "You hear someone rustle around in a plastic bag, and remove something.") overlays.Cut() //remove the overlays user.put_in_hands(I) - w_class = 1 + w_class = WEIGHT_CLASS_TINY icon_state = "evidenceobj" desc = "An empty evidence bag." @@ -87,7 +87,7 @@ /obj/item/weapon/storage/box/evidence name = "evidence bag box" desc = "A box claiming to contain evidence bags." - + /obj/item/weapon/storage/box/evidence/New() new /obj/item/weapon/evidencebag(src) new /obj/item/weapon/evidencebag(src) @@ -95,4 +95,4 @@ new /obj/item/weapon/evidencebag(src) new /obj/item/weapon/evidencebag(src) new /obj/item/weapon/evidencebag(src) - ..() \ No newline at end of file + ..() diff --git a/code/modules/detective_work/footprints_and_rag.dm b/code/modules/detective_work/footprints_and_rag.dm index cc93863cc95..cc6a463a0ee 100644 --- a/code/modules/detective_work/footprints_and_rag.dm +++ b/code/modules/detective_work/footprints_and_rag.dm @@ -17,7 +17,7 @@ /obj/item/weapon/reagent_containers/glass/rag name = "damp rag" desc = "For cleaning up messes, you suppose." - w_class = 1 + w_class = WEIGHT_CLASS_TINY icon = 'icons/obj/toy.dmi' icon_state = "rag" amount_per_transfer_from_this = 5 diff --git a/code/modules/detective_work/scanner.dm b/code/modules/detective_work/scanner.dm index 69aeb643263..bb1a79f13ad 100644 --- a/code/modules/detective_work/scanner.dm +++ b/code/modules/detective_work/scanner.dm @@ -7,7 +7,7 @@ desc = "Used to remotely scan objects and biomass for DNA and fingerprints. Can print a report of the findings." icon = 'icons/goonstation/objects/objects.dmi' icon_state = "detscanner" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL item_state = "electronic" flags = CONDUCT | NOBLUDGEON slot_flags = SLOT_BELT diff --git a/code/modules/fish/fish_eggs.dm b/code/modules/fish/fish_eggs.dm index 5255859b704..756093fbd01 100644 --- a/code/modules/fish/fish_eggs.dm +++ b/code/modules/fish/fish_eggs.dm @@ -4,7 +4,7 @@ desc = "Eggs laid by a fish. This cluster seems... empty?" icon = 'icons/obj/fish_items.dmi' icon_state = "eggs" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/datum/fish/fish_type = null //Holds the datum of the fish that the egg is for, null means dud eggs /obj/item/fish_eggs/goldfish @@ -66,4 +66,3 @@ desc = "A cluster of bright neon eggs belonging to a bio-luminescent species of fish." icon_state = "glofish_eggs" fish_type = /datum/fish/glofish - diff --git a/code/modules/fish/fish_items.dm b/code/modules/fish/fish_items.dm index 9f58d58942e..64ca8269298 100644 --- a/code/modules/fish/fish_items.dm +++ b/code/modules/fish/fish_items.dm @@ -10,7 +10,7 @@ icon_state = "egg_scoop" slot_flags = SLOT_BELT throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 7 @@ -21,7 +21,7 @@ icon_state = "net" slot_flags = SLOT_BELT throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 7 @@ -35,7 +35,7 @@ icon = 'icons/obj/fish_items.dmi' icon_state = "fish_food" throwforce = 1 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 7 @@ -46,7 +46,7 @@ icon_state = "brush" slot_flags = SLOT_BELT throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 7 attack_verb = list("scrubbed", "brushed", "scraped") @@ -90,7 +90,7 @@ icon = 'icons/obj/fish_items.dmi' icon_state = "fish" throwforce = 1 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 7 force = 1 diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 23ae568af9b..0b5b2171f86 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -141,7 +141,7 @@ name = "pewter cup" desc = "Everyone gets a trophy." icon_state = "pewter_cup" - w_class = 1 + w_class = WEIGHT_CLASS_TINY force = 1 throwforce = 1 amount_per_transfer_from_this = 5 @@ -154,7 +154,7 @@ name = "gold cup" desc = "You're winner!" icon_state = "golden_cup" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 14 throwforce = 10 amount_per_transfer_from_this = 20 @@ -165,7 +165,7 @@ name = "silver cup" desc = "Best loser!" icon_state = "silver_cup" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL force = 10 throwforce = 8 amount_per_transfer_from_this = 15 @@ -176,7 +176,7 @@ name = "bronze cup" desc = "At least you ranked!" icon_state = "bronze_cup" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 5 throwforce = 4 amount_per_transfer_from_this = 10 @@ -349,4 +349,4 @@ desc = "A bowl made out of mushrooms. Not food, though it might have contained some at some point." icon = 'icons/obj/lavaland/ash_flora.dmi' icon_state = "mushroom_bowl" - w_class = 2 \ No newline at end of file + w_class = WEIGHT_CLASS_SMALL diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm index 75f9c9a776f..e1a517caaf3 100644 --- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm @@ -130,7 +130,7 @@ throwforce = 5 throw_speed = 3 throw_range = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY item_state = "beer" hitsound = 'sound/weapons/bladeslice.ogg' attack_verb = list("stabbed", "slashed", "attacked") diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index 3a079e99da4..cbb049c883c 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -130,7 +130,7 @@ istype(W, /obj/item/weapon/hatchet) \ ) inaccurate = 1 - else if(W.w_class <= 2 && istype(src,/obj/item/weapon/reagent_containers/food/snacks/sliceable)) + else if(W.w_class <= WEIGHT_CLASS_SMALL && istype(src,/obj/item/weapon/reagent_containers/food/snacks/sliceable)) if(!iscarbon(user)) return 1 to_chat(user, "You slip [W] inside [src].") @@ -2477,4 +2477,4 @@ desc = "A large fried potato nugget that may or may not try to valid you." icon_state = "tatortot" list_reagents = list("nutriment" = 4) - filling_color = "FFD700" \ No newline at end of file + filling_color = "FFD700" diff --git a/code/modules/hydroponics/grown/banana.dm b/code/modules/hydroponics/grown/banana.dm index dbdffffda29..8301b021cc4 100644 --- a/code/modules/hydroponics/grown/banana.dm +++ b/code/modules/hydroponics/grown/banana.dm @@ -43,7 +43,7 @@ desc = "A peel from a banana." icon_state = "banana_peel" item_state = "banana_peel" - w_class = 1 + w_class = WEIGHT_CLASS_TINY throwforce = 0 throw_speed = 3 throw_range = 7 diff --git a/code/modules/hydroponics/grown/corn.dm b/code/modules/hydroponics/grown/corn.dm index a7ef947a5ce..d2dac1decfe 100644 --- a/code/modules/hydroponics/grown/corn.dm +++ b/code/modules/hydroponics/grown/corn.dm @@ -30,7 +30,7 @@ desc = "A reminder of meals gone by." icon_state = "corncob" item_state = "corncob" - w_class = 1 + w_class = WEIGHT_CLASS_TINY throwforce = 0 throw_speed = 3 throw_range = 7 @@ -62,7 +62,7 @@ desc = "A cob with snap pops" icon_state = "snapcorn" item_state = "corncob" - w_class = 1 + w_class = WEIGHT_CLASS_TINY throwforce = 0 throw_speed = 3 throw_range = 7 @@ -81,4 +81,4 @@ snap_pops -= 1 if(!snap_pops) new /obj/item/weapon/grown/corncob(user.loc) - qdel(src) \ No newline at end of file + qdel(src) diff --git a/code/modules/hydroponics/grown/flowers.dm b/code/modules/hydroponics/grown/flowers.dm index 7deb961e67a..1752cda7567 100644 --- a/code/modules/hydroponics/grown/flowers.dm +++ b/code/modules/hydroponics/grown/flowers.dm @@ -117,7 +117,7 @@ force = 0 slot_flags = SLOT_HEAD throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 1 throw_range = 3 @@ -167,7 +167,7 @@ force = 0 slot_flags = SLOT_HEAD throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 1 throw_range = 3 attack_verb = list("roasted", "scorched", "burned") diff --git a/code/modules/hydroponics/grown/melon.dm b/code/modules/hydroponics/grown/melon.dm index 5a229148a17..06bb153e47f 100644 --- a/code/modules/hydroponics/grown/melon.dm +++ b/code/modules/hydroponics/grown/melon.dm @@ -22,7 +22,7 @@ slice_path = /obj/item/weapon/reagent_containers/food/snacks/watermelonslice slices_num = 5 dried_type = null - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL filling_color = "#008000" bitesize_mod = 3 diff --git a/code/modules/hydroponics/grown/nettle.dm b/code/modules/hydroponics/grown/nettle.dm index f6d9be51b4a..52f60d06b18 100644 --- a/code/modules/hydroponics/grown/nettle.dm +++ b/code/modules/hydroponics/grown/nettle.dm @@ -37,7 +37,7 @@ force = 15 hitsound = 'sound/weapons/bladeslice.ogg' throwforce = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 1 throw_range = 3 origin_tech = "combat=3" diff --git a/code/modules/hydroponics/grown/towercap.dm b/code/modules/hydroponics/grown/towercap.dm index 961fe7c4096..339459669be 100644 --- a/code/modules/hydroponics/grown/towercap.dm +++ b/code/modules/hydroponics/grown/towercap.dm @@ -37,7 +37,7 @@ icon_state = "logs" force = 5 throwforce = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throw_speed = 2 throw_range = 3 origin_tech = "materials=1" @@ -191,4 +191,4 @@ /obj/structure/bonfire/unbuckle_mob(force=0) if(buckled_mob) buckled_mob.pixel_y -= 13 - . = ..() \ No newline at end of file + . = ..() diff --git a/code/modules/hydroponics/hydroitemdefines.dm b/code/modules/hydroponics/hydroitemdefines.dm index 608c52bfcb4..9a93d1a9673 100644 --- a/code/modules/hydroponics/hydroitemdefines.dm +++ b/code/modules/hydroponics/hydroitemdefines.dm @@ -5,7 +5,7 @@ icon = 'icons/obj/device.dmi' icon_state = "hydro" item_state = "analyzer" - w_class = 1 + w_class = WEIGHT_CLASS_TINY slot_flags = SLOT_BELT origin_tech = "magnets=2;biotech=2" materials = list(MAT_METAL=30, MAT_GLASS=20) @@ -24,7 +24,7 @@ flags = OPENCONTAINER slot_flags = SLOT_BELT throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 10 @@ -46,7 +46,7 @@ flags = OPENCONTAINER slot_flags = SLOT_BELT throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 10 @@ -68,7 +68,7 @@ flags = CONDUCT force = 5 throwforce = 7 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=50) attack_verb = list("slashed", "sliced", "cut", "clawed") hitsound = 'sound/weapons/bladeslice.ogg' @@ -80,7 +80,7 @@ icon_state = "hatchet" flags = CONDUCT force = 12 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throwforce = 15 throw_speed = 3 throw_range = 4 @@ -111,7 +111,7 @@ throwforce = 5 throw_speed = 2 throw_range = 3 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY flags = CONDUCT armour_penetration = 20 slot_flags = SLOT_BACK @@ -140,7 +140,7 @@ force = 3 sharp = 0 edge = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL extend = 0 slot_flags = SLOT_BELT origin_tech = "materials=3;combat=3" @@ -154,7 +154,7 @@ icon_state = "tscythe1" item_state = "scythe0" //use the normal scythe in-hands slot_flags = SLOT_BACK //won't fit on belt, but can be worn on belt when extended - w_class = 4 //won't fit in backpacks while extended + w_class = WEIGHT_CLASS_BULKY //won't fit in backpacks while extended force = 15 //slightly better than normal scythe damage attack_verb = list("chopped", "sliced", "cut", "reaped") hitsound = 'sound/weapons/bladeslice.ogg' @@ -165,7 +165,7 @@ icon_state = "tscythe0" item_state = null //no sprite for folded version, like a tele-baton slot_flags = SLOT_BELT //can be worn on belt again, but no longer makes sense to wear on the back - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 3 attack_verb = list("hit", "poked") hitsound = "swing_hit" @@ -200,7 +200,7 @@ icon = 'icons/obj/chemical.dmi' icon_state = "bottle16" volume = 50 - w_class = 1 + w_class = WEIGHT_CLASS_TINY amount_per_transfer_from_this = 10 possible_transfer_amounts = list(1,2,5,10,15,25,50) @@ -249,7 +249,7 @@ icon = 'icons/obj/chemical.dmi' icon_state = "bottle16" volume = 50 - w_class = 1 + w_class = WEIGHT_CLASS_TINY amount_per_transfer_from_this = 10 possible_transfer_amounts = list(1,2,5,10,15,25,50) diff --git a/code/modules/hydroponics/seeds.dm b/code/modules/hydroponics/seeds.dm index ae79eda23d3..093cd2114a4 100644 --- a/code/modules/hydroponics/seeds.dm +++ b/code/modules/hydroponics/seeds.dm @@ -5,7 +5,7 @@ /obj/item/seeds icon = 'icons/obj/hydroponics/seeds.dmi' icon_state = "seed" // Unknown plant seed - these shouldn't exist in-game. - w_class = 1 + w_class = WEIGHT_CLASS_TINY burn_state = FLAMMABLE var/plantname = "Plants" // Name of plant when planted. var/product // A type path. The thing that is created when the plant is harvested. diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index a32b31611cc..96f88f3d9c4 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -167,7 +167,7 @@ icon_state ="book" throw_speed = 1 throw_range = 5 - w_class = 3 //upped to three because books are, y'know, pretty big. (and you could hide them inside eachother recursively forever) + w_class = WEIGHT_CLASS_NORMAL //upped to three because books are, y'know, pretty big. (and you could hide them inside eachother recursively forever) attack_verb = list("bashed", "whacked", "educated") burn_state = FLAMMABLE @@ -201,7 +201,7 @@ /obj/item/weapon/book/attackby(obj/item/weapon/W as obj, mob/user as mob, params) if(carved) if(!store) - if(W.w_class < 3) + if(W.w_class < WEIGHT_CLASS_NORMAL) user.drop_item() W.forceMove(src) store = W @@ -293,7 +293,7 @@ icon_state ="scanner" throw_speed = 1 throw_range = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/obj/machinery/computer/library/checkout/computer // Associated computer - Modes 1 to 3 use this var/obj/item/weapon/book/book // Currently scanned book var/mode = 0 // 0 - Scan only, 1 - Scan and Set Buffer, 2 - Scan and Attempt to Check In, 3 - Scan and Attempt to Add to Inventory diff --git a/code/modules/martial_arts/martial.dm b/code/modules/martial_arts/martial.dm index 971dc69a1b6..3f1705f4651 100644 --- a/code/modules/martial_arts/martial.dm +++ b/code/modules/martial_arts/martial.dm @@ -172,7 +172,7 @@ name = "bo staff" desc = "A long, tall staff made of polished wood. Traditionally used in ancient old-Earth martial arts. Can be wielded to both kill and incapacitate." force = 10 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK force_unwielded = 10 force_wielded = 24 diff --git a/code/modules/mining/coins.dm b/code/modules/mining/coins.dm index 00ea7632900..2ce3f8d6195 100644 --- a/code/modules/mining/coins.dm +++ b/code/modules/mining/coins.dm @@ -7,7 +7,7 @@ flags = CONDUCT force = 1 throwforce = 2 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/string_attached var/list/sideslist = list("heads","tails") var/cmineral = null @@ -149,4 +149,4 @@ if(do_after(user, 15, target = src)) user.visible_message("[user] has flipped [src]. It lands on [coinflip].", \ "You flip [src]. It lands on [coinflip].", \ - "You hear the clattering of loose change.") \ No newline at end of file + "You hear the clattering of loose change.") diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm index d6c375c2832..8bb891834a9 100644 --- a/code/modules/mining/equipment_locker.dm +++ b/code/modules/mining/equipment_locker.dm @@ -521,7 +521,7 @@ desc = "A token to redeem a piece of equipment. Use it on a mining equipment vendor." icon = 'icons/obj/items.dmi' icon_state = "mining_voucher" - w_class = 1 + w_class = WEIGHT_CLASS_TINY /**********************Mining Point Card**********************/ @@ -555,7 +555,7 @@ icon_state = "Jaunter" item_state = "electronic" throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 5 origin_tech = "bluespace=2" @@ -615,7 +615,7 @@ icon_state = "resonator" item_state = "resonator" desc = "A handheld device that creates small fields of energy that resonate until they detonate, crushing rock. It can also be activated without a target to create a field at the user's location, to act as a delayed time trap. It's more effective in a vaccuum." - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL force = 8 throwforce = 10 var/cooldown = 0 @@ -711,7 +711,7 @@ /obj/item/weapon/mining_drone_cube name = "mining drone cube" desc = "Compressed mining drone, ready for deployment. Just press the button to activate!" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL icon = 'icons/obj/aibots.dmi' icon_state = "minedronecube" item_state = "electronic" @@ -728,7 +728,7 @@ name = "Drone Kit" desc = "A boxed kit that includes one mining drone cube and a welding tool with an increased capacity." icon_state = "implant" - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL storage_slots = 2 can_hold = list(/obj/item/weapon/mining_drone_cube, /obj/item/weapon/weldingtool/hugetank) @@ -746,7 +746,7 @@ icon_state = "lazarus_hypo" item_state = "hypo" throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 5 var/loaded = 1 @@ -806,7 +806,7 @@ name = "manual mining scanner" icon_state = "mining1" item_state = "analyzer" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT slot_flags = SLOT_BELT var/cooldown = 0 @@ -838,7 +838,7 @@ name = "advanced automatic mining scanner" icon_state = "mining0" item_state = "analyzer" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT slot_flags = SLOT_BELT var/cooldown = 35 @@ -931,7 +931,7 @@ desc = "A tank of compressed carbon dioxide for miners to use as propulsion in local space. The compact size allows for easy storage at the cost of capacity." volume = 40 throw_range = 7 - w_class = 3 //same as syndie harness + w_class = WEIGHT_CLASS_NORMAL //same as syndie harness /*********************Hivelord stabilizer****************/ @@ -940,7 +940,7 @@ icon = 'icons/obj/chemical.dmi' icon_state = "bottle19" desc = "Inject a hivelord core with this stabilizer to preserve its healing powers indefinitely." - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "biotech=1" /obj/item/weapon/hivelordstabilizer/afterattack(obj/item/organ/internal/M, mob/user) @@ -963,7 +963,7 @@ \nMark a mob with the destabilizing force, then hit them in melee to activate it for extra damage. Extra damage if backstabbed in this fashion. \ This weapon is only particularly effective against large creatures." force = 20 //As much as a bone spear, but this is significantly more annoying to carry around due to requiring the use of both hands at all times - w_class = 4 + w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK force_unwielded = 20 //It's never not wielded so these are the same force_wielded = 20 diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm index 922dd34a166..6289333549b 100644 --- a/code/modules/mining/lavaland/ash_flora.dm +++ b/code/modules/mining/lavaland/ash_flora.dm @@ -155,7 +155,7 @@ icon = 'icons/obj/lavaland/ash_flora.dmi' icon_state = "mushroom_shavings" list_reagents = list("sugar" = 3, "ethanol" = 2, "stabilizing_agent" = 3, "minttoxin" = 2) - w_class = 1 + w_class = WEIGHT_CLASS_TINY /obj/item/weapon/reagent_containers/food/snacks/ash_flora/New() ..() @@ -194,7 +194,7 @@ desc = "A bowl made out of mushrooms. Not food, though it might have contained some at some point." icon = 'icons/obj/lavaland/ash_flora.dmi' icon_state = "mushroom_bowl" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL //what you can craft with these things /datum/crafting_recipe/mushroom_bowl diff --git a/code/modules/mining/lavaland/loot/ashdragon_loot.dm b/code/modules/mining/lavaland/loot/ashdragon_loot.dm index 4565039d52e..418d00c6f19 100644 --- a/code/modules/mining/lavaland/loot/ashdragon_loot.dm +++ b/code/modules/mining/lavaland/loot/ashdragon_loot.dm @@ -15,8 +15,8 @@ if(4) new /obj/item/weapon/dragons_blood(src) -// Spectral Blade - +// Spectral Blade + /obj/item/weapon/melee/ghost_sword name = "spectral blade" desc = "A rusted and dulled blade. It doesn't look like it'd do much damage. It glows weakly." @@ -25,7 +25,7 @@ flags = CONDUCT sharp = 1 edge = 1 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 1 throwforce = 1 hitsound = 'sound/effects/ghost2.ogg' @@ -71,7 +71,7 @@ var/turf/T = get_turf(src) var/list/contents = T.GetAllContents() var/mob/dead/observer/current_spirits = list() - + for(var/mob/dead/observer/O in player_list) if(is_type_in_list(O.following, contents)) ghost_counter++ @@ -145,7 +145,7 @@ stage4 = list("Your blood burns.") stage5 = list("You're a fucking dragon. However, any previous allegiances you held still apply. It'd be incredibly rude to eat your still human friends for no reason.") new_form = /mob/living/simple_animal/hostile/megafauna/dragon/lesser - + //Lava Staff /obj/item/weapon/lava_staff @@ -156,7 +156,7 @@ icon = 'icons/obj/guns/magic.dmi' slot_flags = SLOT_BACK item_state = "staffofstorms" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 25 damtype = BURN hitsound = 'sound/weapons/sear.ogg' @@ -214,4 +214,4 @@ /obj/effect/overlay/temp/lavastaff icon_state = "lavastaff_warn" - duration = 50 \ No newline at end of file + duration = 50 diff --git a/code/modules/mining/lavaland/loot/hierophant_loot.dm b/code/modules/mining/lavaland/loot/hierophant_loot.dm index f06fd25d428..64689a3a535 100644 --- a/code/modules/mining/lavaland/loot/hierophant_loot.dm +++ b/code/modules/mining/lavaland/loot/hierophant_loot.dm @@ -5,7 +5,7 @@ item_state = "hierophant_staff" icon = 'icons/obj/guns/magic.dmi' slot_flags = SLOT_BACK - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 20 hitsound = "swing_hit" //hitsound = 'sound/weapons/sonic_jackhammer.ogg' @@ -185,4 +185,4 @@ //playsound(T,'sound/effects/bin_close.ogg', 200, 1) sleep(2) for(var/t in RANGE_TURFS(1, T)) - new /obj/effect/overlay/temp/hierophant/blast(t, user, friendly_fire_check) \ No newline at end of file + new /obj/effect/overlay/temp/hierophant/blast(t, user, friendly_fire_check) diff --git a/code/modules/mining/lavaland/loot/legion_loot.dm b/code/modules/mining/lavaland/loot/legion_loot.dm index 49e64f3349e..f85a6a57aac 100644 --- a/code/modules/mining/lavaland/loot/legion_loot.dm +++ b/code/modules/mining/lavaland/loot/legion_loot.dm @@ -6,7 +6,7 @@ icon = 'icons/obj/guns/magic.dmi' slot_flags = SLOT_BACK item_state = "staffofstorms" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 25 damtype = BURN hitsound = 'sound/weapons/sear.ogg' @@ -49,4 +49,4 @@ "You hold [src] skyward, calling down a terrible storm!") playsound(user, 'sound/magic/Staff_Change.ogg', 200, 0) A.telegraph() - storm_cooldown = world.time + 200 \ No newline at end of file + storm_cooldown = world.time + 200 diff --git a/code/modules/mining/lavaland/loot/tendril_loot.dm b/code/modules/mining/lavaland/loot/tendril_loot.dm index dec8712eb74..1c2093ce8c2 100644 --- a/code/modules/mining/lavaland/loot/tendril_loot.dm +++ b/code/modules/mining/lavaland/loot/tendril_loot.dm @@ -5,7 +5,7 @@ name = "paradox bag" desc = "Somehow, it's in two places at once." max_combined_w_class = 60 - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL //External /obj/item/device/shared_storage @@ -144,7 +144,7 @@ item_state = "rods" desc = "Not to be confused with the kind Research hassles you for." force = 12 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL burn_state = LAVA_PROOF | FIRE_PROOF /datum/crafting_recipe/oar @@ -391,4 +391,4 @@ if(!can_destroy && !force) return QDEL_HINT_LETMELIVE else - . = ..() \ No newline at end of file + . = ..() diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index a9151609f74..fba1c56fac0 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -79,7 +79,7 @@ force = 15.0 throwforce = 10.0 item_state = "pickaxe" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY materials = list(MAT_METAL=2000) //one sheet, but where can you make them? var/digspeed = 40 //moving the delay to an item var so R&D can make improved picks. --NEO origin_tech = "materials=1;engineering=1" @@ -152,7 +152,7 @@ icon_state = "smdrill" origin_tech = "materials=6;powerstorage=4;engineering=5;syndicate=3" desc = "Microscopic supermatter crystals cover the head of this tiny drill." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/pickaxe/drill/cyborg/diamond //This is the BORG version! name = "diamond-tipped cyborg mining drill" //To inherit the NODROP flag, and easier to change borg specific drill mechanics. @@ -184,7 +184,7 @@ force = 8.0 throwforce = 4.0 item_state = "shovel" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL materials = list(MAT_METAL=50) origin_tech = "materials=1;engineering=1" attack_verb = list("bashed", "bludgeoned", "thrashed", "whacked") @@ -198,7 +198,7 @@ item_state = "spade" force = 5.0 throwforce = 7.0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL toolspeed = 2 @@ -219,7 +219,7 @@ desc = "It allows you to store and deploy lazarus-injected creatures easier." icon = 'icons/obj/mobcap.dmi' icon_state = "mobcap0" - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_range = 20 var/mob/living/simple_animal/captured = null var/colorindex = 0 @@ -282,7 +282,7 @@ desc = "An emergency shelter stored within a pocket of bluespace." icon_state = "capsule" icon = 'icons/obj/mining.dmi' - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "engineering=3;bluespace=3" var/template_id = "shelter_alpha" var/datum/map_template/shelter/template diff --git a/code/modules/mining/money_bag.dm b/code/modules/mining/money_bag.dm index 3fa8d1c1edf..30fca5f2f95 100644 --- a/code/modules/mining/money_bag.dm +++ b/code/modules/mining/money_bag.dm @@ -9,7 +9,7 @@ throwforce = 0 burn_state = FLAMMABLE burntime = 20 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY /obj/item/weapon/moneybag/attack_hand(user as mob) var/amt_gold = 0 @@ -119,4 +119,4 @@ new /obj/item/weapon/coin/silver(src) new /obj/item/weapon/coin/gold(src) new /obj/item/weapon/coin/gold(src) - new /obj/item/weapon/coin/adamantine(src) \ No newline at end of file + new /obj/item/weapon/coin/adamantine(src) diff --git a/code/modules/mining/ore.dm b/code/modules/mining/ore.dm index cc50f46b9e5..873b6c798d1 100644 --- a/code/modules/mining/ore.dm +++ b/code/modules/mining/ore.dm @@ -153,7 +153,7 @@ icon = 'icons/obj/mining.dmi' icon_state = "Gibtonite ore" item_state = "Gibtonite ore" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY throw_range = 0 anchored = 1 //Forces people to carry it by hand, no pulling! var/primed = 0 diff --git a/code/modules/mob/living/carbon/alien/humanoid/inventory.dm b/code/modules/mob/living/carbon/alien/humanoid/inventory.dm index 223b6a512ae..08017da0b76 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/inventory.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/inventory.dm @@ -22,7 +22,7 @@ if(slot_l_store) if(l_store) return - if(W.w_class > 3) + if(W.w_class > WEIGHT_CLASS_NORMAL) return unEquip(W) l_store = W @@ -30,7 +30,7 @@ if(slot_r_store) if(r_store) return - if(W.w_class > 3) + if(W.w_class > WEIGHT_CLASS_NORMAL) return unEquip(W) r_store = W @@ -44,4 +44,4 @@ if(slot_l_store) if(l_store) l_store.attack_alien(src) if(slot_r_store) - if(r_store) r_store.attack_alien(src) \ No newline at end of file + if(r_store) r_store.attack_alien(src) diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index 98d1bec775c..38ea99834b0 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -14,7 +14,7 @@ var/const/MAX_ACTIVE_TIME = 400 icon = 'icons/mob/alien.dmi' icon_state = "facehugger" item_state = "facehugger" - w_class = 1 //note: can be picked up by aliens unlike most other items of w_class below 4 + w_class = WEIGHT_CLASS_TINY //note: can be picked up by aliens unlike most other items of w_class below 4 throw_range = 5 tint = 3 flags = AIRTIGHT @@ -249,4 +249,4 @@ var/const/MAX_ACTIVE_TIME = 400 gender = FEMALE /obj/item/clothing/mask/facehugger/lamarr/New()//to prevent deleting it if aliums are disabled - return \ No newline at end of file + return diff --git a/code/modules/mob/living/carbon/brain/MMI.dm b/code/modules/mob/living/carbon/brain/MMI.dm index 15c52d2693c..ec77d1be3bf 100644 --- a/code/modules/mob/living/carbon/brain/MMI.dm +++ b/code/modules/mob/living/carbon/brain/MMI.dm @@ -5,7 +5,7 @@ desc = "The Warrior's bland acronym, MMI, obscures the true horror of this monstrosity." icon = 'icons/obj/assemblies.dmi' icon_state = "mmi_empty" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "biotech=3" //Revised. Brainmob is now contained directly within object of transfer. MMI in this case. diff --git a/code/modules/mob/living/carbon/brain/brain_item.dm b/code/modules/mob/living/carbon/brain/brain_item.dm index 56a98142f80..5a62ead4952 100644 --- a/code/modules/mob/living/carbon/brain/brain_item.dm +++ b/code/modules/mob/living/carbon/brain/brain_item.dm @@ -4,7 +4,7 @@ max_damage = 200 icon_state = "brain2" force = 1.0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throwforce = 1.0 throw_speed = 3 throw_range = 5 diff --git a/code/modules/mob/living/carbon/brain/posibrain.dm b/code/modules/mob/living/carbon/brain/posibrain.dm index 565dd250fd8..8dd6e14e427 100644 --- a/code/modules/mob/living/carbon/brain/posibrain.dm +++ b/code/modules/mob/living/carbon/brain/posibrain.dm @@ -3,7 +3,7 @@ desc = "A cube of shining metal, four inches to a side and covered in shallow grooves." icon = 'icons/obj/assemblies.dmi' icon_state = "posibrain" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "biotech=3;programming=2" var/searching = 0 @@ -37,7 +37,7 @@ silenced = !silenced to_chat(user, "You toggle the speaker [silenced ? "off" : "on"].") if(brainmob && brainmob.key) - to_chat(brainmob, "Your internal speaker has been toggled [silenced ? "off" : "on"].") + to_chat(brainmob, "Your internal speaker has been toggled [silenced ? "off" : "on"].") /obj/item/device/mmi/posibrain/proc/request_player() for(var/mob/dead/observer/O in player_list) diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index bb297513ef5..8e1c32f931a 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -546,7 +546,7 @@ return 0 if(I.slot_flags & SLOT_DENYPOCKET) return - if(I.w_class <= 2 || (I.slot_flags & SLOT_POCKET)) + if(I.w_class <= WEIGHT_CLASS_SMALL || (I.slot_flags & SLOT_POCKET)) return 1 if(slot_r_store) if(I.flags & NODROP) @@ -559,7 +559,7 @@ return 0 if(I.slot_flags & SLOT_DENYPOCKET) return 0 - if(I.w_class <= 2 || (I.slot_flags & SLOT_POCKET)) + if(I.w_class <= WEIGHT_CLASS_SMALL || (I.slot_flags & SLOT_POCKET)) return 1 return 0 if(slot_s_store) @@ -575,7 +575,7 @@ if(!disable_warning) to_chat(src, "You somehow have a suit with no defined allowed items for suit storage, stop that.") return 0 - if(I.w_class > 4) + if(I.w_class > WEIGHT_CLASS_BULKY) if(!disable_warning) to_chat(src, "The [name] is too big to attach.") return 0 diff --git a/code/modules/mob/living/silicon/robot/component.dm b/code/modules/mob/living/silicon/robot/component.dm index d399db99515..2c9ab233eda 100644 --- a/code/modules/mob/living/silicon/robot/component.dm +++ b/code/modules/mob/living/silicon/robot/component.dm @@ -171,7 +171,7 @@ flags = CONDUCT slot_flags = SLOT_BELT throwforce = 3 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 5 throw_range = 10 origin_tech = "magnets=1;biotech=1" diff --git a/code/modules/mob/living/silicon/robot/drone/drone.dm b/code/modules/mob/living/silicon/robot/drone/drone.dm index bbda7a05318..282f97c4dc4 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone.dm @@ -327,7 +327,7 @@ ..() else if(istype(AM,/obj/item)) var/obj/item/O = AM - if(O.w_class > 2) + if(O.w_class > WEIGHT_CLASS_SMALL) to_chat(src, "You are too small to pull that.") return else diff --git a/code/modules/mob/living/simple_animal/bot/construction.dm b/code/modules/mob/living/simple_animal/bot/construction.dm index d524ffd8e06..a7d297d0bdc 100644 --- a/code/modules/mob/living/simple_animal/bot/construction.dm +++ b/code/modules/mob/living/simple_animal/bot/construction.dm @@ -10,7 +10,7 @@ throwforce = 5 throw_speed = 2 throw_range = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/created_name = "Cleanbot" /obj/item/weapon/bucket_sensor/attackby(obj/item/W, mob/user as mob, params) @@ -204,7 +204,7 @@ throwforce = 10 throw_speed = 2 throw_range = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/created_name = "Floorbot" /obj/item/weapon/toolbox_tiles_sensor @@ -216,7 +216,7 @@ throwforce = 10 throw_speed = 2 throw_range = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/created_name = "Floorbot" /obj/item/weapon/storage/toolbox/mechanical/attackby(obj/item/stack/tile/plasteel/T, mob/user, params) @@ -286,7 +286,7 @@ var/build_step = 0 var/created_name = "Medibot" //To preserve the name if it's a unique medbot I guess var/skin = null //Same as medbot, set to tox or ointment for the respective kits. - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/treatment_brute = "salglu_solution" var/treatment_oxy = "salbutamol" var/treatment_fire = "salglu_solution" @@ -478,4 +478,4 @@ overlays -= "hs_arm" new /obj/item/robot_parts/l_arm(get_turf(src)) to_chat(user, "You remove the robot arm from [src].") - build_step-- \ No newline at end of file + build_step-- diff --git a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm index 5b2419bf7e8..bc75bd554e5 100644 --- a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm +++ b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm @@ -260,7 +260,7 @@ var/list/items = list() for(var/obj/item/I in view(1,src)) - if(I.loc != src && I.w_class <= 2) + if(I.loc != src && I.w_class <= WEIGHT_CLASS_SMALL) items.Add(I) var/obj/selection = input("Select an item.", "Pickup") in items diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm index 80227526cbc..3298e334bd2 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm @@ -222,7 +222,7 @@ icon = 'icons/obj/items.dmi' icon_state = "goliath_hide" flags = NOBLUDGEON - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL layer = 4 /obj/item/asteroid/goliath_hide/afterattack(atom/target, mob/user, proximity_flag) diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index 2c1fb61be2f..bd484903aa9 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -515,12 +515,12 @@ if(istype(AM, /obj/item)) var/obj/item/I = AM - if(I.w_class < 2) + if(I.w_class < WEIGHT_CLASS_SMALL) return I if(iscarbon(AM)) var/mob/living/carbon/C = AM - if((C.l_hand && C.l_hand.w_class <= 2) || (C.r_hand && C.r_hand.w_class <= 2)) + if((C.l_hand && C.l_hand.w_class <= WEIGHT_CLASS_SMALL) || (C.r_hand && C.r_hand.w_class <= WEIGHT_CLASS_SMALL)) return C return null @@ -544,12 +544,12 @@ if(istype(AM, /obj/item)) var/obj/item/I = AM - if(I.w_class <= 2) + if(I.w_class <= WEIGHT_CLASS_SMALL) return I if(iscarbon(AM)) var/mob/living/carbon/C = AM - if(C.l_hand && C.l_hand.w_class <= 2 || C.r_hand && C.r_hand.w_class <= 2) + if(C.l_hand && C.l_hand.w_class <= WEIGHT_CLASS_SMALL || C.r_hand && C.r_hand.w_class <= WEIGHT_CLASS_SMALL) return C return null @@ -571,7 +571,7 @@ for(var/obj/item/I in view(1,src)) //Make sure we're not already holding it and it's small enough - if(I.loc != src && I.w_class <= 2) + if(I.loc != src && I.w_class <= WEIGHT_CLASS_SMALL) //If we have a perch and the item is sitting on it, continue if(!client && parrot_perch && I.loc == parrot_perch.loc) @@ -600,10 +600,10 @@ var/obj/item/stolen_item = null for(var/mob/living/carbon/C in view(1,src)) - if(C.l_hand && C.l_hand.w_class <= 2) + if(C.l_hand && C.l_hand.w_class <= WEIGHT_CLASS_SMALL) stolen_item = C.l_hand - if(C.r_hand && C.r_hand.w_class <= 2) + if(C.r_hand && C.r_hand.w_class <= WEIGHT_CLASS_SMALL) stolen_item = C.r_hand if(stolen_item) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index a1b6c652913..99d7a7a1fa6 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -424,7 +424,7 @@ var/list/slot_equipment_priority = list( \ return 0 if(slot_flags & SLOT_DENYPOCKET) return - if( w_class <= 2 || (slot_flags & SLOT_POCKET) ) + if( w_class <= WEIGHT_CLASS_SMALL || (slot_flags & SLOT_POCKET) ) return 1 if(slot_r_store) if(H.r_store) @@ -435,7 +435,7 @@ var/list/slot_equipment_priority = list( \ return 0 if(slot_flags & SLOT_DENYPOCKET) return 0 - if( w_class <= 2 || (slot_flags & SLOT_POCKET) ) + if( w_class <= WEIGHT_CLASS_SMALL || (slot_flags & SLOT_POCKET) ) return 1 return 0 if(slot_s_store) @@ -447,7 +447,7 @@ var/list/slot_equipment_priority = list( \ if(!disable_warning) to_chat(usr, "You somehow have a suit with no defined allowed items for suit storage, stop that.") return 0 - if(src.w_class > 4) + if(src.w_class > WEIGHT_CLASS_BULKY) if(!disable_warning) to_chat(usr, "The [name] is too big to attach.") return 0 diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm index 624ec318f03..fffd02adf0a 100644 --- a/code/modules/mob/mob_grab.dm +++ b/code/modules/mob/mob_grab.dm @@ -26,7 +26,7 @@ plane = HUD_PLANE item_state = "nothing" icon = 'icons/mob/screen_gen.dmi' - w_class = 5 + w_class = WEIGHT_CLASS_BULKY /obj/item/weapon/grab/New(var/mob/user, var/mob/victim) diff --git a/code/modules/paperwork/clipboard.dm b/code/modules/paperwork/clipboard.dm index a5c64adc7ea..da26fc96fec 100644 --- a/code/modules/paperwork/clipboard.dm +++ b/code/modules/paperwork/clipboard.dm @@ -4,7 +4,7 @@ icon_state = "clipboard" item_state = "clipboard" throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 10 var/obj/item/weapon/pen/haspen //The stored pen. diff --git a/code/modules/paperwork/folders.dm b/code/modules/paperwork/folders.dm index 00458df575c..214c284f206 100644 --- a/code/modules/paperwork/folders.dm +++ b/code/modules/paperwork/folders.dm @@ -3,7 +3,7 @@ desc = "A folder." icon = 'icons/obj/bureaucracy.dmi' icon_state = "folder" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL pressure_resistance = 2 burn_state = FLAMMABLE @@ -121,4 +121,3 @@ ..() new /obj/item/documents/syndicate/blue(src) update_icon() - diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 60a501f1ecf..250abe3d682 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -10,7 +10,7 @@ icon_state = "paper" item_state = "paper" throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_range = 1 throw_speed = 1 layer = 4 diff --git a/code/modules/paperwork/paper_bundle.dm b/code/modules/paperwork/paper_bundle.dm index da20ed65dde..2a7c7e113e1 100644 --- a/code/modules/paperwork/paper_bundle.dm +++ b/code/modules/paperwork/paper_bundle.dm @@ -5,7 +5,7 @@ icon_state = "paper" item_state = "paper" throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_range = 2 throw_speed = 1 layer = 4 @@ -241,4 +241,4 @@ if(photo) desc += "\nThere is a photo attached to it." overlays += image('icons/obj/bureaucracy.dmi', "clip") - return \ No newline at end of file + return diff --git a/code/modules/paperwork/paperbin.dm b/code/modules/paperwork/paperbin.dm index 89ba611f33c..efcce443d6c 100644 --- a/code/modules/paperwork/paperbin.dm +++ b/code/modules/paperwork/paperbin.dm @@ -4,7 +4,7 @@ icon_state = "paper_bin1" item_state = "sheet-metal" throwforce = 1 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throw_speed = 3 throw_range = 7 pressure_resistance = 8 diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm index 3b8a10ffbc0..89bd843467a 100644 --- a/code/modules/paperwork/pen.dm +++ b/code/modules/paperwork/pen.dm @@ -17,7 +17,7 @@ item_state = "pen" slot_flags = SLOT_BELT | SLOT_EARS throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 3 throw_range = 7 materials = list(MAT_METAL=10) @@ -167,7 +167,7 @@ force = 18 sharp = 1 edge = 1 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL name = "energy dagger" hitsound = 'sound/weapons/blade1.ogg' throwforce = 35 @@ -200,4 +200,4 @@ add_logs(user, P, "used poison pen on") to_chat(user, "You apply the poison to [P].") else - to_chat(user, "[src] clicks. It seems to be depleted.") \ No newline at end of file + to_chat(user, "[src] clicks. It seems to be depleted.") diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm index a9e232560fc..dc86ce2299a 100644 --- a/code/modules/paperwork/photography.dm +++ b/code/modules/paperwork/photography.dm @@ -15,7 +15,7 @@ desc = "A camera film cartridge. Insert it into a camera to reload it." icon_state = "film" item_state = "electropack" - w_class = 1 + w_class = WEIGHT_CLASS_TINY burn_state = FLAMMABLE @@ -27,7 +27,7 @@ icon = 'icons/obj/items.dmi' icon_state = "photo" item_state = "paper" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL burn_state = FLAMMABLE burntime = 5 var/blueprints = 0 // Does this have the blueprints? @@ -146,7 +146,7 @@ desc = "A polaroid camera. 10 photos left." icon_state = "camera" item_state = "electropack" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL slot_flags = SLOT_BELT var/list/matter = list("metal" = 2000) var/pictures_max = 10 @@ -508,7 +508,7 @@ var/list/SpookyGhosts = list("ghost","shade","shade2","ghost-narsie","horror","s desc = "video camera that can send live feed to the entertainment network." icon_state = "videocam" item_state = "videocam" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL slot_flags = SLOT_BELT materials = list(MAT_METAL=2000) var/on = 0 diff --git a/code/modules/paperwork/stamps.dm b/code/modules/paperwork/stamps.dm index 26e397039d8..2ca25bf185f 100644 --- a/code/modules/paperwork/stamps.dm +++ b/code/modules/paperwork/stamps.dm @@ -5,7 +5,7 @@ icon_state = "stamp-ok" item_state = "stamp" throwforce = 0 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 3 throw_range = 7 materials = list(MAT_METAL=60) @@ -105,4 +105,4 @@ if(chosen_stamp) name = chosen_stamp.name icon_state = chosen_stamp.icon_state - item_color = chosen_stamp.item_color \ No newline at end of file + item_color = chosen_stamp.item_color diff --git a/code/modules/pda/PDA.dm b/code/modules/pda/PDA.dm index d5208a01b8f..9da781b1ab1 100755 --- a/code/modules/pda/PDA.dm +++ b/code/modules/pda/PDA.dm @@ -10,7 +10,7 @@ var/global/list/obj/item/device/pda/PDAs = list() icon = 'icons/obj/pda.dmi' icon_state = "pda" item_state = "electronic" - w_class = 1 + w_class = WEIGHT_CLASS_TINY slot_flags = SLOT_ID | SLOT_BELT | SLOT_PDA //Main variables diff --git a/code/modules/pda/cart.dm b/code/modules/pda/cart.dm index 459ae09835a..b432effb8be 100644 --- a/code/modules/pda/cart.dm +++ b/code/modules/pda/cart.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/pda.dmi' icon_state = "cart" item_state = "electronic" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/obj/item/radio/integrated/radio = null @@ -322,4 +322,4 @@ my_game.hacked = 1 to_chat(user, "TR4P_M45T3R.mod successfully initialized. ToS violated. User Agreement nullified. Gotta pwn them all.") to_chat(user, "You can now create trapped versions of any mob in your collection that will damage hunters who attempt to capture it.") - description_antag = "This copy of Nano-Mob Hunter GO! has been hacked to allow the creation of trap mobs which will cause any PDA that attempts to capture it to shock anyone holding it. Hacked copies of the game will not trigger the trap." \ No newline at end of file + description_antag = "This copy of Nano-Mob Hunter GO! has been hacked to allow the creation of trap mobs which will cause any PDA that attempts to capture it to shock anyone holding it. Hacked copies of the game will not trigger the trap." diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 03a84d161e5..0b2c6f8b165 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -122,7 +122,7 @@ desc = "Heavy-duty switching circuits for power control." icon = 'icons/obj/module.dmi' icon_state = "power_mod" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL item_state = "electronic" flags = CONDUCT usesound = 'sound/items/Deconstruct.ogg' @@ -621,7 +621,7 @@ if(((stat & BROKEN) || malfhack) \ && !opened \ && ( \ - (W.force >= 5 && W.w_class >= 3.0) \ + (W.force >= 5 && W.w_class >= WEIGHT_CLASS_NORMAL) \ || istype(W,/obj/item/weapon/crowbar) \ ) \ && prob(20) ) diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 33aa4931fcc..b70e847cab4 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -485,7 +485,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list( color = COLOR_RED desc = "A coil of power cable." throwforce = 10 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 2 throw_range = 5 materials = list(MAT_METAL=10, MAT_GLASS=5) @@ -568,9 +568,9 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list( /obj/item/stack/cable_coil/proc/update_wclass() if(amount == 1) - w_class = 1 + w_class = WEIGHT_CLASS_TINY else - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/stack/cable_coil/examine(mob/user) if(!..(user, 1)) diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index a1e97bf58d2..3f42b4d58ce 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -592,7 +592,7 @@ icon = 'icons/obj/lighting.dmi' force = 2 throwforce = 5 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/status = 0 // LIGHT_OK, LIGHT_BURNED or LIGHT_BROKEN var/base_state var/switchcount = 0 // number of times switched @@ -612,7 +612,7 @@ brightness_range = 8 /obj/item/weapon/light/tube/large - w_class = 2 + w_class = WEIGHT_CLASS_SMALL name = "large light tube" brightness_range = 15 brightness_power = 2 diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index dea4c4797e8..fa9b61c8059 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -204,7 +204,7 @@ icon = 'icons/obj/power.dmi' icon_state = "sp_base" item_state = "electropack" - w_class = 4 // Pretty big! + w_class = WEIGHT_CLASS_BULKY // Pretty big! anchored = 0 var/tracker = 0 var/glass_type = null diff --git a/code/modules/power/supermatter/sm_shard.dm b/code/modules/power/supermatter/sm_shard.dm index 2ffd5b040ec..d4c1109e16e 100644 --- a/code/modules/power/supermatter/sm_shard.dm +++ b/code/modules/power/supermatter/sm_shard.dm @@ -7,7 +7,7 @@ icon_state = "supermatter" sharp = 1 edge = 1 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT light_color = "#8A8A00" var/brightness = 2 @@ -85,7 +85,7 @@ icon = 'icons/obj/weapons.dmi' icon_state = "tongs" edge = 1 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL flags = CONDUCT var/obj/item/held = null // The item currently being held diff --git a/code/modules/power/tracker.dm b/code/modules/power/tracker.dm index 7b4b7a0d02e..ffaffd5ea81 100644 --- a/code/modules/power/tracker.dm +++ b/code/modules/power/tracker.dm @@ -81,4 +81,4 @@ name = "tracker electronics" icon = 'icons/obj/doors/door_assembly.dmi' icon_state = "door_electronics" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL diff --git a/code/modules/projectiles/ammunition.dm b/code/modules/projectiles/ammunition.dm index 924dcac3b4c..71400802ee2 100644 --- a/code/modules/projectiles/ammunition.dm +++ b/code/modules/projectiles/ammunition.dm @@ -6,7 +6,7 @@ flags = CONDUCT slot_flags = SLOT_BELT throwforce = 1 - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/fire_sound = null //What sound should play when this ammo is fired var/caliber = null //Which kind of guns it can be loaded into var/projectile_type = null //The bullet type to create when New() is called @@ -87,7 +87,7 @@ item_state = "syringe_kit" materials = list(MAT_METAL=30000) throwforce = 2 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throw_speed = 4 throw_range = 10 var/list/stored_ammo = list() @@ -192,4 +192,4 @@ var/turf_mag = get_turf(src) for(var/obj/item/ammo in stored_ammo) ammo.forceMove(turf_mag) - stored_ammo -= ammo \ No newline at end of file + stored_ammo -= ammo diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index bba922624f1..0304f4a48a9 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -7,7 +7,7 @@ flags = CONDUCT slot_flags = SLOT_BELT materials = list(MAT_METAL=2000) - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throwforce = 5 throw_speed = 3 throw_range = 5 diff --git a/code/modules/projectiles/guns/alien.dm b/code/modules/projectiles/guns/alien.dm index de217a9715d..f541ca2a94a 100644 --- a/code/modules/projectiles/guns/alien.dm +++ b/code/modules/projectiles/guns/alien.dm @@ -3,7 +3,7 @@ desc = "A vicious alien projectile weapon. Parts of it quiver gelatinously, as though the thing is insectile and alive." icon_state = "spikethrower" item_state = "spikethrower" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL fire_sound_text = "a strange noise" mag_type = /obj/item/ammo_box/magazine/internal/spikethrower burst_size = 2 @@ -52,7 +52,7 @@ sharp = 1 edge = 0 throwforce = 5 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL caliber = "spike" icon_state = "bolt" fire_sound = 'sound/weapons/bladeslice.ogg' diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index 40356f8a7d9..fc14b32a09c 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -3,7 +3,7 @@ desc = "A basic energy-based laser gun that fires concentrated beams of light which pass through glass and thin metal." icon_state = "laser" item_state = "laser" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL materials = list(MAT_METAL=2000) origin_tech = "combat=3;magnets=2" ammo_type = list(/obj/item/ammo_casing/energy/lasergun) @@ -66,7 +66,7 @@ desc = "An advanced laser cannon that does more damage the farther away the target is." icon_state = "lasercannon" item_state = "laser" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 10 flags = CONDUCT slot_flags = SLOT_BACK diff --git a/code/modules/projectiles/guns/energy/nuclear.dm b/code/modules/projectiles/guns/energy/nuclear.dm index 727ebdd7082..379a8af70d8 100644 --- a/code/modules/projectiles/guns/energy/nuclear.dm +++ b/code/modules/projectiles/guns/energy/nuclear.dm @@ -31,7 +31,7 @@ desc = "A small, pistol-sized energy gun with a built-in flashlight. It has two settings: stun and kill." icon_state = "mini" item_state = "gun" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL ammo_x_offset = 2 charge_sections = 3 can_flashlight = 0 // Can't attach or detach the flashlight, and override it's icon update @@ -71,7 +71,7 @@ icon_state = "turretlaser" item_state = "turretlaser" slot_flags = null - w_class = 5 + w_class = WEIGHT_CLASS_HUGE ammo_type = list(/obj/item/ammo_casing/energy/electrode, /obj/item/ammo_casing/energy/laser) weapon_weight = WEAPON_MEDIUM can_flashlight = 0 diff --git a/code/modules/projectiles/guns/energy/pulse.dm b/code/modules/projectiles/guns/energy/pulse.dm index 456627398ce..7ded54f6690 100644 --- a/code/modules/projectiles/guns/energy/pulse.dm +++ b/code/modules/projectiles/guns/energy/pulse.dm @@ -3,7 +3,7 @@ desc = "A heavy-duty, multifaceted energy rifle with three modes. Preferred by front-line combat personnel." icon_state = "pulse" item_state = null - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 10 flags = CONDUCT slot_flags = SLOT_BACK @@ -25,7 +25,7 @@ /obj/item/weapon/gun/energy/pulse/carbine name = "pulse carbine" desc = "A compact variant of the pulse rifle with less firepower but easier storage." - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL slot_flags = SLOT_BELT icon_state = "pulse_carbine" item_state = "pulse" @@ -37,7 +37,7 @@ /obj/item/weapon/gun/energy/pulse/pistol name = "pulse pistol" desc = "A pulse rifle in an easily concealed handgun package with low capacity." - w_class = 2 + w_class = WEIGHT_CLASS_SMALL slot_flags = SLOT_BELT icon_state = "pulse_pistol" item_state = "gun" @@ -77,9 +77,9 @@ icon_state = "turretlaser" item_state = "turretlaser" slot_flags = null - w_class = 5 + w_class = WEIGHT_CLASS_HUGE 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 + ammo_x_offset = 2 diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 3595b9c7ea8..009d2c6c5e8 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -5,7 +5,7 @@ item_state = null //so the human update icon uses the icon_state instead. fire_sound = 'sound/weapons/IonRifle.ogg' origin_tech = "combat=2;magnets=4" - w_class = 5 + w_class = WEIGHT_CLASS_HUGE flags = CONDUCT slot_flags = SLOT_BACK ammo_type = list(/obj/item/ammo_casing/energy/ion) @@ -21,7 +21,7 @@ desc = "The MK.II Prototype Ion Projector is a lightweight carbine version of the larger ion rifle, built to be ergonomic and efficient." icon_state = "ioncarbine" origin_tech = "combat=4;magnets=4;materials=4" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL slot_flags = SLOT_BELT ammo_x_offset = 2 flight_x_offset = 18 @@ -60,7 +60,7 @@ icon = 'icons/obj/guns/projectile.dmi' icon_state = "riotgun" item_state = "c20r" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY ammo_type = list(/obj/item/ammo_casing/energy/meteor) cell_type = /obj/item/weapon/stock_parts/cell/potato clumsy_check = 0 //Admin spawn only, might as well let clowns use it. @@ -74,7 +74,7 @@ item_state = "pen" lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' righthand_file = 'icons/mob/inhands/items_righthand.dmi' - w_class = 1 + w_class = WEIGHT_CLASS_TINY /obj/item/weapon/gun/energy/mindflayer name = "\improper Mind Flayer" @@ -89,7 +89,7 @@ desc = "A weapon favored by syndicate stealth specialists." icon_state = "crossbow" item_state = "crossbow" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL materials = list(MAT_METAL=2000) origin_tech = "combat=2;magnets=2;syndicate=5" suppressed = 1 @@ -111,7 +111,7 @@ name = "energy crossbow" desc = "A reverse engineered weapon using syndicate technology." icon_state = "crossbowlarge" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL materials = list(MAT_METAL=4000) origin_tech = "combat=2;magnets=2;syndicate=3" //can be further researched for more syndie tech suppressed = 0 @@ -280,7 +280,7 @@ desc = "A specialized firearm designed to fire lethal bolts of toxins." icon_state = "toxgun" fire_sound = 'sound/effects/stealthoff.ogg' - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "combat=4;plasmatech=3" ammo_type = list(/obj/item/ammo_casing/energy/toxplasma) shaded_charge = 1 @@ -292,7 +292,7 @@ origin_tech = "combat=6;materials=5;powerstorage=4" ammo_type = list(/obj/item/ammo_casing/energy/sniper) slot_flags = SLOT_BACK - w_class = 4 + w_class = WEIGHT_CLASS_BULKY zoomable = TRUE zoom_amt = 7 //Long range, enough to see in front of you, but no tiles behind you. shaded_charge = 1 @@ -303,7 +303,7 @@ icon_state = "tempgun_4" item_state = "tempgun_4" slot_flags = SLOT_BACK - w_class = 4 + w_class = WEIGHT_CLASS_BULKY fire_sound = 'sound/weapons/pulse3.ogg' desc = "A gun that changes the body temperature of its targets." var/temperature = 300 diff --git a/code/modules/projectiles/guns/grenade_launcher.dm b/code/modules/projectiles/guns/grenade_launcher.dm index 5abac9ebad9..ad49c99bfc4 100644 --- a/code/modules/projectiles/guns/grenade_launcher.dm +++ b/code/modules/projectiles/guns/grenade_launcher.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/guns/projectile.dmi' icon_state = "riotgun" item_state = "riotgun" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY throw_speed = 2 throw_range = 10 force = 5 diff --git a/code/modules/projectiles/guns/magic.dm b/code/modules/projectiles/guns/magic.dm index 860d52d2550..f26583bbe0d 100644 --- a/code/modules/projectiles/guns/magic.dm +++ b/code/modules/projectiles/guns/magic.dm @@ -7,7 +7,7 @@ fire_sound = 'sound/weapons/emitter.ogg' fire_sound_text = "energy blast" flags = CONDUCT - w_class = 5 + w_class = WEIGHT_CLASS_HUGE var/max_charges = 6 var/charges = 0 var/recharge_rate = 4 diff --git a/code/modules/projectiles/guns/magic/wand.dm b/code/modules/projectiles/guns/magic/wand.dm index 20461c08acf..ac804ab9192 100644 --- a/code/modules/projectiles/guns/magic/wand.dm +++ b/code/modules/projectiles/guns/magic/wand.dm @@ -4,7 +4,7 @@ ammo_type = /obj/item/ammo_casing/magic icon_state = "nothingwand" item_state = "wand" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL can_charge = 0 max_charges = 100 //100, 50, 50, 34 (max charge distribution by 25%ths) var/variable_charges = 1 diff --git a/code/modules/projectiles/guns/medbeam.dm b/code/modules/projectiles/guns/medbeam.dm index a556d4572a2..59a24533e80 100644 --- a/code/modules/projectiles/guns/medbeam.dm +++ b/code/modules/projectiles/guns/medbeam.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/chronos.dmi' icon_state = "chronogun" item_state = "chronogun" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/mob/living/current_target var/last_check = 0 diff --git a/code/modules/projectiles/guns/mounted.dm b/code/modules/projectiles/guns/mounted.dm index ae9c8f06d09..8fec6cd8b8e 100644 --- a/code/modules/projectiles/guns/mounted.dm +++ b/code/modules/projectiles/guns/mounted.dm @@ -4,7 +4,7 @@ icon_state = "armcannon" force = 5 flags = NODROP - w_class = 5 + w_class = WEIGHT_CLASS_HUGE can_flashlight = 0 selfcharge = 1 trigger_guard = TRIGGER_GUARD_ALLOW_ALL // Has no trigger at all, uses neural signals instead @@ -20,7 +20,7 @@ item_state = "armcannonlase" force = 5 flags = NODROP - w_class = 5 + w_class = WEIGHT_CLASS_HUGE materials = null selfcharge = 1 trigger_guard = TRIGGER_GUARD_ALLOW_ALL diff --git a/code/modules/projectiles/guns/projectile.dm b/code/modules/projectiles/guns/projectile.dm index 961a7b91e05..7575e9b92f8 100644 --- a/code/modules/projectiles/guns/projectile.dm +++ b/code/modules/projectiles/guns/projectile.dm @@ -3,7 +3,7 @@ name = "projectile gun" icon_state = "pistol" origin_tech = "combat=2;materials=2" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL materials = list(MAT_METAL=1000) var/mag_type = /obj/item/ammo_box/magazine/m10mm //Removes the need for max_ammo and caliber info @@ -77,7 +77,7 @@ S.oldsound = fire_sound S.initial_w_class = w_class fire_sound = 'sound/weapons/Gunshot_silenced.ogg' - w_class = 3 //so pistols do not fit in pockets when suppressed + w_class = WEIGHT_CLASS_NORMAL //so pistols do not fit in pockets when suppressed A.loc = src update_icon() return @@ -169,7 +169,7 @@ user.visible_message("[user] shortens \the [src]!", "You shorten \the [src].") name = "sawn-off [name]" desc = sawn_desc - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL item_state = "gun"//phil235 is it different with different skin? slot_flags &= ~SLOT_BACK //you can't sling it on your back slot_flags |= SLOT_BELT //but you can wear it on your belt (poorly concealed under a trenchcoat, ideally) @@ -191,7 +191,7 @@ icon = 'icons/obj/guns/projectile.dmi' icon_state = "suppressor" item_state = "suppressor" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL var/oldsound = null var/initial_w_class = null diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm index 0b174c635b0..1b666a88953 100644 --- a/code/modules/projectiles/guns/projectile/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -1,5 +1,5 @@ /obj/item/weapon/gun/projectile/automatic - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL var/alarmed = 0 var/select = 1 can_suppress = 1 @@ -194,7 +194,7 @@ desc = "A genuine 'Chicago Typewriter'." icon_state = "tommygun" item_state = "shotgun" - w_class = 5 + w_class = WEIGHT_CLASS_HUGE slot_flags = 0 origin_tech = "combat=5;materials=1;syndicate=2" mag_type = /obj/item/ammo_box/magazine/tommygunm45 @@ -222,7 +222,7 @@ desc = "A compact, mag-fed semi-automatic shotgun for combat in narrow corridors, nicknamed 'Bulldog' by boarding parties. Compatible only with specialized 8-round drum magazines." icon_state = "bulldog" item_state = "bulldog" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "combat=5;materials=4;syndicate=6" mag_type = /obj/item/ammo_box/magazine/m12g fire_sound = 'sound/weapons/Gunshot4.ogg' @@ -255,7 +255,7 @@ desc = "An experimental carbine. Uses encased laser projectors as ammunition."//we need to uncouple the toroidal resistance dejammers icon_state = "lasercarbine" item_state = "laser" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "combat=5;materials=5" mag_type = /obj/item/ammo_box/magazine/laser fire_sound = 'sound/weapons/emitter2.ogg' diff --git a/code/modules/projectiles/guns/projectile/launchers.dm b/code/modules/projectiles/guns/projectile/launchers.dm index 462341fdc36..e8dd43d1501 100644 --- a/code/modules/projectiles/guns/projectile/launchers.dm +++ b/code/modules/projectiles/guns/projectile/launchers.dm @@ -8,7 +8,7 @@ item_state = "gun" mag_type = /obj/item/ammo_box/magazine/internal/grenadelauncher fire_sound = 'sound/weapons/grenadelaunch.ogg' - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/gun/projectile/revolver/grenadelauncher/attackby(var/obj/item/A, mob/user, params) ..() @@ -57,7 +57,7 @@ desc = "A weapon favored by carp hunters. Fires specialized spears using kinetic energy." icon_state = "speargun" item_state = "speargun" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 10 can_suppress = 0 mag_type = /obj/item/ammo_box/magazine/internal/speargun diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm index 5de627d7933..4db9d3175d7 100644 --- a/code/modules/projectiles/guns/projectile/pistol.dm +++ b/code/modules/projectiles/guns/projectile/pistol.dm @@ -2,7 +2,7 @@ name = "stechkin pistol" desc = "A small, easily concealable 10mm handgun. Has a threaded barrel for suppressors." icon_state = "pistol" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL origin_tech = "combat=2;materials=2;syndicate=2" mag_type = /obj/item/ammo_box/magazine/m10mm can_suppress = 1 @@ -22,7 +22,7 @@ name = "\improper M1911" desc = "A classic .45 handgun with a small magazine capacity." icon_state = "m1911" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL mag_type = /obj/item/ammo_box/magazine/m45 can_suppress = 0 @@ -66,7 +66,7 @@ name = "stechkin APS pistol" desc = "The original russian version of a widely used Syndicate sidearm. Uses 9mm ammo." icon_state = "aps" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "combat=3;materials=2;syndicate=3" mag_type = /obj/item/ammo_box/magazine/pistolm9mm can_suppress = 0 diff --git a/code/modules/projectiles/guns/projectile/revolver.dm b/code/modules/projectiles/guns/projectile/revolver.dm index 80192a3091d..2efc6cda7e0 100644 --- a/code/modules/projectiles/guns/projectile/revolver.dm +++ b/code/modules/projectiles/guns/projectile/revolver.dm @@ -270,7 +270,7 @@ desc = "A true classic." icon_state = "dshotgun" item_state = "shotgun" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 10 flags = CONDUCT slot_flags = SLOT_BACK @@ -325,7 +325,7 @@ desc = "Essentially a tube that aims shotgun shells." icon_state = "ishotgun" item_state = "shotgun" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 10 slot_flags = null origin_tech = "combat=2;materials=2" @@ -373,7 +373,7 @@ icon_state = "cane" item_state = "stick" sawn_state = SAWN_OFF - w_class = 2 + w_class = WEIGHT_CLASS_SMALL force = 10 can_unsuppress = 0 slot_flags = null diff --git a/code/modules/projectiles/guns/projectile/saw.dm b/code/modules/projectiles/guns/projectile/saw.dm index cfe8ffbb0a5..3c80b241613 100644 --- a/code/modules/projectiles/guns/projectile/saw.dm +++ b/code/modules/projectiles/guns/projectile/saw.dm @@ -3,7 +3,7 @@ desc = "A heavily modified 5.56 light machine gun, designated 'L6 SAW'. Has 'Aussec Armoury - 2531' engraved on the receiver below the designation." icon_state = "l6closed100" item_state = "l6closedmag" - w_class = 5 + w_class = WEIGHT_CLASS_HUGE slot_flags = 0 origin_tech = "combat=5;materials=1;syndicate=2" mag_type = /obj/item/ammo_box/magazine/mm556x45 diff --git a/code/modules/projectiles/guns/projectile/shotgun.dm b/code/modules/projectiles/guns/projectile/shotgun.dm index 35cde243c20..970f874c334 100644 --- a/code/modules/projectiles/guns/projectile/shotgun.dm +++ b/code/modules/projectiles/guns/projectile/shotgun.dm @@ -3,7 +3,7 @@ desc = "A traditional shotgun with wood furniture and a four-shell capacity underneath." icon_state = "shotgun" item_state = "shotgun" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY force = 10 flags = CONDUCT slot_flags = SLOT_BACK @@ -173,7 +173,7 @@ icon_state = "cshotgun" origin_tech = "combat=5;materials=2" mag_type = /obj/item/ammo_box/magazine/internal/shot/com - w_class = 5 + w_class = WEIGHT_CLASS_HUGE //Dual Feed Shotgun @@ -183,7 +183,7 @@ icon_state = "cycler" origin_tech = "combat=4;materials=2" mag_type = /obj/item/ammo_box/magazine/internal/shot/tube - w_class = 5 + w_class = WEIGHT_CLASS_HUGE var/toggled = 0 var/obj/item/ammo_box/magazine/internal/shot/alternate_magazine diff --git a/code/modules/projectiles/guns/projectile/sniper.dm b/code/modules/projectiles/guns/projectile/sniper.dm index bf26dad78b3..5d4078e666d 100644 --- a/code/modules/projectiles/guns/projectile/sniper.dm +++ b/code/modules/projectiles/guns/projectile/sniper.dm @@ -11,7 +11,7 @@ origin_tech = "combat=8" can_unsuppress = 1 can_suppress = 1 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL zoomable = TRUE zoom_amt = 7 //Long range, enough to see in front of you, but no tiles behind you. slot_flags = SLOT_BACK diff --git a/code/modules/projectiles/guns/projectile/toy.dm b/code/modules/projectiles/guns/projectile/toy.dm index 809647e4186..8a191f06b97 100644 --- a/code/modules/projectiles/guns/projectile/toy.dm +++ b/code/modules/projectiles/guns/projectile/toy.dm @@ -20,7 +20,7 @@ name = "foam force pistol" desc = "A small, easily concealable toy handgun. Ages 8 and up." icon_state = "pistol" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL mag_type = /obj/item/ammo_box/magazine/toy/pistol fire_sound = 'sound/weapons/Gunshot.ogg' can_suppress = 0 @@ -65,7 +65,7 @@ mag_type = /obj/item/ammo_box/magazine/internal/shot/toy/crossbow fire_sound = 'sound/items/syringeproj.ogg' slot_flags = SLOT_BELT - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/gun/projectile/automatic/c20r/toy name = "donksoft SMG" @@ -96,4 +96,4 @@ icon_state = "tommygun" item_state = "shotgun" mag_type = /obj/item/ammo_box/magazine/internal/shot/toy/tommygun - w_class = 2 + w_class = WEIGHT_CLASS_SMALL diff --git a/code/modules/projectiles/guns/rocket.dm b/code/modules/projectiles/guns/rocket.dm index f9a8d00bdb1..0bb44409acd 100644 --- a/code/modules/projectiles/guns/rocket.dm +++ b/code/modules/projectiles/guns/rocket.dm @@ -4,7 +4,7 @@ desc = "Say hello to my little friend" icon_state = "rocket" item_state = "rocket" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY throw_speed = 2 throw_range = 10 force = 5.0 diff --git a/code/modules/projectiles/guns/syringe_gun.dm b/code/modules/projectiles/guns/syringe_gun.dm index 332d279376b..e9d79fe42c4 100644 --- a/code/modules/projectiles/guns/syringe_gun.dm +++ b/code/modules/projectiles/guns/syringe_gun.dm @@ -3,7 +3,7 @@ desc = "A spring loaded rifle designed to fit syringes, used to incapacitate unruly patients from a distance." icon_state = "syringegun" item_state = "syringegun" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throw_speed = 3 throw_range = 7 force = 4 @@ -88,7 +88,7 @@ desc = "A small spring-loaded sidearm that functions identically to a syringe gun." icon_state = "syringe_pistol" item_state = "gun" //Smaller inhand - w_class = 2 + w_class = WEIGHT_CLASS_SMALL origin_tech = "combat=2;syndicate=2" force = 2 //Also very weak because it's smaller suppressed = 1 //Softer fire sound diff --git a/code/modules/projectiles/guns/throw/crossbow.dm b/code/modules/projectiles/guns/throw/crossbow.dm index 11d39bf2a38..77d3e89eade 100644 --- a/code/modules/projectiles/guns/throw/crossbow.dm +++ b/code/modules/projectiles/guns/throw/crossbow.dm @@ -153,7 +153,7 @@ icon_state = "bolt" item_state = "bolt" throwforce = 20 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL sharp = 1 edge = 0 diff --git a/code/modules/projectiles/guns/throw/pielauncher.dm b/code/modules/projectiles/guns/throw/pielauncher.dm index f6405f47194..3af48788134 100644 --- a/code/modules/projectiles/guns/throw/pielauncher.dm +++ b/code/modules/projectiles/guns/throw/pielauncher.dm @@ -2,7 +2,7 @@ name = "pie cannon" desc = "A projectile weapon that fires pies." icon_state = "piecannon" - w_class = 5 + w_class = WEIGHT_CLASS_HUGE throw_speed = 2 throw_range = 3 force = 5 diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index c441ab97805..009828543ce 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -3,7 +3,7 @@ desc = "..." icon = 'icons/obj/chemical.dmi' icon_state = null - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/amount_per_transfer_from_this = 5 var/possible_transfer_amounts = list(5,10,15,25,30) var/volume = 30 diff --git a/code/modules/reagents/reagent_containers/glass_containers.dm b/code/modules/reagents/reagent_containers/glass_containers.dm index b170f6b0867..5d22a21aa4a 100644 --- a/code/modules/reagents/reagent_containers/glass_containers.dm +++ b/code/modules/reagents/reagent_containers/glass_containers.dm @@ -330,7 +330,7 @@ icon_state = "bucket" item_state = "bucket" materials = list(MAT_METAL=200) - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL amount_per_transfer_from_this = 20 possible_transfer_amounts = list(5,10,15,20,25,30,50,80,100,120) volume = 120 @@ -353,4 +353,4 @@ user.unEquip(src) qdel(src) else - ..() \ No newline at end of file + ..() diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index cc4bf75ea45..8674ba75a09 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -7,7 +7,7 @@ flags = OPENCONTAINER | NOBLUDGEON slot_flags = SLOT_BELT throwforce = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throw_speed = 3 throw_range = 7 var/spray_maxrange = 3 //what the sprayer will set spray_currentrange to in the attack_self. @@ -145,7 +145,7 @@ icon_state = "chemsprayer" item_state = "chemsprayer" throwforce = 0 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL spray_maxrange = 7 spray_currentrange = 7 amount_per_transfer_from_this = 10 @@ -204,4 +204,4 @@ icon_state = "plantbgone" item_state = "plantbgone" volume = 100 - list_reagents = list("glyphosate" = 100) \ No newline at end of file + list_reagents = list("glyphosate" = 100) diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 0f2b766bb3c..ebb13f0830c 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -14,7 +14,7 @@ amount_per_transfer_from_this = 5 possible_transfer_amounts = null //list(5,10,15) volume = 15 - w_class = 1 + w_class = WEIGHT_CLASS_TINY sharp = 1 var/mode = SYRINGE_DRAW var/projectile_type = /obj/item/projectile/bullet/dart/syringe @@ -398,4 +398,4 @@ /obj/item/weapon/reagent_containers/syringe/bioterror name = "bioterror syringe" desc = "Contains several paralyzing reagents." - list_reagents = list("neurotoxin" = 5, "capulettium_plus" = 5, "sodium_thiopental" = 5) \ No newline at end of file + list_reagents = list("neurotoxin" = 5, "capulettium_plus" = 5, "sodium_thiopental" = 5) diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index 209edb809b2..8896d939e2f 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -334,7 +334,7 @@ icon_state = "conveyor0" name = "conveyor belt assembly" desc = "A conveyor belt assembly." - w_class = 4 + w_class = WEIGHT_CLASS_BULKY var/id = "" //inherited by the belt /obj/item/conveyor_construct/attackby(obj/item/I, mob/user, params) @@ -361,7 +361,7 @@ desc = "A conveyor control switch assembly." icon = 'icons/obj/recycling.dmi' icon_state = "switch-off" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY var/id = "" //inherited by the switch /obj/item/conveyor_switch_construct/New() diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm index a8d3902e6f3..52db1f8d30c 100755 --- a/code/modules/recycling/sortingmachinery.dm +++ b/code/modules/recycling/sortingmachinery.dm @@ -216,7 +216,7 @@ //The whole system for the sorttype var is determined based on the order of this list, //disposals must always be 1, since anything that's untagged will automatically go to disposals, or sorttype = 1 --Superxpdude - w_class = 1 + w_class = WEIGHT_CLASS_TINY item_state = "electronic" flags = CONDUCT slot_flags = SLOT_BELT @@ -430,4 +430,4 @@ /obj/item/shippingPackage/Destroy() QDEL_NULL(wrapped) - return ..() \ No newline at end of file + return ..() diff --git a/code/modules/research/xenoarchaeology/chemistry.dm b/code/modules/research/xenoarchaeology/chemistry.dm index b198bd02459..7094f2d00f4 100644 --- a/code/modules/research/xenoarchaeology/chemistry.dm +++ b/code/modules/research/xenoarchaeology/chemistry.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/device.dmi' icon_state = "solution_tray" materials = list(MAT_GLASS=5) - w_class = 1 + w_class = WEIGHT_CLASS_TINY amount_per_transfer_from_this = 1 possible_transfer_amounts = list(1, 2) volume = 2 @@ -51,4 +51,4 @@ obj/item/weapon/reagent_containers/glass/solution_tray/attackby(obj/item/weapon/ /obj/item/weapon/reagent_containers/glass/beaker/fuel name = "beaker 'fuel'" - list_reagents = list("fuel" = 50) \ No newline at end of file + list_reagents = list("fuel" = 50) diff --git a/code/modules/research/xenoarchaeology/geosample.dm b/code/modules/research/xenoarchaeology/geosample.dm index e4aaa4a554b..6d32b4e0ca9 100644 --- a/code/modules/research/xenoarchaeology/geosample.dm +++ b/code/modules/research/xenoarchaeology/geosample.dm @@ -19,7 +19,7 @@ desc = "It looks extremely delicate." icon = 'icons/obj/xenoarchaeology.dmi' icon_state = "sliver1" //0-4 - w_class = 1 + w_class = WEIGHT_CLASS_TINY sharp = 1 //item_state = "electronic" var/source_rock = "/turf/simulated/mineral/" diff --git a/code/modules/research/xenoarchaeology/tools/tools.dm b/code/modules/research/xenoarchaeology/tools/tools.dm index 6ac7aee6a2b..b17569da383 100644 --- a/code/modules/research/xenoarchaeology/tools/tools.dm +++ b/code/modules/research/xenoarchaeology/tools/tools.dm @@ -7,7 +7,7 @@ desc = "A coiled metallic tape used to check dimensions and lengths." icon = 'icons/obj/xenoarchaeology.dmi' icon_state = "measuring" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL //todo: dig site tape @@ -17,8 +17,8 @@ icon = 'icons/obj/mining.dmi' icon_state = "satchel" slot_flags = SLOT_BELT | SLOT_POCKET - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL storage_slots = 50 max_combined_w_class = 200 //Doesn't matter what this is, so long as it's more or equal to storage_slots * ore.w_class - max_w_class = 3 + max_w_class = WEIGHT_CLASS_NORMAL can_hold = list(/obj/item/weapon/fossil) diff --git a/code/modules/research/xenoarchaeology/tools/tools_anoscanner.dm b/code/modules/research/xenoarchaeology/tools/tools_anoscanner.dm index d020845784c..4edf8f69d9a 100644 --- a/code/modules/research/xenoarchaeology/tools/tools_anoscanner.dm +++ b/code/modules/research/xenoarchaeology/tools/tools_anoscanner.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/xenoarchaeology.dmi' icon_state = "flashgun" item_state = "lampgreen" - w_class = 1 + w_class = WEIGHT_CLASS_TINY slot_flags = SLOT_BELT var/nearest_artifact_id = "unknown" var/nearest_artifact_distance = -1 diff --git a/code/modules/research/xenoarchaeology/tools/tools_coresampler.dm b/code/modules/research/xenoarchaeology/tools/tools_coresampler.dm index 72f85146df1..8c4ec23004c 100644 --- a/code/modules/research/xenoarchaeology/tools/tools_coresampler.dm +++ b/code/modules/research/xenoarchaeology/tools/tools_coresampler.dm @@ -19,7 +19,7 @@ icon = 'icons/obj/device.dmi' icon_state = "sampler0" item_state = "screwdriver_brown" - w_class = 1 + w_class = WEIGHT_CLASS_TINY //slot_flags = SLOT_BELT var/sampled_turf = "" var/num_stored_bags = 10 @@ -73,7 +73,7 @@ filled_bag.icon_state = "evidence" var/image/I = image("icon"=R, "layer"=FLOAT_LAYER) filled_bag.underlays += I - filled_bag.w_class = 1 + filled_bag.w_class = WEIGHT_CLASS_TINY to_chat(user, "You take a core sample of the [item_to_sample].") else diff --git a/code/modules/research/xenoarchaeology/tools/tools_depthscanner.dm b/code/modules/research/xenoarchaeology/tools/tools_depthscanner.dm index 83429d509bc..ad195a0a141 100644 --- a/code/modules/research/xenoarchaeology/tools/tools_depthscanner.dm +++ b/code/modules/research/xenoarchaeology/tools/tools_depthscanner.dm @@ -9,7 +9,7 @@ icon = 'icons/obj/pda.dmi' icon_state = "crap" item_state = "analyzer" - w_class = 1 + w_class = WEIGHT_CLASS_TINY slot_flags = SLOT_BELT var/list/positive_locations = list() var/datum/depth_scan/current diff --git a/code/modules/research/xenoarchaeology/tools/tools_pickaxe.dm b/code/modules/research/xenoarchaeology/tools/tools_pickaxe.dm index 4e6e48b49b5..ec00023ab29 100644 --- a/code/modules/research/xenoarchaeology/tools/tools_pickaxe.dm +++ b/code/modules/research/xenoarchaeology/tools/tools_pickaxe.dm @@ -12,7 +12,7 @@ excavation_amount = 0.5 digsound = list('sound/weapons/thudswoosh.ogg') drill_verb = "brushing" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/pickaxe/one_pick name = "1/6 pick" @@ -24,7 +24,7 @@ excavation_amount = 1 digsound = list('sound/items/Screwdriver.ogg') drill_verb = "delicately picking" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/pickaxe/two_pick name = "1/3 pick" @@ -36,7 +36,7 @@ excavation_amount = 2 digsound = list('sound/items/Screwdriver.ogg') drill_verb = "delicately picking" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/pickaxe/three_pick name = "1/2 pick" @@ -48,7 +48,7 @@ excavation_amount = 3 digsound = list('sound/items/Screwdriver.ogg') drill_verb = "delicately picking" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/pickaxe/four_pick name = "2/3 pick" @@ -60,7 +60,7 @@ excavation_amount = 4 digsound = list('sound/items/Screwdriver.ogg') drill_verb = "delicately picking" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/pickaxe/five_pick name = "5/6 pick" @@ -72,7 +72,7 @@ excavation_amount = 5 digsound = list('sound/items/Screwdriver.ogg') drill_verb = "delicately picking" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/pickaxe/six_pick name = "1/1 pick" @@ -84,7 +84,7 @@ excavation_amount = 6 digsound = list('sound/items/Screwdriver.ogg') drill_verb = "delicately picking" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/pickaxe/hand name = "hand pickaxe" @@ -96,7 +96,7 @@ excavation_amount = 15 digsound = list('sound/items/Crowbar.ogg') drill_verb = "clearing" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL /obj/item/weapon/pickaxe/robotic name = "robotic pickaxe" @@ -125,7 +125,7 @@ item_state = "syringe_kit" foldable = /obj/item/stack/sheet/cardboard //BubbleWrap storage_slots = 7 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL can_hold = list(/obj/item/weapon/pickaxe/brush,\ /obj/item/weapon/pickaxe/one_pick,\ /obj/item/weapon/pickaxe/two_pick,\ @@ -134,7 +134,7 @@ /obj/item/weapon/pickaxe/five_pick,\ /obj/item/weapon/pickaxe/six_pick) max_combined_w_class = 17 - max_w_class = 4 + max_w_class = WEIGHT_CLASS_BULKY use_to_pickup = 1 // for picking up broken bulbs, not that most people will try /obj/item/weapon/storage/box/excavation/New() diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index c42b6e8286c..6846548ee6d 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -7,7 +7,7 @@ icon = 'icons/mob/slimes.dmi' icon_state = "grey slime extract" force = 1 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throwforce = 0 throw_speed = 3 throw_range = 6 @@ -121,7 +121,7 @@ /obj/item/slimepotion name = "slime potion" desc = "A hard yet gelatinous capsule excreted by a slime, containing mysterious substances." - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "biotech=4" /obj/item/slimepotion/afterattack(obj/item/weapon/reagent_containers/target, mob/user, proximity_flag) @@ -552,7 +552,7 @@ singular_name = "floor tile" desc = "Through a series of micro-teleports, these tiles let people move at incredible speeds." icon_state = "tile-bluespace" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL force = 6 materials = list(MAT_METAL=500) throwforce = 10 @@ -575,7 +575,7 @@ singular_name = "floor tile" desc = "Time seems to flow very slowly around these tiles." icon_state = "tile-sepia" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL force = 6 materials = list(MAT_METAL=500) throwforce = 10 diff --git a/code/modules/spacepods/equipment.dm b/code/modules/spacepods/equipment.dm index 65b3b9232b8..d1f78ffdf28 100644 --- a/code/modules/spacepods/equipment.dm +++ b/code/modules/spacepods/equipment.dm @@ -269,7 +269,7 @@ desc = "A key for a spacepod lock." icon = 'icons/vehicles/spacepod.dmi' icon_state = "podkey" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/id = 0 // Key - Lock Interactions diff --git a/code/modules/surgery/organs/augments_eyes.dm b/code/modules/surgery/organs/augments_eyes.dm index 1c66bd2c31b..873f1332216 100644 --- a/code/modules/surgery/organs/augments_eyes.dm +++ b/code/modules/surgery/organs/augments_eyes.dm @@ -5,7 +5,7 @@ implant_overlay = "eye_implant_overlay" slot = "eye_sight" parent_organ = "eyes" - w_class = 1 + w_class = WEIGHT_CLASS_TINY var/vision_flags = 0 var/dark_view = 0 diff --git a/code/modules/surgery/organs/autoimplanter.dm b/code/modules/surgery/organs/autoimplanter.dm index 4af88abc52f..6f72deca2e1 100644 --- a/code/modules/surgery/organs/autoimplanter.dm +++ b/code/modules/surgery/organs/autoimplanter.dm @@ -3,7 +3,7 @@ desc = "A device that automatically injects a cyber-implant into the user without the hassle of extensive surgery. It has a slot to insert implants and a screwdriver slot for removing accidentally added implants." icon_state = "autoimplanter" item_state = "walkietalkie"//left as this so as to intentionally not have inhands - w_class = 2 + w_class = WEIGHT_CLASS_SMALL usesound = 'sound/weapons/circsawhit.ogg' var/obj/item/organ/internal/cyberimp/storedorgan diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index 7bea9c480af..eb503b77f16 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -3,7 +3,7 @@ /obj/item/organ/internal origin_tech = "biotech=2" force = 1 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throwforce = 0 var/zone = "chest" var/slot @@ -500,7 +500,7 @@ desc = "A tiny black mass with red tendrils trailing from it. It seems to shrivel in the light." icon_state = "blacktumor" origin_tech = "biotech=4" - w_class = 1 + w_class = WEIGHT_CLASS_TINY parent_organ = "head" slot = "brain_tumor" health = 3 @@ -532,7 +532,7 @@ desc = "A tiny yellow mass shaped like..a banana?" icon_state = "honktumor" origin_tech = "biotech=1" - w_class = 1 + w_class = WEIGHT_CLASS_TINY parent_organ = "head" slot = "brain_tumor" health = 3 @@ -619,7 +619,7 @@ desc = "Let they who is worthy wear the beard of Thorbjorndottir." icon_state = "liver" origin_tech = "biotech=1" - w_class = 1 + w_class = WEIGHT_CLASS_TINY parent_organ = "head" slot = "hair_organ" diff --git a/code/modules/surgery/organs/subtypes/skrell.dm b/code/modules/surgery/organs/subtypes/skrell.dm index b8debe746e7..842088f2937 100644 --- a/code/modules/surgery/organs/subtypes/skrell.dm +++ b/code/modules/surgery/organs/subtypes/skrell.dm @@ -21,7 +21,7 @@ // Allow adjacency calculation to work properly loc = owner // Fit only pocket sized items - pocket.max_w_class = 2 + pocket.max_w_class = WEIGHT_CLASS_SMALL pocket.max_combined_w_class = 2 /obj/item/organ/internal/headpocket/on_life() diff --git a/code/modules/surgery/organs/subtypes/standard.dm b/code/modules/surgery/organs/subtypes/standard.dm index 62ae8c78d66..a6467584963 100644 --- a/code/modules/surgery/organs/subtypes/standard.dm +++ b/code/modules/surgery/organs/subtypes/standard.dm @@ -8,7 +8,7 @@ icon_name = "torso" max_damage = 100 min_broken_damage = 35 - w_class = 5 + w_class = WEIGHT_CLASS_HUGE body_part = UPPER_TORSO vital = 1 amputation_point = "spine" @@ -42,7 +42,7 @@ icon_name = "groin" max_damage = 100 min_broken_damage = 35 - w_class = 4 + w_class = WEIGHT_CLASS_BULKY // if you know what I mean ;) body_part = LOWER_TORSO vital = 1 parent_organ = "chest" @@ -55,7 +55,7 @@ icon_name = "l_arm" max_damage = 50 min_broken_damage = 30 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL body_part = ARM_LEFT parent_organ = "chest" amputation_point = "left shoulder" @@ -74,7 +74,7 @@ icon_name = "l_leg" max_damage = 50 min_broken_damage = 30 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL body_part = LEG_LEFT icon_position = LEFT parent_organ = "groin" @@ -95,7 +95,7 @@ icon_name = "l_foot" max_damage = 30 min_broken_damage = 15 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL body_part = FOOT_LEFT icon_position = LEFT parent_organ = "l_leg" @@ -121,7 +121,7 @@ icon_name = "l_hand" max_damage = 30 min_broken_damage = 15 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL body_part = HAND_LEFT parent_organ = "l_arm" amputation_point = "left wrist" @@ -152,7 +152,7 @@ name = "head" max_damage = 75 min_broken_damage = 35 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL body_part = HEAD vital = 1 parent_organ = "chest" diff --git a/code/modules/surgery/organs/subtypes/xenos.dm b/code/modules/surgery/organs/subtypes/xenos.dm index 5e771931165..19e9335a61b 100644 --- a/code/modules/surgery/organs/subtypes/xenos.dm +++ b/code/modules/surgery/organs/subtypes/xenos.dm @@ -37,7 +37,7 @@ name = "xeno plasma vessel" icon_state = "plasma" origin_tech = "biotech=5;plasmatech=2" - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL parent_organ = "chest" slot = "plasmavessel" alien_powers = list(/mob/living/carbon/alien/humanoid/verb/plant, /mob/living/carbon/alien/humanoid/verb/transfer_plasma) @@ -127,7 +127,7 @@ parent_organ = "head" slot = "hivenode" origin_tech = "biotech=5;magnets=4;bluespace=3" - w_class = 1 + w_class = WEIGHT_CLASS_TINY alien_powers = list(/mob/living/carbon/alien/humanoid/verb/whisp) /obj/item/organ/internal/xenos/hivenode/insert(mob/living/carbon/M, special = 0) @@ -163,6 +163,6 @@ icon_state = "eggsac" parent_organ = "groin" slot = "eggsac" - w_class = 4 + w_class = WEIGHT_CLASS_BULKY origin_tech = "biotech=8" alien_powers = list(/mob/living/carbon/alien/humanoid/queen/verb/lay_egg) diff --git a/code/modules/surgery/tools.dm b/code/modules/surgery/tools.dm index b0014a391a3..06b9def9c00 100644 --- a/code/modules/surgery/tools.dm +++ b/code/modules/surgery/tools.dm @@ -5,7 +5,7 @@ icon_state = "retractor" materials = list(MAT_METAL=6000, MAT_GLASS=3000) flags = CONDUCT - w_class = 2 + w_class = WEIGHT_CLASS_SMALL origin_tech = "materials=1;biotech=1" @@ -16,7 +16,7 @@ icon_state = "hemostat" materials = list(MAT_METAL=5000, MAT_GLASS=2500) flags = CONDUCT - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "materials=1;biotech=1" attack_verb = list("attacked", "pinched") @@ -28,7 +28,7 @@ icon_state = "cautery" materials = list(MAT_METAL=2500, MAT_GLASS=750) flags = CONDUCT - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "materials=1;biotech=1" attack_verb = list("burnt") @@ -44,7 +44,7 @@ force = 15.0 sharp = 1 edge = 1 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL origin_tech = "materials=1;biotech=1" attack_verb = list("drilled") @@ -64,7 +64,7 @@ force = 10.0 sharp = 1 edge = 1 - w_class = 1 + w_class = WEIGHT_CLASS_TINY throwforce = 5.0 throw_speed = 3 throw_range = 5 @@ -124,7 +124,7 @@ force = 15.0 sharp = 1 edge = 1 - w_class = 3 + w_class = WEIGHT_CLASS_NORMAL throwforce = 9.0 throw_speed = 3 throw_range = 5 @@ -138,7 +138,7 @@ icon = 'icons/obj/surgery.dmi' icon_state = "bone-gel" force = 0 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL throwforce = 1.0 origin_tech = "materials=1;biotech=1" @@ -149,7 +149,7 @@ force = 0 throwforce = 1.0 origin_tech = "materials=1;biotech=1" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL /obj/item/weapon/bonesetter name = "bone setter" @@ -159,7 +159,7 @@ throwforce = 9.0 throw_speed = 3 throw_range = 5 - w_class = 2 + w_class = WEIGHT_CLASS_SMALL attack_verb = list("attacked", "hit", "bludgeoned") origin_tech = "materials=1;biotech=1" @@ -168,6 +168,6 @@ desc = "Nanotrasen brand surgical drapes provide optimal safety and infection control." icon = 'icons/obj/surgery.dmi' icon_state = "surgical_drapes" - w_class = 1 + w_class = WEIGHT_CLASS_SMALL origin_tech = "biotech=1" attack_verb = list("slapped") diff --git a/code/modules/telesci/bscrystal.dm b/code/modules/telesci/bscrystal.dm index 113d2abd751..d6cdd0e3b5d 100644 --- a/code/modules/telesci/bscrystal.dm +++ b/code/modules/telesci/bscrystal.dm @@ -4,7 +4,7 @@ desc = "A glowing bluespace crystal, not much is known about how they work. It looks very delicate." icon = 'icons/obj/telescience.dmi' icon_state = "bluespace_crystal" - w_class = 1 + w_class = WEIGHT_CLASS_TINY origin_tech = "bluespace=4;materials=3" points = 50 var/blink_range = 8 // The teleport range when crushed/thrown at someone. diff --git a/code/modules/telesci/gps.dm b/code/modules/telesci/gps.dm index 7558fd602ee..b042453eec4 100644 --- a/code/modules/telesci/gps.dm +++ b/code/modules/telesci/gps.dm @@ -4,7 +4,7 @@ var/list/GPS_list = list() desc = "Helping lost spacemen find their way through the planets since 2016." icon = 'icons/obj/telescience.dmi' icon_state = "gps-c" - w_class = 2 + w_class = WEIGHT_CLASS_SMALL slot_flags = SLOT_BELT origin_tech = "programming=2;engineering=2" var/gpstag = "COM0" @@ -32,7 +32,7 @@ var/list/GPS_list = list() emped = FALSE overlays -= "emp" overlays += "working" - + /obj/item/device/gps/AltClick(mob/user) if(CanUseTopic(user, inventory_state) != STATUS_INTERACTIVE) return 1 //user not valid to use gps @@ -51,7 +51,7 @@ var/list/GPS_list = list() if(!tracking) to_chat(user, "[src] is turned off. Use alt+click to toggle it back on.") return - + var/obj/item/device/gps/t = "" var/gps_window_height = 110 + GPS_list.len * 20 // Variable window height, depending on how many GPS units there are to show if(emped) @@ -82,12 +82,12 @@ var/list/GPS_list = list() /obj/item/device/gps/Topic(href, href_list) if(..(state = inventory_state)) return 1 - + if(href_list["tag"] ) var/a = input("Please enter desired tag.", name, gpstag) as text|null if(!a || ..(state = inventory_state)) return 1 - + a = uppertext(sanitize(copytext(a, 1, 5))) if(src.loc == usr) gpstag = a @@ -112,8 +112,8 @@ var/list/GPS_list = list() gpstag = "BORG0" desc = "A mining cyborg internal positioning system. Used as a recovery beacon for damaged cyborg assets, or a collaboration tool for mining teams." flags = NODROP - -/obj/item/device/gps/internal + +/obj/item/device/gps/internal icon_state = null flags = ABSTRACT gpstag = "Eerie Signal" @@ -162,4 +162,4 @@ var/list/GPS_list = list() clear() tagged = null fast_processing.Remove(src) - . = ..() \ No newline at end of file + . = ..() diff --git a/code/modules/vehicle/vehicle.dm b/code/modules/vehicle/vehicle.dm index 2a1ea4c7d64..bdd8ca39c90 100644 --- a/code/modules/vehicle/vehicle.dm +++ b/code/modules/vehicle/vehicle.dm @@ -61,7 +61,7 @@ desc = "A small grey key." icon = 'icons/obj/vehicles.dmi' icon_state = "key" - w_class = 1 + w_class = WEIGHT_CLASS_TINY //BUCKLE HOOKS @@ -159,4 +159,4 @@ spaceworthy = TRUE /obj/vehicle/space/Process_Spacemove(direction) - return 1 \ No newline at end of file + return 1 From d5a0b1e0b73baa6344ad2e6235c1293347d01b97 Mon Sep 17 00:00:00 2001 From: IK3I Date: Sat, 27 May 2017 19:56:17 -0500 Subject: [PATCH 29/76] 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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