From aa45579e3497f54a64a85736f8c425f446eed1dd Mon Sep 17 00:00:00 2001 From: zilmar Date: Wed, 22 Sep 2010 21:43:42 +0000 Subject: [PATCH] git-svn-id: https://localhost/svn/Project64/trunk@44 111125ac-702d-7242-af9c-5ba8ae61c1ef --- Bin/Debug/Plugin/RSP/RSP 1.7.dll | Bin 823375 -> 586752 bytes Project64.dsw | 116 ------ Project64.sln | 79 ++++ Source/Common/Ini File Class.cpp | 9 + Source/Common/Ini File Class.h | 3 +- Source/Common/MemTest.cpp | 170 +++++---- Source/Common/MemTest.h | 81 ++-- Source/Common/Trace.cpp | 6 +- Source/Project64/N64 System/Cheat Class.cpp | 35 +- Source/Project64/N64 System/Mips/Dma.h | 10 +- .../N64 System/Mips/Memory Virtual Mem.cpp | 68 ++-- Source/Project64/N64 System/Mips/Pif Ram.cpp | 2 +- Source/Project64/N64 System/N64 Class.cpp | 2 +- .../N64 System/Recompiler/Code Section.cpp | 10 +- .../N64 System/Recompiler/Recompiler Ops.cpp | 346 +++++++++--------- Source/Project64/Settings/Settings Class.cpp | 6 +- Source/Project64/User Interface/Gui Class.cpp | 6 +- .../User Interface/Notification Class.cpp | 8 +- .../User Interface/Rom Browser Class.cpp | 42 ++- .../User Interface/Settings Config.h | 4 +- .../Settings/Settings Page - Directories.h | 2 +- .../Settings Page - Keyboard Shortcuts.cpp | 8 +- .../Settings/Settings Page - Options.h | 2 +- .../User Interface/Settings/Settings Page.cpp | 4 +- .../Project64/User Interface/UI Resources.rc | 12 +- .../WTL Controls/ClistCtrl/ListCtrl.h | 4 +- .../WTL Controls/ClistCtrl/ListEdit.h | 4 +- Source/Project64/ValidateBinary.cpp | 6 +- Source/Project64/main.cpp | 2 +- 29 files changed, 534 insertions(+), 513 deletions(-) delete mode 100644 Project64.dsw create mode 100644 Project64.sln diff --git a/Bin/Debug/Plugin/RSP/RSP 1.7.dll b/Bin/Debug/Plugin/RSP/RSP 1.7.dll index 4582734d42800a3904560128e9c3ed58b76b1392..782f6f4b50286f3caade50585a9e8d9c2c22d7c3 100644 GIT binary patch literal 586752 zcmeEv4R}<=)&JdOLsr0hbgNAyI5WLN}>d zmu<0y7Aw9b1zUWjEw+4Gkc~zYEZU$^siG#7wl{8Sqm2?3oB!{exp(f|{pM5O=ifZf z*_@dX*4$GvdoX2RoUApTPeo%)Hf4yv?5YN;GY}BS#xL=jY?iyf!WC%zlpJP>`!>s~wy@yAZe+=oI`X zjPNW?%b^th%>UXH)PwTQ`P*?+j6V<(t^6;NQ;J>MHDEoh(50=X;w3Ik>rY6`-#VA( z|6kOZma7enDN>W0-_Ny=5#;QoflTsue&zIel_o>SE(F*Azl~Zzw%eCX_52i%$;*9r{#LX;en`ArcbQO(E^R`PQ`RAd6?gL}ch${L^NcpGSkn7c#gD%kM40UfIGFiPI*|*$$)1pQaZ&auL zAkv|~ed`$#P5!a`J3+wmk0AMnBW1`RDs}0v-<_j{OT597o^VNzFI4I-qufTw+f>p6 zQY}>Cnh<)y7cLmqU-RlWp_NHDa=XM9?Ve(^yM#Q$2+;JP6*Bi?;8W+^Hdm9%_J4YNt?_*yDgR0u-_8H&V~j76$??#^v0=_L1I4080iP)Sc9;(!?d8CBBh z3CzHFhDzER+EAwrEV4^_JWsiTVVVS?W%L_(rzj{8o*7^E-2VltQ%hx@jdi>8HE-{r z@O=F1$QR7Gg|?19W-1G;JIKn=P#}^`sdvm2HQTYrOyyAOMKjfhQV}ziOR3+RDHo+y zo2la{^;0v|mr`|VD!PE1?uUZt91FdTQ8(pIw$L(0^CH*rI3ypR{*&Veo1LUa#-F!d{^pz)S-tmAN0e-;UfEvJ$0V@H&1#AU85BMwKBY+3W z9t;=-*p2kN04MNM0Y!i-0A&Epk(KSt>67a^?j-Tox1T%jc#n}t@Xy=-gcI`%#QdF> zW%!d7pTeI!1a%tzBwXSS)=r@wb%*#r{E4e9ylfV-CiE86U`k^G!1ev@lRjD#Q=qaI z>aOtmCt{w2Yl+fVq4gH{ZsqB}6@@W<~fa4MwG{2Nm%k zXA}WmI`=l!{RsIZAY^}73`5;ggp?t_{;fZ0V$Kl>xQ{WoOAp5LjS3UiM@NeNlhF}< z^(W{D%{$qX_dhnKv%z{V(s9#S$k%Q1cawZ$kTU&siE9)?;davpI_jb0^Bp^M|laTa>2}pM(CjC(Y(qAPeU6O$Gdx=ROOhD=*QkM@ap6(Dz zz>44^B`jB|TZIzNGO6vP4<#VozaNa9Qnk$TrwQo(Omr?g-Om!x{hH|9cDjcX&@Cjo zt(Y%DL~b{ffbM!bo!RTf2}p+#>G}yamf-|+PNF+tZ~7+*==OYQ_X<0aR;@O*zX^;X z!_=zIgyX3Yv#hsZrx>5_gVQQ1)?M(@m?Of9gD##f&UL42UdCKBaYEhxB{b_wT!Dxi zK1<9x7d-VS5{M>PVdMg%#vtEC1~z2na046GWnv@NjWF^?ue{j6Mz)w((G;_^c;)PD zFFTqD1c0O2^?|+X>~qooieCS?{fME)pP1{NRu5XuH!V1r{x51Qgy&*U>;dNW(}sR*0f4@Q_d2Y5pjv4oN%DVTDNi_ z*1Gq)X{`&Dc1;WBQ4#B^3kY=eD9Xr8mS7Ro)_}SV9iW)|1>mg)9szz?>DXJYm_D_# zYR>ez+EsT{PM>8ZNx`Y@YYT0$!&R>Bg%I!Gk9s!c41huT^mC@rTH{>Rjh-TNAZPYB zGM(@sp^|w`sH$oDpPt6gPrXh}pL(i&ZEgQ|;_+V889~K_>+2SZSV^9xEDtoI&K238 z7PEd4G_hp_Qr7wztfkCQn0^;^karI<9@s`XCwT6E3u+84qeSnZW%^kdh~*QqwT>oa z>+j|{wT^9stsjfLKM?laD}g;mmAbJalY6PBS%*o~C??`Z@AuI}SRH6{Ro)OsX86;W zK!!4xpWKeg!YJE_vI?!jsekJhQoJiLh88L|Hga$1pccKJE354rmG2ddwM2}+MT{L_ z>`cg*th3_<9GmF*XFIfxX9#;|2(T@{xFh8IOks`w9tWOQf5*g;8Di~ykNcFP2XBt; z6Zu!}(c`5ck{Qi>O~}|s|J%1>WhCFO z$e5tAL&(@iUz4yh%Xk;&FDq!}*%}3O%i)AgKi(|N=gF=SX2|#= z$RJ~uUS)5_)09JD0m-QM#Sv_@m<>a1$l$P;I5@yzctQ>&s6KKNta?8%7J~wZ7-_Fe zAgxMfv{fji&DNW4vMB}9QgFi3j^7}qO~B!;cUjtOy*42SmiD{r!C^f5XKLO$U*3%Bu;dVL9uVfR(pSD!e@ zq3J)OpNhU%D@t|(E8K{|>WA*DQNrW@w5=M%^oS3@HL*c%e5) z-iam2ViI2W4U%Xq$=jX8g+mB~q$8GOE0gGoEDl;~R9PNklHCePZ!DL)nPi_rk`>G4 zn@rNGko+f>OA(W_C?uc8lH@T-n?iCRmgJo%uXCFJV~kUULv&@mQ0t2*>sX6135=OW zGpKTKJ^de=Gwk~=uNcWUcs%!9+ze0omq&^)s!`Wp-WAwiYAGG+4s^QS95^VH*MeF@ z^BSpcm`vl1TKW}r1&x0-*o2oIK(^d#4nWjf!a{~?sley&L(0NIMsLApA?GOr4u;9Z0&HlG$`b^V<*E4%nbb@8kyfOiOg(ILts)cin+nn$MlNa3Z<>=H zMNOh5Tl1S1q`zY1l6m<}qtUk;xnxm((+Kp(j9ju1zd5M-PmEj|aldH|`T`@DOvP`G zu6~=5OGEEB?N2W=a>+RBsVlyUTz%_x>mA+jm(J1{01_k=f%;EOhkJ&(OM@a;*82S1mWT(C^62c$T7jm?$_C8J?+(& zAVZr3Dl#lOu$l(^@~Rm#rq2<_RH^+Xj@3%se5Tf0uvW;=X2*Jy9Fl4b?F38`XDrFy zf6xf{b7lT&(V^#&PvK0re-Gv+Vxq63Ih;u&pk5;=)`*%dNs5D9Tp^A!eEw^xdT9?P zuTgy_$~$QJvrS&=Z-9Hvlb4d1yg#J={twY6khIX0l)@_im9b(vxVSS^(&^Kmb<-?% z`b|aY`Q$4wtx1c1Q#bm5uv4d8-a<)}HLUZAzr*4REbBC~e@@w!A+iO~0K@JUq6mvS z>`pGpY3vK9!?g_7|#lQt+28whqNi^%*|3$ z4(X8cDu%%vNk{tszyNS~+LS~3#884QbxBm@g`D$9C!&<22+rd*oH0@nmFlzK#T6^> zZ8+WDIG*jn@1jKT8^So~6u^IA26FB(a_F!C^N{-FgGiky;~mH*u0Ft=q9|$;MGk$1 zRbet93QWO=f6-7CEkt`z3QPE0K)JHFn zMWi_@S}clk^^dQi?vn6gjnn+|M3GB>TNaV_sn%>!be!HOi^y83XqqVMt3M`-#3HEq zCySzf`VVE1SPwOSu_$uub7c{Y9x*HuMS1!pSwureMFT|9@%k89Bo<7~?-WHI{VZ8T zCPKAzcCeTZxuQrO|D1cR7;$o5^7!WjBh&C*w2#AOoYpCP8Rvs`97cLEY<#}#(>LIb z2{;sWvb+S6*wdVJ=TkdX1`j4;Aod5aUa>!bSKo3mQs(}kyP|Knq{|n|D}-!VB36hM z<_fT?a8QZ<@LqDsPM`jLRD*A>jZ_VX55{)N{{(XCsiL(s<&g~CX68!4t*6brhBdng z@xdveG2;VpfS-O11k`oo8rD2ebwSd;D6IiLac1SL>4ppE{>;O4Iuxq(gt~hR2t|;-5^VU$Rs>%=FNAWpBF|7R zX$i{xE^75yuwRoqzdO}|T9RP28OdiJly z4^6kFLcu?H3)78Q84Nu&KOlbK6FN}Qzqeon&B_D%Eglmq;tJ{m-IS zOzBWAt@qbLE?1d@Ex?EdX1Zm7Bf1p0KdWh&7|wm6{m~+ z#7N=b@`+7%MV5a(m6liFo&dV`Ym|Pt$KL4Qkroz_R(^-6e?$JqV^}>bS#b}T-&oT> zY$g9t2K5>Kp{Zms5*pp?v6yegSPW#8Z~=2^UN1JBK$*Xd2X?t_U@xGyy2B;QX?3VZ zBVto**iC+zK`Hwdcf!~Xf6%)4x7l-t0)HZB^#K**K0F|_b z#h_V^8q*;Da^U8?O|8Es?izL3oPtbGw-T}cjJ^Gc?1gq%{)b{aHv+X=HGx#1*NQ; zc7(Ik9ha2!EI5f+;6AGS@K!jDU_QI`Xsbz*)SvoZH>{N8N2iLBHvN`uzBQWt8%_PY z5GiXtMG*A^hgMH(J?y_(%#IKL0#5K|6w~5=u$C$Yw$ZOfMgWaYvp^Er>~egLrC>^{gFNO?RL3W0$g@&+*-@f!jR z?2tE1Up51i`p=nQi>la z|7+dSW-5z5-Z2bLzJB5amv* zRoGFeU?ioo2KOQn9`A50`iP#dQTcS!zQnq(b{g?{B$iKLM{c0O5iD&pxHoj}4YXrkHwWHvcz##jidxybg5_H!1&LF6noJrMvh#`{cd&GI z^pyA_noB4Om8=W2^^=I@%PSl9b04i6iuqwz=5lgHunSD?3!WIvaERz3d0Pb^W8S zC1~L>oD=gE5Uby;21v8jr|xCCg?x>vtbj4DZs+mIMyAyO@NcIiFJ0H zh-=}o^y5vViSd4VXVUSGV1(J9#NNN&l%w76@>WmOya-BwwJ_!aR#;AXZeX(+^HM2e z`IL7Zl@0*ry`Hdvz*aI=2&`xl3x*I8P1m!U{lIU)tywSj_ z87l_X#@JZGUZK))z=|dlHeTlWBsNiElO#4-VpAkGO=5nD&63z`iB(E$p2X%$tQuG~ z%TfcZ=vyRJoh)5U80RekHsxk2T?)*53t`J8-3p1V1Qy}a)xe6U5ZxMCx|T{gZ=K9r zFR{%M+bXe$#2O{m46Jx6ao#EOS|rvgvE35eBe6D#?UR@eYzg!0lzCke>y}uL#12SI ztAmEPu9GkxUl%anw@E%Xun1#bU`4l5UcRIo0Bj}a4Fu+$Mx}+osu>#utc9^5zy#-E z5-XC}2w=t2sqRRbH(FxF5*sVAaS|IZF`vXHN^FwECQEFJ#HLBiFR@t?n=P?QiOrMP ze2G;9i?H-Hz=~#2Kk9(3WNa}o?`@Q~1Xwj=OM!JUwj9_LKb5Wk*236IU_w``CAJ1w z@l2vyOLUB_lcnn=wpn6ZB^Hrbqr{pewo_s)5^I&%Zi(%YSewN5Nlcemr^LD>)-ACf zi5-wwbr3qJpuW`r>td`9n9#vui7k=XQi&~>*b0fQl-O#Ct&!MTiLH~^dWmh8*j9-} zfK`8oyg+2iD}qm2`)~Fxg_S6m{(%?5*r|~ff6f}*dU1wk=QVa z6-jJ_#70VNw8V-fHdbQeBsN}RK8a0~*d&QfmRR)6B(`2+nwubU}Wm*f&7pA;*z^43&u=T)N9wcltu-Quq+X_tk z8DSA%UCRk;1h(?$gf#;b{B{EKt)RRXVBY^Btd;V9LD+6dw?|@a65A&+U1FUQ>ylVE zuyremUysZ?ATbS^^sc5-C$QPSBFqIW@@vA}r02&7^8#D)IAQs~*8PsK0l-@RK-fTF zvo{h}NOYSB8w9L+Ghsu3P1!=&FkrqX2`d6t{71q@04v%`*hpYPFQX+^46JY)m5v2A zWjkTxfJGVz8xL&V(}ekeEqR8piNLhy2%AKC&4f(`R=tC;DZoS<(1!yHe8g)n49wcM0sAyV=Nz7@lMJc0IY?vfxvt(P+lSBF*XR; zlou&)2rwb@FkoGrS0wXBNNl9UMoX+%Vq+yXPGaLF=9Ab&iA|E&WQk3Y*ffdxB{oZ9 zvn5t3v3U}kFEI@(N%fzpmrh_>3t=wGW6Vu?yC}~~d5q-)^S(rR1Awh$Y#^}0mnpB1 z@)#Qgtf-aph5+;N{2c}?!g)o&gic3DY^20SORQL8VQ2oHcMi&B~~f1c@mp%VA${5PLGW1S#-FR@VpThL7;i;7d8Ev)3VJwJaD9lT%0y8 zMTxj2M5~-_Ub5Fud7H0l)kZ2O2gXdf1(cPS>FZC=2I)jjdHjVlara06rucObXL>A86&{Zx67*7w?vgw%$E9qv@1FwSCo{)9LYc05%52b24YXZ~ z%hB#y4f~VcT{zLa9c=6O;8@vyIGAr94h|MbR%LOt++Z4La4u>;z=v#pa1Hj2j>7$P zV1aX4oUtMcM>cUZCkq;qSHo1al|rP@7MVs2)xd=1Fep?x!;JhF4yk!FsEPT{6pyV^|J0S*DgxD1q#gIpbFO z-t309tihztRiuzOgU^_ssd$_|61QO9ftz3lH0~)|$(X;epaRlF9^)O}K>Hb?{Mu@? zGb%q!|EkV48^jX;+ndE;hO)xr>kN|#@~B5oG6%dtN}I6r=JjhDw}j&zqt6CCwS1MI z3;6=0S!de9BQH%ldrqh?Q=a>dy*$eNsvK@4tRbY!0AxtJvW1l?)VPU*3@&cEqlQX+m#P?k(+`?o7;ixfwynhiMAwiSr+T)Wdgzx6PFFUf$ zdtc0)wD-C_^tjzu1d*1fXsO#*OuF(bYJZdv$k_5{iwH=mk#Lg#pKWjGG49{7Ztv`4 z+`oRuxV_;=y1h$M&j+J_`(H{uBQl;3*q@iDZqYb&lV=9B&?Y)FQ1aneV$KYXygc&E zKxx-@hN0vitUL+*yLo=K;MkvErIcs>XDUz3dZnBPi&N60q_x!cr06SC`Hrv_Sw0Q+ z$me4k-LGB@D>Uv8HD6?Kj<{1*t2$ko&3Jl~h3-E=|LL9Tri=_)eT2*Hx&LOg5DL>{ zTzKL0EZi4j@Db+;e4B88W4-L47t`2^`6g&t+!kBRcg4!$hS=iqbf2m${$*@2-Ck=I z2kgbl(PD?+UKGlkY^!-yZ1EIZ@p-Yu(`?24VvFg9d`qlOTuZX4WR|V?1*@2JU*&1y z2k4eoFp{bsQ3Y@ZUkFG zdORS|R7KHyEaRp=IL9eN~yA<;F-hZXzj$3OK zy<-?sb1ziL+k4+m$Gun~-=SgDQgg3X$lH6jr{k_URM|1eCijjfF$ndO;2XqaOCA49 zX~jv1$jNj~wi1qt%#x0~Vk>e?Wftp&GvI>9)S)5cu|z^~6VIB5@NCh=v32dNPl_p4 zU7;Ur=rJq!BSI5#=<#4Xp1WPtj%wBS=3Eun(RJCA z%wm@raMLYn4=nXE2itjI+;#o9>*U6XIrpa#a`AZqMegeRT@-on5Uv^!XWw&=-2bn| za}A0E^lZx0&=?|*zhN(ODn%pgMJ}c2l%z%2OOWh%ciKp_`%SN z3`a8_+*jH%HA|b*hIS`znRviiOG8sv)1TCgXV6eR?Vn{umx^TpoX585x_G$U-20|I*tZ;(Z^b~rd17A6p85@Ds8h9 zcxpC4w0JJt1(*2R+iRG;=XWi;_6Eya@o0MvHH2@D;92$=q0(1p1l`XLx)IR|CtE3b zmPmTGi;~(M3%r5mUc6>wM$q}fIVg`KJ@y(Zx)9{ubk#{0c!WW~GqrXar+ zBkF|KW&y99e*0|eO|@c%@c8Q>V1GmhJL>lrla2q4M`-+w0a6`w!(JZv?MttwUV47_ z^g~bd*RLRpE$zez6hbk<{1=Qt3%Q@Aj71ITKy@ge$1?B|UWL_(krbrn_^PKgfzixB zTX?~Iukoe5(XSA>HrG6$HO6!J4n^hBsbGwoL!KowK)z>_lZSbDvuFDb7|IvyBNo`v zt5zOlFGY8#G{#aoeu7cu(;FHSoZbxlp*2_K{6FaVx(>{Y=8wdDHCT~TGv}$CX*|z5 zo1Cn7G)seFPPKTewzNQH=6vZG13MJ9Jpxaj=~ss1YWue_Lw`kQk1hJN^=r;{6 zWYV=e=BFdi%wvAvE(*T07|S%kuwo?=lWE!M|%BOkcxH`sm-fQbDCU7p%xXVj^-9*$r?c zX2^`ddl%jb)#}-V$Qv)L+m!zT`IPLZgC)&krE4}rZ;-rdkdT+ie%iCC^!e-tJ0X>L zwwF9lgxm8uD$i~qM!|d$o2kw!c7EGJx{eII2RvJHClAV$VWe`_w!I7>T#U=$9=}Oq1-g7`dih-VEHd%Spgv?a~&HAGCeay9kbi zeP*_w{e0Tzf1RdvKJ})w%+{a6GJpMD#WF*^WSe`CZ`$U^z)joi2CmvBug?d49Mnw z6O7l;|Lfy51TT2gCsxIeR}l)#@fr<0>3AKqKc!Du9f|eb@Tave-8a%;XI>+T+fat8 z+Gd1mX49V1+*@`u!)A?o%0*Ji)DvE85yUX&Cp&Tc^3>wz>1wO}!f92Z!PPjoioKQ? zy*Nf%TzNHG{mx6h_PR84%~^Yzy~uX5VlP51j__*u+9jO}(I%v$D$Y-)@sDz9Cp-Ci z%F@tL-MJ?6ig8_5T^t=PXt>q9@>J8s@(0XbZtKT=T17sq;{tijW*FXRsDERQG6}>r z-4Vz)=Rh&=*g0^x`fEEz`b*@cQtD3};Xr%hrk>7t?Pa9lJgMQuc*mpu&)JHG;RLj$ z$Tju55_m%WHi9tK{X1lNfi{nN|BkEj4DlJJ<2*I{QC%eZdTRcRR{4|M_TJA3<*_TC`Gf~;sL|LCiWmkwYSE90OMOoiOW!H%^ccQYJMcMHv>*!}~ zq6|NTPEt6Ttdqk;S;9_^5M>EFIa-t@?BrNcmavoKMOng5P84McJ2_dDaVO8QRuZd| z;=m>GNS-GuC+y@!qAX!2zbeWScJgvjmavmoi?W2BoFK{)cJfA1MxBg~wcBG;HMInz z)|#rRE@810WW|DldP7)>_&E9cokMq3F`pz?O6hAZM%#zw|I_V^Mzt)MV6-l+sFuo!h8!^wfpvDBAk>JFV}HxptXUxmeY^9p z`i7po+;%pvYi2`FIw*6mXVdee8mb1GxzdSCHAG{}Y@!)b#aw=i2`b*f=G@u?#F$x{ z{dQXW`oPl7VcA#GlOW?xkx?yG7sf1gLZMah@q<*}As9kT6$;ZRF13egJ+@tyO{0ga zPx|b=A;VGDXJxEq^|MSqnpoEfVzpRZn^QHD$#3-2tdck+-jiI{azA<){t@3@J0ki{ z@0UEa4_kA^>~kh+vYbOYKk@~O6ivO{X7d%%6ceRGxk1SkEhA@ppLut+S?l0B#8Rqu zXRaOK%8xW5^X{@izY zCJrE`X}d`mXV%jg9*V(rY__^!+MIQpb)0-2*@eo_gYd&?XzcqxVKkL9;zaq9J!g@Q- zJD^5Qc&R)r9zBi?)6@6|>wLzFq$I0kXEw?!Cl11U#2ah6HEDQ@C;W2!>{bq7V$DS! zgVnyYApYbbSuBvjN|N1D`;zBJ%MzMYx^85*1U~Lf5C+nSt)idg(?7m{hVwcEM|tr2 z&u*!V-7{sNs{Jk4LJ`|V1JoJKaW|qbrAY71T+tF5>+04w`6mD%QY143w6zcZ#KYV1ox1jLWTrb|ej(5`Jf3pugxBUk5+cTz!-efhU zypP5_WSv%9owf;F2Q8eDp_D|27e?So?B3p&^+Zwz7IZqQ+=fDI9XKw8?newIxE6dh z#n_bNad~l{2Htmo({_GJ9XCbrjy$?4X5ltQm0#c2p8F(6X}fUglr(ET4UQ#TK3&vN zraUs7+W)7JF^T;cp=rMY9jyy1vYF4duou&OE;Y=@vnl5-P>-Q!HL3=Bw(}U`36B1; zc4gD6YGnsKep)2S_!*|cHm2IwdLP+Jo6Wv7*qq(I>^4~~>imCWU$o5N>9ycDV(ly4 z`&nY5))f9}Mo1h-%?K8}1CueG!!e&*WUtEHvYzVX`INN3M@`<$HE6y|p$}dbO7Bv* zm|qSurH0fZSW6c%Q&dg=%x_Mp&%vTeh-HQCbj(N)IMMO6%Yd=D08+2dD`VqVf7?F-o^!QuZK zdo&iZ$hai-nAE=?biAajXL~U^riVG^Q<98WnUXQ0^(cWHo>0r6}2C!V*C5hLd^Ag41{}kUm`q?Q6B8|5g(^w$r z$iGsIRqFNE7@s8Vhn-i)e61}>`?+VuwZHU=Bhmf?nYI6q)8pFDKO*fvpIQ624Tx)h zX~|*qpB|wWZyn9f)CBgyZ^oEFe?tV*6#4%l*~1~ov;GTl@+=w~?>-J|euSNwj?ch2 zVY9n{2;N<6SEQbInA^<&6=QBjiYRr&tFFe|F3A>up6{GbzC*+W3g8Utrz&83Oj8=JKC`^dH;Ug#H zrt0)<8~P6>T8Ob##G^v|4}GEkodqmzYDx^6Wt_%R`^5+42>n z+u`RtFcNHnI|gxOqojsPK7bmjq_0{snM&R;O6UwZM7zr>fj^|_2@s%Sg1~Jg#3i4=*0d{)s|1oKYKhV`XXxZX7@g8~p z>Kz{gfzD_4LQ#QcqpzcR$E@4&XAtWB~V{UiZ%SJs+d8Wh(k4*8|hO z8$cpDkjJumhxVV~-$~+J&27433h4|`bSj9Kjd0IPJ4d-Zfq7t5F|9%imsI=ouU$;X z*zSriAYD5Nv%#ki6Iwcv^p2!7 z!wZTZZojCH79Ey|dUFEmOF^yD20r@2{QmZgh4-E0Ur$wy?tg*1?}}cel95EqNIet$ zYb{z;u2(L^Cw)G|=ox&%rPXErm7vuh|5$jEc_%ggX9Fb|Qz%QG7>&%(jxasq-sImP-P{8(+;rVh>dW2!ceyvc` z{7$V{qmaxmLb4BvaD}50FTM~IUQpouU|Kz8VSo&(Kbus6F;t*c<@-n92_4*zumYjg z@JI(evZk^qR2x}B)rX;CU=00gRsH>Lsy@!F9=!#1oqkO;pQYBFNOfDeF8xwnoz(A^ zbjaxu-L0wfHmbb6E*($o*JIG5u`94S>R}$OXRMjf}x?n9X>(;Y;Mb<>n4-S}gWNK4#vpYDT&VYVmgz1qleY9nl4 zyUqSm$iC&vNE!agSnC%paM7p7=Hjv(Bb0_xtInwBFQ>W|wbNyZKzq-kkDwi`%A_-H zbE5m3Is=hn-02BqREcZu3H3$rGjIopJ+obiL8EWlX>l76)AI1m#Ue(OqujN{P+!$) zNH(;&vvcHtBV*N06h*I!Mgn7K$P2OYh+s+k@43AKGPd1TtE*N3&iX}>CtSCfCw{5wio267S z_S=Q#c|OrC3o+kENiClX;z*6=kq$f?^BoO)b7ut0_imc4tDiCo^uZXU1)}IT)$C@M>l~#aCI9j_28%>GqDHG>_cMU_LN5r`0g2=nk=b zP5V2RuY#e*@9foGE|8?ROeLEk9+0j6D+ecH_kIkRR2Y2qzv zj6i5iWAAx#8cPFBEx#O|HV;{tIkgobb0G`9;V~n)gx>5S=_6S%$Fx=GWgk`*XC_tX zy(3l?JXVyx6?(adRfXnBTEXb8C{~renN*?Il2}#TnN*>7wpdk;&!md|W-E*$k6$YP zM?S)Aj^999zm)HdkmG6d1nAc7Hi2WE;f2*TxQp)8C;{uF zKKUZ{TQXdrQ|YsV&=6^9TkQxEWg^ z{5nA4*9rbQ3cq&aG6J^i9brLb3#}UV4#0|&FzRa9i&)H^jop+x*q>TLkfTOr4SUIt zs^!_Xa;q?Uk|`W`iCq$+HG8mjYhiq_X0G>X`j1Zpucdx=oz4BUwMF~RxVHA6A=^ql zKd9HXAn<{5cU``dvMcyC`^goLE$wY(3I)qa3eBZZusT%}Os@SnL6T!Hhc=mL>Y%0&O&!z}qDfOrJofa^%26Je zk3^VtG#%?txrxu?qH4qvOE$c(d42!Zyivfl-S~bzVEhM~_aA_(Kh(Ux0gT&^Ys!G* zdo=H3fUzHG-d_XyB4n`b*CJ*-5_>%iBT2Wgc>IkV|KXFPh;yU(gphSU$Y*zWu{cf+ zIdGGwgYOr}Akb{gjDJ$Jr^a&#v^*P^y2vnvwQu458SM;FAVRx_p4_n8r$&DEU}j4m z`Zm<4V&lcf(@A(eoh1Xw7}tJsTHaXsjFI{L9!a7{_ny7O<70JieOMF%H|6SZ${} zZ|2(8d0UFJKe;{YJgn`R82_Z_S0oSb&x{i`(zZCa%HVi%jH%zw?9#S_mGXCn>JG&| zvyQZVCe=^c^Sw6u?rIyK+hLb$KiR_po4B6cw%{J93hTSIx5ta?EH4$ix3`GJ`oP3b zJLFuCr>7TV1ln@NMjPiYbhI}wxqTji`FNc<_&7c|Vv{R+VM4CBAvFE5M5_51fh$RP zo(cOm&%k&pWLH+2XJH=y9*Plm_7^e2Op;6=AVd*IQgzP0oQVT37jAcgi1vIJ=V#gT z;XSNVFL62)&EsVX*B|V~+dsVq*@TFG;Uwne!QTXFG2xi8}+LYyC;ifXL%y zv&!SofN+}z&VV|j@(hUONvdCe;cV!z=VjL6X3stF=y`P84KBRa(|?#M--e_1`2n}u zXXc;ueCfH8PiW&1a@Tr&E-&4q7jiBm)aM^YE#Jp2yP*wn^R_s0%DrclJZ>7$$KfR| z(INPCM9;!+R&*eKv!f^B*BPbKoM>PC_K7<2OJ}ckX17UZBf;!}l27VNK8a57Y%KXC z(Ci}o3W0kG|EjIxOvy z4snfpSU;iNK{*cZd4M9omjR;zmjlKDt_9o$xED|hco6Ui;4#1kKm))Gfq8tA-p~GA zEq!qZL&W#ihVsKSHWU2CG&Xy8kyVJXq5IYY+vqp~cL zbi9=)h+b+XPLEz>B?d#cmUQ~gKknG+JEw4VVhOL9EH#qL--4ou#ZA` zZVchwDq*fgxY-j;?^jsSBPtAEStOqmzUIe@W&;cI+viic;1114# z0P6sI067@t^8wcb4#L0Sh@#Xh{rOTd^b>X(hK}3D6&q9hd1anz=sBvPA8~)4f!=3A z9DOSythD~z6*S#^ygz>-dJ_+P*#KqFum;4MHDaHRapdQ$tt&!_V*HQ0HXzeSNl9_+WcEs6r?(q(9KHyBi z`G8S?ae#8bw*gB4n*sX(UJqhQz;wV50h<7a>|dJ6(0|{Q&cC$wR}KB>`j-s!z60Xu zlM(J6mVfzPZw}w`uf&U8m^q&U`l5l80fPV+0=@>g25_YOi%x1E^;|mtvNm5;`)BB1 zc0v%#ztkh8znPoXzcAefL6^?IFl|t!P3~Wq_FF1#a{t1#7pk;L{0kGhRKg_wg$dv8 zBPV^JIf;K^!i_4S&A+^z-oG%1N{d5g{$^>1c$d0un6!&z{7wwfDM4B0bPIr zCpx@i0kZ)s0M7#61)Pl0J{bRE?T@S@g9Bvm*F2NX-dCLbIkESx5X7?g2a(eM=}c?y zO!usyV|$MzkJp*@A(b|{y)*6YDs6ImXWGkD+9dYQgacH5l|4(|lOEr3~odjUTH`~BO;X;)#iN9gO>r_IUzj-CS$uoz1i$iAq=IbBC*>V%+PAi}t@GjsJfa_F; zw*YV!zz3KISPf_a8~_YH4d=mtdjJ{xo4E5{GW7TVn9k6bo~|1D(RDQ$=sgH=^cA17 zfgPNyQGLoE{~b3D>o9Y+0iFlE2G|F95AYvAKQwxz;`d3U_U}EJPVKV_RkeSH{$()) zvHZ(ar1aAfC1QT3Iv-%V4?a=+K=OEoX?Li!$^8q{KBCel_b*I)mr84j9CJRvgyU4g zB>sg7&rk`I_!lPp@MER>HvfW4+leo^#VC5c#UV5Q^4G37yFT{|h*bcW0j>qy1n>i@ z0N)3!1MCJk&%jwEU^1W<@LRxZfP?Ta3D?uvWbdI(>Fj;-*`E`8pASK-VJJgN{}Q6a zH1^JPIf5?TddjqaK~y8x$mI6Uw7*elliNGfE>dZe*gF$WQVEmTI}=`@5+<>CChVgU z+Uy-K8cApG%%O3=R7z&{{_lUr+55?7;_L-*A>eC(YXFk~(*bh;D*?@bZb0E#4)1tC z72tmWO@M>2cl-6z8Zz`>u1{y^`v$3oestH<4D|jNh@+4HkoA7(>*;qo6KU==BuSiY{=tkWS%~&QTTKqF&(GrC!NiYv#-yf>_-k*`a&x1JnC+{7mzE9N?>AP%*!+SH}JAiqB zTELG1zW}TS9F)G3+@iFbwEo6#(`ns3Ox5~l7@rS=AXdEMKuTYLC@@XD!gS?=E?vCB zv|m(dlgBGe`zan7ld(w>YzI!hC53v;*D+d;)Nt2VVj>3*ZCH1FQzL01f~K55+nPxCcNspOHUL zV(*<~@6pH8+53U>KPUD+@B-D|--B3s7*SvvduO`of-arCGwmfRZE|~O+B}suxxF)O zJ0c}HH2eH}}Tb`zCm(M!+t> zTYxB_2axk6hxY_PF~AR43WxwY0Rxhn1K|zX3c6XackX+5ztZJ^`3(=^^WT0O|Y3zfPy` z?hB8dzB91%4v3?VMznWW`o8JyIDLD;_;kQ|fUf|?0?Gh41HJ<|1brtwZz&?RpZ2SC zYTr3RRr_ZczjQ(nD}HG}O5gU6wEmpwmI=Ca{+wxNs>%1YZrP2mBWBM?f>+ z6~JDAceukl5-<(01h5tGH^A{2>8}6|!oMW6_pxN}LszA<_pM*~oY?yw2x8g$6G-VV z>`QC!O!uguOK0y)d#_5H+}@eCRHaRB?@W89N}I&qnXu=t>Fu2f|Ev-wv3Dl?l}c!{ z_wS^)cjhq7;*goW|Ku-m_I}UBxK|hOAmD!hj{`OXo&~%F(7x>O4gpLAR0GxmUIF|E za4tssaP56E+54!K>Fj;&S3f8Az7v92_Fj*a{$_hxduO^0f-arCGi^|%O>XZ@`z@6= zxxF*(g(__lduKwIN|?mIGvV8a#pDhkiM=!7MwQTJ?^Dy;J9DVCIAmt;t6q(>_uEF| z{x85Hzz+cr1J(dG0GZ9PV9Xv z1hMS>L8SD5zLnPAneJIZm(Jdq_92xvxxF*(?J8|@duQ6qRN5r=&V&P0!X)<2g#UUo zy}dKxb1I?D-e;z_cji!IamdWx|L}60yF4R}eR1*U#NO9J5X;^dA*Fx%Mp}Dkx>p2UI(ui@$5h(n z_Rh2mRNCbB&a`DJZ4!HD!XYYQ5_@OD-q+LHI}^UD658y2dU|_j4ofW#nc4d@EphgK z<<}6a0Hy-&0DKQn2UrI9C7=b+0~mBE&LRQx0gnP+1ndV$dynAZuY}KY*H6M%Xz+%Y zszCy4cC4bDEyL*JG#8?lzwHLtd@f|ey11FL)klv#hRoEE@yF+##`E&YzmF7X!2L~l z0Sn$&(S%kQVa8MwPu*_(vrvZpeH^LzorS6@k2#WuDI5LIOg?=Bgj1OfHkon#2%1W$ zPyRkls98VBl!YkKpTEC&@cqg1+C})Kor^A_+9t zIsBz33iS;%KBaBLKg@18@zr2SORyX-Z|?~eySVgcT-p=5%54%vg5`~&l9r(*5eRu& zX=AWtU9faLs`$dCE6V7tDX`E&yyG)mTMdzLahr3l?Wbu(p)c#NX?3;tpeP(B0=*kD zdp3qCr*=o>1w`{81`scg4AxSoLgLqzUAivhbDmhfUStGaL7y{vVYp-+HBlB0FC}L8 zgS#)hY%TB!M$3cHayU#m`VKTjox^t?mf*iRftCbo8&OOx-$oRi60e}|9t+q1apvvQCr%*Cyq^O0AN#=& zw*T&m>~LvkZ^7!R{JFn}s4l)Shph%alENh`Mae>xh!NMXz=*Fz()eZ$wSW=7*=SaL zN307(olq>j&FKK}TgKmc>vwFUYkxmaGWmFZR^Guj8Mx%r%4vpm;;kB;n7NfF^78V=JZtn_@m zcP-4HhBO=fJ-Q;~jDR(oA4zm;*{@NK{sh&oZKFa%P8`*foJ@E&%lR5g!(pP)zYlWA zNjXAJCfkGeumx-BYh+>mMRk^EJzfn&ax&4CmYf42XKlpugG=BNn`(zaB+_uy6Jng+ z-ol8%i1UN+rU%5+O#VEoLRk^8}s;{}5L)W!nvcP*Et%l^Yyb z1z6+;%Jv2~)SxrLW!3l%)e;^GGwySbDswOV?)-dvu4`18Ywk3A1NRUod@-+Oe;XEfW3<&aE_+8FZjhB5lEBbSL{VTbC zs5^vj#?1#=xOO+H;4@R!cU$wH&B4$|kZp=dIE%^1Hu`nWy~57;U07$x6BaNqmEiJRH`OX2vJXj1Oyfme^5ct!;7Xu#+ z{3+n%lwdpB2H<4f`M}o#r};?vzXDFmCi zU*|)O>1Uk)+c6p;22lTxL?g=Q%`)BJyfP5X!1Q()q#9R^iRGAyKKL87J$n7AWZVdz zUHTP}9ZFI;|Ft2ZLNezcD$7SO?9$&kJ&yPN7H{U4WYY72N%BCo zm4!86EV1TN4%Xb#=V~_r zgKYFq%2t7lh{)*C_n?0)*oiC{NO!0{gXl&3Ts0iD{QPO*Z05^5e3Or zWXLr{$Q8XXdhTMX34E3iUv)N+lIPnX^hWsCJy6q@tH4=_cbjSl zpp)DjZW9le?&AUY0|$t-;IW+DhyVg%B1B+Px=(M#uzNN(V+vmGe+7#TPd+Mm7$)M= zr$c9A(zz#~_nwX8oMn2X)UbmVd@HqIxMW|jmgI>J42LPk;AR)gcCtiiXc^H2m+ixE zsFr@&T$dvB46!_c_N>Yi0*{htp9)5L?t7qJMmd4K4zut-;V|_^f2WJAd!N1+|6$$2 zB<4+oNqDzOlOT=3fxo!bGzqeYY7p%MQ?iG}zz@+LXt+0=V)yIQMMKYIx<172w+Gwm zw?RNL-W0NK8HuDa-eirWfHLeWNtPf?4THgI9fLe7d-h+7a+a4vIsg8nR1UF+a-KjA zmgJ}9d|3%PQ$K5g-!k#`*)iMIjQS^5Z~ZRl2tH%~?$aWO+f-BkiqSGY%bwZ#1kW4l z&l3wv0x+K|bd{6Oz9=XVoe)!+`R$ha8$$Z~vR!{=p`CgOyd~)_3{Qjk4eYO&5YQ}( zN%f(iB~P+~Y%?+wdBLp&vxvBU3SX=Cd`v9MO!(1BAI{p`LoahR^kj(+n?hw$A99er z;X|hP%)?ngKbr1!cjGKz9DdZZfM0CM(S}E=hJvW8iXvCP+oY|?>Md|1ip9c znMFT$5+7)&_s4Bh@c@bNX%U9t*DpUr?iOfz4gz!1n%iK|X@!aJLhe-?UD$fL`K&Lyj z)2Ckt0m91$p@b`4kCHII1y4T!SwtQEJ)qnr5*OzA-lhay%FrHa!9rEfqk>mv{>zx( zi@?L2F|>k0q?_YJ%21x^(48tz!NJG_HCLIsF$8&KqcL?eY2WBif6*WEHDx$9rW1Bm zr0)xsF&2~wf5?{;qwk9kM!p2~KiF{a{d1)5-!BErL+GEOKeEplon0HpGedp-Eyi!= z9872U3@Y0YCKfaykunRbC$}{dSy@lJxiMh%E6< z@Jjv?@5oOpPc-_B$ifL-lEW4k*l_L5ehFYcScqPAQm-CC(%!3^s106dmSDbV-AbRd zTjKkaiTyz0i~nK2KJ&p7+)8Ht8ugc9H=sJR4F^--Fs`XMGK!fGcL+AI^C5zc!@k1X zifK75LdpnVq1!;@Ob7xEi3o=KpNih62eE;oy@NC63#J_5Rdc3C&Z8o29s!V(2zLqQqH4>t5l^*($wgK2;>n{yEUU>KBuxNv~hMqM`Go(TwG^Y6j&ZJ18RdkfZyW5mdBbF?rYmixkC zx|XY-4_D)#xSuE~U8Y|`p=!5TZ}hkMf?yr$(IEi6vx;{3*b&q7H3CKB;}GK+7wg9j zz?=6G69%uwXDQ)Ey`#qESA7w*dH^T5IH!U?LE=?hAd-nwsHD6z=#5UpDT*6sEEiA% z`h}QpP`ae6=StpDuBtrZ@ne%m^h->BQ4IOhcJe=%b-3()@Bd>&G-l+VMKE?DTNq-sA#g>e(>Hwc#Rg})v&+!`ccU}C1)8{~ z6nzXb(nb3sYQ?;C5@>Mu7OWR;Z-<~zmxhg$#X(9Y{UI0b4s{#Xwz~CssI7AI3vRri zXU0#zn03P+Kf?`7J-+|P+xGxSIj#TC?#}Lxn%cqUhOh`xh?1zTEp56Kv#Bcyp%^Q4 zYqviXn`zZFmRyDFZ(SjTMN$;IMC*#X2qA2Qcg%7ZahJOG_j#V@oHOq`e|Bf$`-^wy zdCxiTbDr~@=imABp4Te8ffm^id^yHkoeiDJeWmFi6*mmw%83y(5srvMm<~RmsbYU>N=Vcn0J@J9YKWwrzUz|X+YV`#_$1kSWBe%OBtk+lRwG;m?cYH_)reJV%p?u=3>Z>a zzISkr*Hylsq?URHjPcUO9u(n?J&jR>7P#368^wNz9&HQ{c89W~PdEoF|9(&pR_?q4 zgOz67j+OOgq8JA538au6@X(Z!Ybgrp@z+YgDaT($C@t-!b)B`t@vJQ#tL8llBtF)4 zU!aR+itB95NZTgA+_9XKC?_`gwIA57Ccj#@=x3}Q4Dtd%1R$i9`@9nt%+N9pSLoC(-?ztFDN+q$9qgkD;YU3;37-q?;iV71Qs5_=J9iFhi@#2;48 z`_b6KdnuOYoprRX?6uaR_7E2hSJMMD4X}h(G1W>gfmq3f8rs2XRU9n)oKB9Vz zca$}P(opSk;H3!#nn0;u;>A-uGP;+R+v}~>7&lZ`Q>yhbX2z)EX^c!JK&XAN&kgrU zvkPP4dz$`#V=?X17PF6u6+mNJHV(na0*%GIVMX5Ywb3)8r!jv(5mwfw-6bTKMxkU63mK9j-^a>T{`f41Dqx&hUWoVFI|FfMsU4^#m#8JF+uc((^ zq!J$%wdAtt{BPP` zfOjZE4Xxso?d^)Oj=syMO2UDZ9;l% z<+R2>-DO&2OfdtDzgF6pV*a@(Mok*=TCkQz07k^qz^}JD#^`B>-=udw>jq4b+8Mo< zG*L5JHIwTfXzVx5TCTYt0`06EO zjoG}uWlCkkns>FH;8L{h3-+JtLdC9V2Y~^)7V^C5g6e-GFT8}%2S4ZSJOpAp58L_v zZz5Cnd*fs0*y}@?Z~{b}wLdbk<&6-4m}5ww10RuJ5Fyz5zL@uN6eEfz6E5s&t0Y3M zs)qL<^{Tyi3Tz!c2 z2~TIKDt|#)R2lVAViRtNj_vs6-lD#MubFtK2xK>#uc0nWN8Zuo3hb3Z(?f%?Yf(lv z&wRxr8=9m-ehKY};u&Y`g2DX~+Wcg@f6snT!*==$UBNi6{LyKVc)4##c7%~ZUCI0r#BZSp{f{iV92J^DoBgX$hx z`w7T181wX3Q9pMFAucB>QBR!bXFQD5C`4(#g(XssO zg{m}a?XIdAPYfMKzom1VEc}Sq_P~CwJsG!VlrgC} zG}5AtM;5KN-GNocP|4PfCA518!N693Sr6-<0P(s*sLDrHn%_KimG>xEJ+dppFukTl z8=A1Ck~b+?HP}uN;+ICqvuMwDt@^TV7h-z(|{ zWy2$PObj9LR1U5M08Hj_w@Kse;knqOS`} zWAd`@)_7sl{A(vZA^O~j`2M!L_+aUN!uX0j9W;bqWtI(eMV~@FopD|#Rfp+?blMO6 zCv=T!Hvlf&#MoYujbi`a?*Z@lqxtzL!YwbDGSNBWyfRTj-!S~Pu;0OhXYxqeY5Mkax5l3t0mX(7Y-Dny% zF2Jy_QEcit#)kZ2XR*P1VI4bhpocMEewzGRl65bIqQA6F=p72h?+IS zHqNs#j4PLC@c_2>#*s6c7B!fT!n$qQ+{50UbwKVbwbsC|LZPD9t46JqXG0^G8YD~6 zyu!N1?C{8?J?pt!55+@36B-g<(>E03lq{tda7{~lzKw^mTjD9Hrn+RMqjezQM3n>U zGw?nAR!w~s<}Th0)7(XzzwUuffxn)MJo0LV^nMNTxdBhCfxCxjyS@dyQo$Bres>_r z3j}P>)cj-hdYU1$Pd`HE?}4UQSJOJ0*|+0C#nn}mxc z%fW05_>CrBFMg=_2FZC0l_-XhguMR) zIEi?s*It>LsFSvWDl9jccQcHS9HnZvF*D703-L<@S`f#_Y{9o1@e6vJMwj0=5X&4f z%oFp4LopiDkze4VF-aV*iv`#2(1$rb`Uiw&KQoa@x|*iEkh4^a#z$fB#iDZDzhQ#q zEsE98)2xlxI_3qI8kYG+)CeJY>_%aM+T+9Zk&uae(mVERPen-+xnR{ z50%u1OX~gBQG%RyRo#!sLJy5;&oXk!ej|zZr$t9{(vdo;)VeD1fsZ9g9_U8(KLVZ5 zm3?c=1+oDpO$Aj)vmRm+q~RM=*JjMd_^kqso?hkMlap4eGB}!ucRJqmDH?+Xk|vqq zm_xTXzsM6kF-GJue%~V(8Abp^MzCnKez2 zP`BNQg+=P4G4*OT=^T~U93EL;YW+ps>A8^0)&0nN%nKnRuE)7gJm1N^dxk=WU`RS) z;XAR$t4=sVmElex27V=FnDabCk?Ww~zbac(@U^-J?OU;|W@rcR)@{|S=NYTV>2_qj z%veE09#_Tj5gZ&p|D_~iqB8hPRzcM*(9fs{>`uuceb`LG@$tvhqDJgxoi`4p zSb`pQK0Sof!PZ;ggors@yy_0_dL*w<$v`P8e3^M3dNP2!akM1y9z;A+qHj^*X0ilU zpD5^{z8e>h?H{n?sFf#OA?+obF<%<#!j;1y?37%RyJnf=#7tW7*Q^Q*5|HiH*h;Op z9og7!gzWW__8K*u@vdjPjGT94c<*#PIE){h7t2=jx!g27SY|_6&rMsSn|8f^h#7^p z{#nY>*bP0Y=6@INvj77I{Sel*F=6c4SMp z9B!wBy8C(EE#BCJS&j##TMme2e=d`#x?A4Ww`iJlOC7X`o3`dHJEOq(ho!9QmVd~d z>6VbjB;9h2e!A4U+Lj~TvL4+M&5hi!i>iVL8EGrQ9+0LlyJDJ_<`_-Fb4^qnyC}N4 zrWXJRW1D?MZL^Q9;e20@Qfdw7RV-YQZyWRsJt;vhd38Aa=dZIneE56JUrb3he?jNo zNEAS0jI~4TQGj#4^$3iHc)pc3g3x%8e|VDwLDhP@#MV-4JQkJ6I$_X=&6U=AItizw zfzGulX^?|_#S_s>f^!!VMfQ6+Ew_m=YZqeHK z>0p{CLcbg`hx;X2{FvVS?nR`Us{eo5!#2O`wQjc!O9&aNduFzXfn)Tf=6AQEi1d7S zFm>&TxV6Q98%rRLI2UP7lWRK6Z4b<~@qm>72JDhjwncLPHQ*$cDUp z+XLl9{@I$OKs@;aW8|w>>__XePV)D5l5a{0`SGvVe>p4H6*&T!G)X&P49VHyU5U#D zEO-&4lZwN1fp=pCES$wbWqGSoWSgzMpMI*a;KUq`qYluxDB?eulNKsOv>Hu|XHW^u z>o;LGFN)bZVbE6_V;n8N1`MKkzU2M8KU(74KUt>BIvMoCOh^BkQpp*#0i~lPVnP~^ z0F@ujYd z6{v+?BV-r%NTzX{h* z=uO_me;I9Q8&0ny&wygk?zRELz0*t4_dOsWjg_>Wwrm(LayUDFZ&V#KU#du;5^|KV zk=CkUVcMnF(YCxy#@sBfIa;(1Wx;r}jWwP2h<(PqGoj@7!pX+%gqX?Vj4S9A?y*7- z9V4Rl3sXRpq>aa-V62S+Qz}q9H%T+IP}<%(-d?Lj+e=L6c~4GpK4jxaCJ z3z1lspao$ZBDN=v5e}8Q!+uYw6cc=2p5kv=II`=4;YE1hwc>-7un;$6OW5hu5BW$k ze|Cs8Ct3VM(kSsrUy4Wi;MNw8ki0FC2-(h_ccv*7iv=H=Ked7{+4{Q2Z$%(Jr10>B z#|S8UF)%%Y+&6S?Xrw3lZyj3`MuZ3#B-F|LXuH0@XpE)Si*+$SLDNB~ucyvUR^NA1 zfaoiW=aKy&r70dcc3&Z6buSE zHabkF@2wcFyoj)5H|RBH(172a*%h-${%qCB(#sHXRa(aT77J ztJ*H`+otTkJs`sp^GEIITS-fw*AcN6EU8;qr=QbGmVx{|Me~N>Dz^T`OWHoFDZIWu zx2YX^9P3jbUkxrey;waZsa-})UoC2cJxQkj^kTagCm4DxdVjoNH68UvyWLNY_7nHw zW;WyWY8F~8eCgUFwZFr@|DNl2 zVE?;dmu>f^hPL@d>&}>VDYZ^uYTbVBv>xh4^@r>vQ3BB`t__TTJKD$c*^S)YNw`z) zj^yD`q*c>0`oZ!Vlt@Uy>LrwcgF8hgs03AB&647`7Bdarg4I~39OE0s8^W;5h5}yc zfuOpvj$*VTG(-p(J%6%cG}E_P)7OjWJ0V6Ny&N)QkBue#_DHm6u)ej=JO8cl1Y6wG z4#WxK)xA;PqV@#bzhIf0U-$7_8z{;w@nE^%Z_OSWTj!-}Q2QRS+SBtlJJj0%tzCA= zTh1G=pbD_c)(i!WGY*eYo-z(;%a6h&hDW_heK8QRrYY$hC5U6H&N9UOYsa3!CRTt^ zUB`=}**WARbWSrB`=73q1=) z?!+$?7_XCo>)wSUcP^lrNQcVW@!`DUcmtu%PnM_5ez45tuZK5th1?1^P3y$_F` zKwH1N%-&W~u(t8VOP?yQ;^nsdFYN78G^X9)*1mViv1k_ATk=(i8fdqgGORRVY7Fa9 z>c*-=fF0c6@W#g^r$42?#Q8WoQ578K21cg#f0RE;`#*q7O;{=m)NrYAhj>35MRY$b z0DR$)i>6Jwu>7LS?48jr{{jQNu-)_>4GD%o$Q4Y8kLH$eZh|`mjTa*Ty9K%O(YdA3 zFTnV@8)`uZI_)Gy7Il|HJ`?2&C`7(SJcbtb#)I+lH5wVZT@wH&m9LciH1fNW@Hb3K z#J|dhzcv;AwB(0Ffyc4%lQMoQSREh0UB@El5Sg759U{;2-fsPf5J_4c5y9t-8^b?| z2uz0_#T{D6Jw}MpWAkHmwyj^-vce^9Gr!5no^YQ)MXUt&B%aR| zLp8iT5%A!>XSV*l(b3nl9`A|-=d`%4>j95IX**cgG234EIlZOY@(qU#pOz^{WEyR^Q#T;in*t-ohLoE_6s(iQh|`Tg?_;xBy|in9;D6%k7oC&6(2Y7Y3Sex zROa;J9aQzQhjSt9SVUkD4~+Ec+qlOdl=7vpuEpmi;(};Ghj>dwi~n{64jj z`ytxUfAQIKF>u4auBnu9BQi`w2L9REkYLMR9?4?#DVU$2QvIEXvZod~6Y^&iXv}$i zYNKbh_kNYovZi_zef z)%ScO7u35@{2#`PSc+VXM`;nt4NWck+OnuO~xq`Pu*5JtP`hyP`1AnrFi z2mfjRp}xORy`Da0VE_CAwgM2cjU|opLmlB-HnGa%!-mS>phoT?)iJL?WP@|+vn$m7 zGq@*fK{2CuE{p`^Z??+219>8Xm`hnZz$t?AU4yf=_!FhmzZ1k$fAMnn{mr6%o z_#4GzQ%yX67}Uh{;Wgow z!=PR{2oo^ko<=HpF$xJ`V*&N44N6%YDib*k3GxKyG+#oT(Wo-Z&kN3JbX}htnTWu| zRs!SA>Y)qWhwXw)W4~2($vSYOF&KeqJL+U-cR)QWy2O!_8!2oHUz6fO_!)rRNx%tiHE$0a7Sb2)9xzno&sG zvN+y z&}1Hts&U_AV{Fl#if?z<-)*(~JG{N@@OL-hK9#@2#74~Dy^cvx_!zc06g%4W1^#Y0 z`AzNb+%L1$*;1E=zZ))Pi}BNj7utD|-B6uB)@DX(QFG*1aV2qd+5KHW>KTupHvQeL zj+%Zv$5zu{sisA!NxP|J{_Z#w5}SU6feru!#=$kFa&#vX&Cwkzt}l+6{R-xP0hKYGyiypt7(Xl&G1_DNRN-3U=Qp5#d5f1_;;oIthQrTd0R zms+MC7IV`yj!ft`+W45Pu45f_-D8LAk07uX-EW6E~Jedo35z8CUbOPu?b z^Rtoof8)Maz+PJ0&Wd;6_alYew|c*~2BozB{x@Llzv}_V`|nrRW%o>I`~ah%bP}Wqw_BtAdWK+}!N!+-wXRvyqI9+}xbp9K<9!i^}lqJY1Km-+=A@ zTfk9V|G}kvJLt?ds}OC^uh{(i+2|R}qP6Sa-x!(b-&3x~siA9Aa8QHYm0t);iultE zUC(06>OlmG<&Ifu%u0^MOq=8$?erb8M?T04fbik}M9+kI6_2JwHnPbWj~}Dl_VPSt zrIkaJ-5_Px;Rj=HsJ&C~d07|lw~tdw+?&R%|M1&v%wp6WDW&Sw_=*q+8 zE%+fHp0cJl&$XM2W9>E3Izr@Ykfic_ znxd+@v39N>YOm@*JQDdBy%l*Mf4E99@5F8z;?XY;@d!v9;;F`5=%}IYOj~2tktocL z$Be-hBjoYjF}7i^LfF}XaEc9K^r~o*@}FX0&EA2zS!^$lDLeHhh}6j=JF47_?3y4D zJhE#-kVg81k=<&nhcQ=WSXB&pv;K0rvCC>nJ0B^^E`yP-;V7l;@@T+%t}C=5%Xc8I zA91zfa=(gST<+Jhd>7zaiAxM(HrXxt=W%=N|8jFZFmN9H@!&80%ab2Z{-V=?^K4wn zZ12-ZUxjNuA(DZG%6Q=7H!0{>v6qKI52>7WoPjiitQ^of1V%qqJP#7!kyY*w6Uax zDsxWj1qW?sV@Tm6DfL_|QGo{q!JX)gYI$9=)Y`j;ws<_FhfNKeW$HUrMYROi)8E4i z=GWn&FdtnDb2j=7*6!Z;iL9WElFb|o$DZgp<499_o|K-AAI459gyj;RTjgQ_D8DPj@~DRtX?b`+6C@lO(Y|3qSRmT8#q7&AjyUa*nt#zgY9QLM75 z_G6yDqPMwI55YzdyR*yP(ZVFp4@i=BM5N_^=u&zC3@;I5i4QNdvld4?MQNA+Mo>rd zaH78)tKYw}d{5zb7p{?j z%W!8R6E`@a%Y86v)#>`jqS+a`|5t%CNp{z%A>` zKv1~$INT|HL0h$uQ&w<2{mq|I9=)d2N{Fc!iV)Gf3o8{~A`QC1^By&*s$nxXo}Tapw;g1EV$T@^Oz9C) zdMJLde{y57w-^jY`{}tZcn%B2q0{k_0$ckv8hxRV*Im$W}K@GbmKgB!` zp2og0hA%RZ2qdI&wD&BSPwUKvnsT9Lf}+MnH8L8vftU(GO_CIOBSvpWMK2}{nSN?_ zJpHyOX%SPEjDOPJawjUx3=x;8>gd@57c(BD#u1sERbBmdR$VhJo>hBd#;$F=k?#=j z+lx3UL}zh=X@e)SKG_2%-`2YkoQkMwE&W;IlEH{9Nx#p^dJ7H{EQJCPYBlj4g^F&^xBx*MX$EO zmn4#vs;7vMg5)i-EcS@*K&>qrh23@vzbK-Nmc@0meoUiDd<^f=r(oM_XV}@+V@N#PUW&0z zQ>Cj*t<&7Ts@-{#nR!O+Nota)_Vjb4v+`*iBLl3Ypw^(~?H?6r1oR zbxAc?d5pQFy#~i~D!358P?g&lq$h1hkL28Ep+6iz9QqcDn2g7mRN<~0)vgb=#T z7-+_0bKb<96Jm)KZ)N%3z_kn4;s4I^O~7>>gv`TD+_<+}=(4>7@$xM*;c zgOQAyP0GvfAQDXZbXN)(!?ug1jPR77|@L}LD0JaSMJ+czVmRMh3iyY=O8VN-z4KP1f4V(!#@nb za6|vx+4=Yn>40hyo~E$^*dVqeg~XpaZB&F@IZ7q-lS77><4eiejUFx{bL$z z@m3QW4cv=vF;hhb4y}mL7^5g$vSmQYI=!HZF~L^bt=Ztz z?E?%1t~l8Y1gM#irX!I;1A#^8CRcZq(PR6o0XLB!M*8J|X?%cAcU=H@oq|ULzWl07 zuO2#S@

;1Pz&b(N&iOT#}$}VjSl9mV$rgFGY82i-A(b^TITK<0$wITKnA&#RNLN zg|@YVF&{}9Pg@o9UZ^8@If6PMyKYnD==@sOnr`J&-nz{3q)A3F8OBbaBUq+uES_>KtO1L!9LLJww}{8mw0nXpaVO30ud}`7sETRuf`)^U z9Qg{oRB2-|3La3hnK9<_BPi-FhpaT~WZM1_F4>`PKf^7JHc`$~t|+GE7vTU+97Jwp z{M`OAHvA7VA|x|@$YK*$dow3P7UlMO+!B72Gx)DSn&7{Pa*yQPB4(^XXDA3X@_6xcu`o@Y)b;|*<$+{vYx8EB5_gSniH+byiK6`Zw|;me~# z6;~ib+&iSz7+V0A(x)*jr3cvSUP^VJD0R!=wVNgk0$T46%%lSQZ~^RVlNo{T5Nqq= ze#Q`xKEeb2*L%ALZprc;kL$e;VW;u?7Jftc z-HPAKKFacafr|$E9!v~)u(iMgv#jR})U<&o;XYvd#5YU8Ng1Q1~^bpjI%5@~Dh@egcbtkBRpdNr0`3UL-sF9)G zfO_vqX?+3J?nO|4K>k9422!~$1Qi2Xx(`7^0TuVi0W=&?GpCI(X?_EZHqclDjW^H) z15Gqgz(A7?G{r#W2AXN0*#@d4=ubr7JV5@g1T8SRHvuZzpVAf)bPz#{DYuBAJ59NJ z473!G?@-EJ4ydR*K`Tt|N?8 z&{hLA8fd$LEI^fvugRn}8)%1tS`4(yK&}OlI)2s-Ncz_U$agf+=LO_Hh9DoHMaL3U zXv%d3)W~Vw0J)B%+#*1g40R`{52f`0B$#^{sJDUo0-A6FmFsWP1{$c?Ktl~Q+(07? zX?f8K^RZ_MSm4ng_@~lAr~Y z#+K$L11&PpVguc2pnD9o)IiG(w8B6u4OC;GRR&sPpmheS1vKR>qG|&mUnxO2u2a#s z$v_PT!ojU7cZ-3x8VEDpDtEhqECV$esM$a}4Af$vT?T3lf@^0JRoejx*DM1y8K{|{ zaa3-HNoz6CE(5vdX)JC7c?{$=kk3Gc2I^{{ZU!ncPVb?AszRUw8{96F1_r;WUlSx|ysFKqbo3uLtEuBc^ z?lEag4Yb@qD-5*KKs5$hWuP?%T4$hIK+Rmo1_RX_Xp?~&47AxmTMV?-K#d04ZXnA* zO$KT<&<+E&7-*M)DzR68$`s}wpvrQB764NEYoJAd8fQ@MVn7Yo6Lcq_+W7?CL(nY* zEd|tkJ3-3p|oAD~4H6#{Bxs4Jk}?@?|yK$Q#?0rGuJY25)$`IMj@ zfEu?E)C*AYmjv|&)DR)4FCc%Ep#GH0c6XqGiUBR<+@XM)85&NxP4vVFg8oC0A5cRx zL8B?{dxFLSs$pn6ApZ_Zn?Si-$3z1K3^dt5Qw&sYpqU1mZ6Mb|w45=!0W~m$vjcon zex=&HfLy;3TjTd1}ZktPy-D&&H(;kpMcG>r;06RHj0a)r?s)ZUPIY%K-B55X6%YO~_T zX6DAml160EEC^S=nWsa%Q*(Kq!d`Nn%r)Y3FJm^3vd+fnpIQjsbvLC(t_uy{6}zja zL+l!P*G8jBl^(#XW~m&?2tN0c%5lE7Nx~6cpoh*^Gf8<^2B4$nN71YtUK*)DLJPPR z*$W8)i@5M21OSsP?K3nt*U8WakB?{QG)Co(z7TloGGLx4m}P!sXcOi~h8$+*M@arK zKjK0P&5vMy(KP}^aPTP4jaCAt`B0iCoemgh*)lu@u?T5SAejs`SEI4R0?*Ph;G$0SHpF7jtjC2UwOGpR~vSvVc z%11h718)Jdq~%iXH0(QR3VW+um6ArL z#7emuYZGd4V&#+=R=Q=Z=u(KdCtQlz-J)IGNxZT_EC7q|Jyck1W`Nq`55NBysKnE> zHx=@9EjkHu8%xTiOuu!Br0dO8BK`qCDRbZ(Ema$7CXDcGtfZ&t-^P*_O5?LzS<>l! zmV>7GWvUu4C?53@w}KP}N8FPFw}cC;*Z4iYQGs5Beh)^Eccba}%8l;1QU#x7Ii@MJ zcy1-3UnXMsNrXueG2HYW#PEefj2J2&%|Z&#*At@6D5K}-8v&ns^;Of#FS^Q{@xuJ8 zMM0LYVv?`kxKr{K95jLKZ^bYK761t0vW6Qxz6S!h3l5sdnH`q(q9nRmMt>fl5)AnR zi>ZMntv8*{nkfb7&{ zB~qj4@nb=k`CEgfleL?{M#bM{0R*aKgo~xiLgo08j?Fkc^3ULK6nvMQIG1WLz zY7AF+*4_qUs@Ip}U9BGVOB<46*U zo0wv_oqDLoW}GMQg~g)RtLVOwolRgX3Bb0mh!MWXPB?khh8DD84duPcd2Xq2jogTm zG=C2zx&0ucB-9rWozX}kB_WY+K@n=i2rL`Bf54usi>6P~8{SzzwxbaDUpLZ^lW?c{ zFW_B>%7;sR&K@E^J{LRiAXx>$i>Xf~1Zm>#7BdIWKJY_r9SW*WM5(!KtA9ZiQ}@>s z^_>Du#MHkX!n)538*|zC#uuxnVyCNOw0gIUj4+)j?X4mU8}35)!I!f_41frA`ay2w z1=MKnv2Ix2*>;yxfkhDWKC^!5cp3Q(+FK}IgKuF0AK+vN6GblJE_634u!1Nn`jR`4 zHawa)z!1UMUu4c0=O%ojjf7$Wgd(tjYI&YhlqftdHzEqVeuOB54=|!Y-3n3o3sQ`| zbnl3*Z~6d>e>U!>o%b7+r{zVP6X6+9f!#Bp-2=qiB8(&hKR{Tg7iQhj&1RRNs*>ez z6VR~y^(FbU9k0tL8#uM91(>17B$qW`5N|xNR{68zRK+xa*gH;%*kV*gycslHi=0d{4E zJfTi>a6^D}59Bohwzi-{V3@ga4^WCg+X3-fTz>hv^1BukyL#3Kx8>txp5*K=*8&;2;n9?kXQAjms%74eyW=fg(IvJ#u+zYnR@a(1A-{NZ8zcb5&K8 zV`ZP7Lw+Psh@yeU&s;uh$}$%FGB-{&Szg630vuG^T9F++U>QMT4{>BH6ccMWt#1SG zk%X7HYk#LOw_rXyU4GFQ8;Q64k|oq*5cL4HH$scYBJH$Z%5KfRBcLH&h;p&F8{czm~81@X`*D1znr-2cB$A8p(?uK4K6Z8Bw%Nv?x zZOpC2G!Nt(fg=o&mBj%n+DFN*f_Xhi^d-Qni)4qpa4hCt2=hpz*Mh27@nmq&IvTl^ z?;RYp3OqmM^<9}o)+BsCNK$tGz=f?#er;`4U%QF+ z<(2+d!jmlSRDYnE6z#bExXY{$u|Y6o=Tgl(2T+=aAGP5iv^G1cV_3`NCaL#eRen#MjJqe^w&!nAw%Vf%o^ zuV{!xH|>s};%n&?S4*eFTE5xa-fi68l<^Gu0{jHe=&ZdKOqo@JGuP*#L*~voM0eny z6j!hlF5oA2kNp#~Ac`@AXW>Y!g4#ovD;(9gvtNYk$A@N6KlYM^Isg%w6&r)v?ytaX zqNo2yELtkY*c2CI*n8luz3jZ9YTCxnJ}TIFia01N^0I?k04#Q_Gi_MYz*lF{%P)+w z67#N%@`N~)hiQ~;R@#<5cN@)qm0JJh!(>#TOWTrhSd2PCXm91T77)5)yHJ%L>qJ-_JHt-f z({uy3uNf#@j>*Yt#ESMnXr?b04#T?W&lCW; zwJoluS=(=mB`9hnqH2b~nVxqi)6PNBEwcr7Srw=7v$`LKy~!Ev^~2ThLEx`+X&e3U z@ZQo7Phx^k{Q8~PdSx{i7{5+Efbqu@NQwFNr6@%E%*d~=1bjC9I`>yfd!ppAplTlZ zVzQbDHpG}d(~XzUy!X*Py!BQMCq zl$?U9XQ)Gn8vTZ+I5pc`K#Q&Rieek(6@9c=KKZXWv7`gxzCmc@5W+}+E9Pz~s3J|X zBg>#KdO!BN`{LV28AT?2F%Aa;X4DtIJi&Ea))Z6UL|r9jlV5wn|YR@Ll5b4O!VjR)Orea+dIo8i>gx86x#U%w+I zWD{VW*gy?)KQNp1mHs;Qm3Fx9ri^$WVdnoHeSLieqsT-?`ekJ(Bkze#h>3)C+pu_j zU2oS{`bsUcBt3miW;MwnC|zWh|1Moz{_yYS^F@Lp6F$Gy%C#!lApg*gUA$6E2GndN z>Efra(ev@TxaA?nstbMi5*KpnVj+*l+jOlHsD=?<(Z$givDtNTqDOQwP5pa?tfa$V z2D>m-PW?Oc-wFC>caijcW2JH%Hi^oWv&zw5r^;QW+FjK-^ba-NDa^j2T7}jq%R$xE$3#SyuFQb8{R;iI%#Sq~n+lA|3r8O?K%RmZvTCZp+6ddox{5`8ejyHszxt zCLhcHCGs(k<%9k@<>T~>7m73J`!8_D z5ZpTYelqp_2IHCu*z4pF8-L3oHj6YMx(+(D4 zgzhvE6ZT9Z0zEOk6ANEBiq4Ic$9j{;o*a|QX#xZ4D*7u8;;c5pR6hUrjH{WCk%MC> zId0Dg$uOL13L+zPo{dd?g9EE**3DI3$`fjsOdp;uX|@(&wZ9Tra>lfbvOd|!6-B3; zSiC(aVvYNSAE8MpUX-Iz!Bx{4FhWDX0_F!syd=#=!k<(2<(y)@|u{*GZPGU$*U zzwzVt4ynT_ZE>?r?ac=TW<#?BzH_m-@eF+>-MKwtN)m+JzqR01()q@~O@wbL;kzUe zUr{Q2>DUW8cqh(Y^zM{IUUt5gL|$_KIC*(&hR6$$U;BQ{qRXY zdjFZtL{@vNXv(S7>N)-o=#QT{lJ#cNAJcxY^@p;m_v4`ajNIIP;w$Y|^@^Rl*B>v{ z^Fd#6CTor-NtXQD)R^zF*tv1Jk-><4HLaSm}2imyX{AAEwv7COiZ;G(4z~silgL%kkaq-ewf@t{BDbpv#ggd z(H)y*-HsDs(IO1C+|6#ab!EVmP@~u^B)l2J_t;9Ti zu=a3&U=@|S;X1*OsU5mKbX6SACTl5hmSsc6J~-PUa%*_V;wdAM>y@d?iCdw92YV(|%Z0x$9@Q-Yr3L2<0D(6bdwHU&;n>`pY2-(xCpQp z@ZgCPr%swS&2@UkmF5#hzek>nbC^ZW@j*v!f_d7Q{XlRd4@+8~A}N>(O){n9C1jTeH%AK-TDTtl{zi&EJwz?#pXo zX3h{>NUYnj;GiAO^H*rDxU35{O9zUKx6yjN9JpSbn`nQ-+Ia0h@H4j4O8XClYTxri zy!MYnima)!{!<~X{|DLhA8<$b-wVIr1XL_IbXB>l(HD>4}CvF)(`m)*K7Cn1>ZY-y_rATO@Cj6&mSc4C;A+9 zvbH=QBDkQwQ^L+s>IvXj0GVJCm)^Q%0Ohu|=xSGM8wJ2k^tX2&^w zE04IYNp4rFv#qbcW!6S$1AO{|F!(Ee%F+36p2xk)rfV6#s%3Nf7eCHfc4OI!MF}yD zRjVDU1gHP5upkg)$~JkCN2~eqyoBaZ^Cy9i9sXBmIOJ~QWtu9NwQ~>7YTtfomH$^0 zH&ayplV=@t!r}K6Iz{Ch4}ms6@?E^jUxpM?dG*}{i%Kb-_uwoR?ekrL<8?mm@oSQJ z-j4&Q6Xbb+Zb1h6K5jd=-^|RlCr{RgU-APExp?+m=>akde^DEQ)d1kAOC^h z*skL}zjf&N?}~qZO~Q|ktNs}M#(7d%38u2==VNb*iS_0(`Iez z_t7{DK7Gz#FPwLp1F-cpG1(ag^%s4f*pJ_yqdP0hsyo%8-#0wMS$6$C=yk2%4?gYC z8|e3sA217+)o@UMgbL~(SEE7Y%FkR8hqK9gqh9HFwrp_GzU2!w+|UNOT`?V{D&!vql~Ow11X%0%cEIsEuICnhum76x z-z4(glUt*mfzyA{Mz^H?D?YwYkn0|cAlDPV6}j$;n?Nne^`GApxh}|QN3O?2GLh>K zK4VEtkn3Z==Jd$YjDq}-U~|}~E@N2GI24b_9z8u+ee|I?8MLg^@J_V&tv8=^$O`0o ze_;Xa+(rA4ez;Y*e>RJ<4);sUUAA>niRcl9<3}r4cS{>m%;B;%xsh35ymlK8utT#3 zs0Xqk_E*0nttP8{iGs7NUliRm6q&;umZ8Y^XY0~f&l;*}&a!4HIJq)K)`r(;LV91F&?g-FbfO5iZ>p^kP;gcc&L!F9X$YR z+ff8K-gdA*tc4yYT~AUBrVl~ze54C+M)3UMdtW-|BVWZm5s=RQXZif5;M4n+tK#rg zq>0b5#bxOaN$l4ZD~X}neo;&Cj;<~6=C-NTUOGD&>(_%+v*|NyYQJe+gpX}j?|s|Y zV&>h0JxHRx(V6KBLGi~d1oqk>4tE{Ss$r`meltx+=l;;k#n0NOhx={UK~FpV>)_vn z@00Ma=VSkW_;>cv8S~HeQ8NCO^~{ieM{Z*@cK-eR`R?$qs5uG$qL2K4;$P;!oHP#jT6PDSG9n z34%JZQ8QYxsBQiP0>p3MMDY96H#pR?_nIpn8F03Z4^OkzkL#b5^Gjww|D6;$I*iX3 z_y$@+XFc%{cb4gzb~*j+d(5H$y;lNRR^Q(WtUnL6QCO z*K8`I7eo=o#U8e97WDc}xDx$x$3UQc+RNPuXoWz5*h?C#)fkoDT>a*BA`xpDRzoL# zBCwLBQ(G^4%%;bl-^Nk8^)hg=w5SEncRq;|Jr)9%mz3}G zahKy28g&E#z5~eb;}lfYCCJ0O-z1TT`unkL~3MTIw)@vm`-q#weuru3k1G*3}g+4I=F3n5OCc}Qxub6U%udT zpFFCE%R2=csje%zF1L-F@(w#6qhE<}7(ys(CiF+Brb7?x7V3folG>)nX<{nzGJArF zIpd%4B8B)6Y||qsdwfXW(m;H8nXyOhj+V~n5r%fLY1sIIA{3D@hNO1S;EYgX6tpYO zA2%>l?YP?ZGS8pE4@CBeQNWcrDVSz>&@Kh%3I#0NZ?bvQEA(mb<0f&Pk!xX?Z5o_O zAAI=l3^~wM)tMiwlRDZ~XS;2llxdyIc@XH0+{UKE*3x(b=h!Rp+gtXgwI_`*Tt^SL zKad9hy+W5=2|xV6W*0KiKi8K@^zV)P{x9|KlQ%PL?>b@7AE$rkWlF)xih@5(|32Kr zJYfAB$;zF9{&{(Y)BAh$?_8-reG7D_ILpZI(7!L=$gtnLt2#5&zv~>;q@jP056zIS zn|NAHc9zwOUp{y9Zt7np-r!91e|IO*zjI=iFNyyfYixgeEw;}87q>T1h`7Ke0D9I0 z7HPnt6zzB;bV!8V>^a>{Kik9c7BOy=bn=~CWrmh?)$8_-X|G+N``sd@JAJxd7B^_O zq_@0d>q!|yWnxcj@IjY^{=D`dN%|AV`Do@Q>Cad+(O$c)>Uuky((oVS5B`I@_q^M8 zr+eSqXs5fqW}d-n}&q3EkVyc-k4SHhhw#fA78{N&oH}i`9N#|33a2 z^T{Z9dp&IJlJRQfj^q-iW>jMm)^6m~GgAt#Q54X}gi{-k3@CWyRlBUT#{tNSB@Qk_ zi!(&3F|2M+D6PRfagf1S!Y_2$Me=~R;zTkNdsF;z5_#;nB#As;|3}H=0UI)u$CW?v z1Cjs5q`|Hcnaktd*k%d;WV)$6d9aRB6#R}6%Mns%`o85-akIZCVtPhi!AQT(AH-v3 zDD@+x8pF=F+EYoX};L`Xk;jQlE*u`?n;K_x=B#MBXv6ply#`+A^OnIJz!F zX}jlG@vkX7eCG20SZ#(B?58OB!veTjH;W2q7K;D)l9TRs1?%Zv8G86Ei6QKQ^;W$R zEHwq*wtNM8(fn8gPR_Glc_v~0y)pq?d-LzkcmW?OPK*byxWz87#1+hMJra{w=93Dx zmAqyUY`=Mv^wn4( z`dVagkWf5Cb#59YK5(&;$iQ;+ku?z^6X=UOKj1oNq3f^ZLVAM=UJ<|=&+|`k$J(a( zd+1%l`{^#CRTdn!M-@dk(rmxi`mx5joRhO5PO@y{(cO`Uz28nE51%e6`I{@$fI~Qwow;|(jofydf;o<8YoQ7puNtLXj)#3X{6a=%lZS~vGMjAj z@KDS?RLo}7`rw4Nk2+Jw0`l>BlVUYsGhEFDTr0ZIOYfOHHG`{k_Ds{G?e>iC?|8WT z2I-kzkS%-946M~Xlac;@n$SOIznP?e4xFE|e_ol#jkEQEqkn9wJ!_t*_7qla`ulrS z`@HkH-Wa2;4|xD)H}!vrYG=#giq7sD^hjKHDb2`4Ts750~_f5*Ab8v{r;-J8J))>qs{^^n71gVs614{8JPWVOFRR!9Aqe2qGI?)I?hx7&$ry*xKqTPhi49; z2bnB>WSu+`=!H50OSd8rI;w<`lzFfh|H1QIu5sa#P zrl>Aas4%5WsCJ=`m-!jhhfilnRab>-K2W9KmX|A~Eu}(06A>_;2^gCx0e7qwRC$7` zkx)%wRGl(KHA10!0W11oO9P>r$f#a^DnqtpDO6JgRV|?kFsd1uqFTL18hDtXsv%U9 z8C9=LQC*=>eFV`|abLl_H=Xluu*59Zi_7wTkwqlKYQRUET7$pf#Q%*|9>{bh>bGNOW6zQaR>GJlus|_cc=Ud63}}nA7B4!^-=!u@#y!UY@Gbw>Y{8~ za&)5aK>7FzNo&*P$p0AD%SnAl%5OyeR?2_UY2AV?UdpBqPt;TPJbK(geWwcV#wwgN z+**VD=y^`uohfrOGVi3!<8AgZ*it}wWREK;uY_rgo) zZ)geibeQ`)#8MHiCfNv8lK_R6(BIG!61FgloU*qzo|KA#9Tg}>W2}KM@Nh+TzwbI1 z8`~E?XLi4nU&2PE;Yguvh`4jPVU#xmJDoA?15DozxO#N9?|EFgW3qjITsPu+8&|i# zX8SI~^)xOueIw&v`brr4JEDATF;FG-cfB_x@pn7tIQ<=+>0qW8+H(ok(T}rXK!|$D zc7hzcLsPiQzpPH;DmQ#Zk9*p5l|Fhf<|=QMM*>BQ;VNrCf~#yD#7N4#aFu-yVb~^v z(!Ig;#H0=d^K)U#q_6QgjR_Z$Z%os9SSPL|+}?l>H81N=b`T8syLi9|=JhgQVAErQ zY8ScEfeO`W3RQVVsFo>IO@yjgq1q)5DA0(+Kyfjc^wB_OOyo})As?!cHxTln3i{wOy>{;B<$Wr8_&*?WG752ouGdSHtRU31TNZeZzBgGlv zzf$3kxon`S7oVm-2eVh;9&Xw`X+$c+sr3i) z;pEj11EFLWB zZ%>IOmG7|lQApd;@qo#ehR@6Py^rhQ@!7uXa0M@jT_5BACtPFB&-M*KI@wenKVWOO z*waGzhPBt)?5PCa^yO<%5T0F?%M z!AMoJmm8%I?f2m;L$B2Eu_NsG98c73bBEcvR?pkhHJ${sWd%zL;V1GPrBmX+gz#ro zr@&8m4E{R>KSnq%Ys3#!mz-788!;kaYv#Gx>6&I>=;y$9e?lP=>=1hRbAqG?Ir ze+v|oFKnI-Ro?q9Rv-Ihe8Urtp)!XMjE}w$$@qGq#`2Nr;;I%Uh;lTuw&1!0=<7lTNKq!uOa>@=Z4OSOc(`%rktVs_UktFQt ziDbj$?s%j$pkRR~ELtGZU0;ew+E4l9SO_$aNKW%KAWuazy@@)?dRx)VwgNhh&uQ3W z>y(r659B4x8DLdv{&SV7z+;zVj}0&5!+UHZzdrQh+Sv*6 zOUoO<#sV?edOSd7gX`(9YwFg2q`_JV^n)J8~!LP|_>t@`KI!AvUwb153pZF~M&$Kk$vL zQtQ4NqShz!KKU}pdpA^~hYs>_NtLX-Vi>_B@V?GGdtiOEZ56oVY)bJexT9Y?^ZXLB6U#InqvU)hSpliDn zNRIO36{%5r1f_SB_1?YG?IoZ)j?~e~@dkl6@Do_mKD{kZa4*H-El!TNXM1>KL@yP* zkwqBE#UW2Y^ji;u=%r~9eQG8|Pj3%zjOZx8FprrT48PJNdS60LtH14Y`es2Mhc^YM z>mF(cZ;a@Eis-}BCVC5$kKU|rCczD~x8zXwI;Ent(X1TSlq!5oMAA~g?(>|Mz z$b{l?Z6b}4`wqXj?u*|wLLc2qL9UB1ry&(H1#@~*@!0aVkjBV8RFFpZ(Tn$;0$rie z)_@i4FU2IgVEL>NFe;Nwh7~6HG^9|Vi}Rt7;PRl9w#kKn$tGK5%yHco$o37tJlpp_ zTu+x_{_Bct-#(M$=D+H-z3xx;dMZ$=_*Fjh=&H!?QybY3lU)@LU~D_}P{kFKls^NX z)M9_mPhoGDR#TeZrQS$kyQe;oU}#lzscbjG%B${VGpp*<2vb<@gWEvJ{eUIf0~`oV zBeDyE%fW@X9#28|+J7bxPJSG|IY#(TtL%hpHA+EvpbdnY@a2LqdR{#LJyW|QusMuB z1x07cxU3ML=;Pso&gKXl?T%w4v#qo60VodijoD@-LiirD-`(fYW=OvW9hk4Eo-Gq7g5H!!nII<~vrtC)g9Jj2OB%l6C z!G;a@B{B16G)&kH8(x=zf~uZ%-?sdL_lvto54pezm-W~P;)6RnO(#ystbckEVd?cx zZy^i{-%l##$CT-L06 z`H8ZFaN^Scc$(Hj$SRTbolI}*o<9;jpJRm(6+s*VEA5C6XT&+yx_>ZYEkmbb8rWr> zBTtlJ$-%nfOL=+`o>nX-J5tx^mLXF0;^7qek3!KYf-ABdS}RsyLOHC!k@p%aK#C13 z@bx_o{~ACkZ3oH$+s8a@kH-TRs0vih#rXb}`K;9Tad@SwCSiP^mOs7^wC4ylM$^$>ZpLr4w{3rDooh{x`JtiLbP5BTQBmbTc zKk+c~F9o&;xYzttmW53tm>KQ`utluTNUO40y4ih|~sziS~2q)^oHaU+# z_Do<=7Mn!=_B7*fzbB>qL;dY}ccyL6i=K4YO7W|Ax3GOo$FKH{_p1k8$l|V~kaYHs z^Q+x&Pddpp`Hr;x>T$AAv73G}hbl_XPu8nN`Yfw+2{F^Hyiq~b0+=o{VHxmIlM-j+ z|8aXvn|Ri)y70{+xHoc1_b%oxi{aP>hmi!wm?Sv5Gmc#AT*0B8>ST6{qd(e|2q>NsWHBE<+afBPk=$`x$>oVBgLlYt58boc`abA z=h_FdzNh8?Zl%!HHqx9Mo5j-ZD#d`!li18e|L54bt`VjfnLM{Rfo}$(wwKR@Qu#mH zgOsNKORUGZE1upgb6aOP>S@pa-IhSOK`4ahTE8w}!f~8Lwsq!wHVAy|=@11|K-O=m zr02rH9i`v`l>c;vq!%E}dq=@=iPl4W2!V&gzqvc6l}UN zMnSEDiGo!;@9sf(m}RX{Fi|kxMuFc(L3c%g8jvaPo7l%uEiey(6@@9MiWe{!rx6-a#wl4+lvy|6j6YK01AM5n_E32X+hAhx-#5(vc9k0N>-RLjNvud?t zrui2vZ(=}=;E+TytK#C!M)hNEPFpJWdr%nMr7TPKn-DSC){o0L8HVOBJP21ojH}{U zP14~UIPCvEmGi{fL3ZkWc`q&U0b0Og{3X>~3Qy!%`@W-Lm-Qx}gN3Obp7KdEK$=+{ zvpw+v((EvkZQ__fiU6r^5*!jB>{ivep}X4dP|if6DVQilN~eOPZ#XMTNp>?y7GDWaaeKy;f* zkAChv*X}Yj!W2a0CG8Cm1+yY}I3NapX)zdeb+@8M@*iuwB!&G^3aAMWq3U68hAue_Bl z6^vBB)oi4c0BJo<;W_uE8rt#qC!EEo)A5{H@t*USGl^ZEKhkp!lj&p~B4juP-eZ2+ zEIoRWur$l+a{{weI|;6mrt!@lGg7*g`;eZ!F_n@gjGVu@fvYqwa;5gEgKwk^5Btb$8`hAdbM7|J5nf)x?Do42@ z3^UM(hn2NH(jV{7kB#qRex%*?XMFZfd)0Q-Z#0Z6MTk_Fh4V!KT~#eg^9i2G_aPmjc^#O5%ZnAcbHmS-ZIu zdVg?Y{c(OX+d9C}AdN6ZgBpSf95M){K{?i@nQS}R<<*9zLD^`W`!<2e{jE^xIcR8; zxWY&{)-2Pzo~Z*7xQ^qG>BvO-RW^)ID~C#x>VGxqxz=5h9vz54HQSo}Vax^hHl^HF zxq6!D>1v~Ayh?|~v?ff~9g=U2Rxr&qEZ`&lX|5s9n!HlV&`iJ-m7a?^<bX>3Zc0EU5CV6e{;FR_1|*~ zbiQe>(Rtqf-B8@UsO~VYhPxVd2N-w%RClz=WZ1Fv6m2rewoW#1u62xo z-PR!rrq3R|_L-E=3)}?T8=%>AYpS6m4<$yA6FR6a;8%AZ++jSZ?!36mwvJMFKF;f= z?h0|2Yjsw4T{+LC?z-X5ZT*0^Dq_=X?ez4L>)L1JQzb&O3omlySwZpGU}Fc|Rj9jM zyqlM2U8e5bWu0+%uDT;e{_kjE3^DS11H+#f*lm5NU}EGPStcm6GxA79M-ex=qcpRu zJMMsgtkBql^Zujmdf_hH+NSP$bKbk^t}pI#tyk4uf6jYO-3`Q@+j>OZQ>ukAACt}793g>>6 zji<6hP&!DezZ-K+CYIAfAX;)r8K4%<1_M%z|D7SKwXZ1VZU*0vU7I$iYqa26tB)k! z>UFh>lLIrM)@G9l1)#LaWXdcSzQ9C#Ch0z9_Q9?oHrm{61yywJ1gwtB`n5>d<&nJPw88Bao z6fcWnn*f`5`497#pK8zO@R!!1DgEWq^ON|?mSW{E<20uCDT>>oF$c@-AFJ2{ zXQeG}gJs~Aj>bZ_UB6R1dCQvGpZ38itnUfp)uzT?JTq;Ly=*Rv*KTU;FEi3+;ct~( z5#m_);RIpz4AQ-T-$wP6(W;l1r%yd)dm_DdE%$$NeLXcolH^UM={eS=d=j#@!39;1 zlQO%Kl(m|!6pBc@eFt!Tto42K1t#ro=@x^#b!IrBE85ib52mNB>E3CC-y8X-(ew>> zLDOFa2B)S6kwTiT_Hb`PDXr^U0P8rJ$H)JVy|00@YFht4Gw00AsU~w&Ln;X&gi#?X zLPIEbCY5f|i;CSSQZsa2QBI@AX$VEG+*=B{x^5H|#gv#Z2qAPC3Hz8327{RY_j#VR z_SyTKy=Tr0_xJn%`V5~lt-aQ>zU%FITQ7U{zP!TZ0r~oTKoC3PO1pK zw{H2{-gv7CFRzr|e@w*NS|n9YzzaZJxPE)l>UA?w+oaFKYU9QIZ(ewm(mXMJBn0{9 zs+(Oj&yBs6=Aj*yKk9^Qv@mITc+9!8a7uyl6;3`)ahzzrqts)%IsE}jfKzHb@9Li8G!K9BRSU96R27(3iCUYKI<35~)lW#&OU7(*OLU)HR5AP>-!elzrzaD}TP zJA49nSV5|>1w~rE4v|K9{Ppcj$H{*D#84fA)I{ov_ zHL-rF^Yl-udE`}G+324j@7htOY06iNDPFA!uKx!VUj;yw;v+4A!?m{}CbmAX8AMv| zZADn?J*{K@*z*8i@oEN6`o;7Mo&Rg+>F@Np(M9V7d;S-+&eX|CvwY9l-21xYtrG_jt8tbnUNcOJfMdg zwzWDb#{=>NI~i?@FG)J5Y;8{d1GKI4c)*fE)rovOplG@t&ru|{+wEHq)DF*?-Dy`5 z;~0T^tn=@*jLYZW2}GZNH&bO=R~2_I-~;g;p+8S#H%VN&C)ur%y@*qvpn6i+XMXu_ z4!gT_lll839xmNod|zPo30iOD*^e-;@YFPLGg1&nGN@6>0N0q%$0vGol&=$?; zGCyoz056HWpU{aiZZtjt6;3yY-^-(roU-aewWvo~{ka>Dax!9X#5-9Bcl*P|zTif# zP9r^|0R>5Sd%jFXAlVnQYao*S0s9#u*`s)|S|qzQue}A`CHrpv5{QRnuY29*@1$fE zcO>1ZS5mwrd)5S!Y|TDS2deF8?x7e)C+Id8N3JhnSoTC?kjFI0Ty_~_@X{UFt0+j1 zv}KcO9`qB-2pdTx4OdBNNcydoldO`H@|)HfN&8J-jpJHHZxDs^+&%QD6wdDDP&oGk z%c*cKL5yvlSPd$zb9|3@_)CA-eC*kS67-Lrj~!m*qG`T5{=cAU{(ME!EI)EG_pi33 zmS^-(R~dfg8Qmj~LWYf;A0hT?St_ge3p~IWyv2w2lJuFLx*S!kM-9En%kFr^kM~KI zP2`$ld7t)4?p9B-Pclb6(cVS6dA)j~<^7HaNIPhGzm*kEGt;eb!2CIzX(H7yoNQL* z8X$dlRVMDP%0P9M=ovI;0rKj1S%{G<#Vgkv<72tHQm$0;cURJ}-V z-X_Qmo*f+Eh8;IM=qA|7xCu|h&klY#`VV&#!th0SKZ9onzw7XD+sl$xpa+Yv#7`1_ zxPmJKS0WRBFnGtZkivk8FFh?AV~L1*54X*$ygULa?C+Qg6kX=-;kQ!Tg5=eotX6X= zJp3CrJnZ3jw5{@z3oCy(Uh&T4hIiB9V*mvHnW%%Ku`#Pwvb$N7mf5^Lxb zYOqUtxt~{+Q_l&fuSO;`*#gu}e)$G&a#d$OUzGVIdq}Y2K69%&BSdG4HcMC)tIzp( z4Bd5!#U`Bd`NYxF8qj0tj;sSvx8qI)DCd0I)KaSgc&nu_&CJMm9Q2vB3WDMXq!JW$ z&}ZYNA}D;ucP?nOoGe6G%L%XFVPQe`2X?{lT}Ly2y+6Q(JG^Z3{4C{jlH!YJ4}GDA zZT&7__RL6_51Zo{B~VhloKS4VFv>(M^&HsX&c@^8R_NTcGltFUVPq1 zCb8E!YS!3uJ2#F4#Hq1#NxsUq8Tb(Ix0A4+ZDkZ#Rd@EKB(xMGZVX{KfF3 z$K-3Z2<3-q2@mJaUY7yxK9=XAeA~=hc=^U}UMnBVVvSMYlTjgmbmRtRMRgXq=wSED zHP#O0k+Nne*3pJT6cm}ov%iR$#S9fs3oFNpxwH(nL)g5w0zUh5f*w=~$=TJwZ!eXL zmO->*+=YY(I&!ViHQVP(;%)M;96K<0Vmqm;T68*09+R=R zU&qfc?{3eW{`>4Lrdj=Bn?$6H5-v$H57up=zVtQJbpHFIq&sc(2p%+8M65?##2w{s zI(t=!U88O76J+I74#2E+)}*?vmLe?;iy}iJ8s{6;Gyf49z!-jwp3r?qMc&xR(QKtjpYn?6%9nz}?n0ZbK?n0vlS}mQ=5eS;f;JQ?`8i zb(%3GYSoe4-PU_v_CtBJf$F&R|J6M4LMg$KgYKIivfH}z?d?Cy2$GXGA&lg-il#0gbz zg{qf2_m#Cz7ppjmIDY_FU9X{^E=3r!2SccitLE4LDTX?5H*U7!?H9oK1tz+wVI4dX zc;x2S*TIFdIz*MLv<8Bl5%2aBGBzw7$jW_*45_q+uAN$UqG5Q9C6tD48=rW=7Mcv* z5LqPFLw5kq3((M!C-O9}Q{!6<=!Dq* z@c9iH#_tElP;JAQX7(1C=m5-uW!Y^0^Uy*>ue6X_Hd}=l+dkDIP*G3Q1+~i&)_SO( z^E@v4=QQnYuz#ZUPe1mb^hqAM96aU@t7|t`qXN#k|D@sE@y@w_&o(w+5sgjrcOU_AJ^5;oG z(fge9iB$8Hep~~w--BO)yq^SAr@Vic>yY;mpwjYgAncI$?Jy5~-oFc4P z82uJnhahRi2J_oAT7JocE7rO>_kqzRk%X46h-6PQCW+3c$q2-T>|~zN1{quqA3fjC zE-8H7bZMJ`U9i_a$UN$F28v<$+%aw<3`+ zm&xbw&Ch$swSA>K#u(0@5x@1^k=i`+4OIm@m8`ZC6-c#Jvj7;6Y4q5tw2qrG4# ze%I@W9&X%K0Mf(Ybnev&2ykgZU+$bZz(V($9b5-sfWBUXkvzy1(BlSyiZi`yC@Y<* z=9V+uYB<`xhJURCFq3QOH?I>w(O+%0LVpz@m(pLPjIe>w9Wl1~M+Z=8{nZ6whyE&q zws3!+YBU7Z2rZ-cpStq0hy8u3t$n2k{ceJ_p5l!+neZk*ME8HotCn`W84bsqL3m{k z18-^~UXB-@=YEM(3nz2m7^GW$Lsl>Mv>WK6PMsy_2)*0F(x$nWqb2)v@ta4^GL%B3|tsykS&DH$?}`Gv_nM^BLLV z0;-991y0U&w14Tx_reBk*C)S(@RJg=IWDTFk>Zb zo5A?ZKczAUttD$O%AnIWC3gd-6{%0TWN>H;FI3wj`|bwLvHyO{Vl=Ml)8 zze|EXDC^x|eXx@7<~<6$Rr0E%T^~$tI9?gyt^7Ce#wOx*YB=6j!rQtEc&!uhw)XO9 zulM&}9sb~+{w|v0nN%8cd^sYfE6f9vKe4|8ykKK)bqwLD`E`Ex1If1Ue%RmCK8|aX zxa42wq-pJGc2~xE_9|}DG(Dd=n7pHebx6H(nJ_6EM);PSV_VmzMQ7(HR}L2Z0>8^< zirM#0Dx6j(Q_cA=@>oEGkBF`Kp* zL|Qh2AH-}L%ZK;=p2xzPV<|5B5nExmt-a&VcG2KJ;jMpO-;h1yEOVH3Vh%g^`o#*@ z&rgxMNl-iXU7Q46IN&62j)~K?OO9t1|367vZv&-U!FqqAHhHNn}OI zCwECZGMQIQTSK64PPweXoMFROD+t#9V_3kV&CqdTbOw9~x$2E9O0Lw#)z97Ra)s|^ zSaLNQVY{!Gguhrx{?m-L@Sol~IKf|>r%FngKmLDV&%Qk|VW1N1*;hw4z@9Cs15hi) z`yGIB_H1-<%$^OFH!NV=Qq2Am{{8l>HpfNe;_TTg$J(1*k3D;g0PC@5*9)MsXBD@^ z?Ac^2f|7qmyU61toSZ#71;y59&z3rRx*mJ>*$Li&dgulzK(S}rwo={2o^3hIVb3;y z47uA3M5jHw88I_@&#O6`y|*q)v0R*<_rdyP+;X?qsBnCC-!4(~lg+}$5G|a36m6fbUHL;Zsg~Sbj?;5VmSW3l3i;|wJ9*|g6f^Bbgh`sLIi&&oZ zsQU{?C-jH~s13x%j&{H}+dgZ0%(i#onUTy@J4iVCV{AaJobKO>^w>%{Jh6sO%Z`PQ zLmV}%$F{%OC85a{pfuTUzIHG-nP=dGx>8uI`8g6+Hh=q#F`M7jM%78e$=Up~6RV@v zUt(KD|8}&m9(MfpsD$=efO<$rDnPOMm0PHVV)M7PbJ+Z~QRt?vKy=#t+Yl4eO=Td` zx~T$TYkj8@(=pzkp))M&rhye4?~7rrI`<9k+!9`}avt%zwTFvMAM%y5=`>C96`q`+ zc(THe#W>DQh1`y0v!i_YDXVxUp28alET!mLKI+$fHXD=r4|+^J$FdRXP$l(&<51-l zN5+OC-p)LF7~6rW2dY{bfqS8y`#uBh{QdsSQZmu$QH9RG2pFpKsXMVlwm)L1^ZEUO z-k{Na-ydOZ7wWMGZK%YY^(gVXP=Y;Jd4z{OC_`_#@3(a!yiOZ{w=@xNbi?s_65isD`6PiHUJ>T$X!sf$Vyjypt z^Pmpg1X)}!;nM2W0OJ9#XLRuz;1PMTE}9Cq6oK#jH3a@LWKjZ7{0xEbgcuTdJo&nU zM9X_mgdOs}P4hntQ0=;+82>x@JLd!!{{F>Gn!jn$$ZENkf;xM7u^gve>>L1 zR`KgKdfk~cxSdB`i>{MLKj{=3fp{LZ7YrV4E8-zzv2qW_;vHmGV?lk3v6zn-Jr-+0 zqQ_!0!g?$$|G5k!;Hod3f(GHeQ>{$&tybxKOPEaOdv>f&Y ziI&3w2wVQAr~F~Jo-*4eymiZuQAT{Q@+C;c^ZbHj(7xY4ql1=;7+^i}!TUFr2W_l5 z=#9z}-ndqymcjGq{jP0pzFhfhZFK)MjHhGsed^IJ!gM;m8~1K^dITiw$qgJd~gX*t;WL8}p=U%&B0? zf)pFSf-TqPfot?gW@98v0}E#0$XTBGdKQmBcmo-1U*Z1hNH3PxhZM6k7{tbSeCG~+ z4EHfFV%}ebKI5&1SBnTiK1_3{+^X=q#Xo{Ob; zanJ_;48w2|z?_ERy8}cStNZvzfJ)m217Yo>v3}m8{pAq(%Qt{o^!h|hKX0r|RSMdn zhIb#%!{K}ZZOwn|YM51drN6MbS&Q$5M4xx+;jpEkJE0a%Nk~-C+sNfEroUkz9vAMj z7YyzzY-v=&Fqy9(MCAsIt!$-UhL!qP3j2yty!XgQ;3=o48ZXOs*m%<3{!+@3Zw|?f zAMkY{R=VLR?hdo0wNAY|2JrQ(i?xhPdUr2mp1uTgo~Wwmtt=?c9`e=|OIvv9ilb+W z1kp**Unhz_@EHM^HuKpxIcdq(n}eaSiQ5k<(Ry>(x4+dI)wd!2!wA+bl4ED45Uf&IN0jP1`OKHT7iux$#61n~>+f4PuCM>I zKlhrkn5w-8>y8hdlb-!UGZS#yaL%f@i$&sirya(*`xfPve&Pb zi|kR3eDl2^kBO>48RX3q<+uHTV$H8hx!&0%$EE$62lC9@1<7tN8Z5>4p@_yvaae4( zTiG~Rlbi-Qq=9AEum(vrGob23hz^*y0$O#OEKp!!?Hgkz$VGex)rDpE*@)QfSq4tEEHI5WeI?)j8&gxHe7A4R%+8K|@_--xi*B=Ql9(pmshXGRqVvVy`c&SGpfwb6*><=?v?K`Y zfD$`v5u3vQdpyimcbFGjIP3;@goX*`nHR^yY<7paiC|)LcLz*no*5DtH9mTKcBMO3 zcVM||u$dd>Ju=Lfnz4qC16LHq;9uIHSYzg*U0Ew->Kh6y$%6_dA~fxaj=I-bP9TRycUTL=?xHx*E75UMI=(qSJK=7Jw)QhIsio^@P584 zpa-uVR|lZ*TAF#Z09IYeegD@#3#SNUZ@8RCBCdZu3M)(Z?heh^z4;yZOfjmjzv^Hu zF{Y#PayMKC$`H zi^Z)GqbwjVE8~@UT*~FNsXbeB7ddUJpW6~=Q!jiOHnmHGWcXNKlgh+3V7|ir=n63S ziEFOm0%bW4*70W47=x8!-gv1)l+TbCmn>1v-C^$735n}VmiMv>duI>ak#Da2Mua#A z$wuD_*y3lQI7Bt@ygQ3MPVr$eb(P-1C1sUnF<{w+UBoZ3(zh=0{>gN%rm;sB5$}*k zKKxUp$jG03X@IUY7joJ&oJ&<2=sRrOhVCz&^P5`8SUFkn*^j>Kl~{91a(9!iFtb!C zsRaS^aHZvNMU{D76=y_+{bmdH(dBT}C;{Xe`u`-gN;TL0i>PsjtoYQ|Z{*B!C7R_> zSAWetrG}*FBw^^^Fy6>IV*|5MQA?wyCHS{LTtK}JkQW(PnQxvf{mgAf48~%a;E5}_ zi*h~Sx45486|UrH#1Pj*QTld+WCwVa)&Zyx=5sy&FGHm3eyK5lhI%Uv_1Tz1VW{o< zFFu7I+kL5TKhzjOczLe^@4GJ(@K&ZueH(x`k?TizOB3-%HyrN@GeTk3pE^X zF5&GVJbxlySxST3yNK{+ybioon0&>J$7C-&@BQM~daLJt*wZh#?uU)tkJ;R*)Q;am z{H&E4ZF|LL1Ph?nl%!IE>x_Ujy4q{e`(Y{zPa{2M$iF4-eo5)x0}tSc)jIR*FNA)C`EgQal3%fn@fJ?b|kqE*gXNuz6%IN zI7r}lKg>2L4ey(mena0_i)Ib#oBf=9Q`dIfSdWkO1a5(nEepjC@__fh}_Wlpd2D}}2`fxE?WL6K83(xKQVTbT_>ari!T9MLP zQ-*|XEok7r*E@TYtA4yF{w5u6E4bn8Hk`_~CdmzAx0|GRxK63&DxNve%in(UVF`=z z9hVK`djtw`?uUKyi(jwfko}zqD(!PlLs&1t|K9zu9YN+ary72EleZfFUAtcEVSdc_ ze%nh(oZQ2TA*@ry*YG;r7JU%c|^rV+aHOi1RS8H2P3%e!7%znXzXCQ|BTR0ZJ3Xo{|iXyDnNp~S^pVR%` z{jP~=F7kE?H^JTQ`2+U5_K?(#{e`41XjGEa`QCuko%xAK9qo7ht`Y9}W8+46rT0RA z(u?iue?ZyRf@(4n&&%y*4=J0L!PQnjXXL3;h9)9W%G*{3$EsVmHnNOU=>nx^A8{ALKFA9hM?adU0Ri%BXqHD zWmQ^+muBpp*5JL|*S~9=pqBf2!he5zw*tSBKEpH z-kdpeBQIl{xvqd7>&gZJdU*UZH}cA|SuM;P+tM-Jw{$uHE6#qS8eI?etTa!PM^8!VCE+*7qLUX^VmE(f4Wn7@~puUA4P7my5+M9!@Fbt!J5k z<_o~B{jPQ^I4Nce*u<`WMVr{uo^)tFO3gQm-)EsUVq$!k+@hc@%&vdNp|XV;NvLYS z>t>liIQF~ZM#MwpjW6pO5#G5nt67yNDe?yrpoi_yBEQrX&_m>3++CN1ipURg1@vIT zA_DaANVLeO2q1YDklt17H{cdWJYhXZJ;{9S9`z)9h9&Y;b!A-ddsO9%s=9h#{*z<*ys%({kJmO;Qm`icx8mQG!buf z!|_%VUf$clyC@Ma)L=a4K4{JlPG4&~3NwHCH~U)UY2%86Ar)LI=4u*#CnQ!rX$D|KZ%yJ1w564PFBsaK}s(^ntn);Rpk2@4T`aEX9 z1_n1qtt%e%?)HZ}xbY4wkNbD;^1{+*Y3{UP@y-kOEoyM(!`o;c7ohz*kIHt7D?q)B ztF$L{E%!EWqYXQmdlqjzbah1`08p0?&E^R3*!$;xT+t{R;HTQ^(K^{ z4doXlE06V-bXvp}VF^E`z0y0F%v zN$_i0v{wW9@?6wGJ60}ynQERR2e^~r%U^bRVCkX$`MnsATcgzgzWiHU0TwTb5CzP8 zZ3WcBmlt|rNoCW_fr6z*o~~f-wVSFh>kcPK7<@@7*L)XC882ZEz6_XepJL}r%KeGb zFLd7ET?s4PgA^{Mw3IOTl5Uv(=u|sj63YDwg;quGaG<>PZLD_XDomGtUMY7g@;gtX zBrN>e^?2~>rJuy}YkS0~`8n-l^Z=FS*S-ihoL>t?zfR@%kVU^n8lN&wF#tzU22 z>A`zizuw5ly)%>H46G%f%l5o|Zxl62O1gCTcGv%DbOv;)1sZ69cd#X&GSvd}8R;B|n zxX;A~-Acm3Ow)3}Od-_Lsr+866lRip#b^U_>|iI?ivcZF%u?G5CUi&1Qy`fljk z)I~}0NeeG5-Sy3FSXKu^-zCc@|NO{V**HE4n2*S5Y#zaS_++FPmezNd3Kr|Le7^ZW zG+nNQ-T5TgUHF6)PzRNXlvPM&>deZj8*>xA6p(8EpoE>&)E6pD{PUsBw7)4~;h(kL zz&~3*jOU-*5F_&%(nVz;()?3_a8mq}qWrt>J{GAU|L$`MN3qt^ApKMOALmdd_;QTjQKtQ`##InC+!~aeyAzzPFw2tr6my!b23>76=wz!w^-jSdJz+|?Y9i~2<|oQ1QfbHAN;}L} z+5xHrYHxE}Y0rKgYwr^(Ozpizl}7sJdKD&pbG*&@In3_-bU6k3X7u~<`lcgdV)`Zr zL|WhUMz}%xCd}_Bi@$T7grhiL-XMK*`+G6=arN78<33Buj-Bm=r3Lpa!TJOA&Gzli zYFj!&d+_hdS?FXe+FUOzEj|&!VzYA-uJX{n`&0?L>6?IgGJmWnz?sfhnTS(QSDD13 zjXqvDl{l=k4Z5v_f4{!@_q(xd+M8XbL}yr zZ>R=cZ8hj*t3ex8YC38VwAEm}ngCG^R;n=7V3w3xkdF9i5{ACXz{flPCLgBa_CEWP z)RWr#gbGu8A5uDl+WR*ZruJTFEA1>>X$Pp%sJ+cqn7HIw<=>DVdP0Rs4}JEfE|>Oy zI4pk8%3jbz+ux4YLw6%4ria#oNb8}^2;1ji_4?12|Fd1H!2XYfqi@*!ACY@(w3CLa zcctt5Z86Su(M&$GntL}X&Gd*DmT+u}x!i_jnXU$S*!|-Qh|@>#e{2QR=l|duUi;L- z!qRH=7da9w{?7-oVgE$JZu$uP#~%*@2Z2|fR+-rUQJIwgbF}CqqMC1mo+IHXUjIvK z@Os9zAt)HvPsSmXNvJc;~m_wpF-NP@NZ7alGPx{QT zqZ|$Bp(jtS15k5aHvz0VCDCbWivjrV2vK6#T{5r0k$Ko1_1TA`<;z#>&<&IntSbA> zGgX+}sgsn_AP47Y6()!7KWef>4&56nOp4_}UZ)a=PS(F4d(xTWGu>6>Y>5UCrJ=jIe9qzB>PD)B|T;qkM zMRBqX%g%Vo&dft`1z57K{g^CU0h;4Hf&W2l9T27wd%yPmm$r@gIlF@!t!ftva zU|w~&Fd?zX%_RpxR+X9g2pe>sgp<}AzPL76vaWrV+UL0q$>@#MuQ~g} z!jk^TFjomyyzoKoC$BgDWGlp7Z={+RILgtZ=%F`$do@<;ctFi{KX2kraMv5D<}-(C z=f`iJuuiW~l^!5Rw_+oGu7uV8TM2Il$^P4P z3482wq?%uLWNx~h;DqM1Gj*zh0fBUf$q455js@;yKmnlObW@+&1TebBkV%=iKgyAxo(CIf1MV+sDb-& zYhH2=eH@>rnom6&8+yIx>@oCLdSU6IFR)=XhEJQv6%fa#0kfH{fO`1!*)7h7TUb)r zG;_lSZn)wn(o~Nsy+E4k9}-skW*^&3+1tvLx$hI>{(D?>s`iP&VT7yo4Vg=&Zxn8c z!ljhy5?1?he`0Red`c)SZM92r)b4Cs?M_i)I(c-Z^7hCh9Hqjfd7oEPXyWTN5*Gg5 zb{_cm$?|yqor)M6|Ly>l=3f(G2mkJZv&ZKj=(^W+r{YPSe<;n}Z5_IJ^C1=>yvMxJ zY!|LPBV5y}=pcR)t_c;kz!N8=7iM%Xi+%~5^0bBcvIYXa^4uEwr>Ys=NykfDcqtyQ zsCUW=--5`}+)BK~TocKr;~k~_ZpBqu<8*12j?(aCE3J}C+pjQCb#_(DB~%iSm(stH zT#J%UJxuB7jL5jIWw_54x+R&NFcOi=&ANkg*J{NPsgFHm)TC{39PP1aJElR%Tns2Uo z(|Pb_&umcM%#@koK0z9>!iyu-3a3+qZqHdx=NN0VbH-+bV03VeYb!KJC{&_3PcF_g z+8~2b`4Nua{5F73uR)+P%x))gxQ@>U$~RnlG0S9y-$ye`)dy7h`+;`$$XzDPD7U}! zv7pkyGXsO<<<>m&?Ke~l<8vC^*1IE=-D>M3DOn9Sa3a-%3~qMuG&DQU-t6|9F^=)Y zmI|GDo4lZ4>w&#|mXCbv3^ON(dmx&Iu`URx%TvwaU$JrHt_+t2mXZu4-AMuPo$e%c zIO>?Cu@TpJR2rQY%rkp`Yb(tRsH6ECqkMO}*|A9TcvdmF(UNPUnNBZgdw*O!UJ-NvnQ9D?N3S#sFG%Oz0W6ynL9kAL5e0gm{Dw#vP5b77O6%-Ogy~iu(iiU|OruHR zZ3vTSc0qV6!o;r>u0VKd;S?YJuAMYy+*SBnguhzvJI)jBLWcVF|6=AVhyFjnq5p%T z|82^DQR9^V6}qVUm48qve=3QTKmF^}^~oxKuB#}2yJ|mb2}6pC5lhfkzSOQQfnE8J z&d0!ZDYFKadKLrw*>f_mav!GwBCY#pA*^-(4212v-_rl|&LEFZ8;tI{zXH?J|18y( z{{Kfz^z)2P_mlp=#TKRC!&y_|rvI5TGto}NVE0O+PMA8ZloemRtzP?g#Thj*4GK++ zbIDLR7wEDa_FdF)mK0evzaUlXr`_Mg^i!O2nrRu}x|951votw+N;>xD?_xcL zH)PQ`ir1Qa@YV5}oKxd8c|z0rY_N4!4A0S7kE~LiiB(45YS2(Cd`R1cu-1zoB24uo9l0H0=)kd;lMbAC zxkCr?{Ehma<%_iKx-(<)l_(5wS~I7@o2)4vP+XQD86sCZm1fS%Hy^)`hpXx>tv<*J zz8KJv+%ks~izk~CTgFao25U`xQ$VP#iCAzdq3n-%)CGUz9O&j#hoLSJ)MaC|UHIcO z!aubtI@F5E4$~KrLWNl>h6%E`q~`z?N0$};NlIHv#oQaoH669aldaY!*ZSZ>@_w&% z*aVL`fskIns8;KmasHESRs`NUR60NpRie{151!LQ<1{z3g0^eitwX^iPd#lh35_L~ zq!2O0B-CZwK~e^vD+l3S2wy#!U28UhJpO~Vf4zeI>jfZF`c?c}V*qK=%VzTM*8BC3 z%&hRoKoIw?bZ+rl@KnBhev;vsSBmdtFdKKF;;SEF_W1U{Ca25=E0tJX3U4b3g?Wl5EJ#IHzVA# zlHwJBFGz{-zj@}0t*n)#mzZC(q$ry6ahdYARr9IsC=-cpL^rq7Tb#G*wFqBwP*S{@ zps@>Y4&~RD^^Lssc%y$=Yx5lmBEcICn4dnzou^ihHK2zx+NBOaQDFgdz5t2^k($SW zd$^>ptf{ZIKJ%1@)b{#10JXyX>|fk`^QwRTD)+sH%W`<)Aye4S!y!|b0Y@obk`KsK zC&Z9Uk#E`+B-%H<9%15glCSF!CXOJzdkwf?ac$CXZfeCXXQV^wd>oL>3DuRmT;bo$KcyI%kGhYN~MnmOGpef7=@ zin`96zWcRbJ6=$9xY9Ow=P|?VIohFZn(^emDz$r=^iID^&^!H}vU-PVi{42^4E2tj zWgP$_^6O~rV;I6(=WzSVbo=^(VjXpxQ{T)Xee>-NTzz929*nJ2=E^=SeX6P<9x(e$ zEi;~!8ff3%@*i<0jPz#>Mqu4pvGTIkq#b!_FjSJeJ?pu&uMoQTaeQwI!(5WPrDRA2 zk|(Rk!5q1(WQYmM(TMctnkBhrdG30ku~Ayjt2*n$)7J;HN?$`{BzIRyZgpg!SpwHD zcYW4#f!uk>nDy`6?cLu*IVphj6G2Vumq7@snbT`(aohZjt=7^%k%8+kF9{5!!m5rz zl5a+B?etb_=^uL%jNAIl0djdsW-if2a;yEhTL^Vvg%dUu-lB6-v#O5Lpjq9^6e7nf z#2*NeBBF<2m}KnxUW#$(zuFpm>RF6^I$~t(At}E8AgV?dx?9gcc$W%~MtH(i6ACAc zndlocc5Klkn4!A)!Mqgn1e#}L;(ol^T4BU~=D9S9=h*+i36$95%@cpru}A%+W80dK z?$xodUy2s2Z0DQ)t73e^^?}PS{L%w8U)LQ^ia*2CgTBH+lgD5)cAPnBVF&b=<(WwACq)M}- zN?$&X5-EBuzFmfzs_1ugbUz36b2@sPgL=7+-t36JLq~6SL|?C?w>YB5>gYU2kppz} z2uJiuI(n-Eq$8rsb1OTb!^(4aW$-^H{^Du3{DTEBdfKD7BZZcBF}rI?4aKxdt8;z0r5szx5lrnu1F*H(q4q+i^NS9Kv%MhMAAvQwHub%o1)sp&bquLQeMFs}* z&5U`hTG0}U=64Gb-z!*@fhewdE^giacq`v)Ra{nxHS5aomQ-9^8p+L^P__)2B6DV; zMZE^r6e7E&2j-rGKc(I_!8n6LFF~qE|=js1*yGq zGjBQqujDg+X1;;jmVJ?I;_gAU*@`X;bX8|Ys!Ma%qY@xm=tA_xV_X#W;Fzo>L4Xrx zNKqA(n!8)XcF|>E2BKHYptS39q5(6IZe0cvEwj%fydHc(+GRb$=M|2hH0W&KpC+Gu z^|4l@`xKVxGAQ?jQGT z!C@+@HoNjNS_TiICtH9TEOHE_+%0+czhF#@X8|a}e_y1c3P!j9Z2~2LiX=(p0jcD} z=*7ysM@YL7l1uWmxH8%GrYcnZTd2b(d~rvej2++?-Qe>fe9~YjYoCu#5|JAA`TAP* z&Xc}s$wg5ol9r?YBiyB^?qH#)S^<^8%j49|RhSJ-12vX2N;oic13mgMgjwNPASf-K zh-WNjP;|a|scc_JCd5)=zWL)ii`N$r-5{fas-L^i!Q^tD+zD4*!5rNPexC5Clb=6cRe9yfLq?}8uoE)(hJCm%`V z-32s`9=ux&`sg*Tyjy@I;oZGgfOjK!bn@x5fDz-}JcKpx_Cr|n?&%0?-tB>K zjCZdcGqGsA&x3Vi>n(k?KE|n&+I90F0!kml+NcjY%MM%r;Dnc!A$jITvS9h83&x>| zgUmzWu*!foD=nrdhj#qSa$>x!S!2lBDsU(Pq$G6VG% zaM|^wf$4yp5zfh6NO`CXiE>oq+lQI|r+Xy7g=DSdRqjYB>EvU%BB}xl+E9b-oN*uW zDJ@=>LVI#;sG@SgmZqca*{PtbI-8h{>Zr*G&apZ^fZ(c)5Vv+0QECt}ZpYhGRYyx- zP-=*Z7;fcu^cAJ=dB}!MB|EU+w5KMNyqZ#-Oc2SYOCTbty=IbgRCHQ-aT)51L54i8 zMrc2TP#KhC*d)Jc#b=?4ABN(xt{Uic~GN#vk6;0Sk)Tsh(%GMV}UmD>W1J zU^c9(aZ-OOs<*W4awI7}H!sAfL5)B{il?!JX!cu_*} zw=+sXtaxT`bD~u|OOGzaR{T(p;yb&QJaZ$}DWULI@r4r)=bK-nOQh}e?AG@8mSWs{ zW28Du&BA3J&~qeR*h8>#v!-*Y`hCb9-oTt+1m=n`OIy`$i?LA*KLv!M_p2vC@85+- zrT0nw!e_}x4C{Sb&)W+cD)MfGM_%O*(ZF>?_+o^q7b$!J!qg~Q!#fjU8guf!dm=n| z{ItSBw` z7eHLs`(pF!=R}#O=$VR|NS8h!JRdi|zE(#&=hvfjv~zylUq?IV*C$Fe4!Jny!0j}( zbAIjD(a!nx?j@>%&iVD*I@&qEepW?eT1MY&SW+P+tLfHaoth%4s=6xmW=ZwYZC^eE zSO5F;@`xfB1A=fLT3_)MPW76__sc-U{L&YkXe=> zyL#ohD_<9;#JgstxyvvEUXN@OC0q4BI2$biBAfiPVz6YZ(Am-xvTcxTmoVXSSzuZ5 ztYkX|SQv(^g2ZgMNVd_E4dRVLSJ2uCDoIzlBAcy>%3kD4CNi6-qWrUB7(cD-B$?dG zYA4x-I3^04R&%hylL+ib*@h%&G{-^k)%{%iRAcoOAZTsi3O^^ot4t8V%vHEYHRvf7Jy%7m_WXmRV=OvZcx?`% zMblSKg>XHBMvccFzIn0!c)ecb@epg0+^sk+N=uy(ghf)hszq=;5O1FKcXpn_m3wja z6D#j?z?j!!@r(oIxtpm1bUJjiKX-RY?&k3H%^jy>qkS{F0Lxo#Xd!%a5MS!St~IS5 z$g;z-6*us9%uke9Fp{4Eo z!W$)=jd0d1x=AehDhMzGT1u^gNbQNWvjt|H9d__3)-zLvo$!GZj z(R(Fdo_WYGtotw&X|xoxL|H$z)Hdcmzi%x{^F=3dh7ex+LD_4zl<>(BsSd&4)G-z= zJY5=qJ0`{>Zxr8w^NH^{^NT2GOV|$;n&w%vhf*^8pS7KfSKQ!7J3<>xtEBKxsYL~- z9x7+d0jaj;%0fN&H7D2 z@F(17@gTCAS+q(>K}>F1qpnp2W(AZ&)!1;KWibK@g5cYGL2zEU&+=Fb1(C9yQcei> zSs6>AAX1*C6l`o@#T?^bn_VU{^f02Mt61 zzr|#(5*^_jaT&F=tl5JIiwCl{^MdVhqxRgEjUVH~D*47T=&;fuo2}U>%`#h}BwGKq z)nTF3`MZUr?-$Ef!7>!!7>MV#lnh*r>cgj4?6N=b6f#F~%m)l#NqS-`j+j(J>S?~q z)fl)L8YXrY`4-T-S7V|}H3(^=iRJt{YS07uswQD_M#W2+Xr#T&R-R?n+!NpQ^4!(6 zXpMJ+UqF`VD^LRA>6L+NxwZJPxkqakg4n&aHzt%!{bttN+H;VviUrfPsYiJh*fOC& zG?nDWyQ%Nrjiy$To}eKu>|+~W7!mjJeF%BnTRayj@oYx0^^Nafl zH&fWZ36g(vI-acg0IVqQX&Yo1Y4gyaD-etm@TZ_-!G6a6SgkM~hh{XY;R9liBo*7# z^F;;jxy$ccO50uGKJ?dDcpjv}7ujohvwO`~L6TRH6K4n4AQq%BX~tp{6qkB0r|Kz} zQpdR@ zNT|}34wa~kcd9D0z;C>O9*j%fbtgAT*XRq~o3!3g@aKY_#%QXPKjqNA(wioE)UjGU zi0n)Ib63(|U*WL{U3oJ|s8*C7tJOqjxmCI++7^sMp)}7jQhX_S#x5GY9SK8t9FrvQ*R9;NM~f8FZxEJ&z3 z)MA;c%W}k8-Ju<7dtLT;*QLm;w19`#06m7Lo2rXi=2La);H-o4hwZ5 z6;1PraGx2sQqdXam0w_oB+U$bz#Ch1=1Pp&;UGQkB>>)g?4~zrN^*ChOB$+IN)K62-LW;|4`FIF1OI?nZa*qKpM&b`Fcv8`M(K6s zNSo5NdDtwn=pYo2kkMWMwd`csMO?( z>J$$~MU5e_!3_t?bOUQcU>O>W4)kL$LbVicMQr>c6yAAAB(Q**PAfQa*}3ic=4rsJ%E@{PcA+{i z>#2c1kCMq|^o?O>{$QO-O4s>yb(?!h3994K+r`V~|;RJq%XM_0E;pJp09kgnvq*#IEq*W>8{pN+i#OY;E}GR7%86e6_d*G!$*E^*mvQYy6bh z8HvLv5no%h!v-j^6A}kd;zml0!KP7S2PF2T#D$co9ma4?IwiJ6Vh>8Z+6kLMiFDMW zGbNtmgbh++2#Fy|JlF}_j1n`E=%d7H;>lPiG^a#b*V;V+iLX#%thOyEF@VG!l=uK8 z#%h~clv!R(JAPY`SapL9vn8d_+g~dwWvC5sKT4@V%0f!Xv7u#A3XS&+N@*_Pi3mqZ zDYm4Pazz%<-;xD{9pMs6xCW6@sz*sFRW-7J{+2ADHbuB)CEWN(DRn_fDfLoh0sSrE z({mB-)DrIZNGbJxNhu9bWC8sxSwJHh;qfftA&->Oz?YN~Z$uW*-;xEyL=k2sVM+M9 ztmpE%>2_DwSm7q2pWOsy@u{81sN-pJ(ZsjtgeJcI-{;%KZhU+E^oClNy*D^4%jEem z4Q+vY>ZCP%8_ic-9t&wntdpxvEqu$ZVeG)o+;E9ihwCT;zJogK?f8&5!m&JED8-YP0*B>u9g@$8Yfdb)s@u9}hz2 z`=!4EWQ_(%sxr&tai}sgfm1cbQn_{4WKlc<)#MC9Xpke(lIni*bhaCDYbd8=%|4Y9 zba!{q-A&_yZ!c&KNJ~@E1*99vXvviYxQf6s-kd&x(#dYoBsRP=%Vxjlqb1QkTDK~2 zn+cyw>H8<(TULA)rGH9{;lQ^H`3;o5&dyZ);Rwr?7gBmDr90|xne&O1J|+R*vgqR| z{iFnZ%czf_^kxb8mR%oA>Hi`2an#>3?E@$s2OGq+Tm6$s{ZCf4AEg&lx}*M0 zsu50b%gpzn#O};<7P4jOyHcXE^c@i1H!OW@WlyFrd~=rJL;DgYhF@O?=@@stv+JAq zUOd?*zW=}F;kxtvu4OKK|6?Kee&Tgad~dT?P5S=-=*-TY@3*+|eeE^i`@+H|zHj1t zT0!`~y`tgH_bc4^KI3Ze{SDVN@qH8D@2h-2&yDZ1CW7y0UDd?*O?|nA(w;i=i>;SeZi|~J*R0s=l|l4rMrLM+l}v!8VkN(G`@-N zoAmv@s_#3w@%;&-!S~B9YvTJRzTa2*KH$dpr(6oYUoonQ@0<93U*&sqsms3A8NFNntETlF>s(#aIfZ@d zoWguJzP~shd|z=<6W=%K`+Zg4Pjln@Q5S;mx8*hQeG}jBt9(Dgjqk6x0DQk=U=!ar z@%_Ha_x;@X{_6hV`(3!dv&p}2^6&S}^O#-T`2M!m-TAm`zG75uiB1zZhU{y z$>94fJ)8KxiSPGSzMtmC_m^}B-)}vsiSL{EeqZJL(QbS{HV1say;~FCH}U@%_HU_u-ThH z{SBF5{ciMeVEv)=rZ2@c-N^HQ{zjfSt>4Lw^*1#G>z|U@#QIHIe;?NRK{wVfPY3Jw zZq~&5O{~8Uv;Lm=FD$pkCwD9SVEr@Gn^?bz_4i@c-|oixZ}`Ca=lGjgzlrttVb(8m zWBqr2P4!h>7^yba#-|2h6V_5{gFeH43v#Tj92pD^ioBXvn!T%aAY?v(xM9Objl5*$ z=1hD&yw`4XG-4v3Uiv(qe7iwXgRg(n$Lebk9((nqNn@@W=lgoTKjgpLA39}${Ck7? zcO(8CiTI)S`a>5k@`uj(hd*@s1OCv-5BfvLFZYLzeAFN6_?SO*z~lbVeyjbV^fms_ zZ|nS_AJ+RrUp?m!eYVLT`tSvR=$$S8(5)!%wO9P17hm&-o_#}}DbDTp)V5f9>f8R% z&+qy}-@fk;eeoZEXlJEA^!_LQ(3_w6LoY}Dp-sE}p{Kw0ho1P>ANuF_{?G$8{?Olk ziRHiZH-D%!B@mhu2!z5JfzXZ31EIgP41@|pfzU*hUxELIM0U^Iy%n8u(a?)aH{_s) z*7d;CT1xxw(MWEvB)5jwCR*Ssfs$e(2s2rWtl3|XF4Ld8Uwlv?WG!Musw0`jYx9C3 zzLQ|*K^uQQNG>GE!19Ky2Zq8QAChl`9(Fn6wfvVp8c+_=;44!Pb9a^=r}d?B?y$bdWKVmHW3335tfA!oTk zHYdnK>V@=ZxZwu5<|jZ_KuqgmAkV%W;08I4ApcS?q(@)oxIykukViHavW*+$vo(Nx z3-VTX!#!$Q^Pmf>UrCTN8Vk9@4YDmD8>XK>`_ZAFXF)fZsX$Tsne+|xa~Y_#ex3^w zt)CYnto8H2>_F&#{JzHTtOEj}1^Aix^*S&Rx(&aN@$1nx5SoqO`}qA~`fPH?#^|%r z%Uy=)@O^{AmY_=Kn|O~IT*UZ?1ng}KHKwcOrMPaiPmQZ!djml+%6EBgx_=cwQ3&-jmK{- zel0o#LL>2e9KXQ9fzZYH{S&{W^;x@cV$&OhUn zT_&9Qs&6n}^E`5NcFVDja*UK58_jI^nMM8B9?}I@MW-T&l6}6c=e9(KWR~{3HDFbs zts7hc!F^yifQ2n$a93NFwrKyzz?zLw@X5#PnkSfQpzc1 z1E{(+oNO81|qI0SXQkIlCqW78{?OU?h5&fx--tLHgO+_2K zp}dR~Xz3*bP%KJWE~WfS2vQ1sMm6f8>!4C^*QqIzs;Z(=ui;c(zr_ML0+GBXS_U}G zxd#vt)<_R6oHtL8g<BC>2NlbS3im{xNm`v?cyI4Nr=HV*N8y z`ln54?vA`j%e5Hw{MzhAG6vf}OZ8E_d4l;1{Ov%vaxbr{27Be!Od;PiTsH00+~Aa6 zP(-=GJY(4v8KKgFI{=UafbeE=tLFnFQtd!rDCpNCr7F!l`@Gs(Sq-l~2GULRO1i1` z82LejfR;sSsm*&qv;(bagK+TJKxpWgiACdmiXSQv$^6iR+S?sZy1mnbzQR+>(^d`+ zh6sh^#0Z@o2;ragaDtcYxrn)Wi&X8SPpO-U7_`2szTrL`E;@`_Qj=HUD@ZXyC>#M_ zZT9HVENK5krmE~n^%5V}_aPZ`1?w(EOZ&DVhq)S$s(n;jv~LPxV(r@jBCWqnga;c_ z#*Z0yUOzO^@n7BiU*I#Va2N|?W|yI$Dv5yVpP%uXxl9+hWn}+vqcK{Bs{&Q)AWwi(}=>^^kR$6Q z_N-@0)`z^ZX4m-ODT-s z6QjuTvIWet?m}Sd{S)x{dY)_7W*ahKuk3_O?E)$7a4GF>{%0lbhNIHbVr3OdSzRR4Bq>W} zdPK_d%=8`nXQ1t0o83d?cqd2XMbH7Y+5IH$HN=(VE(BeQ#P^o?r#OBt;xmnDk7k4l z4l7U@dkVnUBDG7^UXNrT$r`_NUZ>xYS-cwI@=IF#05ppq(b@LIjHv z34W^NmhWe@C4wgt3ASs3AQ6y%5m&?-O;AG%37;nt+${vnjNKq8ILw%e!H^DA{Zk|a z8OAOm7;0P>PcT>$>>z@|M1t;`U>nupPShchCQH*)5Y0+gnyQbeHzK(U75}P{-=?DH zs%SOv8#p>9B$I^$A40S!`?3?E?91_}ls$s zaI_G#GS(Bp;zWX=5VSFt5yARIg3tfMjc;SjB?59CcE)a!+{LamKkwki zb~3gQ4fRGM&O1WW(O6D2)FFv9PiUGsL_>X&NOK$0Bna1aDmqTMMssw6aGi%}5v~p= zLAVO==oGFlln=s1veg+RTDHzYSj$##gyUt)@`oB?51;v9Qz$9=q-#OrJfa+8q}$KA4BTUxYRG+=bE)J_E2g;Txx|* z-9@Q4#-%={Q@10Pm2ezEsV1l(0&?Br2qtQRG9q|7k>CPNu$lg`0FU$(2pwj~#%s>=HNh4lI4hChXicz|2!S@=%-@Q!{PW}54;@tFaImeU!4Hyea z!{!vUaVUs~7!0ZND0M(w>KvUqhfG41F7QQIKj`;1k;FMF&Z9+&_xqWCIa?v zoCq13z#szlZ=3|5ZR6ev7^8`R{TnC23z}dU2;kqG951EIG(jE_3`ish3qhLEp9qXZ zg3B~PU#bK9HwmSju4#G_4Ru8#PCHGLLp1E)B;fq;7PmLe=t4B?-z3nyscAY94f{6< zG>wvJEj5T=v z@WGpnlCNdR=8&(uIKnAkHzCeVzOLYSlCLzQ?Mh;>I1WEY(9?_%rN+xw7o8fU)Oh)7 zu2X$Tb(62?8;TifG*iWuzC{!4(Hs>=@USK@H9N%-+@c98H7~^xjMoI)LEt7|{WQT= zB5;wf!!^McB5;wfR83Gub#Rxj54WnWSW7hS^7XW)SxGeR@^!bSSxz+W@-;=%EG8Ov z`MQv466EU?6&)vEoj5u{zM3Ig^_YB(1Btd_HzTa&>js29<%=rM z>uH&^{@e#odOa;Sv!s|J!yD*tR$*H7C8UDUX~nKZYwVbe#!_BvKjl(XMb=Pjvu;}i z((>GGLC#T{yA4YbHTgywaz(N!+aPNj=16Km?rte7QpzRL+HI`pz;*eN1@wq@+v>CE zOieJ)to@ePimOiMr#rrur!M^TR+T)pWh`r02JzNOL8kRL@h7VOiuV#6Yuc!j>5#DnYajHSB=!ZiFWk zj-TW!JUIsmzP)wfHU4k~jzJw7eg+*W6u^>dSNGsW*{=75t?HD-64& z1BMnOtO|V`1ZMA+;9)8GjuzYzRcAzULvk8t%@%2gbZ=^5YSkg-X+(^6Qd?4`kIJMG zV}RGatSW6Sr3%}Ga=|u#LA+ucwKa4KRgKwZ9?`Z1Ri)ya&ImK#C0if;Z3~<8UMti;S0{}Ydnq}Fk=P%@xc?V&7LnU zy8RW@b6`zLpp>>Fs1q>~dI?~!IT^`$1v#=!qBbnlHsKH?MXx}cTx%G}Dy4;A0(91} z;1sT2$MB}%gA7^$ud{l4Ue?uH>{h)ukZe_tC^Xkpn@=GrigPHnywRXGw3ZMY+!QUE z{BPs>-=lRGaO*mRH=Q)d__)5#Z)LTv6F5Gh^S^t^);gkywQf6-xOJ|b5B5l+dY{(U z`BPDd@J3&^>J7G6k0@f*J5^WD-uayg4xQhK{%%oEgW7~QbsJ>NuCKoz*rFRmJAMiM z9Y(UnO=?e2F}r~z@BU7%dcErFZ@*Q&0dCdXRc@;uQN;TDB_w%QuX$3vS1&t^Lm|Qr z)7+|;Yp)(r#Hx3UuAZG8vI&l4k@;aS#*Y1y07P~jzQ=0$Czb{=Og|I~)SPh`^`rqc zR*(*N+~-Tl6ZN)|oa>lwTlHe9Z|P_-Ce9S#FU;e?$e1wfb3uk-*Y-+{__c^F&)tF> z1<1i!1Z3DNWJmte+%4E>H!{e}aoDPAvoGhuo(|`lg@>w8fcj3yP*gkXkqn~5pv-ifr=b|g%QZUUk zXfB1VkrHc^Fif!GY=v@A6WcIlqTHoqx8Z%vgAZGQ{_yasJ4NHJeV zhjD>MCu$V?bn58FbD*V)z{!)$k0Ii?Yf-~{kKOb}4IL7JgJPx5qf~N>RO)V|_A@BL zpgeF`*`q~+h6LfujuXt`$R*Z4b0Dn$U-77{Kd~{K##0ePyv?@14QRF~+usRcyX_|f z)Chg(so;&@Pyua%dJHN!rB3U5C-x&mqRZT@>r^CL`j9AM5+&ewMvZLK4U zSnIYU>3^dCC!-w2A#OFyx7V=DQNxp|hU6aF`~OgabM1dRgTngX?S0wg&-<**uk*YQ zjz}b)_nBLk%y}Q3Rs0-vR48Av(n`9kBPQp4RM!8;-uu8wHU0nNv+Zt8+O^YL5fw$L zY$$~iZ-r54-*(gXhf>j>ktnq(6uYL?PSdg|LQ(W4gd&;V`m@Wbq~1a(!lJlq7K^1# z%l@9P*ST}=xpU{-nYPdS{dvECpKp(zvorTR@44r^{+-u3_spGqVW0Y`$MUI;`+fBD zbkEbz`+QT}{XY76y2a?{JoZYdlA>(FO_{2rk;Klb85 z!|iKocTY7<<3w`%AI+YrcQ> z{C2Z1<=YF``IS%V^wnY%Db8Jl0N)J(UhEFMl`e^)o;F>~#|HRzux=3aVP+Ug!_QY9 zjqCX@=rxFwi=C97)GVV~;Dc$nYFR`5b z6_+d<>u~ZW>Er>Hlm9MG_BotBB51uNEiIbU685>EscXlk-qg*%et}%pl^Poudblx7tx)59ZDf zrhM1|Z?k7_LP;p~c2i&FgSHq0zvMCvKF6m&UwM^6dTyUKy{Y6}r&8U`>v% zB1X8{vd%CXu70Vd`e#uZelFv+R5w?VEvk@ONc*AZm{p{&q%IlJZX!x5Y0?$5fu7m; z2H^a%3QPckMYP3}WKs52O7QL!e4y}I_GL=&em6c~{gsJDX+-mtMs&lnlJg^`mS!`(cZta4ol`(F!uxs={)}idTlaeTCkYj)ORReb9IVG)R45>v`5U+k)6;#=qB+_uWKNjH`0p{kTtx)9ZXqBV$b%CC9z*KTNk@q zCHAEwWwGbWVlR@#ULuQqku3J5ve;M1VqYbTJ;b*kB;9Asy#}^w=)V*VF~z?CpR_-a zsX+X?>gIV56?qTwciy9T9|~T^TJIr$X|hfy?(fh-6!%$~n?jw040XF=~puOdP~ufm<8h#$$sRI|o}?3@L?K-A!9=jmNB zv^kjis#k2LUef;>e0KvF1KbSU0TclXfhU2TKrPT=M2aUHm<9YDH~{<;;Q2s&`**|s z$>?GKh&S`e@UOc)p5b>GB^&;~Hr`A*#2%g*PwbxSWU>D*#+z8>0_LjNoc*ERunX8UB%>5FHk`Wyg@rH>ZnW%_2OuSDfD&h?j$IC=Zyh*^$ zxrPp+h9inMeP6PfddX{WqH^Fp;Bz1h)B>ra@w^V8FW>_f0Hr_`&~gm?0{APCV7#&B zH@nI3f1VyMzgcj-Z214$c!Tdx#EUlpG)G(fS_1LLDZhFB1)CC9!IL%s+klUOeZWt^ zpFlHQv;pxZEmnS0M`FJtFJ8RKA1{mje=*)HMMKPZlZQ`QTV#iE;tlhDeO2;xb$-L# zw`Hz6-Y|EG%vHx5=H4Q674e3N17xBi-Z1ebnW%_2O#E$))O}05Nx;szhBcywBZ@aW zpR<{INvE-Rei_gY_#1Ey-~*-ucLS?{-9XB?6i+u`1W*Wk47>;=7;mKU7WqwwmtpvK z-xAO8Q+%@F|7+t-^Z4=R-~EEUq2LMomu=d* zp1|DUGFP@~>v{rnPnWs!IBs1}U~ZDkm914;PhjG1q+rHGK(f}bw4T7kmt>;sQPO$> z6Yr6Ul1C-9p1?I+V%CseinS7vj21=K+QjmiyiPXlDVwoBjQF)2SPg6h-T`(4`+=W< zc9UT1KpwCZ*be*(oCr<#2Pp0ziM`Judv854p1p6M@^7+tY(&QPUG@4|6&hmNdl^1y z8=jAA@61~$c=7C=xi`pMwY@X<0-39}cjh*ixe9w{qJ}&yp1m`1lT1|DI};z0i57bw z8Zlk_r67B^rucBqo>VI7JHM{>UU53HyM4rAYY4ym`1+?pR}zj z;u<~kmI_`xqi1fO%vBpba|g&=wb3)Tjm%XTJrjR*cMa~Zl2MU4Jz$ZX5 z44^9z$@vc>{?j6+e*Z+QXSR5S;{RAZ{zr%2$7ocG+`6j0)o_Opc51rDWA9&hmc9@l zItH6H_{c=#2=06EkzvLW+@<3qml{W~--D0zG>%}?3m-YzID+k&d?a$?EOZQZEz*%_ z-_4kNyL_*u)ePBfs?dDx{=W+gd(B&$>cW_~v!jW?F`#cfF0J%&AMbB~f>9-gZXyabd19{~G-rqgln1b@%R-y4BP zfwzHLpcAxw7jP9|@sDyyi0|i~kNdFey5p1aeJvUobjQHL!(j4=ren;Eh)(ctpw}iD zbCcM>=mT!%Zl8$Gzgn-o~vg;PSIo z<>9fR=J;Y-?32U&L(MxX3r`C*KV4av?(0l4n!cEy6vyhtKx-&hx<5=p$Nk|u7769z zdtFQ5lN*4~fIon?5aD@19xxOz#`ie-T5Q}1TTX2mK8p3lZQ1M^&wsH!jqg-*lu#?N zg08-T~7QmCH&E&6$uk;DwU zRj2_^jAYG){7N&|4J>+ro)6Ey3_Q`#5W=hhQP3JQaKX=~8T z+7aduskWuPvtUbpg!0%vCjx^117$e}1pj-=at;Xo_m$-w5d0sh$`KI!A1e#{hy1&g zg{Ou5A1VveeHEn2v5QPwnwRB{l?>?tVd8>_ExmXL?tue807pZ5X8>0Kg@6w*;(^kh z;NG+mC&$;0^pt&#FsA}#RMyQYI$kNPjK?V5oYp)jTJ3BFydgbKGbCA!?Fs{5QSyE3v#I7O=bB@TwbOu zzmLn`P?d+Lh6miB}8O=!$<9s}y{ z6P=dEfO!5(>jtL(=20&W4$=KL+UzX(;NH7ocFD@fBf@`joP01jPCl5d94JLTnCz4f zCOhSW$sJX$7(OkO95){v_kbDxo%6vP?-e>hKKMdGif0G#J&+FZoeo?M%mF3$2QL^fiAD^pzAxUrBNFl@v!`NpbX*MfECDtEp8>xEJt4~DfJF6W=I?7rUyod+juLV5_w0NAFDtS7-b9u7+dQGf zVExI3c=kPT9dI}BB(MoM2 z#(ENdgIOFg){~NvCGk3tv7VG{TTe>1ttTbh){~M`^m>f-BnsIHtS9-nk>Y!x9%w!{#d8X9HZUCM56lN% z2fhQ2FG79<%mCg6o&q8%gmeC5%t!W-E0q3?T_IGUjMdy7`*^7zj-K_(^N|j7MIYnk zGqjP<%x6+wMYFnyW{EjSL*^qD^AU9mpxW4peWjR>e61`O^N}x=S%~?_K4l^1Bl}f_3PmL{A8{2!TK+iF^2d>uKaRBgPSWx_Nz3mfEx(hr{La#H zo{x;3BkXt4JV*!F4b%cHgDIY~fJwlWz-HhZpfPOjRN!J@H1H@e8%V_d>5DpIKHiG$ z{|bGC!WVVa)5t~lqG6|CaBwp6Q`Gq(8~G{f{E&_O6lH!0BR@r*9Oi~jQ74DJLZ>JL z4kq2FD3e2{uv3mf8mnqA+%42rG8~lv?~#qhloJl} z^&9%u97`S+_o9%(dL_)fSlfd3$&-=iWws-rkmEo8c5e$Mp$_egDb%+Hy=R;H`-bLP&IxkyVC_j{Rpt;|*B=gjOWm^_5U%g=qY zgwf0S`5h0Wc#451fYrd8z=yy=;9H>UgV=ix%mdZ|8gLx6JQ=tcXn=p{%Mi5xlip_g z*gu-#!A$rXFLxw*&5~CmEc??ePSa-5f0@&qj|Q8Q+UEGAO+sFlnA0%*0-5gUG)zBQ zraL+f)4%Xbjd64urmvFej!wh$0-3IM8s_H8T(#3Mw~NeGISn)GkxfC^2{}!V+iXs= z3Nh~uU>EQWPzxOO5bmP^ZGbUA39t$H0ciVhif16O9GD3h<9#V2e9Zf``u(gNUl9!* z`Lk%fDNUY+E}1D>6>&e2KPc*`--(Mtd_;`8)MmikKZ3-?5jHFA@Une=si1GD_h3HFW(sf2E$eL-opx zhMQ!+Eh2Zj{?VYLwIbfje45Y|7A0zPwEXM-pgvY&IKU`$3fe-p z5$n1sRKYFcx}l6qRFg8CEkFL3pS?g`#CDxIODHzeHSp|(A9>S$;A5Zi@k zFwDd!t@h4F9CO!te@rE-(JL$R{#e-)r$({2No+)1ncdjVUM#VKtxO#pMg4BJDUAv%wM!IrlSCz(HU$?&d`J-4M(1Vy z80$VMoey{2KFtr2=DsW)FYl;LfF|D`PZ z5AnYaXozVYwM*fDGw(1huGC^iQU1s5%O$p>|1rCb#CG&QX8&-z*%C+pV|J;;R{I}Q z7fMvM|1ouZPEh;bm6Ij^dznv@{V)HTME%dltx|D69V=kc$H#sB7=sviGtl>F~3K27#N*RVwWuY||H zv-I&Vs{#I(vf@9)|2m){rvKGGL*rkbX>p~Nh#x)v5&Lq9?dX48cN>ZA=zq-q0ohl? z_8t9?*`*R&?SD*NC{fk^$JB`uRqcOFy-=d6{Evyp3St8OH}D3#|84&}#y{X2;1|I4 zG{!if6L12M3;2Q6z!yL|)YJ>O7q}kypYy-%JpP?&@xSxhDgEzCpX7fp^J%jG}_|67iRnEp2tpR`)!JQ1sR^gm{Alh}^_$Lz%t+tL4+ zeY3=N^gm|zmDp4WA^z6^4Ke+%_C*^1ZZa*-(f^ozxx{w#KW4X)*pB|k z>>rSQMIwQt|1rB%Vypd+sS72l+W(k3QKG8-kEs_*RF(fR@mN7j!2bqbXZOGDD>427 z-vGY=t`{)I0iA#ofLy>2tOmXS(xKE|z`elrfX)9%$%^%E{re>D*D%p@brA+%pu9KC z9cs}2t+8W7Kb_ZuvA0lfP-kk;jy8eA5=6Nx9;3Azp6q+lhOD!J5Ahb0w{gn%{@vUsSVw!^5)GKJOL8*8-Sv z>?}ZRwJ$iNEH6V}LInqv<;%DnPeM`DU%=(~^^Mr&_@-4sy|S=>r~qH?QJi^NsNfG} zVY+VsiSPI8oOb;tvLkH)$*INdjgWc2GOCnw;0U=)-Pu?}4$)Qaz$v|W?p zxd0dm%m$VK{{U)$j{(wKJbhWeZ?c}+vghPP^i{VO`sy7=U%lh#t9KlI^^T*j-cI`J z?WC{XPWtK{S6|+16V=xhR~!1;0TcfoNQdZ72eN>Pz;a+NVCbuX`=R!d_FA`(j7FA6 z!9?wcs$ECvD?K?qDbxpsW!(?e$F?7eex8mw#`hKa*!Dy9vF(TIW7`kaCnb766uG?E z4;8(E%d#J;)jufBjXdhT3eDHVj)n7;ThuU)edNR7ml8nkV zXIpBP>UYR5jd<+q9Kxlt_)@f^Bx-N>&oC0>3)Q37BNo@gNEKrvzGUwT)xV=Gf0@hQ zR+c}&<=a%{;pw4zJUcJ;#lyow^+>=Jg?)4(4zvg{+(AE_Wj&nkbCXcE4&&e}kBa*T z3ni8ee?7%>8}JCQ4)_T81?U73d4Pn+L*FpE)Q;AqYE%9~lL=oT?o7NmrIr8-b2b6{VLkIBV)v;?vs&e30 zWnsFn7m4KZp*HDHxXKvgG|1SE{&xlj0ONosfV%<1e-pC*BDVh%8X*7Cn@IlZd|$|4 zo$m|zEAxF_{_2z;@>i$)kiR+%5*+JE%Byfx$vCT^4?gzrka-on)Ww}tucgpeticbfAP?eKI{HQF1 zLaLO7P{{Yn!gSvvl2Px$HiZny777X0?}6M80>?u{y@BDtt-vbaL4e~?1M|JDboI>R zNJIFU9_w~;>Cu1N-!yVP{7jGK`L4WGjI%(L@K&+N2i__c`M_JnA|H6GSmXn56^ncj zTg5ErNkCXl@T^=6|+#kLpCJVKo6xNb(5MA z##S*4b(2J`uu`#A#X?;mQQ>$}t)UF8XT)~Is5-Jm9X!U`e=CWHSF%h@I`7F6_AF&| zn19YF!*@A=`+>)S=YbILKJXUcdINiRff2wwAOw63^oHh-1`aPC)seMd&_WT9Fj|`V z(3H1uvHDV#7%JZfIaL3qvixN(M^uU}#>xk{{0&t(#Ja`#bjt`g>*Ms%D21=x$x4*yk zPrSc;y_86Qi;tkccSWvxSp6MA{hf0(%Ukd7U5DG>)X0?+@E^Wj3vs`a6mGyC7Ze@12L+-hJP2xxcdxx4#`D zS5Bb6e7&CHdZ7&b&S!)5`_d(``6%RRdNobu>s8vX=RDF)KaA^@Q~%~z zt~cF&J?H!-^>DA(LR>GDQK(WcH^I4=_w|eIACy!n_Z#?jQGXY>W%=HAxczMzxpD&f z=tpvm zBdhcy7aK=H`jPI&5j2GBImtM(LO+u3t0DRBx`=~N^fE`r+!;wy7s}BEbCUZAK4~{1 zN5k}6uXlXVi${0k0qI#dEsEJsFvb0(WTV?mKhaMAi%dsxet)O|f!&M{!S=xwum&*Q;yhynec7JlOt{ zcNKmwT09CiZ$MOCUm~Z01UMALx`m_%r08F)4d+DF^N6U2^whEbE|)9a)z{JI6wlPu zmo}b1U--PVwDH7yDV{aJW?(n)9Z(0fdmrl-z;(cU;C0|T;P?-))(tEL@_@+LM}M8; zm;QWaJn**{`RS-+3L=f&m5#c!XnUuzh(Z&M>~ zA73qczgB2VgBl%ggH~Epvz_Hh^LKuJ@=R*3M>MyAEpz@Va^87DoZKF#d=c%T-)-T* z>?@^a-Il~sjA=cDMM*Gj_prVI_m=BI4p~J4jy@VpL9(nr5*i!-A z1QY`=0Na2Ri1J(fHT=;*UyewVBiDao^8l<0nG4GU@7o4uo8F~*auVrwLl8m7#RjQejT2C z7qfg9kvv|kiznZjy$Q;9EY*js=KgwJm(-)R3S)TSmq6SDuWE%uLA zYLEAhZ~w%*Rq*24KXEUYxeoSE+!JN4gZ&ftXC!8c*gtVM%UqTH6LE=5RM|ff^JJpc z{#gZc&XVoFNM-+2RToiJBKCiV)&3E{mIJGSjles=Zs2ENKXB%kuzz4E;0Hbhn&67V zfo{NI+CPoU7W*H__Wx@<`>)ymZ@2&MiP(ROZ)E!qqm|m@=ft&t=G`iI@$8?um&;tW z{WJGOnX9&c=KhSNECKsx?q->*uzw~lk%14IK?Gsm#LXH_@o7T#B~bhjS;+fPQl!> zWv<#OnA=q5s-1$lpPiMEQ!sb6%vCrA6N_Y`!YP6 z>Nm4>hl%;qZhG3(xwFM#N>(E9tphd#9{?4=_dt_xF^|CCOYpZGm;@{Ws)06Iisxp) z3pCJQXwqOAKSJax@BBbAvF|T5U8QT)ztL5Ss7+f=OT<+MqFtt|bi^m^+HP@Og?Z-) zUOZP}?ol#V?JCUu{7lLG)vm(amt}4@GlQ?R&L5b2kIYrL3KK`lM1`v`v8PP5x(ch{ zk}j+Qw(iZY0RN4wSVRfE5?K)j!URT+lR8=);bTO%eZWt^pFp$kQar7Ivw)7kWZ*~O zVc<=mbr`>W0Xzas0ShW%S??7z$b0!>2ckF zd1ne+8EiO{B7h$au_zg(@9^Y{R+5)|S(|}un-+;$~ZNSMtq2UtfhL42kzB1qOH6Fqq#4T4o5^9SDqV*Qg6ZTtv3~4a_nLcK+q?$%S^NBg`>eny;1<9SECkj8&j3|G z>l*y#2XGs(0{9p>6IPH6G+=%brI+t4%5 zHuT^Z2gO;&&@<0A^vtsjJ@afs&%D?}PjbfGQnbs+C-cx?(|<0*CvDj&l2PSb{l~f` zi0M;hy48Q=EkVq^ROVWpCoF9VV(tkt*XlXAzmrEg>C~39qNw(Nc`~>E2u<=(E1OB) z@f+^<15W^}fj5BD1jzglj#G5xc465VQ)QTY(lUzF)qyNtR$$Mm~o zy45r*t@#ksvt_ztP-l93nXV4%%>DHwsh>+NzAFD{By-=ExvHSf%qIl%2t8pcfCHvoD9mjc6piNL+UET9ai22T1N^9Nuyuo6gt5$wj_h)*RnpFr9j>wcX^{&daW zSn)h{hB?)){=;+|*o276#uT9_63dM^T@;Ds#uT9_63dM#LQy1^8&iZLJ(fpJ5fG<0 z;+jUBcK<26#8+sVcCf9a`zV*NrrAv2Cey7hA*b2QeO%^R{XsS>=1!HlR%bAMn3)3v z^9arAx?^l+gB6>T7S~uc-%QD z)lfffi$o;}frw!l^V2}Yungl1L=4L?zCgsV4C4#fl7xUQNeIMF60k?mGCv)F2AjHU zjZfMvWNeAWW2R@xbgS`2#bc(QDATR>7Zs10{^JQ!W2`0^6_1%-D$^a~G1Kpt>FRjQ z+;K8@sWKijx3|ny#bah>2<8zwP8W~Oaf0WqJlf&THl>ai4l{QN z<`KHi4{0{n!I<+Y0^#>SJ=s2U?IJ;IH973GcV(9jn84 z>LZThe*0NXQ$4(nAA5hU_O7^UAg_5!HDN_+1<7mSQHjdy zvBrkH{(wwQK(o&U1_Os9ADWyD^6@75zz&uVd#Qbe$kE70r~O|x@(OpNO8X{7C@olj zRYW$!_eRAcA;6DL3&X#eh15QCa;1tB& zo1ipT<3yF#xKYHu|8g|OWMB|56?g!638)0N1Buu-C#tMJ-r-fbHI{uxtE$TLe^gby zNL9HhiK^-vm*HOfd#+}!0@+t`!B?LsjfEj`we5MWtm%a?OC_7 zMolfWWB$vg7VZ}E)M781uPt*+IdrMh)Pm_#W%_O_-TJ&|re7@6w_52HNMy`;4%1u6 z^qp3^^;QGZ_ah54^8acp-MS{s^tCd*)R(U6 zR8B4Arvv)_NaC-SOJAWcxuZGqOyCJ%HSi|zA#f1*7U=qyRL?cQJYXH50mnhhlYxr? z@(ucT81rv^STg-%CizFRax=PFHpyAmui6}E`o|_{+j@U^lWpmDlWpmDlWpmDlWpmD zlWpmDQ;L2qW8rxdMnkbRDcYeeOTXu%!KTWZA5D>5l%v^iyQI zqkk~H1{s-Q@Q(h$^tWWXqkk~{A(^iB59UskxoZDl?q6lD)j#y~J%j(+ce?WF^~kLv zv$9zGm1L*s@w?4w9z)D~0oVk*2Ye0u3LM`O^D|%|a0l=lum^A-i@6DKA8xq1Y+Bct^=A%+_8ruV7q=(9OKEZGp>|OoWK2#P{B#Y;cg7XiXfdSYMOY_ZXdaz~%^8tJsc+wg>nI_yusaO7)}zoq!X7T%Z7W0oVhi9-rzt1IP!4 z0z7y`#t(=2p7nVTyU6(WY~T^YK?LxZsK@b>1sF>m`&y@Z^l*`C2^ah|VZEfSwd7G$ zpqHduOY+T1>l4X;C!J`7s}SA4w~p@{ zZR7h!+xWiGHokAPjqe+6zIulZ=O>1o&EleP?LmNBHlDs*q9 zu2fq0e=&WkOkZT7%lp5Wd#TJVvT~*UU(7v0=9XBwcq9~AO{W8<)ogaDhD@$)dmVR* zjW5=a$pvxuDSq>FtQc}f8|0wC6ToWVP2fY|An+~FwJmZ`U@q_qaHRG)fb8+Hb&1&H ziuR^G{-@-d7JH1|YOoazHtq2-eA1d9Qrn|->lf3%Lc(L1uhkx-wi+<~6`5`|$*8Rc zOrImutyUSe)qv@_GJTcBh%2r0F{Ym?(?b@zJRf83?+2xRF12!{t?>)&hzY#Hs=Y}H#-Sy7QmT6Kj12091s9z0PBG;a6-FO&tIWO(K7~Vy*5^(dKEHzwPZ{`qOK+`2LzLzQ1OR@2}b7`)juN{+cbmzh;Z?uNm>( zasF0^2Alr$9zJPhNQ4XrDYY0w)clR<56JZ0R=Rb4gX!1H^sQEU1tb>Ln4U6yrnrlwR{Wah&;C|pK;8kD`umwmvCDqdhm)z011yjPV={Xa++gb zA*XSgziFKehxy-~zqvchj_?VZrG;vQb;Oy!F?YVqRnOm;J6h(d=WopIDRb5HH|Dx! zu44Yi#4mo4I;NPvF>$R-RLtL)SS%AQ^EX7nc=I=|;R;a$+kAuOZxbtRj(|D9{Eo13 z;A!9$pcL2vd<%R6v^*8#3UCwf2=Es01JD-+a2#M6KN6n5Z6)JBeie@xp$w%6;>_Qc zclrOr{B04*VoBJ{#GUsEJoT+mBXqX{F8Kzq7x)cGhdep}gMdCjL^lb?E5-b+RT)}% ze`ET~GToXl%kwwp-Xn9Z$+G%)`pGigYL8L#H>UrB{K&9& zt4T)9-Pyyqlj-ASddNbT^G)WSCv%rtxzhZNxkt;~6&5ZV zzS?>C^moH7qa$>l$}ers6Rdv+5$7}DM0`I5;krIPRhA2V>`|5reSD%U7y9^I zRZjZ&LRkoX;7&qpOQIh%{Y+Vy?kgb~-S(AD9}j&V(Z?e&)pfug;2>~3M0E}@1-J@e zeUw6r%HPA_=aHAwh4TN-LrbVYxnW6+mRZsJxAem?AA?QTh6U~WOtd(zeOR7HzK@z! zxm+Ld+<0(*#+(b1ATTez_t)a%8T=7z8J0(t*Ws$h{f>6$z=i25t}JXFD%hbaRA{8KOMGedC29HN zNXs8bTK+iF@;gb(?<6h1leGL!((*e?OY!prdIaq7sj%POJyJcjK&ze@lYm@cDzFl` z4`_ULs^?VTQeZsb2bKb#02_dK_HVu4SIhRlOt=5&n|c-_-+eCB)(pviY*P|O-b}q! zk&V2W((^0X$eSs*Du$)MLGU17Pu()q9E ze770ux30f5v#q~0!#K#C$dYWRnQi^0nQi^0nQi^0S&CkdM_=~m5KJ{keJ?+HzB>R7 zHs`x-@JSnkq|TU;mRcrjQTJDvewIu}ZYbeHKBkXTe>b|GIg8ne?% zx87gj+W#)otF3hFe3$9B%JfkTdNYMwFG5j~O!;jlZ=Of3?e_ymSQaAl|&i{Qrs=vrm|7d0X?Ns$U#9#V825$`a z&7@1UR~Y7;hggt&+08DWMiSgcB-d7Lum&dKy! zHuMp{JydeBVK$|fMusC>_^fRYN4D^lS=k-<<7U?z*2CDsM@@Y6J=^leYdZ`bd(ehX zz+Zt}La?f!%0ZuL*}k1r>zW1eI<7Y=)zT>bptuo5S4EUPL2n#cSG@R&8%x=~Dr!%M zNP8YvDWak6nYUfGl6dn=2~s6BZlx+0dS6w%Q3e6rQn zo`mB0PHNU?_vy`gSk){Ce;s|)}X^~Oo@JRyD5QM0ll&3do_`l!DA-=UB5w%PPCbhDw4DQLr7;BnwpAo1~| zb2;_DSXaw}hV=i6e{uiQsEOyjZSVhEX8+NKxxnMVt3U$w*o$f%JU?E?8)}dLC~sJN zm_p6k5Y(HsumSqW&-xeZV=y)Gxh*z*Y+j6AJ;^m;*1SrXJ5t^@K8(JL<^%{mv#cCK$gjx&BJ5 zwRsQW8(`r<;tOQS^!`%uK8fC+C*C)r_h*Rrjp_Z#;(Zf(f2??)Lhp|f?^E%f9|#-! z!h3BO<{z-sFU&t2s$ZCYI8?td|FETgVg6xD{lfgimimS1hb>t-%I$qIf1HMtfOI@q zX4ua1zu`U%5CY19oxon82GD@E=t4)JJ8%JT8ITLy1dIWUe7?c@T|@fqT|}k`{jO|) zei!HbFX?x^?ZW>V`h6Z>Wv1T+M{YSM8_#tD76HqFRls^+7qAuh14u!(k;VslsBe2 zhj^;-H@^H4i7a3I^;M7(v^k^%`~(4ZkeMqL(Ms4o7)mIMqlB_JN+^q?gfb^3lsPG( z%t;AlPD&_KDnXB$F~7Y^HjeN(X}!?RM(E&k;7{O0NU9Go40r&T4v5h$-g*Y~!(&^H zuZ9$JrJofODpTHX;uhN1Q}l+%jO(SM;jg?d8Xjqw{?|D_wb@VKx6sTLcPs42@&oBz zhm!r^W`yDfIxNE#Dm$bsFXQrq%JOAgj<0Pi>M!8(KUL+}WK>qKEbJdDLqv*QGd3BO z{h=(xFMN}XT5RO3ECGu;;U7XV!TLXQVM{}>HV0e_+zC7edHQheq96XNzUE!sD&fBg)!FKE#tw!;WQrL{!?s)=;J|HSuVzdN@cki z557~C(|GWMvJm6JkIF)f2UW^Kj0fMV3gz*j_BA2u%Z6bc9tZ%>0-J%afwmBj3oz_M zIUd{mxrmgo`%Z;FTa=((P5vB531xAVP!>lCWll;cb5cT?lM>3Dlu)KrLIU190^dBK zbn2gw{|~^?kkT2z6@U+T5-0>BVb^*7W%}=8Qp|<3b^krwEd~jU2T#4K_FrXuf&XGE zhMOVlsd-ChiRKl=YhDBPH>T*#a~_}Qet`5`6W?BHR#VX|lu7#=>AkeS(J}LJje?~Y z#If{(IF?=z$I=U&EWNfuPz$sgiTM*S2$&B{2EG9rUyD7Cz@@rIgc&ertF@24hp4rV_9(?auB@~JI@)B73 z2H-Q`51=hXcpi`k3(IO*$rlF?f)C#tV^UNrQTH3n-@Kr!$FumkuG=m1eR0StZZjpWmZx1X+v zTK3p1K{I_tRzKYS#U9nYR6OnMu+6>F{f!;wRz{FVJiP#&_TbU=gqd zI0>5m1%EC60cFQtk1^&;tH>3mOlDUI9Z-(q+#P#9q91npKG?2jL?7eji!^^r3$`ex zHTglloz$#7H=7=6Sq}aU-7+?>?VD)a%zT#H6WORJR$mUhsmuglLN%cSWy zg|>KFXp5(XiN#a*&2l{5i{@*~kjWW=qtq#$GJUE{cZ{b@zgVU_##5%Zkm-)`l`~0^b5%C*j$9z&v0bpaI80%aehNfryX9i(l6Do?7yV<0nQuqJir@)l+D_2U?09 zDMWxP_(fUH0j}UDWjP19f}d682yg`mwXrWA#`jqdC=2m@)*59YzR&urs!$Jb(F=2l ztoL|sq4l0P((=cVmOqZP{7%yHJ4ws$BrU&_wEWJ}a$fHlyj1wa3dFIkfCjiHV}As2 z5ikoF1$+ej1{@2UI|sN5m;yWp6a#Gk2zIJ`Lcd*@wgraYZi2`s3Y4>Q#WUA zbZrc8bDog$i3aBXU8#|GjMu#ri-_v+YEhm!UUf$ctm9R8+j!O8HePkNjaS`m<5hRt zc-7rDUUfIdtLO>+?YO4#80rujEam_Br2T{xEV1!wKGENh>5k(S(;t-Sj^h>6$I5ia z@rvnZ%XG)_is_AIx_Z1~?k7l;46#%w$1CQ(D05Zg6*K1uWvC*6uL z+XKcJdt9je5?&JO5of)xN1XM(9xavi7jXT`$b#GFJ)GA2dURCPjP=8BC|E5zD`hIhW+Olp;BKm4G z6Z)dy;iRwbarD(aj=s9b(N}jTeRX%zS9d3Ub$8O&e3DVeC5h@Q^AST|-$O6yGw{7< zAPcw&m*X{hem0!#GwUl3d{5qCjNAv3lejUcIgZVX^Uk8f!*Hdk~ z_;n}0Zs*sn{94YhrTn^{Uqk%5hF@3l>q>rI!LQ5tbt%6t=GR61x`1Cx_;o(N7V+yG ze$D6CS^PSaU-S5N3cpU`S0BHQ<=4^tI)Yz^@#|oI?a4jr#joe{YhQl7M7)9{A{6q8 zAwz@H-Rodku1))L-JW0mzB#qc5Vt1@ixXS=cFRB0g@*-5SVQX?zTHr~uPX*cUudw~Q{Qs$bxl0jr`e}Q>;G_)>sllc7vir`v(cV{ zs+Blt$k5^qga5>K-y12=P~k7nFRQ|;M31)u-nwNqXeoW`JH3|PWYzd*w{Ye43g))R z*x0DBH17zz^`T|bnhY$K^w{hiV z2XosD(u$!a4A6z8xAu){7;4OFBZNHBH8IJ#Rf80*N{ZjA<8bPr;EwF#mct+;trtEH zyL!~M!K}I-JG9d<(ifDI$-tt%Um&6fY1=g#WKtu2n1uJ2PMrQS- z#xQ6Zbp-~W!j~n3U#6e@h;cF`5bVI=otTF`UTPYikn^J=;XPb9Is{;H~h_u5eB7;q&0|#3XIWD=zqo+qZfGSXplE zg`?o$T$g`qQh?teHdgjT11Lh#&nDJnymnC|th(ZF^Fh8ExOs8mZd@F?=!P)uFQ+io z65ZHRxLt2kah8@-ypTS@znP1`l%rMQR|Q4FuAbJ`F9RmTF%{4o)AsrLbIYN;o69kly>>KxOnM$gRxQhC*?O8oil0 ztz)p5nwwlql#Gqd{l9meo*}5o%-HNYBmAl$<&fa=n#O9T2m&MW5d?bNF9(5+Pf`#d zy~0m4I6UpS!raX@7Tg+yS9-sO&ePwoz9_C*L@IitA?m$iQ(oyQU1DI_BnSu1GxaS9y4R3V5pn-Wm)_7@vwMGLufOeTj5Z z?Vnxknx1l2X}HmcJ!duXj9rG)T-iAVRhZ6+^tBx-kiRZtjGtB6#on5+Ptgg1an)N2 zdx1zFinF$Ar$NnIy!aUon80k0D`U=J%&yrg=0M~;5M<0b6UVlA*Nb!3^N)XO)35{@ z@UHRCUgMhH&G3NdF{cjl1=s`VN}IiPe5LIBey=Cn>x#-IUhW(5HW}I)e_2wF_UZ&O zz_fsOWiWSTAa|92_A0bw8RqaoT%j~6n}(iMIa*t8QW|P(6wF$^SDIop&4Z=|3VWhO!D4Ec|Lvpzzlk*PrF%sKgSc)u+t&>ZgpaSo zdLBIkf+}7f^e)fV=0;UazZ4Kvr7qD>iXUsAp+k4$RX-GN5xHDn{c>$^IUGx&Fcb8y zLfn~?qg{Lm4TMAr>FYwlh4dO&*cGo}rUnb?9f(`C=ke>SbTUrTek?}&YjCu_W%-yU z6w`MUC%K9WGeOQ+TTFin-_9s}9%>Z6PjT(J`$)_1{fxpA6d*OCU{+i_7VP?#t3*A8 zs7I{V;98Br=?d8t7hfWC#xRF$5S%8(g;YVd;N(zC+aoy=XGcyv9~mMV*%>EN7tnP5 zs(L{N3c|@g0L#(*;sW7ggSl%E3 zf@ooeZ$ihPffyT!K0lf>0U0GU#V0CM_#3LqFf#?r6e zx?IC?-#?gDg|z6HB@_`Wa162Kqo9b0!FrgMYbMUzil(>2`$zD8J>FC7E5Ums&I}qi zZTh4<7mt@M5DaL%tU{1n=LOT2k8dfYGL(?LP)sc@tib_vh*HyhVKmuj1%{N&;)PTO z)8@tc9Icly?chSHgGVKLgUAp*$?(;&Bo)30hY_71Br)k8Na7S!ZYG5-v7}Q_PVGkT zch3{Or;wHhE?u44n2-0D-Y{w0-^Scz#8orDfG*JV-8^ZbRPF)PLRr{6{53NQ@I$Tg zT`uj-$C4nUoZ=1IT@X^^c7~9K8&S6|kX7rS?RMo|jR}DZCsEp%7IY(gx(E5{?;@#H z<7|xlyNtO~Yg}%#_eX@g+CVYY4X;>8tU*EkSl@E1knYa`ILC3iyMk>L>_LGL)S|f% z)bIFc3aSdrBL(Hu19a^r6k*_e!|lRY+qovuVpU5WQoE}A}m{J5!>Aqf5VSGk95 z@z&C41b?AFfvmcTNyS-*v_Jb%Co|T%U#jwV!9~v#7u6@2s1M`W z$vuqmOw?XQ)o$@t(;r=)(h!zaO_%#oyHC1YwQ;#UMaZ4tzxYQv7sQ=~!j+;e>qTKb z{sq0&k|UvYEzr8fC?}Dm=)D&08zZ-`8>xME`MNY*KzEFY&SSJO+}9L|*~YV@+gO~n zy}sod(Z*IN40yK&bGHU^%Mpo^$ZpCZQnMSs&gGDa4)Te5y!--3(Q|v}Mxl4-qjwuY zkb4)&C+?N|mj>->LjG0aPaHM4V|HhbB{>M z(r}3-cu%P$`@<@f)ch1Wn% z)QR2rEZka`k7o$mshqG{+9sR?m)k2Y_pqpt!jyIwgpPp}=Pu)hX4Uj@=k-NHIa#TO zRo1}4%%)yL7tgK1kQhWC`1=87#ebDrN;&WuQcERyCfwdC(cW+82vL%^*SFNf!T0%K zwJhH&DITQ39IDYWOuebu`viMA*j!rQvO*kr07sIcAL3CA0aw4=OmVsJa>$!{;iGdo zj7I!vhwM+oI9@DXcPz}vDPABR1-w<%h$^EK>8Kh*Xd7PMq2o28aliVLTp1hP{)6rE zF3DJ%>n?mhW6l!PAI;mrJeR*V-CoD)NF7H_ABU?7J8YCqp>;d@i;Go@ixq(w@U95v zu0R58Mpk6P%+e$4bznt;k0mNyhJwnD6mTtFI}3-Abj~>%Lyxtj6-xXXnL5|6cexRc z>Rp}`>GJ#BWm#Z*?~ZluW*p7f$YSVbz1GT@{D+ti@g6mOs+B*>;7@cF=dOg8nsOSA zvVeDK(7QC?T?|psm`Z0a7Shz^bRJleoL1Ji)T4KM6jah2)jBXy>>dj%YlLEJ>?V&9 z<5R6{Z@t*w)~`D{F?&njiQFRxK{U84Fis<zFEyTEr_4jH`&~QLpkm=9Ly_?aI-`pncnha^|i9?|K~7_Vk9>EMqf? z;1YmL!Z+GfHu9#^5nVLZVnP=@kwzx|D@1^YjU5ftSCij0P zr=_#taO+NtV**>eb4a5i@{sJ)F-UC-xH=n{ov zxNvJQoyUpheR8)>_lPmW-6v~%#vIy)jhrSk7w6;T?U=q6S>jAPt{^{{n;%$6%}46f zC|F4EKwY7|_bVSt#(T^scWDKfbrXfke!cT|q9bOYQp2O(y%X|6Teq5R)jRSkN<>E} z)^U1Zc4QG3Zmm2ES1$JMqWG`nAqfa(&7mcOtU0(6W{119`)E?>b&FiW{UCCQVw@T^ zKPxCF8N+(}QEPaZz*;oL1`p2Ig=@6H`!;x=H~GeKk##098br!@WP} z@dTj<8Kb@u@aAlUz_q0`&Bu-yh=sJP=f)nPz@?zj2&88uRme!%a`dBH2~<^@;LQZD z@@1~1ICn4N1&Z__Fp{fSAM~ydcth5Bp#^h8gS7SMU=7B*1`9U<@2ZH#Xt+TgdVn~d z>ktb;D@eh5z}d}0_Q=GL|<83kW z%-LT)8ftlNmQahx_(eSZ>d57N6{^+c-9(IVx?jK+Y11wG+d_!53z#H!QJ!1Xr+MC~ z!5ZCjV4PL7yuc^u@~^$al)rbcs7sgsXDC7#4Q8zmWW|*K`H)E*`9H#SsN{dBCsm-7 ze;X7>Vdy;l5Rw8i#z8^K%i%IBlWh=G75EHB-Y{(VoWhrS#0MTe|a~k?E9Ir@jxp=UOq`) z4yy?I_266D9I*<{8o|eo`v)y^Rnxmyuu|8j zdRh<4duH7p;v2ZsF0<+GmsVW zAYEsW`}RTFr;sTY7sR+$t*vB!IgMubo6;`Ms?hGnM@a;cC4@U>SR^j_D@`f0>NMCc zO&Fn^Y(b5dSH!<{{ybbq@Y^NC{|9s=_|>;seP7pyTtA1}I&BE|r4E9E4F~#RxwuYL z@q(zrSneVFke3% zw}k(Kb_8?lg8e+17rD!7Q)yKM|E0)H+Edo2SA%L{<#oXv6^# z3ygd6tn!G}zUcbI`p}hF(zDkWXmEY+(!Ez(`+7&!7bRbGuWwprKN6B%JbHX5P&}pFlVU|aJPEhVprfr+67C)eBAqyLmj|=T16idM*AY2r zogSIHw-mW}nzkQ3qb16$tr%A#Rf6b~O%j zic+oJMMIFc3MzHy6zA@wBu9Im15zmH4IxdzwUObi(S9RAW^MPs-3U>Q29)Bgo!XbU zjez&a#M3nVvKFp|B}Vhch`)RwjA8p!VGJ$I^<1mGxAdhwJE*;GOFvrC#T2D(%S9wi zUbdXx7&mdR2=_<1HX2Rq<8@DKqFst}!U)xr$kqAFQna@az44Yp3yd6IG{7CWJPq-t z?5k9KOwLBr>H;~QRY@Z5oUJ!2vdk=uU)aCJe}y0AU9LOwdf~{w-GW|`AHZ(;Vi=C= zv}$UExcudw%mMDQgQ*xt>S)+TF*WlC9@fxP(P!$Z=(D$OOJDA@9v&9b1;{yV@c|hG zYNL$|bZvLGc3K9-Z>(UZl~trBNAj}4qJlTlEO!rd|85akkF1JblB}7C>0M2I%jKe< zM^i1dgo?qx%HP|S*N@VWMv!iwEceuO@gXa%&j9x{@d2#^Ioyh}jOJS)4@d+jLn~Fm zekp-Q;n!$}hzl$g7kFVxwlcg;?Z^XC4G`^U9e3>>kkchb^s5!!Vp*LC%I$#2eMUa@-w*Ch=z$XZns>^hf)m~w?6JW05;(y%CeKb>wC_V(p_DKm87O$`6hNp>h%fz|Rr{Qgp ze6g1qPmy2eA-~3rJz98JhYh;XQ56Oz-RGgqT8ku-UUwg_HvQOO7ACu%J~{5G&4OMH z>0F;I&$RZqRTqTm_*~ntvoHG&>^*I{0(zu1d+dLr#${>RO5AWj9#7jFr>9m9N5r9{ zA032oRMWe?SRc&X+{fEu+EH35N-NLNDX)N%>}}E8yD!6kKe_qzeeeB1XFR8$v2Pjz z{Ty`16>b*H-S^&i$+`OixpRWvIk+AXZ!v0^b~Jq+BR+HKJ_HzzBFNr9sC^Z|+=@W% zUW&v)PCO|dXd=*PS}(+ufHyywl^@8$y;O&WY^OfJi#kDG2BlUsptLDP=mh0%Q|t%$Ux9ooWk2R{-=T?L_=mYZ`2I`1(E6mki8 zTcCyh+i@eRm(Ypa;jCL7`@dJcIkah6Xb@pH|;ekHJ$XL1W&19P}zs5a@?} zVl5EwlXEL@g+O*1*H{tAaaXcJ*b*|cJP6BuvRY)&BW@6`TMa7C3TX?!7HeCO6j#Vn zkOi_2BOt_$Z5|=f@U%>?hf;*B7MWZ1BP_Wq5J$pi<8axRspwDg^C52wa3mQ<4|)6{z4f zatCh_`YU=_l=&V`#y+;cimT&7;0j&Pu341qLtRF@O0>5o{!aTp;Nj?rTN{tH1+j{^ z`)LdVTPE68@$_95FJQ64SkRjS8U@@IF0s#|0_TQMV>|Ts54(sKGZ)aq){3 ze8hN<``=T|_~Wk{h^-g1SFAe*wdnbrZ9b1svKRpbE1$*=ov&{&e4rScpJ>BP_NGJi zzQG5Gw-r0nkap@_rZEs_>h~R<#hG&AgyCcu#-Io2aIE|s?OkNHmqsV$ItV3nCtwuT zozp)%&6PKS_CW9eJ_B(Gs&)6dDDBpq9&b;lZP^w1*mLEYcqvE8iH)%4XzYnhLWBIZ zNz;?Cer!;DB@|6vw^20p7}Sq^Nvlqa!&6rE7B9X`Mh;jFqo~kc$9qUX%mLD{kY1s= z(Hr=ZTYG|dxw|>lr}Z4Cm_H0CzyvfMLXw1agJC4baE@e670{DRc?zF zbvqx^M)aqNe|D|wRxBc5=VuM=XQ*Lm;$E@MUATYpd>jc%FIOHSDjQD{me^;)>JLFe zA}?_Ht$9Hj8VJ|O1Zman5yb89SHa>^9q&8#y+cG~A z^2O2}3`m#nZSn~uU%7t}@Vc5q*lmbA4bz9}EiWnLmM@Ln@-Ehv8!Vq^dyJMJ8mqhZ zba&Y|7%b|NZ=t!Bb_}lCXG+?PdhcyvP5H+=UL;-&D5Cp5of$^9=Yn0c>;(a18M2c9b5Skwdo0!lX*qc(7^ymAAI;fwv~dvzRsh`DC{O0~V}E&1 zUInP&Rrv}W$KALz?Ks@e#e2-sTWQV2dxVk>T0QP_;(U3q@t604o1c0;%Lr~L;@wPH zKJD~)7h|DY8S+GY!#-@D4YcFi+gOrEe_IUFc85g{ODpD-!$xi}p|6-T{DVtLN=e#A zmT9|)V5)GC=4{$I;ON6haaIeh6F$;3(_DSP-CT6*%Ik#c+n6&BDISp?Df@sLaoMY| z?hYLkdH=*iKkI3e&!3dTaP}fLt$=hVlUj+f=BF_cp+yD@kx!`N7wy8DfjI!r{lgvo zTkCtge_*=XU)ye4D{N-Ss?nbK6$wMiK_m>=9iyF232v4fd1Q{ZANS;ORhp|*X)~n@ zOZ^d+=+4oKSZe4B!ay$V`=qo{pOMYy9$?Z#(fv%RBE@*C&*!A|hTG*Dz8@_lY%DXN zJ#;--VUAYH%#>`F?<@KT?F39hML$;IWb@9EXn@ooT|d}cK9^6yk2yd$=nxe2C$8XO z#T9%1$kvV(b!M!^4ORLQ7JO2>C~|dZSUWp%_4&-yHF&0Iy*c{m>m&B>7a+%?2!Jae zGG$qTdnf1#Ms{8SrSwK5vH7bpN;g8~k?$I89wkggeAl1|#h8WF)2Ouo??+uUX4<$> zd1EHPOwoUp{TS8nqUxVQmAKQ55wC>m*(=qlQJwhW6rJOvKf{TT$eOfvQc+XKWNxbK%_$x+K9OtN5iT8$V2fPB= z_P;hN!5Sq}^7@fNje35S4emZYzZ!w}qx3!8x-0P?A^*<3r19o3{Q zj1DpVNJBzhcsy+ffZmHPJls8)GUc?>g$L)L=H+*5`p79mO5D{-qvhtzN8x5KN)zQL z!_}JeZKG9B&Ec!(>pap?-6s{&zSK}AEUBq-I?10{cvOYBL>S_@2FZq&3#G&rPVeu} zMX~K~QQHrwEi$NVL;iw3-~TZ%KAU_I`5VMLkLM855&7F1Jpy^Ik@9-R%bOV~Z*IK2 z9DeF}`6njH+4cydUzS1gFCEt$3orP7wsa{yefhfO*v@~=Ayz9`Ghl$tr;gc(d?~#6 zs}&a8LrjLQv06v41PMIj%Z#u;?)3Z^HZY`i>P+~6y{w(A8yZ}nO;>C%BEPtOT{n|i z@xOZh;E6d93TVq8l+S*Sp zn0m0>_hbDkW_C~Wf%em~)SbSZOnLuGvs}IVMX9^|+jPa?D)Wea+g>6Qid_&h8TG%! zvXm){y!#Md=`^$EaCtnIoecPAHWJr4JOE}l? zDXQ6IKuyQz2`prh*73R8rnS;DNh2f?eJbj-Kg_;DDu~bdwZHG6{Z?X|m}|ccdx8!; zg2KK1wu`IC+HWKI>~+IAq@y}a>(B4M2=v2zDgGbTF@3WjQsyElGiJZ_Jt43km`e2z z_aCigw#Z1mV_T3ABQX`HT$396*Fc6$hQ$F>{)SA+HsbJatPnFGJ|#O$zv@mRBQaYE zdoX3D79#eBG5QLhN*RmMB53Ws)751}>jmym|$> zlf9t2rL_!Q(BGU6dE1}R5twzyr=?tm;-S@LD12S7?r+W(5IX`FVhX#qE$dieM__5F zA|yQmF-n?(*JJj}M;pa{X^lt~NBNjfBUXLS3B?M2+SQZD3}}e9SKO8FpB)=)?D!?J z8Vo_?_xeLtA2Su4jZA6&r1ccY%1or}1^TVjDx{k!KA(JNt#2|+4#WYnrI-3ZN(Qng zpiAuX&&5Lc3{rny#mMoQ%$q(111405;zpwi;!U_kWNT0M4HiKA_?p2V{azKyUwHc3 zZFbA2w;%zpMXOIKGY{hiSNqa0)78&1i5f&iHhmbg-?JimZQ{pkgK2bi3ihf#!k+q; zeo%bom^ewmFEZNO`3{Uv8gbtPKN|QbK!hJMzTvn!af}`@t#4)P1kY9GYXj9-3jA$f zvsKz5FE{_QSStbS>s4{|#GZ-y=dAy+Oa`CcyTXdx41*{8fw6kCcgU4TJ_aml*b!c4OHkxn_@vyhHjtA_MsgiDC;f-=P=th+JI*Ijcri*gGF){4wEwB4y~(0|_xC)hFxSaucd|LM zy)7T(gOSw-zW+OWihSl!gp;xJlMVYfbEeF8_WNx9z_JqSBiDYj_RFE0WPah+KaO29 zbVRav{?j);Z43H-v>^CL|D7A{zkQuQZwIUo9WSij`l!mRvrb5>xB8>E0>2)n27bMS zt~IvEs(8HkLGFCV`(M?YIPKqd%u?t{?!nB|mbnSgcTgZxSa4_UgGgP8nyad5iGZ zOfT&|cQ#U64;JQHmHDPlfbrA#ccoQkPy0?pKorHbSdMlIBDBTbh}k(Nhqh;qvS+o$ z2>gN^5l!p)jH@CrDk6Nu``EfG3}fpmlFc&HEajPLIt)4}-6=)6Be zy&ara*dl^a9{I|X|Ma&a<9jUs%-sCh`XW|d*Nqj)xw0CHKue`r^N%{v5tV}Q@R?Zd0@$l6nm-tqGV6}E_g+}ZfK{JY#5*^{tu zG>_0Ly1s7h_cN)i{%ZEJ4HKQ-mENtpPhWeOY-2ezspvXkcye0*>~GEXTe^485p0m{ z8amt>`cqRgp2r*>%&+K>a4XQ5sS!i}CkhzflyfOi5kudCq%K&O$Iu_{svn+o7VBVn zk!7*wYj0QaoVQ>KD4QRy7u%mhN$f3nL6`I0-h#OR-DPo}eyRzpuS8qQ*D|+Fa{LE~4SugT&a|Ej)2>7nHMlL5|tQypNWOLUnT0CH5# z_rOIjYB%_8egwZ8M=*f02xfPKZ#W#Pl0Bh4JO4R2QQjqI&qRTD4~uZl4uJXeMehEp z-cZ+Sx%n@}wcKKgjPI}7%frSMT|I!IqDuu(snvhaL+EOt9nzy>NZbCmEbM=bmfPGu z`GZ@ve?eR%s&nPAA{f|N|8$9&_Na`}ohyeAmUDrtMsT`zp@6I!M*M)l%FJFO6+?X4 zDN07&c3|;&ZO8CIY!wfSK;0?99$N4)*MVrP4@*@Qk*Xs4r}xmnKCkOoK$*JXek}9v z<%jX)w!QkOO1Sc(I~qH5e!c54&70UXNsGm+xx&=n70^i@A9y?=fm2Qq+ic3N1O+h1 zJjDFJVVtatHpy=y`SKeVKo5fWlG0Kt?(^&Nb4}GkX%Oc~WJuufYya+bEGk^{UvjQn zj>QuBP0pg|$I7zq7x?%iKCUWXTEKDx%ep;k+5W$Dk3^X`9+nE=QuN~rvxQ13ZDz_X z(VYFYSlKk!cV+nv-Y694XW5l`WBCp3Ka+Ni)B(sePBo6uB+Waz4d?=7}Cj)JBSA(fpPRV{P zd6uhXp0sHlUvXsXd7zD?CrnlQmhtt3P`-)JIRqbpJyNoaacKG9$eJVJIY&xpC!5~k z5XUO4#{+V@MXLoLcSwhjYA_nx8Z**{bd&sMKN^dBsAfy7(w89C zO;nL38*c0TG#ngtEhE7U;rKRSRyf>VmVRUwq{{d{fON%l*^Q+9TQ;?dczfa>Q7tj= zH_&h#73a`U;_b01*9y=UPqt@I49T{hIV*$u81pc+1aS#Xqb9-@dO4X#^wqv_J6U)v zezdBn;RX76q|AN_aAg26SRyaYl42u3B??ppkOcUm-0ICktBxzazS_bSKRU7q3-%}i zVOx3LlCJEhTHpXFH>aRvP>}i8JkcecHhKr;b`GpMjto63hcLDDjj$d1g%d;0)BXvipl~iig*n$+SGLw;lA~1aw zrV>eD6E{ z2;6BrPCF<^D6Uz7k&v3|A(|Rq6f5GMEbM|H4_s0 zONZ^?SFXL4rLTWLC00unF6q%;CMKrW*>$m7UL36u)M2L|1o%+A{eXGgHLl_8>5J z@UZsKyDUd*w?;>W5@-Def&69%=Q{UtR8I~qs!Z!c(H z<{ZtGTJ|!VshcFrm`sCY0alxoX;KUb+8Sgzh%Bob7J-=j6PZcP##owCfbjH8!TMpD z2FX;}-A8UQp^^`d6-^~M>YvnnwU?$j+dRXH*z3AP>e6)Ev zeEJZO(4c?fphRk{fHVk5rHE@KXR3f`(3;wKTmPi|-W8R$hpV)BP9^vT4=+JU6?iy> z(vy0-`^e=h6!Tvcv#Mbu1<)L+auBtpWX#VrEoBouSZ!2#2v)rnE0GJy0O16p%DfMm z=+BidM_SttP2`pra=ms;55#7nfWk<#m?(H+T7*tmEGay(`qAvRqlJai zMj;l$Cd8^VPeVf`md%lF5`I8sN37qFYm=-T(KwIhtE`iPrYEahp+os|w0znqy~#;* z%3w9pX=pa|x0e?P>{x}3h*L&D2qG4U)A2wwHf-Q+{gd*0m)e6tzL)H0bsZy>nl4_2 z?mnkk0W8!qWzsUTAM)g|dLPQ609TFZr}Biie%OGSB)xWnnXj>UW$n`?tqhMHEjMr0E|AuWAcw9;jyrJGCo z64F8^Nnb=-`kv%HkF<2GWfXcgY2g&=FL5SmVVCrSa?&EaNKs-KX`!6JpF~=0;>k6W zE=x#a;#KEOn_N@F^#t-X`ie_V_mQn9&8SISe7VH9o;Z10V&b&PS58Vyoluh+e_?Jo zXFEU26VF+uA4#~{rrl9?(_MEIJS!)l^%hR1W1O__AKf^FT|$5BGQtQxGLlFfgR{sZ z7DsSAL+YFIWokpuWJ#*^o1qh+WdSs`bEKO{EkBQ9Vk64Y#Z2xD@BPI zZpaoxX>d#oUl{1butmjiwF(bnxHd-&B`abmkpx@KP#$zalk`*6wyHroBnjHviZ$v) zQr{BVhb*?=IFTGjty>jI>abFI(mP1y1VHmksn@5#_uNWP^o10oH&h~g0INr zC8Py8k;!qS^U0*O=l41(P&LG7+p+NNcH5Bzo9HyxqmCVmGqO#TSC6p7DrXi}WQ6RR9w+>>>R{&2 zZRrvH5Mrl;OB8rx-K>ow{52zRKOuvSRb^IXwwVKA{;KlzuJ%x0RRy zg?0?3>3w>Bo0vMLy5uDLYBR~g?5Qw8VI(LoXFu?2o9Ew{8I=3#VbLu-3LiOtxxm8q zvgQ9K1}pUlzKK)|mZl(WF0G)*C^Q`_#-T@X>V))yzR{w zpGqz(>CsnAkMhr8W0&cVhKF_5Y`r}!2zufF7!r;j+gh*lRsbq~GxIj5;zi?6!mNpT zon&!ra9B;0pZV~O$1604;{KLIB2aYEJIFi%r~7X?9^iMdmsGgI~Rd86h82Kf_)~ty4_~$VYGh z5bd*OCEU@6>dxXvM-*0?rfV<0k{FCm|*f3Q}*58c{m)epG(-}#rXo`O%T|HMtQyN713k|!mtha%x zuOKar`w*PllY-0_2zKh`ka28c-H%toEBSmkxK^40Obje5;a*kY81wS6%00W)5UlUv z4A(tSi9M)X<0u^E)bcz%C{BzEVM z7#;48rqciyn}cQ~DoKw&FEwdeaGRC)*KP>=TYbl+V(-pf&hhkZ_B7h#8qsO?u?8wR zP-3g)Plh1+xWXl_b+d#CHF6bsWBI~##lpsl1<<93`??~7^=10#*E@t>=HX+6JN?}E zWt#gC{XRckF~6~59#DR(J}30Zy{mq`N#a;Z2_nj+?8$E|pG({-bHb+(UjmQHT_lhK z8+yGt4kL`a`7BLu`Vg8H9GFeh`j#0G^zj3{YLtF6A5ftuV?p9~q~)G8vF8?(9)DKt zWr-{T$Mqc^P8*Td^p`_|j3XUb|Eih0%t5O2yUZ){ie->drH#a)B;=;lrNHCm3tMYY zW|#t9=Gw?J0uHi!SY*Qp5muj`eR5V zBl%WtS~iRQ-!E5gBp%vzytf@u^!8dn{oHEUJxox4HU_rwLcC^B;A`1Qd^Xs)m6W$aQRu#|D#{g^VoNy znlWPIWYrJ-KLgs*zj;4xK_2=q3+caO_FetcMdo*#Rl-CAiH5q5#~c%{BD=~g{2YB4 zGenbEH21Z6?8eRf@aGD=-JclWZ~XecUb#7%WaWn*qXK#?vB25%h|VV*ey2zAyEwY9ob`h z*M(#jK74JT>zk9|{E_*93FSqt=?=-djg5TvJ_woDnI9Y|tP|V4(|o}FJoHtF%d1Y) zxvxH|K(WUox*t}8cl5B$)i4QCpZ)_s@cHq7MaF}1G9KKq9OG-7kzh@E& zQ}lnuvc?J`v6-N=TN5^k5@yyD3X5UL(yw)j1c=oaQ_w=#G+7q#2bV0DHv=@^NW`_@QTa{ zY5}jqVRw|+EQAtTH$?&u6`5}MrFWmSDEsEANxx760sRU;M*ANF0}0F1jKDVG9x#zU z!Dl+nZ!Et<$x;YeJW6+w)1!2=ctbEN*#cdR!EX5h?U-!lOmu!64p$>M32)8i*cu_jsXjjoWba>yZs#rfNy^5vN ziUmRV*8bFwluL$8^#VG~3UkY3AHKDGMWwk1OAr864uo$drwiZu-rhZArCrbcaXpB4 zXt`vk`6*h(Pn!G6wTxUdSjkqtPFzhxt4eDR7X-g8=5s{{1}YD$>4q|gE|G_Jd5|yd z6PeG-ez>E=VQF4u1|zihnQqfeB|}SU_mFIJf^0{MOUo?H0-qlTZ}8xD?k>|dwV$O1 zTx7f0Nq6xdOW1DL@HaL8fatapL5+-EW&Z7+sO=q>#2y{!D&BKwvbaHfV={R*e+~g2 zcS))#cCgItaevatpWAQNuW*ItOoutA+T_Xvj3ubSgz!%Hvg~f{%mhAwKQjxyzGKJle~_#)6v!b;x&L7l`ayQB z5~w1H@~YWeLrU)_`$CcutbxScReUxi;KYE`tD#JuQ8k19l){YHXdhZjLS zu&3We*<7$oiTN{+!9@^rd9V`=yY90Z2#kI86Ram4y$1sNVUKNyju(|OTs*KGVcMoW z<}I-E-xIr`IbG3=mEeX1XIOMFlO1C=ITOv_kb-5iPJ4bcQ5j^eT)m{RdNC%1cd8Kg zb#bNny=IfJh5q6^^AvMGYtNXrcfA?1&TJsvXJO{#jyll2-xh9lc6K}%C-LlVfv2o18#+&d6fRQEy zP$~0Dp7UG{K*I!aMN}q_Z6-!e@qE8`d9r-db@^QW$$ChVkHH)}OCH?(`W;yUlqMG4 zSTJ{ZQNZp!UD2TtZson#NE)Su+GjQlhVxVULw$2m_>4X}{FKQ2aHsuCtI`RNc>Q0xe1i^FU)Sb@L7~x5ZRR?A#Rb!>BJ&{W_#kF|Ob2|;k}@2^ zvgjp-dx^P(E`boC4E~kW3;}sXerWGcqU{}|_IfPB_EsFE8)6MD8d~02+gH#%jC}@` z=3ZJwt!fO`$ZakOG@k89OR}W!T+ot?@5=&Ad50u#!v)4*#DFdY>@*+ATovP){WIKf zV&>Sw(-<}OcTG8eg5m@`SAfte8tSMv4S{woV%?fs`C>;4%p*QGx4e^kguEA7{hZCWN*v|}>}68c^Ln#; z&77iDd)RcJpDAhWP{r~B`%32qhHe4a$}3HmodlwUK)dz?{X91O{Ce#3e)@TheYaBUmMPJbB6p%C4s;pOArJVB zIw+p5pF6Qcg%o^l@MSPTLtwA;k6Mm2twow9^!tm;WC;ZsMp;-U>C%*w?9+{V5)?$h z2l5++ZZegRQ7-7J)mPEg_DJs~&Rshyo?4%KF?v9EMOMU9X9 zM=e41h2SnqsT%`Y8{8;cglXq*>%<<>0J=_Wb)tzTOmILOL=Epl2}ge{W!cj4#L zW1pF>@cEb!56f;&EL(QZa2XSoW)GiH*?qc_aB}$heUuy3s>H$1H~piQBTaiqIcr8=m zOm#C`an@6F(k#-o`eiCV%dD%t+5BUJp8&5nFOx==?4t0-y>=-vfA}(?n?j?L(b34( zWxThp0nRbYGISfz>mefE{zSpvyOcD$bQkZ(kDf5SCNci>$JTyl zz?ABoiAnbWLf!jb&ioNGNahND)4+aN&nHHo z(ek197FTICyC!k6-^R@YDj>4u>PM-~0iVU;E&$hA04UyNcj+9h<`weYY|T_0_;*_v zk)bW^UniSAFI{D7qaSWgmv81kAozcYgFKjOdHS&)!HjW>JR$({M<>F`N^^=U1p#6q zfHi~z+zXT*pUd2nnjCyhxM%e4ADEy7t;3Yz>)ZB~7&$QuVDB9g=d_8)McKPN0v3zydv+34w`bWbyX0BKPl!FU;Bk$C-|?D7o7O|C5lK8 zA@A9duZr(6{)I>Kc?T?YGyj(JIluXQr|9`6m-k6^0X^SvFDyNq-IJ%Me+Iir_LFs_ zTYBE-p!xb8kC{jHQ1`;pv#)z{^lZdxiO}<>@))7#d*~@glT%z35qho-zaHejhV=YR z`1K<~pec{}s`UKOzwk)bIp7FAf5c{k9QkBE`tNYOA$~Ri*w52Fk2@AN8{N;yDbYQW z=1EK-OgQ8m{lfTZDpR8|N6eoub}^16?rD$uS*?kh0j!MnMLotN_G1y50jx&JIVimi zN)};t-YaKHD%xZ?Z9hy#YQspab*`Z%IhkkrafpqY(P-Vv)_;AMl0Ufz(1^LC31d9~ z;i}>gj1a?Ly(~S`>YHRvclGzKG)x!ByUYQY77|6Cek1dKmd1RNIbj_PKZ5ia`=C7Te1Wn?K2=SQftMrz3Qd z;{2K!nk!FO zRplEczdE6M*x4)YnoKq4%F5SaYG{t6ozK-j%{@Eh*q}MYlXaA@V{Jw~m1|ix(Ht+K zR@*Nk$W4!*v0?<|uk5_imv|^jPeS1EReT38GuMDQ{%ex2qM>E|RW&Ae!PqNy-@`og z8grL#L^P(_eUw|V z?{uN#Ycevh(4h+(r_<4`KX%5f_^QCl54kqc#*1{fXrAF=oQA#-o%kByaje~rki<>Q#wm+(kcx?iddZAZ~%CO z;qd|BenJVoU~!hlKX}>6iFmPR(JI-MYo&I`wQ;E}kycr$b*-xNu<=&C`$4Q# z0aR+s#yrb$%YoiBKO&%gElM(rc=DwXyV`GhoIkN|WiVP`y>fgJUR8O)sI^m6oyh4N zs3uy_L25w%&XuCNC#kpll1G_Qr(|iwETO}R`)00SkZUx zTv@6EdgXPpCsoW>yKC85#a4c{We*=A&g%+pYw0a!u=xRn$c>01SWE~u>Ru>k62D3G z1F^UxCb8fj>RW%Z(EOQfOabY@X#Pc!Y}?1@P8Rb8k#E}8*oow%ND4=0z+uLUQnA>_)1w+Fs+0M8hy~G&Q~FD41P8 z9-SiA%6dyg^{lR@Xam1BdV!DiD3%_^tmPtVVAjGoG7n-T`tgntwOi5yNXO&#mkkf* zhdGBN>D`h^&d()H2E*Q8Z19u6`M~|f+)I!y(7+>QjXm05^0M>+3?RE`M7hqOmB*MY z2_@2-0$FnWpnr@E@!9G5AG)``SuW!;=C?z#rvi+&1aA?;y;T(X8+#=ZCzQ9&B2;3l z&Tzlrg)Ac{Yxk3>Z^gy{ePiCDG<+KEhqgZ<7Z6DP_i?GK7;K2ZEmt^B68*I@(`VTL zc=58yJA<6ZYvHlP%M%he3oNw4)tOjJ`i$BM(fBZqehP7wjXO)?3USd&rQmRENHC!09&gI~ptI zlc6A8Jzs%)eqD}v{z=NnR4g?U$-|k^KjDgu#9xW@8% zneqp;_+LWM#`2po6%Uwi@}iZWd3**SFLlkDtHenKBP;pEyTg9Z#l`_P+N^Nl&hsmdNH2{S*G& z9pz7%zYa0aHFk~VojDzjQ^^rtwSPO{m7C6H$?$$9R)){^GJFCr>W4_|epcQ@N(b;l ze5xC8b~ILNlo?_SY-UP{ldgo2L+Jt=|BH23D88NU1LB^%L7v&>zeTM)#8a_ZeN;BxStaLUW#uxEaXvDvcYdN;vt1L&D(Y3hQ zSxHC$F2k=Kv{Uk!Y3d{w(Urnjw8w(L%JL5qnFjd;9pp&N7Bf2G(LZMpSe>lsOMKxj zq7@wl4s|Vp4lVew%?d)1>}N}i16m4_+ES#ajrSb_^TPeviwb`uPz4R`v%or8}I{|Z*t=3gz^ou%Iv8{ z?!VzhI%$qLK9M+>yL@*cDayXojZjw)m!=4TY(NsDh$ZWPrpFlwWIt1F@1c7u!g}iu_SEP%MMv-pj zd(27hW46E6DLQp797Ctx4V1NNd(w&}WMoNH?VUE#!h=BoZX_*Af?+GMp7ivqr=K&K zaD!gwW{n?=x1WUiH)lA#cWxNZSCbOYR}wTvNV$BR#Pco1Lz@~V@qAx>LyYtwp09k( zF47r9ipM)HMEcoDv_)- z2ip>4zmY@KPNshlR2|F*TseiuHn&^%{ky`>)n>_N{;2Q%&;S9(D_&Ka77Ow}O#VS| zm+1FZy`(+xAz|*eP=~Q62B_B8gJw8u)Z3$jM+EZ+TDQ&hrJ=};YYszkpxB{IBj z*_l1a+MxPaW{&=)-CDupjnzeStH$BY6~Hoc-nVqKk9|0ThZIK*{l{M)sUNMYMxZxQ zjuTvJjPX*UDe0b!rXIGpM1 zpHwj%OxcdcQsmPVX)WW$$DlB}v2Y^(C5^!g%Jo;WnS%(+4aaWp2=@$>%w zdc|TJ_{?(a8x_>oY=L*6zSE^Xf99kyTF17^zhH;U-{+9X8tCEMF8{7N@h?qR2+8ttdPgHPQded@X$;%MglJJQoiO>Lx3 zzA~}P?PwuN9QA}p>?%3iwL5m3y*qm3mGQ--Km9#>4YA0> z#ut(E4a4v2PS-SWaj*vjt3W2PAEehp}c&~c?r)4?J$e!s(r};7>v7eL9q^ap> zd@eaVR#d`B-L0A)A*(K(=3x$_gG7~VlHydPeR-O`&hk9_neE=xPBWTn2`DQrxu-Esoyf~E%-{1E5qY^2?IbAB{$h** zw*CK(wqJHfb_i{@(ZPd@V%#AwJ^Qo|t!4ihhux;JRwrZ_T2acqaGO(`JzG<)2u1YP z$Z>*>?m2U0E3JQ~ka%EyWzZ{%5wqUtIZ|`Nu0l^XfYWI-9%rXH9plQrs(-JLOpTSC z0F=GHHZI{qLTsEetJxCLVI7M_razc~?H^HnL(hE{THDUFFi#dsub)KewbSPZ8OMZQIMonimU%>xi#ZBQHNJsv_(5H+ zlXuzish;>)*=h~9iNmnQ4hPNHRMzhIdYkORW_#b*r9k@qUNcB%ZL z)vd0)z_gMsl)WA$^kXQp^t-_3h>;xnMd|J8+eaJa_LvhWZ(!HDrA2){{uTkk+t|@ue=cD-wvO5SPMU*ysD&!;iv?M)$*nNXs_gM zSJ7=rSF|)%G$W-fI;_>8L2J`Qzm(I5e=iY9UaevKIz0OUvSHcQYBZncbvoRaNXbq? z+Vdap@tQDiA}nu;rr;cbXx~irI++!i{j+*o&orwW=gL4{v9^8<0f^RukaR)w6AJRm z;_q4)V@dXg{sn)tQsg(STKPY`Jfbf~>v*yw0r!?U0v7PswTa+~>~Y;k+qBdQey2GD z5#r!J$n|t!L{aQJ#(bbh_7`W$*XqDireKQzDTfxK(Nl1Kft~K82@=|B zR@yXdD>6qw1m3gK)z=(A8Xa$yLCt9>gMQ!`QwB0FO1QokkzP>;{SvxPG!tO25AGzr z7JEeug88KLoy&;ypIHCpJO#RfqAR*q4VMCFAt4AzTtM0ST*eHOJRt)3yyhTW*K!mce`FIh26b%@rjVA8(X z(9oejs$}5EqiuI*XdxbUVC%R$wrI~;H1ZYc%A%gHW{H!_@4NBDY2%F5`p zJ?uk85xr=-eE>T-i9|RhVvDSjel7}%SR`Z{Uf5XB{#ZQB$jMY-rFXy?Nbiq$48n{Y zokkqH^r)Q&&IArO;IX=7G?q;AyL zBKiKsNEE9v8-FTbskKamm$ShlxQ~P$#lE+PLYiW;nm_)pmS?#g1 zC-+}iz8`6GgeDX4;D1MmKid(8=tVBGmMzEqu#Fkqq)s-RV_Voxn3QM)%wU*h5#~&1 zFx(x*45ma!J-L>{GQ2V?cEg=3h1MNr8a5g`*75Li-_fQ4GGy^~G>3jw670&TEOG$of6%Sh8< z{WNtq}j!?_NQ^|3&PO%JM z+dLLG(P%v!)cu^=iqfiO|NgGs>MjqGPvU{lp2l*HG&p4w4_d}16+^M`7P{1 zb2_6|(6GK4ZL!>sCF4>DSM%6$>HQYo2+i6urF9g^h>75WF5?1l%*LfS_SlU`Zn{`l zp)DL(UGns21w*S#i|d&hQb1p~`vOOPNv3F?rJ!gkhza_05m&WRB>b@AJ+PvL!H((Z zz~|i?1w4f&w0~RakG)fxDV-|>rx>tP0-lAjs?>TOGt-IcvI8q3)Y9T9I8%5_*Z}o0 zSX|`1d`9tL$$>yv!m)u^!V)&EOuJQ4`?cwczC_He#`+c_H&$S)L1t+XhFNv#({C4G zlMQ@E$ZP(esMCN{k(! zOIgxf#<6od-t|9=@$T|J{m%p(k+|cTiq)p1uMfajvAW6}fTihL zCSy7|T>!?(FfvEIJ`fPkrWQQ-N84y9JUfm@7||J=0ji2AMhI560*`cA)@T@ zZ8dXYGy;`0Pl>Y4b_o2MBjCXtU`8cU)fWt7a{%iQc)r;;)!i{Y8(=>NxQVp)30TV7 z-?n{2!uAQbwz*(>1X{^;WerAmiR>#?gYhb~J1(!}&=EyfR^h-D8=`f#_(i9jp2vnb z2z( zPm)n2#$h@|W`wgq$%yd~P@C4ZEEw#|$_TDgyxCW~IS$%*>7dApeM+{qbtGD_^H zJPfD@Fl2NpfJ&`?JCA@?1MSS)Q8A3O+DlvaleYSKz&9*#%pQ!+FM$8`w)OSowCpL5_dq#3+V;U2cgTxJAHE+N0DeW6%w#MHFd$FjF+YZ2g}{X20$&ZIgew z?IZH>4VtA;c?H2>*q78`8JQ{nqSA1GndKEzf8`-Q(EAWLtzAgo&(zn=R zA8G@we{20aejeoze;%cNOQAoF^3>?)X_SgTL7R%?({B}2nO?Uz8%f%I2Yy?x>1prQ z>Z6&TixSQyr}z*}`(q-^bF4r2vzWl9 z`^c>4=lysS=p*xxmCl%atAoVL@=L7p2C}@yJ(vA;Q$m*gy!teP%fZzWhCq}d9_X6IrJgMhg z7Lks~PYyj)pWUymjO%CAWjxx5IaxctBf&7L%wmt|6PlI|^bF6wKC9`u@qLjN;?B{@ zHaqcgIB)Pq{Z?xA#hXiWDxkb`)i19n0>!aWRFxWVecT9oh95KnNh5?y;*HA3N7aO0XYZ&kAD{nZ;MEavourFnd!$R zM)r$}SKRlv+7N>N_OX7=?r-V`C>i(+Ylp7KRdmtG(wiYKs;0aP4+8|-!U2G=$6fPC zw8vd0PthKy_~y620{vC`BjoQQaz^B@AMd>U4ImwnKhA%u?0?U9IiA^n>zjn1l5QxZ zH^u%PZocGn;kc8>)D~ti(QOKU_`T)$|L`})aZB$wxn)AfrjydT#_BFn3ZEkcp9i(7 z$?$jFGNJ&?O}6JE6tMGqlpdo_t~~i+(wvPqF5BMm=<8@b%~hejZ<4QXwASZ3*qgu0 zS08J|W^wEn<1 zmPj^#0qZ(>iVCN*U!wCRm;VBr|88=)Y0GVSGQ0fI`5x`lcu-yG-Aoy@2xc;8+x+27 zPx`Orf1dis+4>I%>)(4v>ra}#)N2*s8^6tN@mAG`KEy4HBs2~m0*gW_3BED<>VDe60ZjhyMX~Qu`r;rf(Y4I1%?{_Q5q!yiBhEiyS0z&Kdb}wS_fpr&5y?=#r`uAZws}7Jroa=j z3KTJ^Vpmt!%3(=Dm9b|2E&VO-F+-iW$4XKyk|^lzQxy2T3aHS{M1vmw{^Ceeyu8Nc zCum3g)rH-1tt-(8M%X{CM)Qm5&r4G-pUh7=@{FT9bcRQ}u86Y;2P1Yf9^%l)pWEqM)Xpw%sCWo&bXbWXq!BVJuMeEHjL&qM-$~w z-P;QfOe8*eb^jMWd9|@=ByUzVoW^fK)TZDWO)08xEh92%M!wa*^+ls5v?YV)xKtE2*E$k{X*%;>)UrLH>Jr(IJTv zPPZLQd7R8FBUxlW%j!fs#S18ge~?yeIX{+~&C7I?d>)f-kao#+h?$Haaq!cX=_Y9i zcFbl>t|WtD0zgH^De=> zDkR(3^Zmiuk8vf`wTPG@>B}Dm5A^}Nn5B1+LHM$O?~jo7WLZLb`h>(4)32N~%^!F` zUUThHrf)0DKS%c2q(&zzvkI4+dAs|Jv#ltnPIvnw_LHcWVTIBd`XHz$n2ItCiOJN@ zA{TT+(SK2WzIjT4EK-P8XU;exsomh+MS)J=NHSYL#`CjWnVtWkF#m!)`6KdD5>lAyM5Ne@DF%I1l*lHnXX-u@S*3mHDy;6~jev#Jw)zzG_EB0V_m*zG>jECLC4_Ze%6zK(e-yxg1B*1zu1VO-4{&14y@^ z$o%7O9;|4{P_=~bn_-ej_6pLMpEqrCP0gh6@CzzzyZCbG?fC8CTWP6N=I|v;Px^tC z=E^A`d3+SfPapJ1x^s+7|UGIc|e3b7*3 zv2?qG3e;NN(p}pNHO#=;fgFLn`8Njwge~P+42KRWqKom z(>o&Jy(Cj8PNOZsKKNCZIK9CO;a|8Qn74c@{?(kg)EN@>-5WgE@9bCkab&%4Tg!!V9&e;nFDH)*&2RV9wNJVi za@c8_e{TQI;4e6R*)_aR?^h;UCV>z2-}0Z;e^k8wVOoC@%-GGK2%gpYncr!y z`$vQ2M2pE47L$m$i9P_Ir$T({I|fMnleNonNMxHe@#7a+#JP3f7;)~;IO7JpjaV6L zB?`vc-(3PNIYlAcdym;)_lfq%Xdp;M|K>M83pUNac;BatHu72;X9}<13XR9tw@9$X z`S)e_q@cgkzJG@8L%O%VJe<{}r~1a4wC*P1H~I&B`X55tg>fBw+w5-&rxxFhK2ZubXL9bnJg;H`3=GFg*n^A>LQ0#sCtxO7Qdq-_%RyqFu{KQ z^%%kKNz-z)V6wZ<0;{|JwNSSTbegt?o)D4St^YAL94^ zJ~8~dZ_LK8!sB338{Mx(&~^Q5Rs`RjAm=G@bSnj2FMnU#3KEuN z4fj}*WpUTj@BRorJHy}K^oh~$sm2hY+mhJ?>j4f7jNDgq#8z;1{M~T3MOHe9mA^F+ z{C0v~#c}k?BIs@2l{#F1U3B|Rmzl{}Gf4OT&mh}sM$>n@5^6!i&|8{UZRZoDd8*zC`I9Terk#(k5gsJu*jcEMwAQI4i zomqI7(7rPwTW)Z?>Ml=Tk>^5S3dHdDkH zg{qbwmxc7$nepzF-hn7fSE_8F8KO@ZFLdjcERg7E{1T(F?_@Co*dBe=owofb7>mzs z{~12NEs5dN%m^#^%*es#^ljtw?k}?NS^l5lb6^~w!498gIru!VZEi#fE;`d-8Md}?#QA~uQLOExHIz8y=M%c5{J(n4B)BJM$LNj7f^`{QzJwF zHiYSj5V=6U2mWXHjgR9u^*T$h)!-LL>Emy16Q$en&p89h%6HX&hR<_*#OT#pXYtvB zeH+K;;%(!zYc@Vt{b%@`633^~;gdw3w!xsr|F+an+Xs5&^?#|JmDr;D6yLC44{7I? z?*5t6X70jVugjcHi#Hvkue;3mzs18L?qS?fJoI%B_Z-awSE7=e_`1jP@THFWUFMME zc=)$_7;ridZSLU*^6;{I__;hh>mHt#hbP^`W_e&qNsB)03?A-x59iARP1G-cl?N;g zeMpSNi+Qc!awV_ZYb7;E-u+lo7fNb^r0$T^d6N2@q`055%RF!Qqp?ZNQQda% zvkYl+ej?39$U4e)nMZHK2J7zAqWfq{*+=s$UZ}zF9YH*kSwKCeb@!nA+Ba(CowzPE z5-i+|+dk!XgrY>viJ2y;eoQ7aQ}Qpg`QdOP(;#m!7>mqj&qeYp+z`!Agsu~9bE-0# zagzT6o4-KvH_01XRbn2G=2y5aw@Uq`lHZaolQ~K9m)ZQV58BHc@Gmt#jpkRlWtyLL zlRc-LC@Uvo*3O?1=qO#$=`ed;EpMo0&ne&1od`gkb)`SfS8^?;>CLxp#WcN=&Q{mb z0w##^2|$S`mn86C7J^(~^0qlY>qOE*L%CA<2c(6)lCB~x%$M{?(ialma{QzjH3>~z zK7sISnwmIynoCTZeB~syPa^i2xF!P!qmi5Et@--kExvbI`QLR^Fh16I94G#p=H+{U z>2?I)ooW)hef_Q~JHmTgX{OxH7w)1F0H`S4lazJEW<6Xc=f;^xtTsp7B37r{>UP0w z$T|e<;ub$v65&A0?vw5{43fSx&*Lu@rpV;&{TkBKPP4QSqujRdq-gub>U?Oy@_n}7 zK*8^`UBX_$e5jpAIejIq%#<%=-=nmx!#u)nmQ3|(>4;|6zhdCqNl=URTYMXY?H>Ch z*p7Z8K;3=H=#6y6{iH22i4qcZ_vvTf7V_3lk&^RbQ>0HhmgQD{>Y&zcK*p&>^i(0& zzZVL*CPJ>qZuaET`OzI@^YnV0w4Wa>A${89X+*rbV%pUSOGHb*>!S4gkK|)%uRuP$ zWK2Npy<{{%)f~wvp`n3f%)E}a9za9lZM99^MVl&;u~vMV>Jhgwoad0uw{;$AD;r@e zXwQA zm3j40B?)%f1GLD^_N~C9QGIVZ`fbnyD49PSo03~wEd-d4%B)T z$T+oJe|Z{5gY7RjNEIqX+Fw?a&C}~W(!Rg6k}jXY0@-wl5O70T< zKJxXKYN(nc8LjDvWGrr=t?#F^+iLsEOE?{@WGnz8+FzEE&9}9g^fYN!*hpz#tiRaa zBBI-6mT-dBjxVPNrP}_|_?78V(<7jV=w0b8w!aLeQr}-rfoM5YdG^K#RhqAdDjV>F z#wEZ~r5Oi=rONd{SgJ^WSxqKSll7#PCgJ|=2t7PCEIk$y%+u22_@F#XkLSKJJtigs zdU$GBdJLpePmiM@S`IxPZ;a4m-3`!VH4}h*^jL!1!_wnQAVPXpGA%yW3?fHqY|Ic-oFx0s3Z6_m`p{0Zyc3)kj>B!)T6IB{Iw|{Ig%~S!mkk ze(IXtVFs|Z(yA8DZ(jlCv7z|abDe6b2_tZ?HV=@06T2qFX}`yM2JLk3F;m8YNq3+A zc0`^=K8XXh`Ck1j%g9_Y+i(Gm5+k6yPp2K~M+scRI9{hS^1Cr3?FR3Hbd#i5yqazP z_scKkRnJWMY>ecj`Fo2tgj$XL0Ate&qcNJoYRF{SjMmES2LfB!>!@qsUt zztX+DetR18l(wj)SPOk}BsW1L1AE}68)@gBIqkGP`C}XiR&rNdA8+G)viUYHByGpO zD{3%!BJH~~Y+qf+aUiL?wVE+lmRErBcH}oD8~@N!4Q*toG~Y)cm=&_yttanu=4ShW zAu}+6Wh=)LouWw$^#a~!n&dU}E2-KHgD9>~F!7PHMRe|bCNjTLxDDLiZU?-jX^6B5 zw`X2qSjS|uu4NcVAq=;PbJUJ`yhyAdr_?P?Sxs6e8yDj|*QtjS2L4!i`0H1qmuO8f zeP&air=6vT`34NOv=c-eInuHTH<;VLI!EWW!))(c%abF#quOp((r8n{zEJ_2_;fba z?wjMO)^QV5dxV1WQteJW69LtJ2$ZE7b338iX7YNvB{I2mgI@Xl;jI?`A_~M2a^=A` z{I{$ZboUuxHBe_gn(L2zKCxC}ON%c?rujJ2UFPQikjx{^COy>Yvsq)<|})? zelDs1Y@C+eYne30Ip$~ZjYg_tJ{x~3x_21v92jV;8)R`kP4cKBJ@$p6J&K#2Nk8LC zJ0en=%1?g(8ur9IbRYYfMoVi_Q`O%ZtE2TgU&qiMwTCLyr4gu&mZFafR3FjVLkntl zJ+^rhrX{+SB1>|CGXS#{$g22?EklzvyUF3vp9#IkN+y}RStK^t;(uUs*c#Y3L?x1? zM~!4TB!@+V06$q|`AYd7kXc+_y#>+i4Jo#NB`PB0=~vZ9YhZx(sqlP--NWj-S9hP) zs)WQ(G^$0SQjg#owAUsB?fQbzt+Buthm1BUtxi`HMQ0H3WfRsV|&Qs zHhl#KuiTV!d`R`-ll{9eU4PB&-#OUWZvZURWFHx3=d##m%QVeRR~!oId&;|0?8Pe|cp~ z*_Y``q+9Mc)0+Q+;+~`Q{jRbmf~6sROA2XYdarw+VW0)1(R>t663?IKMnbCJ?RJ^uHw;l zozmOk!(2+p%ZDp)g9Lmy1}Li@g%AD6==pFCY0rmIq&**okq-F~Qa|F}cJ}wADE$|E z`j3?UF_5S2^betbDZ$EUA;79Ddhr;c|HmKbW5JYzWLhKRW~I3fxl%J?%5IsAykbI} z(w;B#NawdIvh`Vel>Q4m{l`jwI*g|s=ua&jG5Y_3#|SMRw2uW- zN`(XBC8{*XAZkH>l2La?bjK{_JEi+S86ez{DO zh?`n_GtLXfEiwL)B{%ENWvCteq4vz-Cl3?v8#hGMXqdpt->OQdOmEpiYq zb&408`0eiAMvRs%KgkiHf9flc+eoO*2pwMkNsJDEvyYw*PuWMM!y}|4ba;SAD{tl= zlA5(H?KQR?FaHsh*A|M?@p3R_FF%^69njaM+|dR(01o`oZ;4iQlYw4{1Pl~6 zzmvm@rivV{n_{ zxYdL%)-M_xPNF4g{oSZXSG6l;hVYgEiVMv{@3^j{a+owXEY{To!l^Gbf4RbHaKV0d zu$1sCSr(Bo9uaChhqPVusBRwGyLb*P7PJWE&*+pHW@`yinye@tCnz<^@5Uw}vNFd-!Qw8gFfX`&)MU{T0$<~j!w_wDDxIZ2%x<~-fMO#c)rzGU& z>YDp$-8Zy#{+MsEHc7CdNiSTcP5P7di_HXD3K3W1T+-?nn>vAbjsIuuse?({9&Lzg zRCk{twmqi`IyB%eQKn&g1_kXo?E%_T0o2&w*zzg3KDh7Kwx=N0p3y-2_KYR{|3iCz z2W|7T=Q!J*=`6TOd;W56tUcopM$4blU(udfK!xqO0&hvso@1l{+`E=P{ebrE89;g) z?TM~0;}z!&ABKi5isD^1?HzuR`S~B)3Stbl`f;Di!2bE_>sgI3CQ2u9zdBoWwx!h> zU=m-1Y4}H|UUe}`yk~fl&Blka-NO5^1I9`GgHUuJW##S9d*S^E+`@mKqHX77qFaZV zNnY<4o=bWg^ku#J%>PUJOoq|9^ywp~NSPix67>h+IEgNNdn+Vb{$MtVKAG%EH2)z; zl%%Y@B>DiCLqMY6Pmapp0y28~EF!%P`b6bVhm0=sAdclg0)MgDOW^lx6{r>0`BCaq-?k1@$5hG+@{ot&688<{=hB%tJ_0Tk0VP@j9hewKHqWEcr1SB}_V2|Z zeYSc3S-$gL`@Io1k9{?%rL1$L=E^VT5wm5$9a$=I1!`E#Vt-u~_{GNM^DlAZa@Bi8 zL+>L%4*`^#sjF)p=0sjchU=l1c-bBOYp61s+<9g9Se*{bjc1?YV;7QW+{1IoqZ0C?0*j*d~)dVc#aaV`^ z={$~FLZNHX6X2v|f^N_ey#Xy#%>h31!O(oggn?HOn5(Y;<5Vo|YZ}DTg3RwSXQliXAbyTL2 zWh5;+A>AY?8z-muG0l01#?R3xBR2F6rHK2n?o-)qUemY!$&pe}O>wIKCONaT#eBV! zo;uOT-}y|zM%F)hnu49;P%Jnb@!Zn076}~72eX$xA3NPYzdc63Us;?ga>X`d3$^c& zO1Q`01*XxU--!OZNZ2ANWxI?0{zPp|JDV-!mb)@HNb@_tO;efL5y z#3%h0DvTp{ULige_l>>b@oRtt`tCF`dHJm*9T80(DJ?xFe+7E%$MJ*6%r`YMhaMyM z4C%4+Oe}dQlZJr(vG4iEObM*K%m&Zgp_0S2P9;26t{wH@{dK`-%#M0x_3nKJ5 zhfJOx7m&_FkGhTydWvfNQik#6tW)IguuiZahQ%&<_Y>J2wTO>FysE8rRH=qaw4+Me zc2r62L`N;2^CR-P&RRR%b;sg4BYEr4y8^8d?UL8(^Rd%Q-S_X=@5R^46e`poVYn+l zBW)T4Zez?-6NJX>Ov|WO0e#FZr-|-9BMHLB`pxX|G9vT`ln`P3P88pC8?6M~=1<#P zi~$zDQsG5Et!n5e@D?~DX|}cvvrtE5mpXGe&W5HTWFtPo<8{z zwQ4a0$=PgyD$}Eq-Oq#Nt9<reWEw*53OIr}y^0c(2E!AM74U&>*^C&9SXsM=3b=IU7 zZK|=2=J)-cJ2N}GNszvLe$W5^`8|O0H{ z{R1jL{>v}K(vD}60RDo(1VWd+7m3fZwv*n=M~(Hgt-QscO3J;SU*#c z))DCug)|0_zTwstRICkbGm!*n9*{!u;9^L@MWk_;qJbqd-sTtuH(N9W=%YJOaGDgH zMx@IW(%9fu-hx}viQhsJpf(_d9v(ML!O5iYC#Au0L1}(1W1iai}^b(vu45jNsOF zxHVOsWFawCzl{Y?9j@RaW`9A^h{J{*ZcSAmeb|&(fF`lvBvr>maw?<=c&-t*rmDYd zAu(0&z6}Nc93E(h#L3JarD&WP+{#;1)puAl1ZX>GcoI|{V=Sw8J}+vD4>k_q)>QQ+ z77|nSl`MGna0MS@_69{GAsFPXsp>bjni31pXIXHJs$(MMDWr+Ptu44URsCZNiK+U# zOHptu#`8lY-p=fJMdPesBX3PrmsvCf=!c-;8Ngu0c#8GaBO>wH>ef{CObclpDf?LP z&BGO3#O#L^jYQ)yR--wc*kVd7Kv%Qi6H;&*kxCTOq+la&O;!KOLK2{XB`EmW(Zfib zOd97a8s`Lqyfsz5#-brW&7k4YrQiXa9@F*bMB;OUTX}1$dVz%`Kz@X~ zRWv3CxANAs>PCx(039ww!5ai=9g#kGRwVumd^K)ORl6)C0eT2Xq2aSTe1n6i13NDp`2hiQ=F$(EI_-fpms=muY5}@w_smD8{)MF%Y=)Xl}4mfJuntDFp zA|OC_vDADiwS`CzDx{0xsBvrRnO`Dgca3T%&}Bd}mf9ZttrT*xc~Bp#4D3^^RfBi2 zRV7=d?4GRDE=iTWs9dhHY(t%4y~@LQ@{Q>6L52@TSO`B51mu3_WsX&w!39vbegU53 z5sIz(YS+x@)4q&ba}J}rMlVtVg4uJ84e!oKyv0NC(vV_~Lh~^I(LV=XhMfRigXNC; zHW&I43`qZm$+sGiVqJq{%p%}&ti*ZpcMzvS9Eg9DG$AYFTM(x-jBi5RoGaa1QtoqW zpLee{#-cAA7?*Hqiwgcn$0a2Fa$Le~NE<-h_n1oWZVtnku;1MuP8$!{hk*Ak;M*P_ zm+*^UjZ2t^@Hxa+0@qyDRrA$s`*@chSeDruzj=RvAJO=f@osw~pOWXOn};y?&vTwO z8vB{XG4|kIy25J~q5-KLU2EDS%es08RE}wnncCO|YA*ffDwSKFB#$LBftIi5D2fgz z?JB-uElLgsV_C@R8?5NEAIq3qLo&w0{Hgz=tjyp=4j;bK6dXWfjc?eEy70t8MwGMl z1fKQH)n^;*7^#ijPy@bqpi=SF5Cz5V8enr)4H{fgXgoo#)(X31O;*7vYy%w6t|^E| z1wu3>)V5OOTu@Wsidw3I-3Zv8DVS!NY7kgsufkfNEES63N98m;On|p{tH%OvMkd}& zLA9cdLma*FX=&JO^0>|6dl}vciWh)r0`b`#G_l5JeBt#oO14hVU-d;D&8nzbj$m%7W#gacu(>8yBA`z|dT41}f{Gs#<;!?`MD@ zjOQUPmIs&xh?6(I%H;;cX$@?Pvk+%hu`;J1&dOvw4smyFRY^suyR?`K`R?jsUq#vS z%2Kz+xnXpgTKB4UuZ+m8Df@z3iy~tO81nvy1a1-PSdqeWH1Y!UxH+_ae$46-EEaH? z$!wYG7wyxwU$bf)@%Py9J7=5t%T5J9k@y}P{w53m;#0vtoA{|V{45Lq4OaN4@jq7N z#|o4szlHzEso;yw_So<{XIb)}3jXOLzYTwrg@5s>;A1-l^4svUEc`dJPeK0iB7d(< zehdGRQ^B81{5>}O&g(7tPX+%Bk>7^D$-=+*RPav|`EB@F7XBMpB>2?&A1(6Z0UN9S zE&NAD!msb$hlb4ceiu5`1Jmdc*f{?BquY!R%gT2!`d8sod;R)cWt{oO5?m4VYeaK? zU@ayZEA?D*i3_js`((N53$J0ZlIYPdf05;`INBrNBPt5CE z%J@zBTA+4AzMt(rCHY?cJ>=VG$oGfenerW)VagZR0r?uRzG%s}=60KWbC46Z&qM&5 z@;MM6Mm}5r!`6E{%WsqN2lOkBnr98(%p9)yb3HW*e=_kq4g5d9XyWfW6@1${8~@WF zBk!LEPv5u56h)Cy%>wL%r|f z4ilxDF$4pGP+0dPh}k9D!uKwp!%?GAB>bE6IUC&%CrVmR*em2Z_CkFp-|izQyJ85_BLxG`x<5>`1omSuKt#k7wb8OsuLo=QwgX% zO!iA5seW*$?6i*}ypeR~3)~=(+|MS^7JMnIFh-YzM=lZL;1dcep&qJgcOC~jFf85Q ziVuwGnEIO8XQ8_@hwa(h^gJgPG0sN06xIt1Z58|4{yZ$yd0g2-ekW{U5o8$F7Ouug zyZW{rC=RyJm!WI{UnG(}mLi~bf%;fv??Aj2@p!}^MtmFM4#XcqoT9J?--Ni=UE|eg zC~_&T;0t@iZmO!?E6QrcYLvZ<%D47o{JpL`eqet0fkcooEX5iJ*bJrJ$+;b8q4??* zTkXNerPWej{`I}ueU*GtKS{N`6pGX5@*HP%W$(xC*mU{u5g(g69eM4}y(GpDLhj{f zX>eV?H+DT<9u{!!jej(2?0%l7wca8266U&rf?oeSfb8{+?itS>dmimXR?uE8jbEH0tYOMiMRJGm_koS_^CNtY2RO*Ff8$%bYX<&+^ zO$VOYz6%lGkGjLAk(P;gg}c^UJgd00Y-O3Z25nq^(9BhRU1zT^4;%OTO$R0e^;23l zt7-B9%eflwvxC-gLYwy88pv*y_W3Q)S{2K4{`#vQvkSpnmNy5So12`QxcU>w-X!On z&-{`xr^UhR+y&~)i|Ks(^yv$Xo$~g>Y!-0x_|DRH+K1I{I`q#F&AGkDNw<3?Od5?6 zU|iF(gZ0fP*tVVvLL8*FJL%Ny`9~#xi)v@h&!Ixzm_MXKRDC?ngB)#M)W=rzHNbmZTQGdyniN?L&u2c(u_A@{3cz~4)BE>Q#-Jb!vROG zei5eVthnJ$QQ;$))+wqTctn2|FwjqiPe*w{5PRWB4g`5^l5 z7>}_Y0_o5{S|>(R7%h7|Jx z4CxzSBdTR9L#ji+Ro~VPa7jstK6;CO(Ju`fL)KV%i&%@E zy-U`tsz6zP{!z)tGex|W<8N1f(OkI}h{_vO6@`zrWn(=MetmFKqH>+{aNpEOMp3g; z>RjMh&AmlG_FYt^04NQYz6cFp53FG|d;!)>>f6}Xq2WKy6Ad4dchr>wuLZ@huWLel z3*rvM8xYT}tn_NUM4XgV4O!`TVu97){R{8wGWC1+HzM?V@E2kIey@*NtT_xL*MT<` zqZU<+{WN226^x_RG80Xa(5Su*sDKvz#~8yvy9r9WucwK7ysBNEeI&Z6<=>@6X!+jn zP|HQ2)U%{#PC!V<|FmF3{7<)%e3N(x6ZadDxN`(|DRDnzg4`PkaxOqr^-cL5s;?Go z4O@N1Sn{wQg}fM0?EC_Q*c{iU0kH*Tu>STVZr0yV5#NCH7^H7Uoa{2b32`cj@%s>` z&KUP1Ua_#;SL1b8*Ju?tRlD8cy9H}81ai5n^W+tuT7~*$iUA{55@9OJK5qGs*hl); zBkW`6&%*Z6h$kWc6ZR4OuH8Oi;A5;n*5sAN4;C+lTwaf5tvmf7@;!-^F6x@b${h?{otDB`AF>_z-PX&2@&QTdObh3&)Nn=a$?{Rc4NJk_3i+}CWD z(V{QGnkxou+2K!t^W-A?hag&7xPSOH7W0~%`)%Fr>TSSu?pHcL@+x%xTfhvf^Pgk& z!QYmJjXNtV1^g?aUM>g&akA(3&2FH0T_fTFL z3K~zJ{t3fsJO$m9-D(Nfp?6=)Ie~G+aqsUT+`9l9R=D5YMB&mQ+_wNiYcigj+7Gl2 zcs~a!rxkH7si>K4dtSH;PAEDb}-0~M!GtLpXin4TK1U^y2&$O!Ex583K@ zi~gk_86Lp7MY7}Dlpez4tv}2(FcYx=z_CLXco0kQqiMks;?zjtmw?0Jcx29a0Viwm zi%)t!)wDGoF?Fwb&w)t^2+%SV+I>I^1PRm>q;yvQKQqETock~eZzO;+tkge1_tn51 zR`<7I!2>Ucht{C}WR?K+kAd2z1I@H6H{xbnz7uiE#WywPBYsm^MQKKfw}eYwGFHyV z!iF)nQ}(woTtEKa3{Hpl9hi6u6=MvPzy1}g8Uhp2@DPe<^k+|EHSkilvd3iJ;X8NL zS-kr%b$5EZa~~Mg`0b&6_{D<6zNP|u<2wO?tj3r58g#T6i^!2WQZtF`GH9MI=x5*> zr5{pu0mal$5#l$&HuG@4*0$Wo^?>@`rGOTT+ykv0Cj$BHb^1HVlCV4%rG+}IScbJwjXOgNXhMb-(1fD3Ac_h%p}Ac4e1bsul0qPO z6p^MN`Q*2g`OCk6#EhP>8)~{1SYb6?iiMNwTLP!cRO7p{e2kv>Qru6SyE6qljLQyJCat zR7KT%MpEjp!K}Y^(8qz2k?IfrZ3KIL=_-3ob>L3blu=KznGlCUxXQtr!+N7(q}u@t zx?6W36_c$F{D5yw@%<%aa&5u8gsycn5rbQs32A}wdp6i+2uN-d4(@M3c9Sc{{{+D` z-}(M0n4hf}4}04wAIP6BS zwP&9|%O23b_A#1S0TzExK#|#f&>|{C>7W%n>W8kN4*YG25c&bcDRhil2kbyT#@`~( zQOd(Hffs_n@tzt#g(g4bhHt$a(8r9-kLx)2nPKDSL(Gb8{47Pj$xkWb|2#j3QLD0T zMs5^8H3K8+rZ90x$w%{KzVXODzJF=uFPD6@Fy<@25y(z} zV=?d-B46IJTZdM_XI`ZRG3Z^67OXyXMCbI`BiNk4 zXN8QUSblJVE%mpsu%2(|jdt z*c<$4uC0r%AR+Mv^dQ}UHhn=a;w$V8HQYbj_M^qvjA!WIKm$-Gv62j`{NNb-7hCTF zSkpj%Zo%u9DK3V>t1Vw;(Dz&L&5`hY-!gizesX9lN_Ao3LHYf}vh|GBxHrF&u3kUw z?Duz%;@gg~lfjf*aafVHJ)}3h9;nc}(HmYy!qKHAnx*xrDvQBAyG*_qxj*&f^3t7@ zqC%85pRqxk`$JXs@o=Wh$MzmL3#<+q7uq)TnzDP@A~?i7r_mY^^Y-g_vmN%$7fDma z=FEOj3U9u&=%;Ozfo{(|*h~fZ23V!q#n~4H_*xSI_w{6AV2NfQzvUo5^`$;Z6*-{j zyHr$oLTTqM+%-A(T64b^eTz`qs~q~C5X|^}z(kI%jc)+Ff>j28TRs%~U4YP>js2c| zKr_eJEr{orRIhY<+4Y1+*sxE$FXP+)ralk*BlLN5-^um)7*;Ycap+m8^f?QbJ-j|2 z6u^BwH*j?TUucN_4%$z!rwv2wRa)GEyGSiA7JNgCC*FY;_X1{EEq)EFFiMNJ0Yquh zm_zpi(bQv1Poy5Dzr<#KRO_o>AB%AeJic;BH%XhCh`nTgw|w^vyOBLt_gn#c{H!z1 zi-Tve{y*YN=yCox66QYR!_=#v4vAB*ewrBGLr$lrxH3GE`a$`p+#i7o3Tn!n0*gdJ zO$8@-VCoAApbwYNapcgMQx*;hK*Pqg`v%+rr)hp_prC(7tN#nBm^rm#$l_n$herZ; zkySMyMSftx6w=f2d^W2$re|5t-Tw6_G;c!ulkzD&|3_CMHLGV)KxSHC$r}$I{jD*A zS8@iAHsNVznab#+_rYj}1=Ink^n5A%HW?60`KjPsSGLhGg|^Wb%EP$FJg?v13xoI; zGL~8sxFA+8tO=Y8SyVaCtFSt>KjVxr*x|G*4)N%@32Q{^gXdjjzRF`V2l9bA#4pKw z6|&Z*s$s$NR2`US{{xQ!<=L2T|18%v;~RcRARCC%?^5i86Rwu2Cn2Cw9D(|`cK^foZuR2 zR*~Hummkjvi>vnaw&)wytAj)B&P_CHYe{H}{++#QNob3{`yZH@IXC#%Z_vCm=%%;m z58>!L&PVvyZ_;oi<$}N@t|Z}L$rgR3g|=Fu^|TAr$hgFq0X z=ZQeUrlx{AbG2_)BpYiTWTQ@XwTbVcCLeG_*Q8p;s>CWreOn!PKwVw~AeyZ@%a#m0 zvo7Z$&b2`YXP_BjcGW_PPh_xShFxuKzUT9c*x3cynxR12rL|D#0T4VDn?HB!5TVFKtprILKy$$K4JH6ISW zybx(IU&h!nccSkCqe<92$w%j_X7B__Ia@F^faeisG*g}S>OfP+Jr->@>78FxZI{hq zla7Y~IdHv-p1N0W#a)xrF!N3LenUiS`>GUE*K=DBPL`~LHc_0>GB@cdk+3TWD?mM$ zt5&l~9}N(E!l_B#t7>C^j=-{dR0~?#2kUTxr~e zwZt&zC%f$S>yq{yao*5;@W2&x_LXwfq%~!qkTI@x;_1cD&;WaR($F_H^bkPAWXY6q zjPGZFz~_VFpUjS%d(c;Hw?Y`lUUF%@cC=Bb?Fkg@X)4%_%43lM=Wdu;C%$KE?#p(H zWalk4550BjcYem&7-0vw*E-xZ69lpBRN6Fwq;BKXjwb-mXR^#d3=gOJudaVzABS-K zPw8XSnz5k=$v>O0O&>b}A)iw!5@lFleZ!|J_p*8|Wz-6(J%Q{!IPqvIqhL3>vQB;4 zL*^D$r0i)XwlI0l@*qUqrOh$8BEPVG|ZH; z?|<0sd%CpuwgYjn(IMmh$N^d;gWczv3?@h0_HUT=B)|6M&6E@9=-My(iq*?S4qmqb z7(J2a1dsh=#Y6u(RHZ25*5?l7O;(%uQ z>LkSF7`8Q@nZDFEp2-(|>^Ly#6!ZayC$qm;{cCyrhOE?qQGW-|p?dJ9@c72Bvib8M zKGZPzK}!w8ocC3udfnLn0EOAk*7dVV81H80fZwS6QWBTSM^ozKyOQm>HzD`1c2&<0 z*bRdx{cpM9S4Dz{>(0T0_E&lO<@EOseWhZFgKPCF@mRghj<7=?3k20&Hv9wnKL_-O z)&Iv>i}1JI4bOTA>a*#86VOckZ$sRse|vvudu=s5l={$_@lbCy2*RZK=;%sC`;e-? zi1o^W_H@jGQFQh|`+OLKFhM}$5B6_|$I9KS_hOvjjO9{d9I$fqkN!;S!}i30D($00 zQxec1KD?o|{RSXRiMNztUo0YaQCZJlO*)nnuld0iv#Ga^W2F;G_-8dJh5#xlQx&49Y`xI(_oYsF-|xzn%D&>V|>pgd?si>pJ-$?OO~+F zbH?K`LnJQ=p_hpQBU+m@%D41!4Pz*iNhV@{W5VMoP9-Mv%oNas@kj-vnR5Q}NAe2vVxZrjqSfIn=y@R1U;jsr+~Xg8-v3677Yl@Zl?o;!U7Gi7 z8h#fREm{=a%^(o^6>@`kXh_)7zl6ydmcam6(3gvXCUq%Lx3F+r9%O3R02Gos4pPTd zzEkqM1KHhZ1K6;^!4gGqCJ4fwu0c*9XUf5M66*1_8S3OIz7P!kJd@RIrcKasGfovUzUN)(uBTRB0Q+{%rb{fta(M zXTiJzIf<46I4HsY2>)XDpKQ*_w(Oz&v}=j5FOY4YPdRDK@C6cc4%ji3gB~L9$?zR; za>=ORBvf!B;+W}Ri;zPIl&4?B(!ii}88hRR?vu@lShzp%_a+p|xF>2in>79#O$ap5 zg*Ig-$g_{C1c;sJ(!YZB8lGU0j!Je;66C2z)0rnJV{ATC#BN#;r&_y)E}Qy@RV~4x zdGVN)qkXjaF}f4%XBGR`Cu-i?I8fq_%z!LfI+G0{lTZvM6IQR0s0zAuNI`hSIHI6f z6coUYJ$-9nzOnzFJ_e?`5V%WkhovUKQpb@HEHzmpi~3dY8?m0X-jdF`bpnG2lownoe?Z08=#Xbd!Rl+1w&+VlMptdlax1$<*7cHwZ-}x2xP{9ZA0Ue@ed3QNCD+vrmzJ9&JS}2C*q+7H za{w~hVXuAyM>v|C(kXo@#n`rp)yMm-@qQqCyF9kI9WE;LePDWC=Ou{_5*>+tA-+-o zf70aKjkS&@=aFD`7e2^>hgF?N(C}eOSTy^LS~$JfqW{DD!}JTb`=7xhn55rx3$d^S zqBki3w&Xzek*4e&0X{}JL&}OV)*AGNdOlTYu&0*L_UiHDxzcBNiFK!;ZJv*1+Q@;w zT4^4Obrkg(sNbHhst|j+V^CrPu#OwP<1xg$jQCFx$HKYnCG0^w*InZ)_iBYD<@sx? z-2BbsyJk*S|7o0b8ZFCe*W&sEIWg#!Q7?@Ivb<^VP^mBgZk;(0Pewcmadq^ZK1FplRx3zQFY7{I{uF^^1i+>m*1f>TRg+Za5wG@$qS4-+d5qNU8S8HX+ySL$)Da<6DLo zfYoTK{rxQ5{_1-((GPL}`@~+D`Tu3@F^}6PrKoV$iSeFQ*D2xqzo3YR;Z^TB`i2;#)eA^+q*gl0D9`MQ%<%90a#C{a%Ew4#^XtBU*)3`cE3;~<#_wNb~{CE)z8%HG6mo>;*6 zqhIP7gU0^$bQvr5;B`v<7&oF`NF%VoaLsWOpsM?Uxzsus;KdS&zbyk*J%<#fs=<(! z2v9t#FnA5(4#ZcNEccXEgded$dpt$?eoiKa%J*AZq-?TNKHNmgx0l)ftbDzc?-5{z z<=cW43?<*~q-e?4XOmAmb6EL?86V2C7p85*shSu~x?I13{>U@O(To|Rvo}$7w8jYQ zP~)?RAa;0-Hr9-Zr zay=r~F1a3)E0^R4Q;y43mus(FPso+anS&|)avhMXCj7+6HCC=%031w7kZYn`ljNE# zSFU&urc9A*s$8eZmCw!(rf{i#FooM~TKvEWI!`!P9+lc-gnD7q8inao*L= z{u#f)PS**w)3tNQ##nqZaFPc!P<^To8T4VM%(3q#l^XgwEMrxy{>oW2%NV0K2uva_ z+)WsF=k_RS$Aa0%j6ohxziv_VT)JNy9X!6@Ac2>G=E;&GSR~kO#JJlxh1$9TF4MT)EIsz!|d&+mY>P z8d#((zUz+LmkviS2cRev zGHV6f7s$_=g~@45POiQdeG{mo?WOzM^)*Z6_=B7FPs{Jg-O zv5mj?CNA068Tcgd%wK;P7}Io9OjBW8(~ROf?&8Ez)w_8WeDW7~9~{0i_d{>q>>J2q zR`6SF-6p4x6Jd7#c>})jf%KR$2WKZH;n>^am_U9!IE%@3=`Wyr0Gk3B!D~y;Se59D zMG=R=X(345j2^BZ@kO)G@x{+BO!SSPU6|w>JG(F$>tNY2OA2%JIuSfhA>R}?JAe9s zl~-!dyEo?6#t(dtDxE}%SU0Z|-}%yf7ovNW8Q3cA@K`2|(oe&hm`ndH7NPuYNv7Wd zkO8K@EjfvYItNoWzzPRb8su6hSH2zwtqE6Clj?UcB~@~!7&&zxrPoZV`^ZrT4%gK+Kvbs{&`zqzMA(6<;eWU`~Q$U<^A|+F;kvCWadru z_r|=EHf8AwfA^PG`1`-)eNliN{^KWJX?-PsO494=rX;*xJ|!W5cpzg+0v7nvUJEt8 zu=avilBWdXrqsWOnysrph!*lC{}ByfiT)R~o@qv|O7BwXuWCJs1o-eNLi?IuDVmbR z@HBZ(7Fm;Q5@2;5-31Cf*AoN%>DXF_dSj3uFw_6kM*E-MDI@rwCbvGL zb%XQmc4y}(E+AqlD*H&V;O(Y@qi7k}1I}4B&gI!~_Ud%JZU?;doURHExH^>Uw#^>@Q_Bk$nrpT3W=b^__doWvThVkQF zAkNqW98@45-7(}wex!MH3jO-tG%P4tljs39TC~9RiFr*=w7rMHb7KdtprGkR0Hl{~ zJc1N7nfN??wwXkrz_kwa5;AriT!LYF=wnSAd}$un-fJ##1sjh7#wDyeN zH_HEnupIa$`Sis$eh}X<3YiTk%`}Pl#=k%!rRMynk4@F_p9pBK33aFc< z!_QN(jVwJ7#baT|F7Q*bol=`ra2jyf88DE z*qD&cG7Rv8f%hU24Di41F76rotJ1%mmavoD2ZH20Z`Ej5j=mBTE?6|WRCx+CQ!Ro> z(>3JJfGvmR&kLM?1SARrzBshn*rq31I9B)vUMDRUzV`&|OE!>r==Zl!hGz$oFq+|p z(XJ!teb_!YVX#gGXD0*-<2+jcmgDi@>VIcSuIFwu_gLHN~j(yZy%WZQOzYAlc!_tCjQai=6ISRu)&|-i5ENJ)Jj|2 zh6`@Kspo05I9OjWaqZ!l)3n1e=i=EE+jywHHzvwnI}Lk{Z+H|c$}6PaHzOuiYO~Qf zhK;TEhCxor0i2ifoQ}w4go*$qtJ=%M)%+a1Y#PQ86WJ7IYZv)|pgqkl*;H;r(0%r>T z^#j&p9+yM9c1{^I-HR^Bb7U&!+3)<7`j7F{@#YWeMjqt|`v;u)l}C>*^v^rW(dK>e zJNb)A!!G{za3Ss$&<#u|1y_NIO_MfA$#K|p9t+RX?(CC7e@&QlOsV>f2@}`e`g1&+ z0X;Zr8=QynsD}3f?BdQX=;xCr10bN`u>c)C9=?Xo5l@GI-X@^nHIJ(<)RWLjfd8I_ z?PHlpXisb@{K)_muJ>Ud5TkZ6VNRxj<%yP|GaHd z)I}ct>YLQy1oU8N2`(O5;Ixo=t40k@%9mP+!FgNi2QN~TNa!(eB@bLR{#ewZi#qlp zF6zL>!U?9xQe>n$bXg^YI`p}C(<0Pyf&vb!j?vzDsN-~zDJCQyeYmMC)=1A_!D1a? z-I}X*8RrGCHNn2tiFY=3%Ww}Tn#7s6JCBe{3{3fhBLZkCO$A+moa;PZjko`H`DbIT z6VF!C3JSVrkH+CZBfDmFPc;An6YaC(V+Lq;SJSA$f@4Fc&qsz#pF0EDN9SfA!D?th z_uPU`ZxVJra5e#{P1(l-1)WU=-IxO7L_=skM#8Kf?%`)iwcxlMIori%5tzhllT6rE z{Zl4B{^N_Re;Hh}eXA`4Y2T$gaY{oSkdb>-?I_<^eFyyrjKbUn)KL{MzBm(?9!ub{ z9?={<9%?%=@_fK}3#!p*(ADgU$(1z#+JdyqNk+@`#Q_$HnkzNM|#%7@Y zr@nrSn$SKte#_AxWmjr20LxIj=3M?@@f1L~9OFxmD54Hnm=fSXhKM9DcD=wPGrSyz zih8DDu^iv-8!gKzz1T4Vy56ZcsQ^|ttSNBBZAv0*ABV1$+Z<%TYndQ`oU9mF+OG2O?! zY%rxoaGT}2U#|P)x>v4ye?1BSrn!s!O*kicT zr~zr^Gp%U?ukB+AW#kK=9_WJ@awk316|C2=7W2Zciwig5ij~?j@HJ~SDQ=ZX!7pI5VSH&qFoMO$%g%j8yncg??^u~eg+p!-td%W+Zz=E{K z*883t^HlvTmlIE_{wDsh%yD^3;vcI`3}&2`G!@HvGk)Lr^u3e)t#N^bx$jq>9{6PH z-{)2hRL3s#x2Dd0r8+eC74IDj>*gJ&b@&|qdEFAp)ML@r@8S(=YtG@Z%pcV=b|+Ij z+WXc-X2u6|4|^vE3r=7vo>W-K&H2K@!rZ|l{x%0>IlcG}OPUjbQGtXe-|@j0=Kb<} zS7X%k5PMiWGBGNUo*XRDb3FrS7lngII4<`|o(}hv>i|LSk1fd?e1Tam$?9wJ4G_~4 zEEqs>4am4cG6v>88{cp-qZ6?gq^SKJ%EsuF)bJQ((Akfb>}~`+NRC5r_-fA!#HYLC zIl#Gxd>FU%&TU6y&F&s^aBhD!KY3!&^X(7)7YRE1$<9v@od@H%Fy2r9AB_7At{Qwi z*1=I{sJhMg37p_;?|$T%d_bmt6wQA@=P?&q@D@y6-#hn)>ctrFNduYNaqk2?zdSeX zaP`>qxd*F12xJ__xhuT>I|U_bIP#d?N1>_|74)jy`8KJsPk`?(%I%7IxvlwHAxKa^w9>;32SR(fa>U)zwEIj}9&%+Zq=qq9FAc*%Sor8m4gx;y4 zYbXp{%fpkd_OXN_7lSWBTaC4ddN#p+24A8|eDTIhmtMgHhsc;!bAIeu2av+S7n>S; z(W+ob3E)IZ*=GPQ@pu$SpuZ7w?qt#}GE%x4e;?m49x1`#383e2HP%-s~L-go|v9rn`*WU+_abUXnSevI+?w&Kj0>! z@QH)e`cbqqR2JOPIqlA)Ohzu!FfceOo1J1&$D6W`aWfMB)1{9>F2>UsV*A&3YreCs z>7jvlq-U9Vyc*={_)Z=9v_Pjtxw9wTi1%D?jbJ!oobmKL4r2Izl7q@fJ0e)>;9zEW zyM-+*mHID|>)m1nmb%RPN;2vQR7kjf9tY2h-%9_L_d@9gQsC4Fu^A_$`wyRQns5U7 zA+Gxd3;HpItz}=s*I@Ob(q`a9Nj9E?Sck+Jd_5N8xxa2k^r<~(}XzrIbWB=vB%{n zrCWZkIEJ6?Um2SKkbqO$6(hefyJGQ+amTJi-Zyq*`q)0!1<+AARJ@a!yJB$HKDHmu z;q(}-wSDY>(SIs6HwC+Z6A*ctwjM)V?X2v|1lp=m`Vwd#CdwZF2sG%~hi(jtM$|u# zAewJHpsrR>9+ogTsS3I1KD^X8n(JUnxmZP&T)lFwmFqgW9*6!gzmsdXTbFISgbv*em7*9^I)%Qa1|v*bEcuG8f@O|GeO zog!E6hGAb)uCyzxlFBtfu5ogWm1~S#HMtHzew@0HYoAn*IML7#k$WhZ-4NPIus-$rdGopD(7M;q1dx~ka4T^o6Z5CU2Ju9}#$;s7 z=+OOtLE55z#MUC#T>cT**cCF_RLtVaGjJy?LKoNwEjj_*dBlzVJ8)M5Hxl^0KL{(? zofi7*OfmRa)CTlV@M7fVG@_>tLI1fOxEH|B6WBxGf9TPa8;!E82e?BucJ%E)|0>b9 z6TOA#*?K5}kHcpl55@A=WUB?BD+zjppbr_Kf5ICV2>J*9+CkF@8uJf;t^jB-`)Fu# zDM0WT#s*7l{TOrhgiajeqE>@cD%N^5zq>(dRA2rH){4yfS*PmfO}wP0Ig^AZ2;pO) z65&A)HQ^WA_@Nv-FFU~YKB8~Nl&}`ZX-$MBJ-ior=V0K(+7U?@XZF=tfgmhd;N6R@9y4eI69p9iTqVr=m zt*Z!NN#2Z-?qo^Y$0+FmRZW|?@vSI?+$su9|l1- z`MboqvVR-}j3M+3Nk^z%tS)1sdk+O~}JV?&$q%XYYdzovZ0fc7@rVRI|dCJvQvN@yv{ zA%8CUjSFSU@9|JNez8XonkBzSL(}<-FC&HdY!yC}kRIl9FABVu1s-RCJMi#cOrBUjO93zP%P-_7KI|l&zxdKwSYBP^O+|WGUMl#@EI`vRB;EJsP6eO$S4F%g6OZs+#fsk}__g>X{8fbCP59ePcq?D(pZNpKpKa!|{x{%72g9}3Dx`tkp%Mi}U| zLVv#=zw%9+(2XzI9NSXm*ggluz@h<^GM^;cNaFJ>#i+22`!VoF?q>y#+?+?axh2ehPZJ*Qh<9uy|D;VODg+FmSyhXJ9Y=TaS0q7cl zLJlf7m0y@M?UfQ=N~kJA0 zdRu-shhE38Swh52hi|JfP38|m27LWb3EwtP&1ZniRF%pRfTAM8-Clnhff^t5p- z+Qp);lcHH(tduvjzdG^bA@&b<*t~(*{TPXoZ|c7TaHd*hMEe7RH52T41I!YU@U_i0 zc=o4j2(J@^9KnxMDNQ8KRf&P^R!XL@!4}S6LZRdO1fjOucLe3w>~G%?abc z0>{`EyBL25v$tF0h40||mzJd4fc6B@JVbjN<6WRppUrrQqx9GK<#1;Y@6E#Y0P6u_ z?IYID6jr!A%1QVj#&cD~8>XLMiu7<(rC+*^1W%CQ-BAQdkMP6!H@<8#Ooz?uUAV>O z)YCvG$)H1f*6~>lnprn~1I}ifT{cU*>3Y;orx|p2A)T?4J(2G7}HS>_Yt)+N_jfo=dnQ!p#R9L4F4iR_*$~k+uCHAAT(r zZwAV7IL_v6L^;zydBje&3m^vx(ngRT45MkVU$TL0to=mX{I>w5-26j?KSB6k0eO|xJz9fa;6^!u+Ub$*$&O%QgB-y=vLL7oGMtpQM) zBy68p&?LBq(2g?zy)zP8`BxqLF2M62Obp!_%}W|l^NG4bP)Wb`V;ggXPmG4Af6M%1F0_I0c;++QpY@90(2yRk zc`j#EkWgG42yHV6vAnMLDSvM$9q{z09lSTSO@Del(Og6;8CpK(uY@0FK30eHaQSQ~ z@51XfH;_=0Reqc*Z7jCXOa{}cz z=+JMmJWJpE0oG2iO$2-IrKtLjoL^V`*48e_Xpoq(XHtHJ$@=X-F?{`WBRwo9>t`|1 z(}-Sc6ij>HVCRowTuLwx!E%Q1$95DG`qMMvk+lq2`rzf7w-Dt5ph#@6>RCdy z5~}}q7SuNYMJss74t)e{>>zX>p`Qsuf8Gwo#`Xn5IpP7eI}GKFhRP>Y7NPD7LtSWx zqTp8&s+Leo!%!bRZIhKyv4q-9sB6MdFWRBV*BkJJ%|{3o7l!(=9g4JC2sJ>cw~ksG zdB6@uS`QN{H33kqVW^U5s47C`6Y86Q;!5ld0KsQ^L)Y0sw}GG&psH7yOQa1%atqRt z(CKzy)e;<4wWus6l})5lYfwoh1F(=pTj`59p#Q9ebRLmfiL}r_di(J3 zML&o1$fExMH>d=75wYezQu+9KCBV)Rs5A|s@^yy0_2gJ*{M;0 zWfsy>A{7zoego-}5sE%@NYTj_m9t1?GpVE*RJwmNyc#-?9;t?x=o4kG-icUq8>xJ7 zM5*DMBT%`22$jtil`oS@KdJ09sN@5hYRDor?4R5{h`&i`*wvfc7rOK}EUGSa6*CPT zZCnZfsA;Z6^lB1KO9at745EW=!wdK}(jx`@8(o|T*n?Pe6{$=j6?r5j^e73L1-E`8 z1wUn>G!tbzQQmmYLh%oS@)ZlEktiKR`Dqx%H4I9Tg_28@KBBB63R+MV;Hk4D{swEI zkI)2(x)>d8rhkbH6+nY65lpR%r{8P4wJZY7!q?V64Obdk0fq4 zNPO~?lIa8fDw%o^wFJpjTzp7pC|vv*vF7RLfW)~5iC-Bcei0_I$4gR=TJ)NK}PMxa}kiOTNbSwxjlM4}B|`1z~_ zd>(=K6L_Hk{PwTI!U`~bxstROvF2_9pF`ka0*Vej2KZo*rv*cMCAyu_of2Kg=))2% zVl*JpG)C(rn#`zAq5~fzx=NzQ7%i4)3#0iG-OlJO5?#mW4H7M4bcRIJ7)_OEGNb29 zbb#ZJvm|y?C5>00GHxlLJouS7idW_MZ zO0QEHwos9^%zvEurgRRZpoqh8gi0|jh&89Nh_~9Q zn3m9-3;4SwbiWi)MG|Z5B+3;DzeQp#N$enrT?UB{&sQXFwBwOk6#Y31Z$9yk67TZ{ z-meY3(}ux2+rm4Yc(KXAn_=KRVBkIXE1RfBdB2ClQ=&ePSaTZj{&84|dMofu)hyZ% z=6+%U?n-3l1l~g6od)HmXj4 zf%gRPA~;I6fX^auAA!>h;LUbmZjSr~E>Fq&C&Zc^=L0z20A3yq{FDXUOyDd6zaazF zj?kAM4=Yk+-D&{`2wY3xUmC!-0hk6e%3eYP*ty$6DkRcgBGnm4Q=&_lVF6!8;4T8^ z8NeSNU`K#{2pS>aTfsZGr(j29zMV2hDo* zY0ZNX4_KWt{$~|_?_)#o>w8;q_z9QqlofTBk>P7s2_j*C)7{eQ27oNF~8CWRwwu-#X+~Bby2+0Vs2=C91)vg1NHzDLBEJL^$fqyHg*UMtH$p|wMmLlv$ z=ts!B9J)n#1mPKkq^YsmDulxbj%kP^G$X`bfpQUkj_?UW?v>CxLLWliRnX6Lz#=?@ z@SUr{4}$9&l!GvU;KF-8b|9QUNShg}J&cfeZLC&`@TgJmcg=zx5jG)gL)e4Rg3y8R z62fr=yuC~t2U#5mGZ9uHJc!T@I!6(nL0ABoIS8o;lMxaSMkD)Tsgr^X`kI;Znfl!2S6G9ro zH3*j@BqN-K5R1?UUfuzpeF*%!BprH3SOh)XfM5Q-3ft>K`{+P;6yXtsuOc)c)FPB4 z+>KC(un1ue!sQ5)5n>QNxCHt_cmbgmVL!t65gtaUL#RMlhTuZTK$wM)if|6Xc!YkG zuOsm9QRw#w!fpifuN!ZY)ow#D{*EN$z<)~kp2<_IznR6~(Fk`l@>jg6_RZ6@WhJGK zlJatV9bH~-F7G}k44zxkSOSSU5N<@^A0Gb^8qxXbNUuW}5r92pIzkO3D}WQ-S!is3FdBRcXSS=3s(KUwCV_>y|8Mu2wtix;c)N zYp%Rzh2wJz99LOUfJOanPS15OuUuV)?-GImDYvTHjncLGH8sA~ZbzYfi_%eESyEbq zx-45s@fUjB%Rle9sk~&RqoAf_rSO;mtmR(E&8}R>!pe#oZ%Kt0nghS?%IZ>gwWG3X zd1a{^?Ahv8zLIjs0vO@vsmB#%M>YI)3~uH4d+*tj4jtvYH?LWIMR6(g!`G z;L^1YPszP*1)!+9R1sQsNv)$~HK{o&S2%2WHBcvbAaRh=oEf*|^LKi!oi9*y58=su z57fj;aFlor_8h5T|1#pk!ZNbwJ93@#GsZ8k^p%%7Dk{B>6=hy9UbWUyR^eFfUR_ze z7NxIruXa-n5jc6S;*8w+*~RlSGIEP^oi__QuyQkUp_ZDelI3m_eo5{v`OZ@<#NbQe zoJt|!%UJ;lPz~@*(sV?7Qg`FWJ6Sz257gA^)%a|PV+lS0U%4g{XXcFQ)61074Yb9u zxIC}Bs*08sK|dN65+dCdWe8bVs#&B^tIPHKp`2t)Sxb6_snC zC-=&-8a7J&Ww;#q+0JZfkx;)_l#yOlR^@gq^VO`4N?+z%u>xinnFBh@*(jo57iMQT z(0IK*+5%vB&$?gkgN3qUZE5Zbv=Q4q@YqVE?rYquOR7AT)zY?%dLjd6J+JVUmosja zh4`9kd?-~)!&g#QdOgf%L$D_aK5R+SN=i$s-8D5#GYrs7IhmgGhv*sVpX11IEiBH< zpPyflM-x@|3$t>Ip@HIs`MH$qq;RfVTuuWJrkLl@!=XGFM# z1-ZG-#rcZjr_gjR&NwAFl$~o(98ngjjO_WY%v*Dv2GJ2=(a;>%Ic~fW8a^q^wVwjR zGA&a&2`#`a$t})uF8&lf11>k?)ZiiGl)T9$AU7@HNK|8mfMrpS0Ar6y%L<+_rx)i|zjq)fkt9U}o41FR#X z9In-&91eQslv2mCwO)6PwiqtjT~X;<=`no^$90Q*tE(LOCCkd)7lF?3Fm&c>RK>A{ zBM)PpiqewmwHKWdJn4E?ebgFT#GOhVFtoA2v;La7o9pVGG2`upne^W z)s^?&g9@3ZDkUoIo;4UAI;y)(9Zw0I#NfIUH4R?&T^EW@*5O(<0<1tjA{ohk0kZ zl^mvFq(#!GsWyu%vt+NSE-}z;X%<`IG<2Xf(dFP16+_a(a8YGju#xG2x5%10C|Umb zni^ZOneMBoTK@U+HQ~xKe zTPytFn_x22OsP3tW^zot$yc%5@XXpbzrnw!jj8i(>FC$zIC6az6>55;<#Oz4OOdgQ zJ)dJ9jB_#d6AXGSYks7L3c|<#tX{m(u^az1X#ZlZ7@sD-wh1JZ|Za~`QNM+5JfC6nQ%muB6be1FU z{}wOg=myb2B`n`9dQxROv^z9tRe4gOEsrJZ+jgQ?C{n0Tk<-+&Q&C8lOvVJI7w zuzBUEgl+`>hHJVQen(k#+6cBlh}F+POO35h|if(vywg@-U z*(R5vbT8>b5*m*n9nN z{f*Rre)`z$pY=<{m~*i2P=BXhf67~&O8pgzeW(#zF-qbnl*oJm`&o!qW%k?DU!+|`d*M&( z?ag^CErzok);i}=#aNYCfq$k=3}5G|!0^C+Y7Be28SUQ-?$#P@-z#(B%TVuOdoyhz zY+WOleS_HJf3EDXtw+w!|JM#rZLQ#B^Yf{wEB?`6MOsBB#+Ws*DAgZu=FT34`=aJy#fPw-U3WEa;xiwWhJW)fCAvA7w zdvC${iE11;!MTWADpphqrCj%|JV!Cd5#IPK3xhel_{cZTe3aq5#SplKl~vbZ2eG8W zIL$E}jB(CGpa`!y=C8oU;~cEXrYyy}w&qyi#s-Lc4(sZ2{y8#m8et_iXw~_SRDfaU zFlFgw4#_6m&E=KLO3J}jjRS`qO0dSS-;Z6#pcs1En ztbonbl(MjL6%30rSS>GE<}MG*atC%G%Ic1_+LJn6;$c>XXAGa`-}yEG%MX}(6#dy_rr6j;$(Y~O-60h8gP0n*j z-Eikq-E)6;7S07!R91nm9HlZg3f!)RRH!suv^h3ALyby#()@vA*o|Qi)oz?VaaSyN z8z+6_9L23w3$M&{*J4j&e*XNdIZ7iq{YD99EpxyYSGwWO(Dqf4XhP;*7EUNQW@w8X zZl0POzra{p^D97+>imYRsMMzS|G>d8~ebvj|Mb$M`MV7bWp~adj(WXJu+A?PcXx$*5fs;p$ zsc3E!|dDWTId`cmT{Bje6?2(Je!jo4$1lnqwt*AJ zu^2n;s389Eo^4tVYakB(pl(f5H0EcGL`7|hx{J-S7vR+6=jPCOco5_Nu=g&2Q54z! za3>@rMAQhVsH~0%h=`%5=hfZw%H&0WB!o;7B1FR^nLHpQF`0ybs9B$gh^VNjsOX}i zvWhM$Dk>_vsHo_oi|AE+F1}GwS!MP6o$BhDp2=fS`QN?!-8*nnT~((}Rh_Cjb*j4h zRCKvmoJP9}2VZ9*50YzbwP$E@gLtCTDVkamU8jOl)?c#Sj2MM1K9y5y#b!nBklu&eiy; zvda9Yvjbb)pI25;p!=iFKk>76g?TuOKAO%-LjB0?Y7CJK(Vy{1{etxT4A6@@l12Ro z%D7lnSSsM%d<`13q_(vH2bKhZO;I=%hLd68m;O9IcBF~uBDp^|`skZp2XG5>dm!6Hs&RCrB94}8FU1sfkVPPriOy#GA#mv!-XJlm2UoDIl7**MMES|=V7A+!H zi;skv!(m#Q(rB7F(-~2m53lmqK;^D!$jF~Q(?W@2!lYip81Wc9R*0x_gCG^WtU2bu zZdI;!d{-)*3pJ*f_`;5+P@@6KG}DVhMA1h1sSvSYREVgsG8DpkM$a%HhVk$~!lylO z2Js-+#A*1lv&#y}%Q-{%QDG3n0tyi61JM%p>iv~zl;ZBU3wuRfJ&)sZ$~w6kLR5Dm*Ll8!y_*wfMb~3mym}aUP=d6kFoV@7-WMazh+7up&yVrv#rR93{r;G?^+&fY zynVE-p$z`$HiNgfG=?@arj6#4zYjjq-dI$<{lp_9ofy9OWBB5a;fp_pFaB7*Ob30e z@~Zf^HCnT>zKpH0$lj_Jj;WCL!NSKRY1f4I0C6;Xya}bmw;Z9yxs407j{rxBqWCLt z&A$Ryf-Gnc&=*5(RrvDkSCz>^{KU6`g-n{UZBt9dAgWm8`Oq|w6e_7ov_Ztrf9mnt zPOAZ@HV_IJ&WIAN(HY~2RoFM?Yg;_~+UoHQq4pu5VNY9_T35%uQ={y_Tl&|H3 z!en})vSXcXMD~{yMEkKekB;|+z33y1S4h(%tY~U6_|h|+)}}r!n7SDIXfX=`x<^}E zGIDwlThAIp2*>CzEX@{q0ffT5$a8toRFnc2nquRyLwUBwjUM3>b9*C?vi1?4JFRzojJw`yR_^yrXAy?x z*UDfL$}zaIdrbwNV<7b%m*wv*8PV%CoCaktg~Q?`r+024f5a8_mWcWT;tKnT>z&gq zU3Tx>LtIHwfB9vX^_^dKUY~Jg{nW3lpZv=Dsb5)6-}Ngi=&yd-z>DpH#1|}h`>sPl zU-jctgNZNt1=CCisi1Ia6-Ta(yG&h$pKVpZW!n>Q*%AOQTP9I_10_H_cg@@tb^lpf zyvW?_(rihSeYFDQp!Q7tjP-TsF?oh~{n-#-P#PuDNak8A@Y=B*?_LU~_Y;@bPh5UK zab^9)755WY(ofv9e&TZaiNn+uX2p1>`9$jO?H!*ebV&z!%rx&eW&Y(pHPnb zPS+1Vp>+41t{;A4MbLM;e)#F{ho4xu^i6Ymc&4{jXx&oq=l2q(sYF`;<#+}8np$KG zEa0kCR9G*06!eluL2r4KO)?Y)?}4Y5XaS@PYMBVV1d)!{1CL&CMHD%n7_xxEwJ{!{ ziRq+QTndlHrT25;LPF!p!u!A|Kjv9oeWhGUDZ{(Z-om2Og|#-kcQNR2lMUe|K9pYu zKoOe=n1Z`xr-<0gRsa<40N4RG0M_7s3qS$@&rf)WFGYMQ;!6=|G9$Gp%Ivi&U+St1i zqUk^!mUdyg5=4x`?OHfxL-r-Yc@S%WPvK;1A{oPR_9wz=hy{p` zu|>h_%JYe_NfAykYr|j6{gT4`6T^O)`KJ)?316b# zNaINNQ*Xq0ASSbT>W%R0^d;(zpic~C@zfjPCq^Y*UIPD%V*Zg=hw?;=H=7#H}mr8`J1)!mFoGMwepqf`J1)!m4@@z%2yiBUn^g! zoy+P+o(>BU!yuTK8@03B`tpfp{WdN6D0GDL|mt_E#msjHDm3Vn2PEX?Wv<64MoSxRe@H2WQ+JHen zUv^3+Igi)qnuNix%~wHN9v_FIuq{ zr$=f4)c_pP5`rKQ1c4w31VJDO0znW6f^29c1d7!P4&J&il;6Pwo zus%&+AJREIeTV?nkiIsmEAS=+ts0F&exRui$B;SQ1EANFT%@c$@}eV5lotjIrpM;c zuP8Uu7+HFqeyu5%J_cSzq^{h$LsXg?Q*3!zbeKO{nrOO4{`Jh0ZEG6R$I{pP5)Nb; z+K$%&hfkyPVoH3Z4v6njZypw%&QL}kA5{*$e7)osRen7`8a_DVL$>LdML3*M?P#t| z%YzX=dSQ`R__{^Y{W54+M)-w zNZDC9v+BX|AXIQhQ`_d&(y}wis=yp11m4VXXVmn>Gf@~$V)Miiyr?h)6CT+^i^u{_ zFdPUZ9j_O9bcj?-9KmbSg9LhYhqi zqYRnwd{|-FfaqV2P@aU_S0AMK=r~=@#N=gc`*}FNB=GooWHB)($YoL=Qb@zC4U$Zx zK2+P-*{>Aj_>G+$zcEe%4WF>I1dXte(_aQ0A6OcGl%F$TQuBe-sS!q4jN@WQL?d@_#SBjGNJ_8uJtk~}Z917O zm=f!qRYEi^vN;y!iO?rKn*R@oUK9`erguQJqWMkzDN;VFAg^;=T2XamBQC;&sPgs` zhZ7-WTniE;av2iD0<-n zM(Wl>7N4qVxUu7+cRbqPr@9u|t#~7@myLC-Nm^m(JEVv@8J(|@=PX+yCq&~IdEXmO zPZ~PUB6NDv=!p}}C)5XfB3ffc==6qjDtk?YV7K+cBQS;xexFF?mM%6JfVK^6{;t^C_bohP=@?s6?|=TT z1MPu5%hj_7^~5pesrSNgxfb+NXC7v(^Nin8XHLhMzh37VzopKcUcYtjB~QK1I5pg# z8l$(luEq#O!Fqfh({B=#}-G3#PwR%K-{vD(iY}3 z>Ky1<)^HxscnKM0Ul5n>f*86BdeQ}*=DrAp^K8}#8U3+L;BgHwP_FeT^fKzbdN@85 z>@}Ra!g!d&j`Xwk1}#iePWALnJqC;x?{8?V3zan1H-!8!w>oL=++b~AY|+aS;Py+| z;NtWV)?<(u;~TUz(dF!g4)FS=(^1_c-ncgdbDtWUSl;+RR-Z`nU<|llLBs38(?^$q zcnexudZMIL?SoShTG4dSq=xx0TvlUPH7~y*3>JMuy;oYxhs9GTV2p?fGmML{=~qL$ zP*`jkjrw(V5IP#tMc8C5n&VO2*i%$k8EBi<5p0`Z9%$;obr=C8 zs}(9y!Z3kSd;r_7U7bPoFyuuv=p*MKzVNR#72(S&Q!CwiK-*J&;{|jiI-CnT2SI%I zjN1rUsVN;R0*ljbBZ2tR?L0@0{06&ff;i5L>mKk$d2Er!N;m@(6G$fua11z>0eX$W zbL4%X^v$53QOP-(QPYa;YWB;9MZ-#12#U5#n+FRTz1gKLM0l)S+H!HGnU)WBr32q1O4PI)0IHZBX?-l~ z_Vp6m63;y2WE^4t-cH(7T+YGn`c!MP@XGIkwbj(oPQmOx!8#NvEv*zr%zX7^9}TyJ0DDeGO?xNN=C45L@!zUn_ zK^AS3vu8Sb9)4z53~S-cJ^;s=Sl1QC!Fwl~N?BUX&ZUN51iOJc9qe=0PQW>0?GK$O zu2sW-GVpyA-YJQ;T1F#N8JND!HZYwmB}Dp*aYrJ0M$2Y50R_O%AZ*CDK+hx_$#gTv zue&G8xcAo|&B(rF&wVldz9(a8O(+Z9KJ;5|3yIYK*X)7*&*hK4zx1D7uV2#^qy-rJ z@vlkyKerwAHS&LYJNC8)($}fw7`OV3cJbG#k=y9{lO4bHJwksp`;$ldT2;H}@DXou z&A{~ZlTy-4Vd%V|v0CuA)P?2+n8{qhe>y(t#KormTv&3PRC+q~TfeVRD1;ebdd?5D z)#|vD=v`tR-8inj&m($-LpFXO_F-E%8|P{2TiP0f?0s!^fqzmC;(e{H%!Q?4ECcE8 z*Af`0>11j1T3|btdoed*m4Wlo0J>|{55TV*mq4FK4{(3!#ZOW6BRu*sTnf;w(!u>NF<^Dn3KZyGWa{oZ?wJb}17iOhikyEs1#>}j*gRdTOEttIT_(Km} z^SDiUv#4^?#l^c$cj7&4YXB<&%K?i3-2mcMdJwwA?1Aa6fb=XH?*Y)*I8eyIyI%bbvI*;8T>@l4YP8}X{Td7yC$f7%L>68LeV~bH z1cI=vX<&L~CBB)$^?4O!fI^9>2TUppx)7H`sX;3-6vAMQoUVCM>c2_-r zmyWbN5pC48=QOqnIu*7h1ALgE!drh9EsVwogQ4Ku94gvqq}3wBN$ERm>=d=JOImq` zrlQhHEtpFUqo)ubjRio5xy1q8YLEMAo9poXL}z17Pz&G%2-l7K{q+5F2b#m^$DUDh zN4Q)teBM5X%$OfIKPq#(TAOf_LtCZ4A&4)1@>-g3uLP5I;R1lZo;h=QrjUU-u>2*I z;(P^8Z!iJr$Jg7XE%Y6A4TL9n4O%U@Um7HEHZhdn(o!qr;d4#OATQ7f4r%H1g6ncT zZael-?mD|N9riJ4Kv|GlcBHRefnwmWdA((&9pg;KG%g`o#7KmO+ z{f4#!GhjEIK6-7NuN~gdj~T-{FHFSY zE{KL;%^VY3Wu%eZL;2vx5$G1|(goV+3ocU?zP!Tq3#NI2c9>ynYwKvG-Nr)&A1*k+ z*H@-a{^1`(=xE1=U^Tmx!_*jJL582ae&* z4Ybc;8>O0kbxIv-z@{Z-Nq3qvA2u)BT3Yd~B));DZVXYH3={fgnBN>SWSc9049^c4VAmv&{T%)z!M95V{g zQKbM$A-d$G4wp2uQ$+N=9O_ZpK;I3tV|y0)0zH7^O_U?$PbieLAr-!uYJyr*tFea` zqB>GdOLM2jWG&8+h#!%{4z)3Hz*O6aYUAz&n4af3MTlf*_1p7#O8U0XFc$$rfPBDM zK!Vmi1agg_^;_OysV&2u@?_!U=$;G9eXu(ajRG9-qB=;mX5ET<0p0tc1sQrU+5PKi zK8@^L^T9*MxH{T`rjth3n(+BHyE_N>I5e9ITWUM72hTof)W;o3?B;-`|4}(gu(oc- zy;!Aq7f9zFXx?jJdh#4R=VA7t6IC5-=h-BjB#g#t+ys0Ro=5;_>FMsyo~d(@iq2=X zVfIQB4n>+W@f+b z3lD2WXj3iz04Nf_gOsn3#_dI_7|}#Gjoyb~Hzm!d9o3`rc+Ko}3G4Ox;MOa__Fd9w zR#Hvux~h5YkR;8aIv;4EgSAXPjgP}$yALoTw#=Ih0AN8W6l{ba2>6c<$jQc4pE;?ud}8E=hJiK5NU1~H7A8p-iX!$d^zR5;z?*>DjfeM zz@@d&006B?_LZlm7f(-3&&Ts`{e3~xW3QTg zt)24BQ7a4QlR*lmo>qphn<1@(-!W3%*j&lBA}foVIxuIExz)2)jn62*py0FbmKMcoQ(vk|G2EO93wd z_5n_^rU>%^_W|Aqq}o!1Oh5x*1t8I$BFKO?zzV>70G}g8=mLBK7%L+mKo{Umz;Go+ zmi~}eb^}hz z1}>lrum-II$o_ zm<_lA@De~MOc9CzD*^8UMi!+ALBJZoXMmHYqMZRB0FEk75hei^0@eZsPeWdSM!@0z z6rm7s4qyWyp)^IX1Fi+U2{@t*X#sx(+z)sMFti+H1GEBe0=xkD1u%X(+63??zz)Dq z0I>pT0rvyww`T~}$^VVOGQ}U$P^{hm8-enr@%qJaLi)D=@~>-1U~cUXDd{A;LU5M> z)&eNrTC9zAeVmV{z)meqX)kfJ8nw7kOx$23yNb_cM1p>s&q+wv>FTZ)6Vd&)pd2HU zuRexk>kd4VEZWV>rsKxCmtClpK@Ts#pl3dMe!5F}klfDPmy%9-T?kiCAL~*X2tlK5=lo<=7TOcr!1GuJ*N}wOlj>}&cO`I$e>9?KuZ`+Z zfH2B;k));XhD+h}i*+gOorov*KDe|8x7mPCbkZ#vpIF)-qss(z_Mq$C$D5 z?r^wNE)!h6T$%mknF(C|H~zt7MvMGJQx7MXXc8<0Euu?hT7qW^TNy*2!YF+!F9Z3v z$KW7{{V0y;QC&s}k+p{wtNqpKZQ^xY#p}2RF5?Yc#v8bqhJ^QSOlIK}M?51s1;|6s zZ#kYRtTHBFJwHLwc$x~A!qT~mM@EZWs%Iv`i6-G}jG;w1^wVj!a++P7RyR*eW!xPn z?K+-z15dljkako;|GeA7)9&MGh;Osvq%o;l{l~)9+kAOHX)-}m|Lxuqzb|b8EuHQT zJQI(0$I#dL*2T-xYAA~-vHv=+;^5JKl|`Z^++8MU1yy?t-K86&y2y*v(<60H{dqK!QBX4O1~K{rGJH|rT)62 zpR|c>U6%D*lK2Po`Exb!3ZZM^(D;8OT5o}Suc*8!wY_i6PX4p%Ru zX;9zwr#v$`F6CDm2e*dPp97ch+j&|lUw53e*BbKK7zg(e1McoPxStqsho$vj*CAON ze~yJqx{l%K3R5++7CT;fM6k zgY<0PN8svxBqvUqOpZ%s>57BfYQS9`2X~bLcUv6X9l%BQ!Zx0Uc(^}Kn)DoASGZJm z6Zex#b!YS6;Qskl!P6A;G?Z^BPMSw}nq_b)-xb`wpVOdx*Yrb!%0_cr`l0=oEj?GO z-yTkXA6zP*fN&anGS8%*yxO$t*{m{-N8vOS`!N92X(*08gG8$CA9iTz^t&5>W zb=HC6>3Jb=s7wUW1#FyNZf`{%=l2Hb);xM}%Xn+$=gkDsnMX}lbl`qJ7sxYY*S z9dU3M8E})1=)aEl8gRupxZ4f5m2q%?G~h0ZgKL@;>2K@f;N}@{cg4YNGT;s#(mx-r z0xrpqo4C7%yMN&{NFK>?XnYA=pa~!IG&C+3#z`}NvX;gQSMN9L;-qQhX#$2cAI3>@ zA5U|qArX~3m6p2X8o8_$Z9<_eBW<9vA>+@}q=o8sVpXTbeD z4(`}Ot=uA9Du)c0%AO5Zulw*L`>%T^r*ST)aWSWHrGZ9e92%QBjjf!h~a(ni0V%7re&x0}0{arav8-pbvz+CW;ai>%aCS!oHS!fwR&X0)$5UZT;KH| z9FiTg`oW=oGn3P;flKwB1DANz377i(WpD}a3ApeI&%q_Um*G+#gtI749tmYy+Cgyj zvTu%)M&W6EhBW))q&bVHnQurlenj6qqI%uMaj8zT;^4kvz+DmtcR;yT=R@G?b>0vs zjg#Y2Sw4@0+hD*Q{)hhSc#Q!!Cl2n@2He&-xL*MmMHPPFX{g_6bd4WW$8B+N zrvaDfpU%?|{rz#$T*}kjXhqz;AyrQ($vOD^DW1vdaQ_pYpT%3&{(*7U)UTc z%`D(j-RB$9?2D7;4vtG@8h=9Hb=Kd9ZAJg5Jaqqe=~|w;f1@FO@355g9|1;uWBkD3 z_?8f0jNfKRPvKc3wfI!HCjs<)jOF-YR7(2Eqoe6;kD;@4Ty*>nL;Q)S;`=Cou^bx= z@sFIAlKwXU#nZ3$MA8hj-`3HoLcuJYK^_$e`}E{gp|~bRC@|nR0B!?0@8o( zL4JTI0BZnC0p|i50Of$m01vIs9FPeZ4;TSR1$=|{vZIW7fKos;U?hNk zb;Q?GQiWpyRzL+{EnpuYe;jxVxDD_EVEC!2!fe2E0MmFp12zCsPeZ;j$bfENH+z)=BX0mlN;0f~Sg9jU^XfR6z? z0WSld25bP_3s?nM4pfMWqkfbYkEUx3#Dn*i$pcL1&hbOV|J)qr9^4nPKs1snxP1MEZoy8-lj z2>jg!SPh`xWkNP?-wOo`J3>MFGG*R?5?BR*H8vK2`y!L32O2~8fYFc7+?s+@tLX!f z+%Dn7B!5#d*eWC^WZ=i{N@r18Tb$?!4Fev6FL)7>YS!}%A_>d74iu;Q-~G` z3vjFyh|lT>h4879@MyxM_OO>l!nnL}Cek#cEX;-#Is@;@WXf2k1_1r+IsNvFd+-y z8aMNpJ0s;UZb1!MJ8Pdd7Y1PhzXoAM0Bk7rrX?~FSKdTXliF?FVQRCS=ekv(H9W#*K5N6~k{RiQSF zu=dQH%=S=iW@fo}6uxi8mvp$D9brT@OVum0*nCSJIe;+MhZYELsj3`y% ztGzjmA)X75nS&UyM@)X^4B@*ZZx#FStBPBh)DoWVt0>N@nl4TPig5G*uh;r}OX%~J zi{?yU7X1a$n-Wl>-%B$SECj8k2ZdI+Xu`*gkGQcfg#I0Dt3opetJ={O+JaGRO&;j2 zn%dTiue|B&_{^&QQe@>;powO&cIXdJYp^M)UUpB!@9tw&MacD-gV%lq8B{zkKLDw;%lWz)(ZGprkVgd)x6% z^+74;jR%X1TIrbNTa5B`R38js@8w+)l@|Vj@#y=#vd`yZZCwIM@w+>sFBir0j;ivr zTWK&BgKgS$b)Zw4#O9yB4fIyisc=%X|{IdfA~PdXUVLhnUE!RsC6%|Ec^0d!-wYB=4;B=T=tV2Gq8Yj_7C%}Nsvy5YSOM1|{gUMN zv)T~9j8P<;`q!{0!pupm;#VnGwbFh8Oe$in7!azm+d?_j^(Dd9mbTDzoa{kJR~Pm^ zTIS{I*Rzpb8mw!=*R@5K3uqCp-yYHj1_rTkIO5DPsmu5p?mD50GR&hQXS&6wF_gD>u6g?s7fYdTP-#C8lQ2c0rkIqKvjFQ zX1+%FFtKWGbvrdgeo|FuI9PZnIfRAvJh1CwJax3f29@w6a07FKtz=#9DbQ$zeJkb> zZXw#u)HvrRW4DQASU;eu6{{?mooN!jWVtl5_WmZJs;;A{i6y)R?GtJV2uTB|6wTE{ zVPP_E?ZaM6Di70AjY_KOXhuEe2#tPDt=luWJmUugw)QBhOVqAt#{5PIGBdHnN0(CsZxz|(LGE=eRkhfp zz!R`wEe$&YuzyvX8II1(oCYyK{d662t--cpvmq^6v}zA07KHOK;$VV^E$`~Fif(9W znIi~;g{UhSu|tz6VE=};0l85`+MpssONiVz}?H`OD z8Azh-KtWiaI7v5&6wIb;Fc9O%-V)hBdIA;|$uetf_?y^61FK_$g|89|f-v0HBixse z*Mv)ksis*SWIYYLXAP)Fpq7FJ;U(H-#kSnkI?cbG%1DpIPT`n@JSqHMZSpsAt$z5;)gQxY|Y`S*S#vU=|SJxr~NpkunlIgF?v&BM}Bx3igv*F*Xf$ zn6yR4D~ z%^YobVQ&`YVwN+>s;*C1&-{(;b7&{q--_J^pYR99p*&hI5G9oUd7Xp45SB*O*b79l zg}>{&*-@c~BXv`ddP8YT0d)-BD}12iv##<}VpMEtOBinx?lcXl13VTyE+@_i!d<{MXu-nh#!PN(o znzTtD&-bxsNOnBGnuuL>+9QGxDJF|?kd`wBlmr^vgNAu`J$MJ4EX*V*$>SJ}7+Da; zbAq+Nf^LA#=|_#Bc-w&Kok(br!mWwJ`ya2eUz? z{%(ZX2E)6P0qg-rN7=nS%{4*R6(OPTru4kUh$SElkusI?(e}ovpZMCTd0CG+EvZx& z+Z-L|?RwG>JW1gjUBjFK5imj!j!Z%?=`))4|Le6EN8Ezh3<@z=G^;0njMcMw6b7;| zxYhwiqOE)sq6s?|=o9iOBo|ilINd3_pT`Ht&*+le2NI|_B2-vFA^Dl;gI73}eAq&5 zh9trhvuo-T#<5V{LR;AS8ndtWJofLY#n|kOw?)iH@`>(xo|IDn63BIj7Vd8i*5G}S zW_p%JDih)C-5UKlwe1GYo|`X~eX~L~iwG9s-QWhmZooDepiVyu0PDcpV1GFMXh_jx z1!30+*m?K^zMCA6Gi5lW*F8U3SO*vkT1Nto2aE%#fLuTsAOPq9oDWz6xDh~K%OnZ| zgd|wo7%0FNnlK1@=OM8FR%{|$ZB%I{=gIb5PE(Vw8dfZYoR*UI*6jJ1w%hsJA8l0O z-386Fz+#r)c|hF3HGVi*S|Bd+XOACZD)FOG&XUUrqV%w-wZ3g{O2Pqs@L zm1wVoD*QkAjjz?tnk9fXJ&$NjNgoav21o}C2BZR#00Mw;_U+Nmc4T0^rEQv41>4&2 zs)jAYV583%-%^j)JyFq7@j-nVz!MwORtIV|6S_QZ0uCn)q{DFdZMYjYw*l(_YXNHj zs{yM3D*-D2%K^&(O8|=i7XrEg3jtk#5TF&%1ZV)%0%id!0TqB!Krx^IkPpZKWCC0O z;+K3sY$^iA0!)D6fOJ4AK%nQpfPa8gKoURz?0*3K1MCIt0elYF4fqhS3-C5z2Vgs3 z8(=G73t%%~6JR4?17JOX_(0`|1tSj)il|WZapq(9AM<1mrPF_VzSho7;rLF}ce#4} z|GED=IFQ7unFRR=+XWD_$#C=GQYV8U*Y4qPm%)X@ej0v)FdM!#G2s-qDM9Gogzz`u z?tuFx+&yp;6S1j@XP~g3PKWxish4m%k0|#NJ_r*?F(u+ZoeqW1>La|hkMQn3!k6_C zzN)uy6kr{~M_h$7Kq&NwT7iV__@i#bc^?CQ1N<%n z{_2}kg_#EYG}s;X<39Op+*+m2v(9OVSPK8hm`PeiUrNih6%>Q~ znI*%YbWkMA&SP*-G^Nw-@uk?yhK>OTv3Z8ylA%)>Mji8Mf0nX5>E@&mO6131y59hc zN&K!DIuYT`0J>d?ayNnBE#QIv>lQ8_s)d-qVd7mQZnmZyxH^!c3HVv~+k!gHVKmdx zh8?g>-O30oL)r8;pjy`=2deFrLvzsLxd0lQeuRebPpgwwva5&s8QS_F@HNS=yzSXRwXELF=Dk`B0Yr4d1Dx> zLXa^Uv>V5?T5J-Y?`EXfpT~qVxhEC1@&nV4+?!DfdLsTdq6`@Mz64ly(9>;7-O_zH z^Sm!y!d#tOv2~`sKl~EzweO~38eSRL-5mTq#%9xC4M3yYbnm4sw-J=&4vH`&#v`HeT8-i04GIr zSv|Tb0KW+T9Kr?QUs4SJa#-0SwWiPxIz#d89H zG<2G0jK7sMCPA5`pVkNT+n`7)QV)R+&u~O=RD{eG1uOcSh;Y*D6T-7L^>R(Cv639( z;dGZ%Gq_a*mu}0TpQcC6hL5DJ9rR#JUpNwJ^t`qCgk)$VT2q(Elvbaed+Xn^ZEc5) ziO{4Oi}XotG!QK_?o>7j4)#}Me=QV@5>Yy;zordpGg_nudKqH#%fpRq2^iU=!BXpz zL~2FdsTTFmycwWCqgg<1M4wuLG)YbC%)-bft(L~=cGiR zmDZx9krHk!r~BfwRt`USL_I+p5yo=luyU5OI_tHH^h&ZjiU|ZO4&n|;8l$vBgfM9E zx+GViy*)U$8kg;K&24IKcaQ97YgXH98t|&B{j|CIePO5Jjhz~3pPSKX9*K*Jnj7na z?fM?Qd!#u-9O*eU&178lY5O)w8n$lAnx6$#S2}%E-pPJyrX|`_a*v$X z*ldwTnws(c&^C`lReNV;r^cJN!; zd~G!iI2~0J!W(S&NZh!BxQ^3~18X?)FENP-tB{fSS$z{p5EVOo8FSIVQF0n4NF1N0*uC%VQuC}hR zuC=bSuD5QmZnSQ)Znkc*ZnbW+ZnqZNX4~f57Tea@Hrg!qZ2MLA>+Cn%AGYT?3LHU4 z$ni(VSB@0jmnch>8`!wA!9TFGh>qWqlIu z^S<>fYqD*KZLG~^n_{a+JN?miiS2sZQmao^-#=icCc(fv2~$L=rP37$co5uQ;VhsWzF@yzhd^>la^d6s$p z|5d4zP`~ zskS0pt!Rff6`bYIL^&0gS^)8IV$JM{8uc~jUAE{rd|5OJ!4|N{xJkfco)8_O# zCprDjGo1C#vz%u;FLGYtyx#dI=bxPqJD+mC=zQJzuJaS;x6Xe#Q(Q;5jze#l;8I-K zu0q#zSHLyL)!{nNb*bxW*G;ZFUH7{lb3N;N#r3A^1J@U>A6yCUiSC*1M)x`H)$S+V z&$-`n|HJ*cdx9t5Q;PB2>{);waE0ea&mEq17}J0CyzlwU^Svk0o9;c@dy+T9D|@G7 zWVd3_($k$k1wOuGA$xDZMSdCw(IQD5YYQo?#{Ahoo~C?w#2r~cCGCO+bY{?+ugQ%ZR>3tY){yp zwr#O(wY_G0!}c~t{l~UXZF_8cZ9m$6wk6q9?T6Wi*oWIk*hkvO*vH#NyWOtZGwnI{ z$@U_9slCE}roGzUfd1HK@3b$pciS(vFSakUFSp+SIltPz#(uB;0s98~M*GwD=g?EP z+2254-DUsK{;B;-`(FD#`_J}7N2+76V~FD@#|VeXF~%{@Av&xM)!}jEK+Y67N+4@0 z9o3FHN0Xz~(dk&==yqJ_SnOEpSPtoPv*R{MptX(%91l4*IyO0;bG(55za1ms9gKn9 z7zN)r_Br-D66JyNU^!hr3UiG~9wm>1tg_0o?2)tNe7Qg_k;~;u$gVnhHfErZyg)uz zz7R9fQu!)*g}hR}O};~3E3cCu!mPAO-YmZ$zbtQ;cVK>cU*0W$E`K9`FYlKHWuTI# zq$|UeW0m8TQOZ~)Ly;6&aVc3!o>HI`E9J@zWtLK_%vPF}kkX}`tDLVaQkE!JDc341 zl~u|e%H7I3WxevK@`SQk*`mCxyr%3>-d5gMK2|hbDG zb*wsGl~lXxQZv;&b+THlmZ~$XF<0(U_o_dtKdVX3ROeyNA5zdj$F_6`w)9zHA zna&)@>>_8Wv%-0%vl_Cy$=T-YbS`vuLxwMQE^{t--r&3$vV4v6UgrbO4bF{_>CZX0 zI=4CBaPEX`|IqoV^GoMm=RU~zL|3Y7uxp6xDAx$g#baFKTq0&<)#Y*JU|ueAmAEP} zJ6F5vTuqn>Ix!b?V>Vcf`CvI_gqtxZtii1Cfa@X5+?!m_xn6K>b8UC+biL#H(6!t3 zrRy8lKG%L%qI;lwFy{56+{e02?osY>?hLopExSGLEO$QUjS_dcyV5<&UFV+dZgqz+ zhn(xa(7njL)P0qEg?pv@HuoLwwU|*JazE$zr6nKg~<(PYBd1^hgA%8;9DbDqr4=J?7 zbCu^>&q~iK$fCO;jn;b}#jLd1v&HkW=QZdWZ$mbH?D^cY2lDAhkKj%6rg;zZ4)YH8 z9`7CL9Sbc)^4h&F%vyQg$=+gbsdt9=OmD5X!P^Y^)#Y92J>Pq=cL_9^i!uzy$i+8K{HSZhVx4pZ(AA3KA_OjReqxWYo?fNue-b)fw#lyrQ;&5?< zI8q!Vju%DDgDMVB=ZKRr8=rK;7mLfFQQjclEUt!ZyjOex z^W{eIY4JI6tGG>kL)=}YVL%V+RbL#rRL@473Q0vF|9GLH9uf}$h^_K$^4x81Kq*2m1XjWE9mORjN^Q8i*L@JjmrCCy) zG+SCFJtRFNy(sOHzLdU~k}X3ZuU(d0OOd74a+c*>%O#epEVo(iv^;Ei&a&OI-*Tw+ zXsZcxx6_(qoeX^|V7LO^! zTh$$ymp_9>Ho@s~<~z%v8#g#_ajtbf?tH=di}NtoRM(lVTU_^Getp69ch@Jb@1S?3 zxu;@wor95biTir@?e4!|Wc=bj#B-cy9JH+SJeOf+z1#D!=XuZTo)0{qdM0?C-YMvp z_1^j3i@aB(AHM7T%=;6~r?UiMFZARz^sp*%4z%ON;tKIy@iXx!G0l9mxysyZzR&yw zRwaX_;nHYnyrf7i(n4vGbd9u9x=VT&+SER@&tS_jmZ_FX%%&Zd^DGxzuC_dB*=pHg z`N;B><$KEj>jbOInr|($R$1$;?O3kjKh4*(LkrBKbUd31*brF`L{kKOujGStC_BQW*iAON6e~ ztSn$_n`@NYls{t@_zEqSrXCGBKN>RL4e8#kUJ5CGGgdcGsLw)br#p{GCU=q2Tr8p~YE z0*v7+Eh{a5vaGW_YIzpDs;&E*7L1bVEuHr z^?qn)FIwNU?y`OXeJs^>IO{zQn+GeY3R|6Ru5AH&&^72mciA4YZMMB=+hP02_ARuk z6#FpfQl~(V%C=9#s1HJO>b743jpk7^Z0(J;7VdMdAe(u%L|E7=W54XeI91#2Qf20 z<$4Kgw)b6!v)-2HE_9c=1MUWQi+dsZ+hVM=Z)WrBdaT*r#ax=`ITGu&lRXy9n}v`j zt37u?mOSBk*7G;dPOR0w#A@v)Pby}?5ndBkY-7Dsy)(U!VJ6$|{mA=;SLnuRMaYx{ z%v>Wyi#Sm%5NC6v&qmW*g?1N^^txG4oc;86TOyK;KG{ zj*~>Jx_wfSG!xo;m$X>AN?Id5C~cBn<}0{EEOW4KyU=ot+Q1u3%^Qsz+miO{lD z=+!mo6@P>-eG_Jc^-Rv3ie8Wd`ErKiEadI|KzyVP}9vAv?c11&He^Ffm{gtgh_&Rd;#K)P&qz6afHFxF!>Xlc`+p9NiK zyDo!d`LpX$*E6oSu>$)MI@b~Iv1sp1_hrzaRzsRR?S2Is(`W7T(JyxOwq1~LuzD*d2IJ; zF7%Dd#Xn(1{)qSrG>b39@5E&DVOW)0&2DqK`3!RilH@Y;YV$hi28Uo*YZUgi+|o46 z^|Ph(q^q$u--vmB2i9djNQsssEh8;XOTJ~AWj5ydMV4ijRhGLfPg`EWTtc$paLn^# z*j!SI`F$hSX|G%V%lb9eW@)w)Y!+LVt+fpk0_WAx*&l$O{uXA9ADzjrp|0^R8Ev`}yJ8Qz9><=` zPRtmBJJmhJJqCMYS#Ce({|5ITp(Ru6ZonG*b@xv9*Y1D1MNgTh4jS%xo=czwtb#tf z#q*NqBTtfd5Oh`%nrf@}8t)y@L7(*g)%zCo&b`#OtMGmVb3&?ks5n~8!kDdtHn0GC z^IMVUeE$P@NBf~Rp#r=cbe}t|Hb?a^uAZj@0ve0?=cG) z!-LV*;p!-Lnp%$Cnl|)|W!SB`OMO6n z3KD*o`W@DQ2^jk)J102voKu{|*r91bKY7vlHr8+7IS+M>g`CfWUQzFAc3tGU96K-% zVEy%?>s_q6lHG@5m30dC<#OE9u&SEl?r>j<)f8zJPeZ4854&<-U{~%i=o4e1O`Hxn zFc1CZV$V&U+dcProQ!$c2sKQ&@HEghu%-RvAa3A5Ab%F&E?g!ff=Q3!qzE zhraU=r2i|B{=1=BBui=1@z63oSQAuA9nu0OC00mlrDvrVq*tVmu_E|R8jStcW1vw; zmON+_HPAa3TCRgOajRv6Ws_wO_Fj{$r&v{M7W9Xi))s3B`{vg`>wMb!SM-iu*xmal z=7Zt3(b(PdV&~=zThP{Gy8v3lt+qRCkD`D44gKR=+fTN1`;pj#vDlqhD@?an+3&%Q z%4YlP_Aju9GQe@HVFp<)MbC3XuQ#Qxo@&^14W z+(?Do7=^unvz<$@&c7Wybx%PP*a@leJ#@_>u4Az)w-77zYp^GGKUU>0U^TuQ`*BHF ze|w>2&Ol#ich7g92f1+_R@Lj!7xuaTD#ID&a06?<|=L2{fa)`;g~w!coi6)Vqw zV0}3NGyU;qC$!6%SVK0OJD^$KX#Nvq#h2zEF)IwkiqIkDL6fY;tZ)|gY_F4Uk^X^| zUkX-!$68Lre!9z2Xz^RBp*NmyxzF+h=KHrSA6P!Y`U3Z_TZdXlvejP`_HGxUoj2kg z$WF)rlg)wAUu>I>mBj_v!M(+HCwAW+w{1u3o`ChAYM)~FW8_!a>#>V=zWqx3ZT59o z2R>te!Tu`t$BuCvk9A;yW0qq!+IF4euUJ>?a{R-QBoD=mK;z$odB0X}lJCQc;syCF z`2+b=IR))|GIpO-?Bf%T7bBFyk_sk^cAOLk6WtG+JG z@~>bH_zZ2CiWS2gHm|S1Ui(k3RQGVa6=`vwjh0)16(6k$XuUU$vT>lIlpNdg62U__e>$~9cPu4>)mRhiO zyUcbYq^p44%i++dM7!6X5AN34=VQRD5=;%Frl!i&iNGCv+ZNQ$!S6CG#;vK{=^z2j7 zw-t*A@AvZ2!^^M}{fXsUOUQaI);Gg!PFpo}nRT|mV^28GUV=4n2>tU_NS`B_E_xSM zB5ynPV4Zssw3BkV1DeSi=$>z3bsNGC=Nr&M2H_2X3;b+RFHmn&A5vdeKY=6}fww;-^zpJpYL4(jqpY690+@~ zJ~aXTsYbj2Qhu{|GphasTP*Kl zPvCItSgX%^y0r~@`fBT=Skt{_{l=PTI|h3Jnb6PcY@N2tZ8u@3d^5E4Z)}IyN7>!> zGJ7*tY^$(Z`>Xx$*vI}Ed>9S=+>agVi?B9(h-u{s^3hoJ%UFq3$({1W@=egxp23@z zPq9C9gmNO*UQ?9@^t2nGslBLtsQgPAirLtzPQlo0!+!1c>Kd%^*RfsNjp`A0%&vYa-r>oa4F{Z!x#x{n#(Az0JCty`M5+z5AMNr|o^)*Vru)*!uz#I5n2NF|gWY zyNkUu$hQ~Ri?O=7!hQ|ruhX!ybvveDcfT5Pt;I1Pn$2pqm%q-j9;1?W^M8VlGaj6~ zUH-HDn7l=P4Xf98QePl>|`JAl$`;# zYPkk)lpe)A^?V=e)!}UKc@#97Dy(FdV8oLCavWAKl3T^BH3>RQ$lZmtYB$>zrt$lt z`wjQo?g7}l{r^~d5AdAN{_p=n#3ptS1VIp7dtXcfqc%l@SV65AC5Tab1VM^w zYR_7sidv0PVpFNcsu(2*{;$uOxU1Ux{{8>Q@js5=@$|W$-*fcl`kv=!yw|zJeTaRu zG$(W*=kuW2KmU~9)hioLbHO-DYb(IFhiF3;R@#Y8w5LK#BVZCoD7lChVU*YqW*fPHdOD`B`5A4khxhwPh`)1SZelPd>fY+AvrUd;pEyIedIK6+ z6lPaPRqX@|-;>!e+z??H$__Ew5CvioZHQs7oM%|Xcl!nGxW93jaST;x5w~i+aiej! z@u2!b!udTjrW-TZB!u1TZ@Lag_lGINl*e4uTn7BOx>*m7)XCh{+*2`e5vn@xFkdq_ z2Q%tSO&V#LXqj%A%|5y6gKu_~86w5v3u4raso@BG)>UrSQ#fD^999vB3) z4n%Vi8>rD{)6C}E$(Jju=8L*;5-qgtwcWIGr#}2@H_%$-*NxGAshdGZTnAV1z3za* z6Q3z=K%@82=T_`MQ^f*IWWp~EKRdv%1cd*Q!JA&u3mkA5^W75TN+!IMO6Bs`efscg zd6;t3IUATl*!VI`dHG76;YN3`*X6e86q3`6S$&%2E6ZY4>pr|sncpTAoIlO-jQOO7 z)eL&v1D^4fwIcKS7x08XGs#teZ*Qjd`Y&MHr~V)PBGq0-v3Q@b!QG=@xSjpz6$hBk z3%g9{C+f4&_v7x2WS{@*<_IFUS8-m)Tqj*giuKCpE&)1MkM4XKzPuJF@8rOZfyq+y zg0g91q@%FG*VLM{^|T%M5`F*n9fS``0Ik`k7@Yl_rDB|nqs+U$#3o!3sCG z?sDC9J#+am;YPZ5b1u{5R03RQ;~jI2rZ1b}T>W?YXXYlB4&1YSmOga)Xjqt;w&k|1 zwhVi3R4uWvpmx_u&h$k(Z#t*C9O?ppezg^fhdaPLb1v|4;PXr_BqE!}mw$IQZ4X1Z z@s#np`X$zzjOJf$RoIy|QQ4IC_JU5&w&K!HGdwWtF)o3@Pd25PDwu1sOY|~-Z*BuV z6m7i^m;2l<7i1Ct&IS65hIsY=Gr+7fTj<7NRE@FbiOj__&G(s#pPTbpN?OX(m+M*@ zTAJ}|6lRJEV2TN{cIN!`0a1QpePMlLEdsw?g{t0|)7aWp5H&}6kfcDx4F3#1cp3f9 zYxFx6V03FZb_hXzb3X+ zkT-vJ=ktzhjuy_g>{b(;UvY|WJMXby6?5s>jE!!G+bghIV0Z4+3XrkiIUD@N60>Q1 zsB?L>pTe-t)_$X%4BNR&cle{p;C&?v(g!OZv!{L@C|4|8W<0$qQ)AKZZD8sx2O<>;*3gwLs*loT3`Gq# zTGg>+c7dA~FKaPwl8@3__;Z5#u$@MLOci7vaKbt~wR?jiXdOmoG^bJ&G-9_3RT_dv zj$$Co|F%>8#y(XP2EU=JyK5z#eXx6m+{Yx&5%^Dt_7m+4>iRw1VdnnJhCdCXjSK&0 zg$_0~;_oOrnQ&8t(#5PZC9vs;GG;HcYzEV;s9^G&z04Wxi~*o5@;9%FdL#su#W8yl z%;{scXMg@CLHzke6Vb`h)zMR_A|g;c$X&P&VwQ^H;R$nk28sty6c1h~9!jHl@MD9l zh2p_VJ+8}46N2KQEr@zo7?gf$r~JY>R&A6sopVq;#G-gu!_>10Y~_0t4~IcmPJ^)| zqj>n0TK)jV!*di58WazCQ9Kmm_bLY#=a1q+kK(}za@zpKLnw-e4phvZ)cgTzx*dyd zE}GqR4(y+FfHki5pflUxb@!uqIELckEQ*J#C?4*hcu3>+y+ZNef#RVciU)5L4;87D z0Vp2KC?0}fZkn*mwnp*L8O1{%@ZiBH9!8^hn9S5X8^yyCu;F-E;te3gyTE%6f%=_9 z@o)j`?{&Kn0rwHis(+L-EiZ#e*oeBH5Xv zxIfdVH}k-YmQ!ihfi`bp;@gYj;RrlY64=pY?pF$mhd;od(*;Fhzs^RYJFXHm5BbqN zltA;~i{_y^ng=73p&QLZBQy`K&^&ZP^Uzz(iIJexQOq0Dl!|r{nuk@Y$8FK>0DVjZ zeLRll;XD}RbuRU?6WmL5z9aNw^%G#%W8k|MsM@hczh1uyocw!s z>cjeD@Ly-aWv=Rf1ql@$>T~uG4Jy>UhJs3iS`G$96sUTG8O$sQe6)!n)X>_{!O&UF z!UGJ0)g(LtmR{!I1x#3RhIqqz!v@1Pw)6e4EyrME&l)Zmt{QH_$=(A`eFmcX7ECp_ zu^{ZMx6uc@t%@_WDRFd=#qJX-coW#JF6kl{Xl- z7Ie`z|xRrG8sKAp{x1M8OWR3+VTw_iEi`hZP zPXrM@4sUQCF6p}YSGKqZu*lD;TN;a}C9lN`CZRM)q8|$0S{6N(%t@CQC3Yx#LI+jL z`@t|vB_9jR9BqlQ%&{y`yWbl4X4%TWx9qpboO;@FmaXrq+ysWAHM~`4a7vjX2E$B`hOd~68e+C}0h-}BYrJ*6b%S-A zbr<`{A-4UK?E4qkN^V;3&~4M$C||Ktdf0N?3bLQb{$G(9M7Do3D5vZyP1H0JX6p>6 z-NzP=PFzrdD7cSlw%H&p$+o)So?F2Nyil?QJ32UaJ3L^zDpPk`Q*pzcJDnGt�Y6 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 Lx^)x`$`Akm(bim9 literal 823375 zcmeEv4|tPB@_*W-5FjN%T0{Y@3W|b?0w-9i1&N{(Z7V%d;SNuPil`j4iXK&Js5XQu zYEks?q=JekDk`T1QChChf}nt?=%E&_=o?eL!c{3+?C&$P@4I=E=5L|M_jlxZb~Eqp zzO%D4v$L~*-uHFfINxA27z`$a=4OMT4FB{?=Qu(XXE1a=b#-UM$_`sjD~lVw<+L$5 zx6MeIHvO*2({H{b<(8Z8yz{Qylt0~?GCl9kl-ur18F}q>DRZm-)l0&#dwIsuCFpQ3CXZZT5^eeS8HHOZobwZk7c9PZTq(xEvX?I|*F$uluDN4CUwDCJOc@1wh*k1MojTNV(}Vrr&}r!4vQ_ z1sCNl%B7z-{nn{>q2MDgAs@UltiXRwi*h57di-~s1IIaVoCC)>aGV3jIdGf<$2oAE z1IIaVoCE*U9N0`h&x_e{2G72p2?o!aQxQG6Z}=x*wN!or37(xrqAEy|zbC`05h@U49;l#JO=<_lwEksTzv33!gxA$J2<0e2&~1 zJrG^vMs&j-6zM$;&~uj}_ni9xC8VJ8l+zL2G#|O&{4pN%-GJPwg^1ocA4Rrz0QxPr z;j#=9Y0nwSxP0V3Ktrb^8uKSa&3%#9(S^b<5VZITM4jq@?^6e$KW8Gtavh*=$0J%d z2&jtxirne~KwaNN^tU1uxiSa2z4w8Z*Lwh3eHNlVmm_1g4bV;TfG+wsQ ziYpLhJ&oKiI|ED3cgVP|H!klanqOXz%SyuXI#G4b?T8lq0e4Ioh&npmg*&=kg|ywz zB5lz~L{-<~a^3Za9B<*?nSTOw-B>j6heG6@bQQJtCPdGr;NBbeAZ_p;5e-<4%iCW? z^bMsIoCfr3?!vv--;HQG-En9bGG@-gW!Ec^`@=dE9$J9QIhn{^J08(}*P}?@^T?S0 z04l$I5po|Qa`zb!_3Vu3B`h3y-uy43UQ}gcBhqd;gy@k5L>q}_(`rP2ybeWHKaaE@ z3CidV^siiu%NL2h;aK1B%$ft}qMazbeIKCl-=Rp~ML>GlwaES3ySThz44}&QQRJhO z0R6lcxj$0wikorA2c)c@+K~3f$%uw+#2u5n0a~{icWg-pH1-J;d7=XC_^=BuT^YD{ z(7U+2t1B+Qup{@A7g4zUaX|kf0dy?WR2-Xv2f3t$-A+X*VvQv3ngo1~FL623j>t*n zt|3m|_AN4U-#}sOt%z2ijkLj!0-Aj$pkKa6G>NbbKND$|a}a&I5qCUJUFb_eZ*RL7uXq%~6)zcB|H3r@i0*8RA2|AOf5T_{r83sBt&$gQf!<%Q!>B(VoB zhg=KjpED4>_5q?*8-R4jEI^lLAbRF36d6n%qNV`R?W8Kd>jzZBYf-N5L0n#xh3L)8 zQ0@+rdC?AB{*yY+oqciX`36z#^~innLZr>5+6H5B&Xb-C=;}|A@#I5*N(uAkj}cu# z+BD);5P9w?fO1SI^50>&e1tMwq%R|HK=hycK*4Gf*$b!Pw)AmGOYH{en+8C;sc;i9 z;xp3cb)5jcYDLtSE{z0TLb)#Dn&|+dwG`dgh^WsfAg#F(koy`Gxtx@t%h!M`Z$r{m z*W>c^QWW|AOF*M`B68l3+}DVz8$LxeXDOoBuR?UA4HNC?&jqB# zmc3}gXMaJF>HkHMFE=Bt@2`Lc5;r=(2EB#*<9HO(QBe!HGA}ev|yOU9_kaTGA zLn!wz1<;eEr#E*be7^!ZK#KGx>A|y|kk!%K!XP0 zw&&hL#%iK!Z#JUE=OC@qK@|Cv@Wu59sx|lE@*dK#$9Et)_X|Yk&k!x4=!X+=$I~Yv zDxu+cEj51=k$dY=3_x{=17M#^u&N~-6;)rkH?z308nh`Lixe&RzwcM|&B zwj!$Cg6L~9RhxDJS}+>X{B4N(ZAbLb1IXwy8PPbh$`_G;@c3{<&z^G{ul4k*$P2J$?Y(VWuJGX5{G>(Sjvqk~RB5~)>0=d=X zF8s3!(Q9Nt@1@*{#Gz9!0s8yiMY&sPgjoCv(r#LSXhRAz;`$>RM}4b(8ld=ZQRI$f zL^H`p8c2k9o`j62hapNDj@zD_3h0a90UA6V&D3(TIw6orK%IodzuH z$iVla5p3*iL^EhOK7~A)dq<*(={`h{<{^3}6$q05gWL%h0=nrQr2U@E;munSH9d+u zCKI`*Q@Qu3+vm`LW_$#7yhbXpYC6g-#lC^(QKED%aqSa=rV#~R%J_zS%mPBNnH;{) z-bR!)8`1YPOelo(zxN@!<}nn$mv~>&6D|7VleoP2Rn)egG;zh1$atk5mrpuyIh?e; z{|_j4PZ^?hA0Q*`QKS`7Cw5+hBKNEKaS&=kfFSf=(>Dd-dPQ3e_twG`KParqVg|xn8+pl{YX+QiG9J=8R zK$QmMK0uhSnvE!d##);bP^X6weVUKx4H{GWn-LwzLg5jALE5?0VHc9!_~*08xaJz9 zd1%bbU4ZB#!gulx6dp_pH@g_MeQ+){VaI_tzKauUysDfCI^N=YL;uH%#eRY;VYLC-!}~lP$A3dBPW+Y^e>(`yaM5 zOo=PbZpczfJk8C{N>he1`8xv4h2?pJa9i^fLk<>d45f5qMsxB+abqEFbT>$JHJ>xO zyO8?FKiuT39GzOH{E3R}9skd0X{U0azo4!L)ln1POKEOyUNywm3TIk(S0~$myri7P z^&M@>C3Q^kz;X}PYYkQQCd3AB2e-Y+Ssv%IH@O{6sflz)ejj&sliReQ22Dt{n{oe4 zy8lT1`5Vf5OOl5H(4ooemtN{SNb|eyFnf?p6=2*kJ<+cINP0EUJlaYGjgg)B^-6=T|Rvo&t;0U>#{W5 zV+CO&k-=SM3`BYnm1+x-GJn&VzvZiJKK@dxG=ee&L2qqR2}%b+FXAE?L1FOq$*CdM z51Y~p;)0s8FF3r5;8Xn-ATn{o3h;Yl8hXzB^m^iR6RQhB|Z0oHnsvp zEhJvP$v6F{D{PmSPDb2u}V;%}y`7#&=WMq!j)*-hTf&iqEhtQ+0- zMv#Y5#L+~i+0i6QIKPV`I(n2pg4cMnj$XO&DYl$K}R* zEy_=Onwz}|%KN*To81lC-A&@|#kgAv=Ltd;tBqoMgZLv=37cOQ`c;)sEuozfDpR3S zqB}#mQz(k^>X(plf?>UOt4Ts;30Wj$lTea`x=X01gi<8bTS9#$)L%jaBs54uLnJgz zLg^A3DWOpk8ZDs=35}7^SP6}j&;$uhlu(X@rb=j$HT`;SV-mCCnQuQETVG8xVWl>#ehusRV6G1L`I`3 zVHuzV{HhX`1B%11Dq#hncKB5#tOOK~UsXaGp!WDxC9DBt#IGu$9FV|LDWPgW0?TFz zZ3QH-?2yn-KmyAy3Dp1+^wmm80VL?FlTbY%L0^M}8UYFVnk1C+o#s7kW!efr?M(5|rj?YNV1y2pNobACEeB*W zw1-|*0!jcv7!`uzC~Y(48VSo*K<(n&Lnn7|8tMH`K<$m~khY7`xG&TI0y?DCayi1M z00KIs)rmCRTMsCn(;7I9@HGN5a#|CmF+RilfH=(rNVL}sD4~5j^cjmxvjJ+?p892y zOzRE^w<4{lmS%6F-k}?zV9Qgi#TC@=?2XiMkeA))To>m;oZo29znn*{M(g_}6)B*q ztUb!~TSwzqc4N_;O_b&*0PMpQZ1(NHvR9VL2S@$|<4?oOWQ!nn#VHIFJC~`Keg^xq)oN2QP(YdU13UT31rc%z;^(bY?z1x{K zAD8L`m_W=PPI!^$el^VO>w161tzSLiZO%)b$&!#$Zu+&$2BYxHC%+ufg6bw zYe|JGu^O{~XIgJ2q^mP6g@C+{Q+`!;Z)b;@yleLM+{tCg!vcls?)_&?JFs{;-othLrVlBF`5VtvU&;SLX|*qroHS)Na@uXlQLgK2C_uHr#zWvvv_Cb2$?b z(L#c{s8jMTCSgC)Y$iE_?v3x$47GJ9j-rb$1$*eKc%&^ZjUEHnXEfo#SvcIv zc+^{+o7%I%ZYbqcbA>0#=xA^`>b2@B6iXi*q&2YNt@E$fxd+Cy4)YJ|>-KtMc7t)9 z%dYr}5JiRCb9fDXFPdbP+-j%(}ZLcxf8(j7p zZV{GBD43iAT_+~OrtqO zT;3@y7-DhTl?)|*r%?RF31}Zq5#p!y>)yY()t=5OJ`pNjyy{p}aZT0vpY?qL>-*wW z-9zfTQjm{>y#D%L>#wIv%b=$?=>=wt0b`=q_oe=L#t|MIB8I**o)-Gfsd{}E)dlFg zLt%ww9fZQx`qcGQRhM<@TJNkeV)rdE){&5RJ)&g%B6zrrqpawPr^i6$(Wj)`;2pKMO~ntEo*q$oy>ZNp$%*7G_1JI z&fULg!yN0~1n6BdXgmf?E9+N~^+ZhC)^@Tbo@lVa2?u08fuL$YPjn|}Gaw5?TLGQV z&<;Q^F|-rVRXwQOE;O!T-hZ(a8(4CxX2DF&dEHcd|p(F`)mrzd$rAVl^g!)RTzk~)zXpn@4 zNNAXZ(g7`Fu8jn=fuT_{cQl~*uGFFoK!dnNV*pKJXsj$ZPC^p^O=T<-0o~0|j?A43 z=uJ+WCev~yG*d#eBs5z>b0ky*Xc=>So=lrBp%Mu#l+YpxEtb$y2`vLu$?{z;(^g1m zrG&~Pv_?V`DmvM|-1zX|n(gU}!cV2W!|I zKqZ`31V~_>C!zTgDgktmHF2R#TO^^y5?U&uWfEF0p%oHZDWNh6t&vc0o;k0@{`CP66&_d==BcQ7}tqIU}h79X8 zUYR6h2J{Q#vj7^)_-ryaNkZKv)Kfw!66!6Xz7py$p#c&aB%vV^8YZE135}G{C<%?0 zP=)qf-?0+VH4K%>a%&`1E}=>ZRZD2Igtkg(2cTVC$4;5HOF}h( zc8l=?Q0H#cLlr;|b6OpsEezEI`i7wfK%X(x2*|{DGyzKGwi%#_{TVU=`hweG2Gq=V zSO8tixi&yIFq8ynFqi8NNbsengi-)qz~y=a`V*Jy3+OtA`UCm{=MDgr&d?x012}gG zpc5Dx253A(>3~EXBPBFSLZc;=A)zr68Y`i35}E)_yo9atL_ps&lmqB`hNc1<#n3cB zI~d9Z^c6!h0c9~X3s5`um1hIGozvz3n#NEOAXWbW?dP=lGOa{H3njEjLW?D|R6@%n zv|K_fB(zdOWfEE=p>hdTN~l^wnd&a&T^cKtFKW06>DLgCsOWLc=7K zE}@YU8YQ9863UR!7zvG)&^QTAkkCX4y|9Fqt)7Wh5y^2#Q*CdNC{ zmc2~-8zYn@tC5(tg0HMOCHrv>@~3rN&U;4A1iJiIT*`B8%6yTaJY9~XA}8deP@#2d z+87>KSY=OYPOcZHOfFtZn-)w_UPpm~7Q?*T zWJ87t962?x_CB&!Q`MDbcOoTMcusciz7+c{NyW4hgqP2Y9b#!&~rdB1;ZL}m8vdoF13=t~IB$}{`=`wqAex+SZ zZhgE{F$qTSc9YyDxsoW0^(0N(bcImsd8NctXALv7Z~`W2VCdt|>kiZv;v$MRgvDQ> zpo&vTW`#6+MiuAlt2jN1Dnj8G(jiUcmh{0kkFlaAz7NTH2}vr%fENWm(Yu@#*he93 zuEb%FkyaAJunR=>?1?Yf!&%8;Y7+8{qCP@gp(GQhR86-zcc1D`DlDH5oQBl#(_1 zJDYRQsV>U`Qri%nP{*QB{5huT&x`kt3B!S*Cgwo?Nm?1|zf~fUER^>|J!`5=%o-Y4 zBC|)wDFH^sujuHVam>)0J4oYPpnkap7tdIy6(H8SL}FCji;7+kd%*FUh0>+dbt zEA3&$9-FQM;uLgrof#?`f!{pJkv}j2>mu+6PJKq_a-4vRNG?aT_-h3IwNLBtzln>e z@CP~XuCl{7N=sh3P0StRIzBH#C*O6Wc(EA1aZ;iwL;37AKYx}-d7aI)zAy9|PY5;gz57mZ}kd){>8^mUZnA-lQtinfJqm|pXZ*?jSr9GBC7Er$oUv` ze31BQwHo*@)#JbL$l!-R{yY5`qdAxD;CHJX#=Ys|8m&mDm^>zyZ}|2_SHJQb*N^jz zH8ipIv_<p#BvUIniksP@Y!TwtwK3|;vDkNW%l#_j*D z>p$Z+ZhxoWxc-4{Tz{(8vqJPgwfzUSYUN_+f&LaDs{V-esPAn*Le84gCdmbKth{`#EM|du`QexKf|u!mcqMm@wp?DW35$RHw}BxFPHMnQJ0BzI6Q4UWoHCti$^)M>=U{#e^lUQIRS4Qzq6J!S4Hqf9#O;7_ZWGIuVeOnk<| zA8QB7+cBT=K0uy7tsNrBdAMwxyb=tP;Db10J@o%Q2@C9gx3y?PAtyp#MQVxw`!jcQQYss;*PVd(Pm*_=g`eA%`NkIc{Pe7rudG|x z-0bB)8W`FZ*SW?6T)smDg>YD)YT7nj8QLx*P z!lZQ7G-GxxUP2I3HToFR18Dg$J}fO@x}Gh2<+GzfX#vwAAs;Q9aY8K&EnvDoUk-$& z1zgwDvc()$L5be zWcHSHjTX;v=xJ#Vx^@-%4n8b#0j~WmBKvcivGUJiXHCoU{6tQqpD|@$Ps>;KJOPuO zwh(ox@7N#^n-Ht-!xP%8THNf99AD$}N3Izs(Xg35<3wPvjv(zLm*rP=aM7^#k;}4u z?2GxmyM^#`x$L;5>kZbb6LF8!&J&;^(PNuP9NMg``(06 z&g%N~Rg9t94?#y20iBT05YXvWT_NjQagx;~MuMo$9ERg-g!Z#>tTBq!E8{)+V&%%{ z@?W_cSU#zAJ`Sa;=VH9S*Lwv6w@-2>mr$-4!M#It%^A263kVA-Q?$q1L*H(~%b8*l zqc+x6WU#%6P>HY`Azbq!=0#|~kiRM`em5)o+hRdZxZcE~iW(C*GdF1giN2`BOmf6> zpCPxOuB{qVR29O@>gI~0dPQ@(ti=tjl4S(?1LT({~F61Con@F2n>gov^UR)E_Z>O6>3 zdwzr->TOW6rs+11?YM|y^O*5x@cWEbtV%*Bm+$)xeAzqXYqk~_(sG>Y1M^lD`j$?e!b$z@qzSq%G=jZ1s| zB$w%vb#&=yw60CsLOF%o^Q~04%Cvq1F7b#~B64xLg)Tvmy8J-rf7tXjQnuT|H&1fS z8$oUKUWN5lP(PdMsWN?{-YU>iEyxi_sdiknKsu>v4r6M5fFFTsRqqL=VX>vfsxLPl zF@1?j%1`q<^_59?K=~bwF4LBBaMLB^2+q4rpHM;q3&QdV@!h%2fDA~TONul|yV$ax z6WB|1;=9Zb^qpmfemI91X5d9(8uE%y&eyv0GokHu98vI zeLaJ*Gj=4pT&(=U7doZIJ3M}c?mvOta^}|?BA7fjmf)b!Yr#<1&hQK+{!4}?9U+DW zC~2(x#Rs8}5PyAxRZD%;jYH5zmA}4$fQJ;{2;--r#5C^y4)E8qp2wyZV*?Ao!rH72 zIG(O;!eHiau=mZk_&AL47nUAf`!7tn#xwMJ9!;so(`ZhEZsB%ov5SPRx6%a%=|RNY zFm~B6+ncFkA?$_QXK7pEKD&WIfQ<#p_GxM1RT+s+Ae;hE0TH5&5KLV;hzL2lG(X_Q zL2@)jxGWJyk_Vz4Nv;$lNfh2>H^Hr^D z;1#y)*(fcQ8oEat$kw%@MTOh^b{f;4PsGjGJVSfJi*6JT#;5&?GtSR@O1L3MO7H17MY4T2l zhQLOU9yq^Cfp8&Py6_H0hI(5K4mF0kZJq8mAGU2jV zb<`Jbj9>@PaFg2ClQy?-nlw+zn=5O^7E>6zTK|Aotu>scp;R=rdM-OA^ek5U7KcLu zn%zIV`A9f_IdDeO!X&Zn!b{le*zP%Chg8>CGj61wN5W#Y&RI0X;4B)#IE&OwO-+A0 z^C+lLmmTU39hr%6m@)TovSQWe-bYNIqn}@6NcJCKLu>PXdgBdxoHkkEp?I6y{sSX0 zZgpkrM{ibo487{w(}at(aP4pIBeOomF#m!3ZTmMkvqd*Yiyb}`=yx6X*wrXVH*W?Ngm_l_ha z&c^0&Sg;5b9*d_O;;l*`(qZ9R^ENKOp)ab7V_Ba4g2}Vrae0OlY^?U4zY?w5?!%kE zYW=gY{C@d3y|x3{Vy(fQ*D%RF@6WWADCcwhfRb8L9-D##A_m+-tP?*%1HW2=&PCyL zfx3RiuQI^O+WT`V=zs<7H;dZ}4)S4&Fsm5omhyFi8ok*KT5E1EZw}(IsC&-%h*_xR zVIQFZ#~@0s5{*vctr*W8zp+IR+5e>(3bnGkg@kcLG$)*=>|6OTsvFmEZKWaCl)=Yi zkt<}+ezn2S+>A#AdTB#L83rT+y^V&z5Cx!));XU*dps+3b42yX z3ywI_L}ZfdG3wp^Rskm*Kjgfkb;t`)*-53Ja^8cLl;=M;0@AMp(hb3oej|`p2SfUU zK)NX?(w_v<&B2iVDv*ANJP*B)x&^u9pHFf zO3iGEv{oRccD6uTCy;VG1Ccfeq}0roNSg#wZf9QzwFPD|*(>6924dbMFta#Yh-|yS zOzmue^b5`_;&uii-6N2)I9nk7P9UXrwm`aHAmw%jBK=t)rDl3Z25_OEg6a|!BT3Tl8aJ&)iLN8-#+IRE9h&I{>3CD0LOW<-dS9VhCn!jbW$GzS&ny|Jv&yhB&XtXs2 zf91vs5I51^i}YayTDlQ=lK-tL`Qi}cQ}2h_4;oj^-(2uc={imKbX29?|0&0et_q3Ms?xFydIilRnf6> zbrQ;@QK|K-AbQnecG5!qai|%E0=#+8QJ=uKUS6jkb$R7R=x&2GacVLXofl6$t6`{@CYXLhiNxr?Zs9vu#v^3d z;hNrl#zUk!U~4q`CcnXy`2UyjCxqA44qmAy%2-AnP2U1djdjj&_;Dc((OrS}u|U?r zMD^3C&_)&g<2na+l4!82Mzadv4pVsZ^A>u7R-N=u=y@s{;H+~#YT5tPO)+)#L+zVB zhmF@#*kv<*h;=c%nc;ppC(x`XTs7J~^mk%3DuQ=Hi6dgm1Muj_WY2nCZw-b>W3P`; z{n8KwaG7d-GaKzf)U^+!vH*fExD59rY?yDs#osqfjLrv zT0ZXuQIH?v=TAnfJe6Q)3x?3~MX`q(;IBIxn3;T9yWgic%so;wE>e4f`8!%$q;~q5 zJc%Q$ng`&B(#Qpz?f>={y^~#)K)nPEI67M>hvRPl=J$s7AGK|$Dxc>e`5J0X_&eQ8 zJ7TfMEjxGQVR~RiVY#*VTb+^AcQ&~C)Bp{!uS08yal*2PrhD3rtiJwp1fRLlZVZM} zI1Wal=+VECA@lc(U{bYh3@u0YD>;oeZgL)M&XZG4*{4XCX^u|+Va!fTvV7AhKhqVZ z1!-YCFx_YS(86?pF`QxCipAh;jgD9tcVJs;1$_JcDHU}(gh)0Ly)0W1jWBS1~#_DcdGS^np<=&7^Nj_rNwf8iPZe4>LN|B{LVgj2Wmo6 z`3NnuVD&Dl{%>s!WsWIeefZFbA6hL00rGJ>ndT zm0z^4q3TYP3!5~mcJQ}a;3d94Z!5nb#L=MT#9~#>*mPi9faZ{;oW}+wAOm&N0YiUd zh zes{d59+!qv$~~|Z?}}SO5WNw-5y=KDxR4*{?SL0};VC7&i45nF4EGOZ_XBCz>8A4R zft;?+TANmv<58)Pe^zrCp|)^ShF9MkXtAathyNT6na#=dJ3(lr8E?+&-lv@b$EN?q z#O_LKq*p&?A&qfp_hi>+>F=rS&G(>&Qw61X<((2IPEv)Wl#2FqG_5wwZf^egyP%Xh z^Bd#xI=d5@GuvGJuQj6sUZUn)7bjlyZO*?qjFjlTTtYIq2jdy~bKp=_cHT;Q+5TJH@(|#fTSn;Kk4^*zF`n2E7)w6SU|7s$NCY1EgLV%0uau zs>ZDUdOhxWI_YtPpYH!2X@0sN&|j3(_#U6`LoL5k)zWbP#XLEsURop6m^N^7PhTa8 z45|F@9OKGA8n4=_OF3qhKfrgOOYRS$&wmCSVB$5F;Qc|{Nx^#&KZIiYEE2!zQ$0YM zFF$OhEfcE9guf4yRKor~UJr^XA-|wYdve?Rc7W@p_E_;o$M#|lQ7w9vHVHZchx0=5 zrw!ZZKjr0<{JLcg=WYzC;#7a2jULR0?|3eDC?=X47 z{5Z1yKpE7j&Sk>lTELb(nj0{#sdO_udjr5G?=iUjz$oYrK3T4$6#k6N5k3uSnn)H z$=~<_GV&R+qwH@`S3A=FMv(V8hZ?p+`6sG(r1KtjpHy-1BzF>jVcED1N4_zE#zavq z*d9;$WM~crIcIoJK~t8p|9tKH2F}Wn&^c?j7cjN;UNqm{x!Wo~bww@` z-gnoOp`-;6cxQ5K1h$sGxlz)W96;ZPNk@miO;OTU*56;i=d~?;v=kPj3jY3Fe+uVy zjfI0T%C{Bty%E5{x)a)vK9zaJrfB86yPrSzu8E1di1Wh`_9c4yMxWzP-)miB;a<%2 zwL-oxob6AcB_;~nUjO^WXxXyfR(f7q^{`8HGmA-;H3znJq`|k~S0&vx3SR0bx ze_w{_uOWAc{Os^v?vMENB7gclUY$~AD#fP~73Peb2|r@*G=XiN**m30xm!g!cSA;w z2_=gc48dA3_Ei<$i?v`cc3yk%w_!?B&Z2$DFQoj8DTe0cabNI9j_yFVt8frfo$pcH zE-yhD(5tx_x1dnnr(9?h3SmZFP)RMrv~~#L+&liCK^81xOk#Zt^1PxmZNS5{z&&b8 zf2D8d1S|)e@I53f$r^I$Ye7mBcFBocUmfn=h0D zC=BwQm9z{rt6eO#N1|^~DOE?GYQpDn#IAa-bxIrvQ6@pr^(0m$aFal+q@_L~5-qYn zW)|nK;g9jCs&oT=O$@cXa=?Vfo1HarI6P=UN~Ths$o#^5pDUtuh=)Z*>r93S@{#og zRHw-!-kVZvw}92fsL7pe&Qe)idC)|M3`i8R(i0-KP90Bz%D=x){+1x}|0$&W=|;$Z zDa)TOlmjR%c|OY&iRXG2g_ggdZ%`@y2bX_Jp#1q3jYFi1^~OlFgqDY>KZraiLm32> z50uA)5o-%QzB|)IeF>hiFad5>0URN*SRWom*A9Ffz4-Nm_$*wu4GT@MTMY+bw@&E6 zw$#&`%h*_9a>^;E@nn(Hk+In_+zxYQ&V0)GO3kSUqa?NolvAnZd`dYE725#H`Ma9K zr*Z8nHWTH{S96}%W83)?a_&}h#9K*KY)dI;oXGM1*{z|S<*>ygP6N)jR(O|m|p#=$kTeilNw1lBs;%Os3Q_*(K70 zq3MmoVwqoM=ixrjKDc?s#gr$gvY@Qets5(^ z=PqPIs|qSf>ah7uhd|yD@tqDs4dt!eUt`@r2~r;JVtS4t#bC%W8PW~pIx50-Ohj{+ zC~MH$xC9=n%`u=vDJ2mnMX7I_)Kbng$}r?55NYPiajBX!? z8=Yws8}hp36w&Ql*xKTD?=863lw%Op$LsH%O83_Ay%f{E6X@Q@oph zHj6ENGHdBBelRN4Zl2NAotTb0jr90Kld%iTu6LKOFlH#_II>EUfz(9OjTz?y0UYsE z(}D@O%sT}+6}v4snuROlHdivMl)Z6D9j?9Cdf$Ve4JZYZuxGlEC8jIXgl`|y{iSqS zQ3J;D{dlUE?@y*=S2E$?5_J5Rl9-dDppZoeBXd%kgqVO(@}?W)XSWTtH{IW96<;`PG}Fqq zK?k4?J_$D&9k!v4#{9vU1v&Q{#Rf6l9K63wd+b-GEvcLONoQgT>4(|-P6RfDlmXK} zmi2wvs%}Iv6=i)7PruoiZIfj3V2^RsVyoEQev-@a(`p)@`*8^nXPy!MJEz6##nCZSW$zb_Wi3YRMcT}?lXc%#%<0$R>7sf z>g!iC(kQC`p^R}xQ+=H#zKGR-7j^3uIP>V~2!tZyg9p-)V5oB1nhR0N-BC)*J3ZyWH1iTFt_vJTEl8bUv9 zXr09h)jq9bL$QV0?lT5cTOqqit^#`FIOeVa5wGnHo=y?eQXrzpfD;UXtbz{UI)_B=KEu8UM@?UvY{3s2hR(6OpyK}ZOdgh^n>dh;N1~w8h6d!)vX&#L-l8> zzueZlzMtKU#cj<%4t2l{)C?GW{V**U)S?BdhZ?30WwEy*6#ba*;N2eoN9<7${lPX4 z`>!eNLs^E}8{mKQg~Q^))9moE*QuHWAz-(IzSU;-&Afd6SYv8-L;l?;w5@R!yOq_L ztZmy3jTGt#Cm8k#>qtIFy(ze(&MvM6cauBUnFxah1XIX(D5U3JEdRtV&%kl1ZTy$; z_PTwm>~$#rC4#+fFNc&^?6r@?SnRcr#F*^0kHlE)wU5MO&Rz!@|H)d_81cTbIWIx6 z^}ap)e|lEX#ZIQCJnkd!}Ch(<_v*-P=6h&KWhBTP0SfhY`Uc#vq>@%jV`5y zBDclt>L_P5hKLk~tIu!lF*n;%loV+-McvN}Du3NV1y-1JOBlk!%`uZ27n!<+w`ojo zkmn(Jq-+w8#L$3ED=4twL$jOmFBay8_JVd>#UQzj#&tO(69kmln1H0t#A>l>@@9Bi z^m5Z+rZ33)Aj^-w)4>vB2Zg4!w911+23G6C&tmMrYEN_T!fn0c@Zm(7)6+A|kI~Gq z;%D@Bvk{L@Xfs{NLin%r*1QL49$3)`JJRIzn+1wlagnKut}M;|w6f$kX*0%PWyxe} zWi7$VdcMI^j5_3G!1xBU5wu_(CYjcAicFZOllvZ)o}`z2v^7UApi2BzZ-c2LMBd~qH|eJT!g9zg znsL%?)zYxZEd2_V?=DX@=14kg#^#hXPcQKzOHgYcKni#Jq9k={&jW+(@F=P$El5%B z_at)^)sw0f^_)tC`gDZlA3;a-a*t$7^m31+BdnicZOL>x!{f)pHn6UVRLRlMk)`D5 z`bI}KrQvl%FL=GWYSPpRQZM)jI>O2sMn_a%=%VB}TP?z4-QsLNBmD8iIGd$=oNX1t z=_ke69!3~+a-8jHg!mqDwpS3w_KdT=hj1o58_iKV{(qbUM}Pz2<}bXzWX;K;`O?6H zzw)-y$>`J0eewFem`Uh;c(Iai*0kx1=;w8z>(|eB;5uUlTEbHt(bre;`VRIgk@K&) zi#Vs^m-fX;*U?PDZ{{Uk{jx+_6Qb29EA~?7#gkPPzPH?^L=LcV4q>xg4LeEONq!qb za>QBPi4bC$W{&7k?e~Q>~M#Yrb>hsDoog#QS^QE$!tkWKpYQ&kdYQ0@ixz&-)7I8~6FIOBf^CIj^(Dh}pR1blWMc8e` z8w+P>TMO2lIphPL{~zH4-bO9?uDc*zU7`}pso!A_K~(_%bZi`uxS<%jbTrSXt?$is zSm0K9JB!J`kv5+#u6XohalGiBtAZB8eC*v4&IKww5r4N=mK zDZ%q=cshhu;M?Cb1TDssAq&opv(e4ozKG+zrz4K{_C##-c0+9PQf`8`BjR>m6Jpwj z!((^O{D$`T+=!2C;=!bU0LR?yrXn2H9W~e9WHA@no4l9Ibu`W1Xe)9wc?TkM_NMNX z-PF zlsL^?rN_VaZ4q4kNB=n6y9gBsRR~)UK1TQ);cJA02ytjbCxmVYry=x1_#MJ<1V0UJ z+l$cp&re;slZr{GSvid))ZssndRfp{(J@q^Iv~{IF6XmQ6IiH;EYxHcYA+UQ9~SDl zEY!g))HK1uNmcRIyI5P%`Iitc1&c|zUDWhAT{=3MOG`I#I`f{6MCWZ5yq|ksoNYeB zlL(6to<~@Q@EXEOgu`TKXnvV}eF6OH`3v~f<@*r)8a|-){CeQX@XP*z;MZ!1uAIb& zuo+=H!cK&*5NZ*Q1iymVj}W#ao!It;SFo*x?bvpK&UTnt&1|e@-C502Sk3yfnhjtz z8`9Et>;n$H?TGW)j(DH#FiP8D^4X3ApY3QTZAW`Q+u_wrL(I109~*@{_CYlcARIz4 zg4PZQR)l1P9teXG(h#md$U+#8Fd1PwLO#M_$}7_Cq4nQ_XFhGxUW{S=|4!9^Iwz*L z7sCg(UjMx@>AyLYy|7oS`hOwxA7KN+W`yksI}yG@s6~jxkO=vq#?KJ?Ka=%e38nvo zj)49HN89QDzgn;V8&v&=Y8*f~gkS`%9T2Pt$p}3V1|y^)T!D~287KB+Yxpme1%YpaF`5>QU6!6{_hQ? z{}&wr{RfV=)BmqqumAs4^&hHn0O1gV5wvzdup%TQ^gtMlkcMytLKeb!gvkig5%LiZ zQ(lp7k5QhRNuC{RL&&pq=;6z=0yuQ?H2KE!3g39XPLAg$-*{f(8_(Ct@!aG;p8u!S z^4wb?i8p0I_SqS41CL>Ho$VWI#c}2QCMtP1U zd3M|tLY}3=4_}@Yz|nT{+}mn-?p-D1S&@$MA7Kl^#|WPze2uUd!HbXp`V$dOL^vJc zT!f1dMj$v4A_?R$^P{zA(@2oRzX)N^x?I+Jd$#w;*t5Jc!SA^vu>ObeB*G$u=Mk16 zyoRt6q0RVZ(flQ|Tm+d%OtX9*f@znJWTtK9MbmA(nzfx*vp(k4tR1|X^$D+Leafp@ zpZNxXKgYl{da^)UG!=`f(iuvBM=)(IT7lacL zdLf*Fa5jRD0f!03#J@Gfzj>dA;NOPJnSb@nzkSTV{mj4rGXENwe?Kz+eq#O|IO6;( zUn%%^DM+y+T#b;4a6Q6!gj*19LpV&P>28m4{Mtbryy_Fd!4|Wfn@2GR#a>n`*P{!7 zqwU78?^`{7^?6H(rr-*kIYlT&cmm;Rgy#@mKzIdVJ;D}*&k*(?e2;JdAs+2YM9}fR zEx;J%Sx54`@8b~iyx^+CmuDt$w4FRXt(Ir@8$zC$SE73%j7PWy;WmW35b_ZIg0KML zS%jAm-b8p0p$cI;!j}kbAw(U{(Du!Leq}lYLB6pqglQ|ing!Xa{mAcQ7+S;ZNA7)H z@cU$tl7et1LVtt{5r!aKf-n+6*Y?(c(ef*W_*Jkq1i!Y8Zau#|M}}Yjcunx@Dv*+a z@Oy-D2!BGzLAVnk7ojyw(%loIy%H0ArNr7?S6GTSCb5f{eqL zXC`p8ojh-EwLG(5QSJY=u>T0-5pF@a4dE_?JcPd>EI@b`;U$DO5#B?nLfDS*B|=*W zQHL`|c}^pF{{4dx@{G$me0iP*9Bn7hn_Dfng z5Bhch;Shomw01zSA|xa9Kp2dWhHwQ!7Q%Rh$q3UC@)6oXh&r4x%5xdXvtxA#d6s4$ zzC0^{qwVB*YpdnC_XQ!(iZQUC2wM<7M)(}zYlOWBUW5eDpNMcG!s!U-B3y(p0>Ocx z<9%CzEYBe4Ne7lM9)kDI^JfV1&YYV_7qd6U6)~_XonA?Q^ZH+#b5gF4vnem3t$3$k z871@D620-ScBx=Mc&ep7;d=-xS9QfPOWpSnitUYfi*!RKKiCgFTK#J?j)+&$Q$O^; z2UkVsF7FLpRjBrfCN!-2mEQ3q&JYg_hK28^=TSm@ufbV?m%Xo5vCx+pzF!iy*^%%m z_pH$&TO1x4SR1N+%7bW{yIL8g(MBT4jEK(nJ@hc`-Ki(>(DRYo8$`cwhBQO@s*Gv8 z5^|MNcr^-q^!;tnw_;V2zrH|Eln;T7j&1XsKwRbt)(h}hgUeojGc<=jDl!7+*YWa_ zdRHdSu{LtG8DP!tM70q=r~!T#)XhV+Ou~Egj__4y1W@I%Q}&dCagK(8KN%~!e(JKi`Y))n!HfwdsyzfHnuA22>8mex)F_L$%Wr-ZJ60&S4NrE<%A(EY*zxO5j&>?-b$827}x7Z8+1 zSjV9dp(!q=`;<#?S!G{NG*#JG&|k5A8I-4WlHlqP_G3e z37c9dzJfJlnQ|{wLesFGRMw2!-HzqPQFs&2imn-W@!N7&_6qOo#f9m(A0#hS-b4{l zW2BD-sQ7NtDqS#)YC(=NmntnBLN}>}ip#mu62+ve^i(Rl5;^z)63P}AQw*vXDi=U{ z-sJ?9qrG@d)5!u+UHxHA8{#CXDVf%$B%u?qf#@q zQuC}%e#L-e9@q3Hx|w@`a|4<@4>&p zsw&JuOus7rG{O+*lK2h;$Uz#Jw7#4+6A)ArX|oU~QJQ`BFO*=PW8xAMalyQ?x)%^k zOk{vs{d?G#p@o!eb<&4~+zc~W#iSVKuWvJdeaG^z4(>{9gq!&JvlBqT=YZKs% z>zbb`hv&w7mk8v{%IoM(ya6BI`pDUdGQ|rfqP+aP1brau_C*PXs={$dR!L)+BqxCP zD9beCGIuf2#zH$p#?0pCe0RsxdFzQqd8fJ;P*L}sPw3+l8O6m^Ri?5H`03LU@!l5% zwc^X|DkV9ai7NZb4CMm!S7&9CXE*NR4hNoGgNgv-;~guNieh}}sbNaO6ud{@jqfkj zG$&i|m9Nw$<>kL77&3Ayfrvi5u>5oWW>*Okq5R6-=nHr|Bq(a8?tDLy?r50kqKDV% z1^)$=Jz-g3eQ%)~qIt)Ebe8siqZHf!kp3QCh1%4dY$GW(D8^^h4=Rw`_tVqCna%j< zeP!@h{61(v-}_RZvZRN`%6WNPDc%B|zynho`Ca68GY?(#c*~Ole>DDyvn~w%aJ#q- zNumvx5?bAN#m?v2EQ^4jsaHy9ELNFA z%)eK~9OP?gQQ_-FMn#A3>Srjv*_%F{{|#0FIlLvtRSo zL35V%Pes8E)xQrZPjLC#H+A!cX##1O@AyUF2R+0gq*nodPtTL&80e+%8Gt{2A2c9+ zFSgf{_9?HD-*1M~T1QT+vVJ8l4d9%@dNY}F$rCnl;l;~wiM}$NULQg4lB*hFAxP^y z4d8fla!;YpcRiV4D4j|ZS0!!<|EE!G$isI&asc3A#Hs`W7?-%UySQ}_ZpAYy27Gi6 zVk5fFM9tg*$3kAo$UXwrGy?zW^@Z*(G=u}P0Ln1CuQa(vVXi{cT@Vny`$U+(0joJv z@w`IoF(z&rb)SnDgl<}Rdch<+h9iloz9cjzF@7+> zV`q4Ls=f?`fnr~|eDi2n(I(|8QVD!rmh1|80@i~z*z3W!##9~(awo&% z;&+cUW+}Na4X}+FVklRXb0KjOJ>F8UTm@DX+3VqiL~Yi z0k%x#d^HIZwsN<<9F=mfKJQ| z|M3N8xW~iRqX843I%N>Xd#wJb^X$BM@AbuwU3}a9@V9`YPU!_D(B|Q&XlER+4#79U zJOP!FPqG7WlQK-JXr5XTF_JL+m(&Q96+5;n{iqNn9wb1y4oqMM37-6JnXj(%HrO|# zuFYtSzOHJnYb#Mll1>qIc~9J6uS8{)svBTd+KUY6Zb2mx0u5XIh|q$tE~8!@+8kzm z9wU@(`Kn})8K7+0;15>VhSAzJ@mPWKfqfR`CLgErPSL!?C8S=(4x5tZ%gr5LjE}C; zEq!%~r(zWb?h_@?BI)SdCzSGTM#qH2T=XIh?>MS>43gdWcq_m+3B>4O6Nk zMLFLS??vyh(e(iG-L-4g3Z6pUNbUY(ARJ?H1l!UYVK9F~t?z0)y#t!a3_!mDv4!Zf z>_66XKR64yYyfFp_Yd=!$dDc}*B8oP6-J<1 zbhoZ2aQi~dAMjmkRkpjpLOE!hqt+G7u7|}(!sxb?w8ZzN>M!Sp6+n1=W+>?Jjw@XomNe~;#vyOnT$(>GqbVzq4vOk_qGLCS6 zNPijp?hO?LlloOx92BoCW`DQP(!lDjKzvy6Lbt=;R&?2`j zwM&ok13Ojq3_n&y!k3|Z@hB}D`r5bX;c%>z_yWG~P90k@K>TEf@NIWxB5aZr$0&g_ zh*e~K!Tr^sdK#uY*1KEYBI(8Yz?xNE0>)4D%5+Q1n`G~1{lI?88Dj$XQ=D}Z#GqWV zs=FW3dKx!(@VGhhIrM^Re|Iy zg;=-7+Aw}Vo0?r~owESDYHoOm%4F@XOyva_SO^tGXoNuC)oNZn*PNza@jd`@UtA=L zJCsy2(OZ|L+@fLt1I*rBZbF8dRPVOeWhf)mtIlvIsDT%%*9L6aYUt`HuQp4$Tus28 zV9*ftitj{jU-cSye!oN`1a~^>m6aq78=9GimwwkPFVH1ZG?wwcuNKFhQ&c3dFtzyN zD%HB!mpfX`<$HT_?t{MEm;S1&mF}FR<_UVos#hAl8(>Yv$c@IVQZEz>%qLd--Huue z+n%dPD8!Z?K2%^@q7D_>^9h+=U-LH5r2|a!ispSSaKmj;+$xE>=2iG|@6Z}R_lo8% z@#R)Oqc)Gkfm-{38C)y2O|D|?cu_5(sjNUTK}7+bsaNVzg&Q2eH^50f=#mtS^LF6E zHGoR>Li^A|?6r*AQJbl3S5ezilW9pUuP0ZSphvCXLWg?(Vjb$u$OCFpn`@cDCg+ei zYhfQOn^1ivP-Ji{)oh((pd=#gEL}M-y=0!WwL~P+%2v8cQFdLb&06>k_a2m(?kn-s z(}DtY>RoR8t_)>|Ac=PD|K!F@O8KWqs50PgQR_hUcF5{QEt7kxqb^hFre>0-U9Z#< z|B0w(wWT1ccVLyzs0qmXy;gf%-bgog+m!L%!`Vf2b)GO{_p!i$$8tuDLtBn~=g#Y}MDx54O%`cNU`l@;-El<}ge*sk< z1$TPBA}JFy=J`+$QR%~C;!Zb?MkqfBBP^tB-c4jIIeGMJs%j@eV$}aP(oG5!sq|oMXo##I! zWhysDt1wfs`EXp%&3)rZsYMN9JkT17%J*m~+&VruQm^!*CJ~!2S1W^Z?pLv(-kqFx zjxX<7b(q1K6|nbF^-7a+oLUfV&(&%ZQbzrM)zD@s*ZXBs^;Ie+A?59mqc_3xJvN<1 z|JRpSH$l}wR9(ft^L}_sWKv8Em<6oD*8&Xx z1=Xq6#fIvf`E|5M2*XTN#n1n>8T1Ksl<+y*8kiM$==E}itzL1XdgRmkvyIAqi01gN z{j3hH_q=#7YeJA2S__uOl)(BEYX2GyvC}z(CZ#J{!TNxuY%iKf{vfxJ<{Z$a3^h$I zCMNL;w(`iMKHcffoWP2^1;>K0%HqlZ*RVBZOU*RpLP{2Owsju8Vo3Q#h$q9HorJZ| z24y9NHzI`=&$dBI+Jg4)iA3dkwSFw5(Si=raDEC7C`ca%eWnfoTi&GP5DnRlF1#j^ zF53YSYQsz@kuDDai^x5fvEC=Bmv^7TciU2JqIeH(5ZBn~%BIFB|6!?G$VoMmKbmdH zQcS*q{~j^a!R@dXDmaxxYwAj^I{snkMCnh}D-4w%s37{_Jt`&L$dA3AJRB^kD}VPD zcuoc3tyDfDJ1{g0tc(+RLWOxqyf=TZ_7-MUuG%up`W zDi$6DIQYDpiN-(WE7wsg#{?3m@AH+rOO~T*?t|bxS;STCsmLuZ51 zW+{J%=fJ)+v6aNpLoE#EJR^(L}pu{q`jD`LM<1fAXZX)=R%!0Ge^tJRQ@IGzD6>5ezlqjai#mpy``0t zazDdYuDdKp)qI0$JbQ68jV^XjooL_;?S2*??~0g}JJCn9fsanZypt;iK3k}L%9xDY z|4`uw{s!-_DrdV{b9v|{H{;3~AqSVJ@MX>Q$9Hi0;o;jZMqx?c%MtK}_J8<%%Udqd zbJcZ;+!R{vN3Z*j;lx)Y4@K)@+DdojVKQ~@)>&jAkzMWI8XQCJnD_UJ)5%y-NANR z!qbCp|0fuFJ+3dOh2;U`3%Q?4yEIMi3`@UEbH&f`so55*^CucyP){Sw%TT*z1`p(3 zT+rfcI~Y0g5s|+WNk%+XVQ(b&QS9OU{Quay9ssMS?EmJ?o0+HHm?@PILWo+TP%2^@ z+tM&In%%4@glA++W~!xVyhcsa&{DRwtWwBsOKd2@lqh7yhOCyU4flEdm?aE5w%_NR zbMJlM@B2TMT^75qIp6R1e$T!4-1G0Ad+z;0?b8YyueWp8O=8RxMu3n7xj(cbFAIHN z&Y;e~IyKdIsHUwDl5QhQ96!Z7_Lj}S834|rMkmR@S;82RiLe70@wPZc>S)5H?*-}u zH{$i$GchYg|98|5@rA#jUIXRn{vJhsB=z)1&#yvD;hWd{W|E&&SBh5Y)x3vj4EWr} z=o={9W1XZ5$)F!dEwP1w0upjOO8~Iadw8S1!whbtKk}>4lz?Z#HMSy6iNLC@m^RZz zj~Cg1_o1r!bt2@dEneN~RZ_t}Szu5B!evBPztGiRq8?|D4!5W$cxH*f(nRacxBZei zX?4pn=F@FK4?*9ON=sJd6jf4@jQz0C0>sSHFS-a{gmYsELC#(Wb*+GhH7&Y z1{CqdX!1-naRwuf$s}pYfzw+jns-W4wyhkYNOFdRHhbTYiD=E%O}bkoOXFq5cv zK3IeuT0Gw56D%B)iZDqAk^7U}K7jsnL(!IS+uQ0EK>G1`f_}`QEcERE^tE0as>D13 zbD}r(UHCU0jVbZdRKySeU*7;e^zU=Al@tUgaz0JuEce5jVAZ2VJw%r@S)pYCyt_`9 zh6`4ytH8plpH@Ba^bgUeKQmA1UBvY9bXN4~!#7GFWqO2O9BGQ1Mvl~lsRUD;ru4^M zxeF9eG7w2_r{K>L^;NYV8d+YW>?-tYo4yMs^he$_UL);itghhprkW(DtgoFWlU^Iq z_5CYpeeE)=FD3uoX*x-Xt|U7?eM9(fioP=Z_x@C&iJSj6=)2&*xzOV@J;&)(!hh5B z4dK5D`bzWPDPVR`)$rf3bm`!~A-Xj9?K0U`gjq+b0`gFPDDfh9fxnUal zt|$zy+w$MT!T${ZB^#fL?j)0aZ;;prNpD}%Ol~&@>s|;fQ#$}^>;0o7I-g%IO;5f0 zpEkci^6%9?ES(~lIv?nKXikygUh_ZH&FTYgSF|DtZwtiYB;Q)=UpZ&o0 z;=qX`c_P*RhOK)0=nSi7Vx+8};*l`PZCU1`(lArkkVw`t!53k*AH{dF#uvxTXkkix z?D_giReQ0nmIUETk}^mdd|LjienngzZQ(pYm|)X`#TS!K1H#cf7V{8trUAA=EC}so zHcmHROyFsJCBTRFVGdJy5GDzsF!-9L1fdU+n_WmaafwYZ zk-rH`C&nzYlnj5e261`P|1sO~h|wwv)r%9E@c6V_XiAHxvKzGoiYN<)jBZ$?E|+@eCU35dK zMf;<9q2~6LRA?xNy<1j=JBGF#9NJP?^FqP26X_m(F!xk&G&aHYESP>U7i-3MtE(5@ zl~uU2Tg`3wLzpY_)B?dBYR=*YeM!*?s;47*&Y$7+jz0tgVCpCceVI40Ff?$H?E)>h zEk_NW@KYSw09Kzm%Z+tm0<6#%ZmjtRtFL!Mq>@oauBz+U6Q7bJl+9JlAJkAPaP9(n zP@+av(rur)J;06CJ08<53~$HK)`Rhp+|XBf6J6EhOEtMbXa<<%{?iL&fXCj6)0#l5 z=kRwj{(7>ru{7kNKm1>o0b>4ov+=)p4e_771OB)BY3irAw$o@mx3*{p^=55R6a87R z^cn1`EZQC#xRM9Ajg0Dz$k@U{skcgBkLRSW0J|`OYJ`%&vXk|*pW#`3c?$)EO4Mc7 z@PP4v>>t{4YHji6(3H(57fe5g)4euh1I_FU77{MCL6nH#{z|aHC)k1lr*g{`^)Tcs&)4N>X9XYX#G$V<<#l))s9DP1$hb#G<!0Aqzip8{=}m-uj6u$J>D~#1e5xDon$VOrp7Cw)Z`%n; zFz)Zdc&iiRKY+~H2t%?D#%YpqBSt!3SxWVn0*gx-_o`VR!c-5UIErl&+Y{Ib0G&qM#X|HD)M4-Y+Wpn-qK?*sgH z;`b4LU*oqI8tci;&831__)FD!y}3Yy3;HiRH`nLG|IrWJ#sj+c<=~&;c=Z?fCHniH zH9J4lmV^Sy{85@3>&asEFG*-2O*Ch*Vvr3bYkkk*<(c@N)P!BP|I3~Bzc`0Afwlhw zaZOV_3Sq?B|3mOBYX7ff4HR$x_a_gci0yy(C2ap&{+Po4UnylS!Jh=ynV0y;{!49I zqmLDXAxgIn^@ZOM3!A|H*E0V4DfpAx{<~_(ch+ze)li8VjMYwP|Fcm_TJ$A~3iPow zD}~`_*C0c~|LGM%^3;a^C8!{bN?OCe5aq(Zr@}FY|44EMc%q~Yf5G%EP+8jezby28 z6n{`itY^O>zwsZxmfBZ^$=B;wZ12BkD$0eg-ml!x&cOz1!efM+FyRc#gB_UuOb>sH zheFCl260Bo)k?ZgXmd4M^3g`(W@HHSY_3K_w};Sehu6uLuBAj(3&Azl zeL0rNFU{#luUyHPXnIy#ERIR{x^g%sbA5jTw-rZ_&KXakw?STKWroE&xGJ0FtZXs) z6`z6>;g1ZlXzD6XOWTQi*A=gWKh~8h?d?Qu`mrL&E!X`x&WXC1P|qW*G+!gy))tG) za;SD$_GkWxp>C&`P8h%B99KgGGV*fxTi5l0%^~xOQE9}Z(FHUhru1pb<&tqH} z%#lCDfg0qsjJ=#_pj{cJIi}vfFgL#$S7zop+LgHgS$2O-AqrxxtY2$e?Dhx@H-j51M#~DKM(vY zVDZ?$9=g=dS5{7r*PG+Tq}hwxc#xBmos$jUEc-LOT7Z83Q~&+caUI0{%kWF|m+sN8 zLjMR(VupXX{T-n|2L95@OSH%)_m{d4ZH2!S+8*S1;k*_5gIo1+5IQc>92&U9=@%VF z=6*`E^^5i)OOB--3V~xvg_x|iGhacR#3_Q3DZQ8#E$dPVitNA~2|xRB53e2Y82F`#-KKIo#{gDb)pX7mGDN4 zN0<&AwdNg%`_eR*!Uv5UK4^>&A5a1g2JJ^KrNGYPmv4hPLJ2)m9 zJ27p2XOxo+KXagqToQ4VH)MOzRsINP`QDuDL(w^o8f@}P)Swvy%~6A9IJhJeh#Gu? zr~%WECoVzE+V37Bf;e$$R$&MH-oo!a{656*m4~wmH{y2`SiTBBnMHfaLdbu9pWpdk zPL3a@#E*ac_?Q06l|TNxzCd>xe(@%59`4?O-$HsyO~x;i+4=!!*n#*Rj9)MOj=*mK ze#hf?3Vt304uH**g}*Xm&qJsI7xZ6FUS4i4{!f$lJo;Z=9(t66e}02ke~Vx2-+J8p zj%eurZZp|FjADH~-+5Ai-gxhhafb#ru<|Bnz7qz%8f${!k%CYd@~RIr#P-Y)qMfmR zvKkAR*o@L7D=rikpR)b%g6WT{F@nuQ zni8R{2sT&sbiBu!l){#cUW8!d-|mNd^tP#-FdiOmgR^_N0|m5-j$B;Psgbq_TgrC` z^a|f7D63C?EXwN1N3#k)$M2QLvI>8U-yHnj$8T?p=}`PG#LuHu55?-R?BmO^%19pM z<@q7?n}Ow@`0-wJ41p_@=(qrp_`fWa`R~ft?$*xoN%^QT$E$+;MySYb%bR#1JP8QW zMJpgkEnL>(Axv{M{;*kz^oT&r0=&#g9+ZE40sh?!0dyT&ZfgKp z*Q3OP^N;1AL*)}9_11g_DTN#t>}_DmdzRJeAKpU#(#^fsPBSBl$%bd;;L zdbsutwvm5$@<`Es#f586V|?NLs998$wHwj7N5S+rsHXBAqyjJIR@9$Otw2>CstK7) zIN+5bY8cnf?I6#{6Ml)_rlgQnAGU>Zz!Ta;$=4*Wbd7_Y2#37Mo#Quu9ql1SA*hE~ zAYfWLd(1Z|w!|c$yq2|txa!Ecj8-T`Xr+;9NObqlog~`#!dMc0j_Ip&1W=pcwOt7R zHKvHWg%~7vAN*l_zyf1Q?H&}R7A;}NQYSo#QDcBa?W2Q8m!JU?9ZT1=do{s0oI-E9 z>5g$oIdpBKuTW#~l?zNsJfw)5e3i#XF4P?{w8!AY6GKP^M4reonU~)S<-@b!T{>u` z^BryjZ$w#?tn^6*)6d|WY^5I*7QHz$7A3bZ+@IbS(oigth;CTauq?5tn`e;{PGZxZ z5PXGy^e9kl(K#v))I&cm-5zl(5hF8(H%^}_w7DKGxRG*_>F`@DJhAMWEi2mj>G0s)@I z?@;}>T>t$TICt0M{Neo{C=jIp``-!TxmfH$B7TWF?Hm$y&K#sk^j#2Xn{oMvp{xev zlv+xcFIB&hTNU__3mw9&jy;jS9TVVdI;H4fxu#Da*l6$hXA+tKKGB7H_!5Dxd9d8Z zA#|ZF*`Y7JoY2@6VTJzXn@nm9&W&yAUt}*$b|OX6%1_8Nq#Y$j0w@`MBpO0HXZ^G` zrf&bKbfT!S1j>(Ym#G`&9tUm*;f!P=;Bg!P-yYgB2&ZY&jjnWqQc)=hjt^M$!A-=#gm~PV#E%U*5=w+tLFn=|jn`h(q)*mIt4( zHE%ZMIIpb(m-M5gUQ2ixg`^kHvI%dI&O0mk13e)6=nA&=FK*(Rf6W!(G)lR=5tk8E zfRc_1#^A10a4{9f9?&fy33sWK-v@QOqPNt?LAZfG{p8Q_@}~!tGW|QYuDH=u-<}?n zH})^z!L7;Wa*h3qn)#9vPtuE>%;Yvd zIBq9qvg1lvw9&Xb>1E?H^aydvF=oAV z$R)u)!CFoKA}QbBS^r?Fze!XJ6Ef1pG!D$Vxir{;3cSJv{5s-9LOu035$bMhvkLde z@7Z-(g+1_hCH{`V-xu-sycZBQ$B%+XeuSF*Nd5A|yqXA<4n+Cmt`kWA_wN?#y9E0u z*5))I@%g=Wp2D>`YXH@>Cukj@$(;yV4`@smf;IqJ$k0YWHy=p%HUVnbhoH@Xe#`GR z0=j^qZGg_$pPni}=kmSnfV%U&CO~)byE_0q$M~874d-$#^px*;8rl|K#N~W|?%a>? z`2k(V_X74_p@lkFsI!H-Sg5Oox>=~Zg?d`3mxcORsIP?vSZENSeVA5*0rh8SheZ01BjBd?7i6*nq#4P7P`|y^DVT~+Ug*IAflZ7^0s1eYc zEK%D4E$99!KsPfrwgY;JsnG<;&(ID)k2BN^=oK#40_b6eJgW_@d=~NpdW@e20Ci%h z&_3;8q0ScSVxg`U>Sm$t7V2rCUKZ+Op}rOxV4*=48f>8<78+`y5(^Ep&~OWluuvm7 zaZ?B4t8IV|WZ6=dJGWb?$wE6U)NG*^3wc0E;WeLy{1ysWsL(@^I z4bW|@^}5@qJuTGBLVYaM*Fpmvqrh1OeWgM~I)Xp@CDTc{Dxa;D!ldrtvc%lEe1drg48cVvl0wi?|w$Km@4Yg2-g@##ZxP?YoXcRbcMIrkyfUaT*4Fc-V&=^4L_~|%6J^5ZG zpddq&03FBBWIz)cnhNNBeq$P-%?!-|r1=lfWG*+`-kW2gc^10ULh~)O$U=)Pw8TP7 zEws!+%Pq9hLJbyLW1)2xT5q8Z7TRc`O%~d0AMIb^vq*L!AMg#!wePe_*I9psoByH$ZC`>JI33e%cezEQWdk5}Nk0P+toTu+Sh2 z4Ytq_3k|hUiG_w)Xt;$&SZI`mMq4Oop)nR3XQ4_9O|sBr3ysrX0mZECQTZMyV)Lnv z8u{E{q zrtnEvHGR0DbT%A9`K7Az1inVi{>}9*&nvbX?XCgLncm+# z!RMe#l-J(EA@zaU;->I9NcusFkf$ma5myi_T!0(FJBbjl4P=xUIUGL-Do~~%^5p5% zG};~CN4}ql)A)|-O$Ct)L8~SB=22InF$mmTDm0zWr~;8EgPWRwd6Hn}#n=&uqxS8x zM;1r^1G2*Mk>LCqNB{3orVw6Ndv`E)-vgr zMAVM-^qO8^x4J-0;~(IQ6}Mc2L=teZzb-JB?+o!x$fr9#zJx$VR)z*Hdn6TBdTOw) zM-6VQd?$*PE*UHB6u`1k-RW3$JDbN#&O@T3HfHSqO^sJ_`Zj}pp5RpcQ$d6+QJ0_* zSf?|$iv88A=xM1sQy!S?;T+xw7wq6^Tc~!jq#?P=zt#)gL5S8)rMKumj3M14PN!2e zae5P!&cWA|$SNQ<4o>aGd`?P^Qu;ui7L3E7X*kj(xSb?sz6dhjry6{8PzZp*s78*zxJyn6aj*4z}q{{{L z&q69xmrr16Z~&pYNKi3J`23^JyG@d0{nuO*9ECQh{ZJ1$X>Cp~Tu}#tw9lZzv!D^z zI2LnXeq5K&9pJvL&Ea05=-M2n6(HN}3Y5>(kwyEex6elo4w>AiMt!++=L*^uYIZR- zAUwzCh=m4rr?$bk4#DHPj&xNP9F~RF_vp(55LGE;t#D=>TdRC3SP=RM?PIO+x`MMU zUpZYB_SSW5!s9yMOi7i;R}yAY!F;Z^d`E3NVbvGJKx6f+B-oRxT+TQAbyfZql*(8C z)O#+(u!V+tf?yE*S6KY3l(#OQ+ti^N zUt3~L_}q4Ca&Z%Vfe3aCUjgjN9p+Df@KMrDCBfx{^bp2V82$=bnrGG$YTzRa#7MQRV; zv4`UQ7SqJk~S#Ulzuq!)r*m;J^%*G3_ef{8>zQg%|9PD?< zXS87M4)tVExfaOFLR}l$(p<(jO9bb7c4i90I6-x1a5B~M1mE!qC;dq-SorDG*kAk$li1>mY~*F{v}!F` z{e1A3Te_K3gTsi=gW^E0&7sq*knaZF8yrjz{&9pBb@(D|c{sUccz3?bG^Zm~zigK= z%~{`0MGZW~ahCm&<{A~o6?+9(pLsr9i;NMVV-U>SZugAL3mOS{?(P5#j zOj#n!$hEkprx?`I;2<9==+9E<7kWJJoz3kg4kmjVdA2T}A}iSLUst}SEZ7ZiET9`y zfc~nM0W&>SKj$u& z$fMF=B{k=8Zcadiva_^J&Y@fNp?3kB6!A&|v*k8C8T3rX>>6e$^ko^m_pGV{b?dQc zF3)ARL)Yn6Jtw7b&R_>KAS0;iKZsixY+Qo@mZR^~LBhD`7$13dzVtA=vaD{0U<(e% ztM$d}N_Tctn~2W>;Im!@U}V8iU$hP%5QaU)#40!hWrO!2B&a^_#&;@wI0f)UfkOkS z;+<7qoI{>ZpeWY59XmVJQ<4PmZrYph5{>2jsGNf7|0FIhYCvB1=^r7ln|YL`cMOE- zD-Xi$$b8aGqB$+MjnCMUr$`nP>fmgtg~aCJmG(^lkQ2IzS-#+{9!QrYUE|?x8DWo% zb`Ml&z-&*|S(?O}9Kp?`4hGS%XxWM?6T?MJ*oDziy^F`d7s*j?0g4MRW| zA!HuyMsS~O=VYLKm4(r^7Th@EYv}%I^wQJf*q{`1N@wAEcqN+i)vxl!S;SW^n#y)| z9AI_GFg##?V=CwZr8OAWq)yjv&nkQyzc2B7@c*(3m*CeCKdaJz09ru-=y!bIE(oO- z9MzIrIC=qbVae#)!|88m%`&L{+Dldalts>OU$4zs0=9sl!|{hgR!yRQaCQK0dkUr< zMmj)TajS^fY39w41vL$Xdtf(~^nF4DyAn{lb_*}6-WQFcSoHC4n#{pxG5ur3-t8|CXdax1Zs z$mvFJ6D2q2P;QKA=-#HGIqD!nr`x}uzFk?UdyEfpqe1A!sGa58E;7Z;+m$)05o$5K zfi`OL8L3%S-U1vBfUPx6qigd)8JQSSn5VQ&#&)_DL!PoI`y&bBHPt+yx*e?>-#O|G z&m-chBe}bgG3bPwkQ5K_RP|m!b1Io%VVYmt;bodr(NqNywE)jnWPZlJDwT~KLQZ*b z5@DZmG+_sID7u1=e$6_Vui2NOFu;%Y+ASJ!e-q@(iO~`JP^xa=5yfc`VrwKu_YY>O zKyW1q5806g^iPTE&h)_UTh1;nQ)3Q_wwPw=*ZEt~;$-cMtMw69-qBh=KhRw(4iU&? zlFjuc@P{$B@QBc-9!P6$K}2~fSmB0T3~=?7!wf@o*7V`gTTi36{%~qVAcFDp&n$15 z(a!pyRe71WC&Bn|duV@Jk9EXTZGbnSubq^Bo*Xo4@p%tBJcsnU5~@AW{0v{h1xb_oj0-+4G{)*>G6v7O$Mg zijVw>pb0A4{}nmZFjoh0$jX9+gzuWe7@x|8IS_L()@C6&jf@xFvf{i0i zk4Z$Yx*es#byy#utr||Zct2kb?4}Be0W)@qH*~xs>N7Zr+BOUc2I}SgxC`tdFV?U} zUCZTsX87tlXEc0W1bh17TgHaouYLl4;^Cw0@Qbr|d-zfhZi1&g-U;-b9`Ayh+2qU6 z_-U3cRpW(~-DCcS3@nSiY)i(p=U_9xpxwgQb5Rf#k#Kj~HzMXl-6{^l!g)0B97z9q zTxDA@snD3|bU7^}BrqKQK*tykr-Pq{ig-u)nUAd3LsU@nwS%M@--(Vvh$SiQ6Lyev3k!=L75+DSu9q0^*LGz>*vf%-~>CrVMLg4eUn*;L1^VrkUjP)V#IC~!4sr*C%^ zd;%TtUAnak`f9aswp(8vA%o@M)-?Lc>(EzQ4@s_>Z{+iT3;RP)CAC1+Jum66duc{nfwJc zEx6;5|JK=vpYee1u8k-ZEUlsWWgUoKt)Y3{zWfHX%&1(biJRIp!DCd>O=5aXp~pmx zN1ad7?c+K*hAN4x>8C3E;uNXhp{-UEJ@(c2Qxm1tKWm8(UH;PPA`@=?bDxZmTmLxy zqXl4Y9m7%MdCYwar?I}Ff8F|~ippm0W(4EJwmoyM-yyb#vTRZGGrORM&K%~JX6$D4 z0qgO+r!1ejEXE4%*e8bf!jGVe&_L6shmyR0;9AXc4KkVqOPxeIA0Kc-0+#WpE{ zVXmY)z7%t!W?@*ZINblmw^ST*_@+=7Cad4AncpaM^e%~J-bSqWOW|3S1-7@W*yXct6Dua;KbJb8 z@7~E&kZ+f$f`Dd0UJlYZf!DbG6FuR`3DXHVnlEYoL=~d@ya{C*K0b+ckc> zd#?oimd(;-eKX5%ZT29)y}?uu$kz`XYyy5eG1H-7#{Dx}zCdJLG(M3gG@?G_PSa-* zDfaNETqZ$=%!n6WX8jf&{zXmyjp66^C?BM|MhW-h9<=~ zn(#e_{ekM17<_+Bi!VWZjp@wp6#v7C^5iw@_*0n*TTaSI()%L(U# zBc0r$2a)tZ{|!}rjpj%bup&lKvzZM7;XfM_YJ+*bGeiT{ID(zNK;&vLV}@?28o~Vy z5HkbANO9ycukut8B&&=%eUxI5_h7&yy}n5@zCCl|$M@IldBuBL`_DgKo9mA|wZGrxFf=hrkh!;%);T(PeE2#ezrhnd=}#UAEO&EaIZvecztGwOY9EXZ5u=Vd-xR_J)W0oMCYe{(FLguHa9Gvh$dg8ZAvq@nduW_90 zI(tPI7zwkpfYgl%|HLu-$bToG=d;?PJE$2NFqdXONHC|BUMG(QYIs6}Ej0i1a_&Bz zT@SL=mSZbhQ>ZZuxt;d&A4sQ^aqHm6EI7y-!XNbEBKSOZ74cS> zbvFnaBPAIa?R%uZ!AVr@5=Q0Y-pIy-6<={fSfP!BgZ_(c-w12(f;6OmW!L28SQ#O= z{<%#oouMm5oTBpbd@^}K3JHk`ZFgzHA&dwp^fDPE`{=pDXp)lC#U2HRk(79GmW8^B zwU<9~1*D|7sZ^w-e1j{K;+3r|C6JxEe3lXvR1b6OT@&L}E(pYA0dsI5T!n?PiY&L> z4+4)`cgDFytbQu>I2?#9mD_B@BwL*-Vh%AGLOr}r^RvnO#|JOe{g6+?X*){QIr6qh z&SCtzkJ!D!tHys$hy$dzE3(ySeMM^f_d+M!&r;LBkm|G1sbA^pNz-3tVXwN#!r7`^ z!<3Hlw1_d|c|^lr)O??Yvr+FI0vjGkAzRPtoPmF`@C4GUtks;!kfj>r1*5ByPYPGz zg;KQd7X3no9w&NnfxLl%VMTNHXH2xH{%TeQ&K5fJmKTlC#BQV~&z*OKY~6#h~lV+gFjw1o6zUok$xd1MJL!x?vKG7FJEOdniJ;WDk> z3}fJpahbxRq|@sk$)xhCxuRP6MA^(;rh!Z`x6Aa^KSddnV(x8y8+Mt-ej1~4cBnhS zHKO>B=CUrA>BLXCyn`k|VKSq`W;VqjY*uHX1p7+kq;A8i3$32_sL|4n%=Ots>8I$k zYR2T!XZ6x&>nk1e_8w#9)+>`;cw^V}&ra#JTV5^^&TEDKY35Oe{>hMA)tkbrE)Qhd z$HH}F_9tjj(i6M~M2=WV-Te_4v$OP?x4w~q+BN<2kZ`k`p8JR?O{{-jZH@lHY11@c zi`PF*q<@x+F$p%3{+U4YwH8r_;U%f{&*_`U8O>0Z)az_a0`>4{7qIJ!O;@lxf70rQ z&b7{5{XESCbE}{0{!bWz)Xy^Qmg*T>lMH^;)bPZ%)l8Jf!Msu932SX->Mnh zbiwA*pMyU%Vw0_=h~S$*$BKyXw{r&f9#p@`%{5%uvLU8(Qw=ILg=t~ta`!31W9D-6 z?3GtNrz@nn)(TU(8L<=+LUW-qwNA8vox!FH5UJnj7rdb0&D;z>JGVD#I7_u>3CBJI zD3KFnKp}ux>Y%Vti6)wbw$WM2r(x{ZOXvO446#&o&`rqBpqDg7#P@``N#vz_)mtA# z2kT`GYh^S^E~7fGS@lC*#tXVD-t)oQ#@_7vzbW0193NdDOhJ3mP6L=XL^~ZLgc9vE zf-ACYfrBir5cF0%wR!Eks-0S^&C-`=eV1UpT>%M4CtmwFIl4IboVv8DZj2e>vhD{a>sas3}9= zc!Rzdq2qGy9Rq~V>=;n%x&A=pSFK?1^O_joK6J>%fKZ)`kvY-NMcs_}S<+Z;O{uZTyM`FPwXtiZ~M z#$(FM--7XYXj_8u*hftKe_}j-C(684;9z&-%g55iA;htnZ9-U-Z?Rfm(OaGPe z2nNZI>w&Kms8eMyY>UoM)uPPg?G@(tnEl$ldG=r!+UmbQK>uYvt9tYwJPH*!3XD}D zZ>5Wk{yVp|sgQo-V7L=A#KFV3?Zuv<&%tc58H@DILdR~g3z`Nj-^jQnqi=9B zjaM%kuUmw;cD(-hLW-6o!-uyMno=&GAU!bp6 zAViTlH(~(rKFvZ2FIX)T$gw~7NAGa=cz>>6!yffF<|AD-OPE!MiQYUeQT8QsFM$%;kd1=%vruI{Q>H%0*A0c5LH2 z!~|RSSwOocN`kZLwe{R2zZ!|oGsDm>zH8T}V3?$q_M3UY{FdOn3uZAK0jrNeYqtEi z8Y8Qh-$ezKsf%P(N}Q>R&x_g1P%qONYN|;j+|E_gvg}bjkd|e8h|?FtvPUo@ICq>s zhaOl){Y^ZhzQ)}NxL9kAFg~->Ov8j=n^VR77}h%A?+I9I0l({Ftu}viu-5N{<<%#^ zm5QM@5kp-kysY*{-!!nGW{0p-UfpCCB8|ZMha0h2UX?=J$R%Z5vuTL z@eX|*OySQkz9-~X?_%(TBy`A|)wuoEWZd6m?Q^TpyWi&VaQmm(E{DU~%l#yOf#tfx2+Shgl|U>#@JsnliG?>g~$&KMy+|e6z~tY-*zRR zKcF15$%R_w*yK{Ao3Ia>psQs$bwneu>7p_^@1ZbQO8?*zX#fIoX4hJ0d5=M8uY5RV8YwI1Z z>z%`D%h}^p`9>b8CR1{N(>Aiqwt^tfNEKE@Z*Rz0M86rs_8-EUnSMF-%>?>op;#t| z3(WK1J*Qvx+C;UsLcavX^6feOGM)R~8vXK~FkX1i>6dJ21M8ReueVaaD0z8z^~()! z@JKj@I*ooAr|aEK{gT((dYk2iaO?ETd?u?M=5(=K=$A@X^sUe@Bc)+hznr-82mKN~ zlIPvm66lv7i*0l;9qX6#9VW{e?<8Xd|K+^Q{g(&+%3K{B1b@z$q8N7}!VL?A--o?Q z?k=2UEK>#!$cv)XG>1BI#$@VJe@y&9{ae~$TA4m&=!*^9w^lUlDWQht&^ar<4IG-8 zeY%@_8xt?ej&n|!e}bv`r#1fXt3qR^Go3uB4y|#Q3`+PtaFZDs8fMJ}+W)m@L#219 zr?}Of!;_D77hNH(rP2;ZwXy1)RG?u#H2i_Tw6dq;gfy0!e)9OYftlb_WyVkEaDQX? z>Ca-*G}Y{U>Oh*zI9b3k3ay(@?e_{(IXeAG!vN|LZDsEume$qo)_m$WGS1PNM>>V3 zj@3=r7fo;~GxvNd7{!=&PO*=)!9nI&=A=eBnA0a@Yo*O!^0Fazrjx9I=-|v7cBS;h z3c=~iz9mA?in&E*@^bJ?M9dg@32kHwJLtvwcg7x*moV3g7_m$Il51e~k!YoG&Yp@t zTy9(7kiJ;e>vSp9mAVNxy5$9wAsKNlFD^l|q3xN<+hKqty~d zceUxFEx&4YwO8nB#T|F*hg8l^JE~{?Hhd%z%V8oq+Pae{nqg?MaMOreY<}RzYxBHn&6Ny%}Cl`atKa34t|{bO&Y_2 zEtTk~Zn_D3ZUXSadg)Z_Wa4XK@hI)mOaatQGMbro6gpz15XZ{IZGZX>$V4)J500St z{cHHnu)6y>W_H`JCzqt?S2BF=c>A%;6*2biHt{GN%*podVTb(ipt>C}Pa;wXEki)5(#guOYqbQ>#cKa%$@=Zbt`T4{23=ciEyOebq+ zIZ*ets812pk*lJOOzRP52_{ENVm-o`>B^B>%(K)hFA#;Wc9l`y6T1Gm)Mc6F=0Buh zmV_Gko4uKgKZE0l--pxs{zJkQwhJ#kkfIBWFV%W|{CR-KuVSuqFE-sSys5{CmQ=v} z&hr4t;nC}^>S7)r-@;kb>AYn6*L}X)&m8(b9d|%+4HvuOIA5*)DQ=?UJiu(Aw2P*@ zcfQ(kNQG&2YtC1D*chLnq6Ngw%$l+1tIcv3S}BE0k}CEa3e;QTf7t^7BhjC-3pf&u*?oYuK-z*EeukevUV=TUBDA@?nu z!Td-6y7{k_=TUBA1LHjQ`dTLWH*p^2>L+px3Jnu}tdt5`aD^x|!JX3gKqef?>7nx$nK- z4)%2MDqW=I*T>0by7HU6D--bRWtwLad}ClS>ucJk*{ z%N>IQWS;Ottkm>*sZ*&BWHHTw8KPBE9LuirQ&<^Y9#zCJs8337z)^g{X@q$vmRS~w zNJsfM!QrK2h#?0EqpMdyQ_CzL-t*sMmbCn^m1ybWhfh`{;D?{-F-pJ>^H`En@dN8N z{VjrAF6~=5hjknM8?W0OS~Av?B6f1b*1ndyqa&*BcB&d?9r{|7HLW|)UGcW)+aUO2 z=QFQz@9T%o_Q^*=`0$lz?xph#|Mwnc%DAoF3=y9wZ)n{nU2Ba2?j@Zu%59(sL5y;1 z>n_w^oGEvcK6}z3KFsqD-Nv7tD+{h8cC8n_R$ZaBExY!g|KDTRIDHm-1N>aQeF+AU zzt1}ipLbc&16Sr09Ty`X^>_kCt{3`&A!@;T1=DUN{&(cV;FG#*0`w)oO|CBi9&tB_ z;+T||)fa6lQBB&~;VY(8bE$kpFy?D1k>C5Ygb`A;Qr-zJLoLB`$szvZGHz#uzamfF zB(Srp+VYKcMH}%!zgqk|Wuw1f`h1EH7H{0yt^R|HyvWQ9E&{H)j>FNTGIb62+ARH2 z3?f#BVrC!tE=3x63vBr<~*?8WjJ2tS9{(48^Vf-&5J^IF@2Gj$8D6;vab%Hx>I z`GQMxP6kx|x4aNOMsN*bDpxXw0{Ym8`Z$UESfz1g7O4f5FVmZ6AZiXKji#hOFUR&Jta zJg;*!HS}dJJzTzy9`=sInnw?pEvJX{u|ii{{q$_s`gr2G=CT#MlN%s%%>-J_N6ChxLUb4J($;p z9vtaLRzOeYc<4zUfbE~O!MAef)RxbyE1FkZbZ1@howddD>&oZXmM^L+T2x!KxUP6{ zZSj)2@+Gz9OY4f3))pQf(!_`xt$uOXF>Y2n?!72EXb2yfx37kCS2;rAwfdtc}+JP*Hn z@%se7fg`;?e6Tatc77YK*&j`G{+-Kmk9{bC<^HRf7HhdFN|Jdp&4{IJexUIlX0_&y zx#2@+Z1rPIcdy^TbVr?o5;oxfdW0K?E#czQiqVHV;5`2B^V`9w;uP?A(Vmx=f@|_& z^_S40Fpn-_G!+3@{n-LLs;Vv85Sp@~O~Ld4S-;{9u=TeE$<`ZLNoNVwl}y7xa4BkB zFocW)`aVgh5MIaH-iUk}TdcZjRCfYZUB{th9Du8*#x9(h{glgl1JPyHGge$)U zxM<@`qpo2xk>^r6Rr>ZnGI_!WNlUegOxx=!jeZREdYJC@jT-w1!hUEcVDGE3H$ZO( zhj3GZx+yRGnHw0s7mr#&?v_7EzoPyIy0w?C*kSE)_fu(O_{XiQ;SOB`xgiV43!wqM zUvO!msB9nXOMSeRC^+m7OhJ523}ro)*O{F`Csq6_*cGMJ@jQTj$6laA`Xu(_0!Pko1tlM0VF(0?XbZ?gqJBOjosYB+ zw%~Tq-vu4KOr*weF|F2xzVudI9~!t0AAt2#RRtT_n<3^e;}1itGXxDBosD>;UXuPs zw<>LP?rstJ#+Rte)UtC|J$IV|EJo(^TnYMG@dUm!&i}4oC~{Q=8K}+ zX*2k%s;etDG}KFE*XNoQtilt=U0EMA3_C zE>jOLW=3%B*XqPF6sTjAp>S5edU~;7+EJ_nz~F}o_wc&ez5>I-%%v8X4=>UZTuE>v zq_Do;gPE_LpwdqNn%R7k|auXRNj(;AlzU>kY_}=Gqhl6)A7MoU6)2+(TLGf1iYs;#~{)*bb;yd(nT&^&P;8w~!=gDK0- z3mV-*670rKjed4k@<#LFe(GZ3J83eM2)@s2aHnkd6~LUP-OuQDel@yFZW z8rDwAzumwI!B2>P&sh|;!^FQ=)}?5FGJLEILgxG0tNAdMLxG5`J7MjZ3Tss8Sw84{ zTx@@ql6(w{lMh;s4mB2t0g}@U2u`MZugSeSeQz|~+bH)Y>U%@!-Wzi75`E9& z!#Cbb)ok|M1K|fq8*uMdedrBs&8lU~AYBVJX4i5bNxVtbTQMOKEDQEQEinQ};(dB8 z7=;b=sx7%1_f}uq7X|66MsM47ZTWF&j4%;aRsw8RX00ZAl;X4TWvcrE;zjz>d-WRP z0x-_z87bH?$~gZai1~Af;m_ru)rzvr_>;yy^c4M@S1|p3gnNZzJG;%To8&EY8dHSS zM-_nLZl{G*-iGN=OfHv&=8te$a+sxf!0*;dFGlkZA&l`#^m@V=ulF%J)vMQGSP)(c zl&G_`Q&B|C*6t6xB8UU@BE)V%pr#%U#KF%%n#8hDy(&8Bz3=8hk0C+l#3Xq6CWAL2 z9jML7stA;-zyF@GhJQ@~ff!57aHeI6k%BeS zDQbSz-Y~ysv4Z!pf+sZ!1^=%bMZwRw##>0g<14*|@8fq@mA9~Tg10bdqPOrd{Qg54 z{`*}G+c!Fkmi?~=vTr3|I6eOl4V+JoQB_{=hVXMy1*QEltT>JDX1JcxTtZt4LSN=h zL{1?4Q~cV^q$9LCCMUcO4nAAEcn!35YMgD-(}!wy87Qdw@IA!6X7!enZec#z*u`tg zUlT%?UZ5Aqe6raag3v;c!8F_`iX;s`D!$>`<%u@@T^484a1H|}Z}_Gg zVjFJkzG?VuK^GYj*L45*Zg4DD%pp3_fuu+bXV}lD^ez=R(hcW;;y6lU|)kRE3g-^-Y{gLKvP|EvaGs3mMrvw zb37ZkfmlT6bOTj)8&iSuxYf0QmxIx1ic-CXSRT4)EHHj+=5BjJ6R|uGH}brgkC;eQnKlyzI<;S{2TvnUK1Ihs5hkhcK7l!Z0D5ibv;&f-^&Z6ox)qE!Sn{5n`S<*9V?^9*9fv@bB{o z0k~V3XfW1>JnANSqXO%Z>Oj`iSVf|@HC?qD)W~L?&T}J_oh``1uu7C~R=tKK8ER_X zul~o>)Gn(!=(o`JMDf{1kT+OE%U)xD%|iuKz znZ>t30}{I-H14!|_cn8+6+x0ynoF@;6F<9rVj}P*lx#h*guv8ljGEy@rxt|1f@9rF`ge*#f>Mu5e*cefgdnaBL|KQYnggvCQ-)6j?DtVagNRH!1=%6*zBf1;~3Bq zwNy;FcsANafy3jQ#ax!ipUIO)Zhz*=xl~?jeDY_mt;G%YXFeev!7=GQ=Fhx*O~&T( z9pO4-io|b;P~+D4Gx1yc#QH7O;?B7o6IyKA6Mjp#!i0XyJL5CXN%Aij1~JO{N|$ zS?_zj0p0^Cem^r9FSC(vhmRn_jK#Qfgk$a1Q5C@<_WBMluVL3FN3CJqrTy!ysxjW$AfWhP&^x>8pk(e( zP@LN7PgLVNGk@ZVv9b2Ygf)!)sngcNk-3n<{!|dYH2y?CV}Cdof=}HJZ54ka7e1

@ODxK@vh033ZMEBqoi-Fc+~($6M8wC zu;NBR=|dC#q+x2p@s1`O;b?+SH^GOdHBaMrBV*73pZceMn`-+Dy9pG#$yTd1OdUQ; zm!S@y>Zomv*t-hq@Nx}Phi{h}cs4Xs!xULMM#JPn9V)QH;!-3hi3|0`m{=B$b)i0= zL7lRkkj90&pYXX^IL?Jyq%mq2YHT%CATHE}fa6@KbAj{wtjbsg?n(cvm$)La{?{~N zz(oGnba~|VzalI)4*%=38!(dWf4#Bi<4MI88T(%sa{mGqx$2k9YH=ylgW`Q2GVUK< zfhuxi*jLAD^t!34VCmIH-cvcus2UT3Wz_M$$1Q}~YrGG4^g+j_Re_+63^$(CIWgLt zamPp3dkgO5^F#Hh5F``dvwf`ZnIq~-H-#dWyAU%&RxP_fuQrxoRNgW)7pida8~!O*(=d zxpzcpqWvJf+fP(k_)YYHLt59~M3wmQMz*?fvVoCcEmVwkSS3qC9M<^w!Y?k5DpTWZ zlEX@Iw4bxqB!^Y}N^w}@nWGco5Y$of;4uB{D9$C51y3&!dWBzuXNf_( znpJ=-AnIt?6PNvwj2_(o`(WF`L`(!kD#JxTgx8Apk8QZK6 zk)NAleP{t8bm=4G7@K9Y@q#XH(X4gref{Da9=F~%n5ED(+&IQb7An;xu?;tlv1#~c z*NGNMw%+%`Bzi94FLkXb01AI?7Fe(Mz0Rd*CD5Z*>r&*qJtnXjH)B-Td5bqHCsS+P z;}*BBcM{oTyH0BYYDu~uzBsn~#v3%YZhO-I zTFPUBg*!5Nj`-KFm|YV2UwQJ#?SEa#8rk809bx^i!aeVQy*w&o|7%~KXOaK)5wlCC z{#ON6k;eb}a4IvP%at)3A8G|K%YRv<0eP9QM3(g_i@g5Fw$%Mx z767Nc$P0kH5dqE&TjN)^l%k8TN`s8gb|EaXEBBuiNQne`+}4?bUz0{MQC+H1YaH={ z>gNohSVEb4R%|tN#QO}vO%aEQSN$>%E#;!d7!NmDXsK=rliK<$w6&F;oVol!oSeI^ zVWwplshg%RJU9uW1rqz&H(nTRL#$tO18c_ge$6R_BZ*(rUvPx~A)d?QEIcmH#e=v1 zC)Coex*v4@PWAST@{MLh<6-3eXX<~H;x%K(jQ^2jax{Jf#?o!a;{1=(#PDcG$oL<_ ziNV}rMH9J02%$@;V*QU#gtrk2@~PuQxgt1|qYf9?sRB5e3Vz8OV1LsglZTX~LkrH2 z>rjke;#K3M1u;{+BpoUtgsu*`{gP~Ti0%-16ywH=OnT9|A>#xl?_#*VpN)?8lKbIV z)GHmHw5enM@dGe3`uA9RRa}_^9VkEJ`;x|#WAEpvzsvo|08VN8#FoNGqpyxO=y83Y z8njm5rv}}v@52J9yVXq>VJy{1W5WM()jFXZrbAv_J)y4lk5cz?2J+h#y z-nMX#dd0#%^{j^JJMUM}a3D658=Mcb5u`|p`W+8FwIdfL#$8Dz0#q;XU#ze22A&Pm zS8!`l-x>OMbqmI^Bo%vZ8eboh5KDD=8nZYv&CQL`s4$kd?=ar{-h~E;m zfgYfp>UvFAZ$%qijnh{-IJ_ZOU97Ks6?@}qn7$%P-lerTQS#Ro&QUcM_NiZKm?(KL z_rgudQr(WO-0LGMgp%EGCF9YVAkl0N$$a6WonCxs{9i(@Nn9xH&4>3~VoH zT=;J>i~FYm#rN0r@A91I+x+65^k+&$$He+Gi!NjJk;tF9Umm&rnYJ#`sInUEK-Rqe z3a!!hmdib?c`rOWW6ir*+L?(;<&1Dga)5+~3Z9;|fx|zn9E=Y}shYB6LeDw;BMz2R zC4azPdb|c86`542-dLQmQeDrs4eE)P%BotaRQIEbGE=ITNJUVpH;FmrNY5X&p{G2A zKVKwS(QRSs5FBD@jt>N-=Ln_3a-?-+DxGbM(!uPpNY+rTWMj z^QfyXm%0f)LAQw%aJjxu@NY(Q8S;NA`ee@DplMdp_*?T?NoHl*PUz?xuwO4uOI$|y zW5DozRK?I&iSxgglW*OR&Nmo)2@gm#|NG1oq)Li!J>ff?@Esh3uYVeR)!T=e{WnX% z5G%^TYVPxNY&MD^6*BLsm39lH9IKg;Y5?|THsao+* zS(aTPgv6oZk=$G(VpS(qXixM~p`X#)Khu}FY6wdaCOttqX;=-E2QGceVf0W#mK^kr4ZvVhr3mR8m!2rDJ1+m?n=&g}C<+R;Mn?=-H-Qj8zeL)TK?`M+=c_ zpHywX^b;Ndx9gU8GO(HLDY>Y9nHPNI3`3^(d%%0r|J=a57Pr3HZ3K^hBLDM9dF1v#>x93I z8r?(t5_1M;EXAEz5n4rR9pEm)$VQRo>&slVQ#j2qcADtUbw5T+(kyrW%h`m?)6KdP z>NM$Q^96OQ)6LeL&bVFb)~rTIaPJJk>@pxpVjLes9$hhx+xgwy+@k4DH>(i6V0`H7 zjc#bAGrj&aVw_-i=x;N?iIxAmqgZKjq8ZN^Xrb7v7K;XkP3XoALdGx@*v@f zds1I_6&Jwe-(n@LQrIz(zMd$L-1_=$aTfNlzAit7#Ll=z+671~cz26f82LV+0*)^^ zv}1+~+Y)<@(r~US6DBmWoJLvyWgwc7Mp>WDh9Kb5dr5LrE{n}g`Mq|I9IHCJpPO=m zG{|Va*5#&b9>9c8q~~LDQ;yVLVwO6SA<=AOwNju|*omc4&Gv8Usc1GcPDPv&B{_W4P)IF)s92SIgigLc(p%p zc=dXgb*#w?#z(}Mp#mK2M+a`VD$=X!e!;!wz&{>cXSJkPeRwWELd}^6E6zeI+-quj z3E4f%fvI^_bawc9QMZq=w7S&o&Xa#ox3MbKb@1bsy-xw$H+uV}6F;c^}fRZ8st!ZB6wlj^ zIa_od&D%cLt{6GPo%DTzho8k|oO^&g>O9u*f$)ilpM&eK;_|LY+GEH6;7GU}hyRfa z_J10NeJ-!Dl-OO*j?CC2A?=b=wrG>jvjT_TrI3qbnc3{nUx@pTk+lYifoj` zj5BH6GTD_RTET=&XjjtKqd_b)PjS8hjjN*{v-FWXJdDBjdQLkt z*&y-0Ok)3vJg|2U_Ki3-{;%+~vemJ|)Vu?sZ;=cb&02Pz%CO$cRCQqD!wG-O`r8b> zBN_1jv@#?I>QSxm$!U6B-zRuqVFDXWGJbW+<;{sl#p&f_$$%}acmv@E1a+d^g^C;G z0Z8*QH%I(4(gj%Q?1Tz_h^xmtW#1YGLo_W%_qX? zhDT%k8{YuYVzim4yJmOtZ@LJ)2mG5Gj)-kxtbg<5Y1D>H{hMP6UmE}B3c;xTo3j3* z9jK3k9sW(~u!P&c`M-Wl-$ee+)l%N=--tCZ9Y}_HXiJ z)6WJTNt#A@)q1Xmwp2tNhf)?pJJH`Wo>0zV8GAzKumLsZFq#0|WuSt>j7l zoQ!p(zE9rD6~b?=T7Y`7YZBcQvjF8$CDOF;j#yu%gFFCX4&lbQe3c5||IRC_cvoYW z?y$Z~zW$V8KKBa|L!5H4)PnvBeeK9^tEGHO}r{jo;^xsfW zGm*4}VFaK%(Y(=is=Y+ysd3TI0MgXk%s;uKrlmChyqGX! z+X6jseG!f3pG7Ww(r2Kd10i-RNY!25CD=`l4Lj{L(Wv)TQ2*@A` z1q^9u5PuRy3UK)eSfpBq)J_lB3x^}_~Kj_r-Dwy@{a7X~h&lZF8T;JEODXvcKN8qOpF!EFMv3vkgDi%8%Q^JL z?qE$rWhaMkNvHb#UMRvLu#JM%q;lx6mr3v>-9Z~T|$GmfM<#=Kd<*l3#48g0!V zRyHb$wDq!1&~xsZ|Ss z4QsJGESmm;#-YV1a{qxiT8!pEK@+34OdbTOEjj`vW7-s`XIAi!Rg`wGyea{ov-(Eym0dLow#3~~2F&KDT&f+uoLaB=(S zrVYKmV!m`^OfPbdsgRzP#szWDX8{R>=hFNaj7EDJOM>I@N`idh1qCea;sQw7`asb- z&dWK2RVy8Er&ZE$!r@+oBTxSV!eIrO%hvnKH<8I!UW-HTy&Ob1q&j1o3CDhf!+sQ- z%hq=&RwO^_Y2n>yU%Dsm%jF4wC6h6Zhq0jl&TXNRfee7BD5&SUUd>s%p@Y ztdX2-OdtAOnz(IW29mjM)vMRgv6C3fkB(rBjwvi?6rY*j26SqbYe+a7|~zK=>c{WLde3Fz;{`}x;FM1xy8 zV*mZ!hp|Do`}v=2lY+`g@ogr2dv^l9b7Jsaxl8z(2;X#S-_Aqb?K>b1z7*$QYUZ`` z_6+jbrgJ_UM_u{t5><8xx5w>7KPDm{^zDOY&-pbcj_-5}t;vStMBI3VGI*~zp^aND z-ba+A?gm9YQwZ&+{#c=<7otL&rPfHJ5##i#Y!){Pj%BMa4(A>kVYaKtNlx)j(xGdp ze)j}2=Cn+oI$c_zJ4Dmz6dgJ=u0v*VSv^?||DTDZnN8KjO&3L8@?3h7&)RR0Efw;xrPI)PWG^sZD_B}|dPdbwzz0C4| z5R=sErvq|RbUi7)o`mmx!uL=NzL#=#1>YdT_a@;R8H4Y-UBWkv@cBr87R2D|kp^G& z_Ms-exeVUxigV!`C&&*hRln`RgmnAoUkig(WJgt(TFQdq&TM0kD*mJp&i9WC()Dhb znfl~yE)YF>+jZ8+m0J76?4cv&WrFfFy>l%J<@wmNbh#*6+qoAp)qZT9*hl0A3Zp3~ z(KhL66^pZ-PN(i};?1fnScvf*Vht7f|UpizmP zD1B6(jywSWJT_U9@6QeuaSXD^Hh5F8{*aTfY&VXqhqog|;Dln^H3S)25HsODCOgz>7We>~-@_vu7z zLy0CHHB%ciS~R;};60Gf^^hlCu8h%@Lm`f3HqJDkYb4>bvp2UO>6yFwyJ#Ps&vj!* z77gy>eWJkFSl%J9G1xS*Pcd{K?97h!MdCsM+YX?bOr(O=08`|v-%bc!Ll>LRHCND? zeDzTsc&zx`=W_tZS@glc_}!n}u)HSEZ%DXqCW-1MvEg+Y@I;9Xo8*z(fDJg9hs~t_ z6sV{6!wt^Is)lTvFk+%CD_RUeuz&-Qt_A6&iz0V_o$ZL;=%A9#Hz#~{75jw!xm{~{ zAsr@}K4{O&#-Y_&^2PbkQ)GdVeDM~vu|svqHvH&EU@0c$dThQCD<7}tUdVF2WN#cT zmW6soC2h}0Stae+b1mputc+;&ro%&Keg1qRuvu4#(V>`xfrwj%+{R>i>FwP)RI!Dq)l?<0=qsqaSdYn?8AP_ajfm?^6 zUN#}@?t(1b7UXApt5@wu;hpckj5{5Jr2cl0{MoY8>1oVM0Vya_I~i*L`kvtzhHYJUu!s9;5}gP zpJ`?-;A*4W-cMzpBU5`nmhh#q_s0lEZSQZ*XKrD8KS4N$?R|y78QS|VzK9#TID5Z? zF=lA*?<0gRvc%f^dj*}b_u~RQR&4J_0*clGAUp9pCu( zj>WPC^lynO%4LRh`kl1G#jyh6Zs!u?gnxp25_+C`QBNaRzhoVkp%v;%SY4vzvO;zF z)YMY7zu=TAFx?1k&8y|Ugz4*{&R!?~g7~9Nu~ivgh3Eb7$Zyg@r71^QFGLXbec}mn zDdBSyMCZwv75gmJM`Mf~F7bZO$e{rc?`OG>2LoP0mRcfk_{->sMi+PrLQm63Iz~6e zO6;nS!fE`X&RD{jWDSHCEoeF56v4Ip}w2L*PhD2iGzSH|ne#*bnL)$orQ)OXuZ1FU;Tv#S(?I-Bsh2Q?-Q z1D{{k81-l2hjV-7v+zFw9OoAe0M7q4t?AaGt+`_Tm?r-QOIh=UJ0!10yP(3NW$GSz z<~oWjk7p8aq9}OasXWODh@Eg?sqaBnfzimQW-&6}w437=JXQhna+`4)X*I3{8xA(( zO%tzqnU&LL@?CR=wabzoA1_ATw@1ZDr&_#jvRqdRe?{(zv=7cEBXk}aq1wH;cAk9e z?16to{sWAK@k(qT7g5trp!x8zG9K1Go|URyN%1WweE-kh`@mUMmFwg4=Kv!N%rPO+ z{6mRGsYQuJ3QENkCX>U&l$oZL=@G5`>Y!GjjEAl4Han@r#2Ulyn;sb5IIY z%0F3h(`!IfdmK#4$*@NGJf(qvTlZs*7tT9iJ z08^i>mWDCutfRT>XEvx>;yoI3n0k(=iPC^Xf+k}x7vq@P_$#k^E2*FTyor2%ic2ge zIX}<^632WxqcZ>37wX2MqJH*G+~Kc{XVmdx>I-{Vd0Y4%9+ayE##fBC@!k9I zZu}bkY+1oIQ}S-pY0LK^xn6B4R4DhsD0kVsV%E21$=NmW$`Mk=M71{_=`N^{R*memQApC!6!%@EtRN)fl#u*Ec?5)%% zrN`9kZ7tn9wabAD&-VQD?@Lo%pXGqB&Cyi@V#)|X0^@er27Kn9eCm<;VrJ4G*Rwy) zvHj8go}m9iFPB*E^7<*IOS<7x0nL z8sEUD|1YRfX?%8D?t$KnmOH@=P~$m3&EU+iSf}99%&>jufEO{i^PiD*{@X>L*B6fC z`6qKG$(5b|LxVbh`>p}>j#6z-eDB{fYTh;KCE1KS7e5&NRn|M!or)IZV3Gl!>2#}^7@;3?zLOK*Bk zx>0GAxMN#CbppKp`lqZGwjHuz&mj+O)87!y_yS;jP6rlcBmXqk=>p8LWYa; zy5Ps}!tP&l_oo24`@JA$)-z<)+JXug3qYDyShWF;BN3e z>5n?kNfo%&%qr-39957#%b7KjiyJPjW*zY7P>z>LxxQ;E`WXtuTlat2Ef*-a@g|z0 z@;6e(r;6RKy&pRVwefuQ)0eQ1<=^wzV9IYmQ-xprXDMm=%==z>pB~i7EpF-jwQ)|* zFT&HzP{#u;b7cSDpKJdAcm|o@D(+`!mzMc$!?v1af^+sTruq;@i`;Rf?-VELQxR=(N3Hj8+wsNew_=j2Y8zcx zhDko2B;6@jSil+oeVp+xkrAh^tBL2ueKmfz;zW2GZoF8bCIhX0Aok@_ovGu8d5lTN zK2&@XkHQ|*to3f74?JrrD&~##7-jg?_Q^6b)^`Om$|Myln?qwm4zYp^fv8N{ieHDGTG-0? zdN~}=P2d5?%A-AsT{%tl@<*m>{n;KpM^#}lKR13?87?J8{7W2^jQ1y*f^ZD2)1#9s z6?w3)b-m-4L#peIT5E-?Sn8iCnUbp&S;VWQtE7@It^ zcMnH~F&KQX0aVz@kzp1`h89&ET{q@*WFSPvk>T@?^c@-G1Mw&1qUuc%HefKQsOXvq zQrZ%dG6y2(!kHs;&GFF&DXn4mmG@8nd`P_C($A@pY>|vGT(njc<)7HMQ+LSlRuj+B zQ+K@#H?QYar+ECZ}bd+m}A65L6KCYy>w}5IH`|$647%Uhzpz1cLiR6yg>NEfmTo->Z zHJ<9-g+eDuewdaR%Cb7XU52tcDAB6;%gKdf$gh?9=8xXh#s_E(;ONi(o^_GK!<-J4 z^YHs!dE-?TItYI7@1(kdkW(m@7cxmaS=|!XX#kUm4ED$Bf9)h9gMHT@diRP#eyuq= zhyT^YZ|oxI-#4#5`{0l`zf~?i`_zNw{HOQr)CuR$(NpU*bD>BJOEXqiOMIzTlgu(E zqjn5V_OCz7ymXZKKImgeCAmZ3-s2mqZRpH*pA?DZuujDB;TTrBg5mCbXZL@ubTfj2 zto@&~IBtMAJ|US257Hg=!me@X#=~^%C~U=l3XgCiJWa;Zx~|bUdvW?|e#@xAJ6H9x zcJ{(%9Bia(I`e12Pi0n2R?i}s^%L=#a_!v76uI6~=pcl<1HoO6w-CZUBZAi;`$XaF zd~QzsvT~Hw*(lF!k(t%(WXKs4l)5?bmfz|iQ!2}fY?S{Xiru+Nm!*DAe4Rl_-8tnh z*rIH#4*@HCjBmf2U;F3NU*4-%XQmQPuH2+65YXL3W<})*sM{B*52U~1Ji=5~>RuDY zNHg)=eGlSw-VeN_f5%6UWl9_??*qU(n364GS`mQ%j0 ztKtsK$f`r$A;;sFxj5st1p4)t_zXo%_2YJ#!|RfH_?9Qiab+StkGMu0ZPfX{)akF` z5)&5;Zr&)R!WYS9nhwnW^gHtl&Hwmqm0|HG^nXbuC0Sw>`o(GYRwhZ(FHX^FOwqib zez9jW0Q>0|HSyC*mPA@6^r+A;Ruiw^eo-5L)gYD)1r_?mdx_X@zZe#uu87?iN#!5# zYh{bl`^3y)LQd9qnCRM6sXEAQ?k5~0G^tnd@uaBPa`ExZ|H%2%OWe-^cfa^}>4=jT zp(M~Z#a+!zW?Hyr-B=9B$v5fkoh?i+cx-Z6lHGJ=ha+qL&7FI=XCt!a9bj@-!@iB8 zhs(fKkB2o^wT;2Eo0~Cy{_0o4NWC9WHUDaKlj?Y+oRkBe>|VX&@v;H0X?J`X`c+}d z%b|O!aj(f>-C>#^oAu6E8T6 z-du{`x`%^we2*!5&AeRvEpvYSig7&Nj3vC=@OI-fm3WCFN*QlR-j5I4$t%WF*LBTz z)K;wkd7!c^_`0g+#0TrUNn=dVq2wn0XfjPT_B6-ePS@X@pmldk{Me&{h@qvpu^GuG zZ@K56W?Yf}GDG@H=Q?i8nEq0jN&d8uKc{Mo%GJ%l)qUXZey*+}-kHQ3ehBcMR@#^F zMhyw?65?IV^4(O1cgKdIly4F7E+yU>Wq21432!;^{zSaJN|@61zG6sttBH55JpZH& z@BYsIulMi0-~T?;N5=jBQQBeL$0(KQCiiB@kni`K0fe`MEA2~FxEK7Nccs@*DQSa8 zmiI+1?Mq!Fqwe2#8+r;)U0QfmJhi>QT{?TUo_#P`4iEgOq>Sw0Nsa>s=gXy$2Ak#3 zPBbIxGIAU+*y`9>ulM^?d%89`V2~TDFUP6Me-SrHAIii{k`CgpO83OxG?jn<*#_Ue z6W3#8Z|U$P*8sKiR;}oLyx-sQOOE!bZCd@-9;TlIelGJsvJyE-7c0*F{$xer-hUtL zef@3grPeZ)d^U1&b2`32Mh$%^|G8Q)Sq0soqe=RH|A>d=0_A@H6muwdTqmiYKG8nj z*Pk%R@|WG&kDoR)Hoa(Qm3PY>(jkXZd7sepONCwVpfob%Qf+*e`WV{VH=6tX({Yyl zYl;^^$qx=~7q+9_$#gz5_Hb4ST75Gv;XbMaBTZoAPtw zPiwEYo12otrM)G+KYBLslSx9yQr!&20CCpCGH{r?`euGLseP66r)u=Xc7v%jp04|; zb~WDB|C7p%WL@;S2PBj%GjjT^g7|&ENH&;$E63;Lj?J;My~H|{Z79DwRq+$>32tJU z8$EB^QjRMdOnV>cO&;MQDnwdkGxG!nnUr?S52RHxcTCbkM1dg%*eEUW@8mM;lNlw} zg@){>+^dYyb;@6qQ08i7X5`h<@vCKcGI#aA_FweAhiibB``gZjLq*b;Y3Pn5LrezO?1++LEvnv5&i6WkQMUkg8&EQad|k|;%< zE|tRoVb`um`*=V9HF^bhU@P6v-?mvsnWS4Eh|xti(re?9#!vQt?vs$c@htcAFNN;V zee@TEGIp<%;g)#Bz4|HH^osjiH&wWwf93bkX8V3Wf2U3WazFpGI+E({&ik~Oav6Ga zU$&cmW3&|2<$X$ixrcvyQVAINpZ$rcocKqZ=<$C3yW~8)pFhKRW^d=6dT`(S`BM#w z8RkEr|FzXBqx>NlZId1KA!TUI_^$M_teyJ|+$0|^u98MBjW5or2Yc84$7^uvn#`L9 z*{7EK_OT~S(MNP$X<9>XkDMbMHCyUmk~!MajMdc=uhLqS`NiDNKLy3uFMkK8U0;l& z_Cfz<-_M_^ZRpH*-&EC+=8bH8H-QpeODo>bzv{)fpFfuq;fZGKn1TNkc2XaI@_rcw zy2hmM=YN=DIi+xUgH&$O^}Rv*jsK9InYs8g&#aF>DOFLQh~(s^pWM6dtApnfvBI?0 zez!avB7U_ZnwdMf87?>J`rhTLC17?B9>$y3&GFVBvl2?JZv$TGyB4Wx z!a~424vwU&xz%{6c6EG2 zIgDgQ^sS};`F16kx)#g_kCraTWJRyYF3lG!!qoGdAj=e{YZZ3H%UZ9(J<3J^+WY!C z@tO^-VRDx;K4XKlp1Hq2MF(Ciw@f;UGAu6|;%l|TCF`vpN#XH>zm4XD=0UUvJx*dOw_E1 zHff_IE8+t4Kh26b)BI1fBHpF{>%OS0vMO|mH?k;6pHF>+`90btrb+A9n=bK69Rg%^ zJHsesNm@Td`bxR_c$HEoy}IrE_xGs^HT9unSd#5-E<|J^A=9C)hbd&Q9OI*Io+mhV5y@b15LDA)T4@opsE zxn+2t9ui(mygv}Hp$zZXA>s8BuZi_{*Lt`99=l}-*Xuri;fy;3vh?JPN#h|pZ{H{r z!KPtr?i!WH_a~|f4<0Zoe{*N2WX8#t#Nu5#au(L-P&!WXIx4rsKR1CqkP08?*3Gze za*p_pyL$PM5^eh<`zw1^uM>Sg16$7We4b7$yVf<^yY$6{^||?nV<}w~U+@Dt9R|

9ij-ozpth+@D+Ellpi%%z@NS0rG>8mx`|IKQRF%^YLqbwIl^Ey)@`sq#EZvP{Q{R4@a&1atx(uUZgvaH!&8N=iNB#b zM+%#0`3i+yLabC_d3dU@xY1)Y)57|i`G-n+$t@jP-+a>Bm(=ebFOiS^myLW#{jM8% zQO=dtT{aVP^^FqGp&b+4(+w`uSx$9u#~EBk4p6^)CT`Nz#7F4=QYgbxrF%}YMIyc+8_~2Ln)%r)9&L78oSL=iG$D!(Xb@Eo{ zKFl9)UFlM>tlw0{2dUm4%>41^ueek!>o?W$CXpHSefrJ!204E$=LyVyP%_;(o%{lG zfo>LWp^7E*!$pQ|WY{_Ccfa4gjJnGvq6>^$!zMvz04=AKC|Vs)G9Q{K zga0e#DE(ElF)8R8_0#0N`O7ak@(w(Hw+-vsx{o|ucca_1Wjw5j1JQr=gW=)Fh?N== z%XnBDpK7q2*&XBeV0l{_;*-oEL+Zay{WL$TQT&&f_!y9% z)kc5+?%P_M96x`heixqhyien2^_TkPZB_hpk#&RO?f1XvQlX5u)$#R;#mTZ^@zL7D zTqQnO2EU7^>Te`HELH3Q82kc$$T{8J${1W5KPYOJd2Chjk%n@l(?RNIGx+{*DTDc; zCvVe+qKtk*{caseAC;qYB;9C^B6NrPU9U>rZjc;+?G44}(9?&r@>2J;sRk?j1lf_P z%S(Mi)*9RrYk`XSgQ$+=o_liBpu$g*{A@YuOILDbJ8ZHYiF>6tDI6AwHSrUrNxn9I z*!akck3aBDt&?H6+B1ybfa4!AQmX;IeRD~6VQFQ^PHFdLL-t*qchebDtev{cF2NPe z7D${3kRM1D;fz!fwyxG9FztVf@mYj9sUkF{ig1)E0tcdl)$hJU2BN&V0G{nBGdVJY zXuI)w!Sl=+c)=e`o$WVf0_6oiYJ3iR-#66Y1%ER|lP2SnCT~?gJ)lkg!b@&I%i3i4 z2fjDx@%6fIC_gy9eoFl={NnCDjjuO<&K;=w=z`0IV1pW8TZz@5E_k(Ky$Iv$lgr#< z_fZJzg{gy52wx*ss@P@Y>#+Dz#gb|Ku76L4h1&Rb^|Qv;Tzv7@d0e8$+ zEWXV6!!dmP?G~-b5vY@=jo*Od+rFdkH(;DD7=Jk4e}^Ia2)uuiA$!H~b$Gl>Ah}S; z#eXy7Vl6)UwDDPltITPKqX?IzittA>hq4I2H9m`Qk7=yoc>f3LV|*PkZ+N`Me41wq zQ)g>Woo%E!h8O(8zadt>b=nnh##;4ryg0aaG(U zk=0nuCFKD9~eft+VO7-nd)0~9fs(x3F`gRbFch+az`Y3C> zTzs5f!(f)zV~CZSkII%Q!{Ti+swAT|lgag$gBpt8NC{3(iKJVFU-Mb*+Y)Cc!eB_b zQcqMa&bP(g`u&(YQkCRVdXNjBiOlOmFgEaA=#>rcVRk^Fx#`6u;U8Bvz}YnvT<@)yjesevsP;2gG+s(HXfyZ);I}K^JVRF{Lqe-+JUH3 zf2lskN!~_yK#o$Ky51bcZnH-HL64Jf-UAak4gkUIbr#_BdG+kGWABtp-hSxS7!EW$XJG ziEu*8#kHjgZCLyl)hF|)dl#+HW~LHtGd`vFb0t+eEPl%P)V=qc#-|d!D@BBl7@tIV zpYf?gFEj+<`1t|#)8pssiu=dUzjOT5`%~9_QQJ}0|LX7aechYeExj{F)2jG#S+)#n zG;JkT<>l)mP4KC&Bxeo4$2A7f7sBiKcPSO9RN_TXs zbcZ-7PcOHn`;GDW?59(|V)=7|`ssdp-8KK5{d7?J<30PD|8TWSy|Rg`CO%yT*g^G^ zGTX`U&zM%n1f@A9oS4QiUz+C&+(LEW<>~h_4uq zabCDV{Urb4^U63z-miXzeuDf5i6{MpxNkSOlqYX?a7P|ET2Vq5N zo_`a{(}6VU?^Rl@LF=9kPaay_acc3eFPs00pm9%fw=C~d(^G3ukXrcH+-TctY ziqlt>5QZf`0$SWS8#!bred_;?3o`z##IBR%N1o68$O}=cNh|7C8nr&q;q# z{)A7W8uTY}LXXkrxJo-tVHQ47_=Y?T>9g7mbEx9`)OUV?T%Sjeh80Jj*L?CgHdRA$ zE9ql?{Yt}fHYL%=ZqREj5160$i)U+HG%KWBNjQ61ZjSzL&%cYZE?w&-Wk+$VMXox! z71!00zUt}t7MMQHQENS%+n#F)JsyYa*MTg3{bB0*)$bYsI?gjc(>*8txW213S-d;v z%SAesq+jpvtk!4y>zDjbmY&d1%z+!BJj|v=n=5{gR8t2xWA5EJ&uTGPA$LkWT)&kiWoop8OfDy-^d<~k!1J$|GSZ- zzg5aVE{5@K!1?LgK)ZT+emb;lej2Is6TZf2r>FHpo1P9bryJDtRHxGuPbJe6ouN%n zQd*s!(sR$GV6b=iTI)yhkPHazu(w6N~he-OK0IBt`q5>(kee9+{fsGjz_8vGZ1rov9JV zj!AszxHF|Z`Tsa3@oi@;cE+UN%b;x@bY@3m9h2mv>9KPK5p}Llk7CYUqeu~T8tBa3 zLM>?PwyBqNMwPVoo;;2O)HI+_zxS93jyPQzrMU~0WxgKSVB#_Z;b|V`2N|^dE%A{$ zhugVEK4xbInQQbi(pUGxOL2AjtO-4lexmfXJE-}NrEDcUM2&RNAztQm{>rj`G7WeU z0h0!>pO6ON5IzTMf(sO}YX<=1*Lh|fC-X6mPXfS8EV1uJ8q#HaZj<%H(shU1o^6?u z^g>Af`pb_*UkvAlTUu-n9NUhcy+eJWKX*TzjBFgF&qdt@jaxRvhliZ&)!m@KJjj7b1_k|wcYQxOh?RQfpl@%QSv1jE|t8MC~K& z<%i-!GWZ3HwU*+dezyB(=D}g%MnWUcDgMhfT3_a##sKPn(#4!_s!&FZ@Wkk&{&Vrs za-GQyoB_oDqw_e#6A;hN7eHAqSn;2We{mg4Xr7blOUaXaHUpIQQv~m~w76TY=;qG$ z0HuA+K&8cQx#Gn=SMw1(oNJ34ChN*fwwc%^&`*DT(MzPCzDU!@7MVZh%KUNLx^cFr zXU-qFWd7JyHh(NqHg-SUzHrx%pa0A0^G|7CxchQr^!dlNFWmF9 z=Z`pj{!wOBtmmjWX_3%485IwZjhyb96FO1p#f@`O;~y*hT{SM(m+^dQGm`aiBs)pv zXJIG)Q+V(TwfXqJ7i#Y^M97zjpx>hX?+XWACOQ9kQopO#jkooCLgxiH|L%rSdB1U2 z!(GF^gI~J1Q64}Re+Afn<4(Ud<{^`9;93dn_FH=z?ixJ-?_(KL`w;%Ssc{={Ikz@$ z6T!W$xNuutL-;ei88q$ooA%&H?D-+wa94d}Gd|kzpG~`h4JSOTr<}ygY1&h}8T0Hx zcjI_y_IA|3HC0ttHv~=FF4&Z7;tBU&)BS3^U$toO-h~Z8E8lPB`&ElD^fzw108{q` zetn~sZBK3MPU1Djc$j(yAg^ri-oAi*U*-}4{3`+ZR@adjYlIZ%ffQ$6Fz5#OJ3C4x z{=}0x6=5^7KAyUucdznxX8fAcyRR<2`?~n>(z_E%?~acTEWLY3>D`3+GjNfYe{={J zDdn9hd|SWnKrq1UL>3p;RkgKj8n*hI_~~B~qi0@K;jvd#ay)cq+*LRltE}02zU%S6wC+q?_^0rnp{jMc{iSJNhjmTC<@4%qz6~Y770=KT4C6`hb})Jc-p59&dH<=8nD@sm(h{5Ze_`Ig zdDZ9AFh5ETAHCLr`9|{oxLX~V&n7Sn@U|_@mC50wmpU-#Chw11?7+M;fm!LmOvc-r z8h0Lsdf3z$kB~pivr4F4Hw z^XzkPtTcX>N-ozC;s-5|IXEZ&%T+RP`KC@dYrnUZ}hb43^yTHkfbvD#gf6=`X`rI~# zT6;>N;=ii{y2ug^JJ^r=)WKaTX?e#y$5}@3;sNOm8E2Xq}5MMJg zby^Bj(OpZ3!)D>gl9pxHo%SImEcz>d-8L9ao`cWlYf~PM@X3w!*Bp&b2s8jS7uqw9 z`}29|sWXC}uyvarv?Al62XPQO4eoFAu%t&#(=*-9VB?&S2 z+IMlZ<`8k`EJ)#XA4dzBQF4>F1n&rSdiIXH>X$NRb)Sm?ud}+@tQ+E+aUEDJDUI|Haqf#!z-;z#nC zo_S~M=g{O9^fW#6jX3AoLC6Eq-ZuPNdrm>&EkJR)|5L$=F>YN5zI^y6)m4QvK{7pa zOFR>w*9)#HEUK!K1YQj8sHPdEwbTNwtGhnP%VQ;?EExDPo`(D%%Ckt1_$rRreT=q*DS`)+(2zmhUvg_#_SrH2ILsw?zebPzqRFpI@+ zU0K@3W5+lOXJ)BFZz&KzXYd{df@U5YNV!q5i?yWBoKsuXbq-_)pOI!RVu^;f zA_QKyZzPj2ByPt4|KZdgR5uw4|IaStKQ6W({^RKW_>b@)`L95O;=dkRk^lCbgXaH& zH2?AW!SeqD1M(k742u7kx0P}K=*tYtgNU>TU)d+{+lDME$ee6wkn3;8S%m8mx!w{s zu56A+$Yp@*I5vn#Xmk(5^$|F}>;Ea&lWt(RzUwTP>yP9AFI}z+zYEFu&M|G>Sr|sl z_>L*n{HUmI_ROi%dA>`+fhuSa^1piQvG>g>EN82Evv|IA!(EL}>Y=iYrV#TE2qJpUIp#_+ z+7_}1ft<^k6Hb&OY?UG?AR3+jJyxMi0Vb6f;Q2FI03L_}a8G`j^aR=JNearJy8H!> zL*fUXy2+9?>tP|`N<`#g-yvL2VQF6wPL|73QLU!r6pUWRQ=FB2I%Hjyuo-VjeLCWq zOT#^*Q&Lg)emJ8qXVfKuJZUSaJNYvdX!B3fJN#&4bXWeK!Weic3r=J9GK05`M~zR@ z8Q~}IV~g*>aow-9xdH5gd&f=ILvE2n2vv6CKvZRO{F#p@s`L_j^0H&yLQY_TST5Z* zOc&@xoUMCe5;s>m9yMeNJg!t=wjoP}$+H)KiW?3CQ|RdhPF6Md+xM~|u|t`HnyMFe zA3{mj`8U9dvTpFMl>U(%KMCWNfX+IsxZypeGfXgN4dxt%?zfG_*gI~Dp7Jt1<-{=L z`*XsG3}}f@)l)!^@&BdI^V+8B2j3zeOwKo{bh5*SeI1om`osjcNMXd&0L7gCnO3>t ziKbYgk~{7MxJU-2TymE2pr$$f59NbN9Zo8pZ(`|u6UvKZF0pj(E0c3;nM_7RJTp0W zvO8*<$(;KXe6V{O8fv0#O*25n!;?=ZBa(c2PO9Rn@af{6J*bB2`QVn`JuQ_##hyp! znn{5}Ed*0R)H}2DEsXAGWnf;2R-(&i3+5X1p} zFnYPO)_p?~uGa84?#ZBoo2Br}G+b493g3?^ROj%hW$sF005S*saSpn}bna_awOvtZ zA7w8-9E_HYh66V|iJgQ!*l9RICJQ{CyK!eTwo^uP?+62g*-p6;xMpvnra8X$6Ef_h zyN%}QahTZ@y9|fP>Y2MPALVEM(W~daeMI<}vA>Rc{NE_Zb;%WQKl7I6j4KemwgR;! z>v7Jm>yE+y61~1jAM4PMou?l|_B&3~u}nXPUo+*$QbjZ~Y*9Z%oq;RUKOJYv z|JF~?5Aj^(MVzf4d$04c|LF6v@* zGwd-J6zkhfs|`EM^*khRhb4+0r(F9X-j>|~@*2ed77u&rb=|(5c@XbNf6us|mD~rY z>AoDzJC@^KX(#7X8p$rTYd-b-^67+~Gu+`d2Cw()kwh=ducr)vW zg-75v6zaaWC4QTXDs_J29^73jcJil`yMHcY%z3ElQ*n-cs%ja3m|ei#Dr194#6LOA2#G%RjH z-|yOn5O$}18Q!_+8XxpAse!Kh5b64{d@>(n9+{7?p^R;gkH0{}-_{S#iRb9?sM%q% zrHcrFh zM*&b=xE@dATBvcBsBLD~V*MY#MBK3WK^%ln?2`Zdl&AbC!a>ve_O7S#p5L?{5V?ly z&)~bQ>-SEK9{sOcY**(u#9FH2o|^d=<3g}CSXjb?%J!!hzKdfAZdvY0Z@HtDkubEk z?G3Ua{-F;^{a~AEjBw(+=gI%O$6&h=cLL&PKg$2t#lOb;T|Y)4gQh&5=i9!W)zbc4 z6$(0kSiFHzCJV*Ym%#ffy%DJSt}npbG;9f{ef;a3= z61-PSz`G8-a!mB50Mq*xps5F0_8Yot{3b0x>qh)i$IYxne9TC);rLkhC0H)=!P%b&p~(3{fT*pT_sK4)h|#%&wontprJRD7;`o^9f?6CP6W zgnMUZTyCk2Gi!GXKGMxB%2Jwp`$kTvn2o=S5N6}M^HpE^Zf*WyygKmuE?&FvdiwU- zd^KM8f4?^W=-S%+e_`;s_ItJYL8y@Zhy1J5fau9HC0}Fpx|f4CiSokmq&X>tn7s{m z?F)RkQ-N8=^NyG|rhw#@=E7D?PKCvXB5$jzss>xFb9EM)`nKAtTX^5QIGwht?Op5( zLGQd|-O?M6!y(P{CI{nq046uHlFdQ zhAB033SBHd=JI(jn>TUZfd%f07V4_nn?ro@vhX0+A-3F$@Y!29pB1OmR<)hpr`+e@ z5SBaH#xW&(hdJxK+JXq4L=Twot4-Kc>61y7ei1c3@BQWV47ODDdpbmHd1+1V#v$P;s)syLlC>%?azCw8~9-tM0G52+IuZa_Py z&OJB#+|@ic_wVra+zRJ@;uLeyW}DCOYZKl^hS5y4r;*C@k&YM_I}i6^RU6}-rntD_ za35ARG2Us#?_V8`WJjZgolmLcULaI6or!A<=}h1c@S9WDG&B2}jz`IESuWQ^n^m79 z%{7(n9zHW24VjcL)uMk&RV?BysWKdwU50N0=@xEu7N^rzwH+(hlpc<*!yzEk&5UC> zG1Yo0i(o5Fml#?h<2bss6#mG_EDU#;i_>Yd+UbdtwVfEZ?X(&1rfJ$^>Y?xhbO;RmV+yB~Mmm|Y9%liZ zDa!-IEnJge%EIseRJDzW$24PQIV^tvIY>#z5W08V_+QBy@hlvA{Jj9Y@z}c`!WPMH zM5{~DX^j5CMt5ORvjwLkOG>MxgSEgj3p}tute|NZHduDIa0$%=57Tq~;Uu#MeJ1qW zcKm0bc31vYRLcJANNPaz+APs)9qV3}(rd`9kZ*e8OIpYvFD~43Y{T_`!}dHf08e=M zGt1`RTbsuQ!_oMIEgbzND13$NUD&@VeOnTHH`pcOx6bRm8H>@^CCCT11i6TBG#7G* zq2F{yNF5&+Z$)3(I2OAR@0yAg$YG#)Re6+m`j11ji#H17y!;Y9R-S?^kAO4Cr9uT` zL!PRousEh-D`29Q7 zR>cZmTn@p_wO112n;e^a3Jb~)AXln*z!Dj}QG3DM*o20MF?g?rTMEm{LB^xwTn>;9)~ejynFamvA-qHV@teDA^B=gU zHoqFLKjU@U#@hT>@%kfPNBy`qe*s?Ckq)E<-@HhjcE2OU(0SJ}S}f2wwEbYtAt!8cdlhlzP}Ef?nWphxh;v?OZW;5pA>bpehTA4GOH&7YX zazA@Bsz&Z-Pv!mWH{yTEu4EanCb|TqXUegqCAu zXUxc%F4{0gwryo(s*5(9k;gYPGTucS!N}GQM)oAk)w0zw^2n`>Y-NNJLd$jlBM&ZP zq=ONzMf6HXGP30=Mwrl%y3$ee57^YWxqwLbr&Cb%e0$?uzWu=z&S<{fIhAj}H3c$; zZ?8X$Z%<5tH1O??D!z@}h>l%<8i^Hr2X5!%Uc2AaiM$uTbz{)D(Qn)wG;Q{qw%}nL ze(Qrl^nituHm`a+qI@A@G>6-2at>!P4>k>9vDXj<$yEeTqe_^nHW#-)DavY=_1-?Thv zUGBH82pU)TjVptum44HzpmmksdTY>ltKYafXj<(z-G&4yzjaN}xW;c>3+^iHuc-JJIiK++ru$WzjH(dWp>6Ux;PV}a}Czlttb2H|l zu0$ho9L72U<8FEnsBr14G8R|wI|gIW%LLJk(|DKxX0EEg{1JEArO%{ycM9i~gHTJn zj3A|6JgCCVD#zgp|GuMv~Ix#;PFT@jBlI3;DSD|GLk<&p27F`ftA60Yo5V3^?{Y~{E<2a z59$LeL;8bN4Du`EZfRvy-?HbG2nrvZ(#pWTc{hXKN*cLT2{N{Cj2XPX53CIDo!b!X zzR;}!8R6G&W#pYg`4XVWfsO|md9_r#cVMwoOAY37hcXm*nrU^pn(hAL%2+cU9xqK0tEf$)6y$=WL*@YL8W?k3z;o#^* zGzi(wc40+PP$3B4PDrIt_m7g`Hi;*O}F|@tAp0n ze(P;P<86N98cGW$ zUd{L=N&KQdJgs4z-%$`YPVYn2TE@>uTnKq!AN(BS=OHeflo8eG2g4XY8*!oKx<2F@ z&iI*#3p2w${2IadT*QT(A7b3WuVcI!apC8Qeee%pd^X}j(F6M6k7S%*x)YZEPam$0 zVtgjzLe%f}VR1dwrh$Cn(2rOnfz*pHwHJh}LqB9q2NA6wu~hvlLRvp$s{|3PAF%}kkJk6t z+CfO`hh#<&(fabO*}x;0e2s!58N9>-d)W z4!$t|5yUO?9eiQ_gNR$^JNUwUK9kcj-@zB=Z${iQ-@zB=^9hia`3}A?zY}rGd9~5I%y*E5`E3X$ z%%?BR_vrcFRj@%wi>*KU5v?DwG=WF!dn|bn()#jrBYh-{FAt0fAVY-1lE7uR%+CfC?%P(^T!Vljgi-M5W56QS7qV*%PlWK>52U0sd z6EYT?XN(2&e}8e7+PM^%mibQosm@R071T}vam#$Caa89cZkg}ktIkKzJsqiA92fk2VZqQ z;+FXizUq9$E%P0G)%nktnD2nA&PUKN-$7QLk6^<59{8$u==tFuSp1j-{iv6|N9%i4 zC`}O3`eBZKMC(U&^gUYNtEV5*`eB}aMC(Um>3g)kH=ce->xYNYk7)g90)3Cx_a@R0 zY5kBa3L;uRI*z_a>w9D;)eip-q;}S3G5-T&!2D-Enx%GjJ@8GM>N8B>sX?fN8h+F16_^R^}x6F6&Rp%paneX7M&PUub-@#X%kGN&N zgReRtam#!MUv)m>miZ38>U_j4^BsKE`G}h_-vL*hkDy_`gRD9q!G!s1;j7xA=X)Kn zK}hR|>*+_de$+|dqxHRw^g~)d+)O{B^`kBHJzC#;kbX$(hmX*YX#Hp_eUBE;bfX{A z`r$VE5v?EXr0>!C9$6HGw0^jYenjg>WGB@Q{|=;fmS-{lL!-d_=RTaJcGdvXGT*5` z)%i)hg4$V)xMjZ6II8mzx6F6&Rp%paneVi`>U_j4^BsKE`G{NQJNT;e5x2~D@Kxs{ zZkg}ktIkKzJsqiA92fk2VZqQ;+FXizUq9$4f7pv)%ge-<~zu$^ASv# z-v(dR4n04*3O4X)eQyE%kk$_u(T`~TXfb_{77u2nAJY2aQu-0CA1$Nr(fZzU`XQ|! zuAm>$`q4`I9 zOYK|=Ov`+y{#55D@d|3EfVgG8(>SX05x2~D@Kxs{Zkg}2yy|?!E%P0G)%l29<~#VR z^AWeqckor`BW{`R;H%C@+%n(6SDlZzWxj*2Iv;V%d52U0t8 zvzY&}VPO8SbF$RVWMEq6JN2hJKZ#dRJChK%%y$|`bw1*j`3}D7e8esDot9UfkGN&N zgReRtam#!MUv)m>miZ38>U_j4^BsKE`G{NQJNT;e5x2~D@Kxs{Zkg}ktIkK2U&GKf(i3`;H%o9hi8n!;)m<#hrRS8T0g2nX#$Vd_j2?@T0g9# zAJO_zJ$;YX_ww{ZT0b01Kce-c@$@}f-#d(cNb83a=ts1EG?BhX>w9ET5YqbLar7fv zKO#G+cKCN7wKFA)`Ipy#`J?dk-tJ@8GM>N8F704!AJC13|-l2U&GKf(i52!dJCJ&yV=Qz@zoO_4Gqp zKkTF*(fZLw`W~(CZKfa6`r#J(5v?CRNZ+INy+`PWw0^jienjg>kJI;PeQz86kk$`( z(vN8Uh%5>`THo76Kcw|TvXg3ue+N=KW3!n5$-OmIT?f7|OYN)yre(fUf2#A7cm=hy z8ga{fr*Ty0BW{`R;H%C@+%n&3dDZ!dTjo3Xs`C-I%y;lr=Ob>J@8GM>N8B>s!B?G+ zxMjYBuR0%b%X|l4bw1*j`3}D7e8esD9emaKh#TfR;KKZ?5H!qpkX7d+m@vN$zN#I1 z$h3h)rVagQ0ez3w_ZHC)Y5j09{fO3&meBWTeQzoKkk${E(T`~HYYX%}T0D=Ren{(w zE9pnHezc0dN9%jH(hq6J z@8GM>N8B>s!B?G+xMjYBuR0%b%X|l4bw1*j`3}D7e8esD9emaKh#TfR;KKZ=2pZ-) z$g1-ZOqf3fzN#I1$lHNM-VXh68vTeCc{}tyTIB7}4{4FNLqDQL-VS|_7I{1LLt5nR z(2r=5w?p5fMcxkmkQRA6^dnm2?a=pVk+(xXq($Bi{fHKMJM@{igTDi*oky~m?>z_R zA3i5b?Mw!yWxi8?s`Hb01+_B?am#$Caa89cZkg}ktIkK2^z z7v}Fl&@kUYR-KPv!u%fis&?ohZwD56JM_I?`XMdyc2FAR?Z6^$hrUOPydC->E%J8g zN3_V>q3_WmZ-;(Ji@Y8B5iRm|=zFxt+o2!QB5#L&M2ox~`W`LvcIbz+$lIaMydC@< zNbRi6Vt()}n19r}v((ORT(M=oQ-7-SlXwNS6C-Y!?=+6;e8esD9emaKh+F16Ew4Hs zam#!MUv)m>miZ38>U_j4^BsKE`G{NQJNT;e5x2~D@Kxs{Zkg}ktIkK zzJsqiA8|A0JK(DG5j4zqkX7d+m@t1Wd{sO2khcSiydC<{diowM@^E%J8gN3_V>q3_WmZ-;(Ji@Y8B5iRm|=zFxt+o2!QB5#L&M2ox~`W`Lv zcIY#22Y&}rJ1er7|G8(t{MVeGrFPZ;(=y+wKh^n3yn@SX05x2~D@Kxs{ zZkg}2yy|?!E%P0G)%l29<~#VR^AWeqckor`BW{`R;H%C@+%n(6SDlZzWxj*2Iv;V% zdE%J8gN3_V>q3_WmZ-;(Ji@Y8B5iRm|=zFxt+o2!Q zB5#L&M2ox~`pnzG-+|Q5f-L5LX*Zbv`dL|O=Tcx=<~#MLIzNe5P&)<0E%TkmQJs&t zWxj*2Iv;V%e5d7A=Ob>J@8GM>N8B>s!B?G+xMjYBuR0%b%X|l4bw1*j`3}D7e8esD z9emaKh+F16_^R^}x6F6&Rp%panD2nA&PUKN-$7QLk6^<5DezV8&_mu1Eb?~fd(-HL zw8-0`AJHOjhrUOPydC->E%J8gN3_V>q3_WmZ-;(Ji@Y8B5iRm|=zFxt+o2!QB5#L& zM2ox~`W`LvcIbz+$lIaMydC@J@8GM>N8B>s z!B?G+xMjYBuR0%b%X|l4bw1*j`3}D7{J)l%?|`e$N6;|eK~|lQV8Z+!_^Nj3A#Vp3 zc{}u@Uiuy_@^(-fzSHum^AWeqckor`BW{`R;H%C@+%n(6SDlZz zWxj*2Iv;V%dgp&!yBZ-;(Fi@Y8B9xd{A=!dk(+o2!PB5#L2^LFreAhk0gi}~ODJ(&O2Q;ph@ zCv2EU5ZbSFnJ>X9zJ9Z@_lS%g(sPLQ=TowJ(HfMmzg~1(60gvURwLeDFS-@+{(8|W z#QW<-D-rLn7p*|Nzh1N)@&0qQF?uh@&O zLa<^lYC|yTMfA;@0Up*2uvjzD4|xWx8R$nW4b}|wJ(e762Kphd5^Dzf5o-i%2KpXr z4{HYcA!{0I2Ko_O1#1TS9$OG=2Kpge8*2vo5t)HC1AUJy!kU48NXB8!KtCcoWzB%U z1NEY9SzV;^%X|l4*9?do<~!iJW0ddQG2Vd6=h+F16__}65+%n(6*EIv;miZ38t{D)w z%y;m0&49RNzJsr82E;A%9eiCgAa0rO;Om;zV<3g(TGoUnBGr(faKtH0znt{GYi!}rNkQQqO`VlSG4D>x(tQqKsv{*CH zk7%)GpzqOQ%|Jh-#hQVBM2j^8eUBDv2Krnx;O{_dhSgcj|HKnu{)jhash!=pV#|D| z{&dZd#4D(s7;(#dr*U-6fVgG8gRg4_#4Yokme(}{;+FXizOES%x6F6&brX!rdY!J@8GM>N8B>s!B?G+xMjYBuR0%b z%X|l4bw1*j`3}D7e8esD9emaKh#TfR;HvWxG|YF9Rp%p^Fnko@ufBMlh z`W`KE{pp9a$n~cm(IVHMzDJ8(fBGRUa{cK?w8-_R@6jUHpMFS-Tz~ozEpq+od$h>) zrytTH*Pnhwi(G&D9xZbH=|k=C??7s2ZWi;~e*xwna(tHBnG8(Je5d|Y=O^(BYG)GS zmibQOsLn^+GT*^hosYO>zSHum^AWeqckor`BW{`R;H%C@+%n(6SDlZzWxj*2Iv;V% zd+)rytTH*Pnhwi(G&D9xZbH>4&t) z^`{@vBG;e3M~hs4`XMcH{pm-v$n~f1(IVHMen^X4fBH~6{5z1^IV_9$;R9g)(XY-@ zJ8OVxneWt}>ii^LLG7$Y+%n&39M$=VTjo3Xs`C-I%y(K|bw1*j`3}D7e8esD9emaK zh+F16_^R^}x6F6&Rp%paneX7M&PUub-@#X%kGN&NgReRtam#!MUv)m>hWQS-F#jq9 z4f7pj)%ge}%x{CQYKIV z7PrX$TMXo=6j~2Q9^g~+Y`qPhSk?T+2qeZSieW)G&9Z2m|WikH? zTfqEdCuXUgOMz*b@6?~_{3KpM?GzBV%y$|`bw1*j`3}D7e8esDot9UfkGN&NgReRt zam#!MUv)m>miZ38>U_j4^BsKE`G{NQJNT;e5x2~D@Kxs{Zkg}ktIkKV7PrX$TMXo=6j~2Q9^g~+Y`qPhSk?T(%YKMOZ zQajrY&$x$sU_j4^BsKE`G{NQJNT;e5x2~D@Kxs{Zkg}ktIkKzJsqiA92fk2VZqQ z;+FXizUutHl$h^;3-k9NXqfLHtIkI-VSW#MRXg;M>ko@ufBIf8{g4*9{wNJ{{b7;o zPv4_Ou0Q>d7PrX$VMXo>nh!(m2^gUYS`qK|-k?T)CqD8JheUBEo z{`5myd-)S7x`G{NQ zJNT;e5x2~DT3&TN;+FXizUq9$E%P0G)%l29<~#VR^AWeqckor`BW{`R;H%C@+%n(6 zSDlZzWxj*2Iv;V%dd7PrX$V zMXo>nh!(m2^gUYS`qPKn;opJO&gv}YfBhaXfBGx3)Xo}UTIM_Tr#e50S5P~v5x2~D z8b@_L;+FXizUq9$E%Tk0SDlZzWxj*2Iv;V%dJ@8GM>N8B>s!B?G+xM98nt~wtbv}X#^V{I7+M$QM9a!Y; z&<_{Tk7$v%L*JuC-VXhc7I{1LBUs!B?G+xMjYBuR0%b%X|l4bw1*j`3}D7 ze8esD9emaKh+F16_^R^}x6F6&Rp%paneX7M&PUuZ-vL*hkDy_`gRD9q!G!r!;H%o9 zhrAtFs!B?G+xMjZ6@~ZO@x6F6&Rp%paneX7M&PUub-@#X% zkGN&NgReRtam#!MUv)m>miZ38>U_j4^BsKE`G{NQJNT;epDi)p0au-mpkcm)tU4dT zg!w)2RqfD2-VQACcIZdF^gUYS?VvQs+kr*i4*iH0c{}tyTIB7}4{4FNLqDQL-VS|_ z7I{1LLt5nR(2r=5w?p5fMcxkmkQRA6^dnm2?a=pVk+(yic{})(TE%}`)RH>iDD+rz#aZ7%ueN^frZprW9tJFu_lHX~3mHLQV z@;mq{^%1w^ckor}BW}s>;H%U}+>+nHSE-M;Gu`q9ayC9&=1$sk7$v)L*JuC>JI&o7O6Y* zBU+^H(D!JOxjs`e4L&0K-`kwX&)8*h+FbI_$v4jx8!#kUj;wnmi!LB3Vy^b`5k-}{D@of zJNPR25x3-b@Kx|5ZprW9tKdi6lHb8s!H>8lzk{!WA8|{52VVt0;)eVVxC(v*4f!2p z75oS$ zd$dU4p&!yBfroxXiv%9}9xW1h=!djO;GrMUB7uj#M~eg=`b^-#-$BTp-tu3#<8uB~Hs`(L2$ln8BWe+{%@W3L6hkn>gKcYnr4@!d^9$4h?&<|;m!$Uu! z^`mQ-!MelXwN$6C-ZP@3fCNVd@6~WiVcDS>SrZ=tNJnQhDu3<=KhVCBze#`cuK3+}Gx+T} z_r#CX=J)=hHa{6J{+)0B-ig2G|FSlJ|JK@k^JBI7cRf*?pSis@f6C6<{M6sq=HK{a zZT`5YYV*hJuFX$)rZ#`*v$grL&(-F~^w#F<_SWWWYI6DBTrU6Yh+O{hmRx@K$Xx!( z(YgH2y#Al>Wxbv_$iDyDvAO)jgLC;K4$bAqAD+vNUCiUyse@ zdtR5z|KSa}d^{zW-|=RA_9XlHUrx{Ee?B9ZfAHJJ%inieF28AZF2C`NT>eKm z|Cas#_SeAv8rWY0`)go-4eYOh{WY+^2KLv${u2Y^Ba5R+XkbG+mG~{_7oTH8P#z8@0pL(x@Ygi=nGfn@}=iTBi*Cko3VIQ zUh+M59J1lBhiKZZ-kPXir z^3Zn8B^goN(U3~1Ds0X|yq<^)iI^nk0C8+cMEUHtLpJO=WW%-^E!v3U_J&lVN?~;t z*%w~Og8VEY7ZbAI3(sX=_^d3* zlL`3-LMG`-`*PuvvLIuWup8q;Uy;k-gx8<&YP>R+ zUx8OQUjJ0%=|8%#Lm$sSa`jNg^TN>?9p`{{P;#i_`K&C&A1ngmkjL{$S&-)wa>(O( zT^8hlgdFmC9#71u${$?=$RUsCo3kJ-vqNiGkaelY$7P4$pcbuIC0Z~WWd;>NnJZaJ(T6MNm9_|1{N z`AfbjIn{gj)^6BQ)4rpZ-#G4RDJ*|=+0ayvB|c>nEBEi?crQ z$4}uC7xNQ|RKZu6-yu>c57F;EJpU~sI*`8IaM$LbwLYBrnOq6-sw~K_5pru<{do7b zjZQ-rO6m>2a5F~E%wJ6Nn|iwIODfE7?Wug`psBQWD4btjh&*cI5EP>Oz5N07Zs?Mq zX-h3ZV*Wx~vT7>KF2@}U+zp?^#huKrKWVG5TJA<$hI895B_HimgN3bGSSJwcKZupI zhJ5d!cZ1WCQu}0csrEawzy2igF38o@Hx z#}%)#BMa?2)(|UmFQDR8F3AGxx*YSx1(@HIcHs@e#qRf) zrs)R)ednDrZ1Jo^T7$RaJXW*K#v1$+c!!#8_@Z3?6?jd?>wLVvh}Tcrq2I2BX2a_a zyy}X%{9L?l#_JDwowPWYzaFng@M`ez6(qdgf|rNa!+0HeT`qqyULAN1yFQnngV$I7 zKla`RKC0q+AKy)~5J*B6AqWDN2xt(nAfO;G24oeKXhI3TfEE?;8c;z&Q9)UkXp&_q zh*(gnq)v z%(>^BIdkUa&IO(WwgC=jTzrD7S@XmeEt8T{TBW)>weDp6cS@U1ZPVIy>U3)RP94Pc z(`0hT|EZAe|1tY3mH@}onH*1-Y<8n%$@%Vb*ZOCY=(oc+bS-_G<*L}n4KL48ymB!n zqHEJKKS-j^q~~BdbF}Mi#C3;1Z3C{4)vo_|JJUOgSL3o?%n^B6If^b# zaZ>M{GFuclSyZ%LP&o4(N)@q^Mtq=LnY>C(c5-qtaf9MzYCflGJRUm0yx)$ic-+yq zBNNWx1|oqoXiRn4$yb-^zlBtt7OB2_n~;*mv6S|!;=0o+)xXH=7O5_jmsOdmI+9Yk zT}>7;(+ZWz*&^AYe4*;3m{g)m^|wsmPazFM^HQoEa8(!(dM;hQaYTGFjdKKYgJXlE3aEog=vG6EJf6hCo|-$75Q+Lq zXAjCsykju>NsJbios})!R7`DJaDS59w}VD~y-|d}Dv%Y-@uyMYu*a)J;cbu-as^-U z{aDK;b`?ylc3J~P!1gqf?{~}Q)`t6?o9LK1sNA*x;UqT+9Szc<{QfkD8-KcFB)N-M z7P8((3Eu7oAA%UPj?i%5P|E0-bq3u^O-`O8&#Bb3r`&mt+O!4labp>QOrds=MOvn4 zcwW%7UPj$55-1~PzwYZz7i)a!8f<2%iPmRl&}RF9W7-2W{cbIhx$YNDh?x0#H?;( zR);BTbslG3W0y7An01m6wygD4&KkO{?kc-1FmjtO@|{27f1#;IT)-8c2$q?E8t8ljKm{863b6B>l^%&BWz{kjJFNkcHiQ2k~ z+8*OSTh7HF)aD9!)`P_oxaU5iu6sqMTSZ+m(=(zjEtAHe%;Z5Pl-3%h2yf7zFUXQJ z#kDTDR_Iv=I;UWBptzpM*Vp2DvXa~*$(?sbUbeXX{(|7Mo4NE>N;P~{-aw=>!!mW3 zntFs%bCAk1kg0!FQ}s6XQL_?#y@QQ{qjX!stv|p+DGsWeswbDMN;#2vu z-bi{03#`70dkpUmYFY3qLHv%PG1@tW|Do&k_9t&nX2;M2f`UKk%zriwg=2$1X+u^J z*`GXyY^LU#&lk+ibq20QYOYuFb!x7sDTzH{Pkr(Rn9OmYD7}+%wP~0HM>!S=JNgJy;PY|4{RFOLyBM6LbDNPV`QuYvm zA_$CkQFQ~$;Z$V<2v`o`wd@fzrzwvT%}VeYUeP*1(?yv^G$f7ix(Wo%>B>l=A%TR~ zHCd(UL^LFm@VYXY#-FuLwsP6{dx*=PwbHy~<3EKj2Ou_@O{`6mjsM5%&5b{V-~VSD zf4$rLzbBngdtZZWruM#+FPPiA7uO=S_gnZnwf7{YeQ%iSIhOV^N|c_YBvR@KOJg}( zO|9;Q)bU6)wv=QwHAty>mXg2xJ@cKU?5EWGEhXmdyPeG8Z%qD{G!>eei5-1?ZJ4ZPJ5|fB3 zu45r2D_0T02ti`X_a6g5#)te@sLW8K?L`QS8jRLK43nL zwG3Bj5{ZVS9bQpqm8KdU2MavBuH)Cr`wbEe$z0GF>v~tE*-tbi_VBu1RB3h+4M{${ zu7FCj2{aJ?GHc{CO(j@M1S152(SR>g36>GTctK#)&eQ5)nEQf{@caL4U+`-PQ|sLyWnIJl5l(|M#Gh#6b;O_Tkj>N| zx%h&)Kl=LW$oDd5)S| zfK(BGnhT$x63iolmAG+B`4^}Jvx$J?PjeL=RD$V5!11TKit4K*{|XUs{As?0_f>*P zAjs>ZoM(+cH>w0z5y2QiV00Ht1%XS+CIUqe7^O5*B^X6KP#hj!OSVdrNi-yi@QQk= zGy{o-<4@++SXZJ-(}!p{{tUaLBUiFaTuKJfaQw+M#+xc(ny~ou8FASfe?G#O!{X2T za2eA;+Te34ku~zP^sk|*GY|D{@7In$q4s_zvYFa@8ecHCcPFkzia#rI={mJ{m(t}N zGI&dS-w6UvZBMDz_WrDz>ZVj{dtacYCL%Rbd!MQjIEa9Z+|u4JRSBw93%9tG9x6el zYTg$96IFtsYTK47J{u=*@DK>{BDD81m0&*+L}>4SQ3>`CL4@``UnST{JVb8qlT?}# zqKVwzhp050h$eD-Z?DpX4_$tDNBT^iUj&KbTl~ySe7a^{STO^Aym#&)TE3fk3cj?)m(=;)@L4e)ACOOB z3N5^`X#97uXewxBp<*y4S1CKOgePWN++vz_aW*wEz7ADqM9|sopb%Sva@+bx;1Rcj z-nj=4{8U>DD_JY7#3{;EZKSOz`aCK+tzPHKG=nZZJb1*Zvp6qq>3q67}Hs#g>$U3k_Smh z4NzCZ1*Q>;V^K0@1M}MCosasa?mFF9dQFZ(t4~q+E6W0Zx!`Z;( z0gL@Bv=JjQ2fpJnR5$hQw!ZD>j;-6=icpF0ZObCDHxmovw#UgF@2%L}0m4$_JxyjxFdia=*pxF!k64L!Uxx!iLQFKEJ_;3gDZ?x{k46cF$n%tjp2JVG4u z*(H>#3cOLS703nh+=FAW4T;E$i4k2bn*}xQi>T)d>a2q~d2ym}3rj_UJVB687UaZB zd_-O*2y#4eL8Xt>c}a-GOK(tVwHkMr zmJlm(pFISO7_{{Fi=ib7ju7Bo*A6?iYW!*R6VX(%=+c)E1;xd|tq79xoWXXIt12af zZi?6BIDpRYGI#Qtv3gy8z zD}?7Yva7F6>mRY!{_+YyW0 zC1gfo@z_OzMeY)aLhlj|B8lTkEna&ASDMP_{v!IU7@_Ku_TGi*^9>|x`XmZnpD!S( zN%VO!u_)s2NGzTuSrqX%D0F=$6N@xH(DeDk@Fv!0{r7`j^^d6gL7ixQVf#V5;vG;vFrzxS!wtMFE6t`$62H92bKBA6X^M7iG0!agR1pGoqE2ZoR4)$ z`$5maPimVzUrBIJ0g8bGKx+svvd3)Pt7xy@qr2fed4FbqnAzrj_@(Uv7u%X$70sH9 z5JpaUSpo{>LYnb<)HnB0%y@m+3>|;|Y!oG@GXnG-9onN~dEU#Cw-@sIvlbNwW`fGU zlswF z1%TMKO+Wo{kxQMTm0C=u2@fL+%;E%p${5PrdaPi{vjPMSlr&k_rE#8pQ1$Jd$Y*Qe0MVO{S>DZ zPm99$9Fdv%?qcHm22pj|^eB7}6S+y=-AsIU7nxILM&a8jGBe*9CcZx#OyVe>9fj{5 zOcG$edztutmQ(y`bE5G5kjPDZ_c8H(tH_)(FACqIMP}x^zlrbPa!T?1D10Z2%*^*d z6W`xlKsW7AD~Q7PTTDZ(y?BU;@4q9Vq7Q=Yh@K>IZjSUM@0L)&059Wj`{oYv< zNPJ}rz90uxhs4*afvQUpBBn@D?-=rtT5%`(A9US#yC3=<^xo4c3wrN@EjU^Vc)KLQ zeW*0SJ#Bl_^xlmd3;e&*>XrbHZz9ISw36mVP@bvz#Jsd0re@R<@i1D|Q3PWbE`YKPD6AxiBXYKhMQp#*#m^`{-#lH{IJ z9+#R?Oy7JZajWRBKZQPva%&1&%j-_Vbxfuds@D_vx)yl;eSk3COTkJuFdmo)+yE%R zZNN;RZjnT#V0lG6ZzdVBS7JUl&O|sr5?i*ig2Z;|cp)|{*zqxuBsM-Ga#lHuZ61rQ zfW@|m#kP#awvxrRmc_Q7#kL6xoQ0k$-`uL^cVB~JS0MVOD1*e6TN4^pBbrIq($l7vQhJ>%g19 z`@qM*7r-$f1@{^UMAcB^Cfc`;MChB83}=k?v6~cq{W#e^uyAT>A7Af0@%GW9UhN~< zu6-;$SI9mOtV{>)0_Fe@0tLWA;8CD~;Xq5KxHR3nwev5Y{xSs}|16~3)1KWVtfqw#@0$%{ffH>S=3UDgW8#n`K zpbqPk-M)R8`;TsYpy=T_HvLEI-6!5Y-1TZ7w*AMf-wN3m{WHP62zU%w0sI+Q3p@{O z0O}*02(Jma8D_~slXXPZ{U0&3m5@J(96lXWZymv{t*4g98z@py)7Vr+xKtbBK4}-k){$n+X?ej4hmb+^X$$4bToIHJAsj5rHf3fS+b(YX)@jk?Qz;nP$z-C|@@H+5M;8WlW;202xdr1LK13T$?7Blb`Yp-R!Qg!#pYZ>ilq&zg}Lf@$b0*?D0V_4X(fV+A7<4U%yZyA`a1TyTpyqixr@N?mw$X;eEwtgV zP$x}Gl$payK7|tZJ8xHspebl635@d-MY(RvyoJ_&)4B_N-}`QYdmiu*umE@jSOz=^ ztOm9MWx!tGAn;${YoG>bhFh+W@*08GUjLSORgCB6liIKG$o34C3AK+B^Bp(t$D$y1 z61H)K&f~xFp>z1JGjt~ZjSHR5f18Ec@!#g5R{S?1)QtbSU}Eb0$6PW0;iEFK5l8ugD~&7U92JjJX07BjQ^}!w^X6Pcl!0zS(d*}uBwicM8EF(GGbs@Jr0WsWJT44pzR?B;2kCd}X{ zsmKE}$baA<%s|t$%Ob&wJw{D;R!dYhO?IFwCdH(filvmOm7HcNIdl(GlK~B|6dSru zFLS7=%+N@^!0y%p#Y8m~*xOoQic(2-aNAI}1CfzJkvNqwL5PTb0~tc|-v~pv>B9u~ zeBjT(HsC|xd!QGj<^~$7-g@U}dx&uUBR@_7fm45oz?l9lIFnEMyZC?@{d67@v^i8mp`(wzmwEP75>X(pq(=)$=2R)AH>x8Hd?v`Sw}t z!{oGldsWS=rfhOrzPC*!8=RK!Jxj5=)AGG@ve zD#}U>o6*;7bwVehk2e3odAPt8z^%Z;z$#!ruoZ|&UkxR)x6edcugX!j(7o*+B6O^F z5?*unqnf65vO~QdagvZsGrMCwOp|Yw`L$hNOGM}_O!Ek_oi5q-BzK#aUy?dM0}I$_ zZ@$Cxe8=ad&hJ1!DVCOI`#Cv4cCuf7Y;dw(8KG*6HWj5HWcz^g^1f!VqKZ{ij3%j4 zlOa_+M2V`C^=`M?Ql3_9nWfm!6?&QFrZPj)AEW2@?ywfvK`ZceOM!wil2@&0s|tpr z&D4j5U}&Jx>Jx)td{G7Ci!K;nG{N}n1>=h%7@w_ReD;FzMHWnvC%HiDZe)+lO_+A& zEo(3A_KicBFaVk##_`lZCNKe549o&P0pegwU4Ws$)xb>PSzsa1(AN9Q=ePGC`gk@+ zsiD@mWT3%`l*LVvMr<7Kl{tN?0UOsr%N%K{@v5;Aw=WvKXgZQ1fyiIvaYxo3d7Tg1 z)z|Cja<=auX_txaf4cO;9T%T3yGDAqp*5br_`im(G2ZM@&0S-B)ObEVdORO*jv@?Q zW4wJlA0H*2kGGBI;B)_-!QV`^5oK^nG5?pl@e1eLJJ-+ZkQoPFsCD?e*=9qHm|IzMXdZ-q<%reP_23 z`ab=$1ovRz8elf?2=F}c39t(|*;>}ikFIZh{HBn;OWCfI*^$LMe!K8*D2nU3`T3x_(sVuX4Wb&Qzh(^iYDk2hbN71Plj816Kn% zz${=s@CZ;0U~86pD{v5a6KEn$i)vWk5y$ItJhYNDyps)EAF6xJK2kIXyl+LD$`qUH z)a$n6q0Cl7WU=2e^Bco>XeY7VTC!d5@zBp-8Jw2)kQ$@OMH=&X=o5=Gu#ATeo5n7d z@zBSXl0*7<=)aa?jpL!uOl2C!Lr1Iy>f@nLEd|v@kJGkFS=lS(FEhO z7mP28V0^ZM@!1Q;7g;b-$3q24!frqK0*m9osb40z`vcj)RG=8h2fhVPfi3j`vVdEF z`M@i{lR)ft|7)eRj~~?iTVj6V5Vc2dPZ=*_|F0Y$RM7kY&-Y*XjUis_YKa%O8>bPv zhQ*6C1;K3s6BJ#;;>CQ*tWHpLwZw~4MYF(ULf5c(@d~ZXuz0b*UZB|*hECH9w8o2E z97av{6a2qzAq?yCuVF|)5wI564*Umb10fy9-zGDMy7fyj;#ei2KlEGNgZ0a|87V$= zN0@rbt}=L(u3_<^aq0)*bwa0xY^^Bo5KKps#4 z{2AB^d&sDW)8*r>tVHn2|v+crk2wAiNs+CeHUHfn$t z8#R~~`!qn?Nu|X;4bY~jwAiSTTO&dMs#x!}4=e}P0xtva0Ivg0X$Z0|wugx0KXDSGGKpIJyQi}S@D0<9a)CqKa5%$u zv zSgSZ(pg%92t|SOkEQ{OCYQh7W`a@mB=b>6>Jx}_u8+|EaZS8#Pa?Fz1T(yrj@INB9l-HdhxS2w3!!PN=0E4bRli>#Htxs}cDzRvHd zg!kHoGK#XQ=arTeWL0CoVQ%%j?fVOItMQ~Aa_ubeREPR=`W{N}!ReKhembRBQ+iuY zKSb#*I6a7T)+G`mufAtPm;bI2y8P@X>;nb91&#x?fD2r;29kiDzc7a96ScQ-WH(N@4}-l8ZDVh5_ngLQ3ftQ*Ha?TRwRdxRGa@2GPFI8NZ4k=%W$f+NAB4SK>2SHP1#Sdx0d5Co0bbxf;0a(2@FMUJpbXdx{1^BT z_(iNMywVf3xA~;}#cV{HfBU(ky}h+)Z?LzkIiJbi)~3{HZ_}vC(?ylKy~%A9+GY+o zM|B6R^lydn4Y#*vP{uD~Z$BLq_EsL}a=!`e0}cQm0iOb210f&@9JT|}fu6v5z;IwZ za2XJ;`d{SAiQ3x+Qhquck!EirTiM&&auHDp|5kA-5t{66U{am-wt}jBp0gVKTUMR^ z?YOJq_ST`wyWteZWJ&V&Dm24e%mR2K)o~MXW2l z(i63}Bc%Kn*@!fIJC|)CQTQH9{MJMCwZh)+;d~~0+nHFWz3rwdhlwh6|2C#hd%GpE z;r3RDGJYBV*7;juZ%;ROxt{}G0yYENfY*V&z(0Wy@IBxJr%6CNARRal=m~_Y{ujA& zqW0GIJScxS8SKwHr(Eh zql{n1-kz%z_I4^b=nQlPdH}x#1^~l>!N3Gy3NQn>4|oVz46Fg30Dckc3a^yyE#i1t zu5b4u!wRys7}mGV)BeKSoWT0_q_2c9!}+qi5`|xW6M@*IJdT*|XJp!Lf1y`3SM&Zt zZNA&GzcBof1Cbx|WrF^an4C=ez2CM3-H*%X(17w{R7(8}fR0t^Ob0J*^1z}G-3#MTQK1>6WM2j&8*k^c|><@Ooz zc|P<0--Bd&#cX=?b{%bfUw<^_;#1HD)m8Yxmi0f=^L&HD*8hyp^9>GL|1&)rGuX2J zr$5g(IBfk-d!BEw<`1Q3GdvnI*s}hoKN>UGy8ahRQA$V-Ynqdvis5;_%nD&>=d{Kk z6vzV#fIkCUfp38WK+_qJy}r%+e;w!JK3{Ah{c$9HpV!u)??KV@Jt(Ta2SwNSAX|M8 zve);ZDEb~`tM5T}`rhb@QQz6034Nd5295-{2AB;z0z40V0_*~sSl_X)|8^s_zryAn zVZUd5JH&)|K6|iS{~avXe+SF;-@$VIcd%Ul9W2*>2g~)}!4dX*cBL|Zo$J4NFAc4d zv`%xmI{@iG51=nF2pA0v2W|pp0uKUrox-Ym32ODRZbQ7gv>NeEuy+`@;D7 zx3czz_^@`TCFrW4(@i-@ zrP$ClT4!1NFH@PJOhH=a)aE{9a34C83CkQ=YGG26=$OWl5K^4%s925k7;(wRLXB^n z>T*{A%^`){>$&DYd)pT*}Yl|)_mKd~r>>E{rYCtesQ^&FIO~oRRSM_`Bn5E3n2quNu9ILVx zc$Qw^cjf|9lm&FhlWKpUC_+w$j(p92ZF=fOZ1;Dq%MYsOggb(FYY z%BEJAzPffY>gz|794z`eZjr57Uq4vIYtYxvrecly!fXG`!z*21@`MiUS(K1LUq6`( zOi^~w9k2h%tgjnC68gHRqsu)BcmQ}D*Z_opJwU8tKViC9^wn)3xc`)`&Ey~T@$=`M z4gT?%w&fwx`1x4Kq6wi!HSj-HVUnGB{Cw6i1W^PXG0C|Y^dR#4K=*8p@w%h)bP%R8e@ERt=Jv01!eG= zNF{V85+5PFUqA9}r+(zw9_`4pO8v;QYW>KwL)wvNLDP|EFIZH_x{h>&Fgr@xj`jJ6 zLSv<;yWHi#o4`Kc0PqnI0zL&?VBHOz26PAd02ct+fCs3TVos1ami9T5l<27;C7Rl& z9=|-4ZfKviVUMYs;+L?;)XnjWzM={H1^Sg~BpB*Hh z72liWGgsv%X8H7totrx3!~7&0`62lPRE}bn&+>N~M?UY6eCB*-lFtJwH!;g6DRyq^ zkPq{7w93E_$>$F$M={Iio_&oYpCcrniAH|PocF8T#4MlC+c9%fhkTfy-QQZ|vry$I zX8BwlJ4aFda}~*Fh>@Q%=Ny%rnC0`&y^SRw=4ahE7WphtIf_|6gJS0>mUywtAc!eV zvZbzvx>6s0fu>1#zH4qzW4svl7_V_Aq}KWvZ%7|m*P5T-TeC2Ee^*|NS3b%AN-~nQYlVT-_YL9)0xpkEW z{g*jIs`g{H$HD(paM^WW7iR3fJ%1=SP`8n{+M6{ZwDECKi|%^3d8?U|DD=|1Ag&;J=GPz4`C@PlV?m7Xkict?wCm!y5G-u) zG1)j5+(&BOlwKr<|9-+=jq^o4u4CTo!hF8$k4@JD5P$-sfE$4OftP^g zK$E$LDEc;^$FiF4^XpHgzV-81^!-}jpa1^{ea|F0e1AAbeJ^@V==(ot3qJyDxeT(Vtq%5S7=!$>^ayBe)QHcm~NR(TwfD%-F=RD$HJ09a!sfwiii(&$EP#& z8+^uvI^eTes0}`w(@r;%+?GQuIo|O{kL$HQXBa!rx#rklQK1Q%U+LJ!cr}RFQ-kZ}0Qu-O3-i6XnrSuF+Pf@tim;WOw zRaZEs_$_{wbsBZa?)(y=yPGa>xu*g%fV+XYfDc#)>;g6bTY-0g{{U4$1#nVy8L3b^ z{f4zQ@tAuFDW!-lTW@R4@4i5^wE;t=ZqJ8##E1Ig(;1?67su_c8MnLU-0l*%-MJw0 z0xELkzisrKiy}{gp1IP09W>~<%&BSFJW>sRx2v`=o3mADdH4{Q`w}1v_#JRH@Oxk? za1-z-@FK7RSOaVU%7BBwULcZUPSQ1debWGt94gKq(BCK5eh8HFIJbug`tE+=3F!L> z>3iIVHv0CU$djONuJof1O#0Tw-7)L?`Yl4=eTTW+=L185i-6I<6~F`_7nlze0}Fu1 zfOWt|U^h@of1B=KbbXVHAr37ZLP*>hKfQ_v8aM`aT~;o-BQTwcns`47H|2 zocW3B$8Uc{Xgoa=8)bmrKtEs*a3OFR-~na=i-9@7L%<4P4X_1x5oj`n$E0t!_hWij z8J$F;o@Js;BF(So7J^xyWc3AQ7l>J(J{O&+=JVbcN}$8F!~saxidmj)6iM+9`rWIz zU*N>5R^saL%xYE`#sO(`@D zn#8;eMBv*cXJqR8`m*txgkf|XfsN9@SwL@~A20~;02czc0Skb;059+uPz-DY)&Wgs z7_y@1_CcMz$sd%k|L1lT!5?(@oPbpnP?6)_webfY6nPT-0ayCbI|hGH=G44F?EZhF z^#3E_|AC>vMZjp_3Sa_|3(N8U4XU z!XI36iPU^1M|u}sx{jNdrgJamR~gtR?n9}8X&`RHPfxJdI6X2)4EzQ71MoQT z0`Lm(FW_~c=?uhDlfAv@?*oanXfTq@Wd=7eqq&R{<}z!vSTyj<2WkBBK^nh&kj5_` zr18rKY5ej*8ozvy#_uwi$z0KYETuAOmB8hg$20m^8W3+bT*fo{I6qIk1+jo<|M8+j zrd`CeSQ-$t>zNkk=Ly+Qz%igLM9>Vd=&&h& z+S`j3T44THJ0@)=naQQx295p6C^3Fqcv*wZBr1+WRnJCZN^chY33Yt@=Jpm`SwvVG5)0r;&+7ninU-sD42h zhWAp;zX6MZZ)wR`!rRT(F0H zas+#rl_l(%LS2ShqJXPowwAxZJ8aimz^HkB!L93moigpfK z?L1X9^r+{l#$*F2>x2#5aye!RfqMWiPzWprih(Sf0>u&k{#>F|pE(#pt{l^9I;{C@3PVxTZf;jR1}tdQ48M7Uk$FFkKkE4^{^;kc_-)Tu@!OxT;*WB^ir@Bp6@P^DRd!P| z8DBzjP|wqe^7@?0VqqWmUxkhXcm>!Gd;_$Cye3It!{>-!!lrtMI0b>$jWr z9e?*M^zb->JZXYK*F|Ps8+P3nSrx6HKTu@Vvf+95B8!Ss6vu^-`k}2XbvgcyyeW+i zk+^TA5PIG{W%+Sb8vXr4`lIb1O@wIGoeP*Z zGam?0VLTcR?T87rGXczxw)-vbA6iO}TWBSxSxVNAhC@3t7i)O5-ETgK(C}!xzq_?S z?a_9$BTIoP3b&(HuL_OwJn~;+)6V}d}c=}19)7N2mM}Rm;={LY&U_7t@m=46E z!bYXBw+F-c3HHDX@vXPX_9V}z(%RF6>kRFwz_vXV*te&GDD9~rtUV2+_O$39ruJlg zS)wNUo_`Xuf8|;Xet=3K2@E%i9HYxmj&~qGUfABt_ENw1z5aHRp*>;X5~V#AMsH7r z(b`j?eS0d5(w+)!+f$)^dn%03o~DyVw{AAIr|_c|HJx7hgwSc)?_KWxz*yjRzz?he z4gw`Wqv*Ikg+#XpIi7(%@WN&(Td>XferMibXj6seHf4@Spm&Q^7|-`Bw6-ks{@_AO zOfgWk=>>idHWqr@YHw($t`ZYeNDSxb5^dztkv=Buz{FXDtHb&Zpj3$?ep9)~ak zmjVj#An+ux57-RUM`I16Wqn83FKT$8#kim8Al>d8Z07p>Q}es!`op(3Hh7d0Hhyh0 zSs%Za@Z_R8e%;TLi`x3bPM%!U)*tpTt-AhD$+X(~Lp9TC>ko&RR$YGx60Pj0Y2d6a zGKi;DwB2h<{wS2`#9g-lS_2(`bf5-*O#N#7r^c|+e=X;$Zmp=zE)-$J!?6v9`&1tZi~0YnzYA0kj4>06lzZJkk{wUK)oICL(`O}1Ruw7+19(0)tY zvm0m!bOO!*GJyWTIl$$>RltqFZNO~62P^{?0*#{1It#Jy-_7$4lSsdZUn2dAcn@c8 zrEar~Bj}O6T=`(oLG5Ak)_H2gSLW2>J=vTp=*7KqJf=l^a^rr*8Y+T&*s?e^))Pvo z@M~kIGN%^l$udJTWPw_or=AjYm0Fq_<%!bt0~56vPc2G4Fj0%})S|Gpog{Mb1yh6< zWyCaVu`r9~w_uG4$OI+;vw(#_39tsJQ)7)w5T(7VTN#b}4YtrtfAAuk0Y7MJ^8a5< z75;y#^#5C>|KBS8|5oY$w@UxNRr>#}(*JLbu)dr!P51v;heRu`-}>@=;&{OGtR`s} zsjAsZWl9%7Q=j^XSKWfb_Q(5A^fcpWnAV+_|3Nx@So(3m2|2U?S_2(`9zZ(a0mcD0 z05gEbRb|A|>Z#u#N$UqT>Im^%^{ox>-!aq{>s0dnt?h5K>Q{~D#QLHZ&x!R#EuQ1` z#fI)DsaOBb)>GFOgoOcN3VUI;2Y|ys1@JX+9B2U%I)Uy$e_#ZV155&L0~P>tfr!d% zf{XU{Lh~nK@nGBGu$MQUlm5UO4<=6+_VTjy2QN#1@Urv=FH3*$vh)WpOMmdP^an3T zhzEO7nR5NA$>aZe*^3qt-0K%M;k+IC2U-IifOMb-FbL=ifjz)R;G}5TzR)P` zJyJY)i2eW5(*NV&5mP+)(=6ftH%kA%QTqRl(*JLi{(qzN{~M+M-zfe6#t89X=euW zpR-X%hzApAH@tth#)BDD<}bBBrC$AeO!46TK4A)nVYU^(*T8YWc{fZ0=m4|^1^^?0 zvB34fbl`qq1rPul%>e3IkbQqZ@gUFtE0f4bUSCB`%5?s)zKGiLUe)E}vB6_u=gAot zQIA>AlQS=(9y1>)XE`4{>{L1ZeDMET`X<97>M_fyaw7#Pv3f*!a_#N7`unwxeQGT* zMHxtf*!2|q7LNXCj(?61 zKBGSOTZCj<6hHQ%MNSrd9xz2&7JYtTDOq0>KlUF>u||Dy)R62$R8nf1Bu0in+iVAIEeQz47~KsGQHC)@nsKhv?x?3I=MAmAU&tbMrkUS}@AEUCH?*7Bp21Ct))TwU%P&ct&oA)H zO7tC`=Q}3(cD2D$@FfWHBIfG>a+5MMXo8ekX@yWRg`z( z9PdFp=0%(1*-|W~Bw5z?X_{ZyFM8Fau=Rava_qA)icAVy-_NJaTFI96{i%AfVe9)> zXk~`2@AuaWw5;!+rWa^k-{<0@9{BZ#dxT+qIS+;eft(GD0&W2A2VMe}15IWQb?cYr z^u{U)7eT+y$63F8o6+~j>8`fYXK=Mi+WL+>3)JLlp?CAXvkH@|O)_^%6((1kq^wFkHN+l$<=C6-eY$Q#ee!B zUbqC2oB>=2OaSfz)&YxvCR4nu$X@^2+AX@!u}U}A|FS6U`~7@F`)(1feYc3(zFS0Z z-z{w0cMJRW-6Bf+ZeiQLThzaOzc5Rv`K|eQO$^WyLdgI|0M`LafO~)@Q#0!~;(nco z&kK(tHJ|pFP_ufLn6_VM)x%;upCspNlH`0%lANzelJhl5a=s=>&etT#`5H9;u>Cr( zQJKHgd_7lew_oRzJB2P^dX+Gh7iUat3`hi7ir&H$47CpIdySk-dy&6oEIeus1(6CjoEG~!p zIbVs~1TaU?mN~~-3Jl#KJH+vp(n6yJWm(*n=A!zlMUAr-b*d~X*HV<$k6b=OsOFkN z9B>CL0sacS4*UmjRe87&}K!NCy2lM zHuOf=tk`8C=4$Bej%AJ#i?&1BMxocthLb4>%bcaE@T?n!#44?+XOm>bN!akvi;g{h}ta z$M(ct*Fv*BzLzINaSph+1o%C04^Thr3#X2%-%-TL0&W?J!rI6lA89oGI^|7;vt@fF z7JpMfY`86bO~h|aflw^>pJb1JYBYXl+j?QzN!A&Ms-MgIr<3#b6r1M)5MdbAFC z^;ySv8b*G(T~~?@Aa( zJ5>2y3jO(sBYu}c4^HnxWuH#z1F7t`oZf})r1Py&soG#&jyGk3J1l_*nDk77 z>-R!84?ThBOMvCTYT$WbGw>F$1NZ{?4sd|~mOvWN1sDLF4b;OH8-tYX`2_8whU{Y~ zH#~!VtgFL5il1x}`zWPqens~2=|o{4YyJeA05$_VfVY4Hz?Z-gAO(D<0bPKzfdN1! zkPBQ2G=|daQAYIsU+hO~e=+P}z+BNk(6fkP`$POI)%i&T`1`{4qZ#*y>fAA5CAh+-KR3rY~CV3)_#TEn4og?nl$6ntr@SX!`M|pk?5F zpbBt92t9%80S{0QEu1*1z5c?VCs2BkBB$L)iZmT6pl>>u_GiPQWa%MOQ|D(3wP}UY zPb}RYFFtbyY&s}Ctj>1HCEp6uri0RtO(lo)O$Vj_wGfv8xbx3V0QGANUr?fRI`NC$6>FbK1uvdf%R-j3mV_ zxko5g9kG_07ixv@!Z)9Z>o)Ipq*=(MtAsdWV!B@TxPsU|I6KT9^_QY0{l#dH)g~pI z54kA)(V}P5OYlmMTWrU$GJ?tN(jQDE8(xA}`m?22{g8{&T1%ORm*AC(P(yv#C8WOu zukqnhV^ z@Y}mA_G#Wra>DjGHMddhQ(uqUPuzN#Thn@+zDei4r;Ytx(4tY(CY^mDiFld8 zS)O^5&c4qrCF`4X_I+t7He~4UzA}|**rc=XsI@@7zx%>cpw{0djT7=MT7#28fpXvo z;D8W10y)3{prNJ|Q~rASm!qV}Ioz&n`n!qG82wAoBsWWcr@d%g-HK)0WLH{Yk)EZ$ z``lErvA_G$su8`v`^r+LvA;WNF3`~5ePJn(38Olcv&RYr|86awlK}nzJO`8mp8)M4 zq@VFOCIvN+C^mnRa0wK<>JE!P>1~pU5Z(#&cO7%;>rW!=AEEVQ-Y=d(tX9u3v+9k^ zs`ZF6yIbI#k6wHK=(YMs(af+89CnU@+%FEngzXpq(kK{TRKfV7 z3&s~sFg|<1_@W5LXDb+=yl zJ_Z~RTW4SpFb*gJZUY+VY<>mV?fWygsXeZs_W0th!i~_TKsg52L*?_<8@jTdmi?rA zX{(pI0@pKaKdJFNxSnDANgp-t7w>7=PpY2>*E4KC>2>UoF&yj}wx9GO(R>hl_cRYv z454yQ>wZ$aJxw7wY`lf!AVOu^tv581%f3w5+37F9u7GQR*}x;f^S~#-E}-cQ!Cv25 z{E1V4#wt~GpQTfy==;pS8T8#Fn!bBP)pw8R`tD(??;iI0?h!@bJ#6*eBZ9t5NDgH; z$Efc~qlLa(y@;t8;8H*V9t55Q_5quLCf0X^`B%fM4UOjkwI7AseS^(A!t=r3z9jY& z_mumId&>R9J>`Dlo^n5NPr0ACr`%86Q|>438DT$hn+?C#{lrTy5z2Jpu3G@Dfet`A z&;u9*^aXN($-o_e7gz*532XtL1Da0RsEONm?E3CS`u>2;JA%GH`Mc0}N2%|QQr{h= zzB@{Nca-|>DD~Y@>bqkEeaCP7wd#A7N9g-&SmbfQiMwwBv<5l=J%Dt;1B?T10A>L5 zfQ7(1;7>r)>pNQfpGg|7zDYQ8b!zUI*k%m}a(_%GmqXgUEo z!1+Mz>S-`#J^jx-Qu8%83hNAee&xnjg#XEx{wH7hpM2?m@}>XDm;NVT`k#F1fAS;v zA0L(Zt9*W?>u{mX8Jn?H6Yv6sz+zxI@C;B4ybinrd<=XIIB-X;fL=gnpuswFHW@9prEYhcz&xUcglR5YD?|AD3gybQbpR02s`@ccK>9asYV4cG&G0knYlx&hY!!+`o&{;!jk z+hfFdfX4I5Im&u!h{0>k@ql-L$%2Jt+D%>3sj#gjeZnew;zFAboHXQw;(^%X)&0c% z*^>LP^QxDWi2kCl>@WJt{-Uq!FZ#;VLH$9B`Wh**$q-M%Q;=TYdMn*LUA2`tED1@4gZAJ(A=wJ~u{vSDq*IegA7XdkT03*bjUI zw1T`Y0(t;Vs_(p7<(_fP-II$kRC8ocF6>T!eMhhQ-S{g5b60F`hhLkBp>O}%uViH} zyye+<$eCXEE5{du zzRm%M*~%u;S0V}tj>)p>D+M>CRF*?u>p?5@MWmX(Lj5A@>m9m$^7O^r_Jeh4`noYv zg{-e^HvRRR+v@5n_f(N}(K2nYmAEhQ66nOcnwNX36OktEJJbSdrRPs+mvYVE-0D;x zHbfz3Rq3Gw1S^;!h|j7?-P*b^x6<#a^acAA;&X20d8rR~;&Y=a`|T2LeQyljo>SoA?3y`!9d%Bp2=7L3Ki9|H1G2w0drz5ynfwxXTPpyTGeYD(8gy7CU<>UJJdE(7XNQD~Tr_3)?`jDO+$EJSGTh zcTl})O!`5`w|yV~1V8Ps8mkn6wwOp^WRmpVULZ|j(gPiL`40c&D+OtevXF{RBigYV z?K7YaXW$PJ7SHW~YTtIyj#ZW$c#x!fh%{v#iI#-`x*X*(BLkA~X%H5#CpxIWcZlo$V}!aN;JP;u zA=k|nKM`K>m0WQ*bH)A$6`w;DGacz(z3l}Ns!rglyO^sEgjap=Y`W*w=Bk%OsQM)k zYQf7I%5_2(-LUrE(A;+I$v2ct+%YR1jySKFoFbZrLm1F2J)DkJlpJhF9u2$BxIGlM zhEpleOh`G!LC&Fkcq03@DrF>ji`+!t_GB~};Vlx;N8O2HI7gQ)YL0GibwFP792t+f z@r}ysb$?q~UjNhR8>J3;LQNg`mYUkf+fJrtUftTEI-HI1ej(Vt}Fj+99?&8&m8 z9qZAl6y6jJ%w4(p6un<5_Z%TdSnfF_{_wbqJ%8$-3v-Xqw|S|5ZjpOPb{3(|ocNmm zrl8E~_Z-2vO(y%Zj(88Fq`3TDGuxKCR%7r*k}h|xmEZiiN4y`SOh^9PGh3FsR;rgh zhiELBiM|I{)oh})c@76kOD=b1K(AC<2qg3!U(r8R8b@=J;K4VZ)tFM%t=P^UH+KRb zfmw;$`hcfz|1zbx1b?%GbG!49W>qKrn&MB{fj>DxMP8f(7w6BNT^>jG5PV|r54FLy zL-Db9xFIz8;>>#8h%J9K;voJGLD=8^1%4s2&2j#S>pj>LR_)KK_Eu2GC0-nGO6tQ^ z2@pTOOmNT#7{aw1@n z9lE^fB$R2q>0uh7wf4iP6gTDyo*7m<^&5O+gZajc)yVrIj={PsSkcug70S%4pQ*CR z{fR0V$>)tIfcV7Yc^@aD9oEI2%3 zZszlTG#Rcv>2wDL!js5@ivY1UZItK*HXwUNu1ZKjfy$=5pCup&mwTk>;TB>E|AWt; zVHF+49tOD^tC9E9i!wWrc}B#{d_T|QlkdkAlSn>8$Y+%M2#r#`Az9OQ5Q5FPU~_X# zspT#TeTdEA?2$jzhK957O?Am49-tzeC}Kyt=}u)4#BA`>i(t^yMKB)}9BFncIUXcA z#-@%#iSXtZ>6EHX$@)?S%kjZ+Vf9fE#w@=vOk>$pnJi*Aa)RafVC#rQFw1|1TMdl? zl`|OX!Z%j#q5zWc2r>?==xFLJ)Jm>&*th4;XNG81mpl?acv@y0T&tfzRUeAK;QS_@4fr+w&(*ccRYU6wO;tHcQ^m<+ewyy zU4Q8t%3a0GmchN$CAUM*6-+u0AJ?FB4xY;&aPeAveerK%>!wkk_vkp-9nYVv!)(Xq zT$q=fKcVHx{2E;JzDl2DpEJ9Q@2&AYb^b8;Gx56(|DKP}ivH+PeM2`<6gBHKG&QI4 zBl+>HL<}sCijMW^(_!^PIna_MpA!itXEc)eOu|u@Bnc4-Pi)9iu4fXC;v`9hwW486 zvctfOllpsOMID)BgMp;hT2XapVzLLo%2-T1AGYsA38x$*UwoMK!A6cO(i9R)v!uab%S zQ|MlD@|p+VJ&k(>bY!?NHZL)_LtH4P8_3RU5!@gNQi%7Qyq3XLY7Sz1Y+h3E5t)M+ z&dy5?KB(p(UUTwNf-}?{#OBz%R>4U!2QiqPmm17ga}aMidG6qa@&cN)FuQ7@%mcVi z?OZg@E+XC`jzeejWo{>u_BoZ7o1mm!Mzs3;9=w=$2RSA5XLE@j6MOCkPVAjzzx``1 z-mX8vgg8$06do)nwAcpkLy_}gnOZ;cb9)xQ?J6XfA922vHnw=@R&k$k3ciRAV;7uE zg&(T*4W%)t+Cju?{z1C-hfuF?D2+%}k_4;YzL8j~Qkv6s?iG%R`?w6(DL$=IR>L(R z8ovnDVF-ubXRB9z8y5*oQUhcjz(u|zgT*pQM4ROr_OH$5h5HO z)0P}(!YUdEA#5Hhe^PLbQN%g&Ck;Okq5nqyq|hE?Xt(@Hkru|KPWh8YqZs~ug9wL8 zrXeFd^e6Hsd2IOScjQm<*Kp6T%b(<~;hZKbgoHShWMEO&6A9R~J!Q$R*Fu}Fw$>jpIN5#?cplBastb@cf?G6W|_$a*x8!UG#;@3#M#^DVaA+wg|v4>nlpG+{K~RyKL{fb4SvAR@LWYaQN@bl$O9(F1($Yv+ROB*|<_g}SrWKR)sK^45 z)GTlpK6fP4cIRkj9}Th_sa8QY|fwlt?!oWN(iK zb&r}>ECL;Aky5y5h87hKaG?-Hh3;fgOtxxsl{Xh*}>E0HR*$C z_5(}DGvDLM#FtOOe92e(tLuYCjrk!L|0u>m%5QFiTpw|3VnAT#^BMt-bE zABeCXEe_FMZ`_lFa3*-!MQGPzr&fU8GgXNNR;>CbkEO)hMo?lUnl#bS4lP6u*sEcj zt>^wPDo?ryYrEG#x3%4?__LBfkMd`bKNs=m0{$%E&-wg0k3Z+|=WPBY8>#Jn2oX$e zcM3ylyHDaz+ICRe{VM(($Di5!Ifg$+@#jeX%;e7@{5g<6`}1cX{_Mq{8T{FeKPfV( z?cRw$+w*5z{&e$aGJn#PR&DnL{&ess&8XFOr&u0$&7U;%tnE%=TWxoWBx}1<99G-C z58qLL{v61kL-;e3Ki7eVjOeM-SLzOC z4W~e=vTS%4j8H1eM|5*IRw6pAEYHj^DIKMRDZLF`RG1+O{yOA_?=K|#i^QKaKFQEF z^chm65gd5;0U!4rQ-Hba^XK6?(zPX8xSBO_vpS!j&cQuaC#0YM6Hs$O- z-QmD*>`vGa+zcYzjlVVRe5|Y;n}N~&XUR^7x-X+Gzq>Tl>Pf@lzp8^^4=XQAVLJY9YGJ_Z%?EV zCgkrsDpec4-w~qqLg&jy_Cr2A2U&aqsuvWfhJ0<(7ngB*As;@c& z+)3qW#Y|U=(Oi(Qm+UZm$?+bYhM5pvUaiatygDD=Zu5sGn>k9_IO_Kt^}EIGoTA^( zELVk(>kr~nWdrn{WPc*>p;9`c^g#Yj6pMxKE@;iZ9kgQhR!b88CyqdXl5$W%@D`L1 zYNND8#6&-@!Ou+xD{UKQ~yobO-YI^XW4?_zf0>(Z5=BHV4&0o;RZ! zO=p@gg#I?I$U(^VJ2WZTT%O0R-;BMG#+|DcO`eMKq&?%-OE4!xL(1S0TqYi>c%+P# zCNkHW+U!oa(<3dwLRL+`w~KO;vHFBopzFU2>7UX)HP{R}s!RT^)cI4XP%Z&tM;UEF zvl2ACjEPmO>cKhPQXleg)toCif7h&@#vD}YZK77u7-5D~$~9Uk!CT>9Fz%-LLERVC)RCG$iF#_g&%ZhU2-^LjLaOa^ty(LjLX( zHd3=V+(YbF|gU~b7~bUkzbAOm6w}9=UB+K2 zKZ_c zETE+=jrY@{1uypn@z1~1z4t`-T@qRAyEo3On?~hCV z0DTq)`rwm8tEKb}?CvIZgI}{vCnE*hB-KLPqL4xq0wH#Dq+`5Jb=Cv|luPa_tqCe1 zV8O~=$yaf$JNZWFv-zx!6unWwBA+a{59mT?ModaWk}8Gy+aOr&2i|pzl4vN4P9;Ec zf&^&<0||Z<$DB?BlS&tg2$rscx}ZZ$jjB<_W8Rpjt5B^g3S@>ZWfu8MSW?dW|d2~wcJA_|;`B&CF93<} zRr+i;t1EQlA}f}DK-uwAOE^Aheu6bz8rrU}#v!bYJ zXh|z;f{r5SESn&A9Uy?VwHA{#L=;vz(_US%!x$tQp8`D3?sqzNKhhb!cJvK}^$;0^&>6k12)hA3r5s>9FHqyT z;eRBy1G_8Zk&cNoin-T${A3)@5P!NeUcoKl)mrv$DcfGRupONRpdKcuNGDI;%__F8 zDQ8CLQ?N~tNs(({&O%jOJsB(8j77;J6r*2X z0NzaBFfkZ&Ihvr1c`c0At6z>%z>XH}Y?)CE4MWFFNNzcnILj>Emnq$U`>)&J$q{Qn zdWgGFH#s^GDTW$&(WScPP7I@HnBSrrJ+h2dO>Li|T?8^tb1KFyzM~?b4p@1GMKxDZ8a^ z;TCOAxwnt)+3s)8BD5#P9ca%us>aKTV`ZDkr9XMRZvJDs^^foM!eY({YcR3xglh-7E5aUz?gRk$w~PV^R2h92m( z0ZOwC?ioUXwpm)eJ{f7t(jm)$+xEU}9n#+$qsD?&crbj^nVj^*Va0gg zu0)F%s<=yGu7!8tPLZZ(!j$nQ3w^qI!;~qMo6tX8C|}`>rsXd8d@jJ>P6}o0HXoFy z{ZKp(bJ7F92TCtdm^J?valPK_19y=Hm#cn&o@*4q?S25`zdk(^6x?(_xVOJhA?2dS z%J<_QVdX&hV6J@cwN*tZQa}6mL3M9%h4}?WB)F4OpRvWWwyQqIg`mdZXo)(Rd!asH zvI^O);rzcJe=aL87 zXMAXp#G`k^v;sZdy#9&EW*9V>&X(ua^p$WO1;f}Cz~GAQf^6spifZ5<80kSe+KSNYPbDlx-DhL;)v(?Iwwc1Ut=#7!A?;1T?<~^%>5OduGyU-ht$;{2hrw z)TMEy1%zM}{_9`9;O_>1-33}Voxj}idfnp0Ho6ON9Ddkq#`nVyua1yV&+Zs=Jm)Hv zi1bK%zr!FcN3w2=WGQnklN`So1WK8MFkCT8HzQvPze~hrsg~&wu)JuQfq5ziDOez6 zY()!T5~(x)pTUK`Z!W@I*ogIj{GG<%Q0>V0@H6m$b1p4I_~5HLTC2`M)#$?BP)z}M z4Uv#}j_4RUIs&g33 z8?ayg$0JSjA?JJu^x%X)j{T&}i*O$>n8qW$xR2cGsqBAOU`{XYU%zbseFm_^>);Hf z)Ya5H3raOrWhU^ljGrJO+Ejq5X)+!Ff6*=Y;znx8FjUv4ld%Ms;@1miVO=_9)-i(U zvr(7-TSVne==z5b2xpB#4J@@`^*gi&fq7_ttTF|*M**)4Iwg;{`SoH&O&UiUuTdmQi@DV0WPr8tJgrsN3Dvd!T( zt0-306pu6kdGa=Z;pz|19({9Tq;n8&jZq(OD+bJ77=#Wn2ounV(f~hGJKxm>WLV3n zOkg?eQZnNna>u&L>4~y-skR^IEG#k_)f}f7h_(z87h0xyu-#&_+sKo70cJrE9cU3P z0wO{^)HlleQj4i=4fNDY%D>sw8nl8t|+E3$0i_9 z^0*7qAiu!u4hK zBsYO2NGt{e6UHqdKzwI0XopjR$D46e5C8szS!$Qrjjdtln~z3Hi8!>gi0KlR#43%X zt<{+h5}oci2g14QW0Zk#0#_JF|IR5NKyo<03xkSX&`VVHi2kw3%wP6q`|6m0p&i;F z%C#8E1+^1fN94O(|KoEsg-8_h7b~N$MCj-XOULPzfIHta+?k zm~=;Q;V;*CtDP1xEcu>iXFrF1W%yg zmJv(J^OYD!76a8!$2m}WV2Kw^9l^^$Y*n3?tF#A_7y5&_9+OYMcX2E(6>_Nc)lb`h zfwnF;`(j2%y}>pNa{y*pZj1H8Vgm+*F7#&~|CL^+VJyM@l*g45nN?68``xBwtj9&W z=V>Qg+K7?YXC!-Q$J#)0foZ}z9YPabu*}rvGQ%iPm8mo*>WncS(g70ABwST!`)7dJ4#$h+1agpB|YdWXX>TJjP5LC^#7E@t2L2<97XYIpngUYjm6 zQ^TaUyVA5m0E7Smgp)PG!qYaZ2islB&2MdLSD1G)_;Z_v=@{dH>*l-8N;B2PP5~Wa zQ&JOe_qJ)&tn^`J?EeS5g0~{DSzE~DX-o=5X9(N_Je&_>&=TgSmUY(dBX4m}ldu4| zx7fE*7n5;d{Rfw)z#!f(^SzaKuh@6s6!fmMDTm&Lnl6`@3v9yd1eL;p0>s*27Q0Sn zqfji1JWvqYl|E45C(1F-D8$ZTCMYgKCrxq2~|6O_yO1$HhxYd?Gr*4l& z+RIJc0U4_O0iy2}=6cO&;mVC-y~kEZTb=E^lwJy7!Q5b9((~ytzoHhi3teEdLDU}U zD7PT4DGgp>hHEh}R67$_K~#wG)K04$WvGZl&yhnnOpty9={12n-xN zY++y%_M;w*(}mr+9_~9FaLOo<|HR1=1dt9{dKcP;cBnA6JbXNJfocF3BuQ`RYb8{ZtCAJfrB4wTeI+^_M zX|rK-5NLub?EEiB(kb&O8jMRgtTAXS&Q7loACZBlw)d3xfO}1U5&qn1S^T+N`^mUf zj174w>;cRkeJJDlP?rOVU9yc%lQ>}Q(NNt7_}CKZ7LAv2u)L`&LysKcC{0r!}Z zjEa`^*mPj?J?B?<|4pQ)`yq1a3lPgPTFTS{tF#Y7Gnb$p*p5OIy+X8Yz0Gqc=fyH3 zHq*Mjw!BX$$DF(%x`9!*SUI>%Vc}tFMScyWT4259L%GgoUIgRP->QlcOW0}#BhAjh z$>lfj?8FtmM-t6jTAGT-2^8|C&d7%Y0kvWLMe~u+!{NQLBDg+CKE{wqSrI(h;Y|L9 z$tu1*M4&$Ihl=+v$orzHMOu87)E11ru_`iS{wi4obTYzHxS-Pf4lO}>!Fc^hA2Dnc z)*D8#5hF4&`yQqbrEl;`GhW7u=o6pmBrCo<{gBf+LLo$CPW1}Rw2v48w%M|1up$v< zFC+js9IUPt9HTrO?fT9!rx5(hfgF-#G=~iQ)joox`<-&4fh^bLm3!JL7b`31x}Pe_ z0>AMJ%&|n4K~}YU%iB8VZ4A5KxpWJ8{tA@J%L|;B<>nxLbV!B-PqZ(={IOm+9{C5` z*1e&m_w~vZyXA=H1Vrw;@ReF^kY2PL?6vZ;*=AyvfL$JxpSOyP&XAT3(WEg{0U2iB(kaiO1ifw z$-&NBGzCRTe!qw4s=OTTysR*9Xb{IC8O_Cw5(Eb3KeCTt?GdM(+wQGixpi(iqInO{ zyFP+f&%_350T`U`)Q7l11fz^$^OmTzxBB(PpYaZZWVZb}{ht>>yxg?tSnY-rey7kF zDi~nAm3X^(CawM@J6a#yKyWVpgVO5f9zSKh<|svvd6$^jnz4)qLGojr{7Q3#Ro}8y zY!JRw!#(Qdrc}}Dk`06LpXf*m>BmPvA2g~2dzF0E)_Bzx2v05Rtx>~?y)(mmW}`)PEZV^CD{gFN7}~*NXmIk!942xe2|w#$$G)IQiAFSi;*?*l6G^ z#K2_2xnj%Ld*dz#%+HhFfH_hI>^3bRx{@5lK~Df-{_20R!nrM*E7Iq`?Y4>ywmJPN zw?2n4fA;|t+77ZAn9$+%DK;gpJ}BSCrfux32IDk*j?cgVO%d$JnKlH3ufsrN!Rh+P0-6Vx5<#gp!|D9XYZkq{Na+fQt;2L`al zdCR(pdEo8q-rJjeZ-vK*li?7#!igK9zT3Y>ypOK! z9Y?)*;^K)mf$#JMwpzdNfA&v1#A!Iv!oSYuX2P$?0l!~;IM_kLg=OmMNj5|EVHcZn z^kJfd-7Yq&K9ty8=)=i2YUJv}(KbW%VWLf0eK;1821w1(2i)9%!O7Ey|Jv9JTKvf_ z6^2hA-t*orb>4dVu-e(DNq1NBVm`eAY z9pD%TvY>)|x7px|uCDdE*zS5mv3bVF(T`l~D|8uTil+XG5>7id%LOI+mAgJV{3Gge z2pOzfVC(8UZh-nJphw4+6?*yy!O5RPe=d31anxueh5qo-b|4&LWrR`oOB-jwm>Qaz zS33&wjgP1_5B$TbLn@BXWAXC^GA7Tp+392TOeeq69ONh{$LeD&!lhn#M|;6Y4}O-h zn!7IChI@Cj*R2PTm$#mTgQP$mJ9$UelQ{oFi|v9q8p73Xi=C;3Zxc=82>05bysp6EjpN&z*^9vTi_kGy!CSZb zC)l<>a;$$551TK;p_((vHOk5!eukx>K-GOe!Mb;SFX~{2xp&U`A|Tor`GVFqme`87 zh!ZuiRApR}eI=80Ti7%dghREpdP~nROutj^i*a}Xy6c)r9!M`%(w&V{LcP_moc3$0 z-2u>7GFh>`wh83h{Yq@N7nn{vuZVcqRaxR;7Rk!ALohvH41rUGj$9=30n`S;bYr`` zELIB2^kpCZ!~TZA;hShPcREZ`lB}sl`+%N@ve1)jy)~1bcV9`P2RnHBN)A_g*5PF= zvISve98JNIr$KC8Zr1@nmgHZe2;Rt6KvcAcjutD_?2IsQdp-(ej5*5Bi&^-|6>rSs zXP9CR;Xlz!IIigWhP~2=7GZ0Z;c}3xOIuzR31p|0;k{>2AcI!hKXm?_W^Xd@LwFLy zmTh(EZnRqS6s*sol>VI4eyb6{3B6ln4{&c^NvXEdC;*~SE;$xyOfshC)!^D|EUL@- z4sL5f*`u^<@+ImxK0Sn{EKdjYDqaFm@@b)w)0DL=9*nQ&+D}7!3L^#jWa31eGZp7G z3YHeZoC;bo_lQM$?h|UuwoVP#l!96YQ)GuKcl3JnP9*{S&JpNE0Zwr}!24KwR|~z| zp;PdGqIZtc+tRA?&l<33P*Zyy>Q_a2GF zBM9y?^AX~B*q1g&TMPMfmB>FKzwr5RblcdPlRzYHH3h8tHwqX33V+iJFPFkNVLUt& z&|(MBu-XeD2i43x96{0jfxvi%Vmu24W0BT)RcoxO*|Uq0W{4A|tdTharF=1d&(4g& zi>|RWmuL!)zahx3Zz^1j`{kq=yf?{>&_Ap#vAK|I`F;zzmhUS9e8Zhi1Mo;z080gc z$YOGklrlMIu1?v)xfb#OcS7A-bQzSg!V065 zPgt8=qx{JqA*?qgYSI%JTk4t@0}{H=pHRYQ>BJu896zffU(P@7o~Ts3sPpTA@aJdZAL>J9@qgOvk!10AFw2--GVr(H z1*9PO(cg|eJ@bBn+aWLQa@p=PYKg4Gd)Qg_JZxLV*41|NIHqcDo54s*^cbxcRsmH4 zDTi7Nuv?&;jM(F4wZ1$;UbZ>?XlkUbc0_!*7|;<@tF{y_{=J}Un@9kty#@PNR|Qn( z(-#T;;dtcXScI1);VPIFAgjsPv(|$XRZUnLYBx*rWjxR0yBFTyrliQ`n=FS$%>&24ESb_p6E${{kaQsrKVzqTd4X*#@ ztcC*`%7wHk9znU}QFy~Vt6X;@k8;O^8kwSADN~0`NC+AET5|z1#K6Ddc6a z_-kYaSWFzMSz9gS<^zHdSR3W+^(?Iahd;-z+ zXFqNNN!cK`@rB>jmm$}MpX2%3;L+A)AU@hMmyYr-v>oB~cQE2!C3{qB@O zq&<{;-)*FK)@Fe{puRvJks^U#1o*hWF^1D-yqut*25&e~fm;Ngzd>YeDC^?8*y0PE zl^7788!!GG9ow&=qh0a`Xn*MEe3&W!Vru(y%KCQ3i?iux?(-cS4&&to6Dz{&zs!eR z3Zws{Nq|hESim_tQgD@Q6uBA+_(|C5gneGvGlci&BWrM^8yZI2r+ci9!xWmcTpT@8 z@w$el3N9@slwOEX4_b&mMGElYU(EIgx2ol0yTFJ6$G&ugY0Q}A!ulOB!)P&wl;?wT zpp(ceD}9Oe0IWf*{{WHSt%Elpi(Az2;t5bkOjTP4Zw4QD#9zFvQ0u!jHY2}_lPToI zE5Z}2tVpi9LJNbaObQp07CA~x%R8|wj9vq`apLPrk+Ok_B3vj2NUeFsB)b`gna5@< z^TbH1QnB)Iav^TD3|)PV(&5!A5S9eb%OakTAh+TvKxb50O~v(8~{D9 z0nCA3`Tzr2=Qpb21^Ph0`pf>tZGp0(#r8MhWjAGCn$a|(9g=UmT`jf7k4E5UiN6vw zOa(y0R20D-l3gj%m9gz3jF}-O?R{0n=s7sZ{V-ux6)nk2zU1_3Mo;fhRQ@q67d{52 z79t>}ot)H7xDnQM zH;q{D#OVhKk3o~bnBkR%_I_c%3m$D|EbRBsh(MLgT>L@&GA87DuMQ3U18FF7dzv4v zW8ibu&uZGy1rX@o>#c2l*0d9B>JL70b^OlK{t(sFNCCEn@P1auxZ56hS3S za~r^7pRIR;-~9o|O0m$J(_ev=_z}QR)p&6rwEC=VEx| z62&@R2-J8wglL03E%lwqVI$fRoAGTfqf{^EWfa^q_K#;d71$bGxHVM!t?IeR#-$*C zkF&dmZHzr^uEuh3TwoR8Mohv4$z8lajI$oz+L4;lbWwap9_{9oH!i}0UUexzCF=Qk zopR@^pS=EV;nN_do}a@ZSva{?k&sX1RNAuCLR0A@YKlWtMH*4>W6d`%cjj@jC=aCS zet@lBaT3Fx*tob>MmK&Wt)%*J^31)DzjZQePj9K`1$`t1mww7+eTXZ@;W9Sj>=L2Lr4B){&{363X;6B}@ zU>b;G7xpC9&1IBuJTe@`(QpNhJDHdNE^%s*is(6S(m4~hTx5GU&_OVasvUv6mPk9w zaJ~+Gz{Y{QV670oh%Vd`sy)b6rHO{hvl4m~vD5nwGyiqz16@-9rSOH}OYqePI8PPT zE51u5-GUaWG#@_8P62NKqt@nFq%FFz4YWK+6)fAr=_)KpRa>Q5_!NoaJ%rdF&UnNY zc>{WO20ggk^EhP3BAeo6n<~sX&q+^niMtJp#BzUhApX!{UfQe#-U)Qcit1}Y7kWw4 z5~9NTA>g&f%UUbUu4(YT19)yQW6hwGh8Df3A&m}mwFP+`K-w4(Ucrap^t27Znl+VX zUyNMBGuBO4#3IX4U`V`dIf67DCW88`kSJSY4kj$!R&Qe)qn_kZ@MZC;Wlq2rn@!Lk zs%I(bRYH0}vaEWHW^BD#c`0j)m936ft*$gPMBw?ZY_5bJI1RUElb@B}zb4X2USs(H z{jsuDafF-9e;Y->$=wmc!f0Av9a3~}3A%!0VRfrooMy$3jOCi~lxBcc=|$tPjOR%#aavet1(Xn-q4)`}S2?4H%n$0ixiL-bC2#U=tVDT7?d4-))M6|!a!ENMUyDPF z@HQxW>*sT;BvL*x(U3xQ_)8K{zOt$0H(vc)9v0VXNAk1NDO$c7-HA+_(t7LX=T zeGY)TlP8d!YrJC|O7S8L<=%@n7PZ~+b7UGQ5kmjtkxb2D3K(nIh^PhZdQ09Jr_z=( zM&KvRvoHPZ7sdGY3WXUQ-yVKOltN)fn;Cbw_;F!7>-g3We0t^K*ep7t8)t;M>AfXH za^=>aY4ZC`v}7x?=F_q)7t1oVqIwB)@(}4m94^|-ap|MS&;fb};TFOvZ`8k0`=Xz^ zm+%g}lez)rC-@=0=ymyhxI~)+<1I5d{=kn+nL{v9lLjKwS1MS)dpI!s(tNLda8;Yz zKB^4Fv4=?9i|OoQsh537puesg7sONlaU~+Zlh=4WDtN0y*xa9r<62mN>Z|0%@2@=S z#uep8e%_ob>!{EQ%pY&3;5Z7%%Y!*Mi1G+=GlW{}e9&3%7>wIw!9jE#e?v9J`Y_0O z$g3$%?xp1yB`fuzG91%>-Dig5YTuG2uTzsQX|M9(YsTj99~Lk@q3AmP z_SNp;yKDF^d3zMH;ii;8RpU|=(_X6};6Hed`yMx zP1Cgip?-W{?T~0|Ul76RE&{7Z&Y%9<51+|%Gz#Z5TwFT?nyaI!-};+uAb1?R;r=)u zPoTy>M*wg?Bm#zoXcg6i$Yp2qDaW0PDKMyS2R;jTj>0Vi5SR8+h3FeG2Y{DOW#2;? zRCXiFQ{n#MMN${VNllPUf*^GgJ2~^+HO#+1=o9mwk+3WdBoAC43qlF4W%_77 z1*9{OJ%zV2aVTmB{lg`XX84CEDn$WR5|%+9b=`OV#N`cBJ1-=&yka%jdjv;y5kFcB!(@+LF} zxMlxEkD0UI0EB*apAs4rr=|DC9jEt!w(RnJj>{tfdT#(`p|^Z5kbqYOE-Uk#R}Eta zAphIh$+z?`+j06od^0=!U*Y6}qpz0_8Gx$g%Y&`&^q;jmPS0sM=(*HK&wKFeg96+a z1c+?sVDi%M@bTGi`f3069jEt!H?qs`IUK}r`CmGz&Tk7RC|=#5&E3b z71%I7$>92J{B@A4`TfUQnn~aGBK>giYrhsLc@78gyF+`n@2TM{0wJs#sP8-)bCGg& zV{RfK&Ow|(QvK)4v%rTv+yDES<43j3*caZ~xF?ABrt3W%0}g!M6@CI&B91~5_8%8G z%8+1g#>^1;5=grN&x{prb~{}XJ2|m64{+S9EzC0IK!o_FOra1l)e&X0S&JsM!XxfS zk&H8*8W3I$EcTs%;*5&{|D=?`x8V1TATc+d)hj_6-t%7$2;%&e0^IQm&T9+89H2dP z1@O0satIf$Bl*R$OwxqJ0pO*kM#5Oj=i)y71G-S=xo0T=FWz#mAGYf2(OKFvmp>q( z6$F)W)rW7eM^K%@{&=(3&{Z8Al1RbPpupE6dkH~3X)VIRJ>(~Cd-xUk5yjh$K_>rj zZ*~FpFFz3&Lj-o{S^y|+o1Cv8v$Sun`J@PmOCfs~-n?WG2*U2tafzdTFti9wWBv^b z)AfX8rwr|3*9x0>hKZls#3M*lA6`!HJ7qpb=jvK$--N~@vA`w{HCb3ugm_yI^9W)oMALt=lM7;+#IB{tE@MA#22b!P6W*jhc$5lliocPo>X-7wi!a1nGu6%phIU<>l4Ar>4hV zFZqQVqPf3bXq;F$(d=fNdw{0J=jtn&PPMmD<3&Byo9h!#}ii$wCJ9xfYJn0JD?4g3ID zrCA@$t?vL}+z6$)_=E_fk%3K$$r$TH*sn_(ToQlqN- z0B+!*sfc4sr}Vv)+4^(Xc>jmVK17BXpCd_lBC#2G%#E8ogCjXIh_pWK85}M5TjVgj zQ*%s0KY5l&G_n4%TAvDmFENrI_pCN%U7(wR_mj!LYf2mi%r;HU&{SsHR;DRYuEWWLdt`V`2N;86bN|Y zwi(dfV|G24Il!{(eB7c_Ore_jbJ@FmgI`_qa-ie*ceiS<|B{V~^3nye444WfJQD6;pBq(wAcOQ%>_c7=XeI?!MkA1!rWa1bJoo{750 z+=NMv!}Y-sN(R?QJ&}v+y@P}*eU(}0>remQ{-Y4)=wAzx)IUe}L{1>{JL2`Sy9R&Pok9JB#qjj+YP`(Uzj?@Y^sfp4eNNp8gdgl~)W1UsCqw@hW#M-_^zXf9 zw>`4y-*Si{qa_}DJXcHHbw`l2?a@ElK9w#`OZ58m?}Ti?T>V@1_4xhdMVDV17HXgB z-%y}-^zRV}C4=iVkLBX}SGNbahW_R5Zw|NG-|qOr$M5%oV4Ut|`&-A?2KwGRu$y^G9($c^m`IduGAU4_U2hXD zwfQax(H^qNOu@5K-DAeVSZP=6G1aGoq`*)R29eHv1;xHj_3xG2`ns?iB+v+=+!-h_d6+-agu7S`P+J-9w({R(i=0k10SfzNvgG` zR-c8^mF`KZa{!8JK`U5P?;&^!t1(e%`=L<4iAMgI4QXJxhAUy+k0<_mxs zwsymotTC%Bt3-vv&1>9bWGOObN6ODeVP+GN62J-L!z zG9iPjopN&3jTI+v1nJ*ix$}2>f_W9{Vt2*W{1PcHXVn#@PNj7z-W5KN*T>Z6WBv3z zea*?gt$dZOJVVaj1uLH}m2v8Lu6*S*9rjW3x+wbPT!B4g4P6M=SJ@M9!I1sqP!w@40{g};g1}o7OR(?wryopH-Yvgd>S)NoGRKqIRP{P8#mTN@uY1|%n zHQ)QB&pG=tybQ<(C%YYZc8PE(mnUlf@65vAVziLjvjtFr#{H1=*|Wmu!BX`s zv@}OB({LZRdAK_^CDsmvpjx@n6XT%xSPFI$*6b%@4}ph4cDNW{p0}>}(~T zePimm_h-lrz6|Z>PXX1lG&&}z{EFvh`V0Nbj|1Xl>`=8569s|P{^XO|2)uS^AEM8L zbvjR(QDQ$sgga5iKuM4J5O?+@BC8kX}V}-dMKb$rp_{+%5!RlJfqz;I^SN@xOY$! zRdgNZPEVSUk9l*Ar++Q_4E- z59)IsMwelU$TAr2Ft#6cxbE1^QEE(6WiWp88y+hO=*hV#SDvU^R>^EnLbI67EKgUC zkSs{(mzab*Wb6ks>PV;r&prtaMKVoOR;Z>Vf9jKv%IB2~`Q+|Dl*~g<2PE@zBps6C z`iy;pPA_rv<31h?p&J;Gz}cWivOMljcCtL~kCZHMzYH@~2h{<~J?=;0*~fht$u#b* zetcZ#c?f&kNq?CWBKZU6z)LMA+27Yt$wV`(2t8j1+6YFobbi> zequPOTPe!m*^;R!nQJPCdF>wtv*j%1pI5I^Iv^$H~A z_8`@d{m)JxucF=k#glG&Dj=C_kR(YAH~9Je8IFs<{4x9-Q2&!aL7Mu1Te863y`Kv# zF$((!SsIznl71litDj`>b9M$l?(raO5}(KR9uHxp*@IP22DrKpNphtFN|Tvx+nioY zy}lcqC|ho>(`Pu8GD6sB*@d9WnWE1G7%5uuD`_urd?NZRM)zoa7N!ruvrp6aL9**3 z5X*s_gVoCsH9dU(--#TomSd1#1v9-F%GLo@>@mCJYzs{{pWj6pkS2GZpby%}@WvlY zZrO6zZCZ^SX_QrN)_qQv*LQDovOLYaL9&3UW2*>EIK6n8$LU%6ES#RI&%){Pc=mC6 zIFe}^yBvH&WA^|CtFfxDPh@FdhCS3joz3<=7|FEu-Mq?cUn{6}uvsv8BB((ps7Sz> zZNvK(dTr)m$E!V!?Xvd+67qPAqbJyzKT^*{xL6c-5_l2CX#zeq7M!Cn76Z!90MGiSPMt zi9QSZWiI+F01EvbBzf9#Hu6L#KY(`lTKfb*NNerY+S(JzgcAZrd%NeG&~?)fIPoio zz$Yh<%H@O;rsF#2?YseCFkyWb8_yC69!-J}Q|9-dNmR0~*&a|@$71gEm;Thi`0Pc5$j z`rVa!@BY_p_q&Mqg*LnxGId*UPk2;ru;;aF(}aNb>t7%K;)nGrd=D2^RAFW8Z$W&d z;GA@SV&HhF4SL#6e5@+@zQ7Tb=5s4OT?j}s|L$~Ye%P?h5d*$&1Jcv%ja7{2uJQE{ z)#rmU=#O^WOF)*VeFV3Mrt#`WJfbkNR4+yxr1}j0JIe< z9O|b9hI(FXVvc~;CK7b?%*oi}U>`quwXY9H<2WC*IeTLecMi)*{&=2Fi}vQ%>>Zcm zbb5F$x-DFTqi1w1fJ=^>@fnpvaXGmbYnX#{+ygOQPTR@(5qmJse->|BC_fac8SS3C zt8N#;;CllYEs~eS8_obUoOA}Zx-X^dtmwLOVy`*QQvTF=q;qg>kxjoT=_yw^>AUp( z)rHl~7WVrX8Ir@R*VyD6&OkwFLVH%%WNMGt_kQdH&ySSyqH%WwReif;2legSzYXeJ z4`>YbpU&Z)zL`Iz>s#+tR^R@F_?Fc-n7wKvy!M#CV-#~NExPN=cVyMKCjrG}B+!3i zJIK#P4+Z%NRiyJ%?Bi#220s%Ve*W9-@N+)wS9QwrvwM)AFK^Gv&j(j#<)^MY46CHB zaxXT~_=_M2z0=_uH5K0>|i?>9%GHv)(B8$N5l;nUaYH-(Fj0RY=~ zYNy+dQMh;>({>1saq2bv(VopQqR$S70#q% z8SZCSz*(*@1?ACo{0$Y}inttI-o#8KE8<$KuVjUmKUd1rR?tg57DeDNKCJJKPlt8m zH2CNVq6Hk5jpxM^{9Dmi&LiEsp@RDYCG9J2EdF8vB_j5zhF>5s%`d~oHIODmgHz^d zx$uPVlX+9PAF-~PN`P*^4mDkG+wtdS&dVIXCl7X%rWpa>#!X<`KfjVA#pbWyXB*HK znxA5y6;y;)%jT>?3=}yc4axT#Tb2tL+b~oNI7DgqtV+YDm=xc!Egm z!DlhHg^PFFnIfWeLsS|T!-X5EuuJfHPy^@vo)=EPX4NQVsk;x@)B`I_Y5#K#D z3*sii__IoIDE3z(S#A-JcVS4Oort(w5U*mT6gRDk0)6f_MQdJ*ky;Ni;C&i28rGI2=o%4kWuKWUy`56uOv*pM;l_pX~#zeX0vX3VoA^R}11E z7zXp|Z$wNZ6A30AQSa$il0vB^Kzw30#2tiji^3?zMr$M;QNN8!%CQt$gJku?f_O74 zRcWP?L_L#^sPA(tNuekazlvcbgX1Q`7@;tB$IfXa9Z{d{!jMA85%F?Cyo#0De=Qu3 z!scis9Z^qkD@mbYL|l~(@p8hrM`4Uk)HCUby7Oj-V=1%|$?Bzo_;yx0Un}jANHFP$ z`f<0C6uJY+u6CGcdP#F=IN~Hy?^v_=j$9pB} znRG<`ZMTvX8coDJt&xFv9$`GBFvh^WLDCWRe{OO(mO^bvR!xBh{p)x$*k17OgP>bmK{k))HB^m zQs_V=lQkJw#}dFZ3Sexafk{WsgIxep=%adIEfB0ltn^c@v|pm0Nk`7FqLlUnDYOd7 zM53q< z|JK{RGEUi3P|kV&Lt<#rH2nJ|$}hNcXwkWV*M+}d0M1C%b;EHso>-m5|2!OCmrh!m zFcoSXj?U-vKXEf4B*%~<7oqrn^&X)-Y(3O_gc6BOa9YhibD+q&XAXgIJ*8sfPTZPf zOZ8%(A}@iP188VoRvg0J6#Dqc^Ww!$LUz1?zjmJffz0@EUge8-V+|9KA6>`aP|dZ@ zez^LvSo|)Z4+Ue;6T31vv6!TRu5VumdD}a>8b)L8TA9$|_^OVUD3%h!8QDxE3>dBe zG%c>s4%f2g0{G3m0$rp6U6-;psEQAzXsHb-<=ZG4!U+)f{)C6{4kurL0^KVNdd!Sp zNPifVsAsaA$4>6}siR?1;wmIt>htlI8tm$tNPZkE1eDKz-_3``04|bGa+|HLWFJT{+BflT|;r(=n z;Yk}@=YzMmAKtfi7~amL?;syM?w4`{)E}I;qx>TBnlgXJM{XT{7y9Adxx?^=5njv( z?+`z{89NMbPr^Ie2k)=g;<#Y&+XEOMmTcS z)t27N{_4p0TWR#p%tdcM@pj1dEJDB0LjO*?uRDB-_*6!N^*f%iopvF-#TMSb{^Eo8 zzz)Onts8G`16XGf`R9JHvjbpty&#sw-BLLnEj6AI=)^tTSy9W4L(`LC1$hh3*h2*5l)YJ zVhdKrv2(x2TwKEW&=!CNjjj^|BCfcOo;Y75_id?f!(Y7j7buqke39njTn0!m5{H2X zUo_T<$3B@wKDPt1`okB%QZ9pPiF7L+hJWS{;UVUzZJ++P@$ zU7lti6h_X*$cH!#LwGa+PdMlvh$#9O$RLZIBOWbV}r+!uxdD@^EV>tS-!DbkbQMd%oRtB0{+YWL-* z)mE5y$4E1c024?RAcfB!vK``8-Ms6%s#_*Kc()vbkK=`6k9XTOn93qvjC0WjXQ1`0 zEcR3V8I2J!Y3;EL0MQ=5K|Gu7;cQ3d{3P043b|*w?}NuK^xnU|l6H5i=v;u1A-WXs zPE~lG%c=U`k5UDy-)F+Q}`S29l3 zxf4AGpEIgnMrq>)X6Mp!o+fI=yOzji0>ee~Rhva_o1+UihZi1#Swm#=EwhK<&Sq}o zvFD5LCN$g|^-l;G%GDF9%}eGbo0Ch3af_b1xDsV>uS#^`rqDuM__67WExeaHvgsF% zXu!}H+hSFl;%9G)zBn02AOHwoI}{9awf5nty=1iRU<;f4TiHcgcQ9WPr$p_%Jy?YsyZwa&paI|M{&_d=fn zTA?XDrt}T!BJ3D0h;3yXy2{#NzQJmd)?`HN4VEs@0Z^2+`loc}P+! zPDgvanXkESM5Qa+Bp;#J6tCJO-%a@f*_0Eu8rt(z2Y|fB5E!1=3Y)XC(rivyk>4JV z+#ZW?vl<-4Tg4!8SDQIf>0Hp@I+1A3?beOlUk~YF_ zwzcM2ea3FyM47jn?E!=VgnsOIy9XtLtyqt@(u&t_rl$6o4LgZl8Y(UNjh4tgY%0`; znc8g5Kz(29oGpLv5xXpCIQG^Iro5?Ct>`z<`wQn{* zy;4L9E4|uWjAsh0*;V^FBy}r>+p%h&W+EMntWvI<&9_m(l~9}MTurOIDvfK7dEk0y z<(gJh`Mp02zf^MN_cHRke|COveJsH5qc?f{jzE}+EPy#&Uaxx71V-D;Kj6xNkul21 z4W~)(M3b|N*k)`t7hVxyXrwZfoD{EGQ}}pQ6aKArzX;fDjtrLm2s^5AIei-YO93A2 z4+BCmb}s)LzCQnt2Kle|@sFL@IrxW1?Bl;OJO2xU{0m2`$p7kW{0B>aggw={`3J%v z{~vsP{#OS1U+m)_dvS8`4@bqve?@lwFAwrB9IZ-Dh-b9@)L_Z3C;H)iS0HnE=afwK ze_ICsx%cloJ^jw#`#5hi2W%y`atVxn@Ce2YULmx78#LGBHc`%QyV=)Oj~0422Xs|; z=AVbMv`)T&ozlC<4>HH+T=zN9SnnS7XtmD$r)#x!Fs|C&+MgmuD?9G7@!BP?!~FG! zw6z$*Gp=^ofC_$Ddh(o+L0?_>TG(^7C)~KwczK#V(SzJ@hU_SRA%Me5wwY&rdjnx4 zPx-0UFns@)uP0)kU(irabZX9fRbC|)1D~|S<>*6biP36z2BTc8ei2?yc_X@xe{oOt zhFHUmc+zyJW_QMb`3lv_wb~{ec8e!iD3-Vuzm5TZ`m%t&o{xbbUe5vn$<;N}Q-Kkx zCzy=zfYrzEXUH$wo$J0oM<4Tk=eBWtc>AflARG_z%>5H4UEko-Pj``SHfsKEOx0)# zU+&w)ahA8pie~|LB39+s&U<0t;m`({h&J;&zZc80Z~*%P@(>KgFhh%l^gsFeNY zYmtu*BIk%xw#{*a7$AD>b3RhB`ZXwtOUz~GI`1)$B~~Lx)7m}_EaKg)IEiG{vyenL zNDGMF-4ZMG-R{!20L25C@wAiVz{fHxEH^Sue;1=hE)8p<6#kc$k>d zuPdXy(@)c3KYng}YfxSA5gQK#r_780?GN8K{%`nZDL%!f_)hB=-!rpv^EZ$^lnKvB z>O}2uHlC=h+$;$N$!;iT0i9B9=<`0(TRy>tv*!p@D1lk+lmVKeuAQcm% zt){WB=6qsN1I zeZ{W&d6&Qbgkb%C?js3~4?PjK9%N<5hYqBjk5cezj|=e83w)W7AJD-SB8a>&^Hi+6 zv$Zpt_9q#0Qgx-drwtO@aWBL|0pusH$qp*2xavlcJ?vth8BC@oZFI=~|&7A+B z_)Wd^t!guC; zD0@~AWow$N#_--~l%*uY)JO3Di?74~Z-V?|cH1xiLd@pm#g>1lXAb_Q;HKnvID6s; zYtwFYntQx(-Jx867pWlEUt-H_cCPnFS>>8D6a7#0Cs%){TNuW$3InY6p;T0SIKsuz z4!K#iG-S-@;2&r_;5SP66*G+C zVZe@6K`tqC7ukf#rHRY*oR6F#Lb9IFK}exaZ2D;V-dObd(eRv`>{lWS7e7Sm#9e@% z;VU$}S0`mYPz@a-R|)a+pEbJ{J}-NhquUNewE7w~ub>Dw`4)o6Xp?-)-RwM!OOqX_ zE{?!In?R^o;>@DAp{U9hVe*8Jgwe1Q?b^bZO&6OZ0a;j={N!87H_?^rnys0hjrX2a zKzr78FNWZCYRPF?<9XoE3(fKSWxR!5hShh-IxursRpxz||5M5tQsLrNA|J1a%4dUU zaN**F`__J_>)Vvx1+rF)U^7frR81C3C3O8m6^) z-<@98D-CiVYQ=?8i>MH-r5~P1nVCB~lH93lA|?#>Py!`^{yqVmKt>4gX@76b(%<`w z7ySK7udmy9!SR@eLvp@2{ENp?mT0&w+Hg-H9Sj}Ze|E0W!Og7etv7s-L0?_>BFI@A zwFdk(jz!XI)E-7PNBa~;CqSaygmTpOyH zLhICQ-bQFP7HNtuY~s4iKJgM(L)g37jB%^Y&}zvRDRpp5WDO9w(aM_Nh{QlCV!R#Z z;ko2|P1jFR@AwK?ffQy8!6yIHAz94Sy8UDzI~#pa+MbE9aD zWE9qSK=2e-;o`UPgz?U~L~?%M@`L#TWQ)D@plZw15w-hRb#q61eDL*5Rj~&MO1`EF z@qtztQuU<{02tEF6`GIk(Wn_!ZLN7n8mi_Hnw=i=5>l~3BgIxFG2*l%EbpW9SMnxDDE=o?-Inu>&-SSB%Cw`xu;l7%j}nUYo5yG2 zGoBst8PEI*y-Ggc965svU0melN-K_{BCJ@WLfI7vVO{lmTCqqshwE-gkgMMqX{&F) z46D7I;(mzUAs!?@MZe`3hfL^K?)iWnxiJa0Uq{U`-?g7g%J^Q${JHZF!_aR=p~K9d zdtWE*2GhSq+Vy5gXpjbp%_&vJ^JmlaH1UyBuTPivt}arvwz-@77qE%Y0QchLLvj(WOq*x?NiI z=il>~zY)(_ng0O*W?}vmW;@d&(Z^i=Y_O?E3VqsZ@{-dyl{45xKziK9{^Uq98!mjl zssKLi9>Fr!uDpUWqK%xRJ&%O8gs=Z@A3af2RiAXwHF?RigSf2novZZV-p`u-@WDsj z_24J?J5m7W4iBr{3t^{d7dWDNxmIv*6iD9W(z`2?uJE+~M7y_--Z#H3^je|XMU&@| zX|E}&-7hN(%TNL$B@4yqTXTgtyDMZ7-npb*g@m6p5vca>Uu4nmT=yvi>D$LgA3ot3 z?An8bGzf2Q%`A|Gk)p%Aa)~<#1_$W2BVak_&#hj;?Od3in*E^D(dHtbseke`j1|Fk zqIuAfU!tbNnDVnB3qRFruQI-81lLYy8ewxD;bS(0*0th44xp|03+wM>@3m~?du({y zQSj9QZg9f&%`#4w>&BU{4iANnj;Z8_GF6k0VI=$Rj-r{M4QZXC5e8ib0g91{tBDSl}M(^j|(kl0#8tWf6gMm zoccid(f`D5tlcC;0Rj-IF#N-fBt|xp7!Hbu7Eu&t;bHMAgQ-f7`5`jmA$;Vh7F(zB zxxr4iwY$x~0WBWsOdgngE@AIX`Z0_1OGO>NaxY1_jx@%o7ubWnsoPT!N4**N|A zw=y_&?Iq$ddt8w2ujcl*r9WtUz6J_`Ua82|p6BeU{9>xB?fENYM2`y9d?(ygm$q{GtwC^ikEfv?S}nsTfRxtr=Oo9w&X9U9P=P4ANTK5Ucuha z4}dH~U1+b}vWNb^X4axm$lL{`*6H1vpI~~o+gQJol41-6rPw2NS70@hiH2U3MSyoK zZUBJk0cGC-^o@}(LWz35;#h`8OquZ^F|4@73DrQvC?&$b(&3l?(HZiu>-H9<=D^)d zTa-dn(Ct+xsThD!oco#!H==K~L^_$l{?#e{tCJFYwSeu>xp4n@Rj2f?;ln9@^ZAHS z=zs{n3O^K;2VrMmD;mfdSG=p!y3LJ1))mdCq{H~CHx5wNzf@TN!CWVgmsJ_B=Sr4S>Jh%c zmgi6ir5^H^B1SD$J>fJSXtyhFMs{*eKwI5;7_>-({EQvrwub64C|P~`9vD$1Vw6~1 z!di$aXf5uwoQql-ts2~_i@#l$=OK&1u|Wt$5loQ_M!+X-9TGrJFeL;dNCt0?$=|LC z1jA3w=0WfTlkb9&&{SgSaDsstJ!)P(G=rM=VbO(}d`nF)48AgzlbV|eCP>XM35L`Z zS!%jnFgd9y&7|fuhnlgLnhqCCPHMItl0l6uo06JROHG>#CMPvd5{$fcTk4Ng$EvV? zsU8F!11Yz?u9lG}@7+LM!pd67L?HUS3%)n5VL*KXu z>K0GP?+E?dSD6pxJp=S4m$cL`!+T4EJac!gJP_FxLIaB|{9Zi4zcQXZf^5)m*Kmi1 zBS8bM*T606QdNe5dMOl3EF}RA@{1K^{_QI#0q;x%0db$P--<|Xz}VL{uSDa()UHHP zdMmo+TjnRFF!X8ry{9xSfA|&{@s2@=7#(=aa3&VLG-!!DG%iBQz+{K2H*X$VWOf4k z(dPU$%ocaK6nJJT9&anS&tLw2hCO$k{FRMxNBr|)e%y@Wn=#ZKOp%PPFEX1U6w5Nq zeSq6&Gs6Pw4;EJaB;?{(S=tAvT?V3=wVnBVeHQv{&>-Xc%AgQ}M`QGu$Fbv*kw8oT zJRkjdyPol@;P}k%D5nncGm(q_=(Lp(eyAodS?rt%He;zQt)>ydQpXjh7@A z2ErX4yzz-hQH)C-DR?PRO2l}~M#S0y`8DtZ_Q0J=jk{FJf(Qnpm%+%90`p3R`5gD@ z*_{bgqyJ9uvrqps`}qWtb(n%U0~;G%hSzOh{gxq=9~(;Udk1rQSU_{3T;o6ie)xk= z>_Gdo;ZK15u!54d51V3WGovk%9BXR#5Y5Pg9^X<{uw>S3oJDBKn}hLAVt~>0W6igq zEwBqz{juh=ozVB-7N{zXHN0$xJ|W|8QsD4C-6&yZ-=JDO_zjV(H3RBw;aB9FEB-~# zZ6ag@JYpE|p*?7YS#lUBn%Ga`eN**B3q9L@63FlU9hBct@E(+38(b`({Eiqsp#1&= ziM#T98i_i57!b{R^$7iPg@~;T`N<-`WTzsBJ18(pawwqiw*VQaf$fE+rrRCL_M`(< zw%8Y{`ZDCg%=tqudjXIwA+|hFP#-;;@u@Bq)^8`X2c zlLhuRUq*VSymZT~+4V2gFcMF}z6KnY6#||tZggNSQmlDefVjNXKP zY$xagln>t$#vet4=%wamZ-0Z(5uevEqYS(pHEQCHVye<-b$ zV$Sq}i8J!o_vWDor{Wd-e0|D1#@GFlA{L5v_pJj^)Sbo!`*Y6t8CPEOL$WqbzLL8U zH)#ngEeQW1W~S29QM7;gf#kE$hERh<{t}n8W0W)rw)bD(t{?Do(XHhX|Bm(5?N zf!Qv3tyOw{;HRf54Up}D0x#EoO{yAql8nRPg2gSnG3C7;_Vy-qg(v1Su|s^&?7ry`JKY zkBAi|-&G-|+2?HVGE5iy0wINC!;&9@H-(Xl9tZ+`sAeB1DO}$edr}d+;uwypkeY(* z)L8jsp~pd(3m>;xEyUg)omrs|cjT3u%lGk2BV#{cf zX8t68mk|q`sp!H~2wF+YQxMOKA#jqyaOLj)mB!}i@T=VeI0k6%)J4>7z`CeqI{FdU zY*wo?SVcIPG0b2bq@^^xRLe!zhq2+IuVjsuI!sGp$8V_i1Qfier8F;;KVR;F8U!Um z@SJyQUDPrtFO(e1a0TwK0wl?=LVh0d(X4nvti7wzBDrq#Abhcu?`PzN_&Rzm&Z$^P z`Jv>Yco)6CXc)4jYB-d{Zj4m)x}r0YC2)&exadt6$ji}rwP!g%Y1N|F77TWPjtwP8 z2+)Fj+&m{hODUJ=bp=Ce_f~YIK;DG%<;o~<6&j5v!MA*0ymPzUs1iue?l*Oh_AYCL z)$oOavFg}~40c*s$igv)!urRUv9oUcCK&A3)+6ztQ*e z5yyZ&ccKxo%-9jC8OaR^#Is!S91eieUCue=?L9WtkIAGb zXS_5==q7IomCy+y`OVt^;|;9AbGxu10`rG3qG@UI*A^^TXKS7T;P+4OSPXV!plzcu z^aj863)!0esi(d!J=2mf2BWC=pR{+*_5+wpxo`y!iu2+k`B;vwIzaNp<>u^X$SPe# z9=)OJ7vYm%&N$px()pGgS8L@~2O49Hr8HY1Y!8w+p7zeMp&Hx@G?vCxkVUV>a`(AW z#Di3|&MpcVpq;^3WyYYSMu??u=(m zbfBPkw0&~Qhs=P~A<@=8j1JhQ)XUSBc8anen89M5yd11yyJ#~}JzJ=#=;002-vmAv zWv~*eoO8*iSibV=MlP}7uIzJ%3HXXlhr5uP(iFX(=cAg0N5;#hTg1Wp5&GSq>*B{s zFx(DEJ}i=_?BQ1D!$?`&omjMW+ZboF(8@fUwcf@4A`3Y4K1T!pKk>iG@=p}~@NX&j zI{cqP{`pbXrD}jb!}>6mler(1B9U)Vx+1aUypA&ciewcF1g!RU%VUz#1MrMp<2#Eg zfpZ8kw*-z$M+kgae<;tg{*dc@pLZ!3x?+#{3)WrihUlN{V^8peP5pGv7wvUgFppg; z&>0F}DCy+R^9@5Pt8W#H+g)x>DHaQYD?Z|7o3UXoft^>n#M}vGgR%q1JHUaSw5JRH zK!T677GNgQ3h2p`uxm)JZy1gjcAW-WhIj!OHXWO11V=v36=FIRHls^XyQ($%GWIsw zyT01Yfd_NnKH?04^$i{d+y!e4uHJ5U`y9)i3;Ms;Z*6=#AFjhzZLh~TeB^GgpYb&m z#GO-aH~tya4{vlpe-*n)>*1rKSE-oLKNUM$Dn`rt+4k8Be1bJzHVI8Q0T{fx^||cBSVY4m!D|avfhoDibU{x$Lvk0Qxr(>2*&JAAv|!R@=Off_8lX z?H`wA^pCpk%P?5!hP)+M=5FLwZT?dOSdZh-z$+vFgI72;p+gW)vpj?h>h*D;0)C@h zeR$IyELG2Afee(|1A@3S92p!^QG5~bz?+ndyvb7aaiPLcqMjwBD=xsoUpWq;qnKHN zfQ?-Q#Lj!on=I(MofSRJ{0eOFG(!ynRXyfWzyd|sP&cIOLKK%b--17{S8Mh#9)&yl zw3YsY$s#JrXw$>7hId}~n4c$EWJfh1mR@N zrR_RZY4p~3MBe?;cLQ}ZlfIz=`k-iw0`&buR^_dzc7VReSc z2=ml7S9$C=BL*<+l_in6%B#xAF3##nP|9ipOt`Yn-FW;*tQ3g&7)V-!gu(^9y6z5C zUvfv@ngE5HorX8_0q0dXCpaozRb2QyH=!QNPFq|d$f`HNrKslZKZ%BF z8chc~KV^0z5aKGdty+>BXtiWLOQM^3bnZ>k$_iqM3-Bi1z~AUU^J4n2j>*B->>aP? zL*Kait-bh;R-_k(LJzV-$+Y%7)?3HlA%!aVo^S*XGe%7Li5 zA620ubQ9819ny_{NSAw% zNL~N^Q%?pIzEBk&TtdyLypN)Q_HPz4c|2fWKk(hsfp0hbERg?*p5Y2$4ZDd9ow@jD z>lBn1zEBn(Je;&v#7jslI(3^6%Ps0x`axdkf)qJ8KRXV8iwmC{UtN-6@Rj7g@txSA z-#4Cn-229N9~nzvJ*L z`c)xUxa=F9HW~v&=*NZk@h?_|9^l_39o{XJ)$lc-6U!7Oi$NW#4641P`geFy-3B{7 zKd*Wbp8HDH3Nu9ykOk#aedY$dy^onKcpx-B$A$~L`E}qqvt`WCV+;rdD~xGA!sAydf_h!>|3`QX}84iipbPQF)+ z`48gFvRhadXZG>P^A&Z;Q;j0;edBqaNHw%#S_ra9%pMoMvbe5`&xi1*evsr})jhE_ z-dsN@{(d}+of+lSe-5>M<44PHvHTXvZ-M-V@P8RTW|$Kof_3;i@Ez=o%e9)s;F1N$nAIYrI%P%ZG6tcQ!stw+XU}s`Q0SH zRFuB)P4Y{9?i;^aehcKcNPdguceMPDk>9cMJ5GKl$nPZioh-kH%kNS0TPnXZ<#(3+ z&X(VD`JE%bXUOkd`JE@f7szk5{D$Q>Uw%XKo5IN^NL7Bf%5RVS@}MnjoBVdlZ-@Ny zEHn6em%l6Jca{8JEBU-Epl|#F`MpejtL2yHr~1avli#`WdxreZkzd{|*f)N*{LYf! znetmIzsJh&QSy7Z{7#nNN%A{Ee#go0|6}h>;G?R}|Nk3A#DE&t;_|ao3y4bb&c4rN z1tLiZnE(;cFi9rKK$00J6A09=qE(9vEiScat)*5iF7->T+PF5g*5Xo&)+(;0R%=|^ zQoq{bQu%$JbIzT)Gnowd)xQ3(*Z=oSUMKh7^E~G{=e*B)&)j>)BK{vI{!bDAj}ZUM z#Q(|S|3vYBy!fw)|FkXCo@qP9|Ch!89peA9;{SH>|4H$GoA^%;<)M_t{|ChXA@Tn% z@t?ky0U7asi}+999qpM$UpDQTMqh31nYKy%ze@b4+djmOn-`2H;y*2;?wLj_hZrNo ze_A3!8HxY2FoMxW{HNPf)I;%~Zh!Vn+ag*D{RZ%!Y4pp%<`%){On?b60Vco%m;e)C z0!)AjFaajO1egF5U;<2l2`~XBzyz286JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C z0!)AjFaajO1egF5U;<2l2`~XBzyz286JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C z0!)AjFaajO1egF5_wR4xoKn)oeVWD znN;>x{gyp@@^I15BkkOCByB8;9g&y+cn@?pk?vPU>rznCAIa$JLVp|S{{yFaw&`+1 z{p%_PyGiSbd@Yi{^9ZGI#!|>{8!g{C@`RALko?koIsG2XZ9=}Do_@e$XfwsPkpwSg z1d0vGH<275H=KoNOYX83M2 z`>rD2p&?46+nmPS`p_t}^fRD!sMN|Ue<5!n`9E-qJko~xyE1ty6Y_N=f4Y!-*NrmI z^)F|Fyh2_>TPVo&2$E}WSO|BJ@I1rb22W4>KA4XlgwC472>@2x(_>c=|V}7b)0~BOPCo2{gi&G z@>fGiQu;IO2@PtWlM35>|CgfK4voA+CqtVk+-*iUW&TOf#4n?bY!fP;R;aAcQBm?O zLcW~j-G$`qWn4Q)&J~L5Nij@{Dtx!_9wP4zTx7m{xg@+~CqE+k(sbH-y z39a3vb%N3&`8?r0BMR?HIf0SC4I8%O$E8MQ2ooEI>HIi(zLn0)e1Y^Z;7_cZ#8Zf}wx3(BDe>FZ{qjBLGo)K7K%@|2=s!Jn|Nu42_WfEu;0HF!Ucb^zRk= zmKgNcjMo32p?`&;f3eVSA^qCX`YR3nHlenW)J{-pl-_xUyi%SFk9g(D))8HvY#uq0 zPKJgl=$qG@a!lbTk&Fh;2Qt;}U*8wi?#YqA->+oXWn?c&+3h30C)v=%PT0KCu&L_L zkPtPJXwVQzzOw#p67oTkw-k~O3i)P|dvfJS?@}S$M#5urgj9ba_Y3(hl7Eb}ig=BG zBtKTjr*uJ1c`-!dNb--V{tlIs{Qgn$4fHExBRfPD-(aEhC*`?D=fm=R*QYqYOP=qf z^DXjxJDp!A&xh%JqdebA=NHIxOuqJv49fG3blxM+*U|ZMd7h;6W_iAx&gaVWMmi73 z^Kv@Z<+)DhQ{}mZ&Zo%pGCH3u&ow&NAXXpTj;z+ zo|n;iojND}<#ayOO+}|&M@5V2DvfO)Tt)SH!^GVdjsv`G)!%N51_r&AN7z;uT7f>d*Zo$ImzBjh8nHvoqq*?#P%W{Y#}i^#4Mm zg)}Nn_Et(c#(#No`^f2ZLM=AiDr>G)14U36Sx-j(4Zob)P3_~^ksTi)*&FH~897Ya zyKCe?5oSAuc`P>!>2ERgU;8=)|G>zXMfkEF zD4w7csS;#wCdxO7O7QZCN0{79n!DkbtpvIHWrqGlp}(E+l`rf&l@~8Decw3GT zW=Z}8$!Y%buuz;qisviE4fXGi>{x|V4YiQ>%F*HRYiUBhj^y(S$u|l47LuP*NIod! z+etntUyk|x$c_}nznkRmeAf&E=_mOR$;FL8*+^i3bS-_*{RQcg+%ss%CypFPa-nM( z*}k6YRU_$MY1k$Gi6;Gb(^>t^LVrE!x105MtTuEejyyp6L&KyKCLQ9pNu+5P`JG~f zGfH%HHxs-|l*Y3o4muf{l0dNcuQsx+ek${gZ&NgLNwy;+Gi>sa2`~XBzyz286JP>N zfC(@GCcp%k025#WOn?b60VY5M@capXm;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz28 z6JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2{3{G4+#A6 zyXCbM?KrskM*JHmYn7>3bY(IT?@LQhacx=M9qaRzmNrEiPwclerV?GLXs@LzG0>Ne zr7S^V zql1=cFIl%FIxQx7zokE>(nTgIQaaXD*EZ9UKKh_0^B~fU7-FN+8#`+t+S4!9#eYjQ zt+HU5fh?Xxo{>gNb$x}Usiva3v^_D<(_!gLq%EECG%}Z5V~O`!dSktb)EcCyE7lt` za0z?nu#v{r>ZXeN){5%trq-sKIl>G=H&r(QVSh5(9ur}Ve>JI8B9)DQaZ_z`&1X(P ze)!Lrh?+j+7)9G*iCVxzmVl@erKL4gB>+6syG5H~UO4NGfv_IAxO?D?z zqSD}+Y*AuFAa&h2(9>gFXX1uzbt;~Yi4Z-pzOHn)p+gNa-&@pw)LY>n?dV9w`eloO z9aZtozM3|6*))$?HYhrurMj`IHPT$syf8w|LtaP4;$eMuf@SZ(;{#Zda7xs0d_V%Cx%}=%`I%1{M`b$eA=>%0uOHJ=UPc$7* z^nInYv^rr~gMMpuyuaI$PFPTAD1Yi!I$~`DU0t}y@8scp8x(zq=&U>~=!B3U;#XBSziJ-gGc3x!aZLRz?@WN=_7^ra)igBc z#;}(-Y8tA|`bF&{JxzJm$J7@ETVK&QcYafiIRfNl%rI#D7MCR)HkDLSUFSaPQd%-q zH-mEQbU=S`Q)^vKLvF&yObhgzsy~~4&R~;GQqeS_FU*WjrXVUz6Lk+X!lTA@rV_n{ zYn;qOLES=#irOwz+ltuFt7%3(7%MHgHO*q7A!C~8+@|$UYp49rf`jMREYoxwO)yA7 zo@pBNE!903N-VMy#q4KVhox;zI+mSLG+>B|^(6+nx{bcFGm)~KHqe{2G)LQdVqc+1 z@F}cE16ot8J<*%2Lce5*;IywJnp$Io+V`;L5Z%4_%)*DJLr6m}dbD)6kEV33b#q&* zQ3s@9{4c7zI9GRJU$iIQ)h7qy*1E;5wOLEKvPe!W#o~zM#nIdA)_Qwga85V}oE^>v zXNA*6nOH2b-dnr;H@TDP@_o^{1lBRGxn($+`ZR zl=K&hyMLgqpnq1sK$D<^fEs>1%5vOVW2TrrivUSq=?18>^)l<`@cI`FvdCWBGk?-l{^dIvJpQUM_uTM?F zn`oY%0EtC8BYbEI0s9$V~y1{$6!u9*pG6K~!0^(LFC&$jiUD6-H^a7-f@JjYK(MlGH&fJXk9d zoeFYGw_>6Uj8vg*Tk50eKY9|0WNGQ*=Gm5p*r2&7iy4@qF4BPl?L#FVpiIyWaJ=0T z8EC5%X_~QureSHChS9woYB9QUL`?V^t7I*p^`K0`bBiw%51pucG~kxr)6kd@jtY+M zmu00?AtWD2C{fv|pruBnVa(X`u?cIUP6i8N3kFqu5n415%V(5rY7tUEQK#iJG~s4w{h&5JGVPrZL+-&bzzN@6H6OKZnPrzq} zDiT=`qRWzIHC0bly-UTg(h}=ykL9eAp?S|wR?V6l8Q64q z^pq*gtomoEeuwPP2lg|!Tog&>0_W9OwX>XpZa^;k(R!MZ=DN9NT}$0u>i>-KpSnlt z%+NWCw(T$`3?fX0y!XSo*&bEuOx%{b#rtZ{Y-6qDbhC-zST~nVT787ue zw4!)4P1>obD{e{C0kSSX#2`n<@@S$b?tU`A_#js!zyvL+JOKmsHgKXL>%$ z&wt8x{<3oJGQH#}bn+JK$j`hWr^00x-B6|QokeTq!pP~FMNs88dtqIj*)M0^P|daK zXX`TVY51N5eQ3I7FrKEq&NwG2>KonP&4S%gOPf>|al@sz*2}L9aqrrW3ewb(tiz(7 zv@M2cth{3NHG6|hcIBG9SpFkTn2OZoEk(nR@+ZExQ#v_IzDiEtE0UOOEyHZUTTDgAKjGqiAIpx@| zUYv=bzP_b3(vI7x_U>787caG|Xtg|l+Zg^bGNdd|UnUIxIq@O_BV!Bu^1cLYt&v{| z+Uk4N)DUA(zE1r>PdaW=v@8u93CoWQc{CE2lLq)3iOca{h{QRhu~GgiK*k>@)N%Gl z&md;89+d`?S5#FktS2uM%~Ad;VHoc%mRig~#N8gI?rM3$h$oS1T~xoYPV~1~8&vWO zGnpIZpPyEtZUUdr38I2LvN%K;X7iP+Z}vCymi{_MmW=sKT@d-IsLJF^E~X%_6;%t6 zyuA3j$H;5O+oVsK%|>W&%nWpCQ7Rpo0?Ubu!Xncu6BJe~N+J2cP07lnKVuIACqiV* zW#Ut&T&8-FY1;^3G^T9Xxr8AE%fuu3ImYm}jp2{9!v1JG?lJtGWBA+0@VAcg7x_X) zjP_t^UZZ$XdoeZ3jGXF2o$RJ^{AxsP$Z{vWh8lrL=*jXyn)1qr^yZlKjQUkomkpco zqX{NHM%hu=D)p_k*{`9ZL3H>zex~`6VXvitUxV^Ahi$5A92GD8L<;fkQL-u4kG^ge z^-4yw!a8JoQur8c+_*N?StA`y5eY9R&d35`Ke8Z|NTf%{ApNs(Qdo6gR97ixx{{OO zCuhVtbNsqRh35Dor&x2s5)hrD*P~N$A7!LZ3}_3p1D`qWY8AKXo}{{9JOyrY=)UO` zb=Q;=SLNt_Nu;6D7zMI*Liu}CbI#Niu9 z)Csel(VQb=aHjQTS#I>-Y{Ot|_A9_NQh;fs0MkeTrjbHS7c0(KS!h+yNy+M?k}1A_ z$bKIpWte6d><0f@sx{*52{;@=ObIfoE#c@!t4aF)y)9)pb=tVRzrdSXC-MOPK8U zDCnJ{^psetb#5JX<@+A5Toa_ok&~+V_4TUfM!zGUb3D)hki9;rl=PQT)@cP>eGg{H z>`j|>vcPIA9$R3qBGolOj~0@^^xYM%@XTgsr+5~UqD0>4Q9Kbo zQq?rSuCB6zhM?*7;t@rZiU^{K@A%@Drs?Wgxc-a;d6m!UO|Mo@H5nqZKiznE&J_3@$+$&-20PyLX_{_KQ@XPnouA`Q5o>*%^hEBsWjS`CNokmwUi(pMCKTxEpZnPiPlSb=RWV}%41ZRXD<<~I35iCdh z%k>1IE^E31Us+LipxHyNX%x`IdPKf2>E`>@H&^MxPc@|a*}2z?8s;N~nzjg&khup= zU4^e7mQL%y(+hN}!jP=4h-?gzwy1voqA_KdK#d(ACRbwwT!e6Ah_ppCc@sjJ{G3cs z9*c;uXvj5v#k7u7e-87n9zwquF3MOBhqp%@ocNpb~cb85!6*-%7Q zvtaCS=o7}u{h~<4Vj(nDDVZ*ds_iHfH2SJBEkKTjU0hxn87ny19#cjg#uy35&29DA zgpnr58^#Ju^$ha*y~xKdB@w=AY~qkNHS8_^s)fblubN#{zHl%3U$~d}7w#qh3#*Ig ze_`F;@-I7qLbaUuVIih?{_2Y5Uk#5IwRk1!s%5EL+)`MU%9R4kQm49>3sDxe9A{B0 z1{QTIXi>K=katr6$koxRj=FJumXzz_Sk+u*ll``QNFDvSyrw!U+LLTTRkQQ-jO#qT zy5^j&n1&cf3m%#1SKrmvE#8ZK_Fm+3_aa}o7kT4eCh%Hnd|6cn`|*$aQ%XcP~>7yh`RDIR_={3Cnek2|sA_V>accaz1#?}a~ZT8oEY zoS7LpTC&w%i_9IvUrsw^J2C0k&6QKnd_kR>x{mT6Bi_0(;;kDi-i5WMgvz#$>5TNG zIl7Ek2*&W%Fcm4NPhX^GC)6fGutqZ359P*z;d9I|Br6n#o)gGqLcUHWo>ds-hq;Jx z>p`hes#+!HA!GQDwriS2WBzZt!u^2hstIqXM6l))!6bMN+&tV0&(k%n*$YShZa5d5 z6Ao)Z5jz}ieIw9|kRIgCkT*l#40$u;&5$=kPTv<*;JO0W6}Yaz^&%V>kw4Z@n{dSa z7~Unp4O&f8gbI(=Ni7bs+$PWMrgNL=T$kr`&nVVb5mr3ENpI8O`6{;*=lHn__&E#s zspxaUs$}H&spRDNSqs=xNj2;BQ(oy+5vvo={^JF#Q7?%pI~hHP)Eo7}SiYWJ>J@l- zETbvnwMo647s-@{kXxlZ`%;+{3Yngj(Mw_K1+yIc-dq(teU}aI$(7+5t(5p))yS(G zaujRk{WHTb#qE+Zik99*Gem+Vp+q>6(R*n*GQvkT#rtteLiPw3{PW*e%Lz-Upo3>{ z%=Fg+Z#I>yT%~T-bTGsex!@f<{_6R{2a#_^9Y=)`UUeE3MtId>R2bn^XR*kTtBzukAy=J5MYF*}7I>2( zSDnMuRWjo^3X3=jOE?M(IEswnC_+qKB{MR0mCV4@RWjjISIGoVT_qDbb(Kuu)KxNJ zQ&-6Z!H!7C)KxM8kSqIkWnWe_=!*z&6cOMkBEV5ZfTK#UO{LeS(rZ)pY|5Uj7>HNd zlNABi!k$>lMST%3&Whd<;|tz*tHt*dLMFc~>c_f_m8u4%*FqfzK6!E?3oWNb2uVIS zj^}Q(@8$L@2^KT)L~NpmUMipmGcauEMj-XXHe>^-WTHQ2_(#_C<54IT(2ju(A2Ij9 z8*B6uSN=gL7&>ZEK389AC_iyANG~DbgCj;(am45IZ5u>U&iUdFpqpG;Zh>G-x z58g?NCh2vvnHDG%egCMSp8Q5A^RiOD-F%ywRnolpbMy?GCS|kTfqhJGK|RAZ5s;q@ z2hz_;hkQRtRkJLwQF?~WG16;rQ|p8>KD-{KvZ1_{eR@4ABY?r|+fn^VO>2Yez%v#7 za2HiS_V!l(sd)PN2=mDdi}21k$E#$X@@12Gtg!9WZKVlWVcffx+P zbVWPbO^exhI($(y6{ly@n-h4DJQeFIHSYWA8EvB}8Z7CUwbPMPoy>G9I@+bRxzV0Z zyn>_R_zbqkG+iuy<55!$@uP8KnD0yfFY+a3*BM(zemgAr`NgcfB}*o&S2%pTB|lG@ zC^C7HZ))YnW5kfPpDQV%O8p3-O1AQH(v*SJVhE0DdUK^nkxqd_u30<-I2c8#?cgEYr zcZMtGLPaN z961LNr!WNlr6-@!URd8k{&-u-WGJgY${!-qr@bk%wF90;1UUloSNdbvrxzQthO+uS zW^WDtD*dDUm3_PblWWJ&&-WMl$$hGecvUgKU74yZeFrN#f_>}-5V49|Bs9}Ni}i`Q zVT#p#N^7n>TRKL)CY>xKWqUQ%-pskEop@Fwrux{u^r|vkM~wP?s;?dKRr}P_t8npE zDqMUY1IlouEd$2!g2BE-sKP;8hReA&fvWBMEcuS(1yz}EX>Ua|W|=BHjB9nNsq419 zYeU_TqcP-!@5<9hCC`!f7;<`k9vm>FX1;pH&7|CqM#U}4p2{eDons3PJ@*v6Nx565B8oM@#rj zY$%PicSDAukkh|0csBh6MRD3^yE#lut=-HnCr|sJ zgQw_d1A@#bZDwo~;Ac%|Zr;t-RsPYw^K4hg`;$IP4c2b(K6Jcq6}GR)&PL4n%dtHw z@kPqu6nTe|ZLd@&d(#(R+(D1h-QaTI$sHrzqEgq&gwi|Bqi+LpZJWzZB*ieDmj-kB zjioo*mYH!j-qE%S>*X>85t1(mc9`isXxb#nO>m<4tzgj=@Oz=QCRJc^N6YV=-Ftc^E0% z`^2a~I`SFe?HO79_tL-=cVp_PHN?8`rtIE>%5Z&Hu$C=cUSkC?rz=2zVY;Wt=$NJ( zIexieGnFGprvUtnJU6_#ThlT+*`}ual8Izgjw(_oInduNJ+jv_lj=G__ZgHpd7Tp5 zTt;H)o?@t_E*=BzG20T?<{~$moU%=F>~C0L)`R%k_9?!$y!hG*n$uvf=mJ(I{i?uC z*M*XoO+RM+g%l89bf3~s6YC6X@Q4;PmyHj1DaM$CIM(h{9BcF9SX(#_*y}51FvFxz z88oLGeuX%wFx}X+RMt$?T4O?Q$gt7Dm@=wPGqIgzwm$ZEOTUa6gAM#gH4q~zEz%wD zOgF{5y3-MC5mwvV8|x^Bj-oT{M%CV08Cxpd@E<$AOx_Ble++xw`(SUNZB(454k(*u z=n15mG-J~dV*s6vjq~>20gkejn^)pPAJ~<)$f^;;UdSpo1@dCl>iLRWeqRWj2VgH1-U1 z#rsO@qu4P=>>p!n7-5;wep0Cl2wSD4ZEGy2McWdV>6Rt&9_-vCt!4jLv|;BIT-MUw zrr6KVSaU@hwV^C}YM7xw( z=2c>2Cb3}|PE~Lm)>Y%(G`Rr>~#U#5fhH?xRGU&zzsC%-WjnrO$}*f~aQpd+KG?dw<-@4#*? z7O_{6&_Wr=z147q{a|TdB4nmRu8HFs@1zU8s>X$u`dGR

Ag78hoM;TgIy0gEb9r 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 DF+XQt;2gU8n=4p+hke%nEr! z6`_XE8KJIFB6N1>QuOxUM^ArW=+~j&hF%Q475bmh$DxVgFQGR-2|fAj@B-A1PPD#r z!`}>F75))=>$}lYKNEgM)Dmr-rrnNqSfWqT57#aFspyMm>x=bveFf^uIr@eA73g(u zLXZ2P{yY68{WbmX`X~BC>*3a8tS6#R4OwSfBi7~C71osXT-2Ydt>3raYW=zOm)6Iu z&sqO${j2qTYYF2K!z12kcMTpRm4^ZZg$-2xWjR$;~vzq zha3+(9(BYqquc2IzWYY^t?s8WYkLFt1pjo8N8cFtT!@mt#b^4E_W6ZwF(9pMjbGoX`T4>59-Ihi9EdxG6L5!6?p*9_bxwD=F^6B^TH@++rCsaM zPX8P2^kLU;U9Y+Rjy8H2X5u<#;0xTRySv?IiIMAi%&_lwKZAMoJ-83sjyCwV=Tpyk z?-cK;-k^7>H{rbiqt_iMgKgfYy>ECw^zP^Tl5e_C_f`8Ed@*0I&*h)vZ}dm~eg3ce zFY{mHzX>x#8n<4=9PqHf)PN^25A7};SRc4Ha7W;mfj({Iv>l}<%U1$a0#2jLaXaRq){?YnR>!;R(Fhe*QwZF=? z7_))ZwsUQr_SN=v_RHM-zQzAD|Dr$_<_PDZhr1s0=bs0j3OpD1Q{aQZ ze!)Z0x6Q;%p#eQxPjCS9g^j@*G57sd@QL7x(8kaY(Qn<4x#^3cov7!f;WErWPYXAN zAE&y$Rns0(b^Ta*P}Q33HqYv_0ut9yB4+lX3WzbwEoKajP(T&|2vp} zY@K8~%r*rh7|qD4(eE^Ze3va{J5S8NuD9J}yA>naFKxfEJ!gBx_GjDw*gmrDu^oaI zah&}WyUp&g&$Z9DpN^g=X4>&?pf!E^KZ^^uE`kPtQgxGT#GQW4Y&LE# za5ww1>(97{{kQ7~(OQXE&+<6`0|0-sAm6+$X`nxb2 z`N(exSaD}GFVGz54)g`i4{Su~-5q!^@C@#64h()dI6Y_$)&%DTTZ8f7YTUbA9lS00 zv*7)hmF&b_${wsc9fZ4*nIU)RsPKu{m#`w-5?+P7g6qO}hJO+MP54#J|FvOFyAfrm z>1AT3U#T}?o_Ci1P5oQ?)%xxFz4~wUXZ1hoALt+JhhnB~xB9IM(2AC0M*a=!cQFtD zx%Fx5D;PmOv5v=lO941#XRr~tY)lmo`d$Y$+^Y(09GxYbH0aFii0sD zJQigXa?N&~fwid>u5++9^p001^epzA>FMx%-SZ947&Yw7c=DZgr@if+r-gX}2a=84iWmp{? zaGi@aphsM-yJxw>VBh3kf|bB^?)C0kPYVbSc+M3g{Ni?@w}F=eZ(=Rr)4)OEUg%;${_fy|=-D0v z{XYf&iZNzV=*Un_s5R6X`oHbHWpq{9n(w`%#38sl!C}kVvbF|y55XaX;4T&1AwY0< z5-21=gG=EAE!^ELxCFQRn=^EsQ`M*Y9pn9U?-=xlt{&avbivwlKJvFY#yQWq*13)T z^39ozJ=@^2aa-E6O^&9;}PCJJ^cQbh2K@hz&Y_}=g5l^<+ z!n!h`w4wBxzPhPwsvFr&udUU{+72Fi!TP}ZhA-RJ_8VVz8hfP| z2u(rG?p&s#4fX>}!zz`gzM~CiIBnzc0Qczc91RA#%(=mt!&Ss(q!-ucD;;ERy(hYZ zh=e8)OQT8KX-0w%eA0U9vgnHF^t!paWz0PX=?AL55?feh5 zGqNK(=&13wHFVNlOpvG9Bp$IPhOi~Zvmc(aU$F-`RQ7|m^vr1IIQr%Su;G=?Q=r3l znD_me_4DwJ%r1wk0=r-xZgxuA?uQZ*pP$AXtfdfB%Vh0L?R>4Tt^(WM0Nq$7#5o`x zNxB`nJ-Q+G76G{LJiTDQGc+w|BElwk);8sflVK>Rc0W!^xn8hpgAEUzs2D%x)cRLu_%j zO}6#+KkUD;@04Yy5ffK=S54PB*JBrv%bNWBw!UE8E)bz;?RdJyK6Z}}+8o?~I=U!b zDb9O@ek2{>n7)Cb3q858Qc_u_tX2%18@1cU32zT;Fr8g7*>cPB*^)&qMbC|p zGtyFZ3md{+^{W~LX6m#y1{jkZ ziXCYm#5S13CU}n;l7miL-Vx^L%9oe}GjM>N?*cdB26g0tBZXS>+VKt);G4tE>E-mL z?~0G}jNf&nHclI)E2eXSWkvIAuF)L^^Z%jCp*Jw^bYja|tp9`g=B+-^P}ES-(9H0g zVYD(qF&Q1k2s+?QV*@7lTuh4x&Bx7CEVJcSJW*Yx?pL3ysp=T(@9a6}toOOWtEh;+ zAgcvHRY%w-+NZP2zO&Z=>ulxd&V(=wENCvw#$phmM0VHpY_Hp?i2ED|sfj1}J4HG> zIAhpTlby#wBCpero;XvTU!B41H#s=L1vtaSU8P-{eUz5 zT=$wP`APSUZPW{XD^Ox^Tl7!#srs*acSC?7vmvLUu%VQpoS~ATnxU4Vo}nT0Ukm2F zqlQz4=LVfJ2G(o7vP#*g>|`Ihz(#aKxuZN#Qk3V)Yj&egU>t5nFQcz9kh3?(xP@Mp zYWymvzs$^kh2cHQnJSs8afj-e8gd$2F#jC|>3eR{G4V}<(^|!xzLQDfg87R12I$@c zbBg&nGy6NH_HW!VFN?1w5H4XZT-Gj&o7zZ?q_+)JN3y#v2A4{Nty&NEx1IfIpL!6C z>I7TV1@(%0L+xzs$z9xUJs}bLN1*fXt!_3yTLxP$Tj8ITs1oP47AQwU+iu%YaE<3S z9q8XQ`+WN zm=nv<3#-9U)?@2x!lt{MZg|T1+^GYVnC6=ATIJg4+R0RM0rcvI>kimNitD-SHAvwn z*EewvLftfvsR?dcFRd@!j`ECVxKqgzk?-_B03k1lXj zcjB+J5J`WGVeU`XAJ?DNUuSMi`~8CrSqwQ0c?<=>Ad0gS&o(SH`~l+d3Ctm#60GD< z@+rlsg_V`+N^PaS63&*^k`4J1C*X@x)~FiGv6s~|Heo032+9~^j5SW;3Fk#UJJ zn<)4xw{g0VWQi}wab(5XBHXB$OE1c+7H4;^#UAiTeWQL+{jHg-xve_7uxfQ!%h8Lg z!BN(;Hl!N2U`J?c?Z_7WhJ7w8yIh#9Is04}YSjSSDE8^a?9++#qxH7Uw(az!f}k0d z;Yvo?CvXlHfMTt*Z~6}>L2#U{9D}*>*_;L0uWil>@D!~vhhTsunbzMMycI)%0{hVFIJ(}W%^M`jAv{m_1{>CS^ zC=kjuZ0p$^S{SS8j@gd+jyT6~XDrqE3w=4CtBk7(v+7W`yF}L^*ITdq3!?-5#*I76-dz~}qY>ZMXiyD~e^k>sh6QK|wy+mGF}yImF}w%&_-=3qFD|E4 z0{f_?)MGLo4)dD||DRpX`&B?NhJs)u!pQnsj#y4vmQvfEtHIV1)<|m?=Jt!$msVf! z*{^UGo{|I100x&`vVetQFxrE^4!4hHzunIKzK;q1sNEASg<$bAgTUsNJYF%d3aw=F z?2b@JMakvOWj5z8n&hTA&OdzFV@qolZ3S&}?L_#fWpthleC<&1^KtZ@O|U}2`YICR znF3D!RR5CR`$7K&WWmFb4xXaAA;J)4=)iWgfc)|`@A4zUhk>KkPnYn#LtFvqsQ zw#2sFwi?`Y3*5+FTQalnN!xkbW!p{LU9j|Lwl~}r@r!!f{n&Oh+jD}e7naDX9)!;h zzFL`Cs;)g8mMX#?W$y%z(Z}A;K7{#XtgKbDs8;dz<4XLe_9 zYGep~QR_50t>C{Eoz+40!%*)Mpsr>ZdZO+h^qwnjN-DooUV$ls;=5>QjJ~B zU6HT?U0gjtZ3ei8fpNw%dCg$unD`aJRC$#U0q!`7)1oTK_^`|T_0UP-4NXf>fZ!r!dbcn@LJ1ZCX%?NJ9N8s z$!t6)saKcTdG6{SQVU;!8-CVl^qzV@eULsg=wV)cL47fODZO5A(%bc+`pPJx>VkTR z+YrSh(T%;bpMH>jgv3Cm$lDRGUkb9gR=KULcTzz>8xHv4$yz8KB0CWbIf> zE!{@v+7E(%+;AF}E$uwra zi-f7`0@@!9w=xXOKbBrMLzyF4mIO8`!LjUA_QJ3nL-8f}yqn5><+1VtTm%et)coN+7vhk+zF6ikq(7E?a(HfJt$@)i9=y+P4mDSns9zY^Q%kVF4sh|k=uLynBg`@8 z33RAg=6SMKuQacvQg1WwHt#ndVY505E_mI1o89t>`IR}<{Mq~+R?5c`WXT9?pPNZ9 z#8S$lwU{hcn97Ql>XzD;FmSDwmPktnOBZmKXv-kWFiVUj)-uI11B`1C8+L+aE$s9* z`04#{na5#LE?TZyZd>ky62Gvd!fbuFxT`*DfSOUws^(Vnt08I$RjVqhRjsJLwYPAL zM0w&y4XV$S)(^J6AjqKRwwoq_IXf6#Ms1M5F0e~6pixPvEzW2KwkVdu9X7A3VK4mMP3Eb$Oj908D;T_fptFmW^_-}Sa2v1L z*hAUaqrd{^Gfiy(eTp%yF>N>PGo44_^;jwa{rN?jOXb#Y=8-VHg3Z_uCUc1`=_O3> zO1{7~OK~{*a%vrvQC-yIXq{fd9=TZq=|TBGrAkT_(;)Ei3Dy}f8_TR~*l+iNlMBB7 zF`K&wJZ~X(cNMNz;ID0%i~GvHHI+`ff~j~53Z#APMGrx;e%OTCNNmJHWmFL)wjHz7 zXt4A+bVLW3GS0FoJ)*~aVcrN}!YTmQtEH<{rK2P1H>(f0 zc@gG43wUhpSa8X_nzM_2e`QjJgqufvd*v^Lzy+^v(Kz$zBt8f z@c@S2*Pcbr5lzu&b!A%_Ne7ST%kTO5-JeKJZ6K;Et<%N+(g2R|H>s?eN%vh(=RN4W zK*xRT{NVI(1-lA?=2oDiwnQH_&^4SMx|B_JFTc}yHrV%ReG-?u;6Z#*Jrx1JP_;F< zS*_r*25YCY#R^5!ReI2K&`xf}bTk5nw+-*J-o_4m?I;c83 zf#=1tp(gSh?=c=SoMs#ByMaTAR0dG)^fTK%YcS@STd zTG>torz@0&qxn78O8rbnSdZ=C557$Bg+Rdt`)6hDOdGb(X!cE^kw|jxa-M^0e8ilT%~jY{(q#c{cqTR) zDNY;4Z{&_XEi1ZO6Kb?ZDA77It4!ivE#@~$rUG7u@$~^`&aEpBvT%ca^DU@SI;Mpp z+$)uvwGAFBJG|ilI`$O9EY#B**>?^bf|a~VVK9X4vWwn^14(6<45Vke=#sTzbt9yL zdM4d)Bc1TD@s{j;Ka6GRaWy5!-j~Wa1NG|_>f&?QC_m7l&mfi=P@@(`^X#B^v;%?d z14a;InUB)t4{qC4IQAD{)frJSg`gXaf;Eg$i-8Z=K?a(@esr}Cu#QI=CbSJZVWLjM zMZE;CEe1kuqY^f@wX@BYbF|P!UIe#%V*g;T#Y`N*ElT0eXu#~V!U*b|4kp>|Qja*E zxix`l^$2REhhROQof+9Ci=Z%!baiK+oal=Cd0RfZgh;6i-`@)zN_K5AzJCs>+6!g2 z3)i(_rt2%2_4#n?9Z}K^(~Eg)seU~gl4I;yADOBAQ8W~z^Hc=8Ys8)v4Z|)brSZ)#hm#=Or+Q4G@6KhO`)j?pUQ`AME-5X$RF0iwv zf}Q!Wu@<7!nBfJRgD-Tq4&i1@v&O;E?u5TNZB4Pgl3Qsec2UJ%35{11YSV9W>zoNn zx`iF{0u13}ZiuJDAAF%S{7nrs5Uo%_2yNFq)F`_gr}))`vg-WQ%o_($myPPJ}U2~qhQcYV|ZdJY6r34zW0Y?20o&PHA zt!{$f~}}08rO+Z-?yG$RIp>?xI^(UC>!Z2=cPyBlinL7v>?Bw(NMz> zZfIxd4GR>*En3B{vBz*i>KW_EZl?^YfhAU66+9r)c&=vRiA#>22DnYN(8Jdb|mvFRPUp$u}8@TIQhXErvV zs}GZWV}Gie_+3}Rzx~O)``Gf%^2OpK>so21h+1kZCcj?lP<4_zUtIztm#khy$&!NF z-OHL0wPpy2XmzmAmQoKp0z6#QybUln+qs28ReldGxhGRXL3?q#$zFx2t|Att#*_VrKP!VGNVh3GdG zT@73jaKC-fPbZ+n+lgNDjp#ph-8HHFrk>hh^st3tH=1f&YrCO;9>-j_5WTbDf-h_5 zqKbIJruq$4Q6?q@t=`4WY=Ew=GrQr-&;AX`r6_~K0H-qH`@@u0+ZQ= z#^MY&^&MT#S0XRPrG`Gt)f(;mZ}9wcKu>N9UPwLIpc z)M{0_ZF-vfqmx+xew)P1_$Qv4yX*t+sM6f^xXcHcMPX8v%{7WgLVSLor+D>$OYHq@@; zH+TlmkPV%m$~@8vta~KL(ri$rRUk@xK$FgaB;{ZR)HAP-*4IG+GY%GMDU;t3GzKXk z-GN{*3fhZ0=q?7p!p>7xpjtf*jw0%3J}?t8l{aT59|LE!nyu?R_{Te=2bf1GYGwm; zW8FZ;=i-#x4s&z|g=IQ(7BC7MxI_zcXRwH=^v11HqakjYKkDZYi;HjDhC4PMUjE;| zuh!~fmukKt&@ zjohG1^tm4nu`QX|Q5(~}x-o0-mf!RhO3EIt!EieZTuEp*&ak_F5VdZYyT*ra8_2mY z#vasJ+Yd$M3hg~KM|O1o!i_OYcSV0wuLTdQ0|(oQS$dKo&ag%*iiB3x2TZGwqAFFC z#-LZd!K~&g$x1$BX`>a_T1#VhG#s(8Gf6Nqr=*I*U!pk{^x|D%`{$Wg;PJX>7E?nt zx=ROmwQ-hNoVkORhfHlhEZK2fH3wlI!|t*MHOFT#?MzGtq1It2ALGCRcF-?w+Fshe z+5A8Ow5a+UGYRyjzRX4mxdjB^D)U<_m~T-jrlWVJXB zgM%he=Xb+o2T65xD3fn@-C$IXzvD$Y#tC~M)ubV48q4XMpl1~G??F`g_w|Lr4;^&u zE}XNR%((U7CkH9{O=a2B8=2apq#D7=Nx)fh2!~~g=>yw(e$-Sp^bf63<_-nHTEY!I zV9sYL4GvWg2U`!EYvV18`6hcUr*M{(EF$;=^uGUGY3|Cn9O7`U&ZjwT1JGyfp zr`i_69p2-+e6?i;8);~74KhC(23e?|GdPNatA{z_nQjhn?;cSx-QoX>aq}wE8#}uC z;wsukojeE5@d>VpzR0KYm0i&ao;*n_v@0`lDf|KBcZI$AtIiK~U@N(C&6k+y5iqCh z;GG7gg3<;(<{8Xjp~|wy*0nUl zFEC2Z@ms)_p5qi1%1a~rQyaB6IK?IAidQ&6^H|HG^sfu@BX|elBfBmqgRG9S=$ZyG z4=kVp?fFVYs#GU~Xys zeHSX8V4R*tV-4dvxaZTT8ii|8V4X&DIPRD3Z1;=k($AQyGqTmI)aEd_=Rt7IzvEgw z!qk-sEK$KL+W@R)zM6p6K+Ml#pA;?_vB}RuInqk{>*k~J+9p|-2W;vYQI=ZJ1CK{5 zvYZL&B(rZ0XKD05weYo!cg|r)Kg4-R&z@KcRHYSL;w(H12jH#Tg)9ipF}Jojs-TA2 zJt*I9)BD`@!Dtf8z*IHmMhw-@WFz^?)KkDvmhZ3yWc-%l860C4v~L!r2KAyF=+=9t z8-azCH#UUL?Pna1USqBC5(vl}qrcSZy4bm+P{B=L_gf+TSOH)mWk9!TvxUs$w(Ovn z`LKH!sIbi}d%+R!SwB!cv%p2FKey)IwsE%E=%nwVx%FYHEXih9ojTDL4bXV|eu-kF z!oFq#8!Q9sD0Fb$*#M?GSIhfxQ?fcGQARb!<1++?=8jO-YBZ)sSf9*CspHjI?isqXy?s2E%~UX z;h@&t*}oQnK4*ZZ)PgqG1KsP&Og>LtfwugjTE=R#PPHz?i6-jDQfKe%3p%XvD+~ltJk?f8Ue_ka0dMupg0e0D&VA$UHqw5*k8hWDn z-pZFcjXv2HO(K}qC)|?Nm?`7XOdY1W+yI4q3k&9jcA^m5MHRkLJG_g- z^|Mixo`l0n#W|84?9t3VQ6JdctZAq z5Bsy#m7@QKnIq`Iqft9;1RXxk7y4or8(wQmKa@>9*xsgdPPR$}I0dXQZ6{ad#6O)g zvkhJ84NlExkd!R8G9bRa@C#3rNXh}*8G3RmUf@jjeC%a)`A+S@sOCF%!pdH7ynutX zQh%GENg2xgw}d`)gt`4Y{)22NQ7XAQ(}6~Tw6CWF-AZ|0QQxMp_X^FB{!daZs}vseqmd5G^8hA*I>b*SvwOXaqEfm)Snb+@I*jcv45 z=KIZokKYIje+5VNM^w7Gsa3-HIfGqE?7Ww7L4RRa%0+#O0Z|ny)a~57>rNNdsS~wn zq&Qm{JT&6%h8$=&JF>rSXP(J{`_?Qu+NL;e`@+c1L8rAFU(#J}qi|~kP{Z?4o$7)y z_0h-5i6$M6u>5F9>cD>vMUNGS<4f?6M^WBAM0J%8g-mI*G4+joQQ}M?b7B|FQG}@n zYMYVpegY#EoSp~$trg5sG`py%+sknu3B>L>xOFhNX;HX0tK35SF(EHQH~xlBFHk$P zRQC3y%O!$L|FCA_tSQp5p5_4@!c@G+c89Ga5I046dn4(Vjj_+PC!#hui>LD`y0{FE zqVPQpxvgVh8djrTIe&oW+{Paph@ve74z7lw6&wF3xZ~Lp zzj=<%B$(;Bh@w|oEB%$xs2UUS$^OY+n4+Yox|fv647Ew<=)l}K*R+HRw;8tQ0!-;= zcKo6+p-rg$gUL>aCxhbvU-KFJhL>ugT&+2ij)V2MvXXd;K&de#@kv;L!|Be%7 zJt~U>;GQBqBN$Jljr-gOZCM=p(!)4oKeBmbLieDehi-&>eSmAMYp!br`}d#d7@msn zsrArQ<$HQ-^T5amtiLq&A^vByzt$aj&bvnal;ZdI{&17v-iR z9o!A2BW@O&nr*g&)WBz)%OG4L!im}h1Z#-IuMVPmd27!CW>raIR?)DJ3na>MkL}nO z6h99N%}Dyk7&Iqqw|F^w04 zBW}Vs>Zb3_$&AAvvQ47Jsi5@PnapZ3t46?D{SG>xjP~vkGujurNN(JRj)m3V4Ek`AyqI?|RoURF?5NTssga}TE(y#f zx4Gwj5<^rimDy(IfGcb#apOMx<2OrI<`aurpZd82wfBI4-&y!` z*5UKKNSZ}PTYlRqs^C+p7zzTBH#*8O&GvQ-#CV9*(L-~eGMX7TPFZag=G+1Jr52HP zaFnEj8`?~|0-!+U!GM~hdhHJakq8=;Oy7RSxA&oIm!=|A*Eh!XFhoBQG;pPUEA{l2 zz9{FiJg)5yYzT`CiA=knNM@;qBW*4TD*|U%>CNNlE?4+!ucUJ}5QRbxSt0c(6DnCQ zup7VStLd5kBk9udI2~@0CX(KIgA|T0w!HA*RZwEhXaD^Z<~!A%&5;EKlED>@KYb__ zP4rYvgom(GYCNcArL=WW6|7~uxyheD9aE~{Jjd%-prE;=Zzy;BS@Im*Rr1g=Yrz*p zGh-B_MpZ>a-32F|xJS!LhB;;mHE)(!;d@zK%H!&Zh2uZUulLD1f+UdyG_A*N*KAK= z@4e}8CD4Z%`3+j2fLZ`PcRWpN+`~hYz@N{Lsj(W`rT*k2<IrQ@9|@QM1~C5-+D(U1m0Mhb_x%D8U?83!J|* zI@qQ78gFn9-x>Vn9qc2w#)EQO%5Aj4Qg$=0h3n5@Zo~vPR$?fd*n;|k%1=OvoCM!1 zxE42hXK@()!7#r`+^g%VJJ@?p_QR@pts+32)}T$ig|FTp4@_6InI|1_czs?v)1fsr zGlPY(`E?;LVjk6ozu*)P>37hv_tgX+9U&3%{jgMG&&khp;ndY2$0J5JS+@o(q$6AK zAj5FOWOSC#K;F`mNf3#iDT)0i1|$PcFA(zg=hT)&l*fUE{;+sl&yFy(?T6wPw_Z@?y2uU0t%tIwt%TM1(hBlG3i~_ zWa|XmR#*iM(^Pfvfo)(yRj9n9(AZ9JZbiMPVP~mMf7(W8;_n*oA#7k81FGj9_+I*P z-ge?&c(2RP{?-Zi@HDFFcC;Ip_?y1tR}_4W0i3KJda*(D`SphL{GAKHbe89DJq;Cr z7fP&AOh+0x{l4g+tng&@>Cv6w$wrV$G#5T)Ju0H3{Cc;gC*GIMEx%fnTV9#I)0T-m zhTFak%;To|ln&%&&51`~EYnY_tt5z`;D&d@ilo4KrIQIECUlcx@)k(?a@ejN;9lpQ zH^4SLgq&7W6pi3n?OT4oOyFB{bxYBy9AqNA1->CpZ4tQiP%79oD%b}8zEAY8^_e-Z z1{4pS*v?|8V#`p^US_-hLEp&BJkt;@TQ_duM9`kSFpe)^F@lU)U>R$%<97k`8Anpp zAJSu}p%+_l1c@B7o^+F?psJT(cW;4XKcW}EG`$5Q`@%*Sh_+s!9W~fuBjJ|%!y3*e zC15Sz<2W7T13kl+(_MmJzZxFg2!8u9@JjR1Gi<GM@AZ(G1D?!DHfmu6eAH#Si4W6dKKwEzKpln3tGApm zCmUwML7V|!xK0*}$O9>YD@%(rx{=a>S#zjV7p`K87d+Etbc8=RoqlKsby6!>%h-VW z-VOdxs35j-W<{o03Jiq5DcF=1rpZCSY9-ydJ@8R1F>M437izu-O#11}fp`_OQ&p>@ zKWZ)2ViQ5L)`9BnU|$khIUe|D1n*#E8fZi&h)~##Ls7Si8?Xf}-Fx^%H%@;MDp+Y% z2i~XRA1$X=BKf5jC!isdSc`wtUJGB;O;V^*`1M5Il+kWOr!t6|HiqBpC^&`}9B>BG zqUuNuaYrUtp&X87UYN<$e-!*rxI%TV8sIxa`TiTx+ulK8OA$EDn}6Ju^e7^PT6Q{~ zmz{WXUuped=AAgDd$CI`C!y#n`+z@p#)Z>88RqYl{sIai;b(|1{vBRw`d#sjSo6%xvZDaK9}F$9Tx84gue32Zy>G{m4Twj6x`@ zYdT7y7cqlZ3?r{5EGsvWXC)PuAnSW?Fecz!Nf#{Xl+o#Nif+bQJeUX z6OhW5Og=z?~rPY7fKrzS5q?KYESa ziNZ|xQFv*WQd#e#+b_&^A4RuY3YK>ht^F}FCN7|A%FC41l6ij-p5vQrR(aX;TcU4S z1p0ZI)T(53u%|#tvXd>=7^HI!mGm;Yr0i^A_WI{aah)l>@taH7*ojlDz2|a!q+%`PD&KAry3;8?V!1~MHeHMSWx}MVGo|Ep-lr3l;f5)r;b_ZwU_t>lZ9aMHLX)lMsX}k^opfvfZ zGj{2=s0tQQSNbiQ|8!?{0ln!%4HBMWQ5Ze}IB^k5W*aVf<_r0L-)`K+cmFQ%YGoX<>jmz=ccOsqyY z>`?M_#~LS+rn|{_O{S@)qhA@A;G0V2#RT+-=h-E1;aDgtJqit|4?{uKmy?Hk7T)2L zIX@bklISWr!p98x8~6V&ZN(l-2~?mF;BcK$#cu$G+eJcwmvjZ|(0#T*13${PO8T@e zk+0-o_hoCYhwG|2uDYenrR%tFA7n0OAtur~Af3_tZcErxkD_jS=lJ4KKtWv8mo`kI zozaH&cJ>8d8VY+e2F`D?6VwAufTv~#vyMAGz6Q?jerTgdQcq7a?^FkcYp82R;)Td% zTmw__0>z6LKAjBAJN0DB;%xmwd}#?N+J&e0C7V$`>8P>6igp2gAIa}H$*`Tohtu?x zYX&dri7CKlSRaPCqg2Smu_10z{!sS85x<5Z{Hj#pS7^`X(2L(eq}*;t6>}Rj$_+0{ z018E+d8$uVU4NNV8%LI)&}BTLAH5+Vp)~1qLT}KDUuKw0ig`@;eM@c222z@jTT+zY zr!4%T86}j9J5zUfXOKkSJA;S*4V+q5s*9Bw zwF4>AEBT6V=zMu`6S&B+Y5`v~5GC0HbY#0Y-#3}lewfpv4%EV{)nkh9#n+jRYDnk; zuaWEg1D3iF2!3t0*Fow$>lu_o@6m-7u$9HzQH$@_ne?!6Fl{T?&yV0cOaT+}qd%5p zg0IQx?#lU|1e?DO&h0c4!E3%^Mz~0^*)|1<8AA75g3j*{IJ9sL_&ak^iS01iE$E~} zIM;E`jXyOGU(goigI%gXnrctBEY5qpr+h2B1m5LdAQy`ys&q>7Zz8=aH)?VR%D$E$ zs6+LWL79`NUuX1pCCZ#h@^3Xrbm$H@G946kE4W^*kNN<^luky{jWe%8@iLnM1eKBaj zdgkKOj{BhZE15RVv5&rF2MQ*2tvW7>-pr4aT??u3+r)QD@|64M04B%Z;Vbu$8FhyV zBq#e%1$fI=x~^p1jYXw=12*Y7`j`MzkwtNLi~T1zx`;BI$Ohn^-Qg((X0Vk+hjS#Z zJ(rq*+$i!ZppckFTGS3^l#}%G8@StE(d{yzesrP9kA>ge$d)M*Szj}0mcZW<&VJd8 zTRj7us43NTB>O@f`_Vo)kI$9@D2;U_HP=OJ-&rjR&k@GnFqzJN%=!h^O=PY%#&;jV zE$+aK?PE{Rgk6IPJAod!jaz$#Y=y5(+CgkeCD0F-FL!N+b5h z&P=TX*{#NboXv(Y{AZ5Jg@0tj3?cP-Ih?|MX1_Ni3W!AK%pf~Ds<=ufP&x3OYE<*J z0os0VZFEG#n^`)?I`^B84!poc+2jfD^KAzc0)%l zSll}XGaEq-r5Rnf3oeY&usjpV2Ahd~Zy~P0WxOh|25;bId@{S}zx7cbN8`{4Mypi_ zM}S=>#)q*x^n^j{&j}a~6EqHo##FL==b9GslE5-pwKXQEJPln@9b3VAga-1zchi5@ zM3!L=Z;JM~6ByrMlGLZ7ZCZ}{cn2Et<8bP?)W@KGpF#WlaiitIkEVrN59Mw*#*r3{ zgJy`#MvsMMpJvSqI$%UYSp`;3B<>9){b~x`W+~lz3l75LwhJ=p=@neNI}Z1ZoQDw3 zf&~>}Ri>-fuqZ?EJB>jlG?}!W+4OW1HMF+G{Mxa*^`R2Pzyv&Zq$g=CAL+|_rsT>J z@rz>0>JJ|}4i0Z28rOB;etXemp5>f8pb7}hT_7sulJq14h`Y_@qBm86gSv%l?X^&8 z-uBe=;EcGDwvt}n{t;|{B5(T=S=&!I72nw-GNDQik*TBQm1}xsF=*(#v ziZXPDtS#$MUF^Yce2y9W0afK47`ZP@V;($?Iut(QZG!sJS1ev9ctPzKZnzRSf*rgl zAY6{^=$8Xv8z;~S;$R%tv7sM8LwEr+;sGq0U=0Fc4GN%hw#qjGDocNFeNZ&vUifZF zrxpNd*P{xmM89Z4$LPksE3#;3;)GlQgR+f0reo}eH^48RqlXcG$gI`^pfxUDpQu7z zssroLh}!f5p6iD-59sm}(i6VhGNB&IWzUC;t|)U&S-Sx(kfd( z%&$B(U*-JoO}7amAzq{jcOfl2<{-Zfu>~sbj9I6TqX|3;Y!{FR+g+g zg+}%k{)o4zBfQ9X%EByA9QI2kJ-iXjVk;a>?cu<>!%Dm3z|TV0DawXW1tn86R9_;` zdK7!YEF4U$$rRs-Z|^jl-CZWwH)O$hlLM2T*H4O~ov}c*%Pv z-z=z>1(*F%4dk7YEFhP8I4wo2#c^EftpA=0bjPZAEDt!Tn;%SppalbKrMr_G|xg}PH=-)KM*{43Z@ zPhAdtXa#UG6-Rxq(-~3VJ9OoAl|V3Rkrvuevc_pyuSWDkEkS}u)05^>N!Ea7q+_S= z%r-v`&&yQUiMjNk#Y};TXvx>}3vb6QyAM3B6Z*#yC?IFkf%Y;5K0yWfg|y?$;N}Jt zMyII|_hHPxvHN*ZBLd+gvhd60!KqdRPg7~?g^?7eN9-*hVIs0HkvPHZ+QKLHr#?&s z8+l|7WxosiU$dMRqd*c~=tz_@eI>iNmb-s}OqCS;Y2VaL+;fpWoeZmV!+M8w#T4=c zU*lc>1jpoN^RoHc0&%ftkuLQs5*vFhz3RT?`A5qXry1lT|Bgd_JsYBMshzL)w zllcFbDdZdan_yQi*rhVeAmy1q!r<83qHyjD#}P~B-i)~MpYpykcxf!M z|D@%81#>oX$afvYTMkwf5VhDmTcd%9MjstZ=JEnK#C5zEum`35Igq;tYyu?+#fET|2GyVWv z=M$JtS`9GC9F6jSWrE!VrGBXd(qpdTVSIsaBOPxZr6+kX8?#G3rkA4VSIUCnq}}zS zq<-DOnIJR(b?{a%BIV~0YRF5dFP`9!`7Ylw%7u1CN9QO9s@)L2sy%o>U$P*C!*nhl z>qN32#0xTKW%`47L#8DiWHP-Yj^43>q@+V66<))2{S5T&^J2saC(=*D zantvOu^x)2ehgkmkrphH?(5hZ;s59gPdUss9t3#-Tu$2Tatw{-b(xI%K{~Ad-d#k> zj!4$|fN#|gE;uh;#o(~9HP>TrZY`6b2cv}()9n(f#|ALILlUEXA>Td`IXUjUelm%C zusAA+8~vm0&%JOADh=`Gh{&f&qK9mg2{p;`-4T&da~ZtaOL|*dqKJ;+orBqEx>k~< zDl!7k!8|-9#lDeonBEdvsI7^dcV$3`y-6gs_<09CrrR+-i(M7nCUBAKKMnPI=-+sF!gRahnuPl6rTf|vC$ zUe>GBj~Cz~8us|K6u^=sD7ctf>q(FDV7kI+`ocsy!#A5h&g49>T%~c-iN3HDC%#C; zJp^7`5_hr#-m4b#=^8Z2hw!(aN0V|i$o*s$i$vJZ%#ndOTnmuKW&#nY4v*NJyprzt2E;5mUFMdoApveLNg1a> zTpr^j7il#?ym^&X=G7F0r`jf8ta?I+_y)roY|e#SvMkI_MRQFw(XB|75wqk-aITqb ztIJ^Pw!>PV0L#4tBl4MwAl{zxlesZVz#2A^LHim0pb|`MGj4q+-mw^hPGdHkOB@** zEATd_Wzy=o>lN5iV&N`-kWZQ&94rLwjg?#8fP3DIT<|vRDV=ff^d|9SAlVrsVT*Dw z1vuawrl93|M^s#Z1?T8+sCpXxaH_b}(n-9a| zBQ}l?Y^LdO!KP(={&P32=W2*My#;8*i!{~=&caJ#4|zzB>H#BjfvqD&=KZ;oxRy(o zPgjWBTax>0;0D{sK&?P3at*R!8=xc;nGD&;&*($~(`i`YyQtQ`pw9G_Z=h*mi2pbA z|2uk;^h#-Xt6?NOK0rtE0W3Hjcu)~zaWuy|5PFpi)pGbFsYbO z*LKTyw2s+Y+B@32bDQtjh5y9HhFJ{^zY)0(zwr*uV04Y6K_VtPrv8=hnirQrS-EM} zVH4Qy)U!KQ1z%|3YKGFbKYqXAuF)V$6Y>4cM9;9$wU}O?=vo7!w;6q-mwb<=Hpv66 z!1(t`ooyEMb@{pHI#lA-LG|j(EU%W__jcU)o02L1hR!}c8i)SiML*D=1j^sC@P9}d zY(WZnTM{_Bq7(X!H!VbZrvr?^4~#i4KJ^m(f+|i0kxSJS&Ms0WQ*{I7kCxd~;)T0d z_&dS2G@>4-W!hAQLvPGHF5ZnBA~T<2(F{zJsZWd0iY+G#Vl9fX`mlQg=+Ln!s}_>d zv>qMwAyNykqB(s=F4GVE>gjpat&n_i(D8HYi=bxrW9yrRM`jVub@6)JTKac+GzaZS zIgAEfh`}>654>qLNYgIr_bGIZ_htR|N5`MZmd!Q-HNs5ZOIyM8cNom+8eRGo)1N0w zV3FNh%5KCRTLq@HF{-Uj-0Z<mBwQ{nB&%BYN5Nq*-fIAhv<50-Dx2reO1&VMaY8TCX#JQ`+l zHeEb{gt;BOM03J*kqPiIsDsqJM0km4BXrrp?0;o>pVEx($b~n$3cS!wkYAAjmlH3v zcyps1H$EH;xD$DAgLuDaGR^|A4Q`|#90a4f05_2${ZBq9HACbJU3&VtRWIJ?ItfB` z3(le*tk6Zc+_(Rh!RSu~$OJ#1i?dUReXk@5;k)r3oT8VPGwv`Rfd4!L&-+LwlX>#K zVSvmg%MQ+-U#63ZHx3mvW|u(NAH!u-X9HMc-i-U;AT|A*#0UOf)5VK|d1V@ycvDah zVz3`H`2w1}6f)L*@g(FzmsAE;qddBe`sk3_p}>g-p&W}QZ4OGr1en$xG7B77t;$6MNq$FKt1AL9<;}iYf&F%%;7s%cq@XAG! z>pMZ6n1=>`wbbArmN|!4+5J9pCNxfwZx|q7trH1{`Q^KHBI8hDH@L!X@Xc8d*8Lm^ z^BpR^^aA(r(sW?X4736&nqroY6{-$UZx}vBVik?uY zMdO+HlTew)fStbxiptWk1x8%Q4mQLq=o!8#_2gStD{#ndk!Rv8 z9>QDn|Nm)ET#H_94?Kd7Y9W%I_n|quL^|AEX8yOh3B}8jnPn=Rcw4fV%!L!LOWI{J z+)ZkTH;Hc9P-m7vf#sC%l{VuXh__qPFr$U^{dMr|`|&LQ7iJ{hc>MP)&b8=6#4C*= z1Nt*;ZxG(ILTD3B@^zPbFcWQ={QEKmj6r`epR7)ie71`ebCJ&Z5OnE<%;y{qHaVBt zv4UN4I|#v1@}UJj5RLD34B88U53B_r5HG&`_u3&4OB>p#S}+#P;f8y_naxBAmI!aQ z8$2m3CHy6c3LaqES-_M+NI$VqPinAFHlv<&2UQwIuMwG*%jHXiBDHdde2Y-zR-WX& zfQxCm+F@QI_C~WG{mK)Nh0pAgfh439V1_U;Jye$&wo#y${p3D5ojliNaLt=RFOQO+ zb_I6nUr7u8bfQd>Z{AGO#$izIM|7nx_`Nc4!V1GVnLw3ll7`dV&>mE&AAD#mS;GrS zgIXic*I~n1_Jx1y1Qwwm7a5CJ(E>b2z3Rpr8CmhEmO#5^=bha;V3@5);^<8l$7s|6 zGf@f&CBJw(;}QtPEj*f!;QL;puo(g>J{cU`jeZqFr}`aEZx#6DMtq5X;JZ733+hi4 zDd#wU*VrnAV`nI;=A&$qx4ds4Q!{}O5@SiPa zK3NZ6a)2syUB2xpa$sMqLu(nfL4;?Ntc=cMgJ zb#Mk1>^=I_TWXTWUsY%#SfxNIHnCHRxrZM1?FHk3OD;jm!sQKX-g9=B)k z<9?i&>?Bba2ZvD6;-_KXZS-A0BB$_T#~e76Z+K&}N>y!X&W~Nbr?Q3|@}&oL4L#G6DS3)6=eb;X;LBP7DTlJm2TnkC-4 zxx!W=YSw44$pCOkt$YR7&djq4CG8$KwG*7A>!`S1S!%-|N6OcVV!RRf z^uQh257*f+`HpDTpOwZ=vb0EyZ3%jH7#!jy4vrtZ-H}nrgMv#7QY~J378|X2S!^)p zMqm>0BqD5p^FAm!Z&7dF^Y@Tx->-P z(*7rcF@@xprDRQPheJOK8+(IZ_Y!@ahIf!NGB1nC$3VxcLQRTb+wH)4>LFh~_U7E= zCE2MI+CZm#B`zE`b`NvT8MK~vKuBMLj=F(nbzs(6joxD~`h*MgvJ_MbUr;9pqx(pk zjvY+Lb#QVJ38Lx8q5G zilg%-QIAf_9O$d^b>D~7q`zZaeqf~^ojFlGmw+vCut(MV+1CchSLbHne-V289V8(9 z30ETCY<$Ir%-KuwlJDti&<|$^D-rC7lf321@)h0s{})Zlhd4q1>PjEbqWt)8*yws@ zqNBXAbqPdN@E#&ZC=xs*7R~Y;Jf^Eqp^F^R^GwZ;QSpBU2?@lzn}-QWM@B^jaP~KGn***0rr|$i3+di~o1zb214-v+-@j!HQVq zE7anRyLl*D){;kg0FTB+@bo9l$6wL51j4NejzkZmR^DDqD&oXTc$29@@zfvjvg=`# z9M@4yzm!P^X=rE&%2W&L_Zs*CL}lvErag=udl9v1xl9q?z`nHuKgWJhH1Rt0S!SoJ zj(xnBaRvV55ii1j0zLBuVecm2d|k-yq}l5w-|^~1%^C8yin9t{er1hjHm8K9|l#$uF63kf>ShKEpb%vw7 znfJH%JVVIuX~9M=RCjZ6fvh44Q&gZP;N=<|9$9%MuOQrhI0#B#nY`?al6H^f9p2b) zaHC$hasIz}uUgg?ymm3pRvL6GntrjIZgJi|A9d1JzWF&v6K2uAWP1sAa~+fDNqFu^thV`3P`CM$f!N6GcN{$D%nX)pO!q zAfY!|yHdVdcoeMi9u?mWt}-9ffdSQ56*P^_@NXW{|H<1%Enu%=;jGpe1Txu(?%xH) zoRuW)zGSy9rbh4L`=q&KgH74tp{$@!U1avcIxxrMROe^-V*|QHLZa>h^rAv}CSFMp39rYgTbE&RV$jX=U0-==#`2F4)LzHXe_SIY zM(ATTpyJiQ%uetU=^xQSW%Yu$iqfNTt%5dlj%7JF^tELwnDlk&m&?bS zx+H0$gv-L-X+VwHmXz%oRMl{jPBw!^<{%;HJ-+w)RwbkNx)_7~Q;=hv-TU$FE zHDC$d7yWocbF_Mo$yNVKSMXt zvG2h9q+`DB4h}Sl4K0b2a)nzNYt@8$i)Yp~;fAp?xABSbgHhyNwa0f6jWVS$=W&+I zJNs&hAkk_nc;jJI`oW}p?Ig)4j69G?l1+!8LYj<@xPhZ4*#Iqh(eMxoLH-}t_0~l3 zkG9&)x}rF?-3{H?YD-YnFY>D3Fp!aO6j={>TfH)M=94*`uKeDj;>TGIoBdVI2C|vR zcBrC-T+S?3nP1|yJ%nly=P2xa?=*;iM?~7UO~;GWv$d~b`#tpjc!tD#3>8Vfs3~7$ zXiWZPgnX0XpEL4=zqYG*_@D&+YP!})lmOx6kw&2%o6Vo^qB)vb(+yOmof>Yf48Bne zOne?UVh68<vRLEG^XTM!d^f4Jp1luJAK&2O`-wd1`-4_KlY9E^dei(=4-XGaxY zo?DX>4`L`^E0C?a4r#Q9tYtuGX5j@{4|6a4wqNbhOb6~@ZpF|ZkAX4$1MWR13_E|g zVcwd4{KJFJbD0;SYmx--hfnSyddtRil#Bc+aw#r4%5vNtPf4UHW2{0N>jqO+*hyR}rX0sZ!#tTjGEJG>IX&7F>H^y0}LR9e>DoBjwt0jiB8AINK3FpH_zI9FB zm04xa3M=BxduBCcio;W9d$bHEc)5vxL6Wzo2mdgERQBLypd|7F%F<^#qB=?B^|&|e z>b0dCz1rX9Zg{!7{WWhw1_y+@Y4u_W&eEu_j zfhU~8!G>^Do|TzoMlr+GFwG?If3!6Vn9v5Y0yVe2G`k@VKE4zMATsOf? zm~Lo!GNZieEMH_>$L{fw)1M3PMyRzQZS8O}$LM&~vb`AKXM=5^VFs z-1nXj>o~#1n?I@2ZIwCBuZ-uubO-kDdv_M>I{w9B`CYV%rWQ<+KKg`9?d zY$Bs@)J@^FXYtC9c;{e~^q>hH=~-&hO`LWDjTP_vxa&l6g?Qa3Kbq1~@@*fduA>fKn%|0tRNs_7uvN|0+bq}}nDJLTcCRag`7e>eI!@GSV z2XHIOj7!XaA8^$=*iq-9%D6!{&O`Qo3zQfOalG9?L0*X8e>fP|IW`g<>dfIF5_fo| zEFa2>uIMS&z|3V~F6+WCdYmd=2sCpTNjw`+!aR2b;@z(fN)_wWM5NO+=FeP-n;y$F zdk3Ap9wo#e)DH*P96sZJuJD)t`5yk~LNd{#J$Gv!%B8C~Z*o#)o8sczK&|zrrq(ld zHS)rqCV>CH;@uxjsK3U-{~U&rS-guT-b5=*x{Y`xDgtb@gM25d4{yK?k}pMFN40lf zprm#EHOb;XM>i4g6pfYsw~rQ)`lkq2BTm$`*H+@0Cr*>?q_O2DS+*v=he4eA)!;DK zaZY=3-b*o!g`#}!$0?t~9J*KT&Cf`X5iSUUw&do|REo_x45Vcc9*CvjE5|wGw?TP* zq#T<&3G>Yx654wW| zRO{6wmYye#TewjIa{-~ei(K8Y|6k`9SE(i?FEW#Ti?xvxx&A}d&tD*2lD()y5a zvVioiWPISlBb}M~!j5t|3OBe=EH996%x_``Oh$Qj9vK!`pdVzL@olUosV5NBE${i&>db73Ka5sn^O^v+Q_3E7I|5f`f#?_lTFXqTmkIt)0>8e%uP^ZH3;g;5zrMh)FYxON{Q3gF zzQC_9@aqfw`U1bcz^^ax>kIt)0>8e%uP^ZH3;g;5|IdAa+U0dZ?y3nWVyKpte^#_M zuhl<)-Co_>_iEj>ck@bJf9uk^Psi@vn)AQv)V56@lhVBWZymctHLu^GZu5$5BY$fz Q{-^x9GUhTpq9Qf_2Mg#8p#T5? diff --git a/Project64.dsw b/Project64.dsw deleted file mode 100644 index 3b0dcb394..000000000 --- a/Project64.dsw +++ /dev/null @@ -1,116 +0,0 @@ -Microsoft Developer Studio Workspace File, Format Version 6.00 -# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! - -############################################################################### - -Project: "7zip"=".\SOURCE\7zip\7zip.dsp" - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Project: "Common"=".\SOURCE\Common\Common.dsp" - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Project: "PjDirValidation"=".\SOURCE\PjDirValidation\PjDirValidation.dsp" - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name Common - End Project Dependency -}}} - -############################################################################### - -Project: "Project64"=".\Source\Project64\Project64.dsp" - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name Common - End Project Dependency - Begin Project Dependency - Project_Dep_Name 7zip - End Project Dependency -}}} - -############################################################################### - -Project: "RSP"=".\Source\RSP\RSP.dsp" - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name Common - End Project Dependency - Begin Project Dependency - Project_Dep_Name Settings - End Project Dependency -}}} - -############################################################################### - -Project: "Settings"=".\Source\Settings\Settings.dsp" - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Project: "WTL"=".\SOURCE\WTL\WTL.dsp" - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Global: - -Package=<5> -{{{ -}}} - -Package=<3> -{{{ -}}} - -############################################################################### - diff --git a/Project64.sln b/Project64.sln new file mode 100644 index 000000000..161dbcd14 --- /dev/null +++ b/Project64.sln @@ -0,0 +1,79 @@ + +Microsoft Visual Studio Solution File, Format Version 10.00 +# Visual Studio 2008 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "7zip", "SOURCE\7zip\7zip.vcproj", "{3326E128-33AF-422C-BB7C-67CC6B915610}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Common", "SOURCE\Common\Common.vcproj", "{B4A4B994-9111-42B1-93C2-6F1CA8BC4421}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PjDirValidation", "SOURCE\PjDirValidation\PjDirValidation.vcproj", "{5AEBC82D-FA27-4EE1-8AF5-656C351DAE66}" + ProjectSection(ProjectDependencies) = postProject + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421} = {B4A4B994-9111-42B1-93C2-6F1CA8BC4421} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Project64", "Source\Project64\Project64.vcproj", "{7E534C8E-1ACE-4A88-8807-39A11ED4DA18}" + ProjectSection(ProjectDependencies) = postProject + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421} = {B4A4B994-9111-42B1-93C2-6F1CA8BC4421} + {3326E128-33AF-422C-BB7C-67CC6B915610} = {3326E128-33AF-422C-BB7C-67CC6B915610} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RSP", "Source\RSP\RSP.vcproj", "{A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}" + ProjectSection(ProjectDependencies) = postProject + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421} = {B4A4B994-9111-42B1-93C2-6F1CA8BC4421} + {8B9961B1-88D9-4EA3-A752-507A00DD9F3D} = {8B9961B1-88D9-4EA3-A752-507A00DD9F3D} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Settings", "Source\Settings\Settings.vcproj", "{8B9961B1-88D9-4EA3-A752-507A00DD9F3D}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WTL", "SOURCE\WTL\WTL.vcproj", "{4BC6906B-213E-40D7-9FC7-1A93E228393D}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + External Release|Win32 = External Release|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {3326E128-33AF-422C-BB7C-67CC6B915610}.Debug|Win32.ActiveCfg = Debug|Win32 + {3326E128-33AF-422C-BB7C-67CC6B915610}.Debug|Win32.Build.0 = Debug|Win32 + {3326E128-33AF-422C-BB7C-67CC6B915610}.External Release|Win32.ActiveCfg = External Release|Win32 + {3326E128-33AF-422C-BB7C-67CC6B915610}.External Release|Win32.Build.0 = External Release|Win32 + {3326E128-33AF-422C-BB7C-67CC6B915610}.Release|Win32.ActiveCfg = Release|Win32 + {3326E128-33AF-422C-BB7C-67CC6B915610}.Release|Win32.Build.0 = Release|Win32 + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.Debug|Win32.ActiveCfg = Debug|Win32 + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.Debug|Win32.Build.0 = Debug|Win32 + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.External Release|Win32.ActiveCfg = External Release|Win32 + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.External Release|Win32.Build.0 = External Release|Win32 + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.Release|Win32.ActiveCfg = Release|Win32 + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.Release|Win32.Build.0 = Release|Win32 + {5AEBC82D-FA27-4EE1-8AF5-656C351DAE66}.Debug|Win32.ActiveCfg = Debug|Win32 + {5AEBC82D-FA27-4EE1-8AF5-656C351DAE66}.External Release|Win32.ActiveCfg = Release|Win32 + {5AEBC82D-FA27-4EE1-8AF5-656C351DAE66}.Release|Win32.ActiveCfg = Release|Win32 + {7E534C8E-1ACE-4A88-8807-39A11ED4DA18}.Debug|Win32.ActiveCfg = Debug|Win32 + {7E534C8E-1ACE-4A88-8807-39A11ED4DA18}.Debug|Win32.Build.0 = Debug|Win32 + {7E534C8E-1ACE-4A88-8807-39A11ED4DA18}.External Release|Win32.ActiveCfg = External Release|Win32 + {7E534C8E-1ACE-4A88-8807-39A11ED4DA18}.External Release|Win32.Build.0 = External Release|Win32 + {7E534C8E-1ACE-4A88-8807-39A11ED4DA18}.Release|Win32.ActiveCfg = Release|Win32 + {7E534C8E-1ACE-4A88-8807-39A11ED4DA18}.Release|Win32.Build.0 = Release|Win32 + {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Debug|Win32.ActiveCfg = Debug|Win32 + {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Debug|Win32.Build.0 = Debug|Win32 + {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.External Release|Win32.ActiveCfg = Release|Win32 + {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.External Release|Win32.Build.0 = Release|Win32 + {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Release|Win32.ActiveCfg = Release|Win32 + {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Release|Win32.Build.0 = Release|Win32 + {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Debug|Win32.ActiveCfg = Debug|Win32 + {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Debug|Win32.Build.0 = Debug|Win32 + {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.External Release|Win32.ActiveCfg = Release|Win32 + {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.External Release|Win32.Build.0 = Release|Win32 + {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Release|Win32.ActiveCfg = Release|Win32 + {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Release|Win32.Build.0 = Release|Win32 + {4BC6906B-213E-40D7-9FC7-1A93E228393D}.Debug|Win32.ActiveCfg = Debug|Win32 + {4BC6906B-213E-40D7-9FC7-1A93E228393D}.Debug|Win32.Build.0 = Debug|Win32 + {4BC6906B-213E-40D7-9FC7-1A93E228393D}.External Release|Win32.ActiveCfg = Release|Win32 + {4BC6906B-213E-40D7-9FC7-1A93E228393D}.External Release|Win32.Build.0 = Release|Win32 + {4BC6906B-213E-40D7-9FC7-1A93E228393D}.Release|Win32.ActiveCfg = Release|Win32 + {4BC6906B-213E-40D7-9FC7-1A93E228393D}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Source/Common/Ini File Class.cpp b/Source/Common/Ini File Class.cpp index 8f39fd73d..eabceb61a 100644 --- a/Source/Common/Ini File Class.cpp +++ b/Source/Common/Ini File Class.cpp @@ -120,6 +120,15 @@ int CIniFileBase::GetStringFromFile ( char * & String, char * &Data, int & MaxDa int dwRead = m_File.Read(&Data[DataSize],MaxDataSize - DataSize); if (dwRead == 0) { + if (DataSize > 0) + { + int len = DataSize + 1; + String = &Data[ReadPos]; + String[len-1] = 0; + DataSize = 0; + ReadPos = 0; + return len; + } return -1; } DataSize += dwRead; diff --git a/Source/Common/Ini File Class.h b/Source/Common/Ini File Class.h index ee2e67787..eb716e750 100644 --- a/Source/Common/Ini File Class.h +++ b/Source/Common/Ini File Class.h @@ -43,12 +43,12 @@ private: int GetStringFromFile ( char * & String, char * &Data, int & MaxDataSize, int & DataSize, int & ReadPos ); bool MoveToSectionNameData ( LPCSTR lpSectionName, bool ChangeCurrentSection ); const char * CleanLine ( char * const Line ); - void SaveCurrentSection ( void ); void ClearSectionPosList( long FilePos ); protected: void OpenIniFileReadOnly(); void OpenIniFile(bool bCreate = true); + void SaveCurrentSection ( void ); public: CIniFileBase( CFileBase & FileObject, LPCTSTR FileName ); @@ -113,6 +113,7 @@ public: } virtual ~CIniFileT(void) { + SaveCurrentSection(); } protected: diff --git a/Source/Common/MemTest.cpp b/Source/Common/MemTest.cpp index a400f0715..55d3c4d02 100644 --- a/Source/Common/MemTest.cpp +++ b/Source/Common/MemTest.cpp @@ -10,37 +10,9 @@ #include "MemTest.h" #ifdef MEM_LEAK_TEST -typedef struct { - char File[300]; - int line; - int size; - int order; -} DEBUG_LOCATION; - -typedef std::map MEMLIST; -typedef MEMLIST::iterator MEMLIST_ITER; - -class CMemList { - MEMLIST MemList; - HANDLE hSemaphone; - DWORD ThreadID; - - enum INIT { Initialized = 123, NotInitialized }; - INIT State; - int order; - -public: - CMemList(); - ~CMemList(); - void * AddItem ( size_t size, LPCSTR filename, int line ); - void * AddItem ( size_t size, LPCSTR filename, int line, void * MemoryPtr ); - void * ReAllocItem ( void * ptr, size_t size, LPCSTR filename, int line ); - void removeItem ( void * ptr, bool FreePointer ); -}; - #include //Needed for ShellExecute #pragma comment(lib, "shell32.lib") //Needed for ShellExecute - +#include #undef new #undef malloc #undef realloc @@ -63,30 +35,53 @@ CMemList::CMemList() { hSemaphone = CreateSemaphore(NULL, 1,1, NULL); State = Initialized; order = 0; + LogAllocate = false; + ThreadID = 0; + m_hModule = NULL; + + for (UINT_PTR TestLoc = ((UINT_PTR)::MemList) & ~0xFFF; TestLoc != 0; TestLoc -= 0x1000) + { + WORD HeaderID = *(WORD *)TestLoc; + if (HeaderID != 'ZM') + { + continue; + } + m_hModule = (HMODULE)TestLoc; + break; + } } CMemList::~CMemList() { - int ItemsLeft = MemList.size(); + size_t ItemsLeft = MemList.size(); if (ItemsLeft > 0) { - char path_buffer[_MAX_PATH], drive[_MAX_DRIVE] ,dir[_MAX_DIR]; - char fname[_MAX_FNAME],ext[_MAX_EXT], LogFileName[_MAX_PATH]; + TCHAR path_buffer[_MAX_PATH], drive[_MAX_DRIVE] ,dir[_MAX_DIR]; + TCHAR fname[_MAX_FNAME],ext[_MAX_EXT], LogFileName[_MAX_PATH]; - GetModuleFileName(NULL,path_buffer,sizeof(path_buffer)); - _splitpath( path_buffer, drive, dir, fname, ext ); - _makepath( LogFileName, drive, dir, fname, "leak.csv" ); + memset(path_buffer, 0, sizeof(path_buffer)); + memset(drive, 0, sizeof(drive)); + memset(dir, 0, sizeof(dir)); + memset(fname, 0, sizeof(fname)); + memset(ext, 0, sizeof(ext)); + memset(LogFileName, 0, sizeof(LogFileName)); + + GetModuleFileName(m_hModule,path_buffer,sizeof(path_buffer)); + _tsplitpath( path_buffer, drive, dir, fname, ext ); + + _tmakepath( LogFileName, drive, dir, fname, _T("leak.csv") ); - HANDLE hLogFile; + HANDLE hLogFile = INVALID_HANDLE_VALUE; do { - hLogFile = CreateFile(LogFileName,GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE,NULL, + hLogFile = CreateFile(LogFileName,GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE,NULL, CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL | FILE_FLAG_SEQUENTIAL_SCAN, NULL); if (hLogFile == INVALID_HANDLE_VALUE) { if (GetLastError() == ERROR_SHARING_VIOLATION) { - std::string Msg = std::string(LogFileName) + "\nCan not be opened for writing please close app using this file\n\nTry Again ?"; - int Result = MessageBox(NULL,Msg.c_str(),"Memory Leak",MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND | MB_SERVICE_NOTIFICATION); + TCHAR Msg[3000]; + _stprintf(Msg,TEXT("%s\nCan not be opened for writing please close app using this file\n\nTry Again ?"),LogFileName); + int Result = MessageBox(NULL,Msg,_T("Memory Leak"),MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND | MB_SERVICE_NOTIFICATION); if (Result == IDNO) { break; } @@ -98,10 +93,10 @@ CMemList::~CMemList() { { SetFilePointer(hLogFile,0,NULL,FILE_BEGIN); - DWORD dwWritten; + DWORD dwWritten = 0; char Msg[800]; _snprintf(Msg,sizeof(Msg),"Order, Source File, Line Number, Mem Size\r\n"); - WriteFile( hLogFile,Msg,strlen(Msg),&dwWritten,NULL ); + WriteFile( hLogFile,Msg,(DWORD)strlen(Msg),&dwWritten,NULL ); for (MEMLIST_ITER item = MemList.begin(); item != MemList.end(); item++) { @@ -110,14 +105,15 @@ CMemList::~CMemList() { (*item).second.File, (*item).second.line, (*item).second.size); - WriteFile( hLogFile,Msg,strlen(Msg),&dwWritten,NULL ); + WriteFile( hLogFile,Msg,(DWORD)strlen(Msg),&dwWritten,NULL ); } CloseHandle(hLogFile); } - std::string Msg = std::string(fname) + std::string(ext) + "\n\nMemory Leaks detected\n\nOpen the Log File ?"; - int Result = MessageBox(NULL,Msg.c_str(),"Memory Leak",MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND| MB_SERVICE_NOTIFICATION); + TCHAR Msg[3000]; + _stprintf(Msg,TEXT("%s%s\n\nMemory Leaks detected\n\nOpen the Log File ?"),fname,ext); + int Result = MessageBox(NULL,Msg,_T("Memory Leak"),MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND| MB_SERVICE_NOTIFICATION); if (Result == IDYES) { - ShellExecute(NULL,"open",LogFileName,NULL,NULL,SW_SHOW); + ShellExecute(NULL,_T("open"),LogFileName,NULL,NULL,SW_SHOW); } } CloseHandle(hSemaphone); @@ -125,18 +121,18 @@ CMemList::~CMemList() { State = NotInitialized; } - - -void * CMemList::AddItem ( size_t size, LPCSTR filename, int line) +void * CMemList::AddItem ( size_t size, char * filename, int line) { void *res = malloc(size); - if (res == NULL) { - _asm int 3 + if (res == NULL) + { + return res; } - return AddItem(size,filename,line,res); + RecordAddItem(res,size,filename,line); + return res; } -void * CMemList::AddItem ( size_t size, LPCSTR filename, int line, void * MemoryPtr ) +void CMemList::RecordAddItem ( void * ptr, size_t size, const char * filename, int line) { __try { if (State == Initialized && hSemaphone != NULL) { @@ -148,27 +144,32 @@ void * CMemList::AddItem ( size_t size, LPCSTR filename, int line, void * Memory DEBUG_LOCATION info; strncpy(info.File,filename,sizeof(info.File)); info.line = line; - info.size = size; + info.size = (int)size; info.order = order++; - MemList.insert(MEMLIST::value_type(MemoryPtr,info)); + Insert(ptr, info); + long dwSemCount = 0; - ThreadID = -1; + ThreadID = (DWORD)-1; ReleaseSemaphore(hSemaphone,1,&dwSemCount); } } } __except (EXCEPTION_EXECUTE_HANDLER) { - _asm int 3 + //_asm int 3 } - return MemoryPtr; } -void * CMemList::ReAllocItem ( void * ptr, size_t size, LPCSTR filename, int line) +void CMemList::Insert(void *res, DEBUG_LOCATION &info) +{ + MemList.insert(MEMLIST::value_type(res,info)); +} + +void * CMemList::ReAllocItem ( void * ptr, size_t size, const char * filename, int line) { void *res = realloc(ptr, size); if (res == NULL) { - _asm int 3 + return res; } if (ptr != res) { __try { @@ -181,52 +182,54 @@ void * CMemList::ReAllocItem ( void * ptr, size_t size, LPCSTR filename, int lin DEBUG_LOCATION info; strncpy(info.File,filename,sizeof(info.File)); info.line = line; - info.size = size; + info.size = (int)size; info.order = order++; - MemList.insert(MEMLIST::value_type(res,info)); + Insert(res, info); //remove old pointer - MEMLIST_ITER item = MemList.find(ptr); - if (item != MemList.end()) { - MemList.erase(ptr); - } + Remove(ptr); long dwSemCount = 0; - ThreadID = -1; + ThreadID = (DWORD)-1; ReleaseSemaphore(hSemaphone,1,&dwSemCount); } } } __except (EXCEPTION_EXECUTE_HANDLER) { - _asm int 3 + //_asm int 3 } } return res; } -void CMemList::removeItem (void * ptr, bool FreePointer ) +void CMemList::Remove(void *ptr) { - if (FreePointer) - { - free(ptr); + //remove old pointer + MEMLIST_ITER item = MemList.find(ptr); + if (item != MemList.end()) { + MemList.erase(ptr); } +} + +void CMemList::removeItem (void * ptr ) +{ + free(ptr); __try { - if (State == Initialized && hSemaphone != NULL) { + if (State == Initialized && hSemaphone != NULL) { DWORD CurrentThread = GetCurrentThreadId(); DWORD Result = WaitForSingleObject(hSemaphone,CurrentThread != ThreadID ? 30000 : 0); if (Result != WAIT_TIMEOUT) { ThreadID = CurrentThread; - MEMLIST_ITER item = MemList.find(ptr); - if (item != MemList.end()) { - MemList.erase(ptr); - } + + Remove(ptr); + long dwSemCount = 0; - ThreadID = -1; + ThreadID = (DWORD)-1; ReleaseSemaphore(hSemaphone,1,&dwSemCount); } } }__except(EXCEPTION_EXECUTE_HANDLER ){ - _asm int 3 + //_asm int 3 } } @@ -242,11 +245,6 @@ void* MemTest_realloc (void* ptr, size_t size, char* filename, int line) { return MemList()->ReAllocItem(ptr, size,filename,line); } -void MemTest_free(void* ptr) -{ - MemList()->removeItem(ptr,true); -} - void* operator new (size_t size, char* filename, int line) { return MemList()->AddItem(size,filename,line); @@ -269,7 +267,7 @@ void* operator new [] (size_t size) void operator delete ( void* ptr) { - MemList()->removeItem(ptr,true); + MemList()->removeItem(ptr); } void operator delete[](void* ptr) @@ -289,7 +287,7 @@ LPVOID MemTest_VirtualAlloc( if (ptr && lpAddress == NULL && (flAllocationType & MEM_RESERVE) != 0) { - MemList()->AddItem(dwSize,filename,line,ptr); + MemList()->RecordAddItem(ptr,dwSize,filename,line); } return ptr; } @@ -298,7 +296,7 @@ BOOL MemTest_VirtualFree( LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType ) { if ((dwFreeType & MEM_RELEASE) != 0) { - MemList()->removeItem(lpAddress,false); + MemList()->removeItem(lpAddress); } return VirtualFree(lpAddress,dwSize,dwFreeType); } diff --git a/Source/Common/MemTest.h b/Source/Common/MemTest.h index c65c59945..6c49f4cdf 100644 --- a/Source/Common/MemTest.h +++ b/Source/Common/MemTest.h @@ -10,26 +10,57 @@ #pragma warning(disable:4786) #pragma warning(disable:4291) +#ifndef _WIN32_WINNT +#define _WIN32_WINNT 0x0500 +#endif + #include - -#ifdef __cplusplus -#include -#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include -extern "C" { -#endif -void* MemTest_malloc(size_t size, char* filename, int line); -void* MemTest_realloc(void* ptr, size_t size, char* filename, int line); -void MemTest_AddLeak(char* Comment); -void MemTest_free(void* ptr); -LPVOID MemTest_VirtualAlloc(LPVOID lpAddress, SIZE_T dwSize,DWORD flAllocationType,DWORD flProtect, LPCSTR filename, int line); -BOOL MemTest_VirtualFree( LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType ); -#ifdef __cplusplus -} -#endif -#ifdef __cplusplus + +typedef struct { + char File[300]; + int line; + int size; + int order; +} DEBUG_LOCATION; + +typedef std::map MEMLIST; +typedef MEMLIST::iterator MEMLIST_ITER; + +class CMemList { + MEMLIST MemList; + HANDLE hSemaphone; + DWORD ThreadID; + HMODULE m_hModule; + + enum INIT { Initialized = 123, NotInitialized }; + INIT State; + int order; + bool LogAllocate; + + void Insert(void *res, DEBUG_LOCATION &info); + void Remove(void *ptr); + +public: + CMemList(); + ~CMemList(); + void * AddItem ( size_t size, char * filename, int line ); + void * ReAllocItem ( void * ptr, size_t size, const char * filename, int line ); + void removeItem ( void * ptr ); + void RecordAddItem ( void * ptr, size_t size, const char * filename, int line ); +}; + void* operator new (size_t size ); void* operator new (size_t size, char* filename, int line); void* operator new [] (size_t size ); @@ -37,18 +68,22 @@ void* operator new [] (size_t size, char* filename, int line); void operator delete ( void* ptr); void operator delete[](void* ptr); +void* MemTest_malloc(size_t size, char* filename, int line); +void* MemTest_realloc(void* ptr, size_t size, char* filename, int line); +void MemTest_AddLeak(char* Comment); +LPVOID MemTest_VirtualAlloc(LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect, LPCSTR filename, int line); +BOOL MemTest_VirtualFree( LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType ); + + +#endif + #undef new -#define new new(__FILE__, __LINE__) - -#endif - -#endif - #undef malloc #undef free +#define new new(__FILE__, __LINE__) #define malloc(x) (MemTest_malloc((x),__FILE__, __LINE__)) #define realloc(mem,x) (MemTest_realloc((mem),(x),__FILE__, __LINE__)) -#define free(x) (MemTest_free (x)) +#define free(x) (delete (x)) #define VirtualAlloc(lpAddress, dwSize, flAllocationType, flProtect ) \ (MemTest_VirtualAlloc((lpAddress), (dwSize), (flAllocationType), (flProtect),__FILE__, __LINE__)) #define VirtualFree(lpAddress, dwSize, dwFreeType ) \ diff --git a/Source/Common/Trace.cpp b/Source/Common/Trace.cpp index 5b56ac1b9..314b53dc7 100644 --- a/Source/Common/Trace.cpp +++ b/Source/Common/Trace.cpp @@ -37,11 +37,11 @@ CTraceModule * CTraceLog::RemoveTraceModule ( CTraceModule * TraceModule ) { CGuard Guard(m_CS); - for (int i = 0; i < (int)m_Modules.size(); i++ ) + for (std::vector::iterator itr = m_Modules.begin(); itr != m_Modules.end(); itr++) { - if (m_Modules[i] == TraceModule) + if ((*itr) == TraceModule) { - m_Modules.erase(&m_Modules[i]); + m_Modules.erase(itr); return TraceModule; } } diff --git a/Source/Project64/N64 System/Cheat Class.cpp b/Source/Project64/N64 System/Cheat Class.cpp index 4af8f219c..12c85e974 100644 --- a/Source/Project64/N64 System/Cheat Class.cpp +++ b/Source/Project64/N64 System/Cheat Class.cpp @@ -310,14 +310,14 @@ int CCheats::ApplyCheatEntry (CMipsMemory * _MMU, const CODES & CodeEntry, int C int numrepeats = (Code.Command & 0x0000FF00) >> 8; int offset = Code.Command & 0x000000FF; int incr = Code.Value; - int count; + int i; switch (NextCodeEntry.Command & 0xFF000000) { case 0x10000000: // Xplorer64 case 0x80000000: Address = 0x80000000 | (NextCodeEntry.Command & 0xFFFFFF); wMemory = NextCodeEntry.Value; - for (count=0; countSB_VAddr(Address,wMemory); Address += offset; wMemory += incr; @@ -327,7 +327,7 @@ int CCheats::ApplyCheatEntry (CMipsMemory * _MMU, const CODES & CodeEntry, int C case 0x81000000: Address = 0x80000000 | (NextCodeEntry.Command & 0xFFFFFF); wMemory = NextCodeEntry.Value; - for (count=0; countSH_VAddr(Address,wMemory); Address += offset; wMemory += incr; @@ -554,7 +554,7 @@ bool CCheats::CheatUsesCodeExtensions (const stdstr &LineEntry) { const char *ReadPos = &(LineEntry.c_str())[EndOfName + 2]; bool CodeExtension = false; - for (int count = 0; count < MaxGSEntries && CodeExtension == false; count ++) { + for (int i = 0; i < MaxGSEntries && CodeExtension == false; i ++) { if (strchr(ReadPos,' ') == NULL) { break; } ReadPos = strchr(ReadPos,' ') + 1; if (ReadPos[0] == '?' && ReadPos[1]== '?') { CodeExtension = true; } @@ -574,11 +574,11 @@ void CCheats::RefreshCheatManager(void) m_DeleteingEntries = true; TreeView_DeleteAllItems((HWND)m_hCheatTree); m_DeleteingEntries = false; - for (int count = 0; count < MaxCheats; count ++ ) { - stdstr Name = GetCheatName(count,true); + for (int i = 0; i < MaxCheats; i ++ ) { + stdstr Name = GetCheatName(i,true); if (Name.length() == 0) { break; } - AddCodeLayers(count,Name,(WND_HANDLE)TVI_ROOT, _Settings->LoadBoolIndex(Cheat_Active,count) != 0); + AddCodeLayers(i,Name,(WND_HANDLE)TVI_ROOT, _Settings->LoadBoolIndex(Cheat_Active,i) != 0); } } @@ -742,27 +742,28 @@ int CALLBACK CCheats::CheatAddProc (WND_HANDLE hDlg,DWORD uMsg,DWORD wParam, DWO CCheats * _this = (CCheats *)GetProp((HWND)hDlg,"Class"); stdstr NewCheatName = GetDlgItemStr(hDlg,IDC_CODE_NAME); - for (int count = 0; count < MaxCheats; count ++) { - if (_this->m_EditCheat == count) + int i = 0; + for (i = 0; i < MaxCheats; i ++) { + if (_this->m_EditCheat == i) { continue; } - stdstr CheatName(_this->GetCheatName(count,false)); + stdstr CheatName(_this->GetCheatName(i,false)); if (CheatName.length() == 0) { if (_this->m_EditCheat < 0) { - _this->m_EditCheat = count; + _this->m_EditCheat = i; } break; } - if (stricmp(CheatName.c_str(),NewCheatName.c_str()) == 0) { + if (_stricmp(CheatName.c_str(),NewCheatName.c_str()) == 0) { _Notify->DisplayError(GS(MSG_CHEAT_NAME_IN_USE)); SetFocus(GetDlgItem((HWND)hDlg,IDC_CODE_NAME)); return true; } } - if (_this->m_EditCheat < 0 && count == MaxCheats) { + if (_this->m_EditCheat < 0 && i == MaxCheats) { _Notify->DisplayError(GS(MSG_MAX_CHEATS)); return true; } @@ -830,7 +831,7 @@ int CALLBACK CCheats::CheatAddProc (WND_HANDLE hDlg,DWORD uMsg,DWORD wParam, DWO LPCSTR ReadPos = strrchr(String,'"') + 2; stdstr Buffer; do { - char * End = strchr(ReadPos,','); + char * End = strchr((char *)ReadPos,','); if (End) { Buffer.append(ReadPos,End - ReadPos); @@ -853,7 +854,7 @@ int CALLBACK CCheats::CheatAddProc (WND_HANDLE hDlg,DWORD uMsg,DWORD wParam, DWO if (ReadPos) { ReadPos += 1; do { - char * End = strchr(ReadPos,','); + char * End = strchr((char *)ReadPos,','); if (End) { Buffer.append(ReadPos,End - ReadPos); @@ -1133,7 +1134,7 @@ int CALLBACK CCheats::CheatListProc (WND_HANDLE hDlg,DWORD uMsg,DWORD wParam, DW //Update cheat listing with new extention stdstr CheatName(_this->GetCheatName(item.lParam,true)); - char * Cheat = strrchr(CheatName.c_str(),'\\'); + char * Cheat = strrchr((char *)CheatName.c_str(),'\\'); if (Cheat == NULL) { Cheat = const_cast(CheatName.c_str()); } else { @@ -1525,8 +1526,8 @@ void CCheats::MenuSetText ( MENU_HANDLE hMenu, int MenuPos, const char * Title, MenuInfo.cch = 256; GetMenuItemInfo((HMENU)hMenu,MenuPos,true,&MenuInfo); - if (strchr(Title,'\t') != NULL) { *(strchr(Title,'\t')) = '\0'; } strcpy(String,Title); + if (strchr(String,'\t') != NULL) { *(strchr(String,'\t')) = '\0'; } if (ShotCut) { sprintf(String,"%s\t%s",String,ShotCut); } SetMenuItemInfo((HMENU)hMenu,MenuPos,true,&MenuInfo); } diff --git a/Source/Project64/N64 System/Mips/Dma.h b/Source/Project64/N64 System/Mips/Dma.h index 5d7ce8c4e..5d46082c9 100644 --- a/Source/Project64/N64 System/Mips/Dma.h +++ b/Source/Project64/N64 System/Mips/Dma.h @@ -2,15 +2,17 @@ class CDMA { CDMA(); +public: + void SP_DMA_READ ( void ); + void SP_DMA_WRITE ( void ); + void PI_DMA_READ ( void ); + void PI_DMA_WRITE ( void ); + protected: CDMA (CFlashram & FlashRam, CSram & Sram); - void PI_DMA_READ ( void ); - void PI_DMA_WRITE ( void ); //void SI_DMA_READ ( void ); //void SI_DMA_WRITE ( void ); - void SP_DMA_READ ( void ); - void SP_DMA_WRITE ( void ); private: CFlashram & m_FlashRam; diff --git a/Source/Project64/N64 System/Mips/Memory Virtual Mem.cpp b/Source/Project64/N64 System/Mips/Memory Virtual Mem.cpp index 42514fafe..e860dd073 100644 --- a/Source/Project64/N64 System/Mips/Memory Virtual Mem.cpp +++ b/Source/Project64/N64 System/Mips/Memory Virtual Mem.cpp @@ -34,10 +34,10 @@ void CMipsMemoryVM::Reset( bool EraseMemory ) { memset(m_TLB_ReadMap,0,(0xFFFFF * sizeof(DWORD))); memset(m_TLB_WriteMap,0,(0xFFFFF * sizeof(DWORD))); - for (DWORD count = 0x80000000; count < 0xC0000000; count += 0x1000) + for (DWORD address = 0x80000000; address < 0xC0000000; address += 0x1000) { - m_TLB_ReadMap[count >> 12] = ((DWORD)m_RDRAM + (count & 0x1FFFFFFF)) - count; - m_TLB_WriteMap[count >> 12] = ((DWORD)m_RDRAM + (count & 0x1FFFFFFF)) - count; + m_TLB_ReadMap[address >> 12] = ((DWORD)m_RDRAM + (address & 0x1FFFFFFF)) - address; + m_TLB_WriteMap[address >> 12] = ((DWORD)m_RDRAM + (address & 0x1FFFFFFF)) - address; } if (_Settings->LoadDword(Rdb_TLB_VAddrStart) != 0) @@ -46,9 +46,9 @@ void CMipsMemoryVM::Reset( bool EraseMemory ) DWORD Len = _Settings->LoadDword(Rdb_TLB_VAddrLen); //0x01000000; DWORD PAddr = _Settings->LoadDword(Rdb_TLB_PAddrStart); //0x10034b30; DWORD End = Start + Len; - for (count = Start; count < End; count += 0x1000) { - m_TLB_ReadMap[count >> 12] = ((DWORD)m_RDRAM + (count - Start + PAddr)) - count; - m_TLB_WriteMap[count >> 12] = ((DWORD)m_RDRAM + (count - Start + PAddr)) - count; + for (DWORD address = Start; address < End; address += 0x1000) { + m_TLB_ReadMap[address >> 12] = ((DWORD)m_RDRAM + (address - Start + PAddr)) - address; + m_TLB_WriteMap[address >> 12] = ((DWORD)m_RDRAM + (address - Start + PAddr)) - address; } } } @@ -415,7 +415,7 @@ void CMipsMemoryVM::Compile_LW (x86Reg Reg, DWORD VAddr ) { m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + g_CountPerOp) ; BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)this,x86_ECX); - Call_Direct(AddressOf(CMipsMemoryVM::UpdateHalfLine),"CMipsMemoryVM::UpdateHalfLine"); + Call_Direct(AddressOf(&CMipsMemoryVM::UpdateHalfLine),"CMipsMemoryVM::UpdateHalfLine"); AfterCallDirect(m_RegWorkingSet); MoveVariableToX86reg(&m_HalfLine,"m_HalfLine",Reg); break; @@ -434,7 +434,7 @@ void CMipsMemoryVM::Compile_LW (x86Reg Reg, DWORD VAddr ) { m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + g_CountPerOp) ; BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Audio,x86_ECX); - Call_Direct(AddressOf(CAudio::GetLength),"CAudio::GetLength"); + Call_Direct(AddressOf(&CAudio::GetLength),"CAudio::GetLength"); MoveX86regToVariable(x86_EAX,&m_TempValue,"m_TempValue"); AfterCallDirect(m_RegWorkingSet); MoveVariableToX86reg(&m_TempValue,"m_TempValue",Reg); @@ -455,7 +455,7 @@ void CMipsMemoryVM::Compile_LW (x86Reg Reg, DWORD VAddr ) { { BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Audio,x86_ECX); - Call_Direct(AddressOf(CAudio::GetStatus),"GetStatus"); + Call_Direct(AddressOf(&CAudio::GetStatus),"GetStatus"); MoveX86regToVariable(x86_EAX,&m_TempValue,"m_TempValue"); AfterCallDirect(m_RegWorkingSet); MoveVariableToX86reg(&m_TempValue,"m_TempValue",Reg); @@ -680,7 +680,7 @@ void CMipsMemoryVM::Compile_SW_Const ( DWORD Value, DWORD VAddr ) { MoveConstToVariable(Value,&_Reg->SP_RD_LEN_REG,"SP_RD_LEN_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((ULONG)((CDMA *)this),x86_ECX); - Call_Direct(AddressOf(CDMA::SP_DMA_READ),"CDMA::SP_DMA_READ"); + Call_Direct(AddressOf(&CDMA::SP_DMA_READ),"CDMA::SP_DMA_READ"); AfterCallDirect(m_RegWorkingSet); break; case 0x04040010: @@ -723,7 +723,7 @@ void CMipsMemoryVM::Compile_SW_Const ( DWORD Value, DWORD VAddr ) { OrConstToVariable(MI_INTR_SP,&_Reg->MI_INTR_REG,"MI_INTR_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); } if ( ( Value & SP_CLR_INTR ) != 0) { @@ -732,7 +732,7 @@ void CMipsMemoryVM::Compile_SW_Const ( DWORD Value, DWORD VAddr ) { BeforeCallDirect(m_RegWorkingSet); Call_Direct(RunRsp,"RunRsp"); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); } else { BeforeCallDirect(m_RegWorkingSet); @@ -839,7 +839,7 @@ void CMipsMemoryVM::Compile_SW_Const ( DWORD Value, DWORD VAddr ) { AndConstToVariable(~MI_INTR_VI,&_Reg->MI_INTR_REG,"MI_INTR_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); break; case 0x04400014: MoveConstToVariable(Value,&_Reg->VI_BURST_REG,"VI_BURST_REG"); break; @@ -865,7 +865,7 @@ void CMipsMemoryVM::Compile_SW_Const ( DWORD Value, DWORD VAddr ) { { X86BreakPoint(__FILE__,__LINE__); MoveConstToX86reg((DWORD)_Audio,x86_ECX); - Call_Direct(AddressOf(CAudio::LenChanged),"LenChanged"); + Call_Direct(AddressOf(&CAudio::LenChanged),"LenChanged"); } else { Call_Direct(_Plugins->Audio()->LenChanged,"AiLenChanged"); } @@ -883,7 +883,7 @@ void CMipsMemoryVM::Compile_SW_Const ( DWORD Value, DWORD VAddr ) { #endif BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); break; case 0x04500010: @@ -905,14 +905,14 @@ void CMipsMemoryVM::Compile_SW_Const ( DWORD Value, DWORD VAddr ) { MoveConstToVariable(Value,&_Reg->PI_RD_LEN_REG,"PI_RD_LEN_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((ULONG)((CDMA *)this),x86_ECX); - Call_Direct(AddressOf(CDMA::PI_DMA_READ),"CDMA::PI_DMA_READ"); + Call_Direct(AddressOf(&CDMA::PI_DMA_READ),"CDMA::PI_DMA_READ"); AfterCallDirect(m_RegWorkingSet); break; case 0x0460000C: MoveConstToVariable(Value,&_Reg->PI_WR_LEN_REG,"PI_WR_LEN_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((ULONG)((CDMA *)this),x86_ECX); - Call_Direct(AddressOf(CDMA::PI_DMA_WRITE),"CDMA::PI_DMA_WRITE"); + Call_Direct(AddressOf(&CDMA::PI_DMA_WRITE),"CDMA::PI_DMA_WRITE"); AfterCallDirect(m_RegWorkingSet); break; case 0x04600010: @@ -920,7 +920,7 @@ void CMipsMemoryVM::Compile_SW_Const ( DWORD Value, DWORD VAddr ) { AndConstToVariable(~MI_INTR_PI,&_Reg->MI_INTR_REG,"MI_INTR_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); } break; @@ -949,14 +949,14 @@ void CMipsMemoryVM::Compile_SW_Const ( DWORD Value, DWORD VAddr ) { MoveConstToVariable(Value,&_Reg->SI_PIF_ADDR_RD64B_REG,"SI_PIF_ADDR_RD64B_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)((CPifRam *)this),x86_ECX); - Call_Direct(AddressOf(CPifRam::SI_DMA_READ),"CPifRam::SI_DMA_READ"); + Call_Direct(AddressOf(&CPifRam::SI_DMA_READ),"CPifRam::SI_DMA_READ"); AfterCallDirect(m_RegWorkingSet); break; case 0x04800010: MoveConstToVariable(Value,&_Reg->SI_PIF_ADDR_WR64B_REG,"SI_PIF_ADDR_WR64B_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)((CPifRam *)this),x86_ECX); - Call_Direct(AddressOf(CPifRam::SI_DMA_WRITE),"CPifRam::SI_DMA_WRITE"); + Call_Direct(AddressOf(&CPifRam::SI_DMA_WRITE),"CPifRam::SI_DMA_WRITE"); AfterCallDirect(m_RegWorkingSet); break; case 0x04800018: @@ -964,7 +964,7 @@ void CMipsMemoryVM::Compile_SW_Const ( DWORD Value, DWORD VAddr ) { AndConstToVariable(~SI_STATUS_INTERRUPT,&_Reg->SI_STATUS_REG,"SI_STATUS_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); break; default: @@ -1008,14 +1008,14 @@ void CMipsMemoryVM::Compile_SW_Register (x86Reg Reg, DWORD VAddr ) MoveX86regToVariable(Reg,&_Reg->SP_RD_LEN_REG,"SP_RD_LEN_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((ULONG)((CDMA *)this),x86_ECX); - Call_Direct(AddressOf(CDMA::SP_DMA_READ),"CDMA::SP_DMA_READ"); + Call_Direct(AddressOf(&CDMA::SP_DMA_READ),"CDMA::SP_DMA_READ"); AfterCallDirect(m_RegWorkingSet); break; case 0x0404000C: MoveX86regToVariable(Reg,&_Reg->SP_WR_LEN_REG,"SP_WR_LEN_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((ULONG)((CDMA *)this),x86_ECX); - Call_Direct(AddressOf(CDMA::SP_DMA_WRITE),"CDMA::SP_DMA_WRITE"); + Call_Direct(AddressOf(&CDMA::SP_DMA_WRITE),"CDMA::SP_DMA_WRITE"); AfterCallDirect(m_RegWorkingSet); break; case 0x04040010: @@ -1102,7 +1102,7 @@ void CMipsMemoryVM::Compile_SW_Register (x86Reg Reg, DWORD VAddr ) AndConstToVariable(~MI_INTR_VI,&_Reg->MI_INTR_REG,"MI_INTR_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); break; case 0x04400014: MoveX86regToVariable(Reg,&_Reg->VI_BURST_REG,"VI_BURST_REG"); break; @@ -1131,7 +1131,7 @@ void CMipsMemoryVM::Compile_SW_Register (x86Reg Reg, DWORD VAddr ) if (_Settings->LoadBool(Game_FixedAudio)) { MoveConstToX86reg((DWORD)_Audio,x86_ECX); - Call_Direct(AddressOf(CAudio::LenChanged),"LenChanged"); + Call_Direct(AddressOf(&CAudio::LenChanged),"LenChanged"); } else { Call_Direct(_Plugins->Audio()->LenChanged,"_Plugins->Audio()->LenChanged"); } @@ -1146,7 +1146,7 @@ void CMipsMemoryVM::Compile_SW_Register (x86Reg Reg, DWORD VAddr ) AndConstToVariable(~MI_INTR_AI,&_Reg->m_AudioIntrReg,"m_AudioIntrReg"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); break; case 0x04500010: @@ -1167,14 +1167,14 @@ void CMipsMemoryVM::Compile_SW_Register (x86Reg Reg, DWORD VAddr ) MoveX86regToVariable(Reg,&_Reg->PI_RD_LEN_REG,"PI_RD_LEN_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((ULONG)((CDMA *)this),x86_ECX); - Call_Direct(AddressOf(CDMA::PI_DMA_READ),"CDMA::PI_DMA_READ"); + Call_Direct(AddressOf(&CDMA::PI_DMA_READ),"CDMA::PI_DMA_READ"); AfterCallDirect(m_RegWorkingSet); break; case 0x0460000C: MoveX86regToVariable(Reg,&_Reg->PI_WR_LEN_REG,"PI_WR_LEN_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((ULONG)((CDMA *)this),x86_ECX); - Call_Direct(AddressOf(CDMA::PI_DMA_WRITE),"CDMA::PI_DMA_WRITE"); + Call_Direct(AddressOf(&CDMA::PI_DMA_WRITE),"CDMA::PI_DMA_WRITE"); AfterCallDirect(m_RegWorkingSet); break; case 0x04600010: @@ -1182,7 +1182,7 @@ void CMipsMemoryVM::Compile_SW_Register (x86Reg Reg, DWORD VAddr ) AndConstToVariable(~MI_INTR_PI,&_Reg->MI_INTR_REG,"MI_INTR_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); break; MoveX86regToVariable(Reg,&_Reg->VI_ORIGIN_REG,"VI_ORIGIN_REG"); @@ -1222,14 +1222,14 @@ void CMipsMemoryVM::Compile_SW_Register (x86Reg Reg, DWORD VAddr ) MoveX86regToVariable(Reg,&_Reg->SI_PIF_ADDR_RD64B_REG,"SI_PIF_ADDR_RD64B_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)((CPifRam *)this),x86_ECX); - Call_Direct(AddressOf(CPifRam::SI_DMA_READ),"CPifRam::SI_DMA_READ"); + Call_Direct(AddressOf(&CPifRam::SI_DMA_READ),"CPifRam::SI_DMA_READ"); AfterCallDirect(m_RegWorkingSet); break; case 0x04800010: MoveX86regToVariable(Reg,&_Reg->SI_PIF_ADDR_WR64B_REG,"SI_PIF_ADDR_WR64B_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)((CPifRam *)this),x86_ECX); - Call_Direct(AddressOf(CPifRam::SI_DMA_WRITE),"CPifRam::SI_DMA_WRITE"); + Call_Direct(AddressOf(&CPifRam::SI_DMA_WRITE),"CPifRam::SI_DMA_WRITE"); AfterCallDirect(m_RegWorkingSet); break; case 0x04800018: @@ -1237,7 +1237,7 @@ void CMipsMemoryVM::Compile_SW_Register (x86Reg Reg, DWORD VAddr ) AndConstToVariable(~SI_STATUS_INTERRUPT,&_Reg->SI_STATUS_REG,"SI_STATUS_REG"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); break; default: @@ -3474,7 +3474,7 @@ void CMipsMemoryVM::Compile_StoreInstructClean (x86Reg AddressReg, int Length ) PushImm32(strLen.c_str(),Length); Push(AddressReg); MoveConstToX86reg((DWORD)_Recompiler,x86_ECX); - Call_Direct(AddressOf(CRecompiler::ClearRecompCode_Virt), "CRecompiler::ClearRecompCode_Virt"); + Call_Direct(AddressOf(&CRecompiler::ClearRecompCode_Virt), "CRecompiler::ClearRecompCode_Virt"); AfterCallDirect(m_RegWorkingSet); JmpLabel8("MemCheckDone",0); BYTE * MemCheckDone = m_RecompPos - 1; @@ -3495,7 +3495,7 @@ void CMipsMemoryVM::Compile_StoreInstructClean (x86Reg AddressReg, int Length ) PushImm32(strLen.c_str(),Length); Push(AddressReg); MoveConstToX86reg((DWORD)_Recompiler,x86_ECX); - Call_Direct(AddressOf(CRecompiler::ClearRecompCode_Virt), "CRecompiler::ClearRecompCode_Virt"); + Call_Direct(AddressOf(&CRecompiler::ClearRecompCode_Virt), "CRecompiler::ClearRecompCode_Virt"); AfterCallDirect(m_RegWorkingSet); CPU_Message(" "); diff --git a/Source/Project64/N64 System/Mips/Pif Ram.cpp b/Source/Project64/N64 System/Mips/Pif Ram.cpp index a54088a29..1b3be14c8 100644 --- a/Source/Project64/N64 System/Mips/Pif Ram.cpp +++ b/Source/Project64/N64 System/Mips/Pif Ram.cpp @@ -84,7 +84,7 @@ void CPifRam::PifRamRead (void) } break; } - } while( CurPos < 0x40 ); + } if (_Plugins->Control()->ReadController) { _Plugins->Control()->ReadController(-1,NULL); } } diff --git a/Source/Project64/N64 System/N64 Class.cpp b/Source/Project64/N64 System/N64 Class.cpp index 3abde8e39..26eb646dc 100644 --- a/Source/Project64/N64 System/N64 Class.cpp +++ b/Source/Project64/N64 System/N64 Class.cpp @@ -350,7 +350,7 @@ void CN64System::StartEmulation2 ( bool NewThread ) stdstr Status = _Settings->LoadString(Rdb_Status); char String[100]; - RomIniFile.GetString("Rom Status",stdstr_f("%s.AutoFullScreen", Status.c_str).c_str(),"true",String,sizeof(String)); + RomIniFile.GetString("Rom Status",stdstr_f("%s.AutoFullScreen", Status.c_str()).c_str(),"true",String,sizeof(String)); if (_stricmp(String,"true") == 0) { _Notify->ChangeFullScreen(); diff --git a/Source/Project64/N64 System/Recompiler/Code Section.cpp b/Source/Project64/N64 System/Recompiler/Code Section.cpp index c43de46e1..0db8258ce 100644 --- a/Source/Project64/N64 System/Recompiler/Code Section.cpp +++ b/Source/Project64/N64 System/Recompiler/Code Section.cpp @@ -191,7 +191,7 @@ void CCodeSection::CompileExit ( DWORD JumpPC, DWORD TargetPC, CRegInfo ExitRegS { MoveConstToX86reg(TargetPC,x86_EDX); MoveConstToX86reg((DWORD)&m_Functions,x86_ECX); - Call_Direct(AddressOf(CFunctionMap::CompilerFindFunction), "CFunctionMap::CompilerFindFunction"); + Call_Direct(AddressOf(&CFunctionMap::CompilerFindFunction), "CFunctionMap::CompilerFindFunction"); MoveX86RegToX86Reg(x86_EAX,x86_ECX); JecxzLabel8("NullPointer",0); BYTE * Jump = m_RecompPos - 1; @@ -239,7 +239,7 @@ void CCodeSection::CompileExit ( DWORD JumpPC, DWORD TargetPC, CRegInfo ExitRegS break; case CExitInfo::DoCPU_Action: MoveConstToX86reg((DWORD)_SystemEvents,x86_ECX); - Call_Direct(AddressOf(CSystemEvents::ExecuteEvents),"CSystemEvents::ExecuteEvents"); + Call_Direct(AddressOf(&CSystemEvents::ExecuteEvents),"CSystemEvents::ExecuteEvents"); if (_SyncSystem) { Call_Direct(SyncSystem, "SyncSystem"); } ExitCodeBlock(); break; @@ -248,7 +248,7 @@ void CCodeSection::CompileExit ( DWORD JumpPC, DWORD TargetPC, CRegInfo ExitRegS bool bDelay = m_NextInstruction == JUMP || m_NextInstruction == DELAY_SLOT; PushImm32(bDelay ? "true" : "false", bDelay); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::DoSysCallException), "CRegisters::DoSysCallException"); + Call_Direct(AddressOf(&CRegisters::DoSysCallException), "CRegisters::DoSysCallException"); if (_SyncSystem) { Call_Direct(SyncSystem, "SyncSystem"); } ExitCodeBlock(); } @@ -259,7 +259,7 @@ void CCodeSection::CompileExit ( DWORD JumpPC, DWORD TargetPC, CRegInfo ExitRegS PushImm32("1",1); PushImm32(bDelay ? "true" : "false", bDelay); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::DoCopUnusableException), "CRegisters::DoCopUnusableException"); + Call_Direct(AddressOf(&CRegisters::DoCopUnusableException), "CRegisters::DoCopUnusableException"); if (_SyncSystem) { Call_Direct(SyncSystem, "SyncSystem"); } ExitCodeBlock(); } @@ -376,7 +376,7 @@ void CCodeSection::GenerateSectionLinkage (void) // check if there is an existing section MoveConstToX86reg((DWORD)_Recompiler,x86_ECX); - Call_Direct(AddressOf(CRecompiler::CompileDelaySlot), "CRecompiler::CompileDelaySlot"); + Call_Direct(AddressOf(&CRecompiler::CompileDelaySlot), "CRecompiler::CompileDelaySlot"); JmpDirectReg(x86_EAX); ExitCodeBlock(); return; diff --git a/Source/Project64/N64 System/Recompiler/Recompiler Ops.cpp b/Source/Project64/N64 System/Recompiler/Recompiler Ops.cpp index 735f520a3..c0ebd0645 100644 --- a/Source/Project64/N64 System/Recompiler/Recompiler Ops.cpp +++ b/Source/Project64/N64 System/Recompiler/Recompiler Ops.cpp @@ -305,7 +305,7 @@ void CRecompilerOps::BNE_Compare (void) { BYTE *Jump; - if (m_Section->IsKnown(m_Opcode.rs) && m_Section->IsKnown(m_Opcode.rt)) { + if (IsKnown(m_Opcode.rs) && IsKnown(m_Opcode.rt)) { if (IsConst(m_Opcode.rs) && IsConst(m_Opcode.rt)) { if (Is64Bit(m_Opcode.rs) || Is64Bit(m_Opcode.rt)) { CRecompilerOps::UnknownOpcode(); @@ -322,8 +322,8 @@ void CRecompilerOps::BNE_Compare (void) ProtectGPR(m_Opcode.rt); CompX86RegToX86Reg( - m_Section->Is32Bit(m_Opcode.rs)?Map_TempReg(x86_Any,m_Opcode.rs,TRUE):MipsRegMapHi(m_Opcode.rs), - m_Section->Is32Bit(m_Opcode.rt)?Map_TempReg(x86_Any,m_Opcode.rt,TRUE):MipsRegMapHi(m_Opcode.rt) + Is32Bit(m_Opcode.rs)?Map_TempReg(x86_Any,m_Opcode.rs,TRUE):MipsRegMapHi(m_Opcode.rs), + Is32Bit(m_Opcode.rt)?Map_TempReg(x86_Any,m_Opcode.rt,TRUE):MipsRegMapHi(m_Opcode.rt) ); if (m_Section->m_Jump.FallThrough) { @@ -369,9 +369,9 @@ void CRecompilerOps::BNE_Compare (void) DWORD MappedReg = IsConst(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; if (Is64Bit(ConstReg) || Is64Bit(MappedReg)) { - if (m_Section->Is32Bit(ConstReg) || m_Section->Is32Bit(MappedReg)) { + if (Is32Bit(ConstReg) || Is32Bit(MappedReg)) { ProtectGPR(MappedReg); - if (m_Section->Is32Bit(MappedReg)) { + if (Is32Bit(MappedReg)) { CompConstToX86reg(Map_TempReg(x86_Any,MappedReg,TRUE),MipsRegHi(ConstReg)); } else { CompConstToX86reg(MipsRegMapHi(MappedReg),cMipsRegLo_S(ConstReg) >> 31); @@ -418,14 +418,14 @@ void CRecompilerOps::BNE_Compare (void) } } } - } else if (m_Section->IsKnown(m_Opcode.rs) || m_Section->IsKnown(m_Opcode.rt)) { - DWORD KnownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; - DWORD UnknownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; + } else if (IsKnown(m_Opcode.rs) || IsKnown(m_Opcode.rt)) { + DWORD KnownReg = IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; + DWORD UnknownReg = IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; if (IsConst(KnownReg)) { if (Is64Bit(KnownReg)) { CompConstToVariable(MipsRegHi(KnownReg),&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); - } else if (m_Section->IsSigned(KnownReg)) { + } else if (IsSigned(KnownReg)) { CompConstToVariable((cMipsRegLo_S(KnownReg) >> 31),&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); } else { CompConstToVariable(0,&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); @@ -433,7 +433,7 @@ void CRecompilerOps::BNE_Compare (void) } else { if (Is64Bit(KnownReg)) { CompX86regToVariable(MipsRegMapHi(KnownReg),&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); - } else if (m_Section->IsSigned(KnownReg)) { + } else if (IsSigned(KnownReg)) { ProtectGPR(KnownReg); CompX86regToVariable(Map_TempReg(x86_Any,KnownReg,TRUE),&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); } else { @@ -503,7 +503,7 @@ void CRecompilerOps::BNE_Compare (void) void CRecompilerOps::BEQ_Compare (void) { BYTE *Jump; - if (m_Section->IsKnown(m_Opcode.rs) && m_Section->IsKnown(m_Opcode.rt)) { + if (IsKnown(m_Opcode.rs) && IsKnown(m_Opcode.rt)) { if (IsConst(m_Opcode.rs) && IsConst(m_Opcode.rt)) { if (Is64Bit(m_Opcode.rs) || Is64Bit(m_Opcode.rt)) { CRecompilerOps::UnknownOpcode(); @@ -520,8 +520,8 @@ void CRecompilerOps::BEQ_Compare (void) { ProtectGPR(m_Opcode.rt); CompX86RegToX86Reg( - m_Section->Is32Bit(m_Opcode.rs)?Map_TempReg(x86_Any,m_Opcode.rs,TRUE):MipsRegMapHi(m_Opcode.rs), - m_Section->Is32Bit(m_Opcode.rt)?Map_TempReg(x86_Any,m_Opcode.rt,TRUE):MipsRegMapHi(m_Opcode.rt) + Is32Bit(m_Opcode.rs)?Map_TempReg(x86_Any,m_Opcode.rs,TRUE):MipsRegMapHi(m_Opcode.rs), + Is32Bit(m_Opcode.rt)?Map_TempReg(x86_Any,m_Opcode.rt,TRUE):MipsRegMapHi(m_Opcode.rt) ); if (m_Section->m_Cont.FallThrough) { JneLabel8("continue",0); @@ -566,8 +566,8 @@ void CRecompilerOps::BEQ_Compare (void) { DWORD MappedReg = IsConst(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; if (Is64Bit(ConstReg) || Is64Bit(MappedReg)) { - if (m_Section->Is32Bit(ConstReg) || m_Section->Is32Bit(MappedReg)) { - if (m_Section->Is32Bit(MappedReg)) { + if (Is32Bit(ConstReg) || Is32Bit(MappedReg)) { + if (Is32Bit(MappedReg)) { ProtectGPR(MappedReg); CompConstToX86reg(Map_TempReg(x86_Any,MappedReg,TRUE),MipsRegHi(ConstReg)); } else { @@ -615,14 +615,14 @@ void CRecompilerOps::BEQ_Compare (void) { } } } - } else if (m_Section->IsKnown(m_Opcode.rs) || m_Section->IsKnown(m_Opcode.rt)) { - DWORD KnownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; - DWORD UnknownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; + } else if (IsKnown(m_Opcode.rs) || IsKnown(m_Opcode.rt)) { + DWORD KnownReg = IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; + DWORD UnknownReg = IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; if (IsConst(KnownReg)) { if (Is64Bit(KnownReg)) { CompConstToVariable(MipsRegHi(KnownReg),&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); - } else if (m_Section->IsSigned(KnownReg)) { + } else if (IsSigned(KnownReg)) { CompConstToVariable(cMipsRegLo_S(KnownReg) >> 31,&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); } else { CompConstToVariable(0,&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); @@ -631,7 +631,7 @@ void CRecompilerOps::BEQ_Compare (void) { ProtectGPR(KnownReg); if (Is64Bit(KnownReg)) { CompX86regToVariable(cMipsRegMapHi(KnownReg),&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); - } else if (m_Section->IsSigned(KnownReg)) { + } else if (IsSigned(KnownReg)) { CompX86regToVariable(Map_TempReg(x86_Any,KnownReg,TRUE),&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); } else { CompConstToVariable(0,&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg]); @@ -696,7 +696,7 @@ void CRecompilerOps::BEQ_Compare (void) { void CRecompilerOps::BGTZ_Compare (void) { if (IsConst(m_Opcode.rs)) { if (Is64Bit(m_Opcode.rs)) { - if (m_Section->MipsReg_S(m_Opcode.rs) > 0) { + if (MipsReg_S(m_Opcode.rs) > 0) { m_Section->m_Jump.FallThrough = TRUE; m_Section->m_Cont.FallThrough = FALSE; } else { @@ -704,7 +704,7 @@ void CRecompilerOps::BGTZ_Compare (void) { m_Section->m_Cont.FallThrough = TRUE; } } else { - if (m_Section->MipsRegLo_S(m_Opcode.rs) > 0) { + if (MipsRegLo_S(m_Opcode.rs) > 0) { m_Section->m_Jump.FallThrough = TRUE; m_Section->m_Cont.FallThrough = FALSE; } else { @@ -712,7 +712,7 @@ void CRecompilerOps::BGTZ_Compare (void) { m_Section->m_Cont.FallThrough = TRUE; } } - } else if (IsMapped(m_Opcode.rs) && m_Section->Is32Bit(m_Opcode.rs)) { + } else if (IsMapped(m_Opcode.rs) && Is32Bit(m_Opcode.rs)) { CompConstToX86reg(cMipsRegMapLo(m_Opcode.rs),0); if (m_Section->m_Jump.FallThrough) { JleLabel32 (m_Section->m_Cont.BranchLabel.c_str(), 0 ); @@ -778,15 +778,15 @@ void CRecompilerOps::BGTZ_Compare (void) { void CRecompilerOps::BLEZ_Compare (void) { if (IsConst(m_Opcode.rs)) { if (Is64Bit(m_Opcode.rs)) { - if (m_Section->MipsReg_S(m_Opcode.rs) <= 0) { + if (MipsReg_S(m_Opcode.rs) <= 0) { m_Section->m_Jump.FallThrough = TRUE; m_Section->m_Cont.FallThrough = FALSE; } else { m_Section->m_Jump.FallThrough = FALSE; m_Section->m_Cont.FallThrough = TRUE; } - } else if (m_Section->IsSigned(m_Opcode.rs)) { - if (m_Section->MipsRegLo_S(m_Opcode.rs) <= 0) { + } else if (IsSigned(m_Opcode.rs)) { + if (MipsRegLo_S(m_Opcode.rs) <= 0) { m_Section->m_Jump.FallThrough = TRUE; m_Section->m_Cont.FallThrough = FALSE; } else { @@ -803,7 +803,7 @@ void CRecompilerOps::BLEZ_Compare (void) { } } } else { - if (IsMapped(m_Opcode.rs) && m_Section->Is32Bit(m_Opcode.rs)) { + if (IsMapped(m_Opcode.rs) && Is32Bit(m_Opcode.rs)) { CompConstToX86reg(cMipsRegMapLo(m_Opcode.rs),0); if (m_Section->m_Jump.FallThrough) { JgLabel32 (m_Section->m_Cont.BranchLabel.c_str(), 0 ); @@ -870,15 +870,15 @@ void CRecompilerOps::BLEZ_Compare (void) { void CRecompilerOps::BLTZ_Compare (void) { if (IsConst(m_Opcode.rs)) { if (Is64Bit(m_Opcode.rs)) { - if (m_Section->MipsReg_S(m_Opcode.rs) < 0) { + if (MipsReg_S(m_Opcode.rs) < 0) { m_Section->m_Jump.FallThrough = TRUE; m_Section->m_Cont.FallThrough = FALSE; } else { m_Section->m_Jump.FallThrough = FALSE; m_Section->m_Cont.FallThrough = TRUE; } - } else if (m_Section->IsSigned(m_Opcode.rs)) { - if (m_Section->MipsRegLo_S(m_Opcode.rs) < 0) { + } else if (IsSigned(m_Opcode.rs)) { + if (MipsRegLo_S(m_Opcode.rs) < 0) { m_Section->m_Jump.FallThrough = TRUE; m_Section->m_Cont.FallThrough = FALSE; } else { @@ -904,7 +904,7 @@ void CRecompilerOps::BLTZ_Compare (void) { JmpLabel32(m_Section->m_Jump.BranchLabel.c_str(),0); m_Section->m_Jump.LinkLocation = (DWORD *)(m_RecompPos - 4); } - } else if (m_Section->IsSigned(m_Opcode.rs)) { + } else if (IsSigned(m_Opcode.rs)) { CompConstToX86reg(cMipsRegMapLo(m_Opcode.rs),0); if (m_Section->m_Jump.FallThrough) { JgeLabel32 (m_Section->m_Cont.BranchLabel.c_str(), 0 ); @@ -922,7 +922,7 @@ void CRecompilerOps::BLTZ_Compare (void) { m_Section->m_Jump.FallThrough = FALSE; m_Section->m_Cont.FallThrough = TRUE; } - } else if (m_Section->IsUnknown(m_Opcode.rs)) { + } else if (IsUnknown(m_Opcode.rs)) { CompConstToVariable(0,&_GPR[m_Opcode.rs].W[1],CRegName::GPR_Hi[m_Opcode.rs]); if (m_Section->m_Jump.FallThrough) { JgeLabel32 (m_Section->m_Cont.BranchLabel.c_str(), 0 ); @@ -946,8 +946,8 @@ void CRecompilerOps::BGEZ_Compare (void) { DisplayError("BGEZ 1"); #endif CRecompilerOps::UnknownOpcode(); - } else if (m_Section->IsSigned(m_Opcode.rs)) { - if (m_Section->MipsRegLo_S(m_Opcode.rs) >= 0) { + } else if (IsSigned(m_Opcode.rs)) { + if (MipsRegLo_S(m_Opcode.rs) >= 0) { m_Section->m_Jump.FallThrough = TRUE; m_Section->m_Cont.FallThrough = FALSE; } else { @@ -973,7 +973,7 @@ void CRecompilerOps::BGEZ_Compare (void) { JmpLabel32(m_Section->m_Jump.BranchLabel.c_str(),0); m_Section->m_Jump.LinkLocation = (DWORD *)(m_RecompPos - 4); } - } else if (m_Section->IsSigned(m_Opcode.rs)) { + } else if (IsSigned(m_Opcode.rs)) { CompConstToX86reg(cMipsRegMapLo(m_Opcode.rs),0); if (m_Section->m_Cont.FallThrough) { JgeLabel32 ( m_Section->m_Jump.BranchLabel.c_str(), 0 ); @@ -1161,8 +1161,8 @@ void CRecompilerOps::SLTIU (void) { if (Is64Bit(m_Opcode.rs)) { __int64 Immediate = (__int64)((short)m_Opcode.immediate); - Result = m_Section->MipsReg(m_Opcode.rs) < ((unsigned)(Immediate))?1:0; - } else if (m_Section->Is32Bit(m_Opcode.rs)) { + Result = MipsReg(m_Opcode.rs) < ((unsigned)(Immediate))?1:0; + } else if (Is32Bit(m_Opcode.rs)) { Result = cMipsRegLo(m_Opcode.rs) < ((unsigned)((short)m_Opcode.immediate))?1:0; } UnMap_GPR(m_Opcode.rt, FALSE); @@ -1220,9 +1220,9 @@ void CRecompilerOps::SLTI (void) if (Is64Bit(m_Opcode.rs)) { __int64 Immediate = (__int64)((short)m_Opcode.immediate); - Result = (__int64)m_Section->MipsReg(m_Opcode.rs) < Immediate?1:0; - } else if (m_Section->Is32Bit(m_Opcode.rs)) { - Result = m_Section->MipsRegLo_S(m_Opcode.rs) < (short)m_Opcode.immediate?1:0; + Result = (__int64)MipsReg(m_Opcode.rs) < Immediate?1:0; + } else if (Is32Bit(m_Opcode.rs)) { + Result = MipsRegLo_S(m_Opcode.rs) < (short)m_Opcode.immediate?1:0; } UnMap_GPR(m_Opcode.rt, FALSE); MipsRegState(m_Opcode.rt) = CRegInfo::STATE_CONST_32; @@ -1317,7 +1317,7 @@ void CRecompilerOps::ORI (void) { if (Is64Bit(m_Opcode.rs)) { Map_GPR_64bit(m_Opcode.rt,m_Opcode.rs); } else { - Map_GPR_32bit(m_Opcode.rt,m_Section->IsSigned(m_Opcode.rs),m_Opcode.rs); + Map_GPR_32bit(m_Opcode.rt,IsSigned(m_Opcode.rs),m_Opcode.rs); } OrConstToX86Reg(m_Opcode.immediate,cMipsRegMapLo(m_Opcode.rt)); } else { @@ -1336,8 +1336,8 @@ void CRecompilerOps::XORI (void) { MipsRegHi(m_Opcode.rt) = MipsRegHi(m_Opcode.rs); MipsRegLo(m_Opcode.rt) = cMipsRegLo(m_Opcode.rs) ^ m_Opcode.immediate; } else { - if (IsMapped(m_Opcode.rs) && m_Section->Is32Bit(m_Opcode.rs)) { - Map_GPR_32bit(m_Opcode.rt,m_Section->IsSigned(m_Opcode.rs),m_Opcode.rs); + if (IsMapped(m_Opcode.rs) && Is32Bit(m_Opcode.rs)) { + Map_GPR_32bit(m_Opcode.rt,IsSigned(m_Opcode.rs),m_Opcode.rs); } else { Map_GPR_64bit(m_Opcode.rt,m_Opcode.rs); } @@ -1403,7 +1403,7 @@ void CRecompilerOps::CACHE (void){ Push(x86_EAX); } MoveConstToX86reg((DWORD)_Recompiler,x86_ECX); - Call_Direct(AddressOf(CRecompiler::ClearRecompCode_Virt), "CRecompiler::ClearRecompCode_Virt"); + Call_Direct(AddressOf(&CRecompiler::ClearRecompCode_Virt), "CRecompiler::ClearRecompCode_Virt"); AfterCallDirect(m_RegWorkingSet); break; case 1: @@ -1630,7 +1630,7 @@ void CRecompilerOps::SPECIAL_SRA (void) { if (IsConst(m_Opcode.rt)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } - MipsRegLo(m_Opcode.rd) = m_Section->MipsRegLo_S(m_Opcode.rt) >> m_Opcode.sa; + MipsRegLo(m_Opcode.rd) = MipsRegLo_S(m_Opcode.rt) >> m_Opcode.sa; MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; return; } @@ -1664,7 +1664,7 @@ void CRecompilerOps::SPECIAL_SRLV (void) { CPU_Message(" %X %s",m_CompilePC,R4300iOpcodeName(m_Opcode.Hex,m_CompilePC)); if (m_Opcode.rd == 0) { return; } - if (m_Section->IsKnown(m_Opcode.rs) && IsConst(m_Opcode.rs)) { + if (IsKnown(m_Opcode.rs) && IsConst(m_Opcode.rs)) { DWORD Shift = (cMipsRegLo(m_Opcode.rs) & 0x1F); if (IsConst(m_Opcode.rt)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } @@ -1686,11 +1686,11 @@ void CRecompilerOps::SPECIAL_SRAV (void) { CPU_Message(" %X %s",m_CompilePC,R4300iOpcodeName(m_Opcode.Hex,m_CompilePC)); if (m_Opcode.rd == 0) { return; } - if (m_Section->IsKnown(m_Opcode.rs) && IsConst(m_Opcode.rs)) { + if (IsKnown(m_Opcode.rs) && IsConst(m_Opcode.rs)) { DWORD Shift = (cMipsRegLo(m_Opcode.rs) & 0x1F); if (IsConst(m_Opcode.rt)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } - MipsRegLo(m_Opcode.rd) = m_Section->MipsRegLo_S(m_Opcode.rt) >> Shift; + MipsRegLo(m_Opcode.rd) = MipsRegLo_S(m_Opcode.rt) >> Shift; MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; return; } @@ -1836,19 +1836,19 @@ void CRecompilerOps::SPECIAL_MFLO (void) { void CRecompilerOps::SPECIAL_MTLO (void) { CPU_Message(" %X %s",m_CompilePC,R4300iOpcodeName(m_Opcode.Hex,m_CompilePC)); - if (m_Section->IsKnown(m_Opcode.rs) && IsConst(m_Opcode.rs)) { + if (IsKnown(m_Opcode.rs) && IsConst(m_Opcode.rs)) { if (Is64Bit(m_Opcode.rs)) { MoveConstToVariable(MipsRegHi(m_Opcode.rs),&_RegLO->UW[1],"_RegLO->UW[1]"); - } else if (m_Section->IsSigned(m_Opcode.rs) && ((cMipsRegLo(m_Opcode.rs) & 0x80000000) != 0)) { + } else if (IsSigned(m_Opcode.rs) && ((cMipsRegLo(m_Opcode.rs) & 0x80000000) != 0)) { MoveConstToVariable(0xFFFFFFFF,&_RegLO->UW[1],"_RegLO->UW[1]"); } else { MoveConstToVariable(0,&_RegLO->UW[1],"_RegLO->UW[1]"); } MoveConstToVariable(cMipsRegLo(m_Opcode.rs), &_RegLO->UW[0],"_RegLO->UW[0]"); - } else if (m_Section->IsKnown(m_Opcode.rs) && IsMapped(m_Opcode.rs)) { + } else if (IsKnown(m_Opcode.rs) && IsMapped(m_Opcode.rs)) { if (Is64Bit(m_Opcode.rs)) { MoveX86regToVariable(MipsRegMapHi(m_Opcode.rs),&_RegLO->UW[1],"_RegLO->UW[1]"); - } else if (m_Section->IsSigned(m_Opcode.rs)) { + } else if (IsSigned(m_Opcode.rs)) { MoveX86regToVariable(Map_TempReg(x86_Any,m_Opcode.rs,TRUE),&_RegLO->UW[1],"_RegLO->UW[1]"); } else { MoveConstToVariable(0,&_RegLO->UW[1],"_RegLO->UW[1]"); @@ -1872,19 +1872,19 @@ void CRecompilerOps::SPECIAL_MFHI (void) { void CRecompilerOps::SPECIAL_MTHI (void) { CPU_Message(" %X %s",m_CompilePC,R4300iOpcodeName(m_Opcode.Hex,m_CompilePC)); - if (m_Section->IsKnown(m_Opcode.rs) && IsConst(m_Opcode.rs)) { + if (IsKnown(m_Opcode.rs) && IsConst(m_Opcode.rs)) { if (Is64Bit(m_Opcode.rs)) { MoveConstToVariable(MipsRegHi(m_Opcode.rs),&_RegHI->UW[1],"_RegHI->UW[1]"); - } else if (m_Section->IsSigned(m_Opcode.rs) && ((cMipsRegLo(m_Opcode.rs) & 0x80000000) != 0)) { + } else if (IsSigned(m_Opcode.rs) && ((cMipsRegLo(m_Opcode.rs) & 0x80000000) != 0)) { MoveConstToVariable(0xFFFFFFFF,&_RegHI->UW[1],"_RegHI->UW[1]"); } else { MoveConstToVariable(0,&_RegHI->UW[1],"_RegHI->UW[1]"); } MoveConstToVariable(cMipsRegLo(m_Opcode.rs), &_RegHI->UW[0],"_RegHI->UW[0]"); - } else if (m_Section->IsKnown(m_Opcode.rs) && IsMapped(m_Opcode.rs)) { + } else if (IsKnown(m_Opcode.rs) && IsMapped(m_Opcode.rs)) { if (Is64Bit(m_Opcode.rs)) { MoveX86regToVariable(MipsRegMapHi(m_Opcode.rs),&_RegHI->UW[1],"_RegHI->UW[1]"); - } else if (m_Section->IsSigned(m_Opcode.rs)) { + } else if (IsSigned(m_Opcode.rs)) { MoveX86regToVariable(Map_TempReg(x86_Any,m_Opcode.rs,TRUE),&_RegHI->UW[1],"_RegHI->UW[1]"); } else { MoveConstToVariable(0,&_RegHI->UW[1],"_RegHI->UW[1]"); @@ -1944,8 +1944,8 @@ void CRecompilerOps::SPECIAL_DSRLV (void) { DWORD Shift = (cMipsRegLo(m_Opcode.rs) & 0x3F); if (IsConst(m_Opcode.rt)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } - m_Section->MipsReg(m_Opcode.rd) = Is64Bit(m_Opcode.rt)?m_Section->MipsReg(m_Opcode.rt):(__int64)m_Section->MipsRegLo_S(m_Opcode.rt); - m_Section->MipsReg(m_Opcode.rd) = m_Section->MipsReg(m_Opcode.rd) >> Shift; + MipsReg(m_Opcode.rd) = Is64Bit(m_Opcode.rt)?MipsReg(m_Opcode.rt):(__int64)MipsRegLo_S(m_Opcode.rt); + MipsReg(m_Opcode.rd) = MipsReg(m_Opcode.rd) >> Shift; if ((MipsRegHi(m_Opcode.rd) == 0) && (cMipsRegLo(m_Opcode.rd) & 0x80000000) == 0) { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else if ((MipsRegHi(m_Opcode.rd) == 0xFFFFFFFF) && (cMipsRegLo(m_Opcode.rd) & 0x80000000) != 0) { @@ -2330,7 +2330,7 @@ void CRecompilerOps::SPECIAL_ADD (void) { Map_GPR_32bit(m_Opcode.rd,TRUE, source1); if (IsConst(source2)) { AddConstToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegLo(source2)); - } else if (m_Section->IsKnown(source2) && IsMapped(source2)) { + } else if (IsKnown(source2) && IsMapped(source2)) { AddX86RegToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegMapLo(source2)); } else { AddVariableToX86reg(cMipsRegMapLo(m_Opcode.rd),&_GPR[source2].W[0],CRegName::GPR_Lo[source2]); @@ -2355,7 +2355,7 @@ void CRecompilerOps::SPECIAL_ADDU (void) { Map_GPR_32bit(m_Opcode.rd,TRUE, source1); if (IsConst(source2)) { AddConstToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegLo(source2)); - } else if (m_Section->IsKnown(source2) && IsMapped(source2)) { + } else if (IsKnown(source2) && IsMapped(source2)) { AddX86RegToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegMapLo(source2)); } else { AddVariableToX86reg(cMipsRegMapLo(m_Opcode.rd),&_GPR[source2].W[0],CRegName::GPR_Lo[source2]); @@ -2419,22 +2419,22 @@ void CRecompilerOps::SPECIAL_SUBU (void) { void CRecompilerOps::SPECIAL_AND (void) { CPU_Message(" %X %s",m_CompilePC,R4300iOpcodeName(m_Opcode.Hex,m_CompilePC)); - if (m_Section->IsKnown(m_Opcode.rt) && m_Section->IsKnown(m_Opcode.rs)) { + if (IsKnown(m_Opcode.rt) && IsKnown(m_Opcode.rs)) { if (IsConst(m_Opcode.rt) && IsConst(m_Opcode.rs)) { if (Is64Bit(m_Opcode.rt) || Is64Bit(m_Opcode.rs)) { - m_Section->MipsReg(m_Opcode.rd) = - (Is64Bit(m_Opcode.rt)?m_Section->MipsReg(m_Opcode.rt):(__int64)m_Section->MipsRegLo_S(m_Opcode.rt)) & - (Is64Bit(m_Opcode.rs)?m_Section->MipsReg(m_Opcode.rs):(__int64)m_Section->MipsRegLo_S(m_Opcode.rs)); + MipsReg(m_Opcode.rd) = + (Is64Bit(m_Opcode.rt)?MipsReg(m_Opcode.rt):(__int64)MipsRegLo_S(m_Opcode.rt)) & + (Is64Bit(m_Opcode.rs)?MipsReg(m_Opcode.rs):(__int64)MipsRegLo_S(m_Opcode.rs)); - if (m_Section->MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ + if (MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - } else if (m_Section->MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ + } else if (MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_64; } } else { - m_Section->MipsReg(m_Opcode.rd) = cMipsRegLo(m_Opcode.rt) & m_Section->MipsReg(m_Opcode.rs); + MipsReg(m_Opcode.rd) = cMipsRegLo(m_Opcode.rt) & MipsReg(m_Opcode.rs); MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } } else if (IsMapped(m_Opcode.rt) && IsMapped(m_Opcode.rs)) { @@ -2443,17 +2443,17 @@ void CRecompilerOps::SPECIAL_AND (void) ProtectGPR(source1); ProtectGPR(source2); - if (m_Section->Is32Bit(source1) && m_Section->Is32Bit(source2)) { - int Sign = (m_Section->IsSigned(m_Opcode.rt) && m_Section->IsSigned(m_Opcode.rs))?TRUE:FALSE; + if (Is32Bit(source1) && Is32Bit(source2)) { + int Sign = (IsSigned(m_Opcode.rt) && IsSigned(m_Opcode.rs))?TRUE:FALSE; Map_GPR_32bit(m_Opcode.rd,Sign,source1); AndX86RegToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegMapLo(source2)); - } else if (m_Section->Is32Bit(source1) || m_Section->Is32Bit(source2)) { - if (m_Section->IsUnsigned(m_Section->Is32Bit(source1)?source1:source2)) { + } else if (Is32Bit(source1) || Is32Bit(source2)) { + if (IsUnsigned(Is32Bit(source1)?source1:source2)) { Map_GPR_32bit(m_Opcode.rd,FALSE,source1); AndX86RegToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegMapLo(source2)); } else { Map_GPR_64bit(m_Opcode.rd,source1); - if (m_Section->Is32Bit(source2)) { + if (Is32Bit(source2)) { AndX86RegToX86Reg(MipsRegMapHi(m_Opcode.rd),Map_TempReg(x86_Any,source2,TRUE)); } else { AndX86RegToX86Reg(MipsRegMapHi(m_Opcode.rd),MipsRegMapHi(source2)); @@ -2470,7 +2470,7 @@ void CRecompilerOps::SPECIAL_AND (void) int MappedReg = IsConst(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; if (Is64Bit(ConstReg)) { - if (m_Section->Is32Bit(MappedReg) && m_Section->IsUnsigned(MappedReg)) { + if (Is32Bit(MappedReg) && IsUnsigned(MappedReg)) { if (cMipsRegLo(ConstReg) == 0) { Map_GPR_32bit(m_Opcode.rd,FALSE, 0); } else { @@ -2479,7 +2479,7 @@ void CRecompilerOps::SPECIAL_AND (void) AndConstToX86Reg(cMipsRegMapLo(m_Opcode.rd),Value); } } else { - __int64 Value = m_Section->MipsReg(ConstReg); + __int64 Value = MipsReg(ConstReg); Map_GPR_64bit(m_Opcode.rd,MappedReg); AndConstToX86Reg(cMipsRegMapHi(m_Opcode.rd),(DWORD)(Value >> 32)); AndConstToX86Reg(cMipsRegMapLo(m_Opcode.rd),(DWORD)Value); @@ -2487,15 +2487,15 @@ void CRecompilerOps::SPECIAL_AND (void) } else if (Is64Bit(MappedReg)) { DWORD Value = cMipsRegLo(ConstReg); if (Value != 0) { - Map_GPR_32bit(m_Opcode.rd,m_Section->IsSigned(ConstReg)?TRUE:FALSE,MappedReg); + Map_GPR_32bit(m_Opcode.rd,IsSigned(ConstReg)?TRUE:FALSE,MappedReg); AndConstToX86Reg(cMipsRegMapLo(m_Opcode.rd),(DWORD)Value); } else { - Map_GPR_32bit(m_Opcode.rd,m_Section->IsSigned(ConstReg)?TRUE:FALSE, 0); + Map_GPR_32bit(m_Opcode.rd,IsSigned(ConstReg)?TRUE:FALSE, 0); } } else { DWORD Value = cMipsRegLo(ConstReg); int Sign = FALSE; - if (m_Section->IsSigned(ConstReg) && m_Section->IsSigned(MappedReg)) { Sign = TRUE; } + if (IsSigned(ConstReg) && IsSigned(MappedReg)) { Sign = TRUE; } if (Value != 0) { Map_GPR_32bit(m_Opcode.rd,Sign,MappedReg); AndConstToX86Reg(cMipsRegMapLo(m_Opcode.rd),Value); @@ -2504,19 +2504,19 @@ void CRecompilerOps::SPECIAL_AND (void) } } } - } else if (m_Section->IsKnown(m_Opcode.rt) || m_Section->IsKnown(m_Opcode.rs)) { - DWORD KnownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; - DWORD UnknownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; + } else if (IsKnown(m_Opcode.rt) || IsKnown(m_Opcode.rs)) { + DWORD KnownReg = IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; + DWORD UnknownReg = IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; if (IsConst(KnownReg)) { if (Is64Bit(KnownReg)) { - unsigned __int64 Value = m_Section->MipsReg(KnownReg); + unsigned __int64 Value = MipsReg(KnownReg); Map_GPR_64bit(m_Opcode.rd,UnknownReg); AndConstToX86Reg(cMipsRegMapHi(m_Opcode.rd),(DWORD)(Value >> 32)); AndConstToX86Reg(cMipsRegMapLo(m_Opcode.rd),(DWORD)Value); } else { DWORD Value = cMipsRegLo(KnownReg); - Map_GPR_32bit(m_Opcode.rd,m_Section->IsSigned(KnownReg),UnknownReg); + Map_GPR_32bit(m_Opcode.rd,IsSigned(KnownReg),UnknownReg); AndConstToX86Reg(cMipsRegMapLo(m_Opcode.rd),(DWORD)Value); } } else { @@ -2527,7 +2527,7 @@ void CRecompilerOps::SPECIAL_AND (void) AndVariableToX86Reg(&_GPR[UnknownReg].W[1],CRegName::GPR_Hi[UnknownReg],MipsRegMapHi(m_Opcode.rd)); AndVariableToX86Reg(&_GPR[UnknownReg].W[0],CRegName::GPR_Lo[UnknownReg],cMipsRegMapLo(m_Opcode.rd)); } else { - Map_GPR_32bit(m_Opcode.rd,m_Section->IsSigned(KnownReg),KnownReg); + Map_GPR_32bit(m_Opcode.rd,IsSigned(KnownReg),KnownReg); AndVariableToX86Reg(&_GPR[UnknownReg].W[0],CRegName::GPR_Lo[UnknownReg],cMipsRegMapLo(m_Opcode.rd)); } } else { @@ -2536,7 +2536,7 @@ void CRecompilerOps::SPECIAL_AND (void) AndX86RegToX86Reg(cMipsRegMapHi(m_Opcode.rd),cMipsRegMapHi(KnownReg)); AndX86RegToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegMapLo(KnownReg)); } else { - Map_GPR_32bit(m_Opcode.rd,m_Section->IsSigned(KnownReg),UnknownReg); + Map_GPR_32bit(m_Opcode.rd,IsSigned(KnownReg),UnknownReg); AndX86RegToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegMapLo(KnownReg)); } } @@ -2551,16 +2551,16 @@ void CRecompilerOps::SPECIAL_AND (void) void CRecompilerOps::SPECIAL_OR (void) { CPU_Message(" %X %s",m_CompilePC,R4300iOpcodeName(m_Opcode.Hex,m_CompilePC)); - if (m_Section->IsKnown(m_Opcode.rt) && m_Section->IsKnown(m_Opcode.rs)) { + if (IsKnown(m_Opcode.rt) && IsKnown(m_Opcode.rs)) { if (IsConst(m_Opcode.rt) && IsConst(m_Opcode.rs)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } if (Is64Bit(m_Opcode.rt) || Is64Bit(m_Opcode.rs)) { - m_Section->MipsReg(m_Opcode.rd) = - (Is64Bit(m_Opcode.rt)?m_Section->MipsReg(m_Opcode.rt):(__int64)m_Section->MipsRegLo_S(m_Opcode.rt)) | - (Is64Bit(m_Opcode.rs)?m_Section->MipsReg(m_Opcode.rs):(__int64)m_Section->MipsRegLo_S(m_Opcode.rs)); - if (m_Section->MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ + MipsReg(m_Opcode.rd) = + (Is64Bit(m_Opcode.rt)?MipsReg(m_Opcode.rt):(__int64)MipsRegLo_S(m_Opcode.rt)) | + (Is64Bit(m_Opcode.rs)?MipsReg(m_Opcode.rs):(__int64)MipsRegLo_S(m_Opcode.rs)); + if (MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - } else if (m_Section->MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ + } else if (MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_64; @@ -2595,9 +2595,9 @@ void CRecompilerOps::SPECIAL_OR (void) { unsigned __int64 Value; if (Is64Bit(ConstReg)) { - Value = m_Section->MipsReg(ConstReg); + Value = MipsReg(ConstReg); } else { - Value = m_Section->IsSigned(ConstReg)?m_Section->MipsRegLo_S(ConstReg):cMipsRegLo(ConstReg); + Value = IsSigned(ConstReg)?MipsRegLo_S(ConstReg):cMipsRegLo(ConstReg); } Map_GPR_64bit(m_Opcode.rd,MappedReg); if ((Value >> 32) != 0) { @@ -2612,14 +2612,14 @@ void CRecompilerOps::SPECIAL_OR (void) { if (Value != 0) { OrConstToX86Reg(Value,cMipsRegMapLo(m_Opcode.rd)); } } } - } else if (m_Section->IsKnown(m_Opcode.rt) || m_Section->IsKnown(m_Opcode.rs)) { - int KnownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; - int UnknownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; + } else if (IsKnown(m_Opcode.rt) || IsKnown(m_Opcode.rs)) { + int KnownReg = IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; + int UnknownReg = IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; if (IsConst(KnownReg)) { unsigned __int64 Value; - Value = Is64Bit(KnownReg)?m_Section->MipsReg(KnownReg):m_Section->MipsRegLo_S(KnownReg); + Value = Is64Bit(KnownReg)?MipsReg(KnownReg):MipsRegLo_S(KnownReg); Map_GPR_64bit(m_Opcode.rd,UnknownReg); if ((Value >> 32) != 0) { OrConstToX86Reg((DWORD)(Value >> 32),MipsRegMapHi(m_Opcode.rd)); @@ -2653,7 +2653,7 @@ void CRecompilerOps::SPECIAL_XOR (void) { MipsRegLo(m_Opcode.rd) = 0; return; } - if (m_Section->IsKnown(m_Opcode.rt) && m_Section->IsKnown(m_Opcode.rs)) { + if (IsKnown(m_Opcode.rt) && IsKnown(m_Opcode.rs)) { if (IsConst(m_Opcode.rt) && IsConst(m_Opcode.rs)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } if (Is64Bit(m_Opcode.rt) || Is64Bit(m_Opcode.rs)) { @@ -2675,15 +2675,15 @@ void CRecompilerOps::SPECIAL_XOR (void) { Map_GPR_64bit(m_Opcode.rd,source1); if (Is64Bit(source2)) { XorX86RegToX86Reg(cMipsRegMapHi(m_Opcode.rd),cMipsRegMapHi(source2)); - } else if (m_Section->IsSigned(source2)) { + } else if (IsSigned(source2)) { XorX86RegToX86Reg(cMipsRegMapHi(m_Opcode.rd),Map_TempReg(x86_Any,source2,TRUE)); } XorX86RegToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegMapLo(source2)); } else { - if (m_Section->IsSigned(m_Opcode.rt) != m_Section->IsSigned(m_Opcode.rs)) { + if (IsSigned(m_Opcode.rt) != IsSigned(m_Opcode.rs)) { Map_GPR_32bit(m_Opcode.rd,TRUE,source1); } else { - Map_GPR_32bit(m_Opcode.rd,m_Section->IsSigned(m_Opcode.rt),source1); + Map_GPR_32bit(m_Opcode.rd,IsSigned(m_Opcode.rt),source1); } XorX86RegToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegMapLo(source2)); } @@ -2694,32 +2694,32 @@ void CRecompilerOps::SPECIAL_XOR (void) { if (Is64Bit(m_Opcode.rt) || Is64Bit(m_Opcode.rs)) { DWORD ConstHi, ConstLo; - ConstHi = m_Section->Is32Bit(ConstReg)?(DWORD)(m_Section->MipsRegLo_S(ConstReg) >> 31):MipsRegHi(ConstReg); + ConstHi = Is32Bit(ConstReg)?(DWORD)(MipsRegLo_S(ConstReg) >> 31):MipsRegHi(ConstReg); ConstLo = cMipsRegLo(ConstReg); Map_GPR_64bit(m_Opcode.rd,MappedReg); if (ConstHi != 0) { XorConstToX86Reg(cMipsRegMapHi(m_Opcode.rd),ConstHi); } if (ConstLo != 0) { XorConstToX86Reg(cMipsRegMapLo(m_Opcode.rd),ConstLo); } } else { int Value = cMipsRegLo(ConstReg); - if (m_Section->IsSigned(m_Opcode.rt) != m_Section->IsSigned(m_Opcode.rs)) { + if (IsSigned(m_Opcode.rt) != IsSigned(m_Opcode.rs)) { Map_GPR_32bit(m_Opcode.rd,TRUE, MappedReg); } else { - Map_GPR_32bit(m_Opcode.rd,m_Section->IsSigned(MappedReg)?TRUE:FALSE, MappedReg); + Map_GPR_32bit(m_Opcode.rd,IsSigned(MappedReg)?TRUE:FALSE, MappedReg); } if (Value != 0) { XorConstToX86Reg(cMipsRegMapLo(m_Opcode.rd),Value); } } } - } else if (m_Section->IsKnown(m_Opcode.rt) || m_Section->IsKnown(m_Opcode.rs)) { - int KnownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; - int UnknownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; + } else if (IsKnown(m_Opcode.rt) || IsKnown(m_Opcode.rs)) { + int KnownReg = IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; + int UnknownReg = IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; if (IsConst(KnownReg)) { unsigned __int64 Value; if (Is64Bit(KnownReg)) { - Value = m_Section->MipsReg(KnownReg); + Value = MipsReg(KnownReg); } else { - if (m_Section->IsSigned(KnownReg)) { + if (IsSigned(KnownReg)) { Value = (int)cMipsRegLo(KnownReg); } else { Value = cMipsRegLo(KnownReg); @@ -2747,7 +2747,7 @@ void CRecompilerOps::SPECIAL_XOR (void) { void CRecompilerOps::SPECIAL_NOR (void) { CPU_Message(" %X %s",m_CompilePC,R4300iOpcodeName(m_Opcode.Hex,m_CompilePC)); - if (m_Section->IsKnown(m_Opcode.rt) && m_Section->IsKnown(m_Opcode.rs)) { + if (IsKnown(m_Opcode.rt) && IsKnown(m_Opcode.rs)) { if (IsConst(m_Opcode.rt) && IsConst(m_Opcode.rs)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } if (Is64Bit(m_Opcode.rt) || Is64Bit(m_Opcode.rs)) { @@ -2774,10 +2774,10 @@ void CRecompilerOps::SPECIAL_NOR (void) { NotX86Reg(cMipsRegMapLo(m_Opcode.rd)); } else { ProtectGPR(source2); - if (m_Section->IsSigned(m_Opcode.rt) != m_Section->IsSigned(m_Opcode.rs)) { + if (IsSigned(m_Opcode.rt) != IsSigned(m_Opcode.rs)) { Map_GPR_32bit(m_Opcode.rd,TRUE,source1); } else { - Map_GPR_32bit(m_Opcode.rd,m_Section->IsSigned(m_Opcode.rt),source1); + Map_GPR_32bit(m_Opcode.rd,IsSigned(m_Opcode.rt),source1); } OrX86RegToX86Reg(cMipsRegMapLo(m_Opcode.rd),cMipsRegMapLo(source2)); NotX86Reg(cMipsRegMapLo(m_Opcode.rd)); @@ -2790,9 +2790,9 @@ void CRecompilerOps::SPECIAL_NOR (void) { unsigned __int64 Value; if (Is64Bit(ConstReg)) { - Value = m_Section->MipsReg(ConstReg); + Value = MipsReg(ConstReg); } else { - Value = m_Section->IsSigned(ConstReg)?m_Section->MipsRegLo_S(ConstReg):cMipsRegLo(ConstReg); + Value = IsSigned(ConstReg)?MipsRegLo_S(ConstReg):cMipsRegLo(ConstReg); } Map_GPR_64bit(m_Opcode.rd,MappedReg); if ((Value >> 32) != 0) { @@ -2805,23 +2805,23 @@ void CRecompilerOps::SPECIAL_NOR (void) { NotX86Reg(cMipsRegMapLo(m_Opcode.rd)); } else { int Value = cMipsRegLo(ConstReg); - if (m_Section->IsSigned(m_Opcode.rt) != m_Section->IsSigned(m_Opcode.rs)) { + if (IsSigned(m_Opcode.rt) != IsSigned(m_Opcode.rs)) { Map_GPR_32bit(m_Opcode.rd,TRUE, MappedReg); } else { - Map_GPR_32bit(m_Opcode.rd,m_Section->IsSigned(MappedReg)?TRUE:FALSE, MappedReg); + Map_GPR_32bit(m_Opcode.rd,IsSigned(MappedReg)?TRUE:FALSE, MappedReg); } if (Value != 0) { OrConstToX86Reg(Value,cMipsRegMapLo(m_Opcode.rd)); } NotX86Reg(cMipsRegMapLo(m_Opcode.rd)); } } - } else if (m_Section->IsKnown(m_Opcode.rt) || m_Section->IsKnown(m_Opcode.rs)) { - int KnownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; - int UnknownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; + } else if (IsKnown(m_Opcode.rt) || IsKnown(m_Opcode.rs)) { + int KnownReg = IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; + int UnknownReg = IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; if (IsConst(KnownReg)) { unsigned __int64 Value; - Value = Is64Bit(KnownReg)?m_Section->MipsReg(KnownReg):m_Section->MipsRegLo_S(KnownReg); + Value = Is64Bit(KnownReg)?MipsReg(KnownReg):MipsRegLo_S(KnownReg); Map_GPR_64bit(m_Opcode.rd,UnknownReg); if ((Value >> 32) != 0) { OrConstToX86Reg((DWORD)(Value >> 32),MipsRegMapHi(m_Opcode.rd)); @@ -2848,7 +2848,7 @@ void CRecompilerOps::SPECIAL_NOR (void) { void CRecompilerOps::SPECIAL_SLT (void) { CPU_Message(" %X %s",m_CompilePC,R4300iOpcodeName(m_Opcode.Hex,m_CompilePC)); - if (m_Section->IsKnown(m_Opcode.rt) && m_Section->IsKnown(m_Opcode.rs)) { + if (IsKnown(m_Opcode.rt) && IsKnown(m_Opcode.rs)) { if (IsConst(m_Opcode.rt) && IsConst(m_Opcode.rs)) { if (Is64Bit(m_Opcode.rt) || Is64Bit(m_Opcode.rs)) { DisplayError("1"); @@ -2856,7 +2856,7 @@ void CRecompilerOps::SPECIAL_SLT (void) { } else { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - if (m_Section->MipsRegLo_S(m_Opcode.rs) < m_Section->MipsRegLo_S(m_Opcode.rt)) { + if (MipsRegLo_S(m_Opcode.rs) < MipsRegLo_S(m_Opcode.rt)) { MipsRegLo(m_Opcode.rd) = 1; } else { MipsRegLo(m_Opcode.rd) = 0; @@ -2910,7 +2910,7 @@ void CRecompilerOps::SPECIAL_SLT (void) { CompConstToX86reg( Is64Bit(MappedReg)?cMipsRegMapHi(MappedReg):Map_TempReg(x86_Any,MappedReg,TRUE), - Is64Bit(ConstReg)?MipsRegHi(ConstReg):(m_Section->MipsRegLo_S(ConstReg) >> 31) + Is64Bit(ConstReg)?MipsRegHi(ConstReg):(MipsRegLo_S(ConstReg) >> 31) ); JeLabel8("Low Compare",0); Jump[0] = m_RecompPos - 1; @@ -2958,9 +2958,9 @@ void CRecompilerOps::SPECIAL_SLT (void) { } } } - } else if (m_Section->IsKnown(m_Opcode.rt) || m_Section->IsKnown(m_Opcode.rs)) { - DWORD KnownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; - DWORD UnknownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; + } else if (IsKnown(m_Opcode.rt) || IsKnown(m_Opcode.rs)) { + DWORD KnownReg = IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; + DWORD UnknownReg = IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; BYTE *Jump[2]; if (IsConst(KnownReg)) { @@ -3033,7 +3033,7 @@ void CRecompilerOps::SPECIAL_SLTU (void) { CPU_Message(" %X %s",m_CompilePC,R4300iOpcodeName(m_Opcode.Hex,m_CompilePC)); if (m_Opcode.rd == 0) { return; } - if (m_Section->IsKnown(m_Opcode.rt) && m_Section->IsKnown(m_Opcode.rs)) { + if (IsKnown(m_Opcode.rt) && IsKnown(m_Opcode.rs)) { if (IsConst(m_Opcode.rt) && IsConst(m_Opcode.rs)) { if (Is64Bit(m_Opcode.rt) || Is64Bit(m_Opcode.rs)) { #ifndef EXTERNAL_RELEASE @@ -3097,7 +3097,7 @@ void CRecompilerOps::SPECIAL_SLTU (void) { ProtectGPR(MappedReg); MappedRegLo = cMipsRegMapLo(MappedReg); MappedRegHi = cMipsRegMapHi(MappedReg); - if (m_Section->Is32Bit(MappedReg)) { + if (Is32Bit(MappedReg)) { MappedRegHi = Map_TempReg(x86_Any,MappedReg,TRUE); } @@ -3142,9 +3142,9 @@ void CRecompilerOps::SPECIAL_SLTU (void) { MoveVariableToX86reg(&m_BranchCompare,"m_BranchCompare",cMipsRegMapLo(m_Opcode.rd)); } } - } else if (m_Section->IsKnown(m_Opcode.rt) || m_Section->IsKnown(m_Opcode.rs)) { - DWORD KnownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; - DWORD UnknownReg = m_Section->IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; + } else if (IsKnown(m_Opcode.rt) || IsKnown(m_Opcode.rs)) { + DWORD KnownReg = IsKnown(m_Opcode.rt)?m_Opcode.rt:m_Opcode.rs; + DWORD UnknownReg = IsKnown(m_Opcode.rt)?m_Opcode.rs:m_Opcode.rt; BYTE *Jump[2]; if (IsConst(KnownReg)) { @@ -3219,12 +3219,12 @@ void CRecompilerOps::SPECIAL_DADD (void) { if (IsConst(m_Opcode.rt) && IsConst(m_Opcode.rs)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } - m_Section->MipsReg(m_Opcode.rd) = - Is64Bit(m_Opcode.rs)?m_Section->MipsReg(m_Opcode.rs):(__int64)m_Section->MipsRegLo_S(m_Opcode.rs) + - Is64Bit(m_Opcode.rt)?m_Section->MipsReg(m_Opcode.rt):(__int64)m_Section->MipsRegLo_S(m_Opcode.rt); - if (m_Section->MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ + MipsReg(m_Opcode.rd) = + Is64Bit(m_Opcode.rs)?MipsReg(m_Opcode.rs):(__int64)MipsRegLo_S(m_Opcode.rs) + + Is64Bit(m_Opcode.rt)?MipsReg(m_Opcode.rt):(__int64)MipsRegLo_S(m_Opcode.rt); + if (MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - } else if (m_Section->MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ + } else if (MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_64; @@ -3254,10 +3254,10 @@ void CRecompilerOps::SPECIAL_DADDU (void) { if (m_Opcode.rd == 0) { return; } if (IsConst(m_Opcode.rt) && IsConst(m_Opcode.rs)) { - __int64 ValRs = Is64Bit(m_Opcode.rs)?m_Section->MipsReg(m_Opcode.rs):(__int64)m_Section->MipsRegLo_S(m_Opcode.rs); - __int64 ValRt = Is64Bit(m_Opcode.rt)?m_Section->MipsReg(m_Opcode.rt):(__int64)m_Section->MipsRegLo_S(m_Opcode.rt); + __int64 ValRs = Is64Bit(m_Opcode.rs)?MipsReg(m_Opcode.rs):(__int64)MipsRegLo_S(m_Opcode.rs); + __int64 ValRt = Is64Bit(m_Opcode.rt)?MipsReg(m_Opcode.rt):(__int64)MipsRegLo_S(m_Opcode.rt); if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } - m_Section->MipsReg(m_Opcode.rd) = ValRs + ValRt; + MipsReg(m_Opcode.rd) = ValRs + ValRt; if ((MipsRegHi(m_Opcode.rd) == 0) && (cMipsRegLo(m_Opcode.rd) & 0x80000000) == 0) { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else if ((MipsRegHi(m_Opcode.rd) == 0xFFFFFFFF) && (cMipsRegLo(m_Opcode.rd) & 0x80000000) != 0) { @@ -3291,12 +3291,12 @@ void CRecompilerOps::SPECIAL_DSUB (void) { if (IsConst(m_Opcode.rt) && IsConst(m_Opcode.rs)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } - m_Section->MipsReg(m_Opcode.rd) = - Is64Bit(m_Opcode.rs)?m_Section->MipsReg(m_Opcode.rs):(__int64)m_Section->MipsRegLo_S(m_Opcode.rs) - - Is64Bit(m_Opcode.rt)?m_Section->MipsReg(m_Opcode.rt):(__int64)m_Section->MipsRegLo_S(m_Opcode.rt); - if (m_Section->MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ + MipsReg(m_Opcode.rd) = + Is64Bit(m_Opcode.rs)?MipsReg(m_Opcode.rs):(__int64)MipsRegLo_S(m_Opcode.rs) - + Is64Bit(m_Opcode.rt)?MipsReg(m_Opcode.rt):(__int64)MipsRegLo_S(m_Opcode.rt); + if (MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - } else if (m_Section->MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ + } else if (MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_64; @@ -3334,12 +3334,12 @@ void CRecompilerOps::SPECIAL_DSUBU (void) { if (IsConst(m_Opcode.rt) && IsConst(m_Opcode.rs)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } - m_Section->MipsReg(m_Opcode.rd) = - Is64Bit(m_Opcode.rs)?m_Section->MipsReg(m_Opcode.rs):(__int64)m_Section->MipsRegLo_S(m_Opcode.rs) - - Is64Bit(m_Opcode.rt)?m_Section->MipsReg(m_Opcode.rt):(__int64)m_Section->MipsRegLo_S(m_Opcode.rt); - if (m_Section->MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ + MipsReg(m_Opcode.rd) = + Is64Bit(m_Opcode.rs)?MipsReg(m_Opcode.rs):(__int64)MipsRegLo_S(m_Opcode.rs) - + Is64Bit(m_Opcode.rt)?MipsReg(m_Opcode.rt):(__int64)MipsRegLo_S(m_Opcode.rt); + if (MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - } else if (m_Section->MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ + } else if (MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_64; @@ -3378,10 +3378,10 @@ void CRecompilerOps::SPECIAL_DSLL (void) { { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } - m_Section->MipsReg(m_Opcode.rd) = Is64Bit(m_Opcode.rt)?m_Section->MipsReg(m_Opcode.rt):(__int64)m_Section->MipsRegLo_S(m_Opcode.rt) << m_Opcode.sa; - if (m_Section->MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ + MipsReg(m_Opcode.rd) = Is64Bit(m_Opcode.rt)?MipsReg(m_Opcode.rt):(__int64)MipsRegLo_S(m_Opcode.rt) << m_Opcode.sa; + if (MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - } else if (m_Section->MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ + } else if (MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_64; @@ -3401,10 +3401,10 @@ void CRecompilerOps::SPECIAL_DSRL (void) { if (IsConst(m_Opcode.rt)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } - m_Section->MipsReg(m_Opcode.rd) = Is64Bit(m_Opcode.rt)?m_Section->MipsReg(m_Opcode.rt):(QWORD)m_Section->MipsRegLo_S(m_Opcode.rt) >> m_Opcode.sa; - if (m_Section->MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ + MipsReg(m_Opcode.rd) = Is64Bit(m_Opcode.rt)?MipsReg(m_Opcode.rt):(QWORD)MipsRegLo_S(m_Opcode.rt) >> m_Opcode.sa; + if (MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - } else if (m_Section->MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ + } else if (MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_64; @@ -3423,10 +3423,10 @@ void CRecompilerOps::SPECIAL_DSRA (void) { if (IsConst(m_Opcode.rt)) { if (IsMapped(m_Opcode.rd)) { UnMap_GPR(m_Opcode.rd, FALSE); } - m_Section->MipsReg_S(m_Opcode.rd) = Is64Bit(m_Opcode.rt)?m_Section->MipsReg_S(m_Opcode.rt):(__int64)m_Section->MipsRegLo_S(m_Opcode.rt) >> m_Opcode.sa; - if (m_Section->MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ + MipsReg_S(m_Opcode.rd) = Is64Bit(m_Opcode.rt)?MipsReg_S(m_Opcode.rt):(__int64)MipsRegLo_S(m_Opcode.rt) >> m_Opcode.sa; + if (MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - } else if (m_Section->MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ + } else if (MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_64; @@ -3446,9 +3446,9 @@ void CRecompilerOps::SPECIAL_DSLL32 (void) { if (m_Opcode.rt != m_Opcode.rd) { UnMap_GPR(m_Opcode.rd, FALSE); } MipsRegHi(m_Opcode.rd) = cMipsRegLo(m_Opcode.rt) << m_Opcode.sa; MipsRegLo(m_Opcode.rd) = 0; - if (m_Section->MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ + if (MipsRegLo_S(m_Opcode.rd) < 0 && MipsRegHi_S(m_Opcode.rd) == -1){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - } else if (m_Section->MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ + } else if (MipsRegLo_S(m_Opcode.rd) >= 0 && MipsRegHi_S(m_Opcode.rd) == 0){ MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; } else { MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_64; @@ -3484,7 +3484,7 @@ void CRecompilerOps::SPECIAL_DSRL32 (void) { if (IsConst(m_Opcode.rt)) { if (m_Opcode.rt != m_Opcode.rd) { UnMap_GPR(m_Opcode.rd, FALSE); } MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - MipsRegLo(m_Opcode.rd) = (DWORD)(m_Section->MipsReg(m_Opcode.rt) >> (m_Opcode.sa + 32)); + MipsRegLo(m_Opcode.rd) = (DWORD)(MipsReg(m_Opcode.rt) >> (m_Opcode.sa + 32)); } else if (IsMapped(m_Opcode.rt)) { ProtectGPR(m_Opcode.rt); if (Is64Bit(m_Opcode.rt)) { @@ -3518,7 +3518,7 @@ void CRecompilerOps::SPECIAL_DSRA32 (void) { if (IsConst(m_Opcode.rt)) { if (m_Opcode.rt != m_Opcode.rd) { UnMap_GPR(m_Opcode.rd, FALSE); } MipsRegState(m_Opcode.rd) = CRegInfo::STATE_CONST_32; - MipsRegLo(m_Opcode.rd) = (DWORD)(m_Section->MipsReg_S(m_Opcode.rt) >> (m_Opcode.sa + 32)); + MipsRegLo(m_Opcode.rd) = (DWORD)(MipsReg_S(m_Opcode.rt) >> (m_Opcode.sa + 32)); } else if (IsMapped(m_Opcode.rt)) { ProtectGPR(m_Opcode.rt); if (Is64Bit(m_Opcode.rt)) { @@ -3556,7 +3556,7 @@ void CRecompilerOps::COP0_MF(void) { UpdateCounters(m_RegWorkingSet,false, true); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); - Call_Direct(AddressOf(CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); + Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); AfterCallDirect(m_RegWorkingSet); } Map_GPR_32bit(m_Opcode.rt,TRUE,-1); @@ -3598,7 +3598,7 @@ void CRecompilerOps::COP0_MT (void) { UpdateCounters(m_RegWorkingSet,false,true); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); - Call_Direct(AddressOf(CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); + Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); AfterCallDirect(m_RegWorkingSet); if (IsConst(m_Opcode.rt)) { MoveConstToVariable(cMipsRegLo(m_Opcode.rt), &_CP0[m_Opcode.rd], CRegName::Cop0[m_Opcode.rd]); @@ -3610,7 +3610,7 @@ void CRecompilerOps::COP0_MT (void) { AndConstToVariable(~CAUSE_IP7,&_Reg->FAKE_CAUSE_REGISTER,"FAKE_CAUSE_REGISTER"); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); - Call_Direct(AddressOf(CSystemTimer::UpdateCompareTimer), "CSystemTimer::UpdateCompareTimer"); + Call_Direct(AddressOf(&CSystemTimer::UpdateCompareTimer), "CSystemTimer::UpdateCompareTimer"); AfterCallDirect(m_RegWorkingSet); break; case 9: //Count @@ -3619,7 +3619,7 @@ void CRecompilerOps::COP0_MT (void) { m_RegWorkingSet.SetBlockCycleCount(m_RegWorkingSet.GetBlockCycleCount() + g_CountPerOp) ; BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); - Call_Direct(AddressOf(CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); + Call_Direct(AddressOf(&CSystemTimer::UpdateTimers), "CSystemTimer::UpdateTimers"); AfterCallDirect(m_RegWorkingSet); if (IsConst(m_Opcode.rt)) { MoveConstToVariable(cMipsRegLo(m_Opcode.rt), &_CP0[m_Opcode.rd], CRegName::Cop0[m_Opcode.rd]); @@ -3630,7 +3630,7 @@ void CRecompilerOps::COP0_MT (void) { } BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); - Call_Direct(AddressOf(CSystemTimer::UpdateCompareTimer), "CSystemTimer::UpdateCompareTimer"); + Call_Direct(AddressOf(&CSystemTimer::UpdateCompareTimer), "CSystemTimer::UpdateCompareTimer"); AfterCallDirect(m_RegWorkingSet); break; case 12: //Status @@ -3657,7 +3657,7 @@ void CRecompilerOps::COP0_MT (void) { //BreakPoint(__FILE__,__LINE__); //m_Section->CompileExit(m_CompilePC+4,m_RegWorkingSet,ExitResetRecompCode,FALSE,JneLabel32); BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); } break; @@ -3693,7 +3693,7 @@ void CRecompilerOps::COP0_MT (void) { } BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_Reg,x86_ECX); - Call_Direct(AddressOf(CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); + Call_Direct(AddressOf(&CRegisters::CheckInterrupts),"CRegisters::CheckInterrupts"); AfterCallDirect(m_RegWorkingSet); break; default: @@ -3710,7 +3710,7 @@ void CRecompilerOps::COP0_CO_TLBR( void) { if (!g_UseTlb) { return; } BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_TLB,x86_ECX); - Call_Direct(AddressOf(CTLB::ReadEntry),"CTLB::ReadEntry"); + Call_Direct(AddressOf(&CTLB::ReadEntry),"CTLB::ReadEntry"); AfterCallDirect(m_RegWorkingSet); } @@ -3723,7 +3723,7 @@ void CRecompilerOps::COP0_CO_TLBWI( void) { AndConstToX86Reg(x86_ECX,0x1F); Push(x86_ECX); MoveConstToX86reg((DWORD)_TLB,x86_ECX); - Call_Direct(AddressOf(CTLB::WriteEntry),"CTLB::WriteEntry"); + Call_Direct(AddressOf(&CTLB::WriteEntry),"CTLB::WriteEntry"); AfterCallDirect(m_RegWorkingSet); } @@ -3754,7 +3754,7 @@ void CRecompilerOps::COP0_CO_TLBP( void) { if (!g_UseTlb) { return; } BeforeCallDirect(m_RegWorkingSet); MoveConstToX86reg((DWORD)_TLB,x86_ECX); - Call_Direct(AddressOf(CTLB::Probe), "CTLB::TLB_Probe"); + Call_Direct(AddressOf(&CTLB::Probe), "CTLB::TLB_Probe"); AfterCallDirect(m_RegWorkingSet); } @@ -4700,7 +4700,7 @@ void CRecompilerOps::UpdateCounters ( CRegInfo & RegSet, bool CheckTimer, bool C PushImm32(stdstr_f("%d",RegSet.GetBlockCycleCount()).c_str(),RegSet.GetBlockCycleCount()); PushImm32("_SyncSystem",(DWORD)_SyncSystem); MoveConstToX86reg((DWORD)_System,x86_ECX); - Call_Direct(AddressOf(CN64System::UpdateSyncCPU),"CN64System::UpdateSyncCPU"); + Call_Direct(AddressOf(&CN64System::UpdateSyncCPU),"CN64System::UpdateSyncCPU"); AfterCallDirect(RegSet); } WriteX86Comment("Update Counter"); @@ -4719,7 +4719,7 @@ void CRecompilerOps::UpdateCounters ( CRegInfo & RegSet, bool CheckTimer, bool C BYTE * Jump = m_RecompPos - 1; Pushad(); MoveConstToX86reg((DWORD)_SystemTimer,x86_ECX); - Call_Direct(AddressOf(CSystemTimer::TimerDone),"CSystemTimer::TimerDone"); + Call_Direct(AddressOf(&CSystemTimer::TimerDone),"CSystemTimer::TimerDone"); Popad(); CPU_Message(""); diff --git a/Source/Project64/Settings/Settings Class.cpp b/Source/Project64/Settings/Settings Class.cpp index 3633761f8..f3d36677e 100644 --- a/Source/Project64/Settings/Settings Class.cpp +++ b/Source/Project64/Settings/Settings Class.cpp @@ -279,7 +279,7 @@ void CSettings::AddHowToHandleSetting () // cheats AddHandler(Cheat_Entry, new CSettingTypeCheats("")); - AddHandler(Cheat_Active, new CSettingTypeGameIndex("Cheat","",(bool)false)); + AddHandler(Cheat_Active, new CSettingTypeGameIndex("Cheat","",(DWORD)false)); AddHandler(Cheat_Extension, new CSettingTypeGameIndex("Cheat",".exten","??? - Not Set")); AddHandler(Cheat_Notes, new CSettingTypeCheats("_N")); AddHandler(Cheat_Options, new CSettingTypeCheats("_O")); @@ -298,7 +298,7 @@ DWORD CSettings::FindGameSetting ( CSettings * _this, char * Name ) } CSettingTypeGame * GameSetting = (CSettingTypeGame *)Setting; - if (stricmp(GameSetting->GetKeyName(),Name) != 0) + if (_stricmp(GameSetting->GetKeyName(),Name) != 0) { continue; } @@ -586,7 +586,7 @@ bool CSettings::LoadString ( SettingID Type, char * Buffer, int BufferSize ) stdstr Value; bRes = FindInfo->second->Load(0,Value); int len = BufferSize; - if ((Value.length() + 1) < len) + if ((Value.length() + 1) < (size_t)len) { len = Value.length() + 1; } diff --git a/Source/Project64/User Interface/Gui Class.cpp b/Source/Project64/User Interface/Gui Class.cpp index a8e079135..0b4552ccf 100644 --- a/Source/Project64/User Interface/Gui Class.cpp +++ b/Source/Project64/User Interface/Gui Class.cpp @@ -770,11 +770,13 @@ DWORD CALLBACK CMainGui::MainGui_Proc (WND_HANDLE hWnd, DWORD uMsg, DWORD wParam default: if (_this->m_Menu) { if (LOWORD(wParam) > 5000 && LOWORD(wParam) <= 5100 ) { - if (_Plugins->RSP() && _Plugins->RSP()->ProcessMenuItem != NULL) { + if (_Plugins->RSP()) + { _Plugins->RSP()->ProcessMenuItem(LOWORD(wParam)); } } else if (LOWORD(wParam) > 5100 && LOWORD(wParam) <= 5200 ) { - if (_Plugins->Gfx() && _Plugins->Gfx()->ProcessMenuItem != NULL) { + if (_Plugins->Gfx()) + { WriteTrace(TraceGfxPlugin,"ProcessMenuItem: Starting"); _Plugins->Gfx()->ProcessMenuItem(LOWORD(wParam)); WriteTrace(TraceGfxPlugin,"ProcessMenuItem: Done"); diff --git a/Source/Project64/User Interface/Notification Class.cpp b/Source/Project64/User Interface/Notification Class.cpp index c288e7f86..0da9c9fb6 100644 --- a/Source/Project64/User Interface/Notification Class.cpp +++ b/Source/Project64/User Interface/Notification Class.cpp @@ -155,9 +155,9 @@ void CNotification::AddRecentDir ( const char * RomDir ) { if (HIWORD(RomDir) == NULL) { return; } //Get Information about the stored rom list - int MaxRememberedDirs = _Settings->LoadDword(Directory_RecentGameDirCount); + size_t MaxRememberedDirs = _Settings->LoadDword(Directory_RecentGameDirCount); strlist RecentDirs; - int i; + size_t i; for (i = 0; i < MaxRememberedDirs; i ++ ) { stdstr RecentDir = _Settings->LoadStringIndex(Directory_RecentGameDirIndex,i); @@ -195,9 +195,9 @@ void CNotification::AddRecentRom ( const char * ImagePath ) { if (HIWORD(ImagePath) == NULL) { return; } //Get Information about the stored rom list - int MaxRememberedFiles = _Settings->LoadDword(File_RecentGameFileCount); + size_t MaxRememberedFiles = _Settings->LoadDword(File_RecentGameFileCount); strlist RecentGames; - int i; + size_t i; for (i = 0; i < MaxRememberedFiles; i ++ ) { stdstr RecentGame = _Settings->LoadStringIndex(File_RecentGameFileIndex,i); diff --git a/Source/Project64/User Interface/Rom Browser Class.cpp b/Source/Project64/User Interface/Rom Browser Class.cpp index 028cc9bd7..7be1f45ff 100644 --- a/Source/Project64/User Interface/Rom Browser Class.cpp +++ b/Source/Project64/User Interface/Rom Browser Class.cpp @@ -109,7 +109,7 @@ int CRomBrowser::CalcSortPosition (DWORD lParam) break; } - int index; + size_t index; for (index = 0; index < m_Fields.size(); index++) { if (_stricmp(m_Fields[index].Name(),SortFieldName.c_str()) == 0) { break; } @@ -124,7 +124,7 @@ int CRomBrowser::CalcSortPosition (DWORD lParam) int LastTestPos = -1; while (Start < End) { - int TestPos = floor((Start + End) / 2); + int TestPos = (int)floor((float)((Start + End) / 2)); if (LastTestPos == TestPos) { TestPos += 1; @@ -157,11 +157,11 @@ int CRomBrowser::CalcSortPosition (DWORD lParam) else { //Find new start - float Left = Start; - float Right = TestPos; + float Left = (float)Start; + float Right = (float)TestPos; while (Left < Right) { - int NewTestPos = floor((Left + Right) / 2); + int NewTestPos = (int)floor((Left + Right) / 2); if (LastTestPos == NewTestPos) { NewTestPos += 1; @@ -181,18 +181,18 @@ int CRomBrowser::CalcSortPosition (DWORD lParam) { break; } - Right = NewTestPos; + Right = (float)NewTestPos; } if (Result > 0) { - Left = NewTestPos; + Left = (float)NewTestPos; } } - Start = Right; + Start = (float)Right; //Find new end - Left = TestPos; + Left = (float)TestPos; Right = End; while (Left < Right) { @@ -784,7 +784,7 @@ bool CRomBrowser::IsValidRomImage ( BYTE Test[4] ) { bool CRomBrowser::LoadDataFromRomFile(char * FileName,BYTE * Data,int DataLen, int * RomSize, FILE_FORMAT & FileFormat) { BYTE Test[4]; - if (strnicmp(&FileName[strlen(FileName)-4], ".ZIP",4) == 0 ){ + if (_strnicmp(&FileName[strlen(FileName)-4], ".ZIP",4) == 0 ){ int len, port = 0, FoundRom; unz_file_info info; char zname[132]; @@ -951,8 +951,8 @@ void CRomBrowser::MenuSetText ( MENU_HANDLE hMenu, int MenuPos, const char * Tit MenuInfo.cch = 256; GetMenuItemInfo((HMENU)hMenu,MenuPos,TRUE,&MenuInfo); - if (strchr(Title,'\t') != NULL) { *(strchr(Title,'\t')) = '\0'; } strcpy(String,Title); + if (strchr(String,'\t') != NULL) { *(strchr(String,'\t')) = '\0'; } if (ShotCut) { sprintf(String,"%s\t%s",String,ShotCut); } SetMenuItemInfo((HMENU)hMenu,MenuPos,TRUE,&MenuInfo); } @@ -1473,12 +1473,22 @@ void CRomBrowser::SaveRomListColoumnInfo(void) { lvColumn.mask = LVCF_WIDTH; for (int Coloumn = 0;ListView_GetColumn((HWND)m_hRomList,Coloumn,&lvColumn); Coloumn++) { - for (int index = 0; index < m_Fields.size(); index++) { - if (m_Fields[index].Pos() == Coloumn) { break; } - } - if (m_Fields[index].ColWidth() != lvColumn.cx) + int index; + bool bFound = false; + for (index = 0; index < m_Fields.size(); index++) { - m_Fields[index].SetColWidth(lvColumn.cx); + if (m_Fields[index].Pos() == Coloumn) + { + bFound = true; + break; + } + } + if (bFound) + { + if (m_Fields[index].ColWidth() != lvColumn.cx) + { + m_Fields[index].SetColWidth(lvColumn.cx); + } } } WriteTrace(TraceDebug,"SaveRomListColoumnInfo - Done"); diff --git a/Source/Project64/User Interface/Settings Config.h b/Source/Project64/User Interface/Settings Config.h index 8c0b87304..281b3324b 100644 --- a/Source/Project64/User Interface/Settings Config.h +++ b/Source/Project64/User Interface/Settings Config.h @@ -4,9 +4,9 @@ class CConfigSettingSection; class CSettingsPage; class CSettingConfig : - private CDialogImpl + public CDialogImpl { - +public: BEGIN_MSG_MAP_EX(CSettingConfig) MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog) COMMAND_CODE_HANDLER(BN_CLICKED,OnClicked) diff --git a/Source/Project64/User Interface/Settings/Settings Page - Directories.h b/Source/Project64/User Interface/Settings/Settings Page - Directories.h index 663993e4c..ea996a1d0 100644 --- a/Source/Project64/User Interface/Settings/Settings Page - Directories.h +++ b/Source/Project64/User Interface/Settings/Settings Page - Directories.h @@ -1,7 +1,7 @@ #pragma once class COptionsDirectoriesPage : - private CDialogImpl, + public CDialogImpl, public CSettingsPage { diff --git a/Source/Project64/User Interface/Settings/Settings Page - Keyboard Shortcuts.cpp b/Source/Project64/User Interface/Settings/Settings Page - Keyboard Shortcuts.cpp index dabaff391..49167feac 100644 --- a/Source/Project64/User Interface/Settings/Settings Page - Keyboard Shortcuts.cpp +++ b/Source/Project64/User Interface/Settings/Settings Page - Keyboard Shortcuts.cpp @@ -165,7 +165,7 @@ void COptionsShortCutsPage::OnAssignClicked ( UINT Code, int id, HWND ctl ) return; } - WORD key = SendDlgItemMessage(IDC_VIRTUALKEY,CB_GETITEMDATA,index,0); + WORD key = (WORD)SendDlgItemMessage(IDC_VIRTUALKEY,CB_GETITEMDATA,index,0); bool bCtrl = (SendDlgItemMessage(IDC_CTL,BM_GETCHECK, 0,0) == BST_CHECKED); bool bAlt = (SendDlgItemMessage(IDC_ALT,BM_GETCHECK, 0,0) == BST_CHECKED); bool bShift = (SendDlgItemMessage(IDC_SHIFT,BM_GETCHECK, 0,0) == BST_CHECKED); @@ -208,7 +208,7 @@ void COptionsShortCutsPage::OnShortCutChanged ( UINT Code, int id, HWND ctl ) //Get the virtual key info int index = m_VirtualKeyList.GetCurSel(); if (index < 0) { return; } - WORD key = m_VirtualKeyList.GetItemData(index); + WORD key = (WORD)m_VirtualKeyList.GetItemData(index); bool bCtrl = (SendDlgItemMessage(IDC_CTL,BM_GETCHECK, 0,0) == BST_CHECKED); bool bAlt = (SendDlgItemMessage(IDC_ALT,BM_GETCHECK, 0,0) == BST_CHECKED); bool bShift = (SendDlgItemMessage(IDC_SHIFT,BM_GETCHECK, 0,0) == BST_CHECKED); @@ -287,7 +287,7 @@ BOOL CALLBACK KeyPromptDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lPar void COptionsShortCutsPage::InputGetKeys (void) { - HWND hKeyDlg = CreateDialogParam(GetModuleHandle(NULL),MAKEINTRESOURCE(IDD_Key_Prompt),m_hWnd,KeyPromptDlgProc,(LPARAM)GetDlgItem(IDC_VIRTUALKEY)); + HWND hKeyDlg = CreateDialogParam(GetModuleHandle(NULL),MAKEINTRESOURCE(IDD_Key_Prompt),m_hWnd,KeyPromptDlgProc,(LPARAM)::GetDlgItem(m_hWnd,IDC_VIRTUALKEY)); ::EnableWindow(GetParent(),false); MSG msg; @@ -312,7 +312,7 @@ void COptionsShortCutsPage::InputGetKeys (void) SendDlgItemMessage(IDC_CTL,BM_SETCHECK, (GetKeyState(VK_CONTROL) & 0x80) != 0 ? BST_CHECKED : BST_UNCHECKED,0); SendDlgItemMessage(IDC_ALT,BM_SETCHECK, (GetKeyState(VK_MENU) & 0x80) != 0 ? BST_CHECKED : BST_UNCHECKED,0); SendDlgItemMessage(IDC_SHIFT,BM_SETCHECK, (GetKeyState(VK_SHIFT) & 0x80) != 0 ? BST_CHECKED : BST_UNCHECKED,0); - SendMessage(WM_COMMAND,MAKELPARAM(IDC_VIRTUALKEY,LBN_SELCHANGE),(LPARAM)GetDlgItem(IDC_VIRTUALKEY)); + SendMessage(WM_COMMAND,MAKELPARAM(IDC_VIRTUALKEY,LBN_SELCHANGE),(LPARAM)::GetDlgItem(m_hWnd,IDC_VIRTUALKEY)); SetForegroundWindow(GetParent()); ::DestroyWindow(hKeyDlg); } diff --git a/Source/Project64/User Interface/Settings/Settings Page - Options.h b/Source/Project64/User Interface/Settings/Settings Page - Options.h index 3250d74fd..cdd960a0e 100644 --- a/Source/Project64/User Interface/Settings/Settings Page - Options.h +++ b/Source/Project64/User Interface/Settings/Settings Page - Options.h @@ -1,7 +1,7 @@ #pragma once class CGeneralOptionsPage : - private CSettingsPageImpl, + public CSettingsPageImpl, public CSettingsPage { diff --git a/Source/Project64/User Interface/Settings/Settings Page.cpp b/Source/Project64/User Interface/Settings/Settings Page.cpp index c7f4fcf8f..a53860874 100644 --- a/Source/Project64/User Interface/Settings/Settings Page.cpp +++ b/Source/Project64/User Interface/Settings/Settings Page.cpp @@ -8,7 +8,7 @@ CConfigSettingSection::CConfigSettingSection( LPCSTR PageTitle ) : CConfigSettingSection::~CConfigSettingSection () { - for (int i = 0; i < m_Pages.size(); i++) + for (size_t i = 0; i < m_Pages.size(); i++) { delete m_Pages[i]; } @@ -22,7 +22,7 @@ void CConfigSettingSection::AddPage(CSettingsPage * Page ) CSettingsPage * CConfigSettingSection::GetPage ( int PageNo ) { - if (PageNo < 0 || PageNo >= m_Pages.size()) + if (PageNo < 0 || PageNo >= (int)m_Pages.size()) { return NULL; } diff --git a/Source/Project64/User Interface/UI Resources.rc b/Source/Project64/User Interface/UI Resources.rc index 4647a1fff..782a47281 100644 --- a/Source/Project64/User Interface/UI Resources.rc +++ b/Source/Project64/User Interface/UI Resources.rc @@ -226,7 +226,7 @@ END IDD_Settings_GameGeneral DIALOGEX 0, 0, 218, 158 STYLE WS_CHILD EXSTYLE WS_EX_CONTROLPARENT -FONT 8, "MS Shell Dlg" +FONT 8, "MS Shell Dlg", 0, 0, 0x1 BEGIN LTEXT "Good Name:",IDC_GOOD_NAME_TEXT,6,8,91,10 EDITTEXT IDC_GOOD_NAME,102,7,109,12,ES_AUTOHSCROLL | ES_READONLY @@ -715,7 +715,7 @@ END IDD_Settings_GameRecompiler DIALOGEX 0, 0, 230, 156 STYLE WS_CHILD EXSTYLE WS_EX_CONTROLPARENT -FONT 8, "MS Shell Dlg" +FONT 8, "MS Shell Dlg", 0, 0, 0x1 BEGIN LTEXT "CPU core style:",IDC_CPU_TYPE_TEXT,4,11,106,10 COMBOBOX IDC_CPU_TYPE,113,8,99,49,CBS_DROPDOWNLIST | WS_VSCROLL | @@ -1087,8 +1087,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,7,51,43 - PRODUCTVERSION 1,7,51,43 + FILEVERSION 1,7,51,44 + PRODUCTVERSION 1,7,51,44 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -1106,14 +1106,14 @@ BEGIN VALUE "Comments", "\0" VALUE "CompanyName", " \0" VALUE "FileDescription", "Project64\0" - VALUE "FileVersion", "1, 7, 51, 43\0" + VALUE "FileVersion", "1, 7, 51, 44\0" VALUE "InternalName", "Project64\0" VALUE "LegalCopyright", "Copyright © 2010\0" VALUE "LegalTrademarks", "\0" VALUE "OriginalFilename", "Project64.exe\0" VALUE "PrivateBuild", "\0" VALUE "ProductName", " Project64\0" - VALUE "ProductVersion", "1, 7, 51, 43\0" + VALUE "ProductVersion", "1, 7, 51, 44\0" VALUE "SpecialBuild", "\0" END END diff --git a/Source/Project64/User Interface/WTL Controls/ClistCtrl/ListCtrl.h b/Source/Project64/User Interface/WTL Controls/ClistCtrl/ListCtrl.h index a918dc4aa..5fbd6aedc 100644 --- a/Source/Project64/User Interface/WTL Controls/ClistCtrl/ListCtrl.h +++ b/Source/Project64/User Interface/WTL Controls/ClistCtrl/ListCtrl.h @@ -2933,9 +2933,9 @@ public: if ( m_bTileBackground ) { // calculate tile image maximum rows and columns - div_t divRows = div( rcClient.Height(), sizBackground.cy ); + div_t divRows = div( (int)rcClient.Height(), (int)sizBackground.cy ); int nTileRows = divRows.rem > 0 ? divRows.quot + 1 : divRows.quot; - div_t divColumns = div( rcClient.Width(), sizBackground.cx ); + div_t divColumns = div( (int)rcClient.Width(), (int)sizBackground.cx ); int nTileColumns = divColumns.rem > 0 ? divColumns.quot + 1 : divColumns.quot; // draw tiled background image diff --git a/Source/Project64/User Interface/WTL Controls/ClistCtrl/ListEdit.h b/Source/Project64/User Interface/WTL Controls/ClistCtrl/ListEdit.h index db165a932..fada04c3a 100644 --- a/Source/Project64/User Interface/WTL Controls/ClistCtrl/ListEdit.h +++ b/Source/Project64/User Interface/WTL Controls/ClistCtrl/ListEdit.h @@ -80,7 +80,7 @@ public: return TRUE; stdstr strValue; - int nValueLength = GetWindowTextLength(); + UINT nValueLength = GetWindowTextLength(); strValue.reserve(nValueLength + 1); strValue.resize(nValueLength); GetWindowText( (LPTSTR)strValue.c_str(), nValueLength + 1); @@ -136,7 +136,7 @@ public: int nDecimalIndex = -1; int nDigitIndex = -1; - for ( int nCharIndex = 0; nCharIndex < strNewValue.length(); nCharIndex++ ) + for ( size_t nCharIndex = 0; nCharIndex < strNewValue.length(); nCharIndex++ ) { TCHAR nCharValue = strNewValue[ nCharIndex ]; if (( m_nFlags & ITEM_FLAGS_EDIT_HEX ) && diff --git a/Source/Project64/ValidateBinary.cpp b/Source/Project64/ValidateBinary.cpp index 2d54a7352..27b5cc778 100644 --- a/Source/Project64/ValidateBinary.cpp +++ b/Source/Project64/ValidateBinary.cpp @@ -206,7 +206,7 @@ void TestValidBinaryThread ( ) stdstr_f PostData("%s=","Data"); BYTE * Input = (BYTE *)PostInfo.c_str(); BYTE PreviousChar = 0xAA; - for (int x = 0; x < PostInfo.size(); x++) + for (size_t x = 0; x < PostInfo.size(); x++) { PostData += stdstr_f("%02X",(BYTE)(Input[x] ^ PreviousChar)); PreviousChar = Input[x]; @@ -277,7 +277,7 @@ void TestValidBinaryThread ( ) WriteTraceF(TraceValidate,"v9: %s",Result_md5.hex_digest()); #endif //if good MD5 - if (stricmp(Result_md5.hex_digest(),"FB2CDD258756A5472BD24BABF2EC9F66") == 0) // Good Md5 + if (_stricmp(Result_md5.hex_digest(),"FB2CDD258756A5472BD24BABF2EC9F66") == 0) // Good Md5 { if (LastRunItem > 0) { @@ -290,7 +290,7 @@ void TestValidBinaryThread ( ) } DefaultResult = true; } - else if (stricmp(Result_md5.hex_digest(),"9030FF575A9B687DC868B966CB7C02D4") == 0) // Bad MD5 + else if (_stricmp(Result_md5.hex_digest(),"9030FF575A9B687DC868B966CB7C02D4") == 0) // Bad MD5 { if (LastRunItem > 0) { diff --git a/Source/Project64/main.cpp b/Source/Project64/main.cpp index 77454c11f..41a0faab1 100644 --- a/Source/Project64/main.cpp +++ b/Source/Project64/main.cpp @@ -61,7 +61,7 @@ void FixUPXIssue ( BYTE * ProgramLocation ) SetFilePointer(hFile,(8 + SizeOfSections) * -1,0,FILE_END); ReadFile(hFile,Section,SizeOfSections,&dwRead,NULL); - for (int count = 0; count < NoOfSections; count ++ ) + for (DWORD count = 0; count < NoOfSections; count ++ ) { LPVOID Address = ProgramLocation + Section[count].VirtualAddress; MEMORY_BASIC_INFORMATION Buffer;