From 6f1af000290f6a13de7faa45957686c5759352f0 Mon Sep 17 00:00:00 2001 From: ihatethisengine Date: Tue, 16 Apr 2024 08:21:25 +0300 Subject: [PATCH 1/9] init --- code/__DEFINES/mobs.dm | 1 + code/datums/mob_hud.dm | 4 + .../xenomorph/abilities/queen/queen_powers.dm | 84 +++++++++++++++++- .../living/carbon/xenomorph/hive_status.dm | 58 ++++++++++-- icons/mob/hud/hud.dmi | Bin 19425 -> 19851 bytes 5 files changed, 137 insertions(+), 10 deletions(-) diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index e2bd868f9a80..dbd8dbe7ce41 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -120,6 +120,7 @@ #define CANDAZE (1<<18) #define CANSLOW (1<<19) #define NO_PERMANENT_DAMAGE (1<<20) +#define CORRUPTED_ALLY (1<<21) // ============================= // hive types diff --git a/code/datums/mob_hud.dm b/code/datums/mob_hud.dm index 5e57b8f5616c..88785474bc23 100644 --- a/code/datums/mob_hud.dm +++ b/code/datums/mob_hud.dm @@ -422,6 +422,10 @@ GLOBAL_LIST_INIT_TYPED(huds, /datum/mob_hud, list( if(hive && hive.color) holder3.color = hive.color + if(status_flags & CORRUPTED_ALLY) + holder4.color = "#80ff80" + holder4.icon_state = "hudalien_ally" + if(stat == DEAD || status_flags & FAKEDEATH) if(revive_enabled) if(!client) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm index 1f37651b2c8e..1af29022e81c 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm @@ -371,10 +371,17 @@ xeno.use_plasma(plasma_cost_jelly) return /datum/action/xeno_action/onclick/manage_hive/use_ability(atom/Atom) - var/mob/living/carbon/xenomorph/queen/queenbanish = owner + var/mob/living/carbon/xenomorph/queen/queen_manager = owner plasma_cost = 0 - - var/choice = tgui_input_list(queenbanish, "Manage The Hive", "Hive Management", list("Banish (500)", "Re-Admit (100)", "De-evolve (500)", "Reward Jelly (500)", "Exchange larva for evolution (100)",), theme="hive_status") + var/list/options = list("Banish (500)", "Re-Admit (100)", "De-evolve (500)", "Reward Jelly (500)", "Exchange larva for evolution (100)",) + if(queen_manager.hive.hivenumber == XENO_HIVE_CORRUPTED) + var/datum/hive_status/corrupted/hive = queen_manager.hive + options += "Add Personal Ally" + if(length(hive.personal_allies)) + options += "Remove Personal Ally" + options += "Clear Personal Allies" + + var/choice = tgui_input_list(queen_manager, "Manage The Hive", "Hive Management", options, theme="hive_status") switch(choice) if("Banish (500)") banish() @@ -383,9 +390,78 @@ if("De-evolve (500)") de_evolve_other() if("Reward Jelly (500)") - give_jelly_reward(queenbanish.hive) + give_jelly_reward(queen_manager.hive) if("Exchange larva for evolution (100)") give_evo_points() + if("Add Personal Ally") + add_personal_ally() + if("Remove Personal Ally") + remove_personal_ally() + if("Clear Personal Allies") + clear_personal_allies() + +/datum/action/xeno_action/onclick/manage_hive/proc/add_personal_ally() + var/mob/living/carbon/xenomorph/queen/user_xeno = owner + if(user_xeno.hive.hivenumber != XENO_HIVE_CORRUPTED) + return + if(!user_xeno.check_state()) + return + var/datum/hive_status/corrupted/hive = user_xeno.hive + var/list/target_list = list() + for(var/mob/living/carbon/human/possible_target in view(7, user_xeno)) + if(possible_target.status_flags & CORRUPTED_ALLY) + continue + target_list += possible_target + + if(!length(target_list)) + to_chat(user_xeno, SPAN_WARNING("No talls in view.")) + return + var/mob/living/carbon/human/target_mob = tgui_input_list(usr, "Target", "Set Up a Personal Alliance With...", target_list, theme="hive_status") + + if(!target_mob) return + + if(!user_xeno.check_state(TRUE)) + return + + if(target_mob.hivenumber) + to_chat(user_xeno, SPAN_WARNING("We cannot set up a personal alliance with a hive cultist.")) + return + + hive.add_personal_ally(target_mob) + +/datum/action/xeno_action/onclick/manage_hive/proc/remove_personal_ally() + var/mob/living/carbon/xenomorph/queen/user_xeno = owner + if(user_xeno.hive.hivenumber != XENO_HIVE_CORRUPTED) + return + if(!user_xeno.check_state()) + return + var/datum/hive_status/corrupted/hive = user_xeno.hive + hive.sanitize_allies() + if(!length(hive.personal_allies)) + to_chat(user_xeno, SPAN_WARNING("We don't have personal allies.")) + return + var/mob/living/carbon/target_mob = tgui_input_list(usr, "Target", "Break the Personal Alliance With...", hive.personal_allies, theme="hive_status") + if(!target_mob) return + + if(!user_xeno.check_state(TRUE)) + return + + hive.remove_personal_ally(target_mob) + +/datum/action/xeno_action/onclick/manage_hive/proc/clear_personal_allies() + var/mob/living/carbon/xenomorph/queen/user_xeno = owner + if(user_xeno.hive.hivenumber != XENO_HIVE_CORRUPTED) + return + if(!user_xeno.check_state()) + return + var/datum/hive_status/corrupted/hive = user_xeno.hive + hive.sanitize_allies() + if(!length(hive.personal_allies)) + to_chat(user_xeno, SPAN_WARNING("We don't have personal allies.")) + return + + if(tgui_alert(user_xeno, "Are you sure you want to clear personal allies?", "Clear Personal Allies", list("Yes", "No"), 10 SECONDS) == "Yes") + hive.clear_personal_allies() /datum/action/xeno_action/onclick/manage_hive/proc/banish() diff --git a/code/modules/mob/living/carbon/xenomorph/hive_status.dm b/code/modules/mob/living/carbon/xenomorph/hive_status.dm index 22b061715892..55a4f5436c12 100644 --- a/code/modules/mob/living/carbon/xenomorph/hive_status.dm +++ b/code/modules/mob/living/carbon/xenomorph/hive_status.dm @@ -979,6 +979,7 @@ need_round_end_check = TRUE var/list/defectors = list() + var/list/personal_allies = list() /datum/hive_status/corrupted/add_xeno(mob/living/carbon/xenomorph/xeno) . = ..() @@ -1253,9 +1254,9 @@ if(living_xeno_queen) if(allies[faction]) - xeno_message(SPAN_XENOANNOUNCE("Your Queen set up an alliance with [faction]!"), 3, hivenumber) + xeno_message(SPAN_XENOANNOUNCE("Our Queen set up an alliance with [faction]!"), 3, hivenumber) else - xeno_message(SPAN_XENOANNOUNCE("Your Queen broke the alliance with [faction]!"), 3, hivenumber) + xeno_message(SPAN_XENOANNOUNCE("Our Queen broke the alliance with [faction]!"), 3, hivenumber) for(var/number in GLOB.hive_datum) var/datum/hive_status/target_hive = GLOB.hive_datum[number] @@ -1291,14 +1292,14 @@ addtimer(CALLBACK(src, PROC_REF(handle_defectors), faction), 11 SECONDS) /datum/hive_status/corrupted/proc/give_defection_choice(mob/living/carbon/xenomorph/xeno, faction) - if(tgui_alert(xeno, "Your Queen has broken the alliance with the [faction]. The device inside your carapace begins to suppress your connection with the Hive. Do you remove it and stay loyal to her?", "Alliance broken!", list("Stay loyal", "Obey the talls"), 10 SECONDS) == "Obey the talls") + if(tgui_alert(xeno, "Our Queen has broken the alliance with the [faction]. The device inside our carapace begins to suppress our connection with the Hive. Do we remove it and stay loyal to her?", "Alliance broken!", list("Stay loyal", "Obey the talls"), 10 SECONDS) == "Obey the talls") if(!xeno.iff_tag) to_chat(xeno, SPAN_XENOWARNING("It's too late now. The device is gone and our service to the Queen continues.")) return defectors += xeno xeno.set_hive_and_update(XENO_HIVE_RENEGADE) to_chat(xeno, SPAN_XENOANNOUNCE("You lost the connection with your Hive. Now you have no Queen, only your masters.")) - to_chat(xeno, SPAN_NOTICE("Our instincts have changed, we seem compelled to protect [english_list(xeno.iff_tag.faction_groups, "no one")].")) + to_chat(xeno, SPAN_NOTICE("Your instincts have changed, you seem compelled to protect [english_list(xeno.iff_tag.faction_groups, "no one")].")) return xeno.visible_message(SPAN_XENOWARNING("[xeno] rips out [xeno.iff_tag]!"), SPAN_XENOWARNING("We rip out [xeno.iff_tag]! For the Hive!")) xeno.adjustBruteLoss(50) @@ -1313,20 +1314,65 @@ continue if(!(faction in xeno.iff_tag.faction_groups)) continue - xeno.visible_message(SPAN_XENOWARNING("[xeno] rips out [xeno.iff_tag]!"), SPAN_XENOWARNING("You rip out [xeno.iff_tag]! For the hive!")) + xeno.visible_message(SPAN_XENOWARNING("[xeno] rips out [xeno.iff_tag]!"), SPAN_XENOWARNING("We rip out [xeno.iff_tag]! For the hive!")) xeno.adjustBruteLoss(50) xeno.iff_tag.forceMove(get_turf(xeno)) xeno.iff_tag = null if(!length(defectors)) return - xeno_message(SPAN_XENOANNOUNCE("You sense that [english_list(defectors)] turned their backs against their sisters and the Queen in favor of their slavemasters!"), 3, hivenumber) + xeno_message(SPAN_XENOANNOUNCE("We sense that [english_list(defectors)] turned their backs against their sisters and the Queen in favor of their slavemasters!"), 3, hivenumber) defectors.Cut() +/datum/hive_status/corrupted/proc/add_personal_ally(mob/living/carbon/human/human) + personal_allies += human + human.status_flags |= CORRUPTED_ALLY + human.med_hud_set_status() + xeno_message(SPAN_XENOANNOUNCE("Our Queen proclaimed [human] our ally! We must not harm them."), 3, hivenumber) + +/datum/hive_status/corrupted/proc/remove_personal_ally(mob/living/carbon/human/human) + if(!(human.status_flags & CORRUPTED_ALLY)) + return + human.status_flags &= ~CORRUPTED_ALLY + human.med_hud_set_status() + personal_allies -= human + xeno_message(SPAN_XENOANNOUNCE("Our Queen has decided that [human] is no longer our ally!"), 3, hivenumber) + +/datum/hive_status/corrupted/proc/clear_personal_allies(death = FALSE) + for(var/mob/living/carbon/human/human in personal_allies) + human.status_flags &= ~CORRUPTED_ALLY + human.med_hud_set_status() + personal_allies.Cut() + if(!death) + xeno_message(SPAN_XENOANNOUNCE("Our Queen has broken all personal alliances with the talls! Favoritism is no more."), 3, hivenumber) + return + xeno_message(SPAN_XENOWARNING("With the death of the Queen, her friends no longer matter to us."), 3, hivenumber) + +/datum/hive_status/corrupted/proc/sanitize_allies() //remove deleted mobs etc + var/list/new_list = list() + for(var/mob/living/carbon/human/human as anything in personal_allies) + if(QDELETED(human)) + continue + if(!istype(human)) + continue + new_list += human + personal_allies = new_list + +/datum/hive_status/corrupted/is_ally(mob/living/living_mob) + if(living_mob.status_flags & CORRUPTED_ALLY) + return TRUE + return ..() + /datum/hive_status/proc/override_evilution(evil, override) if(SSxevolution) SSxevolution.override_power(hivenumber, evil, override) +/datum/hive_status/corrupted/on_queen_death() + ..() + if(!length(personal_allies)) + return + clear_personal_allies(TRUE) + //Xeno Resin Mark Shit, the very best place for it too :0) //Defines at the bottom of this list here will show up at the top in the mark menu /datum/xeno_mark_define diff --git a/icons/mob/hud/hud.dmi b/icons/mob/hud/hud.dmi index 507ec0dd485b0976d8c3e00c3a88c55a87f329dd..5bf56d2ab0c727f5716fe06ec4da700124d4fffc 100644 GIT binary patch literal 19851 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 Date: Tue, 16 Apr 2024 08:26:51 +0300 Subject: [PATCH 2/9] ignore the dead --- .../mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm index 1af29022e81c..f255a0cd363a 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm @@ -409,6 +409,8 @@ var/datum/hive_status/corrupted/hive = user_xeno.hive var/list/target_list = list() for(var/mob/living/carbon/human/possible_target in view(7, user_xeno)) + if(possible_target.stat == DEAD) + continue if(possible_target.status_flags & CORRUPTED_ALLY) continue target_list += possible_target From fa12cb740a00943b5ba6fe33812972f93614f762 Mon Sep 17 00:00:00 2001 From: ihatethisengine Date: Tue, 16 Apr 2024 08:35:58 +0300 Subject: [PATCH 3/9] ermmm --- icons/mob/hud/hud.dmi | Bin 19851 -> 19476 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/hud/hud.dmi b/icons/mob/hud/hud.dmi index 5bf56d2ab0c727f5716fe06ec4da700124d4fffc..987a0ffa79ee954d2a2515581c2995695f4a5310 100644 GIT binary patch literal 19476 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 literal 19851 zcmd43XH-+));GG5DhOC8ib4>nN>iGGkXVo^NR!?aq)C$wA&H=(pnxDC9Vvoz1gSzO zA|h3))X+l@orHws-O>Mf&N<_`AMS@c#(h7qv-jGo&AH~9ZT&W{?&+wpGV?G40KlrD zep?>^j=-pYObh@3*e8w10{~rdprMKPZF{eWPnXKPM;QaYAm#XMqe){gucet$}5LdrVDD&|#RYHdTm z5|bHR z&?mPT%1?%6+254n9qL2T2|B8ukt!+F+z((VbRLZQ@$z*_8p`W?Or4tg(*>iz*6XhE z*wdY>QS2hPGP@(P8c&&9$}hU{#Z0I6EzV|4XDRV^u~_+DKgl+7X|H|nniLJKHOlkY z{zb>{-4-0D-*5KxsV7__+w?MTUoV?MHla;RPqFMJ(<||rmU8*3aXohQ4C`%P?+sxU zH^Iy_G`#8A$ZN{i&!?3Vq?HuRzS%5sB>uK#>ls>EwB>ZgzC9HE7{Ksi%(?OX!Zqi28a$^t zxbSIw1+lO%&SF2F3fr7kQREw(LYFwyb#?Z|wxz_=yOt=mCo&sqw0>7R`RU3Rmj1$b z7Y%Od8=gN3&DWObk?qT2{)G~Hxww4t_G`|g0*~V8PS9>}W&1uk(>2ti)nQQs%;MWE z`(GvxOE*L0UT-{Mz3{-e<>l)<+p+9|xJnJHORf=`tZ9}fhBeQo?*xB4tjOKD%)KKl zxFKwIty$)&g78y?p`RztAN?9lmnJVBd|Q&v3U)-7vik9>3%d^H9cCFz=YA6&I;Q<) zAUf)myGQaTx3gQ(c!sLPz}vU@j$8YTtvYSv2R?-9>3KYLwKe3h;8!}$NzeU*;f`t( z{bwY#_^~y$xQ-hvwoLkS4g7O88}4~O!p#U4udTnV{MFxr;f*l)%9^Er}|1F?kK92#QQDr zeo%{<^~g5eH0s#b^KUx@>{W`gpjm9z!WJk`lEBoF*Xfb&A;P_rkR*6eg5%a&eP(;I z;+>aA+tmqM534LxUB-m^=ub=aAKRi+dM5PdT=U60Y_>-)gq1#fd&{Kx$9Zwvx#RKD zPnfh$Uwh`RSB4rJnb=+>wE7}?gX6#1tL{_Yy|{dRXd!rf?{Xqgq%*LQY!ZeXw-dk_q{z!K>aAMV+z|;hI_7)!gNmS~dFn#`La! zSS-7}ZN>U5gVp3>wlEJFxO;|h*a0COKW(xfmH5T9+yR%U95i%*80y^Lg4~xHCsj<*0m9hW%ZtCTQ$Y{ac^@+OnVXNR>qq}L>uf^Jt%dsh^42_Mo zV%V|)D0 zdBSKAu09uYxb8P6@_1}Nmmy|nvUnnpIAKX3>ZW-b%#6%w?UT0_U@`KKM?Ma^D9q!~ zyWMr|B4`7wu@EmRp4ao+iGx)Ks7t)HrDf3#hcu^nN9SmU7E?+v*Y|#;1YFNjgkmz+^KF>1RYm3{V46gBcoDnlhM z9=XX%{N`!4iA63>eHUnaj!j2eh4BUE9qg{;LMeov(HgJZeiC|p{L?8Rd%>=_6s%UC z#Nc49+nBs1rYM;WI(OW%$~C#4v{}FJw4lW31jhx(WGCXz%?T>V(MJz_6;;>#^q@@u znz9$pb$z!1$=4W>ipXIL&*xYsO6ayMBFYZrT@lnhJPQciK+0)ZJ2f>RT&z)%#FFPBx>KuT^q@A*jpc@vS36H zVX|{OB7;hKLnz6R6QEyts)tyK41Zd_0Orw_U33Pzyji-oi& zExk@Ek~Xp_t1j2j8-(}X{(w+$ATTzMMIo4vNcJ@|laPFHG#r*F$}1POrUK?WzvG z{F=+gtNSNI@pjI~)~Eu~nG$rG_5P_t(&0o<%A8hTIFxcrN}0fZh%1xv{^fT^E2bZ= z!K3J%C+{|%_u*F9@&yRtl@)GcY=&2i{m8}m)2EEkl>6Ry{;x3%(QR80mJOox8Y z;-3uOw{&Wcp@oP%*1~7j1%459!WLWV&yJ>B*7?RARQ~?DKN)mag?+ewe2n6_=DBe* z`a7v~!}Be2>viyihom&JY~$s@V!$F3Wtr))xAabIxiWM_eJ6RIWy{1!$pNwHVr z#y_?0vZCG9AfE39orY-3Qy0RT(Im?Sa%Mrlo6y=2C`r z?_xHBdl=#Geya9@?ySbLEPXGjZ1%{oh>W&@3IK>&=Zc|j4ynHM0UsPK!H3L`qipVevgHlJ~0cUw|i|@aVM*93~4Y@HO5!cS5Mh& z^HoMXM0@DBQX!!-8=AEBcAh7X{D;6(2MnZ3SR<= zq*Sl$`>!=?Yuf%V*fhntkif8_vCnP zY@~AD;#vrrezYvtztfUkWzre35FX(YO5`(thkghu;3Pu#jhO5Yv{Bk5RXk{A#sw+q z`FqQ_UCXX5EF6*R47vVW9CNTq*}(@VDfLTIenI>OYZO-H+9_Llrvx?7rb-in=;#QN zD<+-Ckb=`tm5I0Z4W0@*;k{G^j9Fdq5^j?V7UR7?JCYHzTD|3-tbg{L+zx+{ zWsPo*n{^S(NinbsijJ~~$@T(*H~29(XI*fB`A19odx#S|-Kk1vRTd{KmHgHRniwJD zlfmw>a57`v=z;>`alHE>zC#gRWlFA`FqfO9_{K@5MN5TPobmp7A|{&?Ne&ad27!i; z)zwGHlj}9Z3L5TK1y!|`*EU`;SG;FpVy9I(qJPWQGjqA4Rze&$bDT?oYb0jJ*^=MM zI-;sIJiYpvYNR2l(s0wDI3JXoIMU3Xx?c3ViuvKrcU*50oFNtMXs-!3%K$sSE_jUmv!xA(l1P)8VhpL96MP$96&}6PlyDspG@st@z8K#v=b~KWbuzjiv z2U-W4^R9%5?+P3@?h}mpMlAh`$6Vu)({U5Ky{Wzg>cCm(-AD~GH>1Ujc$GAAuZL^7 z+ox`~rr>AN`0WT#3$98lLsu=YNcV%l1{l(*RmX=54I z@Oc_+4KP)pEt$~&#n_7P_VC$f$bjxZo61-MbgNwiBZ(x~4>SJSRk6ilV`a!KD;F98 zZ?}}AJg78s6>dR_wp^h+YK9S(tM*5swB$$w0Lo7k)G`16UGvQjW`0XqaKNW4))be1 zhwd~d6O$$+@#Y!4L05#(lwwAR)M4wD*N4rjO>el@^F@`4Ne^bFM8Kc3ez-oCpuMGR zH^!ys%EXF{22G{#$Gg$6u66XvX4@!~ykA-M-cnqlo8&=yKJvV#RR!&1b$zx(Fi1_f zp$&N>xTWM%D?X^<5YdW(>~EJ8RizVe5s{Pww;*c=qd}J&!A8mMvw@_RbXRltS$`6N zKs?;Wtwtducr#4dJG%=5ywFzuUg_Zz!mgmTlDR)(+hFATp3C+dQVP$$5UQ z%Uwe0)wm<#(`xhhkV=Ux=3<>Rx+u}}4f@dB$(kH;kRNUZZ^gQwP`<3NWSfmYP^vPKV zHwOesrp7|DL75%^76B7F*8j0I|7mspZ@V`b?Bi}jOlM|b$8amru+g`A$?mv7Qkiy; zuViP5p;`~s06LZdNxO}!ot#*b);*2QQ(@B3v?8Cc@CUG&?}wVYv(qY8%>7NU^3@iHH!P%d z%5#J!(PMD;O>5h(&Q@OoM52s*Sl-PDze)4%rYBnc`Ir|W0mCk0>4(Vf*d*%j3%#cp z3a-rNta}Od(Rh-F_o*cMH5&~pD-sxot0N`HqjE(od?uELh`)IL4$OUyA?o(C)Tnl7 z^&KjA2-AlT(cTS_5ZOi_vO)27#8D-F$*<%)ma%Mq80Pm=*R8*hh%5m)==GUhXm8dj z;t)XH^hW6mw{v|_B`Wn1uA+A-sg7iWA_~rK;_7aECrC1jg*PmmcYc2PM@dNMBej4W z!VjsxGZ67cMPE%wjjEXEUP9R|q5zb#B20Z8oI2qUY^a2BUTdR1;HixJDS-a1XQcrl z&;yRV^v6%?Wp8g17X=(cNl|LtphrWxLo=Z9OwB*rKJA~1M$v<-qEf?Zh$hGo8aYIO zseR+g(0Osol1Az8^8k*|daHajAm{$;b9wnMGK8z zA(B$KtwlIc5TTD5SfLHmjHyKLR|+mgT5J1!MuLiJi4fwkJtRjUA`xSDTc`H=Vgdpw zsc)9|ni>d1YTr0?xt^3nqR3tR&Az%`0p<+0j6U>Y-;My2x8WZG);4$Db(q7b!co^`jBX*ES$mfX@kckND(a$pHtfr_?KedIgAK|jk}AKc@CR~Om@&scIX z^8>I4zOL?z_^;@PL9soSXD&NDt&}t!-BHm9;+=KG?Q zRe4Wx3opH8{OH^WmE(Y|Ou|*M!L~7J!JbZ+Fsaw6q)8xKJ*RK+Tm7Z1%wb=+p4gYX z>^Jj6c;7wH=~dv4;_sz~!rCRqnC$bzl-n^C0o#v6YHUAv-RfDptKt_YCC34^uHUd< zBcie~vK%)gw=k1txr0iPdi#@yTl+q^30-it2FJ{`(j)D@zdrL+5H#1;F%^izK#e~8 z1WT?JucRY+r!>YQAXBHP0!n%?iD@v1sR-)wI%rG6h9e|2lB_j3<;48uDYFt2n;kPE&r&ZxyyG!qpP&(=Lf(8K zlW=`^z~EO&>)!ZBU|FyaKf{P`rYaHiJHC3h`&H|Q1BV+=6`j>v%rd?d#IJ-}8oTtY z-__Z(by_p!`E2Ke;JxRM0Vbvep(#fqifLl9*@LGp=xp6$tQXn!Z+FTTT*{e`@EJhO z4%Qu<*6348tlH_@YK;+&C#Csef~yu?$FCl1h}Gx^$vpdq%$v!W@w|PESBLC}2~mD!mt!4@SH z(|W7X{jb>~JSx8Pr0s5&J86Ee0*xVA2GHv_a}oZ}sP}KNmYLf8{zU_FW3QPJ|Lrd~)D~3Yui^SBCoQ($AYGqOhEj1$Z)>828hW5; z*Cz|+!`esp$UPV*zuBY&A9V1Y81J6LD#Z>8DADu7#)T{0nsFj57wns(vsd8Hm*s=Dmj+8F} zGyp1cI?{SFriS$SXw!I&%+~&d^25OP%*WfwXTR9A9kC=Wb$sz|>WImfR5WDa67LO4 zu4=7y=Kupc{>u`a*Pk~#^EJ6U|F-Z zGm7_b6@^3#Nr!rNFs#%mW8wkNbizO`{Bx!COE=-vUaw91VjZ(yP$Tue4;kLyCV*xd z-92(WQX2s9t8a`-T>3joG(s7Z*420>Db_*ra<2ZKp##Gc2-$1Qokn`izt{i(!^-mn z-ohB!I6N-ixOu<^o&@!LL0RzsBR8yz7viLi6RUD`wqj(>^w z%|BM=ixLe1GT=kJz}8`RltB=NVo=AB*Z1HNnAxCl0bgBRk>j5urdqQZ<0z>QSdRnV z90?_X($)B=DlZNWg4IHVWNc;c-Lycjys~LY+N}-xfxU}xSo!|?X#C*tO7nA;yIV`Z zTbvidV#c3>+u-GYHN&{54sxqwd1begeE5hkG+VU}MC1GrIatN}ytd^LNBHt zzrYS)YIYMe8}+m^M0}AF01}@r?2Q823YCBca5*4oA4U`$z1=U!IebKG>m-*2--Y1s zDsYF5nk9oSgrv{I?{w^M_`vY*+pojjrW?MNsA(f3#iED_%=yd4j1?N}>F9y!CQ0p|icjmFGY zS<&7EDQY#Tr#NpKhnRZ<* z#>JaiBsinZ%eyMnVF+xEQ%~n&-MhCAp%|Lwv-^DShO&XJGK1M5P%<~cMf@|=U*^8s zC8C`eMY}AM1PPNgo59pce#h-|#&f_lPd1?T6#T*61C`NNKY#hN z=iK~FljyB~GO#q*CEzYdKBoaTCYQgD@!cVquSU{uaM2$J8iS^<%)Plo2-|d9wTKlf z6+6tOGj?xC;yMR3UMld(V6n5+s(0mHJbWzgkMUsMsN!}A#aOM%qcysmJkNn?rXe^E zAY3I2zvXJ1rUh)e_T^wIkx(Pv45IToixsF9?pi@dNZFv$K;nPXyxQ_4eOd-U{|X?@ zJ!BO8*|wRRPivRT4s66m@kWb6+AwpXrEtdYU`|f0i3XJphcb7zZT8b>>Zt&YFaB2P z;mP2brv)D4s~LpB4*tBPR%V4L@$0EXrn4O<08`5UPY+p*KYHrsTRofRu5o*CoC9!p ze-6WUQM0+Uw-J*k)cD*^9Rt3@S5dbKR}qS^IjpNmm7e)>W%4{Niu2$71q^}IRcRlS zFC5ETQGrLb>v>S+58NC+)6LJ%J!ka)-o~c>Pq%44j6W2Sror`TBWR2`1jYMb{qV1l zKsnW~-z>`mwEy9cH|j@EIaSx0`=JV>nu8p77N=f3j?V(7h5oDU=@s}2TQqK#QJnCX zvH#f+4uRUV|JN*<6~QeD?k=eE{H|#qnm8koIJngwTo+ zS-_kBqVLZ@e=G50+T6ST_gtrl_+U`BR1hwIherx0bky7hlcdr^IlGi20MJ`Q6?N1= zUV!}rX~(AD-?-<_O4Wfc;uoTLu{(?Ca)*ijnf5yvxJ$hirc`;8jTMx5AkC#n^p)1N z)}gYtorDT2cfqexR8yLv;d#>dhGDxr)tCdhGvMjPm`jIjask`%hzv02>->y2BU^3> z;GOj6*?Ciw(moi?4gYkWQb=^&0ymaX%nEAsvumszY}%ARNbsCl_`In!I6GyqM8%2) zoOU)NFF!3#L5F5fI_U^$t(BEPIZ*lt4u;62wQJnpqy>8KPoJ>zEINM$G@xw-O?N=r z0pKF%@R=M-UV2bX@Z`~29%l(N8u7gWuF&+z7RtIo{KJ z$21OadU5arzh_0IXf0+e5_0ITL=cmzn9v3ie?Ai1nul~%T3I8VKEXW9c2@4-oHJ1t9tOMya zhHVyWhO%Jky>G!St=}PiW}~3jpx@P&07qZFLZ=Cv>ONnN#|zQt*_tM*QN;z18GwUl>N1Mv5J0C{s8~jm*!Q%oTX#**rUB~(YGv4L?Sinjw?R8WzQPvqXKHCh~>S0 zDTWnyytsh}F!lbQap$(b0OpUXzpiqb;_P;*K- zcOBd{JKSR{hXaf1GhbuA{!b6~6EuqJX)YmhD+*3MeiWrLm+gvdx6b!ApjMZ(sO}Yn zz}ikYY+fMrgJe)miQW)+3PiHs-3($JAbKuNy;o#f(;Q`3i7iL0<*jU zUX5|%xBLI`5}XgUebxpa=t)$cPo5WrHKP7wGTP}zw!vzgKf=~qv7X^Jngd@N6Itnf&Cqj&L_ zHcg;#aYSOJ-&li1M28~PhN_zS@fU7`o?1f`@-V&#JjO^cZP>+6EBs+uA&mf9bVW`S zoUDrt9D<~@9H@^v$Ga;dejinm^W+^d(lBmMkh?lW5Ms$FrL`TT6T!$sS7AH*vd~q) z!touBh;L!*wY>xSl9;V85usnk{Fbs!qmoiyZh!cd73#2u8;NnA%-r@9PfMw6z^foIO0b3~%*~h;Q zEcNUcuHWg?5>72n(#tyHvm~&FahE4Qh(b@iQUUxOFk9xK!5!{$<}S90kVm=aF%KZ( zTP{3OSpA9e-29-ucY+e6R{AHYn9<-=IcSofdzD-F{)aD{GV~1Ds1^G6_g(m$@4R8= znnb*1QzV#`lj5Q%CO((aeHz$pxtkS{(`(#LjlBk`xKJa+#QV!lIXHBQW2Im&LG5tW zI%xv8Tqf1&7iS*Z#bBE&VdhbM*!_@4+C8lwi;#sXB0e^v-gy|kGdZ{RWT056X*BJE zOazxy_p#G~&ZR@r6j8C$(mRGVlVPR1>xxJ!DWN(I@~0Lc-dkV#iiNuO&Ud1#)YvU+ z9ioPOS3c52rCj7D$c;QM-Qea{x2#>9ber&AN>i?_8hfaC__n=!i+lb_BFGKa=H^R= z!}w~!RO^ZQx<^`s%yMw+O!X-TolIx=T4k;vrVoEk7`D4I$|V*V!^MS~o`ue&c!gk~ zWdA!4n2)K)Q8)TDTGqY1X!*X%rB5G@AB9%_j6$r3%)d()qj z1P9SU+I=qYr}8?6XY#egpPAHNei-rv6Ch4WVR2_cN@~nwxX$4{*-r=Nhx=s3cz`nx z=Ys0r+Q(M%dsH$M2q&`^x68gsI_&S6gMI{#=r8<%6s$6|*4JyE16lHiH1Us!OhQcE zr>MNr#ZuA6Ob|R#iB->i2mv{1S(`ik`hFGt(-%XvmtgvDq3%`-AkiRvfRd5hlbrbr z12>7O!#1JD%T~4 z0aL$cQ}?HNI1*G%e(g#{a`SU{_<3H1gW`AN_vTCAY4NQdC^luPlD~H;O508Um|$Eg z^hin2KB>asJ@-V3plZa|hz25~>sWnV`$HWXx@>^{xMI2Ei8<0@`S<6&Lj=9z?JW0$ z>7M36L&u8WBUPlK#`%EvnGYo@@ySP+)M>!%qXtXez2f1goLsh&&(%;|M6-4|*kSGt zyS#P%H977u@Mt^Ee9X)4yU*r@c0yuR*3jO$L@}S4))*|!=LQ~e)YkK`>i!WL)JIKD z8zCjw^q>ii_qllN0SziL+m6P&dFs^8^aYjGC)P=MH6_A}&>X1L0_;p?DkPjAgav?s zHZ_ra3k>b&wbpp}SK#~-7bPBD9c2MDvuF*Q-M`nLChde=BXP0$}Avj+eqAfGC7F<0NPZqIAbk7GkP(tQ)W`U*CQ( z;(!9Z^4=)T(seLM%6gcIr$KG?(p+q!8ttga=go}3=nJ-cM~A3ZH8O-2@P72Caw9&C z9e~9w0&zAIPdAkz07@`t&&+0saL5kT58LN~HM~7zodO||WYD{A%#!U|CLRIDfUBrK zT^+}4V-SAHlauu$;-IaqDPzc^TalA)z(Nk1oR=*7Eu~NSI?pJ6j_76wWQ{)q%u3Rr zmoiVz7N)=$zdhpV-UkDb-X7@o*worY@-CFyVt!|1OOVY0dprPejQrOaMM^L(g10l! z$g2nw`jcY;^>0OhQL0D944BJ}s} z$|p+&GIS;(0fTnsP4yGC8i}u|z0lm!9YlS|b>7p> zQ5CT^ulW6nOGG1uDH0?dP_F>Y-gVeVnju`I&HKPwnlWILvE}_%%j{=kSzsay$fo1I zF>F_Uqk3J$jPwiwmY8T10^!BDPv(Tj4cp*eHRYvh5B;zfk!z~0JKP|;JKTGI|?F5N*d{r)U z!vJ(|P!%3vKEjonKT-<-`Srv*>4@lUP-FqKekbOP#S>N>H^2}_DD@){1LmFpSU`#e zOJO}I$6%<$?XeExRqo{(`~jl;{B>Rt20BL`(*|IOm83IB0}3Gk%rDB)A8!S@AZkoS z&46+WWXSP8V7+%u6ojb2Y7{O1AY#B&KQ$})_xkA)D(34m`h+$>@#C`3NXBmo!kqbB z6wlQOL1<^u(!4L}c}+2d(mY_09jkgwv z*jaF%|3#Aa`{i2|MVT2qbtQ{Irw3b0B81h*)z2WwIiRTh4F){D5jsh`jvuK*54n%z ze*q^#Em)3J94mFp+Lf$W1{0oIJiixkm#~{ve8_7AjY#ylp(vyf;TL!PgLIKMq@DRN z)t9P>3Z}9jQC#OGx4AnOu<23__uJCbK{U^+mXX=fg#!umFTO-c-oXNgbIIF3shLVv zcSPS@aY5)^DfCArMv7N5LXww29m3&6YeM>nqCp>BIcffq5U&##E|ohi zO^o*prAGOj@>;u8N_d{#*|oRv@Pvt|2L#DFNb6P+1i7W8i*Qzi z@y_3V;ZlX`vmH{>yNO?jeMC*v@{I3^y}zgRXDQlspOEHD5u~wLoL7W)p+#Tbhjn7bK#x4uX7N56>aCL6anEx*&2M zfycXiQ?2_ioxNRdiOpTxFBvC+I1U$|S-JYpO_^(57?LF?P0o|xb}2u~&-!%uR`3sM ztEo&Tu{cPBo7ucMlss40F135zFV1>7VDbbX<@3izF4rD==Rn@y?^hHk&DSwoPa_wz z``eNi94fnIyQD}F=hT~7bjMVBLRBi!SP}LjQc#B#?Z8{cqxhFczRB`!+*Ffn{3(e7 zCm($jJ0e~SiKxU<_kuzP#@Fr^cjra4kgeLqz;xBH*Cg6ItSN3uAPFmW2f2obT}6d{ zsKh*xM7od;x8BP7qG7(RG@xh0ThsT<+#9MrOT)kW(~OSSe&TRL87%~od860itCfG? z$9_)y2XN0%&3#~fp4oB1CX=Aw;{6G{Vcr(1QiD-hIv0!CBgu1v3IpJ^3`;r!3dBp= zztZu4!Byum{k`4V$M^73#jdds$jYGrxL#|oLFFZj{+NJ?f)bW~M&$tc|I$8WFF6y; zb_eHr?jYhVNL|fqqZ9h|l4r%Ol+QmjdImOBHmR5(Z;GUoHdH<~Uf08CmoG-Y)kXa9 zIdQxTy0o*|t#slSsdFgtV-#g8P991Dce$xI(&98IAs$=3ABnS9KosnwL!ug@1q+_u z46nZ#-ucNuUCh>-RlFl4a&_F#O(C@05LiQTTa7h^4;;Hm96hk|q5!_q2If+?v<}m1 zeqs-6ybWUWnXGy?@qjb%-sI9+l>}Z#hlB`Df7iFv@ z!$Hk3xbnHF{gx1StJ){h#zPQ|1P%B#d_97+=#n-#3u#zT-F}#SB%)G5f-d-b@`Bn} zfm6lW4-4VisN#rn$4QOcD21+`$3EsHjs+=evD{W&+lIMHyjVPV-XE*m;7)j6qENie z4N7~aTuAFIr07I5>9-;XFb^#{t=F8}uaE?bU$_#m(O;LCr zZV9BkAnguI>30P~FN=jZGjy>pu%+he_MCaB|7>7D_t?VF=zQ)p78gVwFQ26lWawWA zQ_bu%O5fMJ)jr=PtXa7zhem_i-bk)tgs#r9A<|Sy;1gVW#ev%P0IvO&&i;7`f*;Ag zc*uH-cJNpdZch*qy1=+1MR=MvP88`XO3h6QteP$PlzzICGGM(;Xdsi?-Qna`JSi8r zDFfnIL{2#x!ta9EZd>);~pe4e@5ul*;e;t z?_RLWfnBIqB9&Fgxo#96J1ePNv#%TI(|GG(>tJk4Dnv3zf)a`D^og&ZA=fO-vPYDp zv*Ud(@*%g@wvELj9L6|cjsopEtdRYV4Ib|%aRY{LY(l>d=di^=+$|08!fo_RgvUd=X_x6>B-$< zFg4!y-756zG|x=D7h1+$0`0er^{pE8yCeA1a~toELx(HrtsgLV+tWNyq&E`4>~Gcu zk~vi zPslgc&IQD`vJ7nYrLJ{*llFT`gGoi({aYlj01lfn_^^SE?Ive1xy=Zr2b|~nb>XW8 z=M6b!5eD~StCGW>)C5PX>A?s~>#k~#pB)dF3v+s6xf<|piVw|%;U|2R=?&lG^zk$3 z#W&?^TMl0{RgLaE;H#DSPFaX|sAh(|v%&5hXcM^>5DyrCmt~sn`RF>ZNTlj(qY)ray;(XcM z*g`@}E4^;SU7yQ`Am%CJGfT#W`*xwMEl(1y_IdqJO(HZTPfezGuFLgE?IX4(W;Ai2 z*2^wDB5Foj^|xjgp1YE`G?FnKJYo|XDv&1)^;TzZ_aX0TvCZMHfKyXU{>+@g+QNge zlX6-GCK6Z&S}YkwlOXlTx^Zt<(i>>!z8whwyyfk6pFVeQK3IH8Wb?!?B=<-?LHEOT z!Nfnzq3@$=?~r@toJcxk*#4r0`&j^0IVJ5608_l(bZ;ItdmVfmEb{d60ZV?W(mWH6 zd7t?J43(qhLB*P7KnrZBg2y=|NC4b1F&SXdtmKLV<_W@koH@=&PuX=s6F}2Wm$y53n{Cco+k4> zn`z~*u3r6)yVX#T`7CP!;I|aFqI6tDIfM1K84rzgoh$9`J)`z6O<{aP__7{>`bP~n z;@fp4p$Bu?Gq+!Zi^-pAfhJdhG2$Pk-rXOYR0OIb!NGQ?6DNK7lIE1ekNogUhxolc z=@tb>h}p>0Y4BxRmb^o{4Sv7>w8vf zO4a^b?jgm6CXbS#kE>l9=8O?B28P;58dzWr;!w(kwU?@`L<9`@LFJX4eYp(BPne?x zrf!;osbaC?9i$2!8n(0RkGVUMWB~Xkv1?%C)a7S{dY5#>qO9|7gB=A=3mjMY*!V*? z7;&wclUxXX$AC6GIKX@qD%K zK7qJ1P2{^BUkb;1#3F&l69vOmXBdF2Vk#^OjFlbg&jJAB&jz0BHaQYSzxFJ&OSI6j za`*aPRKg8jFT!YG1{w|Iewv%Pza}porJkj3(`01j&+US_ZN=w%T+o%S6Y2YKz%i=wZ`e%j3)1Pt0kq{k8Uv!ghI^qKRq(V z#>=1a)`#&KT=5<-{(+WG7EC*Xs0bCHN)#1+QNyaO;ESu@lHX?rwrfJ4@b};1{K!l7 z4s;sEZgZ!0lzfJI?(Y6e3JPk8N@#BBnX)cX{4j4By$PuDsWY@_Pa!p`%9Tl zZo03?Q!U1H;L|+RFBKZ}pt3#js>F8)0^W7Epu#PYxVcSoZ`{VnQOp^vBwEA$wB@n+Jw3*)thiFG_}Qv%c9m;_>B!v& z$-x_hO)S_7gKbO4LVJ+Iv+lkUrI_pe_$GcoB|TY8qth2HAENH+R?oQ+wG!uNIt7;b zs#%ZsrqO|HzY=E;789@a=>@xP$*K3n6djQ0*S7=6WAoc2YNzQ~bO#nXOpS6Tr=2%o z7r35&W|BRqVUK{ZfYlVH2)MTG^p>foOn+Xm62wD%qp--ptuFBE9hHYCL?d9qW^_p( z;c1lXlr9ke3YO(rszks{>AJwqq0~ca;N)#E3)3jz$aSL}1a(b`P=6JvT`>SxTmPq+ zm+QvZd^uCnpU3d?I`DtB#Q(~cJ^MjfQFLqtI(DI({+i8TMdZn-kuFTS^@Qj(P3L!I)19 z4lmM^S!1js%E38=fOV5O&5Oe!pKJ@gUZhUWsf0uLl}+d@8v{>BMr0@r3pmPRGnqv1 z!=LSoB#xQ!wX#R^{pnOTBIE7#1m4r!*8oM~zn`vo2rn}IBh!prH`Gd*6qWx7wcsn& zUiw1r>Cbaag8{&UU*1ra+1-zgk90d3)Yy6$ToiPfo9WvnpVv^e(s9e^ zRn7NAsy=$o5@I~@gD;3gJ*$sW-Ut65XRvpcY@XqWZ4pl;(wmV)eR8<~c;!8_( zM7WHJU`pWsp2v%*Cmlm}F@dM5XQmTxxQ!%nMHQxu?%ztx4liBZ$O`=w3>|ntw&Z@@ zBWU#O?kMSr$1we@d6(|irU=v$q(joCo+*Jk?H3qk4BbTu^-PR$cd~9?DN{iO|0{&` zwN_*5{SIr{#^uLFcxLb<#B(me0Is^7g*mH+Fh`J8<`wErJL5e!+Ru0Qv^)&vOS%x| z5IS}tBFYjQ)*nfgpS7%U>MbZy7upX4GN?>x5(%4w`W=#J`|>5+`Qu2GA-gb$r7w*^ zJH@>#yGts;ve9shV*cI)w&pT9)TQrc=#(bCni!q2n`*ls9aDpOhJPPWR0a@k{Al$pTB6z#Iw(H zY-?>x#1(PP#4ITOg$3pyG0=EohxX0;@{G*PoE*|3R?DTwc@KG~)3kSPyL#A06^fJj zOwen#eY+((1OQAZ>i-2O#B0oaK`nt%JBpf9SQ`40r5hK>oi+Pmt!fr_Hyi7Ga( z1`R29aV^#ph63vwY?Y940E(6a2FrS&s&P`2)4YwZ-?}fbe)@q3(C7u0->$g&s(}BZ zUor?6yTS6Ep~U@nv1G#aW+8RJI}m*Tv|8!L^qyJrqjKt54=qYdTmjG*SOo}4?0}>m zKyyN)nAX{KjM{A*pS- z&j4aBa{gd0=0FU_pCaKki4YL(1!6JT@h{|HuuB)$7CRwIl8zlo{NTy|-*UF&(I@|6 zCvpGAUu-adju9t#h){ujkpK5Bv=#}~=;OU?y$j z*{ko+(0$9OZ;i4;a-0O;Kqk=X419qvP06177N@+4OWa)_r9zO>H? z>dxX!g+WcUlxwDHccw+l`{odlKqOCi#@^>YxXp%tz!-MH9Fw=Q)EE`KLxz7%U*?W$y*V@37C*MOFW(qjhv~n=Uj_pIPI_Q#f&nHs52iC+43xB-gy7|0S zPwmmaCimJ0?D+=>5*1Y(Z5GJu3(501>nefhn+mBzOgv6!sZ(mLRc>vNk_5XDtWzGM z&l{*B>DM;`vk>| zi$LNoKADk3jCx(}-*X%LS9>NZXe7&3>jZ~!mB?ygg^%)G zkdor&b)A@rG+A#OvoZNrtLq?!7nBwEzlaSKUWL4CUg^BHXQ?Bj#RY2(Pkj=R^ng+l z<5baL;NCr6K{nb2&3ZEPYfW^?y-zpuzZ~ITI?@?e!Ihzr4E41*?jVvkzGnId?F=Gb zY{8DH(AY!vm8`75UGJok8IIpn1{eGLKavLZHfQ}AZBXSNcgyOFyf=Li57MgdUg=pF zu~`q4^P!(_cnBZwMjS2}*E+{LcM&&@MWR3VqrdcSY!1RZ&=(_vSSK^4y4W=U!8 z0a1$`AneTlQgW9W?g(%Jk-B%niK{bFMr2d&>YFpIPe8yp1m&;@+=wC4H`2Sf9nttd zlk}WrmK$YI_~?ksvd>)G=AKu%e;>Gft6{%JgTl&%3`JW7b{J%zn`7yio4fY1sn129 zPk+xYXJGnsR77GHhyShVM>-k2b2o3>W@emw%OqWPMdsyYrj>_Pfw>a2%#p>DeV37E zSyN03L#`t`#|LrX(tF^*0hfZw#FX^5b^Htpx}arp=o?jm3kmt>>Z=y1-B0@;Gsjbc z;eurVgJPJcsN>~jzT8UcXS9E<2U(eZZjQpq;!^<)j1JEofa7B>{U5q^b8zV=3W!-` zEo4}^cI{c8ITnWBgkJ|XENup^oE4DgQaGZvQb|K6<5p0^kxE-lt_{r3&dd}Rspe7o zuCAo}nEgU!fm((~*3YPfx0-2PxtrIfH{~r{!1;ak&FjFK)HYt}W!Ll;8USrhINBxZ zwTOXxdwg_sw3hY$`ocbY9SxuYHP0-~_(@@FA{0G0+Om1}%{O*r{!WkiPw6*II?-SK zM+6uh;4$v&)AD?`L_9ik{-fsh2`hlUyK?QC*1F6E2HV%(?%vFNZQ9$Tz!jWxfuZb? z^?OUm%G?(D?OSx09k?}5_olC-XbQ_w;Hn33JWD~N z;ljcIV5~m^_FI6dVXhi$0BCg+u;eWM$J4J`=~^xx-pvjilJn(S09{kJx)#{iDOlvm zXtHOO*YeWDuruYL!(tx2xi)39?ez3_y3<^NEA<)vTz+Ek1GMJ=xb`~U{@ha^zNdGQ zmzq5RZc~`_H1Wg4)iu__XF(~QubKVN)g=t8fJ Date: Tue, 16 Apr 2024 08:37:58 +0300 Subject: [PATCH 4/9] :sob: --- icons/mob/hud/hud.dmi | Bin 19476 -> 19605 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/hud/hud.dmi b/icons/mob/hud/hud.dmi index 987a0ffa79ee954d2a2515581c2995695f4a5310..8d89fb7812641ce67d21d1cef9030c877f33e7e9 100644 GIT binary patch literal 19605 zcmc$`2UJtv^DlY;5d;NM1RKSmA{`Y4K?opNK$@s@0t(WED7}OPQNJRnfPge1C;}qA zi1zV+69>%DvLa*>>zv(N0=vuDrDp80H_8XI2P z#dDAcf}mYjF6&%_Aa+gGANO_$f*g~E&O*?(cY)W%SDZhN}i^L9acK#>3Ij6^(g zLS=U&_GdwuFTx=9QJp9M`Fl|^(INSIL7#%ctxqX^Kjzzcg?9mg;kP|&Sd@I<@J7bX zjkdu=G5nD)W;1KQ)Q*VV+Dbt zI~r*RHXWXXnsudzbkwO#KXcOZ@|}45weA__=8aF?OX>xCr*&N$n4y>wJ13z9WnN#^ zB0D*nq3mGS1mBy-_#)0j=7qHl!NJK1KTRH*Wn`RJKAL*S_3owZlg2l8V%K&2emBJq zB9;5^h<%ecIi_`H?AvC>)VmxW|GXGlUE=t?52E{aQ*(Y15Z@PT8_jL+p8alfnD{E1 z?vSa=_t%JP-8(2LREzF&Uhf(XDYQxaOkOPD%+njTnSFV>?9oeFzZ1KQqpNXG;me!H zcNpht??IQIdiu;IQ%~j*;mYne>3ejzE4K;sXoZGFdl_6)u6!Ys+*szA_xizoTJBxv zukDBS3q)?es8jhspwi7wM^~xP{rj0$<+|hM!)N1?&Q~4xkafRxiY&0!lX~j2byrGs zU5ZP)K=h7LsU4%){fDDp*6q6T!?ov>cCYr2?MLsebb5TKS|mKXx{_yj$L}KQ!r;}K z-c#5;_}yns@#Sq7CJueR(;fCIKofQ5Zp0HJ{R024^tS|d8T;$8*5dn~g}>x|7h+=K z`Jh)pT2DTTtgGA1d9CLCiOOFRwxGrGcX@Domg;XeaD2yeunve|1ySG58tsr zES|SK>F9G=$sH2&S3Wm|zEmuJd-R#C)D8*Tm4o}2@(1d|;?>W{q};3Cl(5wJwx-tF zJF~$3VaKZwjs=A4MuwJSmo;*C;0n^8Y}U{Z^_xJO4=lM- z-(U7x4b|d2yspL_YZbu8I|Db_JROK{`4&~XW5ea@h{EzG>>&)6%c+0%x9N-szp_>! zlE&EFUblzAH=#5C(7qu5?#<9HiBz@Yp6cmsSq95ay|q`^uSQnWAy2 zik>0A#+Tw}r$+p7N`}sqEVhsPldjCRWcv}1w)<@>J@HJ8R;&8mV=A|N={MXe(9NSf zI;{hO#GxxXTG#zw6UTy3*H@%TW%FS93fzt zJz{B<6DO4OYH{G4dC_xawqXQk_nbl<&=%h=?7*<0O8i(@=&>?h0~)Tv^Q zx|tui^D?p766fTY+PS$h5$B*iU4?eLc_;Ne4xbcvIpZ3;x@qRsrH$oT2^egw$`47d zIpfyfL}-rLYckDTi9js3w6^N%ymK4KH>h134gbG`}PV9l_7DcLNCO|>YLNZ z=jW4A(NEBR$&#?*fDyi-!uxI;t7?mtSQJ@b6(>6fDHRxDHOO%VC|x;Rb+z^O*FpJ~ z=z)BjjDa8Zu2j&^OMT`3rV^}%{uzYM^>VEs8mpHemj-Nxr@gd^JdDnPw+f&d*!Jp% zU=?83Di!0pS_Td>FW{=$t4QBn1q7&cCk+W1KL1k`Vuh{_VK}FDQkM=}?jm_m?!aqQ z=GUyJajU~_vm+WS*+%C&nXThB;JPOxfoluSj0IeR?xi8I68oTddv@1%}O70*4!T#o++t9v|P8)Wc8ebs!nFDJhG_h;T> zKay=06*E+2X1F){QCQpF`>6`BQ#IAr`6ERaJm$Kz0{w{61H{3fN*L7I1#;b!#-{bf zCptQW2mF!uUmi+kzfAb`R$RI=T;w?lGc05NdmW1$DVHO=&kmQ(f9LEZPr<%CY3<0+ z&+z*SWbJ$Y(+>-rt-}w^p{hWiud|mjgNyfRZLX30USXf-pfC#>7_pB{crd@Q`l~Q! ztY4P}`fNU#UbI<3-K^7POuMTQ*09v88}s(+flY;?>JAO7#Nwk}abc$rIu0EL!p%lb zHu7$WU^5+^@c^Ha1>acALQ!LQSkrKs87c!gK$LO`u)_frtunb z@TEztt*yL-#=55Mm7|1Q4lY96LoUa_fXdP76L^KdP~9#tZifdCY3BPhVFnQo3wd5@ zFPf?$bjv*=TltK^=NG;xqpH1xp25HDQd?>KzKi-so6g>$p;V3dksmW$6zgf^;Kv&` z4?Ft@l6l4AX=lVPX!wQa2Cvv0Kz(aIH8T+L+D9|g%@9=+bcybSpimPVZ}(EIRu`f( z8bxKm92_Y)x~F(~@U~-Xsya-Jv~ZO9^;_pd5plEOa|W$F)DqFFk1S3I24W6U5$m6Y zlW3+VQT|`xavWS|X{ND5yS_K|k8UTjD-P~DmvC>>VZUtMhfe*#e2Q+85ImpkR7>{_ z95eboAGs=a@1+8ar7}&)t&Ahg3fIhM^raI50$EfT>>(HbD>sNvBWV_g`V=A8-^qc8VqfNje3j-W@8r{< zcNVa<5QN3~SJaE9n1{8>Gwqf#PNJhF9yc{^V6$Hm&nrpb6(E~Pyw95Cd;NHMaz{>b z2Kc^4-;95K2dwR8@~~S$Mpm750d96UBZB5g8ebMnm`6qb1-s05I4W7y+j)Jo=&o)Q zZ;?#M+t;v`nOd8f0*jK&=7D-2xO_iU1I*AatWqjxk=Kl2bcTK;O0>wG5wrN$E*PxX z53dpZtqi`oN^D)Z{bs1l%`B#X?xO(MHQ`h7hlSm)MXY~p5>uu0e{E?+l0)Zh_>S{6 z1JvdRITcE>>9u$@tk87nV zq$r;XwxTwws&z8;>}XRwlWS|ts{&GZ%ri>{yMPokp=wETf~=v*`{7%FyzmhxHQuYI z#R?aukj$eshKqI+Q8B_8GTX?l0XBBK&LJjMrcW3(PYuy6vfj1}f_7)TlnN2L{+wcs zOSFGYW`i^tdYKT}Mfk`t6@t6!R*bMGmNf?Pz#{38Qnh2O>$>MU(sAA6tYALNoHhJ5 zsl5ULzx*l!V6fy0V$`lf6`8nzM)fr{iz;mmDq*A@ztocrY(ReS=G4QK&F%{Rlz^Ps zGOrs5vH4?$G~*VWxk4k_lJF3BWn9efyy&J+M=%ASj zRc0^VLq^(4N4r_UfmXjzNWNq+c$@<+SIj_mPc#msO2yPXplxb5G1pk_)N*MNjSKM@ z(QaEt?VMdlWVY@K(7W#@YjE?iTj+^!ed(GZBLzdeV(sRUfFECO>*zS#V@^t7_MpIU z&NMS;iXW2KHdbA!eTXrcxJVz9)`4**;vnYow0c@RvsYobl~Y;ldMmS?v$1K#NaR{G zvwz24V7Vg?IlU)1c}C+VvrKEqOf@ODZ!8_o71oNkVR9C%!3SFFV|0dbk^z`e@>;*J zCJZ)!$1aCA^QA+31S+Q!-Eh(5~IUcE!o}OsLT}gU^@!) zWS+iKkN`wLdVOs+MR9%q(8tv%!p6tUZ!(`CJ%!M55F&h$98+r%6hm(03I0 zxUDj7$*T-Sq$>Q?y0^Ll8!e~IbC`ZlX0HWRFwy+>xK%p0ez2zdE8Bky@Rn8zB^W#%=k z=1z?`xze;-H!6Z=v$?7t@Pb67@Lfz5^RxFBu#|Wvf6a|HttQno$;|U)ti`S|Q`R~n zlyElpIuI8|$-N}rcT!him0$qWikz5J1g|WWR{ne{8x)^Jv-STz z7POBYow8`_87Gz(pqIf}qtMYQKRi021YBwpu#MP`PuBgl8y*{HiFoG2rx!j@Aw8>4 z&|G(he&9IbHUrK_1?mT6w?Yh-} zE0x*!{50VZT|N%ETy?!gZS`I)`#Z0*s$)pQpGwAv(bDuK95#sjry7aLD+Z7Q7 z6+DSKr92;f&TyL9B#A{;QDqcx&Aj<*OKNana}V`6g|LMQk+$v99Baihu56rA;@bP< z1RBzL!4B+9!j}w12nsp(AJ&GC6PPl^CtFW1ux$gD;tk8(OdCUN5ae|tdFXRx;$QFL@vLWf-vugB@DA`|Oe!1?GJ;jpafP)%U9@l0QsC?Fe_{DI*JYL`arDX+97f#_b#x}Kul4gr zaVY$+GA6yTyerav0V9eTiNy47;)eLTaxYCEwZ*JORWldun^#Wim53(BbhWHf%8Kcz zyt{Db3da)y{b5Q2GeJKe_O6U7=XfdlP+MnQO5#ZOK*O|~qtmo-(t-YUD~v*3E5aOc zvp1#yp;UerW27A(xWwzl6sAlFZx_XgGT*OZBAD}ZKmJxLwLP$x^xGOKVf|fgLe1)E z;UU;iBMF#TR##JbU$vsYMYhxX@ZH3QrdLGRz#5u&NG^EHGHEE0YB`eDjA7f8t?=u1 z!e$-*FKvy#+HsvI_$wY!ro@PGQ=_6+`Y03V*S7B_BwHp2NwE9ckeS3#uqC(;0YgbjM4X*RREyjMh zqo&E4vcZ_Bx8YdzBh||tfewb+?>drl zsdJrPT7o${`>7l!NV+6=N2^bz({UWco`h&=`z*d+k~i?x zmvs*EV68F@ahf{s=8}b*bDv>2tGayzF#wa004eWfB06<1Tx^^bB2f?UbZ2R^>& z7<~~hX&pQ^G(7Ts&)>wB*S!v&*L#VlCZHzIkV~!%*bwlxEA0`4UN*Y*433}*KZN6$ z_&h@DRhm^CJLR*%X^IZWY71Q75wMwZP;w;dwwi7KARn}Jfs5NfXXtIOGiJN0m~a^l zC((|{o??pR0TCKq{kWmpsmt{hu{_%C&R0G;h4P5t{dYJ$Y}(CUL)0)U^eev0p?us> z7h5PB;GOXm@LqMnuYQG+&573E*eXeEqLEaV-G10Vdp+3r9U(I^asrOF|BjE zuoeg8Z2}z;WbiOQwo&e=waUz$#+@pDq1xKIl87k0u(@WWCiZD~ZnE>B_#^2TS*q+e zx2B-6Jv~x(MZRiXX53L2bF2nID-a8IaA_vyl(S@gM6kXEmq*_Nxu>w^9Bu7BSYo2; zLz08R%$PqejrYOVqa|V8*+IymLZ|e(^2gbE8Vo^AZUZa&F-Y&h);sd}&7Vg}LGafE zI$_$X20Mz%nZXcYo9!8tsdWB|%TFTLuHyRv3F@yea^&f5s{Gmd#E%+`cKcnsEw3-s zSEsqY9_XKb^x)%n2EC^P`J6<*_tI}6`vTYvu0OZ{f~ua48?&S_`bc)P2i`^EVr!0( z`q9QXF-ga<7s3M38>`69I{EicY3yC;v^$O)r^U-r@`)g?zlMt?zXbRS<|x?lTSq)W(!rNI^79?-2E zXOc;J1w9v)Dud^f^)pN>Pw2N&AYv3TWsHXk!lyTSn(y{oL450 zSp^ayAdsDxw@)CtRRK3j)o^c(#OR+0*_~AG`H)zw7>$(^p|yruWY^r-%uyFBffHzh}YPq!TN z)W(@+1W~WRU}XCV^#HG_Jpzdd6er)s(ZrS8)(tC5$Q_)!wfkQ2q0@S|bjj&MkYB{| zuVN##&tyU5sCjg(TP^dF;|#A1W<&tG^jCp*m}? zFnShI13D@@UV+3{>8HM4D~)ltt^I)^^lCXZeMBmGr!h84rixMZOahI`=pEgqOgk~N zHgPHnhiGz)E z3mE87g{Ix7h~L@dhH;o-s`GEwc=^?rjbkwK;bLx)@IL{Nl;Yurg5EEdLt>3BVqr4> zS~pYZ&C?TxPIq&%F0j%>RDF^we$U-u5pg1Fmu%>ED7{-`e>(O4%SGrw`+z1`=dr9ItaW^*r8*?BD?3Q_uq~^C`vG5k#P3Y%$;d` z>dW=*mWGHpbjQF0S6}5y_i{yQWR0;ErHV-ku_$?mKnWRR55#dws+x=gws{s89Ev#7 zQvit&i(wINvVIOnZ<1eZ`QU@^9a#{2+Qm&vV~*`9(lrd1w43LtEmZp*zUXkd(Cz43 zY0Fdx?C-PTG$9j+%{YCGO&srwPO!AvX0cG`JX5lrJLDkoj5uMWqw`XcNDAkT$!hKX zZ5GxKw|Y}tP@5N}$Oo*-cZ9<54(QkBte1M&*mur*-9q%ChS z+BsSe2!$*+^CY9JAu_C;@0l<7osc=kW?_O*C^)Q<`>H@4{in|_{YlE&rGIzWQ>rHZ zrKLq@ZoZFP)>!aojOL#|hF3TIp)pz7$sUO6JwcjwxF(0F;?U-5^5qJpbu!_U3hT~Q+ZCC^%yMxJNy--W#GwvG=s2vX-ONtpniqk-A%p&VQeBNL@cblX4M*L&`#&V^ z($LDwbmFp&QVq4GtoELnY(=YkSQkcAjdmt`6$U@c9qbwZS?IdISt8ZdCd{Mp{khxp<{iSGi96Xb zaZ zu0=?_+Wl=sK#x%6VhsO>tMz@)M2UIt3*sY$`hZFRoN*`EHbi4YX@y&ZkQJ8Gd|y7UFdF3n`^MiHm#ME3;|G{nuP{u7iJo^s=V6QlJRsiHbEvjBI zdBL~KmIuBlebZ=pyKL^MDslY2DMvF1`o*f}xD?%I)pLSNzWd>G;wqF$nHL03vh+Ma zZr?Hc=BzbqLlH5rl)?p!7?(~!79L`)&i+gn?1%g#P-ZFPFAd$C(mf1_B1wG@e2@v_7 z#i9B^FS{j%-R|WQlxLyf*sFnJQntIOM)5~$;5N6`T-zYXd=}Vx@X(_ApezLC{lxy< z*MATu!}5B^MZ_b_9&$qBJMC-IOXGk+M8~kd#~q$!cTvf|TEW|^mbe@!W5_1|$0TGz zY-w`9BYg%Ltj^EHFM)#8ZLG6F4LeG>i@SkgaoS}JWXu62NtY*B0D;N)8brmNQ5go6 zHc$HErL3?EUf&ndz;0o-+htwXo7zxd90*~V3o&RybJNo9CK>3nB4hi_Mt&%fXLjO| z&&eAsMo~cJz?$n@;?OMmT>Y||#i@o!8Uz;o+&cXpqI;j2{<) zItL4-u3Ch_equXp7lJKWGy0!=j5ckomr=^rFtPI(9!FLOU~2vheLwEnJ&F0rfsTPu zrinM&@{1lY3GisW4A=_@XpwLpJIL^B?g9=#{HF9BGymYM<>&25hhvW$R&RqQtrZ{- zm-hC#m7J;P?a0eUv$L)-cDq62x*_c!sPH_aowP?`VZD0pgb|J^mRiEPOI4muJclSX zMnpbiyi{$#wb<*5{oRTlQ<-uanv>Z$U02rRcJ3Wh#%gmQutkCgR16Y^sPY!{A z34-k*s-|f#TCq$I;$+ols~U7!uVKC;kGwYPaSmuuC)7+0QO_#wxmmLkX-d zKmXOo)dKsVIw_WAqScyi1p2_=%TNcHuR%1JQ_l_!Z)ff-DD2{d=9+iLgeG7p6wT(k_|D`$S!z2oR!?_?(+85iVm{w^M{wndNxff;RV_wlWoDb zen=8xf;EPQtB&BFPgi{svc9XvavUMF#}?aM{KT6oqQyqeY~7iNNMyxgw+6Pk6lfj6 zUj$lvSd}(+$d=fSu;<}}4wrO45JxD3`R0>cB_4ypxMIm{;(UK}fA+xs{m|c70I&|Y z$v%`>XzDkbcys7?y=WNbE^0=Wb+8HAeYpkEwsb-6i5cYq$1g8HxF#W*m z!|f8|`2OV(Xs(-I2v`V(ZCkWxgSNa^)tFyvYu+)7Y}%*!Wn^MXhNsS-hdBk)h{%on z3Sw3KdxI@c2|5xq4fzJFLQnsA#cJ7mAm~5Cc;s8_%k_0*-L1ks{(03}_LN(sSh>a4 zIKfgoTsn{jx-EE6q`|0dT-hB>+;T&rIMcoTi8c-1ak;r#M-a+zCpH2Y)p52`3Y|{} zkxoT({kWBZ0>O%!W}_4!i5c-zSUS5nE}7LCs5kXoMNI5WOArtpRae?^?z!d{jg*?f z&1E%6J;P}*`GN-3Wou3}StEvWBk_S;V40rLsbpjs-&EaAn4j)pYtgFWc*AnAg&OF2 zmizUS3-2&;GvDGI3qTmrtg_cvgAP!nOH;c3?C|WMyn;H4x zcchdeJa*>h#x9K>>RIQh0TA@qtbV_=r%ebHpe1P=h{#W4eYKr!esNaOR|C;ma_09u zXiGgERpRxi=QF8*zu&am8YAmvsmw(73wJ+C>nU~kp0meaL*AYdc-o-<>L`o!$om9L zXxISqcj83gAzFXcJdO3@ivxk~pF81qewD#CU#X64hcn+8rVxrbxEyXj;p-+fpKj1a z>z*2UtuxOzkIm7@FGL()T>kVc_kj9v z)k58arYtrwfT%cXjG|HpKq+6s_^@uf0z{|7X#gOT>OXzJNw-TEL3>+4dy37#b(}#z zpTT6-?UrE`ei=9wywe-ke#Q-uT@_$@<yueMjjx#}DfgdBGYv^iU&eq4UgjOz_qY{Q z&Fz*Xy1VF=J(SmZ^&c)DuW{RBkUmYDYn6YS0ZUwVy%_01M)iOfPR*DhI?ka7I+=o+ zVJQ?R^#pE8!Gl6l!T!dbHD~WTPl=>{>ornDd>!k(6ov417PPCk7KnbHa!Exb2v_ga z;>dMy{QI0?XH0$EB2Sb#p%aV!xKPJ-U^52Z+A3@qZ32HS16zFY08N>Zyhy+25hHAm zQ+)Q42_yNTbq8VaA?Bs=OTds{fpW z|8Y9S`#AkJ4qQ0in{tpM4W689Doy&HUh_jtoiP~<6nC$QUz+sGE1lTYokDQ=Pw2;K zkan)lQ1l|_gjL|gRe($)weGNP(Mo< zsGc%m$vWJj`w$qve)}-4&1?;`Xk2Lc&RJUbz~Q24HSRkM=Gq9RJz zqt!$F-!dj+o`PJn)~1pl6qfT*NZej(l?qZw#~#DDp}W${Th~WaFjob(LB4{UG$Xc0 zFSWq+*?kmRr_1lKnp+VEI#xl(TCQaV_~kVCi=Z!?eF?6NaA4_5>$d4A#wqJ;TXO%@7J_1 zEwM6x4Ra@dbrK;>4G`8WFthpbG^`XiTV?xu{-eMDh)yR{`S0Co(Xa-do)x#R%tnrg zAui1%i}kHjGHRF+%?kL~W#7YCJ%>&6HuENh=O{DX%jKiT4jn&gz3)gp3huY$QL%|> z{%gn6Xu8uoFB=U8+Cx`4Wm3V)%5YOGcnoyGP=+bILbIPQXrqgeMYY3w7PiyfzU*H0t!FGYpgqiFu1cM{HOl zEc^Zr&F{b2|LILab>iWeOQ{VW)v?@5?8v^$Di=Mm`3x? zK~KZ(ZY~}hzt1FnAN0AY^MbZdbYL;^^1SM9SUZU&q!_WOb;_F>rd14fh+TeK!%{+? znqMWB_~&DI6X2}Qkm>kMMGCL&wwn8EwThk+KXL0{hx#k}E9PdBN0`Htos#gDrI`ys z%!=di54cbs-L(s6L=~mN<<09s)E!v*NlYVe@rluVff2b`61TjSy$Ly2&Ax=g~~A65Y{hptN6j?^JaZ{Cc$M@2Dn#1n06YM0nx_&QunJl_x= zRPBnswaM{;nuv+!F!855j!llvzu64Z@Gf*kC4W089xKbUyU)LF8;@e&`pxDlXc!E{ z$18i4&u`{;uSmHu>0y`a%QfIh|b zI$v`w4yhM-flK-Pe)-Oj9n%p?rAKX2*OVnzB1TysHSfEdAYmH5%rymXZAkQqn2qa{!R$!poyFDLJSAU%U@-w@V@R{&r(iO^fnA01% z(2mi>`y-X;hC_GRK8@C@OtEx72&h3X8E6(uC+?e|99mgc_b)yna7}1ggR>MMT^QBT z)5Nba<3hwR&lyR;^R<)NdCScvog0_3b?zOqfv?wB|83M3%h#LR5S2Gy3&9hqFpmiA zU1}1`8s$wnY2ZJ0Aga~kxD6k;E?_`+WwehxD@y*j7NMskKHoFM=!hJbNb6EHFG38E zB4MO0^3XU7YnX6*nw7tX#0J>iNS@7LJ@ze2sugq)_gbGhkc&bi5k-1dh(EJ0<)6Ai$DMps@GmU(cEa>N9FDN+17(;V80gJswEHuM1oF z{ysPKn?mh&8`8-d*&R=-LcEqNiyuD$`uZ5W7stk1J*zav1jJD?-i{O3W#%LU zd24^id)M|gVrkzdJ6Dzv@b6ZNKVB`b+lVo1Ug`SLOd&^B#&WN{@59fv@Q*i6o}87V zZXR@DKDj+2D zOK+F`?TV>Y@nwn4tP!J2|4yZBN01iRkqhU~Hv9S0F3|xx;7z;A%=7shs?ME@f?J)i zMvE38v_#p%TKP02-8R(a@gHhV(~thRHcBR;@28e5+~Dst6~iG=W8 zFQ&%z@#1~_rhOWt^?BVaO+RA$DMcDhl84JAj2VR&-sVxzT@-vIZmkCH5k z7k+rnO0vyU^KBu|sVc$@o<33Sz18_k`P$OPf@o4CLI%?pzJ3^!p@QZS|2l5bcV&xY zP-Dg(WdBnN?6Mcn)$PGoYHtKN#R&bba3#ea!P8#GtRMMu)U7txYv6Hn66tcsQdO~s zZ43&>?U}i>&TGi_X`ETHR%J$9N0fbDT|&%J1vQ(J=VcN$$8+}%smaH&grW{wUjfv0 zDmYVeI2S)~#N=>lI3y&ah*BYUseU+>&Y^W(&jrjS&aj;u*JQIG8(;BB6;3m07O@CS zVobQlVpbY$0+ee<)H;ZQu~Slo)~1j=ZYvK)sJTq%jfm+blCW0C zD&~chW<2M;a`1U8fcE$i`w55qh_vvI@7Na~J;7QW+0c#BX9y;Qg-!qY7$oGF<&>wL zAwM*=<5y7E^`Y^1_Kq=!srSz@tW!A?6+{yB@Q`qS0c`?U6@ zNCuKT-p73@u-)%sJKgut24SG$)uMl!C%3X7eVR!|sykVJ#_YML&Ka9XddVc<)>9}e zWT*UB4URo~7!gq=XB0ghmdUsM?%52DgpDLF+$Q+^?M<)T8aEDj3XtO1GnXOia{YIPiKIT}~aJT0Z1E_gsV z51%}EIlrJe_MGj&fI~N$mN(P5xUTSKGLrqhiI?sbH&xZ4#ga3eT|dnfmKjr{S^yle z_}6fHt$=9h5pUR_6Z-@;kKDgO3ky5HHu34Wh!~C= zpc|=D&OEuDAJXxV2W7Wk);719nJ*2TMkNM5C+VC38BUfD*~rxk914GKUGc;~4R_3X zRs;$umndLwQaJUg-7v69LH*iY@8p!_vxp=;9h*nnC~GKh!fJksjx_;bw!2@Nv6Ti~ zz8!tv<$}NjzIMc9NuZ5?yw++0)Q=&^{nEIp9a;c})$p`3d(v=872ZmeXF<|uPdE#d z`WF3!!E;-$f2>7AZ!9@>+AT`%YmuWOnByP%23Gnh59bO_75*I*_Q4vB37CMUFIr?~h#PK<{| zw}3*#(-};KrECbTqw!Rt1j}MwlQ4|f9YNg!nVC>IG^>|rBtzSXw0IGeVgGWFHLw<0 zxwC5@W!2WLdq;FNKwAB31ZNkpd91hhy54Cne%P520maKsT^f4(j=lq0%AnHVPPe+% z(B|DE=E}{izkrIS&fvR?`^Im372JD?HRJkaRp!@1d2XtS7WnaU1qC*wzUz@NrW?aE z;Qp-d%#hO!`S{c2vhhfg)r@RO1G{q{&zMx&kuSwF{0FA*?oD9lfMToFF?$1?N(@(R zBq9ltseY#0rux`g&T~OFqiXXi>34rz@!K!NBAG>~4rbQL6q-82x&06y z(njh~f6a%Q0|0L$Ps*vkV07dL%1s_MkUwBNs{qqOa%ge!K&L(iGAhFOjCZ&Y>sh<% z4z7^$@QJK@-XVHA`?)~v{4yxF2!@o0O=PKndsp4~05;(n5V-TMaO~$UHfaI-!|MPf zGEenRg9IObX0?g}V1^^$E$Aaaj=6yHC3#kpEktJP!2^KI(11SbunC?vseK%vzc$8V z2mb5X`w1%@04gY{>RkRyWL*IHlfOg>%anTyX(zD?_$(6l9-q-XNidtU&s*rMAP?9+ z1P2;k4QRT|NQjoEvYLh`fPA#`U{9YMBBZFC`9{K^+w2he74;BGEqvv(EVi1T3Zzv6C$gMYY5lv^Vv zhOetqBCu%4UKoH4`s6R0igcXbJ0NkXw7gjS#2Lq16*W=Ul zU#)F*J4NqYLXy^zr#O89waWQ;L(dXbKOKGxi7!*REmOt*?>f%XoMyB<7e9)U^~%6l ze8`R=VX|ZL2$4w*W@Ld9`cz%8Zw!j_Fq8E!5U_EW3D9NvoWQQN{dE0(x#T0ae3)*U zEc?_tvTg}<_j7$l$zRFdUBG&Ggyv*SC(L+Fg#o^oNZUDgCl!`+%g0RVhOydLR5Q;p zh$76Z58mu>i}(?0zO4mj`~p*hdVzU?Vb#(gooAq05Z11nrX?GCN1(K95_?7y>S`K> zb%_gU0b%HNc>qMbri5FB=4lJtN3AgDphmc<-M>vrxQBTYJ@A&%H$ITvMfayzR224sJ)28#2AxRx_c8YztmfZ5Q*x z*X+R1^eagBEK$p^1Fdc~m}Wo1S^&yOaJ3DH@P5}jNHxc^lD4!jx`8x%w~eLIN#DOr zEf1-J6L`#_fT+X!m96tQDA*LPE3S3otThowyQVZ<8?<-W=EA4^|eta$DeVIDX7X{x{I+1-{JDuaG=R3-~GRC(~M>>Cqipw>q zh&xHQiyQI#G2TZYDp7eYT&6}qy``by?6wFvv)o?zXw4iriPp>&G7W-{Oln3k_rY#L zL+woO$eu6qmjg|Vn)?hs)gSWJBEP@YdIQuI6#Kyo%9YP2xHPT7D8qVm>% zBO^~$WSkEdgYMVEe(jVEz1VB*YiCV>G_Ah=(JRt6kvi7ZT{{8qs}u`xtV`3|{6Fq( zXQ`R-#-H?5Rj_g{Pqla65c`wd(OwSwo#dUSywAE{hW{%S0VSou6XKE z>$_TeXqDQjsM8UJw|HOv=$tY|QBQ$uMAWG@d;NxZg%WOF2{?8_CP9ogq)6rspfwM) z`(-yDOq+aitfuOsC^d6_t$v7Q2VKmc1rJGD5Dud&6> z&lI0?1*!j1N4F~B?$4bwjA2W3t*${i)65xN?$U^gNV>}`=yGYh+w&rCi22y?_P3>_ zidcp2dvaf_+y(?u24A$%FZgzcnDc132vLNO!SUr74f9gL9urq$=jI6h_SfHUDHRGf z@-TNVCcvyFw=EhT8B4tjvMpb2PhzzGs@Wcjs-a!+K?bzSbjD~Y(~BFJRg3+H9Q{{5 zzqKt*ZskYURFkXI8J)l99vjs11?{@|dtOxHg@*p1!da9(iTPt7zflaV_jeT&*%I>) zPvhjbv2s6(PkLKF7j_(Rs?MsWP$yzBSjDpFs| zNV1=490vru#P+E4uI?2<&wW-bK#q>n?1FP#xa@`#>vMSI$ zaG0s+4GZvKO8*K>Emth-{{`TOUKMT!_iMH{1_JyV2thy_fI5Z$4T88@&!+f*Z?`sp z`t&88(fK<(DSQZS^#QnP|6)i~=fR_puQ3bG-(ggw8?|a-PVf>s45_i;=KVriEO4s( z3`ZddN1RRm3s1U*VF1C6)i3DC+0rdcDCu_&(!Wd@^H@ryj$0M924$Om>#H~Z04Vov zt^$lRhaMH6{Wu=72r&VANmNrs3g#BxwwpPa z?@G-&@Be(@ry1TjIWz|pI)ec4GZV7k&S`weB>L)|;9D&|Rj>N11>XKaKe7lS2~)p^NpQGf@i zs@#@(DHl2H0Dz?GDSz zZ#jRePd--WVrO>6F^?MY*}RVhg`3i=GsWKzh;x@OuzkpDjCUJS7tAAH&TZuK~%*wX)!2Iu0hnCPL!^&SS%qt# z^bShkwR*S9XN0sWi+e_dSI^`rHDUvpFj(Sd+NV#J2a%BrsWu#N229&;AzDE3&H~#(!s=AqO!EP3jh=0A@SBaZ?1kA^gE+dX zr^B&m`o`0+%LWGRCT6RvS@o8iuwS@!r%G(wTg4;YU2NI8xpx<5!dp78g^0uNELoA(Ou3=J9X-H0b6*_ zI`2xlTc$seIk{)3*1IydYUP`^^83cHpT)CDRT+1B+~!8O|E~aX0gnE_Ce8v2NtB%* ze>yA6Sw8+5SZV%QSW&FO(K-t)IF^>qLd*6uVQTEKWX+Ch0d$Ljjb4Fp|eXUintcD^P~g9o6c zNdZ(ddbGEqzFsa~v`GDl(KXlWb25sp^uEcSX-0zs?@<{#G%2!b46j;TTr`}<(C>wbEUzV<$@cl=zvy&&jb`nyz|_m9(jty%4M z{40$wBOiYB;XQLFPVNH2;+@u%mcHVFmp}KW`Rd-MEfGF-wj2vk?#cTwcrlAGD%#6? z2I-HA6*adCEU{E4h<7|y4qSXZ{c$0q?Cr&=Jk8zdw%lV@H`-AhQRd&SPAS=?+dhBN zpHbU5pviRuP2CnMMviq=t`Z$@!9qAt5vh1jQc z_;driPq2S(5nP;(c;l$6Br@EOW|wria6k!DaB(AOM}gZ=Y+K~h^h~sG%k#P;ZxJNf zhTB)u=G1p6Z_hM!gvh5tS4^@$-!X6QK6|p>^kC@WQ%JwuH$k5|pI!Pa5z?ILkwx08 z!QRIq+*+_E>(bI=Eg+n-*8BRRkOuu`A2;bt$q&>gtYz`OUF0+lO;O8Y!GQCE9xf#j zeVz94i?eoL$t7p4G7Cq(Hp!0n9NF%!RfD{pQkb_oZ(BJfIWzMUVOUjhiZUEaW^N)SHh>B?bot7+A}BBKtS^w+D*)TRr;H z;y$Li%yIRyPp7a?Uza;?ZSd`p@#jiG{09tJMt2a5v@wH$SPr5mb)-+ zQ62v{?7alrDRsRBiI*NI2-jAUd03@19x1FCW_QjoR&zUWOb6P&ADobpci|-Yu@1*F zMU(4=Wev-&8MyJbiUy(M+y%q%u*HFSVZ?^7Gr<>s`Np0wxB9s|N8YZFuVSSkK~f-} z^Np1~1NR(7_dR4g`RlPBkN*pL`7`=c4J79smX@^#=v~LdG#YolM1+L85Ld3fZm$}N zlJfo_EHQuaTt{0_m9@V6#I0TqVWolHMD~e?M`Jub?>(n_Yv+-);)n59u77TmlE3A! zFX?#c&P&2$5522yvs9JU;m1hPo{a2m`6r!GtBhlNJnt36Tr1=_yJdO(xa8YM9A~2{ zEl+cE-__r<|AvKbhHVdJjb8iX0knBbILJ*dv~RM5LpZiGJ!@iVwbj%by|$THT5$Ol zZK5G{8y;bE!tHeq(VPtj%v+iKsyGD0h;M550DB(dF%q80o*uCeKH-dy0y_%%ga zJ2|DWCH5gCzp*9f%9Cu0!cz1T#oO43`j*pDA4qTs;T2^~?9)-$H-Jm`%z?G#khONBciEhuU zVO_Nty%SZrqT2x*tHY$SyAtq|97b1$*zJ`G8T)%u&Ms!T)Uh5TXy{HC!6%&P=E0O&C-TrrM z=2WCRs5tqg?>Kc`b1X4%VcME~^cP^G{XVCtOz1W_(ZV)JztS7$rNU&W^DAuczIYDU zFiBs}DJi*gJtoHI628ahPOPX;sQsHE>XQa?Te^~F#~0fWJw1n>WRb$zb2-r7F{}*N zrJ~#CkKi{dpP%{_168ow1_)!Ex(-l!HpIN^P0 zv<-tBltFEht4!@;m#3`GkyjPu)V!14H5TcmP+%|;s_c50_Qpxdw{Al{z1bPHCCB`C zR5so-MtXYMo8Q>@`Ge*XEdcXB^x?(NQGO(Rei~enkAJMuhTh%3=?tV!QEH4+yM03a z)`((|{f1YnrLAJ%jgE~dQ565Fk`d9ok~pzE)(esir@20eA9F|@r^uH2hj;{_!B##1 zeP%pEJhnw+ljJdvDseo&SR8v!x-E-PQp0202=8^G*RE#)Eoo1d#{4R2Pa~b6YMyW7 z^bUhHJ=3(FXE>Eq@I<0|p5VVdXrh;4=BQn?6U)??iOTj;Hr^LYhYrofT)&(oaxdFs zvhvF8p{asdv2kh*md)W3XTEEYhUe;$67gM+bdz)AQHy!GIW*G~Zf3+Rpf}GM0*(P^ zPn7~)se^t8o(*VSZWP|yRlI2Wqa~p6Lhzcs9EyBi?A<(V6H5=qE6Rbn%(tV|)z?u8 zL~OoOXAoRO8g^U7PS0Vq_*UuNnR5qJJyMXQG+cQm+*)r~1x01*GLbM^aY@x{LQ1)_ zbB^8KVW!g4r?tptnAp%{W6RkV(seFuRs&H~s*RUUX!1p$4B}{eL*wi9`V*#Yw8P45YXb?2L#TV*ZshL~Vv61k>*kAm zDJv8;t=hn3xHm3SgWXBfPSTRSy~u{Cx$V6Qo#yOgd^M~xU1#+u@)H5{mn!c4jpW|# zk`tUi2Mpm?!upYdUy>B8^pX@NHiFtzgOqBQhMz>XkwrB1UgGJ?qa{a1VmapXF^w0u z$I~{5E{wB|$&ZA>W#&U3#l}$i%LtK$wabDtS%gx}%JV$Je)Y&eviDh~bFWhf`?Xbx zzzDq>^|!F|s`SDsUP^n8^^PEGUeME<*Ve|lHMVYd;+*IQa-Uw&G7m$jEm3eAF<9$c z)M;{-0&GrG^TXUo9KEMXrX24}uWx zGH5{1_wN>F0X+)Z^#qwz$b8_lPz@^=aBLp&XLfZhy z+P0mnV9Kxwy9T)iUS!IH7Aet#y=veAa+{ync@Tn5=U&#EWtwR{y+t*Z4zT`m8-q4z zyq2kTy4sZ4x-{G-Y2lpSY`%!*T(p9wNo;INXvBao{)6J_-Y+~flMX}g=WN)c#Adsr zgxDCR7wvDbp(R%)FpJ@&%LIe8sE+A|iU()tA3v+&#VB=G^c|xwh*KUt#bt?@(W?#8 z9NMaY&CW01S}PRlaHvyae1eFm-^}|s6H%+`nsZ_ifzPpp(-|cD+jkQ@a3!e0v$1AX zFU9J9P%kPIC`a=+rO4w)d>fZ#V6dhgd$?%&zkoEUNsL&>x;gJF8H2=pRI!b0)^br2 zrh(R*Qhi>q>uV=!m3-A_zOZhHhzfB!U$a)DB}+*bJ!zn)Cu$47bQGQtLv6`2RGVXj zTpWISEqUs;wNkiZ&6=6-FSu&^YLlKusB92wa_ibteT9 z6#B`mZ~NA^%N}%K39qUbkST3NhWaOIqmb4C>zFtAB*x1VSxQ;5l@G?(QPPq2!^uey>9o-)B zp^qM&tBmxjyii(v`o>G*R*EH>{ga&6sZxEt;lYFaV*@{0J(>+0JAgXOQ|Ha?jQNt@ z&slWwTb?w2OEk!!ZmTW7$mjHnSGQZ7h5IwEs&6bRmfn1Jm0o?Q@kMjs`g3LPslw-| zbusMoZPY#VA;lP?^J9(^@fRM5V*`N-8G1s1&TF{D$}FF^10- z>&GZOmpg^74u@`r{}?!w>MCM98;GG%&=O8mpMQR5&*!(J&zS z=)QF#9yw-Q1h`c|eM*1kvpN(^ah|TV62uK%Qed>;$!#?FnUBHrrX}b0M{G(-yEtv- z=WK$lvKU8T#I>|_Vx5>4)3#p$c78fo8yXe7B)QjTYAE>-V=auJgsq9~t@5G9g1{|M z4K?IgCCosIVMwH@F|7aA?&Hw+9~b+e!3H`8erf8lQ=kWLGcUT&7-E4S{2jU75cKUZ zH?Um)$F}LENsX5NpMvHqeFNJjvX77~Q^zD({ zHFx!Q1qOmDiTkN1-meg}svd>yzP(MN*3qaD4K%A|s5=xHw!C6UZgb9BPP7(lI<>Jz zIZ^1LWG6S#InqHU;-)LkYfnsFsgJFhmDL@83HTPSp;N8LQfmrBZ9E#y1DwKMrRv0B zS1!3)(O>73zP3d+ye=uEOx!jZOtXudz^15S#eY#rf5xNPWrdbnOuIjQa)BI6@q>-) zDqBfzY#)bf_ZxTe&(p&$|~s zkRt54@HQ_yR>zCYTZEe;e9AkO5+=X@3}buvRa~sj{Noy${S!Uds0t|iM4pz?VFQ|C z^haO*|Ga%s@w@xOt{&ykgV-d~j+YL`rk0pkFx?LUxyUkCZA%aiEaD z9^E8H4^0EFD059A01ZM8c%_1r{(krb>%FCn?M-URg}cp$eDz3$aSEa&?8Mv_-idar z#TT36L-SS8a=N8;u6L{H=~w3OpGl%@-!cU?5uz9_*;)I(ddK-~{zrLvFK>FxXQ*!Q zXXfn@iCN9l?5) zOK)h~xf#4wuFI$(fAlvVV5SCn4z!$%&w9!exyCJ;CK6{bGTCp9oVsZ6-W42t z1zFuqrk`hdNMonL<`jD8?ZTK+jWsH^D%XhaI>At}8-7wFTGl+mQbHfu@EmZ?R9|?x zl$91ts;GRUJTkLxFk%hA5u$bDUxSZLGEVOiJ=(s6yxc&!L1})m)Jqn{)c*8P_xXjG zpkT&&dRvyzqrZSCt|B=TIlX6mnUa9XI3gBm?d~YzQ_#9}aEV1c_$MTBB}Kt4hFpaq z-3?e`Xbw_GZZL4)YdyERM&G&@si|s+Prtcyz;he=WlplHj9vqzUPK zRQxmj4pm+g!3*O{H~IN%=B3qA+{1hx@bfcISXOy9EY@=5jnZPz-sI|X^%Z*(q-h7T z;j@~Di~kG+Po7}dn=kGuxkYjYX??Bphs5=PE>z%{E@i7Trk`>s)Fjq_#lILyn>!Z- z&c+)EJ#63}7AON;yt>v**B5#xq?6sy&lJNu8qiA0qYRiGxYhvTa19lB<7=Wo&G#?) zS4Q>QRv0HbH={+dhl(-;gXv%GTRPKvwPZOH#UvfII3pu3nC9*&{oWbl^E+kj);Uh8 zE?O)IQH@H^T~m7A-D&<7E(NPoz?`qQE9JX5DCVY6_MMQ`VJUPu-dQY5k&SV}67t-f z4OL$XKSoRrG%qI(yaUe{%Fbd=dm*{lFEM8oF5^z9w$#&mJWZ72=XZ5+DNYh0Y@}KT zt%j81A^xD#mh59~jN8721rq@&ehWit>(`TQLmj6o*NM&ZlgTqFS|OESVsTh(WaQw` z5OC*?$u>?j^*z3fH<0el*VG@JFEp61gz9ln6_up1e6)XZPieXm%!d-^utr+{+TQEw ze}8qG)-~E~>MYD}Ab0N|ot`(jvAry$mjQ^^ESGkI)cVW51dG*sD-|PDT=W;;w7e8r zY}rS?NSVe>mZCojA52oqZ>tSX?5Uc;i4S-Cr6s#=W5B^x|;f zk0JAsTQ(VOnN@nTbF=u$^w42Tr!GsOOBiC)?56#>_O;fh&u!--+EdCDlgfHEfZ!s%;oejdu-{2Vi~YKa#Y{2g9WqEkp=H5D4*HB8Hdl0j)0j_!d{n< zbEDh!Fc|B@D=?VPz!kMws_mda9neP>=wedg5>4*}Bh@)8hPH_-QnT|YN<2>wNsN@l zv#zgBonH-E{#vj!RN)**S$$$ZS5NA>l*V=nMW?m}qPg{1*dfG|TEd31eX^ZuyZrUz zn(L!y%be%rI}U1($wXHwJSX*5Tbs)VgZhU?+x=3PuQ1AoS0||ZDZ>>#8yjzx`A?xeNQg+P2)sSE-%v%h&-1T)z?&D?%_8}Uq0*;KR8el;Po zD?i0KXFY3vu<|CbQy&e)FtiKWC;})TJun+-BC~(P>OK+2Umwzu)Uk}eQB z%8aw+D^nbA7?x2V`VK=6-OX4*cq4-=Kn@*UkKYH9p z-&IHxA%K9=--Rl@2SUGSWE|I%%S6smvo|&2&4M~-pB;qJo-GJXUaWY41akEBuR?Kz zfUvmn8|*csEVn@x?(EvjB7s|>A_XSCGCewX>b@_B#i8P##0tZgB)j_Lvh23NlYbaS z>(h8vFfTDvEaHD2=x=uI>^1{Zq4n3ZhT4;26K(J6W7!am6BHe{rHol{rFbz(L@8~n zcX9UBE4WdOkm<_inva z8^DQ1R*@bIC+(8xXJNgW7{KY^V3~TsG~q@gd9y+jnyt$adm+9GGvwqdzPv4;o!b(l zT-7oIa!3(A4TM*qc$-ookC9a$3oD=uRZp|r4W*8YK*Xt@*u5GEv?Dkk(G)L=wX6HX zvav2F*YGv1P%P!c-DoP#!1VO43-^~q_(od)CGh1(whiiSjsq;={&p%}@fm4Yv(CT< zwvU@r|M2?eArD`HW;XTE2TD;OB#fPy8TmWks?#c=;fw5ZAxbB}8(ZY)!*;#&3h<(v z*lsSY$VS}EJgC-FUlNF!%)Ib^_WV0Gzao>c4{XQHq_fuQwCHA>H`~OC?G{2U-!aJK z)Wwg#cLwhvzKO@!LN)(L)k64ZP6!suHn<16od03|Ce`a7Av24mw1qx5^BBp;Ul_dv z!rn-zhZXF4UV&x(Uh}l58mHWJlG9iHyJbIN4am`4ZBAe}{JX{KWaqs5HHDyy%wo-A zy=&W{L?Z8xsXp~Ha}eZT6o_v0(x#4FTX^Y*Is;E-G)emrRhVmS5OC-dNx>4@jDe5_MOn31TgwA$@@VN^X6F(&I_OvmHmL{!rqxG zX;8BQMI$tihPc5~oTvsun`sg%4S{2hslP>-ebb}e*JRb?SSM;J?68(@ht3d6E+ zF0r$rPyQt`59!Nb!GnblpJ70y6HeV-4fNVa(Miez)mxd);}Cr*tGdXLJCh>;>Y zEbmmzw5BCqx#F|>qdEN%=jq3P*pE<0@OKyj+tO_}HYn-6Je8lsi{SOWDGc{TAMOFl z<%*A$m)qxRvf9LIr1Kw1#zllzkSjcKWXpSoF^8PJVp`RA@m+n*_IYywQcuTB-T%sb z7`zI^K9RWp@N~1BRH2C|iWTeA<9rBY@;MFG#;XjV|6u9B3v2q2W7Ya}QUvOUJmUKK z{~nHuIb7t@45RdJw1@j>UJ^zt?B{=t*9XQ!S8LO4=Wu-S3Sf!OL@54eu18i8E_nAq z$XX1$B$6#gTML>00Z;#IiN5#~4f=Zs9&k~d$s1G@i(BW3Tbda;_diBQFU^3}IJ>o3 z@s;HkwX#(VxR|6Pz{U9ayU?(pB=|y*Sp|qQS))5B-!s0}ZrEm#NoI%86QHzuT|xC~ z+V+KLp+mIU0S(IgF!%Pr3rtlv8opt?_XRSlu!(m`3Fc3{yP5wcis?(aehEqI?AL3S zH?3nkb2&Z*%zT zyISXM5()sTdy8sN^h^voxxc@8=c3aGKlFc{jM_iTbQ8z!FwJO!wFowF z$G3Cu&Y~xG@wsG$%ZKUxg!2Ag6UOqatg*SIWh*|s@W-@4Em>bS{as?k5O>2HqtA$l za}+T+x;7L3+~_MP&bNm-5?$!{jNxsn29ssJ6aVuJnDT0&6y6zU>Qg%<-1?fY5`x`d zd7x5pA~EFtR~F(e>cvmp!l=D7BcC=C!}-<0{V8m-P2f1~1YNQP^I%Pm<4DX%-p<9Y zqT96>yI4%VZP_87!k?@y-DExrG#aeIac7Arc9cd)N#|R(w;$KB=zmj818Wd0ofWZp zYL@QT|C^@+8t2KpZ%6}zVC37NWHAfkB(%#{*~}!Dn0}Dx8K8s|uj#&y%+>`wwC zeg)V&HfWp^1Vh>Le6E3rwyFfNF`l>pZ74f*=VDYp@chJ;S-d=&2VQ_ZJce=pDaSX2 z><3sm=mXf%t*NDmlS5U7reh>x`LR(B-= zTmEN~{>xQ-bS&}%?*ngplfN5Yj>IHCX8jI1(n|10^O$suh%$2Wd(;5=ID5Qyu8%|yGe87BRIW;T?^PSFQ$GjBqHS_U z?*BXz8g45>Jo4ht`yLnh=-SualTlYTE zdk>5?WSme20(AtRY|Aqh7%ZBgW!OU79w_}noXm+TvA+^j<<(zpA0cm9I~ZJ*cYFDI z*&3;LZYmIWZNcx_QxW&KXF1~=LWWwz9<5;Sd_x?lzH>{~j-Y!4Dwrr+^eS^6nsW11 zI7Mn$mYH=gcyKOEpR{7#QRkmP^qK^n}CU3=k@zT(sN%+V>d>O{%WOUW%ecr>RAEV|%&Uv?i3s2{cE#H@R1qIy5n zU1{YXX|AUNhW3q>bd77=qr?WR$R;n3A6?Q6OuFAIs-#Mk`*F8yGY}u?_Y-s$SLK-( zV*|o$&%rf^ZqT3W!R8xSwuV%_lZ#26b$;;_Sl;Wh0O~zo&=GzmwgXx2>&$PrHaBN? zDB9o+<}`Pj1r$7i8eGUtbGE(r=?1?a8658KrNY)LP}IY$Y)EF$m0Er(-N?0FeM)zdqPyVu}(^MM+9d~K$?q9o---~#MTR)(9LtsrCdFuy_L0ry!Y z1IgRW$Zj1Ts$J0=B&M8|TudaK*v?$N-}EfmW9t2J>r(gR&1kWBhYh@_eL?r950R~a z*zflgEIl*EB`>n|3U~vq7&W#C5hW6e)-bqv42|BM+Z`$?=%6O^b8i2enaHKvA?8z_ zr+8?aB>iQPtzV=lo*34yEIC+dOg#3=I(;Ui75EBnRc+w7{32QVAu z)4g;_OqR+Orh>w5dy5GJW%HQC!ZXNH%ljYSB2LdX^u%5$l_?F{bT@$Ur!kfY??lJ~ zCCa=m;HM_g2l+9gmH+~MMB`btVvfp2Yo{H~^Xa<(&(l9@udi^T4CKN*iXLFM=V&Cj zR}<&Zz}vg{oq zjmY2RH+VKiZst{btTx;7GgaJXGs^Ewpk_pARY*Qzvi)492|yK&-2a1%paL`2fA5v>;DXeg#AYRFY zLD{rywiivi64X*_V-C&spMUl}W_RK1O%^oy5z~8o)i$O=h;0PZW4hSMAb~%A#WeN6 z^+Muj{LpQj&`0%u?EuIBiVa%kYu_$_!PTqr2x4MaV{yymdIMY|kV~=4>iV6K-B2Wt z24dEEy*cR|<+k&K8z6+f1!@))OOeeOpLm52`PnT?g8&*JlpzL1W~Ot*jj${p3H2y4 z>}ceP?74M%gqh9+h7w}uqcipp;X*d{>%WP|uR7xef}lu{49+^gn_}s2%Qa<#Ro|CYS|*-97x zfogo0R{{h?*{7NB9o#5%on;o@6b%En>se-th)0PtFFQ2s^~?DifO*kAsutI84a78_c`V++n#HEK29o~QiWqeSCHog}St}gQ z_rdOeYl1ER0c7m*ie)J`oICVGYT`VxeWXoH(x3 z5@F8#_uv?#bZ$pt*1G(0jOo6?R2vN8feh~82Hm+Tf<}ayb?}M_Y{$)A9=13%T5Ws}o)d(@_ESM;_9QK})i1@uM_~l1BvG1#+6lGreWW|66 zi4r2#K|4#&%f`Rc@&*GX>uSHA8U4D?aY3VjIy$coJ87VR8sdbVL?}$FdtMX+Et7Ft5lHYR@G77k$a@(8K{pc4+QYa z22b4>r;pF{O2fO>@MlA|tB%6UIBdF3j>BXrs&!&xM9%72VairCI83m;-}QxZC9 zjrET>{I+4Q`aN%LV=~}3YWFcJ-_zW8D;O<0lGt<@rCnZyvLc?}z0Y#*{i(Foh&~#` z8n+0sAl%Dq#Y78NBhD{j?1=5s@J(h>5$Ifi@4+)b&5f9u!asPP|Fg#(L|QCR+MK%x zSQ6z#S7NkDn0trXmn-x3l~ufy*@P^=<)2SV{iY-nsrKg$Uw{`=>W~i#4`cb-#aJ3` z3>H9Y<$38y9jheC1-Hb&Cj!C-!x-b2!a(6{w&IsZb3`FbPZN$?@7%ZxPze&Kxv=Mqgqbx`Waj8=3wmoO}Nf`Nt zRagw$-jb-yyA{-=dm_ge_6J2y5;qQj<>?lt-&>v71g{}>s*S2s2TU3}x5WV3={Xk2 zJA_1enz)4NINz_ab%mk);DG$c1I@!yL07`b1FMZL_^P)+gp}!hb1NhG>lrMBV>mvw zBae^n(ob{#2m*}f3I^c7VLp0Pi|sx@WJqUG$;oziKx+c(o4zZd_x~}_BK_pbeh7kG z46s9Y6DZedzw`f#u^CtMkM%BR#kCBR4Q%_h3ndGP3L(Amxmd#B468D|uCh zDwMAO(DRrWfob87ig{n+7XVcwmLgf8%y+2zaT}w<(Fx6lRy+@w)*pQ#`uE{%;vO)L z(tF3M2rAMQBLs8_;|yN@2g-h}scHIb6^^>~{mJ!tY-N$5IENACakcB=xJXBOSw%?& zi8NQ3I~*Kus7-m2V$N^UDB+a^4BLRLZVS-0B#$8+9Z-wU+LMs2(2nd^(QueeAe7j! zZ<1m~w7v#Qf6fw{ICI{A8?%MLQ&8LM>Xsv|k4qjnrSdoRkF+|4&C_#e+vmehMP(!A zp`b*Y##qiPnplr45K{DJkhshhZq*FxSoy&YF3tA`M>+f&I*~YvEhCT%);t2<-30QV!-LamP zR#b<1AW(rIJe2|qh|cn$yqw5F5^XwrkqspoSO<65Je>VQ35}+rD-b0Xk2ZX;AvQ7~ zoNeLgK8J4_z7=cjAwq7`uTwq`5Pb=TjcJtBY9_ky4$ohgc1LY9@;zv5te1ZrnAhH$ zswz1i(by@S)@%6kRVB^^Z?U`R#3gO*D@s_`QcIJZ(_wSS6+CX8YBI?bB}8blq3TjtjnNJoW=&So4+~d_6TL|9-GD_A`kPOb;Ir*uc)y;6K-Vx#VyElUnSo`$KuFO2y>F7@gzGmSUEN zb{(a+6uEJ!bTxU`I|8xYd_+Q)ve8hBSX6AZl-)5h+7OBRcF;6%t^3bi**>q#PK}A6 z^amVFeHXJ#DMi|hSy26{++gIi=Q#cH%vw26ZY zzq6i9BM;+;H?Ar?3xPrDhK$8N>$T)ewIjH>zrMT+}C( zoYmw@unlTmrnfr-<1!9MeJVb*vcl-jXf3Bg8z^pZaYN|_-!~UISDF=I8FXcSP1pIv z7CC_7(>8IStR_2jf6SfjuMII#(pA-0U^H3?UGKD|jk2zh_D_P66T%o)iO zk{BU*Hn7ZgRJC_v2}2xtu(qV{M~+@Yy2jca!5zYy(-#xJjxj#BhtO_T=c z+-S65w;ZTvPH&=tIbpDWj8|Zb)mfs;^Ug9|a zlpwN5u)2`va?x3I)A{js-fcd_3Fa&QIKHXx!JuXEV0fdWC z{Y1Li?{XAZhg?|w*_#v6qgw29M2TYS2*^WF-1rQ;QyJ90Mdhs+WC`-nap3v%R)n>D z@cvyI-_22q0OIKD7lyu=p9c)541$I@Z#QuHQ20g{TLphse)ByXUS^5bTjK*okE#lW z<0=F2>A8(R&F)eL^#pMBNr4u*cV%>Tl-Ktxo|?r6p=wp@QQ~QU3mEKW#78~7Q@r=D zG|Yz%309wLWblpJcRn)`Vc3`XS78If%*gOGXBMZB#2m_W(j095t^^@Mo(HlFdizg0gp~EJ-|MsP_1+U0%n6C3 zg7zb((~!MEcgt3mLSr|6%9^0=!UO~OzxCpR*Ba9^Nz9J|S~fv$SWJ{fFGi?g+wIcn zQrK(Deh4Z>3%{bdyJE;>?UfctZ1@W5dG815BPv@T*t|0*Vk-zGqJq)9pi&Q^zX_b$ zd1JeK`VlqT%k);r7zC9|r|$r{QF>Ei_K~)_97Ch2gI0kNoIsRpC@SSRkMZ5nT@cz& z0Ku=D3xIi=px&(;A_AOy!EI)>`3?`$b^mL7RVN{Pn`tZIu8+qL=+8zZdxx;9I_Iz; zPE~JhWd*XBF^%u$+#geHY2t+C`dNo8wcO}@bn+)E#^RW+bz4=1sZZr0NH01X!vK@Q zH0vsA49lcWWc13cI9=uqI z(pl4xprDK$1UUPVihd-Q6S6J;T$mY=^u7C+b0#lTeKc}}L2{BTzy=EVad|AN5b{M? ziTH`-j}Dzx2AWtt<1<725MLviyp^>fQQYc;Rm#dbb%Z>+ym5_(W1SnslUOOZ#`uyF3zY3SKC^_f1s{*# zJUp?K=a@9RpqWC_CU5nYvi8|B>@L(upwBJn`)%MVBK{=WOHXunEZhDslc?#=O95@^waZwj&- z+`OA(xkSX-B_lJK_45ovPHsfVpy(gW0@rn`fUrO945&|VC2y1e7288Jd&!J@AgE90 zvTpc$O3@HaMll*Lk@JCI905oK4xn+-K#A2QU)xETo1JS`)zXX!jC> zjg+@Zh13dscAQ~jr*C#SiGR-x4C9~-I!@~8zyXqt)1uO^?>ZQrur}!|WCIltJiavC zcx=6CpTNzFr|cM@TQ8wsXEH+HmHr224f?Dp+d9#rd#2S z#>h66Q@Ei5Pja9UUjK0bS-e_v4DqGg6FM_+@z zekJYN?97$}N71Lwk=Lo-jhd$t842$+mc9|m&J4gq&^B}Mx=PwcozQ5L_vo%(KixU* znhlF!igfIPg1f_ubfX&Gq^Coc5sXDuv#XhXR@3hV)!)WmZQLyw@0d2ni68AXTtPip zan7BSy9r1-Ge$ZAVQ&U#xj>+NHn~SM{*$DU)cq~2(_Wcv>QS1Qi{4$08LvpXA(T3Fh z`7Vo(^j%LJk0zOt~Qxj<_#A)98Wyz?dag6P|BDIMjV8r+o2;X9z~&5|xvQs1{u z{JkVErL#2m_cjPR3ILoSYa045Lsh?%a_bLVY%zs>57X{52l;mR58V3UQ|9d-)j@Ui z|K-*-@PQrfcynZAeXU1XWF+-lI;Xv=#e91%=J+(eBzdGGNO|ut324{9^r?CcRhSB1 z9qf?#csFPG@bNjR0q3oZ5^FoQI~F%Me?IKk?=#u5pNP>Mp5J1;(g?cjO{sb_{9!IS z(%QGC?Va@d=JQgFm__4YIsWW;=NzHL@$wP;f?QGgOG2-EiciAO^5bJ_sU1U@TrKmO zE&rt@7V($;+}R78-<}7&px=W3#0l!q$(~;2H;}(m!<;?le4nHwj{%;`h&6goL7o#Y?~4`r75n!2$TiXBoK(N-(0`)Z>n#oo@y;jx&Zl-%IY`y&|$heeYK1l@9^PV&lS;ZESw6yY=X0C#OiKV~o96CvFy`eq zY?7rI(pwcqOQ$297s8gaMjG^84kv3n@AX^wg=pS2}NfMCkRuFbIKq{1KPCDn%) zzrPs}eY45(?bcquhs0F&J%>C5SjM7w32VoFtvdf+DCbScPGw(VO%oA5qz)MYg#~sA zf9L4Wr${LsX(qnVs3V0vLqawou7U(eKr)V(!=D*xCuFlg#SaYnv@eG{G0}y4m?{qS z7%V}Bf4%GpL+#K#~^3v!p|AKtX0kfd8p86NoUvI-LC)2G8WgDi)B9O2#L zkM;JXm>!(orGl-Pvs?R}ZbY)O0tx9v7nqj6@;dK5W&Pqh#ZtaN=(}8Iru|+yxcgdH z$3iGwLeQLFP%P+u>NH;LMi=T=`je94sN!RL2&tUCsiSUTDa?eJ7JFi+hAwj*{&sBS z60(ZhL@8zop$wh)%{_E}FlvxdO3dTsLnia89)+7k2f%{`)!b#mc~?S)kNU8d1}B&oE z72oX%VbC^#%3r5ENzv)OFK(xVy4V!rq(67;y)BFrWmvyz#@tRwx$tDVZfhblc#|31nJ z4WZdO$}J#1ekNwJ;@4^L_3ieRxb45-Avx53a9sv?`mw0z$7f|LnQ(;2!S+^Fa}c-# z_)z>0rK{nxkwhCN+Vt0JS&}i$eBsVo*Vb#Q7I)(JXNqG6zA5!LOcQZk>l=D?D5jziepq zEGO5|cM29ShF8&Xy@w?sGV|MkzrfOQ=Uef;mUp0K&>w4eap!+Kbsu0tkx;-1POf+h zkMp_Ulhb1kSL4Ws1pwZX^QMr+A$Tr1y$d4+1Xrq(k!O}r1JP^eTj{=a1g6-RBH?+SU2X+j5qOCj>B` z>Bwdac|Rw%)>e^2!YG+(vRi0|)d#svp5|fs3~rx&2NUhx`ut+)u7YO`-|N4~QqUV3 zr^uzfoQ(m^cH(zY?rig?XUeM8HgBU8qhvv+Su#G-QBbo+bmY$Xb(aUkPtZtuE)%iMTzkyOXF{r-be;*hiz}Qqh2~^^!WF~DeV70!tAED&2iiyQ>%8VPa1F2NFL*QBYGSEC zKqD&$NNfQH?(#Ae&^TVGkak;1_%FovUywe8wHRtDr@J(4iKhY?vsQH-S_fWi`B|+> zKk&I6`-Q?5t<2R$ulU z*G`eYa}vvQ;}XZ8b0@Jq>%Pr00UkPD`?}XA1OXfi>4Mu81@yIoz>$*y2mgb|+dP9~ z8EYHx_f?S|=A9$LC}Xv=6+wb#Qpw!K9v-o{BymmcW}*gk;Ez9`?3B`;ARXazTFHJa?=o?!8(_~7yEu&W z2FRjxEg;={Px;i>KMxP!~F7VHG z>Pm?xKfVND+fep>(9OMPlX_fJNA)CH7htEeAN?(+au|JiIF|Zqi48*R{jWUypPbz2 z3D?#j#TscroFZh!$n6AG3wBVo*k{gv%D!dyOx;b}VN_ybV#(s7+rD`fN12Zhq>~NF z^3#>;!xh8pt%UD!JS#Uso0*%pNEv1x-h8w!^YQhk^))sb5m395EP%Dixo{stgx6;Y zaExjX4Gl?6sQ%Itje7r73=01Y3JR~^FUfB{;yrHyU)FtL&~mZ z$CfhgR-nb3tG;G&E@t>VEj}`GrndFgI>)~I+8S;A@_I^2y1?e$nz+4DE-D*x1)lxb z32YGP0tX@luQIJz`Y8RufkxnZx#(zZp&-F0dw-@!`aLuA{9VUwA0D#LV-v$i(S*p) zdzsD%m+bTS#~L8<)3JX(6Gy`|;M9b}Yp$2qesrs@`y(@_hPx9O=n<)@OIb=KPMp>) zsdOwmz!e#H;W2x|h6{{c9SV5?v+_S4R@`uCv+EZ=$JCS=Ije zIZp2|u(to_c|r32C$$61raV%~_#Y89n`O@1^rkC!5>L*Ob^E9+wDu#jL%<6LSC?pO zhd9P5=Z$V%V!Ski<&CcYYUU|B|I{3dU)3aM58TZk1su&%>Tpg-ObcvK-~qP9w*V)q zD>auePkH^@F=OQcPGfO~0HC4(0WJXs2TkyzKi~iiFey~JmrIv-1IKP`7chV}ge+v} zS^yedJCWyWcY1T>(|b9Q!1ek34BM8@W!wL9)#tOn)>=OSPROpD2caGWY2> zmqR;)XPN>B^zS~sEmg1f^W8JhJfdzUYryj8bw;JL%}zW1f6h6TX$f!<&*n`lJzopr0J3!86951J From 2ff7fcce16a471b88033191b425390cd3e4a052a Mon Sep 17 00:00:00 2001 From: ihatethisengine Date: Tue, 16 Apr 2024 08:44:43 +0300 Subject: [PATCH 5/9] ok --- .../mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm index f255a0cd363a..83bbedc0b34f 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm @@ -413,6 +413,8 @@ continue if(possible_target.status_flags & CORRUPTED_ALLY) continue + if(possible_target.hivenumber) + continue target_list += possible_target if(!length(target_list)) From d85c857a10e196201565f08cb77fb7bf4dd43eec Mon Sep 17 00:00:00 2001 From: ihatethisengine Date: Tue, 16 Apr 2024 08:45:18 +0300 Subject: [PATCH 6/9] no --- .../mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm index 83bbedc0b34f..a41009054b95 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm @@ -464,7 +464,7 @@ to_chat(user_xeno, SPAN_WARNING("We don't have personal allies.")) return - if(tgui_alert(user_xeno, "Are you sure you want to clear personal allies?", "Clear Personal Allies", list("Yes", "No"), 10 SECONDS) == "Yes") + if(tgui_alert(user_xeno, "Are you sure you want to clear personal allies?", "Clear Personal Allies", list("No", "Yes"), 10 SECONDS) == "Yes") hive.clear_personal_allies() From 6bf624b3779894508dd813a5b11fd5c85a07d1b3 Mon Sep 17 00:00:00 2001 From: ihatethisengine Date: Wed, 17 Apr 2024 09:02:09 +0300 Subject: [PATCH 7/9] aaa --- .../xenomorph/abilities/queen/queen_powers.dm | 54 +++++++++++++++---- .../living/carbon/xenomorph/hive_status.dm | 45 +++++++--------- 2 files changed, 63 insertions(+), 36 deletions(-) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm index a41009054b95..7f46097a0aff 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm @@ -404,8 +404,10 @@ var/mob/living/carbon/xenomorph/queen/user_xeno = owner if(user_xeno.hive.hivenumber != XENO_HIVE_CORRUPTED) return + if(!user_xeno.check_state()) return + var/datum/hive_status/corrupted/hive = user_xeno.hive var/list/target_list = list() for(var/mob/living/carbon/human/possible_target in view(7, user_xeno)) @@ -420,13 +422,14 @@ if(!length(target_list)) to_chat(user_xeno, SPAN_WARNING("No talls in view.")) return - var/mob/living/carbon/human/target_mob = tgui_input_list(usr, "Target", "Set Up a Personal Alliance With...", target_list, theme="hive_status") - - if(!target_mob) return + var/mob/living/target_mob = tgui_input_list(usr, "Target", "Set Up a Personal Alliance With...", target_list, theme="hive_status") if(!user_xeno.check_state(TRUE)) return + if(!target_mob) + return + if(target_mob.hivenumber) to_chat(user_xeno, SPAN_WARNING("We cannot set up a personal alliance with a hive cultist.")) return @@ -437,35 +440,66 @@ var/mob/living/carbon/xenomorph/queen/user_xeno = owner if(user_xeno.hive.hivenumber != XENO_HIVE_CORRUPTED) return + if(!user_xeno.check_state()) return + var/datum/hive_status/corrupted/hive = user_xeno.hive - hive.sanitize_allies() + if(!length(hive.personal_allies)) to_chat(user_xeno, SPAN_WARNING("We don't have personal allies.")) return - var/mob/living/carbon/target_mob = tgui_input_list(usr, "Target", "Break the Personal Alliance With...", hive.personal_allies, theme="hive_status") - if(!target_mob) return + + var/list/mob/living/allies = list() + var/list/datum/weakref/dead_refs = list() + for(var/datum/weakref/ally_ref in hive.personal_allies) + var/mob/living/ally = ally_ref.resolve() + if(istype(ally)) + allies += ally + continue + dead_refs += ally_ref + + hive.personal_allies -= dead_refs + + if(!length(allies)) + to_chat(user_xeno, SPAN_WARNING("We don't have personal allies.")) + return + + var/mob/living/target_mob = tgui_input_list(usr, "Target", "Break the Personal Alliance With...", allies, theme="hive_status") + + if(!target_mob) + return + + var/target_mob_ref = WEAKREF(target_mob) + + if(!(target_mob_ref in hive.personal_allies)) + return if(!user_xeno.check_state(TRUE)) return - hive.remove_personal_ally(target_mob) + hive.remove_personal_ally(target_mob_ref) /datum/action/xeno_action/onclick/manage_hive/proc/clear_personal_allies() var/mob/living/carbon/xenomorph/queen/user_xeno = owner if(user_xeno.hive.hivenumber != XENO_HIVE_CORRUPTED) return + if(!user_xeno.check_state()) return + var/datum/hive_status/corrupted/hive = user_xeno.hive - hive.sanitize_allies() if(!length(hive.personal_allies)) to_chat(user_xeno, SPAN_WARNING("We don't have personal allies.")) return - if(tgui_alert(user_xeno, "Are you sure you want to clear personal allies?", "Clear Personal Allies", list("No", "Yes"), 10 SECONDS) == "Yes") - hive.clear_personal_allies() + if(tgui_alert(user_xeno, "Are you sure you want to clear personal allies?", "Clear Personal Allies", list("No", "Yes"), 10 SECONDS) == "No") + return + + if(!length(hive.personal_allies)) + return + + hive.clear_personal_allies() /datum/action/xeno_action/onclick/manage_hive/proc/banish() diff --git a/code/modules/mob/living/carbon/xenomorph/hive_status.dm b/code/modules/mob/living/carbon/xenomorph/hive_status.dm index 55a4f5436c12..1397099846e9 100644 --- a/code/modules/mob/living/carbon/xenomorph/hive_status.dm +++ b/code/modules/mob/living/carbon/xenomorph/hive_status.dm @@ -979,7 +979,7 @@ need_round_end_check = TRUE var/list/defectors = list() - var/list/personal_allies = list() + var/list/datum/weakref/personal_allies = list() /datum/hive_status/corrupted/add_xeno(mob/living/carbon/xenomorph/xeno) . = ..() @@ -1324,40 +1324,33 @@ xeno_message(SPAN_XENOANNOUNCE("We sense that [english_list(defectors)] turned their backs against their sisters and the Queen in favor of their slavemasters!"), 3, hivenumber) defectors.Cut() -/datum/hive_status/corrupted/proc/add_personal_ally(mob/living/carbon/human/human) - personal_allies += human - human.status_flags |= CORRUPTED_ALLY - human.med_hud_set_status() - xeno_message(SPAN_XENOANNOUNCE("Our Queen proclaimed [human] our ally! We must not harm them."), 3, hivenumber) +/datum/hive_status/corrupted/proc/add_personal_ally(mob/living/ally) + personal_allies += WEAKREF(ally) + ally.status_flags |= CORRUPTED_ALLY + ally.med_hud_set_status() + xeno_message(SPAN_XENOANNOUNCE("Our Queen proclaimed [ally] our ally! We must not harm them."), 3, hivenumber) -/datum/hive_status/corrupted/proc/remove_personal_ally(mob/living/carbon/human/human) - if(!(human.status_flags & CORRUPTED_ALLY)) - return - human.status_flags &= ~CORRUPTED_ALLY - human.med_hud_set_status() - personal_allies -= human - xeno_message(SPAN_XENOANNOUNCE("Our Queen has decided that [human] is no longer our ally!"), 3, hivenumber) +/datum/hive_status/corrupted/proc/remove_personal_ally(datum/weakref/ally_ref) + personal_allies -= ally_ref + var/mob/living/ally = ally_ref.resolve() + if(istype(ally)) + ally.status_flags &= ~CORRUPTED_ALLY + ally.med_hud_set_status() + xeno_message(SPAN_XENOANNOUNCE("Our Queen has decided that [ally] is no longer our ally!"), 3, hivenumber) /datum/hive_status/corrupted/proc/clear_personal_allies(death = FALSE) - for(var/mob/living/carbon/human/human in personal_allies) - human.status_flags &= ~CORRUPTED_ALLY - human.med_hud_set_status() + for(var/datum/weakref/ally_ref in personal_allies) + var/mob/living/ally = ally_ref.resolve() + if(!istype(ally)) + continue + ally.status_flags &= ~CORRUPTED_ALLY + ally.med_hud_set_status() personal_allies.Cut() if(!death) xeno_message(SPAN_XENOANNOUNCE("Our Queen has broken all personal alliances with the talls! Favoritism is no more."), 3, hivenumber) return xeno_message(SPAN_XENOWARNING("With the death of the Queen, her friends no longer matter to us."), 3, hivenumber) -/datum/hive_status/corrupted/proc/sanitize_allies() //remove deleted mobs etc - var/list/new_list = list() - for(var/mob/living/carbon/human/human as anything in personal_allies) - if(QDELETED(human)) - continue - if(!istype(human)) - continue - new_list += human - personal_allies = new_list - /datum/hive_status/corrupted/is_ally(mob/living/living_mob) if(living_mob.status_flags & CORRUPTED_ALLY) return TRUE From 630d8c888f9d0234f67f8af2c975afbd91f6d9fb Mon Sep 17 00:00:00 2001 From: ihatethisengine <115417687+ihatethisengine@users.noreply.github.com> Date: Wed, 17 Apr 2024 22:01:15 +0300 Subject: [PATCH 8/9] Apply suggestions from code review Co-authored-by: Drathek <76988376+Drulikar@users.noreply.github.com> --- .../living/carbon/xenomorph/abilities/queen/queen_powers.dm | 6 +++--- code/modules/mob/living/carbon/xenomorph/hive_status.dm | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm index 7f46097a0aff..26e249004ec2 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm @@ -452,9 +452,9 @@ var/list/mob/living/allies = list() var/list/datum/weakref/dead_refs = list() - for(var/datum/weakref/ally_ref in hive.personal_allies) + for(var/datum/weakref/ally_ref as anything in hive.personal_allies) var/mob/living/ally = ally_ref.resolve() - if(istype(ally)) + if(ally) allies += ally continue dead_refs += ally_ref @@ -493,7 +493,7 @@ to_chat(user_xeno, SPAN_WARNING("We don't have personal allies.")) return - if(tgui_alert(user_xeno, "Are you sure you want to clear personal allies?", "Clear Personal Allies", list("No", "Yes"), 10 SECONDS) == "No") + if(tgui_alert(user_xeno, "Are you sure you want to clear personal allies?", "Clear Personal Allies", list("No", "Yes"), 10 SECONDS) != "Yes") return if(!length(hive.personal_allies)) diff --git a/code/modules/mob/living/carbon/xenomorph/hive_status.dm b/code/modules/mob/living/carbon/xenomorph/hive_status.dm index 1397099846e9..baa736382733 100644 --- a/code/modules/mob/living/carbon/xenomorph/hive_status.dm +++ b/code/modules/mob/living/carbon/xenomorph/hive_status.dm @@ -1333,15 +1333,15 @@ /datum/hive_status/corrupted/proc/remove_personal_ally(datum/weakref/ally_ref) personal_allies -= ally_ref var/mob/living/ally = ally_ref.resolve() - if(istype(ally)) + if(ally) ally.status_flags &= ~CORRUPTED_ALLY ally.med_hud_set_status() - xeno_message(SPAN_XENOANNOUNCE("Our Queen has decided that [ally] is no longer our ally!"), 3, hivenumber) + xeno_message(SPAN_XENOANNOUNCE("Our Queen has declared that [ally] is no longer our ally!"), 3, hivenumber) /datum/hive_status/corrupted/proc/clear_personal_allies(death = FALSE) for(var/datum/weakref/ally_ref in personal_allies) var/mob/living/ally = ally_ref.resolve() - if(!istype(ally)) + if(!ally) continue ally.status_flags &= ~CORRUPTED_ALLY ally.med_hud_set_status() From 66d85adb9e8a9055184c9f0176e0a4ef815d963e Mon Sep 17 00:00:00 2001 From: ihatethisengine Date: Wed, 17 Apr 2024 22:37:30 +0300 Subject: [PATCH 9/9] eye --- .../living/carbon/xenomorph/abilities/queen/queen_powers.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm index 26e249004ec2..38e643e0d25c 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm @@ -410,7 +410,9 @@ var/datum/hive_status/corrupted/hive = user_xeno.hive var/list/target_list = list() - for(var/mob/living/carbon/human/possible_target in view(7, user_xeno)) + if(!user_xeno.client) + return + for(var/mob/living/carbon/human/possible_target in range(7, user_xeno.client.eye)) if(possible_target.stat == DEAD) continue if(possible_target.status_flags & CORRUPTED_ALLY)