From 067c83583caa54a118647c9c65923624d9e404ec Mon Sep 17 00:00:00 2001 From: Kingsmedia Date: Fri, 27 May 2022 21:12:11 +0200 Subject: [PATCH] 191 - Confirming Shotgun Hits --- Content/Maps/BlasterMap.umap | Bin 1342500 -> 1336690 bytes .../Components/LagCompensationComponent.cpp | 124 ++++++++++++++++-- 2 files changed, 116 insertions(+), 8 deletions(-) diff --git a/Content/Maps/BlasterMap.umap b/Content/Maps/BlasterMap.umap index 6e1a06cf6cb3cefd2e1c651259c7e3984e202622..0a0b90cd65e100a3d3ef12529561345a9967ed98 100644 GIT binary patch delta 160714 zcmeEP2YeJo+rLdAxsY547YHE%5|Gd#q1zy#OAozClO|GaprRp)iXzQZ29Op-L_mrP zQA7wT3W!Ru0iuGvQDRpVzUP^p*`1x+xxEwgeP6%q@Aur^%>S9EP2JhOz16?we!o9= z^DM3WYx^`;q|4>%K6%n;IEA^6`4(xJxjXy0TwB9juAw)%T(3YrrnfKA0C%~z6=|+l zfj$A6m)Y{8_LmIkwDa%>E!#I9Fl@q}Gq=Co<<$;5;$GR;zx~O(HQ+}%$9zd)y{k0c zt+^(RPJ}%3I1dLJ@yRpyhW%3Rnfc!7;m@QcjjHp^ciA<%j3#WaXlNp zIF`qiq2l^Be7uV9WDWFI;A;@Z>ff#r-oqHb1;&~I1aiJ94t$R?dDymUad~+{hb+f3 zGuU|sFka3X1MuAje4T>i8_VQyhpGRvVhoL4KeprJ4VMcJsMD;$#-cm2Ihgl13?PBEEs_x?}{M#S^*!8 zzmvzUgA~{<$JkOBt;$v4P>kH#Nc^>vapUrvyGZEg7SWX01#;8iw^GT$`d>l`HCP|;&- zNN_NDc}D9;fn9?Tcr)<57X;r;z*pOm58{uEAJ{PR1p^<)vGq3$z{iJiTyM7zz{iJY zl-DRP03(jicpzhD06soE<0`m~4PSYd$Lk;4Ocu+_6I(y`n2*n>xUr2u&exG)PXOPM zAo%iuub-7qZ~uublQ$@A3r(zyG!mSTH>e+g@BJY7a8=#KmXGy6-te9RM*Lm|)QOSd zin}u*_W<9kwgRc0F3xus@V#Zj$9q$co(#ldpQyWutB1h%X&^pd!D#Q5qUnYzLBi(& zC6ojq;md#$a>h8@@O3~53xkmGZ9oYpf{<`BpoFZk&R(1jC?P)x2_*p~6bB*Uhkz2& z$2oiPQ$Pt*gOKn`Knc5pknmeT2?^IadvP|Pgb_hV_%on{EkQ^)A5ele-q{N+&~V|) z4MIYAKnVpwNQew5p(F?iQ2{07T<07IcR&dXgOI?t8f-^H--+wIqiqqU7e{2ix8TGV zAJEqP3C^1MlO*b2P+>t?iNq7nvkJ$(`7@3fhLGpd)z{jru^Ds2c16cSdGYU69`FF83 zaRd1!Aj)eIKpwvW#7)v+VfvPYW%b1c@=HLBOnF-S)>WF!hmi?}4pW+9Bag9HtAKyaYdm;$F1;Dpf$p`-PP|pX(CzXsQ-#p-3 z7X;s2;9Kv+hw*;^7&kaE0^c0qdnyRN`+;v`5PbImU*4D?7-s|H%|YJ8 zoFiK5-|cS+@?E%WU@Wo`Sb^oe$IduM%(R(3Wj>rEtbDEYRxLB)Bw=OL`96bu{hQ0x z1HM%9?3UQbwUC+Q({AyG)!c7nK51ljH#656nbXY7^+x6@BeU{0 z%ml(C+7;odqknbnGgu;fK~^QI_Ioq4w~?9hx?xKnBeR{E+1JRNXlCALWG*r@?>91c znVEBp%&*MM2aL>w1BUjwEHhCv^X3_h*O-~}jm!tk%mqf~Rx=ZB!-MNvZWTrLHyESd zFmw+vGBeH0g+}H;GxI^3IbuelX6E?}#`QEa;Zvb03aB6;{=8s|1)e91T5Sy?L7WsqNly&fHe-NAWi@x-`619VVwqncH3tsLIVhh*7 zQT`ydbRC@Q4`Peg!EOE^wtOA@*dN3$KtV0qS3Iqwr4?XL(6KB(3_FC54f4aVU+CCf zei-%-9oyiCVK>pScl|KzEjo7255rEQW3_zww^)6^&ZA>J5%VpZ8(aBK$V-9o8;9*^ zpj&|OxaANj_|}u*J2*X!@?l;bHqK|k_Z-ZC<9o`N=^Hw)qVLS~i1c@b{)lq%a0B(E z-(0RHWZ^tdHDB7gMBjmViN4|av5}nss^Tk|=hg1g!86lpXB-#g;F`25vk}FtV6sLW zHf*%zNA>6v=RfbjAI{`*{^dsu`3ZjZ_zD(ywab0G=XR{=hk;^zbV<~G1UYT3#C>m( zbJ_={))FBKcLHBEU+#n6unNZv4&ND{UWe(RGlEH~!RFwo5AFH5Z840m?nfqH_JgsJ zsHwVd%fsHVrXO37WQu?$j1=1ZJrEwPeN*Rm^i5x++fqZ|pbZN+vQC(ij?atL?(~%` zN(#&Rgw6{K7Q{w&0H&J05yTs|>{Fguc@t)WG(2$5<+Fb6&kSh^9||#A3w*VF2}`_M zEno429W5A+;}i>P_Jw_E9IthbwqM$F;Ml8kS#}O-A$a)>kZ?@u-7AhGUp7 z|Dle^L483EbO&R{IcA?SCG{kF^gH-=FZG6P`N2RQToPLuS32#5U~FL3_sx$w+k&O_ zE8hh?R~kGn*DOfmvFK;y(YtBtBf658d{dWs!z%w`DDiRRWr|$>t3UDzMTY$5kL;ny z?Y~rGB0|jz>EbzMP8{W36$zp3Yb}F=*%N(EXPyqWE7MRG4Sa^v;0b~{noU3IPu(4X(Bp2%9nlaQP(56zThFMQjRgzxD>g14Vtx2BGJg zd&~y>j?iaOa%JC^&ED`wuJHI;Pp=6p;aK1Bd5N{Y5V%lWPbL;mxD3MMmsZv?ZwqBm zG7=tW${P9&&aF*TYRLugAwE8Q>}LhKW}5{P!~$qVU*CwQz2OyeOcvj&&9N!CLdOUF zP!=9n=_glgH^#VWQ%yR@zvfGL)*Iee&fZJ2Cw7;(_tEUTdq~;)Y4-A-QugaKduy(g zeSl`a(M!sH!?$~@H~jP7W;U&Me8Pl}1WC-DKl?~bhk%K9yi?58#C|3db@grE)Ix7~ zSbr(|9h!ZHXTu0rYll#c?Lpje9!B{7EffFI047H+a33)6=WK9w(}T@$`vxis+%FYa z%?eZ+ZWc%oO`3xReCf}7wH>~a!j2Ym@nT!lzL^Q@Gtm@gDS#K?Vu2m3K*Wt^ftsRr zyeJn7>}3Utd+LR4Zp>wV8P39on_c!#xi+Z&6I~An?DDI4S=r@+b=ie_Iw&2zP1pLVH$85bn|FP~M{wgu55Ld?$8!!!KPeLAZILLn9uSAl$pq zq5IYd(2l3|k+l!>9&`{#sb;LHZ+XJXNPAEpyao;bVyzXT-4tc;9>`^sJZWWQG8XRk zhG(o7ptPN_DR+Zzd_b7nk;&?H@CJ$T9>xgzsKI=-JZH1Sc&|d@Bb;%5kv;_W_2si*nxSyPuL-7$b30AG8;4;^A)`64WBMSDLDwSP@;@?AdN?( z7bO{OAXAqSzS9b&v_;59#&(G@vYjDg-YzEN^vgAAwc!119;pN-t9_B6Xu+$oDY!?; z?_r~{4H#p;-2&r=y?SH88``|0PeVaG?s|zc?yVV#o0`LX+J0~N^)K`6X~}V~31e!u zFX#27@Vj0yVeK{F)%$CNr|vPcEG62|5?fVpTMBo7RZ+Sfg})SF-5X!Z{_&_oJN`q2iO1W;nwPd3P8 zTIjN$ZJ;R>O8dnIn(CW+$QxefR~zVh3Vmw_-9Vv(zuAHg#~)Tk8s2HX^mn}BlmE1Vrc5y(MoB4NbAfDv$>B0Sax7w}IwT zXnr{xXdYEE$yaj7R6L)ucPnqhzJNmYy;cb7IsI5tc-cg2HZ|)(TH+f!$VYYW^A)^f z>VAkuY;8rWBv4TNVN&=#N!DztU=fuv+L!yDDTPp_?UHTS7gMN4Wh(><@;^?}!hG6c zQ_4~*`Gh6!5o%vise?5N&MuL;&xsys;hfjrhP+xy!fZ3vc+Q8dkZqr|*Kod^6~M*3)NSqF@}& zhJ@pcaac_&BQ*ylj$w@4oYuaC4@GlEeB}*Ktz|82m@`Ex{DX?|dd7Gh&UhTGZIx)4 za|3`llpP1cW3zAfN1{0i-+03p)U_5i%z>Yy)53>oQI~66Jq6><5@U9KE2Ck~G>Ng2 zZ|ZT;oZa7gwKF`=u!C=<@mkv3&???w#2bC0w<{Z284WvbWsJO*VATFZv}5W?Z}^Zb zYhgpn3`xtSjTMZyON_})6pVLB=KLlx(tfzhmwwu-z2__blv-+-lP_u6)=Z)0PKj|* zb1S0}ox3E)n|=A8i_s}Q;|=fE(puOs2d}KL4tS$!eyM^HFSA8P&t(e6c*b}P&Ukzw zF|z37fA7^^@@0K#jSgOFi&~amq0oX?+9KoiS6Ug3=-~A>GJXVvM`z!Ouf*tN{pby^ z-P&5%hz?##W8vdKctmF_81aG{8IK?r9ABvz@e*6Kdv}giB8$$6pS;=<-@~TG-I?h*bELigB65 z_-03|M8llrjFGp-jlPnTqB%LgdBg9y%39bkXB8{_9-Q$Q)>*;Gcg^{Nu~`=@qhU?~ zNWtiEiHW{~)1o;gzk9WBc%EU$V^XQ2ZdUOI<7&pp2g*g=t&D~pk4uabeYqu~9R+`Q z!`t<=7B;l3l?tciDj4zZGL z;fzOlU&60Kc*uxwFywolX~=&CSVj4VhFawtjC&a4aX90#d6Vj%e>)n}rW(TERL zxyab;;e1VuPjOj@PsPdB(uNwGlEwNusba(igN(<4@OWj4LgEJiiuSCYYGq{c$&Z8h z+)c8=bYl&Jl2~!xlE>U&Ep9MkjiMgjlCQkc%4h@#Td>HOL{5ZTB9s*mrj!`Dh6W5h z7UXTG_-3mHgYgr_cpT1nY?`KE{1iZxcpM0i`O~e8EH)>~fkBhW!bmALpFB??A-e}@>#I!mpLhC%5N6=dY&gNsb9XfbGa zI#kw2My_E>4OWoX!HdhR8VttT663PvRz|~=dJ^MpB)yWwl&Li!HiK4LiyL~fq~e#Z zQZVvuM{aqg0tI7JN#ZXOBWup-H6cRpk>X_CSi>NEloCVB^=y4iq324*cpT1nJha-% zXhf(LfMTuQNb*xG5h~7r2z6OwEp8Z;&5HBun;K6j7;_}Xvns|m664!ztrA&;@@qqc z)|0F%QiSl(_7B}>Cl!||& zV(cU_zO+#x5g$DgU0k}!%E%&gq8>!(da^K0iclA+c;_wF;)dm2CC2JcD;T>;jK52a z%%Fu0z@S4Ur@CZN52^UNXBB#SN{n}IwK5u2mMbw1A|*8}RhH8Ts;qILwYcFpK4T&V zIOaJ8V?T-U6BT2BiE;b$R*5V^C7BSR2T4IqDMEu-aXu?ge!*JYusnt_; zX6%(P+~v?QZ3anb2sVJ|$d|?3-Hli-Zfz8iEiF(^u_Om~GZ^;A+Y*Kw7`)tj684&b zX@8L7rcBdbBR71;2U3ZBCicgN5{7#WT+?w0!)=8kval0a|Hmg1hC2yGBt08y!bkF( zGb`ROr49K?DuKHPOw+M%Bn&qUn5H2oCG4P44jN%rOQs2T4w$qXzL!cIGO-_il(4r= z?1ob;-4ceo1T1JV!2(>UVEM9`JmoeivCP)}A*jTYd3Bm;j zFIG{)j&m$AELnn1aL60JF-5}gnxAQ_DnWRa&wSgMCSjlPVqUF1Dad9~#0z_7-=3OM z3A~nPSo_)%_N9sKsViY$85n5FZNoI-WNGgF>;9OH<3H#Q>_B55S?+gqyY3-P% zlSXd%o=c??rzl2yY5OZA?6g_#SStxTV_@14vZX!KRAS_YA8RX>_?}|e=fj6|kgy+2 ztmah`_M?Gmr^twoOw&)Mro!%03EWp;(QA<_VZWGIVQ&fh)x=u#ld#_?My)R#AYs3o z04(NO2|I6=d+$04 z!{<3+B0`zvua_{5VpL}L=@J%ZmaBZ5goT?}zkCUcFtG>kl`!0(DI!$gn{y?sjEOB> zAYoA^HpVAm(I(b-k%Zxo(sX^=Ig+2tniT%VlUcF<5vfF3iqU8-S|MSvCU$7GgvFVd zXT5~s5ByjSblxIixD&;&dkQ5CH=h{x(u)#?Pm(h1+{+S%yG})9cYmny%l1ncZZxrS z4Gv0JqFL_R_av->S#HQN39CpkTC0mckudzd0E_jg&m|1^vY0KIUrAW9S#H8939D>k zElVT}H@KL-h#w^k_q2*gNxqgC_Ok@xE*3K-_D>0`YGR$j6D%`y3T|JCJ-ant*TXT( zZDowa?JH*2%kdJ1J625j{PGf3-Nat6Bw@H!#p*e#nuJ|KvEm`%>m?FY(-hgfo`hwX z*!5Wwh8tc*WW;0;*+PPFiwl+=g8{lyg6fzOw`EHhZf!BgzwaPnxSPeWhTS9#H?SBs zzPE(olhX`aGf=`Bn%F19Bn)@8Sh=cWBn&sQ7&d5vgk_o7qU$BBv56g;E@4ef%#$Z! zO--!x-4cdR_A^`VnImEND_(}Zv{1tEop200Mu6$~zLT&{6w4V6+P;^d ztIT3Wze-qViY4@eV&^PSoG^p8j4W>%@FKg?QYB-cR9Ok?W-8m9AYt7pHsXFLmLx$v z%wn~xN?1=58+D0<uc(}He15_ zndMG(kg)zHR=1mk4KT4Wy(Mg*i9I?{!Uj={`uEW=2^(ydTQ^d|hM3qF<0K4!tH=h3 z>XRjGsEG}|Ny3Ji*wWi1Y`BTNmoH%>OsxED2^(o*-RDWzH70idLlQQMVl*zVE|sv+ zX1NEKOV}6_d-E{~8*5@Q>m+QPiFMd4Vb_}2o!caAJjJM;J9kLfb!NHycS+a;6MJ=! zgiSQDumch{$;4V6lCa4pcI#mYn_^ZZNU&B@%X{iLLoX z!frCLPyUp!n@y~0gx5M^O`{kcCkDkx*mM*7xSWLDVq&9`B|qltd0E01nb?c3N*FP*`}RrLViW6oK*E-oSo&KMw$#A1 zlO$&zyR3i2$PIt~9jU}J6TAC;30qDv+JSP9O4tgcoHmz~%x9Wb8oA*EKb1(j~bZvA}LtNG(BeIhTnHeDzVzc`j$x8<0h8=qlB$7v6DYb*b^r9{BIJr z*2M1qL&BakvE1_#w$8+=ge6)B=k+G`b%ca%FtM#s6803uXr1N9NZ3Y-;eZd3+_H#8 za+4{oO_Ee%vr!`4Q(3~cn3yk3!k#vW`1r*fxoSp|BRTAH^-U$3Y{2# z{F^mXAlp@$?P!*T@7^fPak-}HOm%!+r$>{bm0BV>p0CAK2IMGkgA@8~Qhd@Cj{AEs zk?;ZsvS0@&Uz>R-sg9qN!#Wenb-Jd{scUw$%meP3pTEy`# zHKy^s;eP-XvNXQh{Txt%lztT7g^UF_!($S|YL?yzh0g*#ETtDoX(FW;OX($2dMUn( z84chH9+4RE=M18Ok4xz_Qu+z0{BkM1LQ1a${Zs+|wa;%rczYQYVio)fBv!#MQW|lw zN)Q**h>KN(xR^#fkJlM0LU{U@O3nSoekzXOSNifO1*BVw2qs}$2> zmHr6&Ep-YR=fyh3v{q!#FaY~wOCacU^t=V~@%vpsEr5)}7kAK0W==?q$SVPsEs(z*2;bx!0p~N2 z_cWYe0K%85^Soyuy#ol}1dn;Af$v#3zX*hHedl>wA-xj_U+|8t>IdN41?Pu=Fnu>r zM<94=MDK|BSD4=bA%H^gFE76ax);7*3IuX!)BFnZg82^Y^gv#W363!My%5T81A?#A zkOJ(8mp~$lWjqS!nn3tC0b2SPPzI2jrB}nb7ElaJVrJsOvV;~$K z(E#jc$?W^HV8}Ch@PR;2IB#Y^58?Y&!uL+X_m0B%4#M~L!uNK<_kP0nzQXssK0>0q z@V&S2y_fJkSNPsd_}*3c-bMJ{nSIArE8V)oKXavx7ppigT z!P0x+d>2r2Abgor2RP#s5T645ftp{3FCPHmt=->%-Uq^)uXvO7Fwo0DM}Uq3{Rp%h z=p~>YKm&pL0X+wF00JRi0(62zff%>55eSr=F4FLKW z=y#x3fX)Ja26PAFr!%{mX7aQq1a3I~b+ ziUcYH6a^FwAq$~s9BwG$#^KdKLrG>QPg25Y z_&Nq?EYLWhYsm@V)TWRrfND1r_Xh3qyn6t+7icYbwGL=KP&QBwP#d7OK<$9SfO3Ia z0^tEgTpQT=DR$lnXFS4z9tNrnRFbi8p%*yuZva{c^tYt*f>iLNWPmEoomkKKacOlu(2a`pwN4Bizd;gUm&Pb!JGly| zGEfQ-=3(SIlah^^H?IqPtqN2P2%$)zu0Ux(=|I@5HiIfS(F1ulLHb@ecLM4Tgesnf zyvfWYTiq2lL(YOs7< z$BqF)Be@ZyA-x6Cn8ytn1$j@?JZNrW<}-|u8*mLUK5LV=74lFy*6v6kj8Y+d;Q2Xr zex9ATv-1n=yn~%z#B(huu#;u%V&@`u-p$T0!MSk3W^F(ey`akmeXW5;0AWS)blbl_ zt=HB+s8Dh+FR;gLqzGK}H0ZZjbkP+!$j`gj3Uefd4(Yt}4h(-Y4)Onw8UXtLb^``V zRWe9O=e35!03id@{iU>6zz&zo%W1j1kj|q6kC5?~(y~I?0Xc2*=jkJ#nW3lU0)wT9 zTxi;G81&nEEE`}HQ1HvRTwZpNr}OyGJ6!Tm7C2PGWd%bdJje*;8Iz4%KsI2Qq(C-^ zd&C`*ar-pP)}a*$o*M!BFx3px-k6${slhl&e7Q1#;R?9_Y6iAcsg6Ag5&mfURu2a88BDIl=iRZNj;j+N1C53WY z=9klQqm$Eu!}|O$3y{+RLkPzHbv#d>eq{l2n~-ri?ZhuPQX>ue&$k9LGX9}7H`ti} z|7io5K6C#6rwz~tq5$*1Y>?b2LrqH~pWf@_`Cr^;Xa#LS-e%n6&~EHosNoXn%S&L!>pF%)q`42RI^K)wrJQilX!}?j1J8jX11U^&#(vbC8(oq z8_(y@($Dj_)rV@3aN7#}+t%w_) zcyNBY8KuHH1EY><<4D25XtfmFqf$x1?IIOcU|^sj>qr1Q9}_uqM|sq?;MS^2A8xa% zFx+xgVYvIM!f+>6h2gHO3d0>*6^6UDD(vw9*ct+X-)Z;3)ETzVS!pQZhWfzD{bZWW6ys}E5FQdRHUt(4V6%_ z^j3y*7+$n>LHC2cENcvPzf1MQZha2shW*>_Z{pFC0!B7T3@H+8z# zcV=2d`-qrXuFqkB|6Z3!@0PN!mcK4<0hxHW2oG*XXEu!2q-M0j_K8QLesZNVn6uLj zan8guzr(9iI5MaV?Hw}jXDum%qx7kOcbF4AvxpXeTb?BMXRRt}dQ9664@sRq25wg; zQ6Fl{+}|;dZDiN6hK0iAN-v`llz6wE9@9Tzvq`!(S}mfpa@O zc%e*^Qzs(%GQ63G2afD`aK58@QojL>-+4KHZb^zyYsqzSQG$nD{v$nGzk`C`N0M^K zwQ9+iDqWh|+?`5B9oG{5LdV^H7$cimlUsmN)#89Pg=iPiWpCW#-@O zNhPaJ1T>Ml@ip)SDU9qE@$f4NVkUz(SVzw^OEj>^NhFiRsHf6&TVqVhM`#}J`dOlRNE_>$Fo$5MRmDZ+G_shI~hZDx|TLt zv0BTzU;ha$*PZ((v>g5IpV0Ei`F}!7%-IXpQjd2Xc(jxreyxVj8o@N_s^sX0S~BT& zOp7KHkHJ;;mB+N&ZG*QhdLTvgjU}wgjUZ6S2!iHujA-A z>poy4akt*xg!!Rw-n-YbK6!DQC)$`5%$=zdE!@duqZWpHQB$6W zeU77ASe!eWcTI9e3#&x>&GD4WJIIv#t$bYB%i6!i!0N1^u`I%UBixn8!@s1fT=p9} zW&;lYrUO2Qi3gM3g@;vg z_hDj}l9D$)X&JoA&;tBN8s(w1705hw1&InJcP0dohCnLge&+*#mu*|Ye=wtOLcOc1$WYy|6454>c z+@|XJkzuK@M}Fe{s6?SH;q4cv%N9==Q)yE>r5T1&=BUwJu&J0PY%XKxJzhkZ-fzD~ z?R}#t(~xF%h6vu{-6FyJ;wU@SF&5QWgzOk)+pmhBh)*WD(X?Md^cxFZ%7}fQG7OK4 zVUS~#37|1B$e>rWPzF(~a0zC6c|O%mV+Om_iDZR4tgM~k>iWZ5OGf=IiU~{Y;@5a_ zNoiD{Y$28xEQFNbrFdQpHE?lESel(}VwJ+JEul)|%i2|G1<+uaL+^%>9T8!6LnZA{ z^U8AVRqZ=e-ZpBq%}6l_03$ZC<9H+1Fhd5hq%taunQ3*ARmU|qnHfvXO#c#U@u}Fb z3PPle5xqJ7+6E85aXIGw8du=YaPW`^v=;hC{2)(atEaNow(8lpL2KA}X}w?P)_2Rj zm9t-GY5U@2Wn5TY_ff7NuL`^|*+-1@>A0|lmR;FbBy0HQbun6#Laz3NRY+dLc=$ET z0vsmcs9re76Sg?YJ(}UwN&Sj2w6VJmH&zU5=*GLOcx)r-A4b$pzA=!tR1%#OW)8TL zB|VcM*!Y`$Jl-T(TRdLUvxz%$FrQ2+ax2)`82Ubi4E)s<9)8p4>MZE<4D|Q!L=yUk zzu(7W99gv@GSU4km!+>ArWr{X(K~66(;XAC;CRFp5Q!~yB5LR1Ykcrns-KLT7Drgx zcyGMp-Hi`eiH+>+x56L6RBdJq*h=E?dl&;Y;S&nld~)K!DB(5}?BdZMtRW|FSgSDs z#{$|e^PbRCEuP~)VyfKM~C@}*w_~oxsuRFcv#JW*RiK1vRU`)h?iCx_1vTl{V5;YN#p zIXyho7T>>mxLu2fyDXVs;B`e;NyooqLj513bwv+BT~_qu2C+ zJ+ji4j;)8cI@kYjOW)KW{P0f!S~|T2x1&Y`w)El}5!lkdt`YH&CXDSR84-!@1sD)G z*ckt2&4>_Me14+4Ue)Y_>zidy*QFR^jXBom)bMNh6^FO^eW&A@>^{5UG^x?A*UTIbe`_x5x&hb<(JX$LO*qVnEXX9Rr5%RC4&JxHgLXz-etX zFtkhGMOEB(*8z0q=v2imU-?#?`PF6p{AUM;B~i=q!jh=}M*){a_=ca-X8&()_DP=x zUJ}u^_gHeI|NhT1HW5@WEKZJGEv}L7NQpGoNUx?uhHz~#qBy#x%>+RE-mAsYiPF{Z z@S+w^*<2IIGt`(sv%s*r&>dI_zV&0e)}#u!rk)n?tyiV})A6%I z(Q)OX3f~h~+I#-Zz2}K*A{Pg`;D&*{5}C3zvXWo#Ni=#-!BUt_gdM1?<*@s1=`XcO z*=3Pgp)Iw@<_OhVE0uh^3{+U}GE^+uKfk}tS_`dduIwHa8~S$-)3e)_qi066u;)X*js550RSa>U5aWHpw9YA-?MnA&iEp7C)&Hrn+T~8m3 z9N^gKr~fK8`X_%?H~O=`h1}??X4p1*dU12~_elA|x>He~_+I{ly}U9C*yyirDm41* z&RQFN{+7~_o<;NDdavP;^MM;Z9dK*cDueghuB=rCNBX|C%A`dLE1f$Um0{P>^~r0E z$}|XZg)=C#jAAz_mHd9GTVCOGTJ`3nOy@=)2~P5L@7jMMz^+~@$(V<>9|CL9PoPU4NFHk4>^+x|r zV*2;eVDL}fN#Ng%N;?T%IsIGrl6nn~9+2hKNj_d^(@CZnoh0_b=;>l7nd>t<$$P#~ zJ4uL7Dh;=PQc0dG1_$aR?R)$85!1ak52JhL`l_HItl~u=S{?q= zH-3IeVuM@F^lp}&Ag{GY89Mc=?xm{Z?q z6&GqXgt++3uq-~+U4#Dm>xC-r|J_;$u4~{*!J%t(Di=zfgt!*Uu&jmD^+BJ`cqQ#$ zKUCrGP95r_mp7F9_>0d2XIP#GR@V!N&-|YqsDkSv_&Z34Dj8BSlq#WZImF%949o7T zx<0tZEjnzo7cS-?=!{$E@n1)JN$A4_g6>Dp6dC;1jn_S0eLjhEfSI?WU3tA1uzW zJXoxr(&_VQM>770FGUp9fDgYpRm0-i?sD$k`Zf-{@a%j;cf%03utI$5FT?WGU*K9< zRQKOkDfsA>Q>E;xcLA01SDrx2usngLt`xfZ&1mpHe3hu^D)@wuQ>}c_@B(Uu4qzcZ z36)`a5=vbww8pz<{`>k0zWdLqR^l3qwXz5wwZD(;PeziQ$%$T)d8s=k#4+u!ycIEs z>lFCMgnFKtKiz(+bsuJ;{&wDf`2{|{*Un){c5Ac0p%z1Y(_au3NPF@5=FrCeUsWLf zdc>guzijz8RA7ids>!hYs75_r{y(ine7?`27W-Tg;-Wm{ryT#E?z1UhhrAh<-pbb@ z)7z?KXlpmV_dLB4{BzQr*6xbh$ihckyKj$-nFM9EYv7|DnYc7ErLbLl_j6TZCS&d> z_-IA;?TbtylZzwE6xO=NT|TAEEeMS+Y<-8jMM@dGd8>^roUz1xZ&u80m>35iQ^~41 zQ7Po3hoZ_9HhkSZGAm{VLf68_B+}@EsPw`Y{&1JiEOR^N4laDVe$3dn%iMv9AzQP{ z_CHuA55JEoTz;@@$4_ErVgg=)%Rd#jxPF=Gm^-qtT8ihj+IfB1Jni>7+k1d3O9kEqV5SOe4qzh&^84+^ zg9I!eSm>d@0DDq9_{)M5DtXVsZv@4=w5h;|c^yCk{*}R}Kz{(?TdeVA#;1UO19~6m zd!QeH4gdL}0{RsQ9wl@20qP5M5NH6<$3VXWy#jO==rf?>Kqr7c2igPl1rR=%@CneX*sQ(+ z`WmPh=n&91K(7IP3$zyq|AX@+(Az-o0G$Tf2XqE#KhV2CB|z^1Z35Z`v=Hb)ARkZ> zP(Dz5panqp0o@Pu0MLlJ@G%c)4$yp{CxQM1>ImVU4}?!xYyvt5c^aH!fbgfA)q&~( zH3ez`bR|$Hpk6?OfJOn02fCYd+n`m8TL51d0zC-iBPX8Jszp8mUzd@Y9XyS+CrQ>i zEs1npr=@0{2SqM`!hphoB7pGi=lCXceBpUCkQ=BhP%Ka!S+Y*65m^zwCXwCiv|5oh z;Oiyi$TLHtsvbRC>tmTs0~nCpmsp*fjR(PMJBEXp}pa2 zAF>dN#tnwA_%!X+KtoApCr?rWzRhq9&{!bsNY|1Rz^P3kQvlU&ChiT|<#p}>;9j7$ z;MF>y^+3&mvVn4d+5oi$YDY4!@?^$g|HA{jT640cdTb+7R6RD0e!#!XM)tTJWZ~i0 zbKiw&u&a*wy*L|N6+Lh~#G{LTa#bf=rY9zby{eJ1YtMy2hi7gk8apa{gp613I!ni#BzZ$FD@kgbV z)qCFEwQ%G1+FgF!ww;&8k|Rm0u28cHWNueaLpSE2NSbV{-A0PKdg_y2(>%$(atF(k zq;8(J+6JO^_au?)yLr+`lgB*CdOemq7)MTbONb;NcJtKGo|Lz&Ggur`26C>0Lg0*sPn zAyYZagILEu9L*l=!D)W#5KpZtjmoBMjH>YeEg?sBvBg&RP&->afow$q4z|u7N^LC|>ba1pF0ojeKFrS2_&}DT00&D~ z4Kt(K`~uqQQj4vZ4!5%vo1U@-pa2J3pBqkXEgl|3REH~j)gz*%to0auzafCifgwS( zpPU_}{)?Z3Bh09_ynv`K6Ky5ejI9mEF(j9IhWo{PVegw~%yw%oCl5i)%cVh3RMR4L{S|aQM7~G2$u{ z4?m5QK;wSKw2z&cP*`%)#Wt41@dpo`11?fbcg$~aiS)Oq^V3EutnkF=DSevwSA6nQ zqC4z*OXU(?snO%2s;i|^=cf(z2VG+-@7@Snou9U*kfUlKDs@kgjkkM*KL^4l`UEq9 zx82SxJ)HK)ybG}KFBs_8fcf9O8C~=*br`#NphRWk0*oFLaWgaI{%NNUugYeS?s+gc zE+ubH_gv!M#dK^X=O6H_GiH*>EdKr3IhCA7I7!q{j!uV%+GeN6Q{J!#b#vTr{Z_hS#PG-qRKE$Zbijld zl@6G+sgw?wL39{kx%ex_IUv<>kfcv7WZfEgkgVm+==y7Gy*ht2cJwh_I#Oa3N|%-x z1vtdriPCH9(ratsUf@4>ZQY%>LV0P4dnok4&47SQOSWFbTlB$=peJSq9zk)Lxp`jc zGE*8$dlrA$NoTbZ5y-k%~mqQ$^Hx9)4n2(80%gjNXQ64XbC-^x5QhsNL&vDb(5`xz;b}_v63iHi zkA_;tP_{6oV`~sMgHp-pd8G?e9`({Y<`=M2!Gc(NRbP5l{~x)kH=eYW7p4Pv_l|-u z7d)u40T!Rd=L0YPD8=O>sW_6}ue_5)Z@ssC*i)f&2}|PzA8)c?DIXmw-3DNfc-dX4 zVH8V8+tShYKQh|ZRV`u5@y?BXn~t_l%TW4G#yyXC5`(+N{-n)AnI3l0YxhuQku)On zd;HW+e2A*_p-dJb#|KSSqtIKbal9XI3>Wpn@d;98h4|Pa+ATk}h`$oVgFUwR56v{X zPXFf!`D5V5-poad2X?m^q{mA79AVCCPnz%?;ewT(Cp!n#Px0r7d^O{+f?2UD*oOy8 zJF4Cs9QF(TD>m3lJ1VWKasRoF+E3L{Ef4&P9Tk5+9DJvZCJ#LBi7TCAX+8got}9A= z?*CrT#b5mg)pJwHb?ZEdjrq`ko{HaJVCycw$53x1Th@81Bu|uDdmC&>mm!DeuM~+vBl~ZE>Vpt|u3*I0#?cDU7ot^1^cB-ox5vZIi7N4;!aQfu#p;>(btnscI@=zf{mVCp35V8}ZK^0Y`Y^-qtNRDIRshVKi; zCnl0BUiCy*wb3)P6~9`GBw0U#sD_3pkdc`2K2Nf<7`>(7WehyC4NHGS3%EbzhEji~HllzGlsn?ry6*v5Ck5`!GdcNbS zomav<;oCydERApQqQ@?#lk4GU1b65xuIh}(Xh6RMpfrXt)3W61pS6V4&(>tq)Z!pyQUs!7ZXvXHrFV(Sm5p>ns%9P;Crs#nKQ}63; z>3Z$haW|ST;vq(~lCMxkfWB*`-%(F|0BG;H7*uNZXG+6>Ko*)hXl+ zz>@JDlX!6bW_g3>vNXmc_nWWvqWY^h@jDNWX&|l%lW$h)fH|)!8GGDQ+1|!fvhg@v zFbA|z=W(`iEi=~NMqI;I&Q==F@k3I@k0gJ73h$G|4$z2qfJ@o65O09C9Uvl- zOgiPM<~AD^UNl%+ej2Ob*@V8mVDe|4OAOCVjLv6qpL^2$Jh$PwkXB{e@+~@2$>z`1 zHg^BQ*+%5K5F71Ve$Ymy65p4e)WCt%dH&{>AA-dY@>p{GD_HZ$ql&)}ow3VbZvOb5 zU_5x!{)Z=k5hpz@jUHeQS@z+^)jm-OYQbo^)=M z_?Bus`1E7W77I^%Nx@wpo14tcexJD z+nKt5J)?5>LSj0z#1hlxB`PHs(XXuo9})b*ULDgqU`+EaUVWbGxzp4wSN75+$)+I! zNM`)$aZ3&PBE};x=~L4t^1u)OKovYy64BmlTF|W7Hn7~2E@I@bd_LJ!DFl~x_OWBe z{3jwm?4eB4CVlIB{!gB0K9X67u8UaX8Siu!^rrp%4}`zp3*$_ca`<6;{y!1^?k~+U zZ6f1;QH9|mM!tOAMS{xsU;hD>pQNu9RKnd2r{V4*y1S<7c0u>R-&F2i$P{woH_H@q zPO0P~4km4m95elrTl1JPU;HOp^NRbwGi@TB&i);-K6us=Yn(e5{Xy^B*{roLV!Z3D z4DVpf7yj`slWol30%$jFUPPM~-s)D{^u~eMpl!N{{q5`@9@8dr>`zr2xQJmm*ecOf zDMX*ntFWR8It&-lro_IeeRX#i={_kI8 zrC(9o)F?NGCQX|BCj$RR#|EZNWV@yc!$k~y+AWO*mBYeRD%*s7VZpCT`FRd~2q3_% zxAgG%%phLe-{Cmzukg=Xtk(F>YFn1x#?JJ;*qn)HdKg$hMs$i#?#EJo_wU|-rx`jj z(C>d`_;-dn)+%)1;byjGqUks!gK?l{3$C#?cb{2%! zI|Hdk&_VT_vZiXWnFXO5pAk}4GlCAPr^cG9h5x4_L8vYYq#8j7)&1kR>MY@jkRTNA z4x|`C2gO%WkW{vh>nfOHLmb`ri?+jeOVuIh5W&tBP1Uv?Pu(}07t83RP)sDR(Dki_i**Zq2)1kj*zK{j2TVHs9^lnv?m=zKfE>g!3*R`P>{$pp1n+TJMZ#K#)|)tF8LHLc zJ1D9qYs;y_H!Hc#0?bsf7QPVMvIK#CD`P<%67 z^6+qrJvWF|>XAUI5p+=9r-rFo?A1Z2J{m|hf)1)1UqV&$YtKZxmCY^@cH!@7|wo3^? z{Bf&zOgf3*P|Fl=JFcligg^cgb=RrKTes~>Og&6}8b~pM0Tg44kE(A* zI>ce>vp}j5bWr_;pxSnrQn#efMb#v}hPox~X+Zs>n}EHY`rN@9mM)D+r#|;sLmt0c zv5jrFywqNNY4KwJC2BA3Y$Ry09hlTwzOra}vZh+gh)h9?ZLHKRZMkNZKxoaQyDuLWr*IWvC!` zW&?{{NGjzvX(`CHofrhUISnmxG3hjJCR{4Ww;lZj`Du+T@-gWo|FkZjFGS0i?JZp1 z8cjewp8Y5`0g{@jj?{t6s3%ni#3zwIE{l)5fNi#)EK1J?Q2O}gR4M#0GKCEH#Yb8$ zp|{+^?zX7i``M!DXqMW&8COtEBaXz^v25T3q2w2flII(%l?=I(DxtM?Wox))C3e^# zH2rGPw77|_ru0^HL@;9}4upmh^-}9MQ3-svOg;z(9u-Kr))ptlYoj2v{~ky?f)3hG z>e^{Niv2AJ)n@~#M$kd^8`-=G)wZsY4BbLsFW17-*CDAKqn^s4a`Rt|Pm670Tbb$( z@Tce#ITb+5-E9Od;{0V;uhw$TqUAtKwJ%q<6|{ud`p;Xmth-dLrCB>ci#Q7zzNni& zJ{4hHB7#Os^GDF36~wg{bc-{Up<8GL!!NhA0!S)b!RNYMvs>HNk=n1YKz_KZCMhI3HwzV#Jv8uhr z3rH%x=-rcgq0fP~9;my&NAy4*(GgU4f7-_C|&`Y(u3UBN9cI$i^;eCGGoBCD6NIez2W@1>>i7 zwHS{{rz^>t{RR0>qiAk7i+oHv$&VaB<-_&kC3Y=Y9ik*lh`M)Ihv*|+h2CbJLX^J=I>!9YnR5lc%jFbuXzbYLbUL1RZ+G_`y{F zsYm1M+Fx!9?W`cz5=2Zo1+mKzDxS|0s@W?8FqENtsZp{tB88! zAR?#^V){F<0*W1K&V{Xq+G|%gma3w5(z%b?%WsF8URE1suSe}=HBpc3C4y=%>CE{0 zFsfbea1LX}qJCmifs}GMeQY?DiaSjedrlZ}Wj6^OwXzy+%^8Ij=~MI2mHqHC{uk39@8>T1nP5rtP-NM0Isv zA}W!q8$pNajvB>Pr-#;SYl@0Vr$K7(J~UKRD;wfcD??NwdxxNdch8Kb-oXWSn*A)U z4s5MJsu6Theg7C!b%<-C+JRIf=%9MUSW|U~6HT2!su6Th-EtgPUEQuZsl#12kYWTK z6vto76~jCpV!Z1G(v6^l?k{xRbd0dw{}N``oZ*(C2a`^->z?s~Yqle@I;;%>xrU&F zYs;<^bUXQWW`xBzOgi~?!vrdyhAzZQ@kXL+$9nC{M7SDmZ+O79;J3LX0o8gHjF|G%pGm1B}_Wi(kG()5F^+`^g@mxf({Yf zK1J}&c9%dM!KR{ak~&r$!3U>OEwmkm=wLHZiR>VP4h~Meo~ov;GerNIi>k@~acci^ zZ=g!(>q+^|KLV;GReG=FPq^a*R~4?jdSLBOXGy3a%C2O6OS9nwQcn3 zVe!&HJ|U>~i7t{)>$+(;9WP2JSX@egq*H%;<7UA%+vX^Q?2J`DCY|IzHI2(pA#fe# zyu*5MqQwVHI_a1@UD9D&_3A3RGEfyE=ukxy;Z8E_^25>(76i6CI6@3(PPX`m$pHRo z@$lGN`&((Vesg1djVeNqVjYCP)*60kLwe5fR8;%fI*^|TI`~=jHtHuGxon3I!OhI6 z7B?{&z)jlH|J23nVYKaK>ftv>bdA)%Ufq}9nITk`ZG%^9X=Bk6dxKib`r8F9wy{!c zX=~B)O#m%--XUnQz1~r4X=l;0|3+J1a`O1Y0M%lf*tTr7g7y{#>u$1DKr23TrtSuA zfZDF7)k->8l+3=_RtfxeD4E3P(@sRkQQMWRT1iKXl5x{)l~7N<%Qq{eNrgqElcm>TG+!gwxg;#YMm{b&Iiymbr#h`w+wBkIJJ^4 z79~e+RlC#cZc|B!_21Q^tL|3|5w9KEO))I5CpvBe~^&HS$)FLmj z5OkOWPUyP%{;S9S86;sMNV~%_5n$43BG^6KtSZ|^r*^MrAomb-aPQIkOw}PyLAj!8 z@@<~F{_eV;*B|RyA!_Pn(X?--TGOC8R1>ZoEWesG1`2f~dy7ishJv6&B%3~9sQ3E9R88)!}p5fY{K?EHfJf-WV6N+ssRXf;ER88v7QagBH zp5UPE3@>!GGqWsR4UMDb!TCG=%>hA&=CJ!=p`t?Uu){>%mY)dLPm<3 ze{hQLX7y>K)Mlh(EZSILATQsTi~+{ zteA8fSZ`dx<+B|yTOI1f!nLA*WZ6UN{@Q0H)kLqOY=fv)GTx$O#=~kQ%~qN2&_^b1 zXLYrv>nxgvEK+N#P+)4JTZbXet`jVpt{`enKM9(^r?`;!Iwo3Fr7l*hdiPOYNA>OI zaCH}(B&v`HQv@BF`L@TXVtsebHj={np?Ha!H$Hc@DL2#!Z;I#>*|b!xWz^$> zmJlbrsTM8sAFKcJ>cns@=HJqM*?VTLsjOqP3Y@I2QI{M^1RWwdd9zT9wxJaI%;q(g z)`3Z<6-|dNf_&SBhT6BhK)xa9;9Hfab=^zgR|4y|#mB|ibz5~c&J@*?+t#Y9@vN>0 z28i1B&#|g~%oml&^@pH?k4K-OK2p`Tom=hSouX<|XPvEo1<%s?fy%e-#8r zx0O$)hs9gD6XLr%jEgt5idhyFUjRN_= z-FA8ugiqOS5st|K!s*-_wa2tQ#1VdxB|sBiPzUH^L5c0)tF8rNQPOpXT1nxn+>
    ~6P0GHk_Hf!8f)?8$MO}xhL@lz12s(J!<4r-g?MS26 zT@Xk&f)2WCy=CgQzdx>y?xUh^vUHC+y5~hLwj+(&!^cD|a&!@N@bLYEf`_)_kJ`i4 zqHfapHCqqq9ktEHbh?=WHVJBCe%JYAu5u6L{RM`Y?b1BMyPwXz@OYX5e=XZjc7Ftc7%BKwD+ zgMSadPgR@U!*-ffJGnvBPh#FwJ9+(Ks)_z~)pkBqSK?Em64^-v9h~fRgsO(i>Uwq; zn^m_knSTEkH3I&~=|NI_T1zI!YnF@Fwif<*Bz}Pwc8f;lf2LI|&kMMi0N3L>^T7|| zn_gC+zk|uOl%4tG^6#*;>wWg64?FX}o7zEkSBp%m{uIlW%OB}>ok$occb+jFM-8OR+r|E?VV z@vDB7uMQ91Jx9UvF#ai6gVdS*vL8@z6l2s<$%&8Pa;gvGSxQRY^rVq~bKpN|Mc+9#k*Jw9uemDwZ?`3tEOl=M$!|oDiTe25@9q~8Y zLPx2bADwMk)pu0qzrT*4z5MLlUb075Z1a!Ai68_+n^iwQd8oC3T&1W> zwY~~1ihjWdWz{Nb(L&olT5L6HYpDWK@zny-d(Yh2Jm;QS@605$&L1qp+?n&c=Y8%y zGoV;Pb31!}L}jEOSCRb}D#e+^zzj_L#jlhCQvUUs5zIY4_O;MGRvZo$lM$B$vs`kI z;MV(k70j*slbuq_DJ$XiONV#}u6j#n1xpb8Nw4Q>hq35<>5B4&FnM|%RV{$>Y(NNw zB_A7uN(L#>m{u8Iqqgh$Ty{(m=5t_$!?Q7Q#mMSxW_CyRO2a#Er9aK4FgdIxdsUQGh6760UwMrifWYcMy#NQKs?sGxxKL(lqy>9r!# zCpV}Cn=hj_Ce`)(r->5)5L4DjR7|9NB+t_9CB0@8PWr$oyGesC1WPeph>@A4JpZz7 z)|7NUS#t?CYsW}ujmJnAlJfC(GaT}UHJ7#rXh?pf=yo`RD;FvS7Vbibku z({L*5GDk?SzM?%ygGM0oLGpHo_wt%q*q?w9;CtBo?L``+sTVFowX%PUs;XK z+67Cupp|)K>{2uu`jgqwna=p-SC(OXqG^Eb={;!2_!WxEH!7M$y6PEW^OA*3J*FI~ zzw@TZ!Y+co4r=TFeWbP^&p@c0fMdaPwa5gfv8KSAZH#mX;iIOw_67iAEciDnQ ziqW7?+yAZx$m9)b5Lj-$B`81d2Z^Fs7J$97Z@51LZre*b|KSWso3meD(20qWfN%JE z!y!6Es=8C8h@5;}!OTd0KA^a-Z*_yx!mtaR18YniP+cRnNe$cUW}&lOdtT`ww(>&q z?jD}Km@A=_yMa)4`HR9(MynQ=fUMn<0TA1q5Aa~mo9#imF|H_o#GIe=G5|DV58yeq z1+APZ3jQ?95(a=$I%ux;BC(Sn@z#_)t-;Hz!HaqfJ#sv4#g}rW$}Wp2@rYZC%1>1=IUW6*Dk-#zKDbJ3m@b*g%QqC*-GDE>ME>#Bn*&a*bC> zUYF(6W241i2I zKP+nHHDUzj#b${(QeCTB$X951D2=b7o|_%3cN}ieU3iZh=+j%|cszmNYxg-k>XI{v-Nt zQW#VX-dL}Nqydrv%dE-EO-$FU>~NS2LDt;YK?P|5gjH3K$J6mNE%(PAN~&A7h6>2E zdpZ;*=CKVy_J2GRO>@?r?%mS@Qtz4WsED|NVpQAw?$-vU2%_~Ov4D8Rl&O}VnCMHB zE7D%WbS5nqoTWHNsYbKzJ^r`;G(j;e$X?k~rs;c$<~~NM3j8|F zWZDTK5VlU|OH4O7ZO#&@LV^Y$;UcB6O4UTrHZ%!=rN0q~po>%KCZQ(u<*d{2Z$aTA zX>$+f9Pf+B#O@K{+O#16hcHy+S(Cp*V6cDJO;^)vE?ST_;ASHK& z0^!!56r-~#AU~QN$zV}YDh~$k(T!m&pOe~NU|j*EwoJ$rP}<#PXiS#^0<-9Wxo1fn_tl+ro+ zVZ2&$j<_fqI6Ut_3|0$S5JeYf(+n`Lm82XW7y`6|4R|_&HO9-Eoc0`Ua_K4CtMFy1 z_9Pw7v(l<$_c}cLpep#>eS2}A>k!`!`oRo1;Ha{*Hzuqs*Gp-;(I+UXHmx?z$pfLU zH~C1}`$8RPj>b0IgQc-M4z?HR##TX*t95AZ;9Q$GEQ(M#9d=0kxKIqu>6_c2R3!vF zS?X1-$6s?GQk4(@+3vRlq-&S?addl6iY-u={iB@&aA(XEDhOm)Wi!zzVG|@PVVth4`h4_jxoCPLAGua85Qb2Zwf}2@yWxsL z4Upg>p)e7=#bom$HA~PCWW&lbWQ{j3#k0mxE!Vjwb)60LAz6IsCZSkC=hO5ZO6KWz zS_D zgov~x(^(VKfb;ur@_W+#{ph}eg~lo=22e~zv029J26lKJ`5i6#F#xPV$QB~jb`oqL z#oSl4LB)3Hq$okB;Gy@OB|@W5FG54N^WxdgHhSPiODEsUfcda*Pmr>YUEmyi5+(nL zvy`A4=ETp8ny^XDAlCx|Y2sU7;N^;ia3Q7Xh7tzI(SJM3N}Uq>2+9j5T%eRV<$__s z*ZSZS98MY*c%!IKbJXQED#9VZ8FcmIytgW~lw@?~ zBVW!aA!fUK?bMVX@If7bD7G!E@yEJ8L=zNxoHmW)k?IoObt8J_bqJV zx3Rl;+VC5EApL9>x~eJukL%@J3j1ChYrksj`9ur$N6YvN`Q~m;UZnR<*F@e0QuVi| zYdL}q47p+e8pGb6B{l^1-*==xXBT-M?A_xr-a-m^$VLAQ^(IxbHDzdJ%T=8x>FA~} zF=ux7Q&M;Dkh=Tn4DPOLHScFy+@0c#X+5x$$8(SlW{0N#cy@Kw|6;J%6QJkDAmblb z@j>U&CzA~g-tJ^yh1S-~VN{EHlH^?NtlS6r^NmO3@bh~JT>~yDxSyZ;S_<*D(Vve? zlKr1}bNd*we8A*U`^o=2xtt-Pb*~@1>e+4aRUaI??%2;CO0Apn*LS`+ygF{qU&@rc zq1Vlye_ra~liNy%{$Wv^^Uq_-bWc2gyk({{`H{_Y+K@jcTb)elfG$>K`z;wRHjoWt zT6e=Bj9)h37BXbMRzymwwLoPngI`4l^ye1V%F;Y#FYigQN6@3youASkiSzlLh6ywO z%8m<|-Q`>`pI`3Ff4k^cJsuzZ%V+$=xYxM&)cWufIo(bj*zWn9kMNP|lOc_aT;~sX zePsVDA+_J=vHX#(F?(LS#F%}A+`T~SQEX7~uzMo>M&ln#RGo?nkc(e7d#>;Cm;!(FU$4HMdcoccJXD~3S)zk;ko8C5_!+(vb(|hCbF)f~Y2V)jJO5v%& zUHtMUGTPfIr{}Nv=?g9HGU8y}_4E^=Df$QHT&5BRqBY~^x*wL38=lr)33{|T$ zO)q*9@u|i|kWX-9(^Hj9zE%rTqD*wbUo^XvHM%N&e)qMS7OZY|N|H+fF1s{l6u-1d zX9C0?_SeJw+!N;m#`1q?IdFe{^g3;@H}V?4ZpghEgOW8`Agiq_k$V34HZNWwx=2J9 z6#<&a*0%3le{{L8`)`(aJ}SC*N!#}lrU#K5OfJr;(Udl)KgzJA@A5m_FtjC*wjELEDGYn8+JX)8-%<~omGY$??*IS)Kv@xKf(8TgSg@Z}+))6B|mKJ+Y2?BugV%QfO(Qzpa5|T1dh0gx+smA!S!;J+P zb~!6KV~)o~Ul=x=Lx{7vFL|co>F;_N ip{kpn)x24&<#?YVAJ%FGQG+A=G0jTr7jGT-z<&XAk*?#Y~x&ardAkp0(Q{HWQ1hC4&{9qiQL*O#5ZV>v&h zMEbNVa1@S+85;rnyvu!9(3~H)O!m1I79I#WeL4;rJ*dx+{*J9L>`vS=F4wc!qQhZ# z{r&@bKQ&}byT1L0^=~_T_!!5|X$$?f+|1Lj_!EyocIigFhxRXBcgR!yM~oUYY|QA= ztq1je@~IJ{OV@4Pv(C_=!`qGM{mih|!y(IYYG4&dDT_ngM>7X4ANRw-EnSl0eDb3M zrb2txbJR)uGcM)Dx|Iv&aRYo2fSjL}H)6}yx+{H(76gX(sAr=FEqivX)3!;Sy3HFn z){mRicuUs?eZ!M;W3|H)>0UXuL7n9%`}$!OlZEHD*yM%+mrq_^vPW@W0I3lw#p^5- z7a+>ezm}eyknLnq zRa0;rfJGDrQtn0I;%snZfh%g{p#EW@!9@#v0l;`8DCC|8u9yw(Ip7imT&Ry*zk@16 z#bpFw7}-aaq2jUvE}ZP6%207R0Y@F4Nc20N2C%#Wd`0));rIo($82yzEVyN)ykv~( zQi1{_$i9+f{VZ^GZE(*3*UBb0$mwwV&jul{7;8qP)<0B-sK8ho zo}ht+ZE_PywR;Ri{UXJ*y*;3WqwQ$LB}oj_{ikh=o*d;ZlqjwvDG(25%d4m6-1U!& z8>m6uEaV#6}IpTo;JDOW-eK%xQ`hWa?5SjOh0LP;6EF!{iUFh!*M4rR!#Sj6^HeYQGLJ)B-~b; z9-p;YUh)q%3VaF-Y-FQAT)GV|8My9r{KuZhQRHA6P#6nU1qD)$ z2GkAUzO%vMFug71l1VgTXF?04fwvYw+|CYpA_F^+LM8!sgcc|$k8%@$JIQf+{L|>~ zNHWow9}TAo?(tqDSnemA+<7tQKL6MPe-?wf0W5dHCijbyBj-Pseo+bP`t|=V+2k(U z;ZXmtc0k~+*yOI-E~UEbup*+zl`1t$&f?-@Txx{zcp$Ho2Q74)lu( zyk!E#+-;lOpE3^pXQTR#4CJ`GHo1EioTvW(vH)rQ|80}IZ;u20T#tl`L`~wf$@$pi zvgsV?w~BsWn+5vW7c|)akNdv zd5xUA{;7AJN#;ZtseEDt_4?wu@xXnf;OL$67T_Kia-{v~tuqcXs|i7Od(k^$<>skm2a00^V@!RT#L1)XY1;rAav5e+n)KaF+x` z2PwAbC(LXrsWlfP2CQHy5};4Ck(YFoFglRjdIxm;nLN7oK|)xF>CJ zZvZ#M%q5!?&jE0?88mSzz^$>t%?56*lmq{%$Fl%jCk4ISOyJ(N!OZ|}y%mS`KOMjg zRv>V%1GmuzHx0N=Hn^$4C2zI?z6RhH8{DhFZMDHo0dAX{GtU3=xB(}4dOLoqTuQoO|SnH#EXOwBuXfU z*9Z~!J?wXz>TuxO7Wv6>0S;eB50ZheM9?K=z|%E~vInh)oP5kd#R<9lcuKdY8ye6J z67+%@-6%oBKR1=SNrF~0qk93Rj|R~}YHMFJ+8I!`E+{(9j6NDLT%KVn@W5O1q3bVw5eF zq8H65_F1A*bA4rUYo7$IVMeig6P4QEjAHjDLZ_Qi?A}CZsu{)ZO@yYKQS9DCXy7SR z4Pf^sLd%&^?A}CZS2K#;n+Tm`MzMPnq3@be?A}D^Ni&Mwn+UycMzMPnp$T7`DhsyBT13%w z=s3S%I#1MqOCU&VeG4?6K@BBz4Jj9=MWj4GJ2-Dk$c$yo`Oeo(x6xtFoTA?`D)277 zFgX&BS?E5{Q951Vi10|X5vzb6dBpaS*@!NBO}Wgoq^xmJrds&W{+HH`$&8y z${yL^2VUoQGh+0>h=VGjwekb;@dpzPfl>4-(-KpFjAxGgjU0L4M_vzxRF9eNAS}up z@e?^>`%hL!V9ld1=gAQZ&RZQpYn&eO($7{$(3+-447y--1g&9uM5|u}M-;un)mbs9 z0cu?wxy`6}(e9Dd${=!N=S!j^f8}&0Ftwh89NFix-6Lu3(-t23tLR9aYa`9$z}P4b zI_Z&mzXSVvUg3|tGRGZ*6CoE3!&ZKhSlIKb-h+R`6x&CvpNz7Z=xgn-mp3n2WX-rNB(YgBo4wvM<)Lv zIx>~<6Dt#6xe10fF2ympV0rzf)sa}YcqCR5wirF~y}N=Vi=Ae4Vq~=N)UCroXW-8| ze6-#poeffs&JE7j0U-KH4z}_-(g0CDZm8HPro>kPuFsS>3DUUi%jTmkSrAwz<;7{a zQ!c(8oDWqWWWZQbYGYrbnnH&J&>%k!`cweDmYstR3!t_B9P}jv(NH@az(HRzP$)6{ zbRY+v5DGl<4cIMAY60CMEWO5+?)H z2q2Q@c#?E4#a#l36y~@Q=*H(nXLC0?TT%`*2$sXO-0R74zGjGq?7r%5s9hfc6ynZv zOsnDEh+HUuTm+)(mYo(rp#-{I$GtH;+RtoL7=eByhIj2MfWisXt+aci_S*s|CxO-_ zx;N$>6hOH+sL^c!gdH$0cMG^{{6^92X2bDngv+Fc?)8=W{$_~u4IXIJQ~`unL|jTX zcCT+97eM~*JV$;~PlfXanAKr);xeSFdtIxu0K#!5F70c&*K1}8pdfdi<3t7b#@|QX zP_bQ1tYa8ACSi=KgGj}Fo-I(fO$cK+v+y_B6)=W13!e{Ez!=^vd@Wc3W0olpgg z;m*RoxfC#lJqx??C}0eK7LJNmz<3(4aN+z47*7WlE?Gzc<7vUdl?p3hIzFMzom4~t z(?MG?5*tku6fhm9QF!EI3YZQgDLgk(0psa|4h|(|>@KT-5oF<#6%{a^PAvRZ6$Ol^ z6~eUYve$6KDZAFYuQN@V)9IwIyZZ>MO-ek$oO}43v^hDfbaH@z+VX9T)ial34m$1 z(b{;dw*)={Fzt#WN!8WsBZ0pLnDzlzNTYP=D}hflHdDB9KM8zB09WeohP8#7GdN!} z(Dyx!2-v#{K$u*WbPpI9CSqkUXMAV8EZYpKi8^QVB28h0bj;%>Yrc>7tsLQV4d^q_`->$+| z+(Fu1W1+_-P@8p3NjTvwDk;Z$2EwUk5ww2;1L0&S3ndVnk~c9BPJ@b|m75u;hXgvd z#SIlZ%5`sD;p9MV*u7OGYHw{-z<4qtOy@32zNdic2~A6`oT`B7MV-P!wiEaWWAju{ zjXw#aHkTpcvgCaMJdMEAW_nw2{6hi!x}@ZD1WswW$9=WJ>l`g{2^m3$?{$}$vIC$b zC}}SUU1pPd-F%RN>O!svs{bhi)ssLc4>M4G3G~EK25KOI?i^#Fh7xGnaR$QiIen=Q zPat}h75u^t6+6T-qi+Bj9LK>G6BDfJ`uf=w75_=p7PWk?$sB9I_cy~A(rL@`?ne8aM ztFgXo;5Q7_MBnB3mf6)*-}RPzR~!AhxsmvQ7F;cg|2rJzzH=W_>?6ihtf{^pQyq@2 zItmXT{6gLLbv!(bfxjd0moj*`0N#>aQu0uM>3!X|q~uxt5_lw2@_7Oe3y{F01aSL6 z2|QW=R|}HBV+3$a4hj5}0L~sPfu9z@mu2uX0{HU~Ny*PL@K2=bw!0+oa{_ols04mq z08b2)z%K~kf#DK(1i(0Q!E4-)#OCHXCGc3LI@mQ@0>3OMxmsQc z{E7gM&L@E<3*g%_cnSm4{^zUwl9FE)z}pH);MW9jNM={f-8ANEd@M^!0E8YWnygwJQ@J3jdT!P`XnjfF#sTZ3Q1V%)=|Ju z0l>m}>nh-c2f7(P*@;Cxho7Xl~z{y<6Q<^E@2^{=Ha|Jw+ zgB!O{z%OxdLQ4faiGu@LDPWwJV&nOO3dVUU7EWueD49O_`vwleWo{bASw`1T4IC&3Y>mx+5S80W$fP6xr|bO%MrI3>=)J31<0oEb-$_WW;m zQouMtjxg=MMt4@gI8Tl+?FyPbu7Gjc5n+0!6z-ycH3FZ5H7@s6@LK?2$>|`tq<2-6 zjML*RoYqYN&*R|5-4*bB4j$h_0WTmht><1n74RYg(-y4KO93w?@JU$X65d+@)5qR) zEc&wwUIL|I)zOj<^ih<&l!NE@Rlv(QcvL?Hyqv%^>KgY~z$-Yo&;SMe4hP>j z000IO4gQaZDoWnT!Hb3|;14>I5p`6B?ZcfltF4m#IUs1tF2~0zDf3l+FV;sC}yaGPXnK5C40{)zXJ5N-= zc{sTAO9~h-Y1k-qypes90>+kO;h$A7_Hk@;fAX@TWW2z$@S;}~Fvc;$=^(f~Jy`*t z0f4o+;}ivqgKQSA{Hg+uBruKVsMi!Q1`w7^&%vuI7|%TxJ~&lTayo%=jmxrW3K*Li zOQ!Ms((4NNdjhA!8kgSF74Q!LV9DtqxYU`Ufbq!+3&+k>!1(Bhg`Kk$@OchCr-Gvh zOj~fzY(>dG6PQ-r+!O_TfivUjISTj}4(|Ad0=~$>mEKgqmpC|&rhuafOl#w&3cg8T zS{p~^DoVb^!E4`Az`jmnbHDnw0`}wJLGu(azOBy&Qj_@#IE;gfFHpev+?_2saG?Uu zN#Ju(E4cikf^%^tA6ld+8DGg`%~-Qo0Y`K2YfBVxJ_4U}o9r08Q~~EFFb$+;%M>ua z4v#idxbSiXT#$qRRKbNf__Gy?l4Ce{;cder25*+;2ItBa~f$4Q{#JdW(BnLNLuYe0d5U~!% zZ&1LcIh%bqD&R64d`1Pw5;JJWxOtPJS0;ae1N0tdI;s(>Hk;8NQZ za3Ti>zo&r9a_}V;oSlOYr7B9Uz`?7xE8xl;Jmq}_T%Cgl?ohxr37igVTpE6$fNKH3 zp4~-vD&X1#rgH^BH>e^SBNASm=4{O}`1$&I*@=kHU%jX8MCeg%y0D54p(xtkwQ!1#_L3&($~fSYmf zJr&%XgHL>-D7gg(uRExKTXOKELkhSR2Y35a0k`Jh3WpVN8x9UWqJZ0S@Q*6E9S83` zswlZ52hTaCfID&Ukk1rwX9Cm54fT&J;4TEFqp#S{6>t!Nan1mj+bXy#02rdQItQQoy|loDOSTzNPS9<`r3- z#`@St&xfk>b&T|LZ-4kTDVc?F8jFSXcQasL;#mQV(^x|IdjX8oSVH(G0sI*U)3*~7 zF9=|q^I}V;@cN4a80Wl1aN@55_zMZV{;B{zA%PQr6Tn|e;Pt-?V2lN!&9?+Fo*67m z-}qYprvS#w0t?fh&o{UyfN?gBg=syz?h9ZXiHqRr&M^0j*=*F|Y#Iwwn_a#F7-!R1 zn3}O7y8y;>P6QVT6u>yR7QriW2w=Rhi{K(I0h}&@SA+@Ra}u~nE&+_QX(BUL7$?X?aC!*=j1y!cxK}9wd|3jgmlnXkO5k4Q1n?CJoL)fyU*%w0&%G)O z;AY_7QnY8 z@H5Q>@NEfvtAzmmQvyHJS^(eSVA|Zb+6v&i988;gdIte~PXfC-3*f&b@boSM_-_uT z-IuGo0KPAQzv?M~@t1$>2}?^}+(!UAIhfYQp#B2bM*{ycPylC>z=H-0V4TrrZKh`Y zGDHC5j5Z5X2L}xoz}Y#NmRxR>0QQ%_o5u*?01j?R#--(+5y1En8P?_+IFkd*_~!&L zelLrK>6dwSCJSKvnJEj?lBY}*z`+uD-xL8H!ok!G#|#0C9|IDZad?&h#>WgIIAE>- z#>WgIxc))`jE@;unA$vkxd6t;3?jJsN&$?I8ANc@8UY+3fqz^lfOAXWjT;1T9tk{l zvjE0#3a~cQ*l4^>0OO+(5j^Pw0gR7EL~z<30i0I?-}_hq<8u^I$yJUDV0?}ug2$W? z!1x?R1aCYofblsB3*R7jnwQfBFg{0NVOq~;&kJCDj>5vUSXuz%vmdr(8lvx46u|iGhlQyb>#7UjvJ&`09RXZU0>?KNz~v=yua*M1 z0teH2p5I;oi<}T^fj~nBy7}R zGuvOnwjW_;2XHK{-82^%)e%swe$o6k10 zLnQ2!xn_2#gx$B$%np;VjumEhxP+~-*36FJSlVvSZZfkYIhM9t{jFwpl!P6>!_1DB zushSt>=+4q`+%8!O2Sq+VrHM_SXvJwzA&@Ta4fBd8Yj){vl8~%Z_Mm-5_aqNX7+gr zd+mameL=#OylQ60O4uj|+-pLX;e}DiUFM&I|1n>k2 zJSRc`Pn5u)wv!z$@wq z;8!JZiN*r>H3__-r2wAF!Sv*-&_MuClfWao3gFi{n6}`$-U4{K1TOo80G`3Y)aLhw z3E-I$__r|vc$NfCd_e%u=3wgJ;0XdaMFL-)EP&^5Fm-UubOHQ^1l~AD0KX}LFTX8- zH3^)sL;%m_V0tUoZ>0c!O9FR#R{*~)ftzj-!1FkmR$a~a1@L?hrZzvfTL3SRz(e*6 z;DsDa&FJ~50A3`4=N%Woi#eEHS-<*9056fi%T5d6r4o4fw*q*X1g@SgfR{^P{~rYK z3JLthPXhQI3B2fn0A4A9pS&c1S4rT?R|N2C4yMhW?YaP7!@;x#Yu^&UYb9`wI|6u} z1pext0De~jFS{>**Gu5xJ`v{e#s&#o-A@2-l)(N00(g@I{vt>KZIGA1shZhsT zA8;@Y{@+Up;GG;yOHL~zfIpPL4Jr%ZT@v_EO#!@{gK2HFsxN@kB=FRx0(g%E{PbU^nZC80&_$qy{eE9DEmK9+#far5AANg} z=Ce(L`D_~V*(Sn#HjVk%WXZG*5n$W!CZuT__J-|0K=u;@u}1EIux*NI(x!ToVw!DI zOtVe;JEWmWll7p%CcqtRn_`-6Q%tjMifOh@F};`=NXuiJ6!Y08MT6ElhP$Jddc?LV z0&JUN0c@LMnr%}|W1Hg1Sp@`6J$=0a_T%=eAeFUEd7Oo`5qRcZhyCxtK3@?0dygN& z`T)odfRVoj`%+;|x3@Ff?=#ywnC%Z>8_UDLg}4jWAA@`V1<-xFA^i!+P9Law+=+j{ zFb&oRK|UlP?%Miv1IAV}G?31U7ZW7=!U3{v?etSOg@1q%j7If&`K@ z#$Yj!AUyNXay+fefaD@+41uyB_+cE(#}Ft7f?X{d&6%;xNfCgTI4KL6`jK*I)-cX3D@Wku4|Ju`hjV*71u4a4;DGgCu2ikos9t*1o9Nf zU=VDZCqc%83Q6SHPj0SlQ zq%X+xApKCy3$W22WGu)4kQYG)f{X)s0wf-cod)YyK`McyK}$D>^%;<>AOVn%KlJz+ zL9T-w2l)*I-`Ku_ z)%-aKzLAYDT7L`j9mq|PFF^1W=@THgLH-0e3z80U7vxKjdmtx4&Vl>|@;%5lki8%p z$Xt-OKn{aU25AQJCddqsnIQdV!+$9tb3kT+yaBQSBoHjeXRbK)fj6Q!#0~-p0m%b` z&5{UG86*j$9!L`qeD;dZ@$gv_KDWR*`&n9-s;)wQI5Dz78&}m;TH93B72({VRbS>T zR2FYI@IC@>4{+3v<8vH#<7j#}NE!$ZY4?KU014KnE_25DMZ#v3R;`+=m|tPojML68 zbLNYE3^q%GlmaOYQU;_fNI8)5AQiNQ)m(*&)P&7iAhkj2fYb%457GdnAxI;T##-0q z&bT6NVG|z`cLeDK(i!A&kS-uyLArr-*AlC{B6IhH&Hf+*LGYQ_Adtb@vE|N4ZDe&< zgyyrtStamg*!c>`WGxXYB^jq3aW)a>{ct*OJ=Fb1kWC(U@ONqQNq%j5Z%hwNAm>k1%|B)tOG z6+xmvd_nN~w-)3b*!~m*y}(h%8jw{WnMx-=XaVH-m7D>xG<9M%;gfOLGYn(|*^$}w zaPD|f8fy{bq!mbBkbKzwxD%_cHAsGt0wA~#r42|ykU}Kw2kW*VF(9!Z7-Z`~F|70j zk9il;ufw_}NP7@eh~um$L2w(#RD(U+$!x-Udm|h;2m}qr0o!Ge0VI6|)|Wu~OVT)| zx(L#b5VX2(ZRXm*goAZRJxNA&^0?foEeWIv9@dx4<0)QFyt{t(i*j~dbg_U#hv z+fDYN0VUC*?jUK*PP%Uo>_g=kG~GZ_JFa$i_D|Mp9rojT16gk*>rG_6nXI>v^;WXp zM%M3H_StvTA9Q?L<+0I0sDIpHRfP{b-_zuv z-1W-s`^v@LU}qO+It|f7lB6et{2aUEhOT|M>!~6k?OG z(+pK0oy^ZOREC}WJOl3A4FeTCm`;3Df_-U%eRP^(58V4tf&2iF=^(!WUjx?FK&pe( z1gQnn%I~H*1A}q`j7y{szN%ALf1akDPji-v>-ULMpGN64eAJMB`t)MmA-zYB=|8GP z?-7m>kXiM3YNb8StN#AwE0(R0Sf!Fy@}RShf29glDkfGgtBpD6EZVSaVugzO!!MXF zS_EdeA86xxH~t3;bVg_a3Qi#6f|JO&pwGB$Nm;TWO1pi~8Jq`yNq`H@(w}AZ(-=U}bO z=gtVHn}k&B&M?<6J8m(1+~Q-Nw6)CJUWz^7GiQN^_?PZjex*D9;Qtn&dXM_>Mbo)6VbJ*|E| zknR@^4|JRF>8-;^I#io*(ix?#`P>;*6(0%W66#*Tb3fQ%t|IuLja`CBB2_zHKQuxM z{lXdLVwrxptG}aw zo3SLD;`;17h3L-9aMi*k!R_mmE6ynAc5TTOXG9=H(zHvdt~f35q%&9>e!{uQnMaHL z(i!QD*Q$Q$oF90_U4Ub|HtU%0V~8b2e?)477IBF%AGx)3?;a5lPV-_&-fNgwCH!OV z&?vX|5hIt@`>igU3CACwPLJO~Ht2DfoY-OQd#`0X z(DJ>V$BV=?pL_!MRTsPZ#wlm+=r{R1JOCC=i@hCCKubU6%vFFbUs6{2ua#v%YZTDN zeQmF-@||`@*s*K)X)C+(Ywz1EE98uIS)I<(12PAOGi-3(tBw98xA7g6dDV>$dJ$XXw!3 z?MC!|W?1XtgNBW9G||EycSR;s&3fN}Cb71oY2V3A#36r9Bw(SXc*e2^VCO{Hk@zYb z@w~M8P%KyNy0+sR=%iA$ztZ6?hKt`gL;CVYODjDU3YS(oW~wzuFT3^kty@XoG+J^m zu=G2FYsPyjT}v+;8j%~Sx%HsFPd+umqM}igZJV*jmfDP&QkzKw0OHW5H3)S@bvjpN zVu{m9Q`>h~x$@+d=e*X(28BlC5m;YN7$>OIw)yV^EHxi9?U{el84`W0_@=4*Uz?Gn zMHbJtXv6wQYx~O!?MJP)?Z*yVYCmS$xBo!*3VXL~T-9Xrp4II~tsmLL+Wrbc`%$ZH z`#(_GkD2!EFJHCbilj}4>#VLYdBZz9TCK9Szap_e7wsYReg?Jnb861VU3r}TTG+SF z#AInVgR=n!MFFgHSOE>3Vr z&HV&2rRKuRw{ml_SSxccf2W)4ch*@5Zl8*rbrzSKnWi%Hpvp{q9avhcSge(qH_qy2 zj_eGh;+S-2Xfhwk(ooo=GWw9pXnbE;W^_RZmdjWTDN`u?m`<-a@s)Uc@rPZw&=B`r z1V4qH-_uMj{J1lslFSJG?J>CxOU^mVzy+t=pY(R(2Ho`O(?&^Uq*MiEYcjdNazhJ}O>#WOgLN z3yN!#^y=?5H*N2$7i`#5;FZ@t{Of-0{%NGu443j#TCZQ6kp*dR>Gz+fxaKDJoAodry#A{0~IU`CG zB{)5U=`F9vu1N%l*Kei+X@q~JpZHMd*h`O~(3;mDL80p|KY~Js{`Lq8{pQyPF4S|O z!WYkRF*PvlrfG{Jlz{+*nV$Sw@(E{vw&(;*lfl$bf;I#HJB!H;m;qbiSuu+BYWr;Z zSH);88hROu(MY{Q;kv4KV97^mlEk@ZkkAn_Dw3V1YcOW6A(?-W5@^@=7fI{C*uib- z2nb5aYc+UG{#_qD&i&mP8yG~-MJ;iUE6Q_j+CaCe7@1u_6AP1s8v9;2+LPa0^!EgexL3AKh!x?MO?KjC!)&gy}W;aHQ-_XPH*` zD-~SkxmTVk)gMS&|2Y(H(^$am#pEDUv;CxPyy+|u?IQW~!pBY7|9z9Y5hfi9w-=Z5X8ve)9`o#SH}>As=?@&o$C-dyGx4@DPn%%^FLp)^ko4g-p-+>&dJG zdvQUFJvHsg)wAF?Uj)FUq}`o&ye?IIh%T)Gm7escbqxoH+)#4Mf()K zOPwi~?CCd%a@terzl?yQ?1$1?fTgaKflRY2FnxIWt}{^X43?>Ira@@5R{tJ6F-q0C z-E$Uth|b`Xbg46CCC=1_{qA4#N<$6HRXBuC1>5|kx6Yo`@O)|9U(Vo%=oP*LAoZ#o zWQv-|?Nx5bm3oEcT6op#Z-ZAsnd!w+K@BdZezX_t^!TM+`&%_3f~kg%$qQ}=h z?55oh7<1)KIzrOo!`~R`Q$nlttup|wweUbPS5VR!qR#(~JwAzshhhgfL&*F>X{S%_ z=v5>yf@qtGS0-5EQ@cBT=K2TXuRQg%7M43SB5@<6_B?vqzx`pJMVyG!hoxDd&*2jN=&(S1Y5gR+-(KdDQ?EsTFy$WVaNPd#! z@q>>uZa3UNr^ao|2fyEvBQ}t=>7w43sMU zrPvJOIBiFZ0MpnZEX2?a$F>ZJvhIPq7<%B=b9^JB`4O(y_!sA(@!p6|Ync_%FcAOm zkLcL9eA`!$MfB<;?4aVSBeFro<2G;6T7Blr#csToFD#I~MO!jCAj*2kYZyI{M(}jS zRR&{MOh!V*k1NL#_<66aj`_bojDP)7F_w5L*bm3XzlOrsuHsXd1^X>$`{C9uKhM~B zuFKEv*tq3Bb3d%@GYuy4q*Z>mhhVw^v?@juJxgE+6NCN2z+m}sxOP?u|4;P9Uq|@0 zuPW<_f9&XI9$P%?8C%R~={KH@>8RG;nC{iuc1%CQ`@Qal(Z=F7e&*4J*PSD6z#VzS z<2M+yI_>}dPW#13(Hxjz~t& z@Z&}#aoWxqe*7(A`LshbI+=TMVvT3yQQr{cF*5~0?)9L>Ot4rU z_?;*w?$%?pg*yd7eveF(#HSwH>F3J^`8OYWgFJSZ?I53e$23%Vb2lI35j}HuZfzan z@XK}Yyd59^vz~`x3)xAZl6bwDwHv&V2Yjonfd8Ku$L#;eue~(jn_f}|{0o=l0e|GO z?SQ`;70C7K@!Gq;`my(!_$aV^TKmwp84P(X?24dQ_Xc^*E6N~mnHA*!6G1-mH))W^ zX@5p%$NSCDyxH-7vsm8jF#*g-rFG%#l2hGk7;Ani}jE4+hKoY5X#K*1+VS9GDcf_4vj8RAq9>(%Dl>miC_$ zARcqXX_0mOF*>J@^T+5cT*d!0c8HNY-rqADQm>l7-Pw?n)%;D-S*W@{JC25#y@*C1 zU$Zfc9;q5*^m`IRl~}*AI$H0YmOhsVlZjcu`A-Jtqj@&CG0A^UO<4rbo6JV=JLBXL z{PB3(5nQtnKW2#2UMa-)uQukUmC^fi4kmglOf*KXvvojL^!^V#RM8-MeN(GU_Ma&U z;dt$@ef|-q*$w)Rdwgn%{r>x$MLn;^@%LH7po8RIl&k%*?MUxe*c|Ea7Um;8SFc_@ zYqc|vBt*7IpNfxr%zQ)W^>W=O=%uIk=1ayu?~>J*|M&Ohi;wuXuPy7#6G8%TG*T-h z07oMoLjuOKqmeVN0MBS7E;PX2Xe47VdRRYf?4}xy428d~5lzjX83yLd0~-HCQC2|z z_Xl*1+yN&l$^yE6vjFpxnr_7D_|#F&0{XELezrM{@RC|WivYWKgErp+=}PY$JZ~}a zoh<&OOxk_l9%Jsly{^n@39iVa9sdYdR&M|&!~9{prlS)j+gE(r7yoBlelZ22h3+)mbE&_CirJ|y+q&43btEh(e?;g!v2 z=mibW(D6?P;zHGv9~9KM4X4>V?vLcev}L}yS;vjTw|4P&z|p^uBt4w|wsel3U7QYk z=z1TA!*fb~$>A=|mop|q$~(V4DlC}gs^t5P+dw<$)340HE3$PD* zCGF7g?!T)YaIk984%z>*-3~TK=bjHJNg81yyw?41IvH>vrEY{b!UFB~N;U_MR&6jX z?BCS}I08_&ftEL$?MARUuqkMGNmh6^#A{lvz=(g-*?>QDvuKIp$L#wrGgNK${JbvAIcg-RorqXwQ`i4F2CZFC-0szcsRIfGWW@ z8^HDtsMK{Ir~TV5&iG3i#aV#gOQ{zcSls44L)O*VLGKSTa=TDl-3a)Nm*zQbp9xu4 zXLoO(nU=ucASg};Y>AG!ZMQ_$)frpDee?c6_tW@(rA4#!in84-Hs2#HXn2oQIDC!M z)$7c3KvH5mS zLBrcUk~5`H+`p?~@Ize|4Rba=Fs!KOWFhm$o*#fY9CzwXB|H7KtB=|4-fVuntf1lJ zWs+8d&$@?|9{n7%Hg2BqNZL3fU;VP`GHaF!%v~a@ zdClKz#9t@Kn|H}$feDY`?6vvZjDm*WW=PK7td@26Nv4OE`1YK)}7Ey79Tq;Q!Wty=GmtE@VVLUT9)M z_sf@>r%K@V0zpsVUify4qn0*rC+xk^AuuXm_GH}qWNP@xz{>fukH^H&)Rxl%Czs7W z0TaVg&wL1ppoy3m4*w0)oJaj*Q(wOtn6pgwmvC?I)D?w-27Zx!5+?ej=DZQq>9g$k z_hXzxQip$(qtW--U%|wP)SWAWJ0%1?jR|~-zoS;GSwOzjDo2Co772O=_l|=9x@rYp z4=9*=`$q8oVnO&>Jm+ZmubFoJU_fl@g?u4!EGNsX1es+?CVi&vc_V=A2Si`AnJ1lrT2f_K zSn?0D^3r^apLZ?{Ant1pC7c1d3K9VOzJm47Aa_9gApHZZ{|31af`b$MCOm#NPXEj& zc*HBs=7N25bD_?lo9n2Kg1_I>>R5-#~7FTmktUWAk^AKR~_(`3~eJ$QK~D zKu&<%2Kf`@EJ!-YU63z9?tz>HIS29=$oC-IK=y)YAag<90>Q8LP6lZP@+Qa(keMK} zL3*dae{(=)fxH2-0R+Da+zw`2hs$jJxC9b0U-G9 z+tVPkv@TU$h5Y8j<^pY8Raa?kQ&spg)El(w%bbPE;@?2RV0j;82ME5|{~^dOkli3@ zAbUXeg5&@R)}}6V#=%E;9F8chS~XWOKMadF?d&pVzSzfLvm{6k3KhYtW-XA~Aay|Mg474WzkJjXq!CDCt?P1UT#>f0*#QKHNqEY126-H$3kZIm z7T;v;t|eA?Md}Y8`a=?baq$GmAdtb@vE}f`8b?-#-pgl&vq~WTjha_LCTodMDNSa; z=1h>;ASodDHQtRNn?Ue%stZyNq&`RkkcJ>hAay_*fiwnb0@75wSlv}71kYVu@HDNY zEm;s)M%%a`FxLIw{JYMeMAPa11zZvFgu-Q>d*%5{1t+xQHC$1V*x0!Ex>xSM^!|xc z3x~gBXZ%B&oq$+Ls0gwSCTsdJU;QuP;TeSsHWn@v#?uxT+I{FSh3L+MZbm=nQ8|h2ydk-^_{8%5;hF)qbw&DjJR9j0*+B+)2j?{S_XqRxMXpBE~5$c=F=n z@!H|&Rl6VA8BErLwXwBam1KVv;S7{lgdT!rvD-e7t^$H3<R{7Oy!Np>tC5Cj)$5^W9g_Sl^kF1+&VpEP{FuM z>cD)+^fvpu=B))o(1$>Ge?Fk zUjU_eEZ5ey5>3~+|b7w?RkIB3_@arybWozlJ zT@g$jSF# zVhAq=Gd!m9wOWd;RZpfC-Oi=>+ZJRLRl~pjQMY5m&OKWX zA2Ou>unP7&-sJ{M5;}=2!D{qc^6ed=CHl?!%1(Nfp*hK3b1K?5X9a5x-=q~G)7+%6 z6PG9ukCAYs=Dg>OmNo4gojrC|^x9d;Wan670=*=b)m6bDUB5~@ck6$=yf(ci>0^g? z0HNcGXo6F~bG`l)G7gcl-G9zd+j-fQH}HLOz#rO#qJc3meAqO=mCHOxTm^$f-n8z1 z?ql7iC4Wvz$1yc7^KpCw3-yGq^_|(^|M3J|r|)4ev}DHdosOpNFopbB= z#M?tvcg(C#cb3)G%zmg?Rpx5#vq7%NLY{!dV8wf2T@KtNXDDMaoUI{U6IatTFfX{d|(>v!6j7-@9$dUnQ9zK zY1FLUd+hP=H@|OR^OP_H)4pH zdVbi$4sWwYfLS9z?`81+)d&zDV<~#Ti$ml+VE07 zhDz{`s2@f|5T#c0uIc6>go&y+rfc(AGItUeQC z_R;hbb{=A6J!J7#{)0s_G$ZYs{-2F42T;5Cv1N0NJzTPb*y%Ip0B7hk$(U2`OXZJf z3QoxCKePHzN5&scLAcS_g-u7+6lK;FrT0?#k4;e~(-`FY&(0W>xcGxSaQ{jAQhZ;Z z_OUNw;SSC9JiKc@vp}u@{;$;kHaV+f&FWaQI#zP(Fc%AY%HsKx_4W^~jsIr@Q^DIm zVbfg^etK6bA5M;&u9&7=3G*!cdyOt~(U82?m`1{fK0K#uj2(C@(UJ9DV+P*Zw0gdB z+&NUQ*MI1}#?{)UH(ZgCo+icS^uGD0rGMqjqb*MI4^9bt+E4p+x+@_05nWF}FFgy< z|KlX)Oxo~o_~^?+n?A+Y>BkXu^ha6vrZX<{wAk6M80MwCrn6nEC8uQp4Gy3qlWE*J zqrY$xuhpLG^4EH$xI(0lTeHqj?louA3G<(x63aS2AbV4DT}EwQMop(F{*qsLNsZIu7r1g8e!2yzf1LYphlW2|dMr=Ofs?UGl6OwEg|6IzQ|R&9@WrmW ziPU7e#?mrr`qPW#remJM^xn%{Wn^#4=2-ejt$uEa+-l7G|7rC_s1#Y4VBUYq>fy@Z z{&l(BYRr3};8d$Vyh5%T^B$qDO{Z%GrcxHi7xyA3B=daR#s99p2 zt5CjjhMO=f$>XyY_J>pO%kb8~c)Zh!uNM8dwE!?43$<#$%YWRuYBl}QXpE-?&$S$^_YhhD4X|i|Z`OEPphJ0i3-H$Cn;cTV z+d`(tZ*9<8SANfTOFR`93(SLu7;2I_NNfhgp-nsK4AH{ZQD0*{_tBV(OFymKI@b$< z^psn#rLS|9haq^xyROmZz59fF$E+8z@f$>YPnh?5J|IYqa9f79&EM#H!Ka@yWyG}H zTH+>G5!lu$HHKf^J-x}*2CV#KldC%J>(Sg5trgttdK~sWyV9O&1&Szt(Ds9>H@o`Y;{$Sr8X=jwMb`aJ|MqCo~-{wI`!UGR}G)& z_lTtwiXrJQwIxSf`L&^`uKdwkrOd2f{qk$OklChYLbto}7uCPl0-WiCF|S^3RJ#Ew zz+Y zReAI|lB5;Cm>he~{h6829j>UNG*ADw=1kq zYW;oxD~FD)O3NR)t3vvvXa8;05E*(^uZ99|o$Y%k=AE?PCq>u#7gs~it^+NxK)57i^4gVjhhO)G4q-*RV*==EW z8KH-|b3BzJbTW!e4SdpJu@iIpRXgr)%8zA^rzTJYhV;75uEH$p{^Vk7N>9 zPips5U7>In6SgWzPghu(rmq)|OY%-Jp`k4w$WW6l+ND%i9Oxat)^8OB zqo@#VuUXH7Rlsu6*rtKnN6^gD8)AH2m45ol{E@=Kkn6b{=OYixwHR|fLb!pK=MD-=(wBWi#~)hw@6MROZe%x%^IJ#c%3F5@$);lyI-IHM9^oBf0a|;edXIxlY31RO zY~_WZtJI%R?c4zPV_(4^xgv|<7hrMG0o=f&+CBMP^Fafj7~}nVn?8{B{83)yaKX>G z;v%lFf2~92QVGou->JBy?o5(held18z7xwEXR!;mRFD^9O$4_%MiYQd;C9)IEwu&eCRffRaph=d z4w;P^`l-BPFz-Q(fw>xK#egk=TF7CThB3C3-hvAcyFw(b<;ibr* z?&^%u1I-kyRY^9rQy8qi1S%*B)@Z&xVo3YFhVy7io=cH;xBgYeu18%l(R|DbmC-~#pW2(9@MSE0&us6fXPWypr7i^d0V6rwxt=F-l7?kdC$ zBm!yQ>>gJH=7uA2AxYY6xRaeMPr0@3qdkKr&nSU-;<+6!o_%~huj+fJ^rsp)vI%@- zDvt!+WK_b#4t$UzP?`MjybNntslLZcz6$UGil@4nOl|%tSKy+fS%dHv$+8lH38uIqoP*$Za}u_^@r89^z@x>(@`cHfha&kTuOiR9W}y zZy1%=r79m{%`bfIvR5S^4He4Y_)pY)(}j1uHett~OKbU)D^NTVdWh9ud{MTB-jgx? zCs~U>#Oj~*e4tk)U;Rf82Pb(hfK28izVzR{=knU5mH1g!4G*#AKdTkNs5~ZB`4DS9 zqC>P-B~!WN<{;)jQS#S@MhFlCw*yfo3UwmDcFJJyY zQP=kxmGau81zdU*bv^Tvp|0`HU48RfH^aAebi$Obr)p)lxuV5S$KtftF2l6D_1jL) zgKz%oiuAs{hVMD^?>4zeJN^UjHua>=NnfDar+R^EDmkUqFHjYrO6VGo+De=ptcCvx zZRdFch)L-mH#&Vqe^82lsb@Gm+^au)X#W=dM?c}2Zy@G)3+K;>eXzr$N|ebyY{b&M z&l>ef>FHN>1K`ie6%B6A{3$uDSGLfoO00i)u*XMU(|*K4`}HyF7wy7(mBd9HIXqZ@SK(g8fIEpaf7jfjkAndf&G!x3e2>y z;_KhNb-@N-#;m|!I!dj;ObaV^|KYWQ`5S^-#;iE3vH~+LtXOf=YehvaE)*x?HD@T> zyFpTVB2K;K)xi9XKiyCJealhSPwkkGT;Issy1wCmx)O8nF{bcnRyKo2n6&!qiXH!? zn#yqJwL;GbUxOY@TIs2Nhw4epQJHHa`!$Ha#P-CiHpEX}gE4o#`k22Fn86mqzk24? z*DSkSpWi)QU%`8>(p){-_YU7F@oFpXFVuGYp8gm5eExFPU=;O=&qzmnf>i|DxOg4_ zV5Y?hcls~gS@@&v2|3DejcNaK@TJNM%#>TPA5^DUC$;1pQgvEKr&k}}nJXMh3N|=| zNvqDFB2*FejPJ1Rdv@C3S@jUPXAv+Wqx#tHJ7Yt`GX{N8F1fxNj6SxrLw)wok8fCg zux&U?G1DSEKlk-|&31tqv*KHo6_{yZ#U?+m6;+wOB4bv3r?LVwEv%TCUAF@64vLvB zsPjJ9t@y2=X7w6LOifY%ECJhyKJ{u0b{v4U+wbYiB36(s__ zR`7j*qPHm^CyG8qj}{1Ee-bSW6#`-={s-Gw=PnyZ+wWZkKXNubB$)-#h(o-r$)(D zc6aG2kLL_E4`l4?yI{~aI9jf+MyOXGKW?$F?-zrjF)V&$IYiq!S#Gn(x(fA;=nP?)!{T;X-MLO6Mf1()OR z>+E+IHw+4ID-?bfMQaok^8KOxQ{{J7A#5A^3(T|#(hbp!8GJ=6VrW*pA%-w%6+_eW zGOE}fGGoKxn<|en)57DS`4}_UellZb+)|l=nHFX=&(D~_4gxb~#%+}um}z0gV+C|G z+$S2_C>a~+{K=Z3MJEVPH2CTPUZC8%*qYB+zkG+)1>1&@$4m>Ce=f+l%+`Fy%($yE z12Zkm*k6b-BlB0Odnz+9)545pF^n1PWeVfae#iG0Ylb%cF<}7c1B3~&j6(jZWxwP5 zn^g$ghA6;H3%`37X3XF(X^M_7wv?gc!=zQmS2IpmMF;nxIodIE0T~NA{0y`7&J#1` zUWa${jn?wThepCFSUx^9p1H-q8B~SK#}f@MW75jy8&D$XaSjcQG0ZuHm&?d3kdMk+ z%#?ephuWbcx)mGth8EAkp6D5~BAdzz%(Sp#O;OtXMIXQlUzHV@X<^0WV%`>E`+2Mj zMccP7oSl78gh{Km?~&m3m+jY3ll=}QJL|7jyS%(Zsb1XM%It}pF@639eT6E>_2nx; z^(7dGiWyTFU{H8Zq42I-;mFRRF~Q~ewzFTOfd+-&RFr%8#bdgMZiVcH8a=e%MF+78 z`7RnWEkbr}NyZHR{I&0Q4%Q59er37eFO^~xWQ>T<6yy7j>YxTs;aGGnzI zX3%#*q3`3ex__WAfw{_}HbqaHR>N?Wg{1Vpe>s!{S68S%=z-XK$Ba3Y)8NqDnsSAc z$}iGvzku_XeeE(5i?vyvKpjXy1wg zDl0J4!V15dUMu*H+`bhBRaRi8g%#g2R`9*MeJcv7tiVhQE4J0r>jI{SBDG`PLc>hW zV!vCCVNKE2HIa7`DYbQ_?n@~@7P0SpEUS?3A28Fx_t8m=8JWKv6=u!Qx;B&h-L8(V za7Z1)L_o&6;y8o0YR%=^O4il2LH8G%gRf-8WiPCS;j#xw>F~j~o~{8tR#hmtT;^lA z2eDYqRU7NgNbAvMc*h}QC*@-XrB}sDolSHn_4ASMZ4~F@rgnxJ#H7_Q^m-HBv!JG? ze#U<1T8edv4^Yfh1n5a;ly<18Zo{w^p@mHGV!t&LSu3=$9ptUKxS6i6&H^|q7WWGc zF?D(Nm6kRr?b=bUG`YFg$;^jr8H2v+o#gsDw4nN8Gu`u)Wwr4Qi<$CdXAaq>@2jmu_->-P=-qFmT|9;PxxDvO!^$ z?sA0{+UW|ty+h__HmewvM)i;@&DEaqlJD{Dds)?>@U}wXMOGp2q5X5E8mo{$S1{A! zT-nost89MK#l9)kRiZZUozPM=;(!LcnR90Z7g%#sF=~n1h{>(Q^O_ddx zX<x<1;ShGx2Pn;TTt7%o@YtUpty{3&g}X56+ zfH8wVyX;qWOV$kS;s~MN@F8`4VbC2${AI+xu2u$Jheir@>90o}AE@6@x)o;rjH*=&av}%JoW>rEvu9dB+Rr3q;7*b zQ~28w#fT*4DZ_{alU5^=YEOD=I`dAqS2>ND7EXr`@mj&(P1~>f4k{}!)53}iZY$s| z5Pk;1z6~8!HejZO4ZDZxH32i%B_3d`&`D(lW?ERWc$n7;KK|_2MQ4>2m}z0fgyG(( z;O9K-Tk*Kc3e2>yqVou9MdqWTi^>Mfw6LM{NZkfH5f1NWWPS|YRb>liTG$dg${QQJ z754k)Zmbnr@Qd=k`5L2-zrNeo*WIA+qC(&C(Yk;7yI`5u*TbOi&^Wn&tH$X1V2oBI z)5E2n25oDS<=Q4bMYYA{;LmLPwb{#{@3rxAechhc^+DvqjbG-+D!mN~2TzbItnrMl z(0eK8W7K}n(T7#aU&=Al;!Mf=EaQ9ThfRH1Gqgf4$$h`WC@jz4Uns^6=`R_^4VbhV zH=KUX>sxt#;Gj^IHp!q0lUAyBJkO}&M+XX3i(fXV!lad|w_jjX@s}Khs`0NFRAJIe z)$?O@ReCqW-!CXM^_pzZgh?w+ZC=zhdCv&GS5v4}Yp+by^?3u5ch7zoJ)Bj_chQ(>(M9)ri8F=wUlB#EryFV- zlU6ldcM@&X;t%kobfn5@%(QU2@XKB+G9SvLSSz%AGv)2=^9t3M5L}+GVEb)7npMcR zHD+44{XJ_&<}b%%STnSPv*dp7olO1Kr#f93d4YTJY(sECQuJ1iK3TGKimpb#Wz2l- zKFzwt*DhvS)b2~K8k~h&6n<1-zonm1*@BrCw)B0?V2kSk?xdepnSz-Xrqr8iFeM~7 zBjd7bZy16AlU6-U+%#`6WWHN{Ugb4rT6pdIx^9Jg!Y~8ls3n@gVN6;%e8#OxpDN6J zXEv5~SerXnezt9%uDhn|<15(yIN(KtzGvSO>Ki%3{W==Xg7PP}eO2QOs#?7*RHb($ zy=Hn{`c*X10L+er1WeX#7$Hv21!d68qes3^6;BC zN7tcGavhsvdQ7KKGJcUk2_!`qOZd)0v^Mq)rat+e$^J?8GFzWo&&5K8dd;E2SIOL`rC z>()mjBRHhhQ)8HK1!U~$>8l2{XO_v;e)tyCbbNie2p1UXLgru}F>n!tX;74%^4PomI8Xzgv5VM?WAQi`}v0rg- z8Y=FBLg{_CQsxmDKQ>f2m$t#+93-XAon4_jr%#4u-mkd^zvga~>wE7VU7!9F*s>XL zX~ZUjOOTYhG<_wbf*;D-Z>zTrJ~iGfS2$o5qmVzV6wMT~#o!Ypr9RbK&8W!yIBved zr`rmJdDbur`Ei`Wr_Z(;e1fFZrz@-qzNfd}P74h_t=cA6cwjB#6W{SGd>a3r!6!&c zeOkDVQNj21_I+Ax@TqgET;bF2>I&&AXd$Lcw8F14+YNp}QtDTS^^9McAF3@i_!aQJ zTw$pVj6%L+QuvhqzQHF*N`3O%=v86(*ki^>G1J2D{#zKo z`7X`A->XEtfO&$)te#SAAy=Kj+LHOXBAm0ekzYBZ1GkaAsj1CA3Z3cn zdBLfLKkmwtb1>QOpzC*Z-dR##X;t=z=B>We{lQ(wJhBcT>yu>d_?m3AC+qE`u$@kA z`~_zr?dtx}fV}+C-_WDK)xtk^#a7!u(p|~HREwi8*|CW$-G}Von6hL+lyjEWx`1zF zL8{sTb?TT!2)c8*w&(AFm=ddGn(z-T;WCq~=V@mzyP~R{cklK5iBIYA3kYaDK9)b8 z{w>P}M2){TV!tcGb5)(jSskTaN_E9)X?dLC1umTGy61I1pJ>%I=&VXbjPIBwc+|p!!je;;IvASYDf_#&`wxZYj#hddS1_&Qz)49^ZZF690W$wPeHxnEbOZ38 zaw}dta0G_I7H%!}`Rf%+w~qclaw|^T|9|aVeRveb8NUNUxCA98e~O$m;fd2r30$iD-clqembB7`vn3@e4h@e;(dXD>OZ6d zI`E+|Kq@31q#78gI4BH|7wSJYL7|TY0!lnY2UKw=X;7be_O*c}L*VQrDJhG=V=$@w zZ~j3C(|jyxkSl_Fzvi622{3T9!zs*2Rkxc!+%AxxM-S5h>zCLv| zKBPDLC+eO-g;o!hHi9uBIt`)IX?7pmC?6(MsG??E_qbO_bV{bvDR88Df;dcwPN{S{ z)pZQLStO>GbULO$Q~7*xm{jm9bl&+cXs8p136)`oQR$S_Vy~O?9ZV)t$BPMpbg+EY zm@h@Hkd|dqLBW445VPavSO;WR)hY#lBQG@tuerO=2N15|b)4UiYM zTquxb`*LCoP}wLGfJTX=&}cfK^Ku0ODjQ1&v}LR?Kq~CNnCd}5ARsT4<(Z&Rp4pJr zq76Fgql3x!3uBiTstf6WnhOO2Iy#XCC=JFGNpjD)ji#K*gzUZgQW};_NSi4o^h}mX z5-l>$+{^zba5h{SD=fV7+iwi9p4eG?fl${ZxT~c2AEnK$FT%04nb(3XxTE z_Y4{qQKo|`>ng0BMfKT*fdpk{iw%EFS6fInjS9>Q?%6adq6k@JmUZ7;X|TDSqp5`a zvdQ%msVuJh!#4`7TOcKqPpK%-zCe=9d%$TVEcY&xvio$81??Yy<8s0a3#A0}la-Pt ztGU7zY2jWNxZmxBZ8cH?dG(o4vER)AsDuQl-?b?@U##EHhcwx;>n(Jf5GMyBJ_+KRiA#J;9SQN-x z;${d3`LPUmo5d9K&-3rU(AT_ClH;LxujDWvn(_n6{Xp2looZlR&<82^`G|+rk#S?E zfdyx!MHrI~iE&n1gyBEFn%x=mdy4F$#D36ugq8{`u;`$NLEHEVuA9a56JiLiML+P* z&&5op#XUl~tLJi*!(oE68O7mpq}psm4Hpl|RPG&ma0-`$Y@t&mu=!(2cAWWa(svH1 z?sB+hM5udsA?P zA_?f6J+2I>ce&l>-5swf^uoFfA{O-2o9=rUtl(9o_^0MGcjT&&p4c8xT?`c;UO%tE zYr|dC+FO0Di(%pXSnN5mgXPD$v4SO7lT_<&#oD-<79+8-%bJmZ4L)SPB38$tX1I3%Y zdI3c%Bx4yeP|+iYn)YZ=0s}V_Brrsj=mCKh73TO7MF>0Q_c8>MFbLp*YLpFoT^OpD z^(H3*D~M_tWlnr>ySdrTM^O9*D*0|AmM9yjY4;Lmk1`*0Z?PWC38DyQXvG9|@sl`W zAld5>Uqrwf@CcDh99S$xFG4n1v{cGJek*1L!)}D7r8%MbNtOh{;$(L}%`zFkkqNYYYY}|OGMFmckx~V%oMN>tHjsiJXQ?V4aOkDn-&f1^TL&oqF zfnTE0$s;G+QbAX-mn&H4#BW=)h!%c5m*wy`f1J8(0bQT}uz+RZ{8)ZhO~=A<7KlG^ z*7xeazKJdxY$wzB{aN9Fu6u zIMq;vl$w{ak%-^+F51Wv*YPXz?1$-!%(iBJt$A>3OkwfRj*IC>qZsO2{FKq{f5vlk z`!9-B1|aH@I#wF-Ym9!P^7>|$XoX*Gv`5v{W%%H*jbb%ej}`L6y8jKD2C-t{ms!2o z_ue}+nH36%;&sGfF%DnGTFg@aHyXcK6`D6?L@%OhrwKDF7XI9<U1X>do$etea=i>sy$6ROG0a`3T7=J_ z#4<>DBRiHE4aK>!3{S1ZC%&S};+zaO;fW7)q&xDH4akQ(Va5a^4fWDP;{>8LwgAD5 zr+n`+;_Mb4dAXtt`GWorvz$Is9veq0DdNx}Jx~=baZgx^-uAF&F;U+szFUFy zOA&{o67(Q=76d(r%)E^ANB71{a7^&>qvb53&JPK_T7yJ7j{30$EIU0Ox|Flk5FpMCie;K^*&4qRLq}ag zsyf6>rn|w=-n}?CD0WKS4ZhV+X2`ktHC%h34%Wwun~cj1@}H}iBFWT(gO&(Hr&6RJ zHaGV0tRFTvUo_$u2+ew^*BFn06LieVwxLd!o~dVRk84Dad9W}`wzPv7Wq8L(@W zmM+%kEX<2Hzdd+tEZrWQ8XGNp@JT*#c9&1iHctfJ+yK8n{`?}M=%7+;@KDwH;mPKU zxcvA$jxz_~YcI?xN=kuCE|rtURfWf(FNI}2T!Uzp&+nq)8l<@=25Dg*q_zu9TEhl; z1rx1n$38Y&JL;@`rT)Qx3@+F-HW;0Zn|I+(qtM83`(FEC*CzaPqen7))|5C5 znlF=wqy)m-@HGGuhU|<+d>J3k+g16eCT@nBefE@)A^sjrqvV_pygOz2MUVTM-#;{^ z{If?|mW=Lq$ABkR`G|Bp>+HIPm6d8s!^J=BZ(F?5hly$nQ5UkO%Cg-IJ-x8F#y*(B zHb<9%bDmA4FzS0X@L`eTL)4F8W|A-npw4^R z%*DSnl<*ncc?`afFKw`9uiY_v0lur^?|w#e9Qx-=d|?b_H2!w&=8egNI^WxFJB@q9 z!@c_x<*Y?`l&+|4E%`-8BeWLFvcsT=3?CKCL$i!IY+5fFcQtNidxG-}){I4R)@#N{ z_}jo`i`yE=yTxeKWgQlk$hW1e4jXSJb}Oa9@iyb;E<_lC8a@n-SMq$KoH8M7sCzU* zp--VcR6#Rt-VnU28&2)tPJC@^!5v->8|Pa`_sncr$$9}dcSFg5Z;H_ftw^06C80}A zyB)63rBaSAr-m*y7C9aWUFyG0!nlGAbUbxt>kXmH?03;`Z#?4?lBUT6?D3#A75H#d z__~i7>n^|@Cg2<49rrXEgUjrh})b>wD= zjB8uOUn7Z4PkVJ~-;?A4mP8ytlZTX>$jynw!Ci)~U5-bI2Te3m-V7Vm&?8O1Q|EME zV)Vw}Ml+f#;CB-m3r6F{E()b-_k7&A0V-M(m0=ecmv{*V!w=(Y+mWV(tK}Q*j#;>4 zyk%2 ztz%!a9W^FU=hjB7)eMuVo?0Ads$+b29VcKy8RRz%qW%9C5s}Mg3paEji|EIM`#xI4 zwDdq(g{>D&;z+}KNSF&`S$8|=dKPT`%qd|*uS4VhyFSlydx=D!6W*oMx|r)$`;L z=SetCollisionEnabled(ECollisionEnabled::QueryOnly); HeadBox->SetCollisionResponseToChannel(ECC_Visibility, ECR_Block); - FHitResult ConfirmHitResult; const FVector TraceEnd = TraceStart + (HitLocation - TraceStart) * 1.25f; UWorld* World = GetWorld(); if (World) { + FHitResult ConfirmHitResult; World->LineTraceSingleByChannel( ConfirmHitResult, TraceStart, @@ -168,6 +168,120 @@ FServerSideRewindResult ULagCompensationComponent::ConfirmHit(const FFramePackag return FServerSideRewindResult{ false, false }; } + +FShotgunServerSideRewindResult ULagCompensationComponent::ShotgunConfirmHit(const TArray& FramePackages, + const FVector_NetQuantize& TraceStart, const TArray& HitLocations) +{ + for (auto& Frame : FramePackages) + { + if (Frame.Character == nullptr) return FShotgunServerSideRewindResult(); + } + + FShotgunServerSideRewindResult ShotgunResult; + + TArray CurrentFrames; + for (auto& Frame : FramePackages) + { + FFramePackage CurrentFrame; + CurrentFrame.Character = Frame.Character; + CacheBoxPositions(Frame.Character, CurrentFrame); + MoveBoxes(Frame.Character, Frame); + EnableCharacterMeshCollision(Frame.Character, ECollisionEnabled::NoCollision); + CurrentFrames.Add(CurrentFrame); + } + + for (auto& Frame : FramePackages) + { + // Enable collision for the head first + UBoxComponent* HeadBox = Frame.Character->HitCollisionBoxes[FName("head")]; + HeadBox->SetCollisionEnabled(ECollisionEnabled::QueryOnly); + HeadBox->SetCollisionResponseToChannel(ECC_Visibility, ECR_Block); + } + + UWorld* World = GetWorld(); + + // Check for headshots + for (auto& HitLocation : HitLocations) + { + const FVector TraceEnd = TraceStart + (HitLocation - TraceStart) * 1.25f; + if (World) + { + FHitResult ConfirmHitResult; + World->LineTraceSingleByChannel( + ConfirmHitResult, + TraceStart, + TraceEnd, + ECC_Visibility + ); + + ABlasterCharacter* BlasterCharacter = Cast(ConfirmHitResult.GetActor()); + if (BlasterCharacter) + { + if (ShotgunResult.Headshots.Contains(BlasterCharacter)) + { + ShotgunResult.Headshots[BlasterCharacter]++; + } + else + { + ShotgunResult.Headshots.Emplace(BlasterCharacter, 1); + } + } + } + } + + // Enable collision for all boxes, then disable for head box + for (auto& Frame :FramePackages) + { + for (auto& HitBoxPair : Frame.Character->HitCollisionBoxes) + { + if (HitBoxPair.Value != nullptr) + { + HitBoxPair.Value->SetCollisionEnabled(ECollisionEnabled::QueryOnly); + HitBoxPair.Value->SetCollisionResponseToChannel(ECC_Visibility, ECR_Block); + } + } + UBoxComponent* HeadBox = Frame.Character->HitCollisionBoxes[FName("head")]; + HeadBox->SetCollisionEnabled(ECollisionEnabled::NoCollision); + } + + // Check for body shots + for (auto& HitLocation : HitLocations) + { + const FVector TraceEnd = TraceStart + (HitLocation - TraceStart) * 1.25f; + if (World) + { + FHitResult ConfirmHitResult; + World->LineTraceSingleByChannel( + ConfirmHitResult, + TraceStart, + TraceEnd, + ECC_Visibility + ); + + ABlasterCharacter* BlasterCharacter = Cast(ConfirmHitResult.GetActor()); + if (BlasterCharacter) + { + if (ShotgunResult.BodyShots.Contains(BlasterCharacter)) + { + ShotgunResult.BodyShots[BlasterCharacter]++; + } + else + { + ShotgunResult.BodyShots.Emplace(BlasterCharacter, 1); + } + } + } + } + + for (auto& CurrentFrame : CurrentFrames) + { + ResetHitBoxes(CurrentFrame.Character, CurrentFrame); + EnableCharacterMeshCollision(CurrentFrame.Character, ECollisionEnabled::QueryAndPhysics); + } + + return ShotgunResult; +} + void ULagCompensationComponent::CacheBoxPositions(ABlasterCharacter* HitCharacter, FFramePackage& OutFramePackage) { if (HitCharacter == nullptr) return; @@ -249,13 +363,7 @@ FShotgunServerSideRewindResult ULagCompensationComponent::ShotgunServerSideRewin FramesToCheck.Add(GetFrameToCheck(HitCharacter, HitTime)); } - return FShotgunServerSideRewindResult(); -} - -FShotgunServerSideRewindResult ULagCompensationComponent::ShotgunConfirmHit(const TArray& FramePackages, - const FVector_NetQuantize& TraceStart, const TArray& HitLocations) -{ - + return ShotgunConfirmHit(FramesToCheck, TraceStart, HitLocations); } FFramePackage ULagCompensationComponent::GetFrameToCheck(ABlasterCharacter* HitCharacter, float HitTime)