From fbaeb13039b95a849b4aaf493491265f846bb7c0 Mon Sep 17 00:00:00 2001 From: LordFowl Date: Sat, 9 Jul 2016 18:09:56 -0400 Subject: [PATCH] Vaurca Patch 3.00; Fixes #496 (#493) Vaurca filtration bit organ added. When destroyed or removed, oxygen becomes poisonous to the Vaurca. Vaurca lungs have been made organic. Vaurca take 3x toxin damage, as a result of their rather alien biology. Vaurca lose additional blood when an opportunity to lose blood presents itself, due to their open-circulatory system. Vaurca organs are no longer all robotic, except for the neural socket and filtration bit. Vaurca organ surgery is now possible. --- code/modules/mob/language/station.dm | 6 ++- .../mob/living/carbon/human/human_damage.dm | 4 +- .../mob/living/carbon/human/human_powers.dm | 14 +++--- code/modules/mob/living/carbon/human/life.dm | 31 ++++++++----- .../living/carbon/human/species/species.dm | 3 +- .../carbon/human/species/station/station.dm | 5 ++- code/modules/mob/mob.dm | 2 +- code/modules/organs/blood.dm | 14 ++++-- code/modules/organs/organ_internal.dm | 10 ++++- code/modules/surgery/generic.dm | 1 + code/modules/surgery/implant.dm | 2 + code/modules/surgery/organs_internal.dm | 4 +- code/modules/surgery/other.dm | 1 + .../LordFowl - VaurcaAlphaPatch.yml | 41 ++++++++++++++++++ icons/mob/alien.dmi | Bin 94920 -> 95475 bytes icons/mob/human_races/r_vaurca.dmi | Bin 2756 -> 2769 bytes 16 files changed, 108 insertions(+), 30 deletions(-) create mode 100644 html/changelogs/LordFowl - VaurcaAlphaPatch.yml diff --git a/code/modules/mob/language/station.dm b/code/modules/mob/language/station.dm index bc77254dee2..89c54114632 100644 --- a/code/modules/mob/language/station.dm +++ b/code/modules/mob/language/station.dm @@ -72,6 +72,7 @@ speech_verb = "broadcasts" colour = "vaurca" key = "9" + native = 1 flags = WHITELISTED | HIVEMIND syllables = list("vaur","uyek","uyit","avek","sc'theth","k'ztak","teth","wre'ge","lii","dra'","zo'","ra'","k'lax'","zz","vh","ik","ak", "uhk","zir","sc'orth","sc'er","thc'yek","th'zirk","th'esk","k'ayek","ka'mil","sc'","ik'yir","yol","kig","k'zit","'","'","zrk","krg","isk'yet","na'k", @@ -89,7 +90,10 @@ if(!speaker_mask) speaker_mask = speaker.name - var/msg = "[name], [speaker_mask] [format_message(message, get_spoken_verb(message))]" + + var/msg = "[name], [speaker_mask][format_message(message, get_spoken_verb(message))]" + + speaker.custom_emote(1, "[pick("twitches their antennae", "twitches their antennae rythmically")].") if (within_jamming_range(speaker)) // The user thinks that the message got through. diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm index 756bbe6e83a..89107fbea28 100644 --- a/code/modules/mob/living/carbon/human/human_damage.dm +++ b/code/modules/mob/living/carbon/human/human_damage.dm @@ -210,6 +210,8 @@ return ..() /mob/living/carbon/human/adjustToxLoss(var/amount) + if(species && species.tox_mod) + amount = amount*species.tox_mod if(species.flags & NO_POISON) toxloss = 0 else @@ -352,7 +354,7 @@ This function restores all organs. //visible_message("Hit debug. [damage] | [damagetype] | [def_zone] | [blocked] | [sharp] | [used_weapon]") if (src.invisibility == INVISIBILITY_LEVEL_TWO && back && (istype(back, /obj/item/weapon/rig))) if (damage > 0) - src << "You are now visible." + src << "You are now visible." src.invisibility = 0 //Handle other types of damage diff --git a/code/modules/mob/living/carbon/human/human_powers.dm b/code/modules/mob/living/carbon/human/human_powers.dm index 241fb8cd03b..ff13a864225 100644 --- a/code/modules/mob/living/carbon/human/human_powers.dm +++ b/code/modules/mob/living/carbon/human/human_powers.dm @@ -286,12 +286,12 @@ if(istype(G.affecting,/mob/living/carbon/human)) var/mob/living/carbon/human/H = G.affecting - H.apply_damage(25,BRUTE) -// if(H.stat == 2) //no gibbing humans but i'll let you gib like a mouse or something that's cool -// H.gib() + H.apply_damage(25,BRUTE, sharp=1, edge=1) + msg_admin_attack("[key_name_admin(src)] mandible'd [key_name_admin(H)] (JMP)") else var/mob/living/M = G.affecting - if(!istype(M)) return //wut - M.apply_damage(25,BRUTE) - // if(M.stat == 2) - // M.gib() \ No newline at end of file + if(!istype(M)) + return + M.apply_damage(25,BRUTE, sharp=1, edge=1) + msg_admin_attack("[key_name_admin(src)] mandible'd [key_name_admin(M)] (JMP)") + playsound(src.loc, 'sound/weapons/slash.ogg', 50, 1) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 50244bcfdfe..73d0174433a 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -440,24 +440,31 @@ var/failed_inhale = 0 var/failed_exhale = 0 - if(species.has_organ["breathing apparatus"] && src.get_species() == "Vaurca") - var/obj/item/organ/vaurca/breathingapparatus/L = internal_organs_by_name["breathing apparatus"] - if(isnull(L)) - poison_type = null - else if(L.is_broken()) - poison_type = "oxygen" //if Vaurca breathing apparatus breaks, oxygen becomes poisonous. + if(species.has_organ["filtration bit"] && src.get_species() == "Vaurca") + var/obj/item/organ/vaurca/filtrationbit/F = internal_organs_by_name["filtration bit"] + if(isnull(F)) + poison_type = "oxygen" //if Vaurca does not have filter, oxygen becomes poisonous + + else if(F.is_broken()) + poison_type = "oxygen" //if Vaurca filter breaks, oxygen becomes poisonous. + + else + poison_type = "null" + + else + if(species.poison_type) + poison_type = species.poison_type + else + poison_type = "phoron" + + poison = breath.gas[poison_type] + if(species.breath_type) breath_type = species.breath_type else breath_type = "oxygen" inhaling = breath.gas[breath_type] - if(species.poison_type) - poison_type = species.poison_type - else - poison_type = "phoron" - poison = breath.gas[poison_type] - if(species.exhale_type) exhale_type = species.exhale_type exhaling = breath.gas[exhale_type] diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 6c2875409c3..cbe965960d1 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -46,6 +46,7 @@ var/list/unarmed_attacks = null // For empty hand harm-intent attack var/brute_mod = 1 // Physical damage multiplier. var/burn_mod = 1 // Burn damage multiplier. + var/tox_mod = 1 // Toxin damage multiplier. var/vision_flags = SEE_SELF // Same flags as glasses. // Death vars. @@ -234,7 +235,7 @@ continue E.status |= ORGAN_ADV_ROBOT for(var/obj/item/organ/I in H.internal_organs) - I.robotize() + I.status |= ORGAN_ADV_ROBOT /datum/species/proc/hug(var/mob/living/carbon/human/H,var/mob/living/target) 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 edcaca59065..01a4977660b 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -280,6 +280,7 @@ eyes = "vaurca_eyes" //makes it so that eye colour is not changed when skin colour is. brute_mod = 0.5 //note to self: remove is_synthetic checks for brmod and burnmod burn_mod = 1.5 //2x was a bit too much. we'll see how this goes. + tox_mod = 3 //they're not used to all our weird human bacteria. warning_low_pressure = 50 hazard_low_pressure = 0 siemens_coefficient = 0 //attempting to mimic the old insulation feature. @@ -311,13 +312,15 @@ has_organ = list( "neural socket" = /obj/item/organ/vaurca/neuralsocket, - "breathing apparatus" = /obj/item/organ/vaurca/breathingapparatus, + "lungs" = /obj/item/organ/lungs, + "filtration bit" = /obj/item/organ/vaurca/filtrationbit, "heart" = /obj/item/organ/heart, "second heart" = /obj/item/organ/heart, "liver" = /obj/item/organ/liver, "kidneys" = /obj/item/organ/kidneys, "brain" = /obj/item/organ/brain, "eyes" = /obj/item/organ/eyes, + ) /datum/species/bug/equip_survival_gear(var/mob/living/carbon/human/H) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index aefc1f10c6b..16d26c05b7a 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -873,7 +873,7 @@ mob/proc/yank_out_object() usr.next_move = world.time + 20 if(usr.stat == 1) - usr << "You are unconcious and cannot do that!" + usr << "You are unconscious and cannot do that!" return if(usr.restrained()) diff --git a/code/modules/organs/blood.dm b/code/modules/organs/blood.dm index 7758c12724e..512f2c35c0c 100644 --- a/code/modules/organs/blood.dm +++ b/code/modules/organs/blood.dm @@ -126,10 +126,16 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 for(var/obj/item/organ/external/temp in organs) if(!(temp.status & ORGAN_BLEEDING) || temp.status & ORGAN_ROBOT) continue - for(var/datum/wound/W in temp.wounds) if(W.bleeding()) - blood_max += W.damage / 40 - if (temp.open) - blood_max += 2 //Yer stomach is cut open + if(src.get_species() == "Vaurca") + for(var/datum/wound/W in temp.wounds) if(W.bleeding()) + blood_max += W.damage / 20 + if (temp.open) + blood_max += 4 //Yer stomach is cut open + else + for(var/datum/wound/W in temp.wounds) if(W.bleeding()) + blood_max += W.damage / 40 + if (temp.open) + blood_max += 2 //Yer stomach is cut open drip(blood_max) //Makes a blood drop, leaking amt units of blood from the mob diff --git a/code/modules/organs/organ_internal.dm b/code/modules/organs/organ_internal.dm index ecda3772830..04d4bf35918 100644 --- a/code/modules/organs/organ_internal.dm +++ b/code/modules/organs/organ_internal.dm @@ -208,10 +208,18 @@ obj/item/organ/vaurca/neuralsocket/process() parent_organ = "chest" icon = 'icons/mob/alien.dmi' icon_state = "breathing_app" - robotic = 2 + robotic = 0 obj/item/organ/vaurca/breathingapparatus/process() return /obj/item/organ/vaurca/breathingapparatus/removed() return + +/obj/item/organ/vaurca/filtrationbit + name = "filtration bit" + organ_tag = "filtration bit" + parent_organ = "head" + icon = 'icons/mob/alien.dmi' + icon_state = "filter" + robotic = 2 \ No newline at end of file diff --git a/code/modules/surgery/generic.dm b/code/modules/surgery/generic.dm index 4e43816aec8..52858b63e4f 100644 --- a/code/modules/surgery/generic.dm +++ b/code/modules/surgery/generic.dm @@ -55,6 +55,7 @@ if(istype(target) && !(target.species.flags & NO_BLOOD)) affected.status |= ORGAN_BLEEDING + playsound(target.loc, 'sound/weapons/bladeslice.ogg', 50, 1) affected.createwound(CUT, 1) affected.clamp() diff --git a/code/modules/surgery/implant.dm b/code/modules/surgery/implant.dm index b20da362caf..741d82a250b 100644 --- a/code/modules/surgery/implant.dm +++ b/code/modules/surgery/implant.dm @@ -127,6 +127,7 @@ user.visible_message("[user] starts putting \the [tool] inside [target]'s [get_cavity(affected)] cavity.", \ "You start putting \the [tool] inside [target]'s [get_cavity(affected)] cavity." ) target.custom_pain("The pain in your chest is living hell!",1) + playsound(target.loc, 'sound/effects/squelch1.ogg', 50, 1) ..() end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -215,6 +216,7 @@ var/obj/item/weapon/implant/imp = obj imp.imp_in = null imp.implanted = 0 + playsound(target.loc, 'sound/effects/squelch1.ogg', 50, 1) else user.visible_message("\blue [user] removes \the [tool] from [target]'s [affected.name].", \ "\blue There's something inside [target]'s [affected.name], but you just missed it this time." ) diff --git a/code/modules/surgery/organs_internal.dm b/code/modules/surgery/organs_internal.dm index a97184f35cb..90c77a4b790 100644 --- a/code/modules/surgery/organs_internal.dm +++ b/code/modules/surgery/organs_internal.dm @@ -228,7 +228,7 @@ var/list/attached_organs = list() for(var/organ in target.internal_organs_by_name) var/obj/item/organ/I = target.internal_organs_by_name[organ] - if(I && !I.status && I.parent_organ == target_zone) + if(I && !(I.status & ORGAN_CUT_AWAY) && I.parent_organ == target_zone) attached_organs |= organ var/organ_to_remove = input(user, "Which organ do you want to prepare for removal?") as null|anything in attached_organs @@ -309,6 +309,7 @@ if(O && istype(O)) O.removed(user) target.op_stage.current_organ = null + playsound(target.loc, 'sound/effects/squelch1.ogg', 50, 1) fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -383,6 +384,7 @@ if(istype(O)) user.remove_from_mob(O) O.replaced(target,affected) + playsound(target.loc, 'sound/effects/squelch1.ogg', 50, 1) fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) user.visible_message("\red [user]'s hand slips, damaging \the [tool]!", \ diff --git a/code/modules/surgery/other.dm b/code/modules/surgery/other.dm index 49445164501..7c79e508ddd 100644 --- a/code/modules/surgery/other.dm +++ b/code/modules/surgery/other.dm @@ -89,6 +89,7 @@ user.visible_message("\blue [user] has cut away necrotic tissue in [target]'s [affected.name] with \the [tool].", \ "\blue You have cut away necrotic tissue in [target]'s [affected.name] with \the [tool].") affected.open = 3 + playsound(target.loc, 'sound/effects/squelch1.ogg', 50, 1) fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) diff --git a/html/changelogs/LordFowl - VaurcaAlphaPatch.yml b/html/changelogs/LordFowl - VaurcaAlphaPatch.yml new file mode 100644 index 00000000000..5e7f347e8b0 --- /dev/null +++ b/html/changelogs/LordFowl - VaurcaAlphaPatch.yml @@ -0,0 +1,41 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# 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 +################################# + +# Your name. +author: LordFowl + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Vaurca filtration bit organ added. When destroyed or removed, oxygen becomes poisonous to the Vaurca." + - tweak: "Vaurca lungs have been made organic." + - tweak: "Vaurca take 3x toxin damage, as a result of their rather alien biology." + - tweak: "Vaurca lose additional blood when an opportunity to lose blood presents itself, due to their open-circulatory system." + - bugfix: "Vaurca organs are no longer all robotic, except for the neural socket and filtration bit." + - bugfix: "Vaurca organ surgery is now possible." \ No newline at end of file diff --git a/icons/mob/alien.dmi b/icons/mob/alien.dmi index 09b335109497de11188b8cdeeb751ef7bc95582a..1425245e198192492638ad777480ebbd5c81377a 100644 GIT binary patch delta 9968 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 bE#n9x$3&g81-_sl@T02uNTFEXBIN%8HS?(0 delta 9409 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˗snlV2%+NuUTta#fY>TJ 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 diff --git a/icons/mob/human_races/r_vaurca.dmi b/icons/mob/human_races/r_vaurca.dmi index 4500ec2bfd933f88030b3298cea450d32ab14790..975b17a92fbdfc8f9333104c6dc5c80af3226c99 100644 GIT binary patch delta 2207 zcmYk72{hE}8^>?=-cm~bk;pc-YpEC#V;^fG#wO-Eo z$HoKn@up8>sgaYyzx>K3n;-mXZ@AXFhK!1=KXLQ588pNHbb%Tc-C{*k~jy?{oYk>h-?1PciIV4++iO?62 ztt}>WH|U}Ixf9Fjn!fBY4|iqN*e^PoIbE2x_*nkyp*x|BW2m zKVU4YMmyVF3yA^}h~?0FUK=@*R)y_Gb6lbaQ=c?0Z1!b}G?|t&v$5?`U-4!}NtB|3 ziVMN7U5Eu9W!58}=+sVw@tD>u?|X@}(dCQS%>(S5F!zBSDVlDSQl{+;kmXt$HXPjA zH9w2#s(m12U9jkS%>qoEG*;8Crn(!I(Dv74jhqYO9PE!74)bZ{IXbnwON2Uc z6_Wt}oH0uyz8~d&o2Ldp+0>2=(V|a}dN`?G9$Jd(`NOOEJxQ}Mw|8dw5blnDno7oF zf0mYTMlwLN5JjC5I$1x^OHpguqEL>e%gc=gtjuzlij501h&U(l2&Pq`McH_e!Ss3K z>b?;IgW4lwwqF6v>^pMrMH^4A<~kZTVKukb_%daQgteKl{f}d*W13e}c99E0o5A{u za)b=xVSLZ9lDYX(9iqiITV!i!;a_GI$r*K2pungcNO@?Mpw~YnYd@E@QStPpK~Keu zSMP+8JA{O{jM#CzneuE9rP?NKuHX<%uj?CLC;-AF1JuzF-MPSg^_kBQ5&j?cxPo&h zXLVg7kYL6MLC1p^Kl_rFwBm?skpJtDjQBPeGv+}K8=98`fI@9imPAcM2TA!+4@o(N z_&s_^e?RIXIeE6l&pF;=CkB$7(feLWHzc#9J1y019+z|->_=3}I>vJ1(IH?W)r%st zKp2mDqEkHq39c5ZqDsHe~0Yme$EDJhX&KVU4`ArN@N)`YhH91z_C6jg;Dv8UZ6bY!PQI6}^|_p4O7wh0 z5M{T;#H+YXs#{)i@%6J_Xl)M7AwBfMR%$jQ=T|m*VrR$VUJ!kxNCtS_+9D!Q{kq=Y zvr}Sw{EPt{zottyy-D5T#(s>_EsNI~CfwGzVfvL~7uJ_hEUr_19z*-W0;Ra>;W50z;a0Cu7V0q+>RVmRFnRjbt&gw?6-HtHNk^pZU5us^`m$sW2fBYeBOTq&K9&%1C- z0^f9~Zzf^~6&>`u!k4lt zVM6&IFkWKa4a^op_Kb;~#+ag7MRk)QKa;F6zP*;)9j8Z@MKe(U@-OC{2eGPlW6Q z{u8_d1dJy3LM-$_;rD?HzzLaU7Vd+EAt+q`_X3b8%HZ0q7vzD5^6I#D3DM~dVWcjn zUwRbK$NNL=HItzoTox{<=1i9}D`Trv@N9OHL<(6TO3$;(QgV?Qcco5vPP8A1E=5>W zcM~K;eE4cm-oyeyC)LyA$Fvc)h4LX70uXgx=v(c^TJ|_VDR2+ry9hW|U<4vQ$-#F~ zu!}cFf3Z+MizKs9rmE{KlpGH3b7zX}J6+6X5OiL70p0tDE8y)8JhtzdJ>j@34E6+) z#vsV0!ja1iLMnVl252?e`S+hRRvqW+znTT+N%qn(@aQ_7s+@ua`081xKe2#i>?&73 zNTPe5lr{%s5as}<-N+D4>7&6nJ`^VR`zc&u;eO?T)K>!z;2hvk|8p;)x_TQ9rnjG9 z|E_3=_UNI(&x`jBLR|Y04g#@enu=lb!lMj-(c{|8>tpADLR&fvNtvuX4De&)O~k;t zup{=*uX|XZO)gNNwLNn=J->z**{}xlJ5O{{M!mKwt8i23s~R0PW{r3GV3^E``(x*t-WS3xs*OsdwUk0sSnNYybcN delta 2194 zcmYk63pA8l8^@JOlk3POroouZMBcf)@29U;>)UHR|MlDdz4qSEv)9@WbIZS58thgAezq8^ z)3K#Iw!G({tE$}Bqsc3-XimDS)K@kM9&#yU5Lnt_ZxccVx&%NcVsp#U?7KgZfJQ)opIs* zQdwSOFalKno$e2~Ou4%$yt#U^E}*Tk+9SD|Jy*yszZ6#=95cv!#ZoqJOd_1TyIGuA zACToz3Qp{tGbbTy@=6vuhS#Pp zf}$3Pz3qO@<s0_DZ~FM6)bA>0v!wdY}_*ko#I294 zc=B#;^A5AKUqfext}L(vk_FR#6Y2;AK;Hea5oHlnFH`RJ(?7NP) z8&xx>Y`5EoIymw%0c8@WEH#nN`rS@KiMcM5D*MTA+vz!PtN6M)w4m7{&;3}vv&}w0 zE^vtD9aM$xv~ExeuOG(J%j9wtpv-}`eBUT6wx+O7cZ=i7*-c5$-ULNG88 z=_U3$&L1hY=qgdH%G*#m82eYH{rMq~%i}Um%gRZe+D)3#`mIR7fMp|fc3yCeKa##f_*lmVy- zH+-|p!6Sqmuh4EatEC@|tKZUJqt-GnA1n^_L~;dkDHR;r;-mMIFTKrJhHyUqD|x`S zDIux+;LLht5{}x6YiNu!@PddzZ7u3_tge~Od<#HQCa7M#Xt4vme%5CF@KW8W*zFb- zsEbDO$TiWS1!tKjZ&xXJW@M~@szSpgAFVK1sMD#Cr0`4<4rg1ARHwAvZqHh~Dopai z=UqEu?!C$erAFpfTwFz6ol}EO=5hr*zd5tkqF^V>*uRo~eFMkU0<_6zK(!P83fzW$ zHQ|?5P|8(_LyHit&Jv<$m;PqJ5fg3}@XJgrDA|BaniQgkm-2p?Hc*NhTJUq$Fo9nQ zB7U8D`Pf%8U~^0oC-Vq{FJXF(;vwB{l6Qz}1R6-BJnNG%bGsyrM_>uMIHCl0KS&eW zjJ<=Gfc?WDVfESsr~~iIfR_wrK?How0-m5XZ~zI%0M034`^|Zhl~|TL?GeYG6!+d3 zmp1~SD(5|E&c{#{(&?)gMPnk4V9g-!*1#^sZwX$HKPU<_&M&uB;-4N<#08_qs~%<% zGzUcWqWJl(2Hb<~8ossYd&b#6^9E#Kl|>LQ*(zF=7?r6{^PXQg%d)gAeO`q?huf7x zK&R&t0nqsd?zEO6p|^%SzyddjqJ<81N2%zX9;+Vx+Ibnwe}Ky}Jlur^^j3ky3UA;K zaHpccM*VZ<&&zsWbkm53!yt`GoRBYrhHnX401$t<1dwY1@wpxEXvF5{A&`bUWV76e zY@(MVj`>9oR$j1pplWX&k`JdbVTiO>e;x(rJlhh1s@U}k014X7Jst1q+=&bMuwiy= zIn?P9kbR+ZTd`rBF{10CKIP7x)&f=~s1{mGV?O$x@8#I@S@0s3Kr_UYzrg`}=(?%* zI=4LVXuACvs=w?e$~@J4JfKhXsH8}`3UMOcDt>$R$qksufmf?so*p!nFfYWW74#DV zE-5Gw`ny!+)@2=fCd@o@(QS6T&iwiDbnO_;Batz(33=SEHuLHFr*Fo-`9m8$J4cdY j5=4n+8GRruk+pR5i{NX