From 4db9677c883c75e9006e1d4404fa8b7cce3da045 Mon Sep 17 00:00:00 2001 From: Mike Date: Wed, 14 Oct 2015 14:25:12 -0400 Subject: [PATCH 01/13] Fixes pepperspray confusion Eye protection now prevents blindness, face protection prevents stun, instead of face protection doing both. --- .../Chemistry-Reagents-Food-Drinks.dm | 10 +++++----- .../changelogs/HarpyEagle-pepperspray-fix.yml | 20 +++++++++++++++++++ 2 files changed, 25 insertions(+), 5 deletions(-) create mode 100644 html/changelogs/HarpyEagle-pepperspray-fix.yml diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index 0d04d8ad99..9edd9193cb 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -286,18 +286,18 @@ M << "Your [safe_thing] protects you from the pepperspray!" return else if(eyes_covered) - M << "Your [safe_thing] protect you from most of the pepperspray!" - M.eye_blurry = max(M.eye_blurry, 15) - M.eye_blind = max(M.eye_blind, 5) + M << "Your [safe_thing] protect your eyes from the pepperspray!" + M.eye_blurry = max(M.eye_blurry, 5) M.Stun(5) M.Weaken(5) return else if (mouth_covered) // Mouth cover is better than eye cover M << "Your [safe_thing] protects your face from the pepperspray!" - M.eye_blurry = max(M.eye_blurry, 5) + M.eye_blurry = max(M.eye_blurry, 15) + M.eye_blind = max(M.eye_blind, 5) return else // Oh dear :D - M << "You're sprayed directly in the eyes with pepperspray!" + M << "You're sprayed directly with the pepperspray!" M.eye_blurry = max(M.eye_blurry, 25) M.eye_blind = max(M.eye_blind, 10) M.Stun(5) diff --git a/html/changelogs/HarpyEagle-pepperspray-fix.yml b/html/changelogs/HarpyEagle-pepperspray-fix.yml new file mode 100644 index 0000000000..c474310d0f --- /dev/null +++ b/html/changelogs/HarpyEagle-pepperspray-fix.yml @@ -0,0 +1,20 @@ +################################ +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +author: HarpyEagle +delete-after: True +changes: + - bugfix: "When affected by pepperspray, eye protection now prevents blindness and face protection now prevents stun, instead of face protection doing both." \ No newline at end of file From 27429f7b0ccebe64c8cf97d6754c18d7f926f52c Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 15 Oct 2015 00:02:18 -0400 Subject: [PATCH 02/13] Less copypasta --- .../Chemistry-Reagents-Food-Drinks.dm | 46 ++++++++----------- 1 file changed, 18 insertions(+), 28 deletions(-) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index 9edd9193cb..3323e6e415 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -219,6 +219,10 @@ description = "This is what makes chilis hot." reagent_state = LIQUID color = "#B31008" + var/agony_dose = 5 + var/agony_amount = 2 + var/discomfort_message = "Your insides feel uncomfortably hot!" + var/slime_temp_adj = 10 /datum/reagent/capsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) @@ -232,30 +236,31 @@ var/mob/living/carbon/human/H = M if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) return - if(dose < 5 && (dose == metabolism || prob(5))) - M << "Your insides feel uncomfortably hot!" - if(dose >= 5) - M.apply_effect(2, AGONY, 0) + if(dose < agony_dose) + if(prob(5) || dose == metabolism) //dose == metabolism is a very hacky way of forcing the message the first time this procs + M << initial_message + else + M.apply_effect(agony_amount, AGONY, 0) if(prob(5)) - M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!") + M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]") + M << "You feel like your insides are burning!" if(istype(M, /mob/living/carbon/slime)) - M.bodytemperature += rand(10, 25) + M.bodytemperature += rand(0, 15) + slime_temp_adj holder.remove_reagent("frostoil", 5) -/datum/reagent/condensedcapsaicin +/datum/reagent/capsaicin/condensed name = "Condensed Capsaicin" id = "condensedcapsaicin" description = "A chemical agent used for self-defense and in police work." reagent_state = LIQUID touch_met = 50 // Get rid of it quickly color = "#B31008" + agony_dose = 0.5 + agony_amount = 4 + discomfort_message = "You feel like your insides are burning!" + slime_temp_adj = 15 -/datum/reagent/condensedcapsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) - if(alien == IS_DIONA) - return - M.adjustToxLoss(0.5 * removed) - -/datum/reagent/condensedcapsaicin/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) +/datum/reagent/capsaicin/condensed/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) var/eyes_covered = 0 var/mouth_covered = 0 var/obj/item/safe_thing = null @@ -304,21 +309,6 @@ M.Weaken(5) return -/datum/reagent/condensedcapsaicin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) - return - if(dose == metabolism) - M << "You feel like your insides are burning!" - else - M.apply_effect(4, AGONY, 0) - if(prob(5)) - M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]", "You feel like your insides are burning!") - if(istype(M, /mob/living/carbon/slime)) - M.bodytemperature += rand(15, 30) - holder.remove_reagent("frostoil", 5) - /* Drinks */ /datum/reagent/drink From dcde34512cb7c3941ff8a1267aafdb07507a1301 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 15 Oct 2015 00:25:31 -0400 Subject: [PATCH 03/13] Refactors pepperspray touch effect, adjusts pepperspray messages. --- .../Chemistry-Reagents-Food-Drinks.dm | 80 +++++++++---------- 1 file changed, 40 insertions(+), 40 deletions(-) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index 3323e6e415..43639afea1 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -238,11 +238,11 @@ return if(dose < agony_dose) if(prob(5) || dose == metabolism) //dose == metabolism is a very hacky way of forcing the message the first time this procs - M << initial_message + M << discomfort_message else M.apply_effect(agony_amount, AGONY, 0) if(prob(5)) - M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]") + M.custom_emote(2, "[pick("dry heaves!","coughs!","splutters!")]") M << "You feel like your insides are burning!" if(istype(M, /mob/living/carbon/slime)) M.bodytemperature += rand(0, 15) + slime_temp_adj @@ -263,51 +263,51 @@ /datum/reagent/capsaicin/condensed/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) var/eyes_covered = 0 var/mouth_covered = 0 - var/obj/item/safe_thing = null + var/no_pain = 0 + var/obj/item/eye_protection = null + var/obj/item/face_protection = null + + var/list/protection if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M + protection = list(H.head, H.glasses, H.wear_mask) if(H.species && (H.species.flags & NO_PAIN)) - return - if(H.head) - if(H.head.flags & MASKCOVERSEYES) + no_pain = 1 //TODO: living-level can_feel_pain() proc + else + protection = list(M.wear_mask) + + for(var/obj/item/I in protection) + if(I) + if(I.flags & MASKCOVERSEYES) eyes_covered = 1 - safe_thing = H.head - if(H.head.flags & MASKCOVERSMOUTH) + eye_protection = I + if(I.flags & MASKCOVERSMOUTH) mouth_covered = 1 - safe_thing = H.head - if(H.wear_mask) - if(!eyes_covered && H.wear_mask.flags & MASKCOVERSEYES) - eyes_covered = 1 - safe_thing = H.wear_mask - if(!mouth_covered && H.wear_mask.flags & MASKCOVERSMOUTH) - mouth_covered = 1 - safe_thing = H.wear_mask - if(H.glasses) - if(!eyes_covered) - eyes_covered = 1 - if(!safe_thing) - safe_thing = H.glasses - if(eyes_covered && mouth_covered) - M << "Your [safe_thing] protects you from the pepperspray!" - return - else if(eyes_covered) - M << "Your [safe_thing] protect your eyes from the pepperspray!" - M.eye_blurry = max(M.eye_blurry, 5) + face_protection = I + + var/message = null + if(eyes_covered) + message = "Your [eye_protection] protects your eyes from the pepperspray!" + else + message = "The pepperspray gets in your eyes!" + if(mouth_covered) + M.eye_blurry = max(M.eye_blurry, 15) + M.eye_blind = max(M.eye_blind, 5) + else + M.eye_blurry = max(M.eye_blurry, 25) + M.eye_blind = max(M.eye_blind, 10) + + if(mouth_covered) + if(!message) + message = "Your [face_protection] protects you from the pepperspray!" + else if(!no_pain) + message = "Your face and throat burn!" + if(prob(25)) + M.custom_emote(2, "[pick("coughs!","coughs hysterically!","splutters!")]") M.Stun(5) M.Weaken(5) - return - else if (mouth_covered) // Mouth cover is better than eye cover - M << "Your [safe_thing] protects your face from the pepperspray!" - M.eye_blurry = max(M.eye_blurry, 15) - M.eye_blind = max(M.eye_blind, 5) - return - else // Oh dear :D - M << "You're sprayed directly with the pepperspray!" - M.eye_blurry = max(M.eye_blurry, 25) - M.eye_blind = max(M.eye_blind, 10) - M.Stun(5) - M.Weaken(5) - return + + M << message /* Drinks */ From d260b3bb18bf15fdd688f90631f3808923515511 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 15 Oct 2015 01:36:34 -0400 Subject: [PATCH 04/13] Fixes #11300 Atoms crossing a smoke cloud now get splashed with up to 10 units of reagent. --- code/game/objects/effects/chem/chemsmoke.dm | 29 ++++++++++++++++--- .../Chemistry-Reagents-Food-Drinks.dm | 7 +++-- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/code/game/objects/effects/chem/chemsmoke.dm b/code/game/objects/effects/chem/chemsmoke.dm index 3fa93e7e46..d8e589027f 100644 --- a/code/game/objects/effects/chem/chemsmoke.dm +++ b/code/game/objects/effects/chem/chemsmoke.dm @@ -6,11 +6,32 @@ opacity = 0 time_to_live = 300 pass_flags = PASSTABLE | PASSGRILLE | PASSGLASS //PASSGLASS is fine here, it's just so the visual effect can "flow" around glass + var/splash_amount = 10 //atoms moving through a smoke cloud get splashed with up to 10 units of reagent + var/turf/destination -/obj/effect/effect/smoke/chem/New() +/obj/effect/effect/smoke/chem/New(var/newloc, turf/dest = null) ..() create_reagents(500) - return + destination = dest + if(destination) + walk_to(src, destination) + +/obj/effect/effect/smoke/chem/Move() + var/list/oldlocs = view(1, src) + . = ..() + if(.) + for(var/turf/T in view(1, src) - oldlocs) + for(var/atom/movable/AM in T) + if(!istype(AM, /obj/effect/effect/smoke/chem)) + reagents.splash(AM, splash_amount, copy = 1) + if(loc == destination) + bound_width = 96 + bound_height = 96 + +/obj/effect/effect/smoke/chem/Crossed(atom/movable/AM) + ..() + if(!istype(AM, /obj/effect/effect/smoke/chem)) + reagents.splash(AM, splash_amount, copy = 1) /datum/effect/effect/system/smoke_spread/chem smoke_type = /obj/effect/effect/smoke/chem @@ -152,16 +173,16 @@ if(passed_smoke) smoke = passed_smoke else - smoke = PoolOrNew(/obj/effect/effect/smoke/chem, location) + smoke = PoolOrNew(/obj/effect/effect/smoke/chem, list(location, T)) if(chemholder.reagents.reagent_list.len) chemholder.reagents.trans_to_obj(smoke, chemholder.reagents.total_volume / dist, copy = 1) //copy reagents to the smoke so mob/breathe() can handle inhaling the reagents + smoke.icon = I smoke.layer = 6 smoke.set_dir(pick(cardinal)) smoke.pixel_x = -32 + rand(-8, 8) smoke.pixel_y = -32 + rand(-8, 8) - walk_to(smoke, T) smoke.opacity = 1 //switching opacity on after the smoke has spawned, and then sleep(150+rand(0,20)) // turning it off before it is deleted results in cleaner smoke.opacity = 0 // lighting and view range updates diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index 43639afea1..62808ba454 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -280,14 +280,15 @@ if(I) if(I.flags & MASKCOVERSEYES) eyes_covered = 1 - eye_protection = I + eye_protection = I.name if(I.flags & MASKCOVERSMOUTH) mouth_covered = 1 - face_protection = I + face_protection = I.name var/message = null if(eyes_covered) - message = "Your [eye_protection] protects your eyes from the pepperspray!" + if(!mouth_covered) + message = "Your [eye_protection] protects your eyes from the pepperspray!" else message = "The pepperspray gets in your eyes!" if(mouth_covered) From 41e87985161fd5279d77c99ac342b1fb368ae2de Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 15 Oct 2015 01:40:39 -0400 Subject: [PATCH 05/13] Adjusts chemsmoke breathing Inhaled reagents are now split between bloodstream and ingestion. Reagents are not inhaled if environment pressure is too low. --- code/modules/mob/living/carbon/breathe.dm | 6 ++++-- code/modules/mob/living/carbon/human/life.dm | 2 +- code/modules/mob/living/carbon/human/species/species.dm | 1 + 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/carbon/breathe.dm b/code/modules/mob/living/carbon/breathe.dm index 2746e0c82e..66cdd2f75e 100644 --- a/code/modules/mob/living/carbon/breathe.dm +++ b/code/modules/mob/living/carbon/breathe.dm @@ -60,13 +60,15 @@ //Handle possble chem smoke effect /mob/living/carbon/proc/handle_chemical_smoke(var/datum/gas_mixture/environment) + if(species && environment.return_pressure() < species.breath_pressure/5) + return //pressure is too low to even breathe in. if(wear_mask && (wear_mask.flags & BLOCK_GAS_SMOKE_EFFECT)) return for(var/obj/effect/effect/smoke/chem/smoke in view(1, src)) if(smoke.reagents.total_volume) - smoke.reagents.trans_to_mob(src, 10, CHEM_INGEST, copy = 1) - //maybe check air pressure here or something to see if breathing in smoke is even possible. + smoke.reagents.trans_to_mob(src, 5, CHEM_INGEST, copy = 1) + smoke.reagents.trans_to_mob(src, 5, CHEM_BLOOD, copy = 1) // I dunno, maybe the reagents enter the blood stream through the lungs? break // If they breathe in the nasty stuff once, no need to continue checking diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index cbec800efd..baae688eb0 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -391,7 +391,7 @@ return 0 - var/safe_pressure_min = 16 // Minimum safe partial pressure of breathable gas in kPa + var/safe_pressure_min = species.breath_pressure // Minimum safe partial pressure of breathable gas in kPa // Lung damage increases the minimum safe pressure. if(species.has_organ["lungs"]) diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 313fa2e1c7..4169f6177d 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -60,6 +60,7 @@ // Environment tolerance/life processes vars. var/reagent_tag //Used for metabolizing reagents. + var/breath_pressure = 16 // Minimum partial pressure safe for breathing, kPa var/breath_type = "oxygen" // Non-oxygen gas breathed, if any. var/poison_type = "phoron" // Poisonous air. var/exhale_type = "carbon_dioxide" // Exhaled gas type. From 27fe99bdf07f2a80896c33bfc0f94927480af2db Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 15 Oct 2015 06:36:50 -0400 Subject: [PATCH 06/13] Reagent transfer now checks simulated var --- code/modules/reagents/Chemistry-Holder.dm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/code/modules/reagents/Chemistry-Holder.dm b/code/modules/reagents/Chemistry-Holder.dm index 8a7e34ccb9..d077c5f3aa 100644 --- a/code/modules/reagents/Chemistry-Holder.dm +++ b/code/modules/reagents/Chemistry-Holder.dm @@ -311,7 +311,7 @@ trans_to(target, amount, multiplier, copy) /datum/reagents/proc/trans_id_to(var/atom/target, var/id, var/amount = 1) - if (!target || !target.reagents) + if (!target || !target.reagents || !target.simulated) return amount = min(amount, get_reagent_amount(id)) @@ -340,7 +340,7 @@ return /datum/reagents/proc/touch_mob(var/mob/target) - if(!target || !istype(target)) + if(!target || !istype(target) || !target.simulated) return for(var/datum/reagent/current in reagent_list) @@ -349,7 +349,7 @@ update_total() /datum/reagents/proc/touch_turf(var/turf/target) - if(!target || !istype(target)) + if(!target || !istype(target) || !target.simulated) return for(var/datum/reagent/current in reagent_list) @@ -358,7 +358,7 @@ update_total() /datum/reagents/proc/touch_obj(var/obj/target) - if(!target || !istype(target)) + if(!target || !istype(target) || !target.simulated) return for(var/datum/reagent/current in reagent_list) @@ -377,7 +377,7 @@ return trans_to_mob(target, amount, CHEM_TOUCH, perm, copy) /datum/reagents/proc/trans_to_mob(var/mob/target, var/amount = 1, var/type = CHEM_BLOOD, var/multiplier = 1, var/copy = 0) // Transfer after checking into which holder... - if(!target || !istype(target)) + if(!target || !istype(target) || !target.simulated) return if(iscarbon(target)) var/mob/living/carbon/C = target @@ -396,7 +396,7 @@ R.touch_mob(target) /datum/reagents/proc/trans_to_turf(var/turf/target, var/amount = 1, var/multiplier = 1, var/copy = 0) // Turfs don't have any reagents (at least, for now). Just touch it. - if(!target) + if(!target || !target.simulated) return var/datum/reagents/R = new /datum/reagents(amount * multiplier) @@ -405,7 +405,7 @@ return /datum/reagents/proc/trans_to_obj(var/turf/target, var/amount = 1, var/multiplier = 1, var/copy = 0) // Objects may or may not; if they do, it's probably a beaker or something and we need to transfer properly; otherwise, just touch. - if(!target) + if(!target || !target.simulated) return if(!target.reagents) From e8d6772523ddd190abe4c73837aefc59cd992db2 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 15 Oct 2015 16:53:06 -0400 Subject: [PATCH 07/13] Smoke clouds dissipate faster in low pressure --- code/game/objects/effects/chem/chemsmoke.dm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/code/game/objects/effects/chem/chemsmoke.dm b/code/game/objects/effects/chem/chemsmoke.dm index d8e589027f..293992b735 100644 --- a/code/game/objects/effects/chem/chemsmoke.dm +++ b/code/game/objects/effects/chem/chemsmoke.dm @@ -10,6 +10,14 @@ var/turf/destination /obj/effect/effect/smoke/chem/New(var/newloc, turf/dest = null) + + //Calculate time to live + var/pressure = 0 + var/datum/gas_mixture/environment = loc.return_air() + if(environment) pressure = environment.return_pressure() + + time_to_live = max(5, time_to_live*min(pressure/(ONE_ATMOSPHERE/3), 1)) + ..() create_reagents(500) destination = dest From 47ace5ed3e7ceefea76630f89de27acb776c1bd8 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Fri, 16 Oct 2015 01:07:31 -0400 Subject: [PATCH 08/13] Chem smoke refactor --- code/__HELPERS/unsorted.dm | 2 +- code/game/objects/effects/chem/chemsmoke.dm | 94 +++++++++++++-------- 2 files changed, 60 insertions(+), 36 deletions(-) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 7122d32f85..0593e055a9 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -538,7 +538,7 @@ Turf and target are seperate in case you want to teleport some distance from a t var/y = min(world.maxy, max(1, A.y + dy)) return locate(x,y,A.z) -//Makes sure MIDDLE is between LOW and HIGH. If not, it adjusts it. Returns the adjusted value. +//Makes sure MIDDLE is between LOW and HIGH. If not, it adjusts it. Returns the adjusted value. Lower bound takes priority. /proc/between(var/low, var/middle, var/high) return max(min(middle, high), low) diff --git a/code/game/objects/effects/chem/chemsmoke.dm b/code/game/objects/effects/chem/chemsmoke.dm index 293992b735..034ce94686 100644 --- a/code/game/objects/effects/chem/chemsmoke.dm +++ b/code/game/objects/effects/chem/chemsmoke.dm @@ -4,26 +4,40 @@ /obj/effect/effect/smoke/chem icon = 'icons/effects/chemsmoke.dmi' opacity = 0 + layer = 6 time_to_live = 300 pass_flags = PASSTABLE | PASSGRILLE | PASSGLASS //PASSGLASS is fine here, it's just so the visual effect can "flow" around glass var/splash_amount = 10 //atoms moving through a smoke cloud get splashed with up to 10 units of reagent var/turf/destination -/obj/effect/effect/smoke/chem/New(var/newloc, turf/dest = null) - - //Calculate time to live - var/pressure = 0 - var/datum/gas_mixture/environment = loc.return_air() - if(environment) pressure = environment.return_pressure() - - time_to_live = max(5, time_to_live*min(pressure/(ONE_ATMOSPHERE/3), 1)) +/obj/effect/effect/smoke/chem/New(var/newloc, smoke_duration, turf/dest_turf = null, icon/cached_icon = null) + time_to_live = smoke_duration ..() + create_reagents(500) - destination = dest + + if(cached_icon) + icon = cached_icon + + set_dir(pick(cardinal)) + pixel_x = -32 + rand(-8, 8) + pixel_y = -32 + rand(-8, 8) + + //switching opacity on after the smoke has spawned, and then turning it off before it is deleted results in cleaner + //lighting and view range updates (Is this still true with the new lighting system?) + opacity = 1 + + //float over to our destination, if we have one + destination = dest_turf if(destination) walk_to(src, destination) +/obj/effect/effect/smoke/chem/Destroy() + opacity = 0 + fadeOut() + ..() + /obj/effect/effect/smoke/chem/Move() var/list/oldlocs = view(1, src) . = ..() @@ -41,6 +55,25 @@ if(!istype(AM, /obj/effect/effect/smoke/chem)) reagents.splash(AM, splash_amount, copy = 1) +/obj/effect/effect/smoke/chem/proc/initial_splash() + for(var/turf/T in view(1, src)) + for(var/atom/movable/AM in T) + if(!istype(AM, /obj/effect/effect/smoke/chem)) + reagents.splash(AM, splash_amount, copy = 1) + +// Fades out the smoke smoothly using it's alpha variable. +/obj/effect/effect/smoke/chem/proc/fadeOut(var/frames = 16) + if(!alpha) return //already transparent + + frames = max(frames, 1) //We will just assume that by 0 frames, the coder meant "during one frame". + var/alpha_step = round(alpha / frames) + while(alpha > 0) + alpha = max(0, alpha - alpha_step) + sleep(world.tick_lag) + +///////////////////////////////////////////// +// Chem Smoke Effect System +///////////////////////////////////////////// /datum/effect/effect/system/smoke_spread/chem smoke_type = /obj/effect/effect/smoke/chem var/obj/chemholder @@ -144,13 +177,21 @@ else I = icon('icons/effects/96x96.dmi', "smoke") + //Calculate smoke duration + var/smoke_duration = 150 + + var/pressure = 0 + var/datum/gas_mixture/environment = location.return_air() + if(environment) pressure = environment.return_pressure() + smoke_duration = between(5, smoke_duration*pressure/(ONE_ATMOSPHERE/3), smoke_duration) + var/const/arcLength = 2.3559 //distance between each smoke cloud for(var/i = 0, i < range, i++) //calculate positions for smoke coverage - then spawn smoke var/radius = i * 1.5 if(!radius) spawn(0) - spawnSmoke(location, I, 1) + spawnSmoke(location, I, 1, 1) continue var/offset = 0 @@ -175,43 +216,26 @@ // Randomizes and spawns the smoke effect. // Also handles deleting the smoke once the effect is finished. //------------------------------------------ -/datum/effect/effect/system/smoke_spread/chem/proc/spawnSmoke(var/turf/T, var/icon/I, var/dist = 1, var/obj/effect/effect/smoke/chem/passed_smoke) +/datum/effect/effect/system/smoke_spread/chem/proc/spawnSmoke(var/turf/T, var/icon/I, var/smoke_duration, var/dist = 1, var/splash_initial=0, var/obj/effect/effect/smoke/chem/passed_smoke) var/obj/effect/effect/smoke/chem/smoke if(passed_smoke) smoke = passed_smoke else - smoke = PoolOrNew(/obj/effect/effect/smoke/chem, list(location, T)) + smoke = PoolOrNew(/obj/effect/effect/smoke/chem, list(location, smoke_duration + rand(0, 20), T, I)) if(chemholder.reagents.reagent_list.len) chemholder.reagents.trans_to_obj(smoke, chemholder.reagents.total_volume / dist, copy = 1) //copy reagents to the smoke so mob/breathe() can handle inhaling the reagents - smoke.icon = I - smoke.layer = 6 - smoke.set_dir(pick(cardinal)) - smoke.pixel_x = -32 + rand(-8, 8) - smoke.pixel_y = -32 + rand(-8, 8) - smoke.opacity = 1 //switching opacity on after the smoke has spawned, and then - sleep(150+rand(0,20)) // turning it off before it is deleted results in cleaner - smoke.opacity = 0 // lighting and view range updates - fadeOut(smoke) - qdel(src) + //Kinda ugly, but needed unless the system is reworked + if(splash_initial) + smoke.initial_splash() -/datum/effect/effect/system/smoke_spread/chem/spores/spawnSmoke(var/turf/T, var/icon/I, var/dist = 1) + +/datum/effect/effect/system/smoke_spread/chem/spores/spawnSmoke(var/turf/T, var/smoke_duration, var/icon/I, var/dist = 1) var/obj/effect/effect/smoke/chem/spores = PoolOrNew(/obj/effect/effect/smoke/chem, location) spores.name = "cloud of [seed.seed_name] [seed.seed_noun]" - ..(T, I, dist, spores) - -/datum/effect/effect/system/smoke_spread/chem/proc/fadeOut(var/atom/A, var/frames = 16) // Fades out the smoke smoothly using it's alpha variable. - if(A.alpha == 0) //Handle already transparent case - return - if(frames == 0) - frames = 1 //We will just assume that by 0 frames, the coder meant "during one frame". - var/step = A.alpha / frames - for(var/i = 0, i < frames, i++) - A.alpha -= step - sleep(world.tick_lag) - return + ..(T, I, smoke_duration, dist, spores) /datum/effect/effect/system/smoke_spread/chem/proc/smokeFlow() // Smoke pathfinder. Uses a flood fill method based on zones to quickly check what turfs the smoke (airflow) can actually reach. From 2f4d1dd7b1fc1701c18f63309ca86376be52d28f Mon Sep 17 00:00:00 2001 From: mwerezak Date: Sun, 25 Oct 2015 23:39:06 -0400 Subject: [PATCH 09/13] Adds IPC specific halloss stun messages --- code/modules/mob/living/carbon/human/life.dm | 4 ++-- code/modules/mob/living/carbon/human/species/species.dm | 2 ++ .../mob/living/carbon/human/species/station/station.dm | 2 ++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 74844fd3b1..51ee3b066d 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -970,8 +970,8 @@ qdel(a) if(halloss > 100) - src << "You're in too much pain to keep going..." - src.visible_message("[src] slumps to the ground, too weak to continue fighting.") + src << "[species.halloss_message_self]" + src.visible_message("[src] [species.halloss_message].") Paralyse(10) setHalLoss(99) diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index feb0725d5c..9ec0b8fd6e 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -59,6 +59,8 @@ var/death_sound var/death_message = "seizes up and falls limp, their eyes dead and lifeless..." var/knockout_message = "has been knocked unconscious!" + var/halloss_message = "slumps to the ground, too weak to continue fighting." + var/halloss_message_self = "You're in too much pain to keep going..." // Environment tolerance/life processes vars. var/reagent_tag //Used for metabolizing reagents. diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm index b63dd51963..a582aa69a5 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -258,6 +258,8 @@ show_ssd = "flashing a 'system offline' glyph on their monitor" death_message = "gives one shrill beep before falling lifeless." knockout_message = "encounters a hardware fault and suddenly reboots!" + halloss_message = "encounters a hardware fault and suddenly reboots." + halloss_message_self = "ERROR: Unrecoverable machine check exception.
System halted, rebooting..." warning_low_pressure = 50 hazard_low_pressure = 0 From 988c8fb2c82656cc182a43ba0210394d5d056ab0 Mon Sep 17 00:00:00 2001 From: PsiOmegaDelta Date: Mon, 26 Oct 2015 09:48:55 +0100 Subject: [PATCH 10/13] Increases solar star exposure on the asteroid. Cuts away huge swats of asteroid around the solars to give them star exposure. A panel is considered unblocked when there are 20 steps of non-dense turfs in the current direction of the star/sun. --- maps/exodus-5.dmm | 157 +++++++++++++++++++++++----------------------- 1 file changed, 77 insertions(+), 80 deletions(-) diff --git a/maps/exodus-5.dmm b/maps/exodus-5.dmm index 48a84fc164..7f6efc0996 100644 --- a/maps/exodus-5.dmm +++ b/maps/exodus-5.dmm @@ -267,7 +267,7 @@ "fg" = (/obj/structure/table/rack,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/outpost/research/disposal) "fh" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/research{name = "Anomalous Materials Locker Room"; req_access = list(65)},/turf/simulated/floor{icon_state = "white"},/area/outpost/research/hallway) "fi" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/outpost/research/disposal) -"fj" = (/obj/machinery/mass_driver{dir = 4; id = "research"},/turf/simulated/floor/plating/airless/asteroid,/area/outpost/research/disposal) +"fj" = (/obj/machinery/mass_driver{dir = 4; id = "research"},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless/asteroid,/area/outpost/research/disposal) "fk" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/disposal) "fl" = (/turf/simulated/floor/plating/airless,/area/outpost/abandoned) "fm" = (/obj/item/weapon/material/shard,/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/outpost/abandoned) @@ -825,7 +825,6 @@ "pS" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_north_outpost_inner"; locked = 1; name = "Mining External Access"},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "pT" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/sign/vacuum{pixel_y = -32},/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) "pU" = (/obj/structure/table/rack,/obj/item/weapon/pickaxe,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/explored) -"pV" = (/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/unexplored) "pW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/obj/machinery/camera/network/mining{c_tag = "Mining Outpost North - Airlock"},/turf/simulated/floor/plating,/area/outpost/mining_north) "pX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/mining_north) "pY" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/turf/simulated/floor{icon_state = "floorgrime"},/area/outpost/mining_north) @@ -1142,7 +1141,6 @@ "vX" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "edock_inner"; locked = 1; name = "Engineering Dock Airlock"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/engineering/hallway) "vY" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/engineering/hallway) "vZ" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/engineering/hallway) -"wa" = (/obj/structure/lattice,/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/unsimulated/mask,/area/mine/explored) "wb" = (/turf/simulated/floor/plating/airless/asteroid,/area/shuttle/constructionsite/site) "wc" = (/obj/machinery/light/small,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"},/area/mine/explored) "wd" = (/obj/machinery/atmospherics/pipe/simple/visible/purple,/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/engineering/atmospherics) @@ -1159,7 +1157,7 @@ "wo" = (/obj/machinery/atmospherics/pipe/simple/visible/red{tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10},/obj/machinery/meter,/turf/simulated/floor,/area/outpost/engineering/atmospherics) "wp" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 8; icon_state = "map"; tag = "icon-manifold-f (WEST)"},/turf/simulated/floor/plating,/area/outpost/engineering/hallway) "wq" = (/obj/machinery/atmospherics/pipe/simple/visible/blue,/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/engineering/atmospherics) -"wr" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/simulated/wall,/area/outpost/engineering/hallway) +"wr" = (/obj/structure/lattice,/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "ws" = (/obj/machinery/power/emitter{anchored = 1; dir = 4; state = 2},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "wt" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor,/area/outpost/engineering/atmospherics) "wu" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{tag = "icon-map (EAST)"; icon_state = "map"; dir = 4},/turf/simulated/floor,/area/outpost/engineering/atmospherics) @@ -1190,7 +1188,6 @@ "wU" = (/obj/machinery/atmospherics/pipe/simple/visible/purple{dir = 10},/obj/machinery/meter,/turf/simulated/floor,/area/outpost/engineering/atmospherics) "wV" = (/obj/machinery/atmospherics/omni/filter{power_rating = 15000; tag_east = 4; tag_north = 1; tag_south = 2; tag_west = 3},/turf/simulated/floor,/area/outpost/engineering/atmospherics) "wW" = (/obj/machinery/atmospherics/pipe/simple/visible/blue,/obj/structure/extinguisher_cabinet{pixel_x = 25; pixel_y = 0},/turf/simulated/floor,/area/outpost/engineering/atmospherics) -"wX" = (/obj/structure/grille,/obj/structure/lattice,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) "wY" = (/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/outpost/engineering/atmospherics) "wZ" = (/obj/machinery/atmospherics/pipe/simple/visible/red{tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4},/turf/simulated/floor,/area/outpost/engineering/atmospherics) "xa" = (/obj/machinery/atmospherics/pipe/simple/visible/red{tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6},/obj/machinery/meter,/turf/simulated/floor,/area/outpost/engineering/atmospherics) @@ -1702,7 +1699,7 @@ aaaaabababababababababababababababababababababababababababababababababababababab aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbXdmdmdmdmdmdmfnfUjEiTfUhojFigigfVfqifdmigdIeojGdmababababababababababababababababababababababababababababababababbdbdbdgygygygybdbdbdababsEgygygygygygyjHgcgbgfjHjHjHjHjHjujHjJjJjJgjjxgjjMjLjNjnkzjOjqjQjSjRjUjTjWjVjXjXjXjYjqjZkajwkckbkbkbkbkdkfkehXgBqFqFqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbXdmkgfUhZkhdmhYkiiadmhpdmkkkjkldmcNkmidkndIepfUdmabababababababababababababababababababababababababababababababbdbdgygygygygygygygybdbdabgygygygygygygygygycJjIkokqkpksjPktkrkvkukykxkAkwkCkBkGkFkIkHjqkJkLkKkMjXjWkNkOjXjXkPjqkQkRjwkTkSkVkUkbgBgBgBgBgBqFqFqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdmkgdIhZdIkWkmiTkXiTkYcNcNkZfqcNdIdIdmfUknfUfUdmababababababababababababababababababababababababababababababbdbdgygygygygygygygygygybdmRgygygygygygygygygygyjIkolblaldkElflclekokolalhgjljlijnjnlllkjqlmlolnlqlplslrlultlwlvjqlxlyjwlAlzlzlBkbababbdbdqFqFqFqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdmlChZfUdIlDdIlEeVdIlFkYlEihlGdIlHeodmlIdIhqcNdmabababababababababababababababababababababababababababababbdbdqFqFqFqFqFgygygygygygynDlJgycJgygygygygygygygyjIkolblalLlKlNlMlglOkolPgjgjnNnOjnlQlSlRjqlTlVlUlXlWlZlYlmmamcmbjqmdmejwmgmfmfmfkbabbdbdqFqFqFqFqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdmlChZfUdIlDdIlEeVdIlFkYlEihlGdIlHeodmlIdIhqcNdmabababababababababababababababababababababababababababababbdbdqFqFqFqFqFgygygygygygygylJgycJgygygygygygygygyjIkolblalLlKlNlMlglOkolPgjgjnNnOjnlQlSlRjqlTlVlUlXlWlZlYlmmamcmbjqmdmejwmgmfmfmfkbabbdbdqFqFqFqFqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdmlCmhfUfpdmmidmmkmjdmdIdmmkmjdmfUkmdmeUmlidlIdmabababababababababababababababababababababababababababababbdmrqFqFmRqFqFqFgygygygygygygygycJgygygygygygygygyjIkommlamnjPmpmomAmqkomsgjowoxoyjnmtmvmujqmxmzmyjUmCwMmBjXmDjXjXjqmEmFjwkbkbkbkbkbbdbdqFqFqFqFqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdmdmdmdmdmdmmidmhqlHdIiWmGfUiWfUhqfSdmmHmJmImKdmabababababababababababababababababababababababababababababbdnkqFqFqFqFqFqFqFgygygygygygygycJgygygygygygygycJjIkomMmLmNkEmOmomSmPkomTgjoYoxoyjnmUjnmVjqmWlnmXmZmYnbnamzmznckPjqndnejwababababbdbdqFqFqFqFqFbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdmmidmlHeonfiWngdIihdmfUeodmnhnininjdmadababababababababababababababababababababababababababababbdqFqFqFqFnlqFqFqFqFgygygygygygycJgygygygygygycJcJjIkokonmnnkokonLnMnLkonogjowpBnpjnnqnsnrjqntnvnunxnwnznynBnAnCjXjqjwjwjwabababbdbdqFqFqFqFqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa @@ -1714,7 +1711,7 @@ aaababababababababababababababababababababababababababababababababababababababab aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababadadaddmpopppodmadabababababababababababababababababababababababababababababbdnGqFqFqFqFqFqFqFqFgygygygygygygygygygygybdbdbdababababbdbdbdbdbdbdbdqFpqqFgybdbdbdababababababababababababababababbdbdqFqFqFqFqFbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababadaddmpsoRmKdmadabababababababababababababababababababababababababababababbdqFpLpUpQqFqFqFqFgybdbdbdgygygygygygygygygyababababababababbdbdbdbdbdqFpqqFgybdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdqFqFqFqFqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababadadadrBrCrDadadababababababababababababababababababababababababababababababqFqFqFmRqFqFqFbdbdbdababgygygygygygygygygyababababababababababbdbdbdqFpqqFgyqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpVpVpVqFqFbdbdbdbdababgygygygygygygygygyabababababababababababbdbdqFpqqFgyqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababqFqFqFqFqFbdbdbdbdababgygygygygygygygygyabababababababababababbdbdqFpqqFgyqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygyababgygygygyababababababababababbdbdqFpupvqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqFbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygyabababgygygyababababababababababbdbdqFqFpqqFbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygyababgygygyababababababababababbdbdbdqFpqqFbdbdbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa @@ -1733,79 +1730,79 @@ aaaaabababababababababababababababababababababababababababababababababababababab aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdqFqcqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqcqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqcqFgybdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqcqFqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqmqGqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqFqcqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdmRsEqFqcqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgyqFqcqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygyqFqcqFbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygyqFqcqFgybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygyqFqcqFgybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygyrJqDrigybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygypBqEpCgybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgyqFqcqFgybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqIqHqFbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqcqFqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFqcqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgyqFqcqRmRabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFqIqHqFbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdgyqFqcqFqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygygyqFqcqFgygybdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygyqFqcqFgygybdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygyqFqcqFgygybdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygyqFqcqFgygybdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygyqFqcqFgygybdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygyabababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygyqFqcqFgygybdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgyrdrdrdrdrdrdrdrdrdrdrdrdrdrdgygyabababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygygyqFqcqFgygygybdbdbdbdbdababababababababababababababababababababababababababababababababababababababadadadadababababababababababcJcJgyababgygygygygycJgygygycJgygygycJgygyrdgygyabababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygygyqFqcqFgygygygygygygybdbdababababababababababababababababababababababababababababababababababababababababadgygygygygygygygygygygycJgyababgygygygyrprerygyrprerygyrprerygyrdgygyabababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygygyqFqcqFrJriqFqFqFqFqFgybdababababababababababababababababababababababababababababababababababababababababababcJcJcJcJcJcJcJcJcJcJcJcJcJcJcJcJcJcJrprSrycJrprSrycJrprSrycJrdgygyabababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygyqFqmqlqSqTqlqlqlqGqFgybdbdbdababababababababababababababababababababababababababababababababrjrjrjrjrjrjababgygygygycJgygygygygycJgygycJcJgygygyrprSrygyrprSrygyrprSrygyrdgygyabababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygyqFqFqFpBpCqFqFqFqcqFqFqFgybdababababababababababababababababababababababababababababababababrjqVqXqWoArjababababababcJabababcJgycJgycJcJcJcJgygyrprSrygyrprSrygyrprSrygyrdgygyabababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgysLgygygygygygygyqFqmqlqGqFgybdbdabababababababababababababababababababababababababababababababrjqVrbrarjrjrjababgygygycJcJcJcJcJcJcJcJcJgygycJcJgyrprSrycJrprSrycJrprSrycJrdgygyabababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdmRbdbdbdbdbdbdgyqFqFqFqcqFgygybdbdbdabababababababababababababababababababababababababababababrjqVrfrcqZqYrjabababababcJabcJababgycJgygygygycJgygyrprSrygyrprSrygyrprSrygyrdgygyabababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgygyqFqcqFqFqFqFgybdbdababababababababababababababababababababababababrErErErErErjrkrjrjrjrjrjqUabbdabcJabcJcJgygycJgygygygygygygyrprSrygyrprSrygyrprSrygyrdgygyabababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgyqFqmqlqlqGqFgygybdbdababababababbdbdbdababababababababababababababrErlrnrmrZrorrrqrtrsruruqUbdbdrvcJabcJgygygycJcJcJcJcJcJcJcJrprSrycJrprSrycJrprSrycJrdgygygyababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFqFqFqFqcqFqFqFqFbdbdabababbdbdbdgybdababababababababababababababrErwrzrxrErArGrFrKrIrFrLrNrMrMdhcJababgygygycJgygycJgygygygyrprSrygyrprSrygyrprSrygycJgygygyababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgygygyqFqmqlqlqGqFgybdabbdbdbdgygygybdababababababababababababababrErOrQrPsarRrGrTrVrUrXrWqUrYrYrYrYrYsqshsbuquqsqsxuqgygygygyrprSrygyrprSrygyrprSrygyrdrdrdgyababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFszqFqFqcqFgybdbdbdgygygygygypzpzpzpzabababababababsdsdsdsdrhserQsfsHsgsirFsksjrXsmrjsnspsosrsNrgrgsvsusRswsysqshsxgygycJsTcJgycJsTcJgycJsTcJgycJgyrdgyababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdmRgyqFqcqFqFqFgygygygygygygyAwsFsDpzabababababababsdsGsJsIrhsKrQsQsVsYrGrFtetdrFtfrjtktmtltqsWtutrsvsusXtvtztytCtAtEtcththththththththththtjtitncJrdgyababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqmqlqGqFgygygygygygygyAwAetJpzababscscscscabsdtKtMtLrhtNtPtOrEtRrGtStUtTrGtVrjtWtYtXuatwucubugudtxuhujsqshsxgygycJtDcJgycJtDcJgycJtDcJgycJgyrdgyababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqFqFulqFgygygygygygygyAwAeumscscscscuounscscscsctFscscuquququqtHsxuqtIuqtHsxuqtZuiuqukuvuyuxuAuzuquBuCscgygygygyrpuprygyrpuprygyrpuprygyrdrdrdgyababababababababaaaa -aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdrJuGriqFqFqFqFqFqFqFpBAzuDuIuHuKuruMusuuutuwuPuSuRuUuTuWuFuXuWuWuWuZuYuWuWvbvavdvcvfuJvhuLuOuNuVuQtrvegycJgygyrpuprygyrpuprygyrpuprygycJgygygyababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdAwvovnvpvpvpvpvpvpvpvpvrvqvtvsvvvgvxvwvwvwvivyvBvAvCvwvwvjvFvEvwvwvHvGvIvwvKvJvMvLvOvkvLvPsvsvvRssvStxcJcJcJcJrpuprycJrpuprycJrpuprycJrdgygygyababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdpBvTpCqFqFqFqFqFqFqFrJsCvUscscscscuquququqscvlvuvmvzvuvDuqvNuqvVscuquququququququququqsqshsbsxuqvWvXuqgygycJgyrpuprygyrpuprygyrpuprygyrdgygyabababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqFgygygygygygygyAwowowbdabababababababwfwewhwgwjwiwlwkwnwmwowfabababababababadadadgygygygyvYwpstvYgygycJgyrpuprygyrpuprygyrpuprygyrdgygyabababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdbdbdqFulqFgygygygygygygyAwwsbdbdabababababababwfwewuwtwwwvwvwvwywxwzwfababababababababadadgygygygyvZwAvQvZcJcJcJcJrpuprycJrpuprycJrpuprycJrdgygyabababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqFqFqFqFqFulqFgygygygygygygyAwwsbdababababababababwfwewEwDwDwFwHwGwJwIwKwfabababababababababadgygygygywrwLwNuqsUgywagyrpuprygyrpuprygyrpuprygyrdgygyabababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqIqlqlqlqlwQqFbdbdgygygygybdbdbdbdababababababababwfwewRwvwvwvwTwSwVwUwWwfababababababababababgygygywbwbwbwbwbwbwbgygyrpuprygyrpuprygyrpuprygyrdgygyabababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqcqFqFqFqFwcqFbdbdbdbdbdbdbdabababababababababababwfwYxawZwZxbxdxcxfxexgwfababababababababababgygygywbwbwbwbwbwbwbgygyrpuprycJrpuprycJrpuprycJrdgygyabababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqcqFbdbdbdmRbdbdabababababababababababababababababwfxhxjxiwvwfwqwdwfwBwOwfabababababababababgygygygywbwbwbwbwbwbwbgygyrpwPrygyrpwPrygyrpwPrygyrdgygyabababababababababaaaa -aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqcqFbdbdbdbdabababababababababababababababababababwfxpxrxqwvwfxtxswfxuxwwfabababababababababgygygygywbwbwbwbwbwbwbgygygycJgygygycJgygygycJgygyrdgygyabababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqcqFbdbdbdababababababababababababababababababababwfwfwfwfwfwfxyxxwfxzxAwfababababababababababgygygywbwbwbwbwbwbwbgywXrdrdrdrdrdrdrdrdrdrdrdrdrdgygyabababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqcqFbdbdababababababababababababababababababababababababababwfwfwfwfwfwfwfababababababababababababgygygygygygygygygygygygygygygygygygygygygygygygygyabababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFqcqFbdbdabababababababababababababababababababababababababababababababababababababababababababababgygygygygygyabgygygygygygygygygygygygygygygygygygyabababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqFqcqFbdababababababababababababababababababababababababababababababababababababababababababababababababgygygyabababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqIwQqFbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFulqFgybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababmRsErJuGrigybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgypBvTpCgybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFulqFgybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFulqFbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygybdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFulqFbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygybdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFulqFbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygybdbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFulqFbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygybdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFulqFbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygybdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdqFulqFbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababsOgysOgybdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdqFulqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababsPxCsPgybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababxksSxlabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababxksSxmabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqFbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababababgygyqwqCxnprprprprprprxosSxmabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqRmRabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababgygygygyxCsZsZsZsZsZsZsZtatbxmabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqFbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababababababababababababbdgygygyqwtgpHpHpHpHpHpHxBsSxPcJabababababbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdqFulqFbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababbdbdbdgygygygyababababababxksSxmabababbdbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababqFtotpabxDxDxDxDxDxDabababababababababababababababababababababababababababababbdbdbdqFulqFbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababbdgygygyabababababababxksSxmabgybdbdbdbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababtstpttabxDxFxExDxGxDabababababababababababababababababababababababababababababbdbdbdqFulqFbdbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa -aaaaababababababababababababababababababababababababababababababababababababababababababababababbdbdgygyabababababababxTsSxmgygybdbdbdbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababqFmRabxDxIxHxLxKxDababababababababababababababababababababababababababababababbdbdqFulqFgybdbdbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqcqFqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababeZabababababababababababababababababababaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqmqGqFbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababeZeZabababababababababababababababababababaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqFqcqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababeZeZeZeZeZababababababababeZeZabababababababeZeZababababababababababaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdmRsEqFqcqFbdabababababababababababababababababababababababababababababababababababababababababababababeZeZeZgygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgyqFqcqFbdabababababababababababababababababababababababababababababababababababababababababababababeZeZgygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygyqFqcqFbdbdababababababababababababababababababababababababababababababababababababababababababababeZgygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygyqFqcqFgybdababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygyqFqcqFgybdababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygyrJqDrigybdababababababababababababababababababababababababababababababababababababababababababgyabgygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygypBqEpCgybdababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgyqFqcqFgybdababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqIqHqFbdbdabababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqcqFqFbdabababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFqcqFbdbdabababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgyqFqcqRmRababababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFqIqHqFbdababababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdgyqFqcqFqFbdbdabababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgygygyqFqcqFgygybdabababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygyeZeZgygygygygygygygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygyqFqcqFgygybdabababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygyeZeZeZeZgygygygygygygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZeZeZeZaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygyqFqcqFgygybdabababababababababababababababababababababababababababababababababababababababababababababgygygygygygygyeZeZeZeZeZgygygygygygygygygygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygyqFqcqFgygybdabababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygyeZeZeZgygygygygygygygygygygygygygygygygygygygygygygyeZeZeZeZeZeZeZeZeZeZeZaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygyqFqcqFgygybdabababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygyeZgygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygyqFqcqFgygybdbdababababababababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygygygygyrdrdrdrdrdrdrdrdrdrdrdrdrdrdgygygygygygygygygygygyaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygygyqFqcqFgygygybdbdbdbdbdababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygycJcJgybdbdgygygygygycJgygygycJgygygycJgygyrdgygygygygygygygygygygyaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygygyqFqcqFgygygygygygygybdbdabababababababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygycJgybdbdgygygygyrprerygyrprerygyrprerygyrdgygygygygygygygygygygyaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygygyqFqcqFrJriqFqFqFqFqFgybdabababababababababababababababababababababababababababababababababababababababgygygycJcJcJcJcJcJcJcJcJcJcJcJcJcJcJcJcJcJrprSrycJrprSrycJrprSrycJrdgygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygyqFqmqlqSqTqlqlqlqGqFgybdbdbdababababababababababababababababababababababababababababababababrjrjrjrjrjrjbdbdgygygygycJgygygygygycJgygycJcJgygygyrprSrygyrprSrygyrprSrygyrdgygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygyqFqFqFpBpCqFqFqFqcqFqFqFgybdababababababababababababababababababababababababababababababababrjqVqXqWoArjababababababcJabababcJgycJgycJcJcJcJgygyrprSrygyrprSrygyrprSrygyrdgygygygygygygygygygygyaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgysLgygygygygygygyqFqmqlqGqFgybdbdabababababababababababababababababababababababababababababababrjqVrbrarjrjrjababgygygycJcJcJcJcJcJcJcJcJgygycJcJgyrprSrycJrprSrycJrprSrycJrdgygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdmRbdbdbdbdbdbdgyqFqFqFqcqFgygybdbdbdabababababababababababababababababababababababababababababrjqVrfrcqZqYrjabababababcJabcJababgycJgygygygycJgygyrprSrygyrprSrygyrprSrygyrdgygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgygyqFqcqFqFqFqFgybdbdababababababababababababababababababababababababrErErErErErjrkrjrjrjrjrjqUabbdabcJabcJcJgygycJgygygygygygygyrprSrygyrprSrygyrprSrygyrdgygygygygygygygygygygyaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgyqFqmqlqlqGqFgygybdbdababababababbdbdbdababababababababababababababrErlrnrmrZrorrrqrtrsruruqUbdbdrvcJabcJgygygycJcJcJcJcJcJcJcJrprSrycJrprSrycJrprSrycJrdgygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFqFqFqFqcqFqFqFqFbdbdabababbdbdbdgybdababababababababababababababrErwrzrxrErArGrFrKrIrFrLrNrMrMdhcJababgygygycJgygycJgygygygyrprSrygyrprSrygyrprSrygycJgygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdgygygyqFqmqlqlqGqFgybdabbdbdbdgygygybdababababababababababababababrErOrQrPsarRrGrTrVrUrXrWqUrYrYrYrYrYsqshsbuquqsqsxuqgygygygyrprSrygyrprSrygyrprSrygyrdrdrdgygygygygygygygygyaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFszqFqFqcqFgybdbdbdgygygygygypzpzpzpzabababababababsdsdsdsdrhserQsfsHsgsirFsksjrXsmrjsnspsosrsNrgrgsvsusRswsysqshsxgygycJsTcJgycJsTcJgycJsTcJgycJgyrdgygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdmRgyqFqcqFqFqFgygygygygygygyAwsFsDpzabababababababsdsGsJsIrhsKrQsQsVsYrGrFtetdrFtfrjtktmtltqsWtutrsvsusXtvtztytCtAtEtcththththththththththtjtitncJrdgygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqmqlqGqFgygygygygygygyAwAetJpzababscscscscabsdtKtMtLrhtNtPtOrEtRrGtStUtTrGtVrjtWtYtXuatwucubugudtxuhujsqshsxgygycJtDcJgycJtDcJgycJtDcJgycJgyrdgygygygygygygygygyaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqFqFulqFgygygygygygygyAwAeumscscscscuounscscscsctFscscuquququqtHsxuqtIuqtHsxuqtZuiuqukuvuyuxuAuzuquBuCscgygygygyrpuprygyrpuprygyrpuprygyrdrdrdgygygygygygygygygyaaaa +aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdrJuGriqFqFqFqFqFqFqFpBAzuDuIuHuKuruMusuuutuwuPuSuRuUuTuWuFuXuWuWuWuZuYuWuWvbvavdvcvfuJvhuLuOuNuVuQtrvegycJgygyrpuprygyrpuprygyrpuprygycJgygygygygygygygygygygyaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdAwvovnvpvpvpvpvpvpvpvpvrvqvtvsvvvgvxvwvwvwvivyvBvAvCvwvwvjvFvEvwvwvHvGvIvwvKvJvMvLvOvkvLvPsvsvvRssvStxcJcJcJcJrpuprycJrpuprycJrpuprycJrdgygygygygygygygygygygyaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdpBvTpCqFqFqFqFqFqFqFrJsCvUscscscscuquququqscvlvuvmvzvuvDuqvNuqvVscuquququququququququqsqshsbsxuqvWvXuqgygycJgyrpuprygyrpuprygyrpuprygyrdgygygygygygygygygygygyaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqFgygygygygygygyAwowowbdabababababababwfwewhwgwjwiwlwkwnwmwowfeZeZeZeZeZeZeZeZeZeZgygygygyvYwpstvYgygycJgyrpuprygyrpuprygyrpuprygyrdgygygygygygygygygygygyaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdbdbdqFulqFgygygygygygygyAwwsbdbdabababababababwfwewuwtwwwvwvwvwywxwzwfeZeZeZeZeZeZeZeZgygygygygygyvZwAvQvZcJcJcJcJrpuprycJrpuprycJrpuprycJrdgygygygygygygygygygygyaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqFqFqFqFqFulqFgygygygygygygyAwwsbdababababababababwfwewEwDwDwFwHwGwJwIwKwfeZeZeZeZeZeZeZgygygygygyEpgyuqwLwNuqsUgywrgyrpuprygyrpuprygyrpuprygyrdgygygygygygygygygygygyaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqIqlqlqlqlwQqFbdbdgygygygybdbdbdbdababababababababwfwewRwvwvwvwTwSwVwUwWwfeZeZeZeZeZgygygygygygygygywbwbwbwbwbwbwbgygyrpuprygyrpuprygyrpuprygyrdgygygygygygygygygygygyaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqcqFqFqFqFwcqFbdbdbdbdbdbdbdabababababababababababwfwYxawZwZxbxdxcxfxexgwfeZeZeZeZgygygygygygygygygywbwbwbwbwbwbwbgygyrpuprycJrpuprycJrpuprycJrdgygygygygygygygygygygyaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqcqFbdbdbdmRbdbdabababababababababababababababababwfxhxjxiwvwfwqwdwfwBwOwfeZeZgygygygygygygygygygygywbwbwbwbwbwbwbgygyrpwPrygyrpwPrygyrpwPrygyrdgygygygygygygygygygygyaaaa +aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqcqFbdbdbdbdabababababababababababababababababababwfxpxrxqwvwfxtxswfxuxwwfeZgygygygygygygygygygygygywbwbwbwbwbwbwbgygygycJgygygycJgygygycJgygyrdgygygygygygygygygygyeZaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqcqFbdbdbdababababababababababababababababababababwfwfwfwfwfwfxyxxwfxzxAwfabgygygygygygygygygygygygywbwbwbwbwbwbwbgygyrdrdrdrdrdrdrdrdrdrdrdrdrdgygygygygygygygygyeZeZaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqcqFbdbdababababababababababababababababababababababababababwfwfwfwfwfwfwfabgygygygygygygygygygygyEpgygygygygygygyEpgygygygygygygygygygygygygygygygygygygygygygyeZeZeZaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFqcqFbdbdababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygyeZeZaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFqFqcqFbdabababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFqIwQqFbdabababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygyaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFulqFgybdabababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygyaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababmRsErJuGrigybdabababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygygygygygygygygygygygygygyeZgygygygygygygygygygygygygygygygyaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgypBvTpCgybdabababababababababababababababababababababababababababababababababababgygygygygygygygygygygygygygygygygygygygygygygygygygygygyeZeZeZgygygygygygygygygygygygygygygyaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdgyqFulqFgybdababababababababababababababababababababababababababababababababababeZeZgygygygygygygygygygygygygygygygygygygygygygygygygygyeZeZeZeZgygygygygygygygygygygygygygygyaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFulqFbdbdbdabababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygygygygygygygyeZgygygygygygygygygygygygygygygygyaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygybdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFulqFbdbdbdabababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygyaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygybdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdqFulqFbdbdbdababababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygyaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygybdbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFulqFbdbdbdababababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygybdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdqFulqFbdbdbdababababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygygygygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygybdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdqFulqFbdbdbdababababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababsOgysOgybdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdqFulqFbdbdabababababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygygygygygygygygygygyaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababsPxCsPgybdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqFbdbdabababababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygygygygygygyeZeZaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababxksSxlabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqFbdbdabababababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygygygygygyeZeZeZaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababxksSxmabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqFbdababababababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygygygygyeZeZeZeZaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababababgygyqwqCxnprprprprprprxosSxmabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqRmRababababababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygygygyeZeZeZeZeZaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababgygygygyxCsZsZsZsZsZsZsZtatbxmabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdbdqFulqFbdabababababababababababababababababababababababababababababababababababeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZgygygygygygygygygygygygygyeZeZeZeZeZeZeZaaaa +aaaaabababababababababababababababababababababababababababababababababababababababababababababbdgygygyqwtgpHpHpHpHpHpHxBsSxPcJabababababbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababbdbdbdqFulqFbdababababababababababababababababababababababababababababababababababeZeZeZababababababababababababababababeZeZeZababababababababababababgygygygygyababababababababaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababbdbdbdgygygygyababababababxksSxmabababbdbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababqFtotpabxDxDxDxDxDxDabababababababababababababababababababababababababababababbdbdbdqFulqFbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygyababababababababaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababbdgygygyabababababababxksSxmabgybdbdbdbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababtstpttabxDxFxExDxGxDabababababababababababababababababababababababababababababbdbdbdqFulqFbdbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygygygyabababababababaaaa +aaaaababababababababababababababababababababababababababababababababababababababababababababababbdbdgygyabababababababxTsSxmgygybdbdbdbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababqFmRabxDxIxHxLxKxDababababababababababababababababababababababababababababababbdbdqFulqFgybdbdbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgyababababababababababaaaa aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababsOxCsOgygybdbdbdbdbdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababtBababxDxDxDxDxMxDbdbdbdbdmRbdbdabababababababababababababababababababababababbdbdqFulqFgygybdbdbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa aaababababababababababababababababababababababababababababababababababababababababababababababababababababababababgygysPqFsPgygygygygygybdbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababsBababxDxFxNxDxOxYgygygygytGgybdbdababababababababababababababababababababababbdbdqFulqFgygygybdbdbdbdbdbdabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa aaabababababababababababababababababababababababababababababababababababababababababababababababababababababababgygygyqFqFqFqFqFxQxQxQqFqFqFbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababsBababxDxIxHxSxRycgygygygygygygygygyababababababababababababababababkDmRmRmRmRmRqFqFulqFqFgygygygygybdabbdbdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaaaa From 8c56aaa372d212047fda425f7aab0214b1262f57 Mon Sep 17 00:00:00 2001 From: PsiOmegaDelta Date: Tue, 27 Oct 2015 12:31:18 +0100 Subject: [PATCH 11/13] Updates changelog. --- html/changelog.html | 6 ++++++ html/changelogs/.all_changelog.yml | 4 ++++ .../changelogs/HarpyEagle-pepperspray-fix.yml | 20 ------------------- 3 files changed, 10 insertions(+), 20 deletions(-) delete mode 100644 html/changelogs/HarpyEagle-pepperspray-fix.yml diff --git a/html/changelog.html b/html/changelog.html index 372d1d3762..554144e8fc 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -56,6 +56,12 @@ -->
+

27 October 2015

+

HarpyEagle updated:

+
    +
  • When affected by pepperspray, eye protection now prevents blindness and face protection now prevents stun, instead of face protection doing both.
  • +
+

14 October 2015

Hubblenaut updated:

    diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 4dc9f9dac6..89f6ba658f 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -2032,3 +2032,7 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. - bugfix: Messages for adding to existing stack appear again. TheWelp: - rscdel: Removed higher Secret player requirements. +2015-10-27: + HarpyEagle: + - bugfix: When affected by pepperspray, eye protection now prevents blindness and + face protection now prevents stun, instead of face protection doing both. diff --git a/html/changelogs/HarpyEagle-pepperspray-fix.yml b/html/changelogs/HarpyEagle-pepperspray-fix.yml deleted file mode 100644 index c474310d0f..0000000000 --- a/html/changelogs/HarpyEagle-pepperspray-fix.yml +++ /dev/null @@ -1,20 +0,0 @@ -################################ -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -author: HarpyEagle -delete-after: True -changes: - - bugfix: "When affected by pepperspray, eye protection now prevents blindness and face protection now prevents stun, instead of face protection doing both." \ No newline at end of file From a0155b5b5424810d3e2a0201c065cbc03019577d Mon Sep 17 00:00:00 2001 From: PsiOmegaDelta Date: Tue, 27 Oct 2015 12:42:17 +0100 Subject: [PATCH 12/13] Updates Travis' macro count. --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 68e636f875..aef54a5295 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ sudo: false env: BYOND_MAJOR="508" BYOND_MINOR="1293" - MACRO_COUNT=1224 + MACRO_COUNT=1223 cache: directories: From dd855b5259783abab75370c0175263c05f797224 Mon Sep 17 00:00:00 2001 From: PsiOmegaDelta Date: Tue, 27 Oct 2015 12:47:35 +0100 Subject: [PATCH 13/13] Compilation fixes. --- .../Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index c6320f94db..ab8b8070f9 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -299,7 +299,7 @@ M.eye_blind = max(M.eye_blind, 10) if(mouth_covered) - if(!message) + if(!message) message = "Your [face_protection] protects you from the pepperspray!" else if(!no_pain) message = "Your face and throat burn!" @@ -311,7 +311,7 @@ /datum/reagent/condensedcapsaicin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.species && (H.species.flags & (NO_PAIN | IS_SYNTHETIC))) + if(H.species && (H.species.flags & NO_PAIN)) return if(dose == metabolism) M << "You feel like your insides are burning!"