From 745e4ca9d60b453ad5babd6b957970acaeb99072 Mon Sep 17 00:00:00 2001 From: Bixilon Date: Sat, 1 May 2021 00:40:16 +0200 Subject: [PATCH] bump exhibitionism, fix some bugs with versions with a space in their name --- ReadMe.md | 1 + wrapper/PixLyzer.py | 8 ++++---- wrapper/exhibitionism.jar | Bin 2947170 -> 2947315 bytes 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ReadMe.md b/ReadMe.md index faee9db..75d8589 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -81,4 +81,5 @@ I'd be happy. Just make a PR and ensure, it is working for most versions (And pl - [yarn](https://github.com/FabricMC/yarn) - [objenesis](https://github.com/easymock/objenesis) - [Kotlin](https://kotlinlang.org/) +- [Exhibitionism](https://github.com/HeartPattern/Exhibitionism) - [ujson](https://pypi.org/project/ujson/) diff --git a/wrapper/PixLyzer.py b/wrapper/PixLyzer.py index 45a2544..394f3d5 100755 --- a/wrapper/PixLyzer.py +++ b/wrapper/PixLyzer.py @@ -11,7 +11,7 @@ import ujson # ToDo: "19w11b", "19w11a", "19w09a", "19w08b", "19w08a", "19w07a", "19w06a", "19w05a", "19w04b", "19w04a", "19w03c", "19w03b", "19w03a", "19w02a", "18w50a", "18w49a", "18w48b" "18w48a", "18w47b", "18w47a", "18w46a", "18w45a", "18w44a", "18w43c", "18w43b" DOWNLOAD_UNTIL_VERSION = "18w43b" -SKIP_VERSIONS = [] +SKIP_VERSIONS = ["1.14.2 Pre-Release 1"] HASH_FOLDER = os.path.abspath("data/hash/") + "/" ASSETS_HASH_INDEX_FILE = os.path.abspath("data/index") @@ -91,7 +91,7 @@ def getVersionJson(versionEntry): def checkFile(filename, url, versionId): if not os.path.isfile(filename): print("Downloading %s for %s" % (filename, versionId)) - urllib.request.urlretrieve(url, filename + ".tmp") + urllib.request.urlretrieve(url.replace(" ", "%20"), filename + ".tmp") os.rename(filename + ".tmp", filename) @@ -171,7 +171,7 @@ def checkDeobfuscatedClientJar(jarBasePath, version, versionJson): if not os.path.isfile("exhibitionism.jar"): raise Exception("Can not find exhibitionism.jar!") - runAndWait("java -cp \"./wrapper/exhibitionism.jar\" kr.heartpattern.exhibitionism.AppKt --input %s --output %s --parallel 10000" % (yarnJarPath, exhibitionismJarPath + ".tmp")) + runAndWait("java -cp \"./wrapper/exhibitionism.jar\" kr.heartpattern.exhibitionism.AppKt --input \"%s\" --output \"%s\" --parallel 8" % (yarnJarPath, exhibitionismJarPath + ".tmp")) os.rename(exhibitionismJarPath + ".tmp", exhibitionismJarPath) os.remove(yarnJarPath) @@ -204,7 +204,7 @@ def compilePixLyzer(): print("PixLyzer is now compiled") -print("Checking libraries") +print("Checking libraries...") checkFile(filename=TINY_REMAPPER_PATH, url=TINY_REMAPPER_DOWNLOAD_PATH, versionId="libraries") checkFile(filename=OBJENSIS_PATH, url=OBJENSIS_DOWNLOAD_PATH, versionId="libraries") diff --git a/wrapper/exhibitionism.jar b/wrapper/exhibitionism.jar index f6389320ff0b7690f745db5549318dbf7a867439..eec224253c7e4d64b1b66e48b3f0486276070b4c 100644 GIT binary patch delta 18687 zcmZWx2{=_<_jm6#&+~Avd5Y^G8A8TNkql8GlrhOHrBZGhh)@z+QD~k_6;~mtC`D+J zP&7-XCe8lqoFlLP-}gLy_pIL<_S$RhVeP#=?~Bokluu(9DMGG}G)_ql{C@(R#aTj1 zH2g_*lz)wqlR|tM+Ea(3 zgn{Ws7$^P@jZ{$-P+vbq02NkK`Pi$fsWZ56>6FwuDm%4~re;s*mT_@@Zo$8B!&;~) zmnp#Ry3gruL2&g&xcoVZuWSjfLc&GlpTH%{cCz96Ay23+^5tR@AN{ArWZ8Rtx!M$P zG6lrg{t4W@L@!fp^SR+458F1McR>yz9{x^97U|IWrBc{4`Pl54{K|(3y{E1GDNkDk z*iTyp1$N>H``r?uBlC%`)LfxrL*h&Kju5{h{)O;n(cK_nVdVEth>u``>6|9wi?dAF zY9k?5c1u*2?K?xHt$`rHA3D9{s;+>giQqe{pF*+Yy7L@;hDOK)%`7@)p_ zFo_@{vMCqJq|t>knb9d5DRt#C?7DK<-K_)!;&N>NM7gdcf`o7|Dn02G(gMU;7Ref6 zLhK|f`X_BdB7O~>OkLg@x(;>n`%?kG1lx3mNXYyzXs0YkatV;`eu% zZH}J7)yrc(U+By9cza}qyrayy;ER5nPevS!bZYzHXomTI}~bTdybw`ZE3G8sT=W@)?d0S%_O<}rMFQN&l_3csP2|rg`W-&PG{R@bY1lr zw@iMp!0%SYtn=Lh$;{8(I`GcMl{c82$>%KcQ)uZHqnfrlzALYx|HlfUNeTbCTz zlwWfDfl8c%ON!i6>Pz9zGe5JIg_o^e@#Etnr`fuEB4zKro|@=(Vpo`%vkI8Gb`|@* zO6FW&&v(jfk%9E*`tkiGa z9N9|=}9 z%3hZdOflK&v^>JY$SWo^TkrU@*WdY7E?utpY2YE3S#_Z^?cC*;&SG}AWQ8S%emp&| z;4SIcQzqVZzl1$}RW-P_c`Gx&H~(Q0t47S{R&}yuka?B<^Ub?!f9OyzYe}&etGegd zDE3_4csF*&ysEQm9F`dlLK4-@MO=~F%0{#fDm?Gu{in-F;Xo?uOuS=~S3h>IJ4f-;MR`|dWz&pHTva^h3O{u7+O>4g=f3QWQwl3yo{>&Vwx7>% z*_*Q9iNa9f^QZF^R6^$&Um7uIhliD{{;9V_j3szOX;(Ub_Qp$GA~)9j3M@K&=58v( z;xct@QipH14D%*O@cos?zgAg~j0FTA>I~6nkQ1h#)QC+iQ7*_mdAEE|t@$kl_fqdW z_Kz>@H1v91s*`Z1AzdRZ$y~9)t4ijK$;YY@$umvI*T=7mahLq%w)&AoZukSiy3e5> zTMp$J`m(ZXojr4h#*|~zU5&Lkz2_WQvotY?WB=z=UiI~5Hf~+6k#moGbl5&NQQ4Y# z@AUEC8e=@dwe#bS1dVU$%#ty^ob>1I?g-^E@p*2RALV5j)!{pDdC^t~?+_Bq(C*h6 zs#`=m_HhfX^LoSwuE=!ejvM;>%#QxbJYsOdqxlPywU=eQ-Y7vUVs>=O&Wfa;B1e{d zaA02Ev?l45WSd2XTdX8aZo%Ou0p9wfx^{N%Or!X(3B&mI&_=@YCbWU31s2*{*BX59`TFg37_m0ShC$ZasYo zKe2wUKHE_e#LvNTK#GII5MMuMBA0D+0oEhA32V>1V9(5O@f-AGTBijl%V(xgx)1Hp z3Q{rhdzZXcK9{2T;oggT;nc6~D-xbRT2WD%Vi^!txmG9Tl5}NC<#0 zKPy)hV)f1S_)*bDs?dz9CR``d+qXrgNYH4T-TDsr<%DSlGb&uu>n=&eF3jID8h9d2 z$}cg^EHovuD|ujkQb*z8Q1!WUGV+`Uvdb4NLVVw5EtD*1aUD=g4)&&AZaBNus$lzi z=HnMjSxJWkOJ4t$)Q{H~yc7S+_5OJt9^#F?N25^H-;JYI6^ zdvfR#eQ8gzmdq5R^}_F$JuI^I>!sG!xPOhlb8^)cX^(0a-~GWwE^Ugv#{(`tys&n; zdcwv%Hh#}Gzwvy!M^lOsV`XbTVrS&Pz`gl+irGt&l`N1cQ}37;t~4s zw5wf9lKiASrI)mynIS@7!naGHd|9Joxl_@;CE2_8Hh#{_{w=Mvp~!1N)TwQSO&jQH zn+wCvsbv+pE-Mf2VkPU%-DC9d&Xc&OJp!-Sb+1~-UhR49K~!FgS55wSFE!-mmwkt4 z^88q@Hh+zfdTPl^UAg!6YiwqPq@` z5D%?7{xh&zEyCyHvFcg$nviP zzgIAu+KqKDXv=*45awl3IQyj<(<*)M6;swg`v+TxR|hu^Kh*eOm3d=-MWmS49lG17 zgR}AZH{Z%F-`_Z;o)*;@adCHii`njxoRr(AG*lzA=U;f0dHI}Ze4n9LV@3@pSG@Z< z4KqC*s@3A^usq2pv2*Q~zLsCM+(fH-Vc!wIwkjF7nYw$=-Dpdon&|H8eH|`W&c`HXprgnXKsY`!Xb>2#(y>7FoVvcT( z?{eoGLG$ZeSo_6KINs=z+VRjVe_cR=nX6ypOtuyKnYd}#rhIhwxb*$j54FE`(mKM` zvE-Gdoo3#7C8I|xD{B`v-tWxHMpx5$!#Aq*9PiVfwb^v*@k;|$k56^cD_`FfdGqn3 z_N!w%3+wL9c(sFVZ=lXF`!J#=dUkawb9qRq+qy;T3Oo*OVIB7IxwG(|*-@2xqm+@J zpHa=@xB1RLXjrFuSK*ERU`^z1%2>F|=d8dq&*}v!PcQZBrAldPx5QRjN{u|q9#CYN ziaiQQs64Jx|KM=Wakc#J6O9&YJh^M$4Ci>i)j!wby(jd2^U%k*oFeyLM!H}vcJT0C zh0RfGi#FYS>~y#5Fe~ZOo4V3xg6mH&6t2^puKgC6kf1|}*3$G#ly!j4a zOqZv8=S_ck$>6-_i1k+akecU@dLNulEmt^n?Q+C}C$a~dR)1H>ySB-2O~JK2PiIur zb=)Wwm{D=gAgZoDLSEs)6N#~Ssl`P#2G;S}@${_QoGYz%I5Kh$#e8Nh__Z}#HgA4y zg|h2Ru7J?ROYcatUkNUt*HJY3GQO1+wVSTA+;wi<%;aA;HtH3%^c`AY+!q`l=s&Ev z%0@`ixnIcao$xE3kGIC8moaY5xe|8#W~JCfg1q5~W83a;Q7_mNJ1%bu5LaT{`11LO zgnPAb--4S#3Ec73D+ESv7zcW?q_mD-*6wkbD0-#XBpmwTA~nME3$N7~<{i9_)#$Y#;b%Kv!U)1H+=+vNUD)9@gh|M?XG>w@chEq$tP4Sf#UFssSBMBx^z?eR~g zz*)m_8&dbS-CFVuV@fWSf898LS^36RsAyZoX(fvHb2RH8AoS34_ zTK3UN|LlCZvg2RgiS~xCx)&D0KiF7l>e7=Y@J&aC9hg$hXnjHP(Ner__rm|#2Bk*5 zG1-wSmm(+02lb5G{=T1I$Nbt}61jQY@fZJzqZu1m88ck5xAz2ofoUvKh}Lu%lfXm zW#^6_Y5ABxUXM=HbKX5DpVh5up<2dsUHtpp0ox;uto}+*xfgPdlD}lg%Pz7+FjNd(CLDD zch85`o*M0vLi0b86BI*H`NJ{hiJupm9jW6}u1E{caS;vmJg~ zanw_~8;cTr!o;)|ey9reT|1y7x8d;p>>lI8k0~DgzSi$feqs&SG165kTjQ%=#ypCB zJlK7-I3nF(@q}(&mq%KsrGH?7KlV=N=)v%u{(X^mXV%%s_8{&h_5svXK2Ot@=|jARCzqEJmls2 zw3)gshyCwut&;XKXQg=s4hSWW*_&ks3Z62*`t^8hRs5CArJB;iX2F|tnFli3n=EcL zFYq=pKhe8V`TD-?XJgCs@Ax-%=3ISiP;j?;LeHt6uQ}P^F*E3#L&426oX&klCyF%U zcEz93Up=eqR8ICrfe`V$hHlC3{Y%|g*Q1R-g`XSgJHNzop?zV#6N}-MtX?5ianA9^ zme!CzI{r-`H~H8rr^Guo4|DCmAGqiZkM6C#*K23I7e2MUY_o;nY&EX!!+s5)n^pTa zm7dLT6ilgH)$<@ggV(enHTXhhfcVJE9h^?BDNE1Z);)Z1MThd0^u0nysq>EZe=pu$ zu33>@E#|&o^M2j6sDq0Pj`y-kqc4@Mh~E{bxM$EJIx>COE^;(6S?YnTU9zG6WA>O? zgJ9)5gMt(Hf9s2QL>niGKYr(Em?n64SSOsu|Ht`_l;(FXF8M0S*M`Z1g6_j>=9UVy z=KHMs7`Z;aX-$d2Jk8XSg_vM*#!YkewQgTr7bZ_O_a$8~Z}f38_C)-$UnQ@Uty zcD2XrB%@#Ud69uH#wE-yCkRhc$>$8 zkH)j_&BI*PZrRM^)ybK~5G~3!FJJ{!&J6CmKghoM+umG~@;Fvx-~N!LhusRkO+S3Ei)S<~ zJCrrzFE0K4rcCwfMK-(EE!_BKVDPlfQhft>9T| zvoGM$-HM$$&AzLn_NKAMmVIW#HQn}HE#GAQ+cmRI&u>sm@`d`vHp`l}pMQ>oOnm#) z7{#IK>R(-_@xf`B-z)yaE7kJv1)5N!U{QtZr5y}L2HzsYP-d0avLtj9N^e{-_#Cce76FKDw|x{oKz7GO^ni z#w^o|;J-3InX>Sua&F?Iuh*~b+0~bHT((*!`-iGb_tjh44dYoJe8RIN^OFN3Tds-T z$gX{GDfQ?&=H|@zM&U=di80%}So;lUF5>9hoNegSJZB^t!tZKOlTS25Lnx@df#Rfn>y7mJ65rk zet!Ax`8e>hmUin?mOP?rZ%A{_=$<9WWc08HRnLp&9lN0OVd28(?xowe4TnTHvz86U zxrA;>cagj>a>l>>m7+WEKT`2Opr`8a#a<<+`7{zxUbN1~ zoz99sByMVSBCPX3Bt6+RYC|Kte~Og^@o5d+@Tp8}YP96vs)RhezeWddQ0jVg zo$~DHj;ofnb7mVYUVL&$MzB4za_{xC%bx7my6s`vx0y+ApVm5t>F?q`6c{RajG^`} z#i@P?|10i0aRFHm5~_Is=lc74|JcUspy#FnecvMAFR3Q94X zSwI&QAyx{rb9659y}`D8@&O>AoKC!cvG{Qzk_Ui{Fb~1?nR2yZF#oRZ3R8zNh-xvP?7B_ zsFZ$-;5~n!#D4xj`Rzx-Uyx*=XEv&Q?4c%=tKvAuF6~m;R7`NeH3llBsEMF`394NG z&+n(_RrT39397-wTN3;CUe%|>a~m5NTh$3mD>_uU$d@MI>LbM*a5w+8Y7K+1?nP0X zO?>1J&S0>inOL&(pv6Rc)zt*pp6Y5>iKjY*i=byNYSQdQbJb3J5Ngm4ldW_}ZIp~S zp*GS1Y74KZ@tF}K&{+mM@{`&UvLWYl>I`J1ug=YW$yDd}#YNboDeB&8_*V*W;hzTE z`JCogUP2vs43s!9gNGe@Nprg#AvN5p$sTT|nbjXcH}Y;J4jVgXXLP=~>eUc~%LB}hsxaCbT} z!%6PFeV{7r#Ux$;k|% zi5p^z?PoS~5@c^K^DgmG?h1GlVh)haFPRBs>mep5@r;Qc9%h;oCdH00SC9}Pky^}* zk|Ojg3_(Gf%{)a84#NHJE@mmoRZ0c!sS##5NfM2%=hBHIXE8zY2Qy0@YM)o=*0D>@VtTRvIKYv^tbQ;NSKbz2DpjjR| z=ZRkQd+6AbLx<3^@zYsEbej#N2l@3jNM}Hlu!MIM4X@WBUK-gV8+5u!zwq3$c{l5r zk(O{b*{ineY$8dbPhZn?+(>hd89I#wBew;t>E-GWs}*X;lOCI^<4yE|4P-kZk05mn z_SK_0D~XV>A>l*Zgf}8(I?hBNAn9$yLVyTIoUZHS=n@jjq8OuURL6)kgj2}vqt5Lq z9^3Sjjs@u?p}GI3jsr0m*bpRZqR(v5Dj@?5B8jAP5C>nP=WNKeD4DAFmSFw4DMrQ| z!pcCRW|%V37Cyd_vl*sGEWIoxdZ^q=Hv?OLyDI{^8@`aFFBRF#Ye34md6) zm93{Em2Gqk6`5mlgzP_W69353wh^*MNO%q=sEpesPKh)Q4jy;|w*5!8It{g3U~|yc zG&(QZ3i5=1>2oj!?N%mXMhP{~!Bhx%2#4MGPkI6`$O34t1tvrAd@O+XK4((pAizY+ zc+E=X}!chDdBFjo)6U?17&3a4vvNYDA%DZ zOKdq2Sv=~}jpcNXh+utJM+()NHubk42%kKPZ%AHTRAk8N;L!h(!Pg*=#5ADV_mB#r zb1^>DVvA{0cm0PfqaNxb+1ut~%cu+Aki_U*%#E5eFhwY#E%Pu#%4JkO5A&toA0nMH zoR1k(&yJB&&SP|blrbOD4of5|n2#|iS5WnQ%!Ja9M&@H`#7H~6dR^okaMS_*sZV;0 z|6EGK#_6c~D_sM5+D)2(Ri7bqW}MCu6&vzDp+0DbF_iC4GD9Qdg2Tf@*Zz+bzF1Jc zqER~-b+}jf)S+sALk0^V4FSZjGAiO`2%<9!u$feepEySuiMl|lI)Bh5P`E!Ph(zr% zPBeQVMyDG6A_YK22yI)4Sx~KhPeTS5Lf*apkcg{2=1dKrAc<@C*dp2%4hBl%X6Pbw z2h57LpF&Vd$dba~N5}~iMF(jNQNh1aIi4iXiP{}tX!dYTO4=`iynf*(sCmenPiNA% zCyOvTjhA=Qx~d~KhbGQ9sl#%_X4BaG1cjj}euf6nN~G_Mt)bOROp2_PU7Ys$Y|1`yr zWdg>FL_KuK%@*HDsH^BG%M~O4;t9_?Z4Vua0tJQy>UV{n)cmDZ&;dGA3y#?=!4#>+ zipXyXwt|L~!TvH#63td-h#{eC;0EwH5x>?nH!dY*Kt)Ix#k645=(&OAORyXhP^23K z-piSwWYKRY5NO8*4316;h`K}A#7|EO1iE7;w9$r1UYR>)L3`RbNwpUrAC-MDlLaiErYO%W1^>H&?e_azY* z510vdK_pR(bCySu1UP6$rEee!OHbfj+)NT_p3t2e=$a?yL*1WBVtX4HTxhlzH0+;+ zBT{Im7g!F?A=!_;K>q?F3AGhqIi!#zxC`Z_r{yef1`=tS0&h)}(}=zpQa>mP-L+w#OBwKhC7 z@_%;@yn>@0yDg9WTNNbHORzW zn$x36YGx89jLcSoz=t7u6jP%N$DbkaHf<&N_I(91@WZ5XV=w{qcqMdbUKkE2qv5p* zbX4C4gL!5s4CdvlATX?Gk{8XXD2$3$VU|?wb%Z+F_Dz8YwZ|&(qpm<$j->oR+BzQR zt)g_HEI(`|%;Ql%7=Y`FNexkN6)xoK55eU2opT}WkBoKhv zQGTK&0hkB%V8t|1s|p2C^kfq>clUzA^wrP#A|aJ)qs)Wk10f|m*U%VlDl!muozm;1 zU9am9)Bid+5C|@>x;4$dQVdYL$(?@{{jLCvO;u-7wRkGuTYU(2+Y=pg1Cr0ati?ifI4;q(DyJ1U_%J_s;P+cRMA8TB=(^3l%OPvTm!0IRwS~`3dUPIj*Quo3W}i+ z7oSB_3jAmTj*PnD$PCmLiWyKNmyv|>GDRLVb1i6}_L!#N?R*4v3AQn`_^yclH=-^eKv zO03crk`Vxt$E!tAX4-JN7YU~9x=3Nj{#@$!rzAlP^CM58ci~ZBd`~Y4mqcN6DNoU8 z6x0`IbkLF*NO9>66;b4+qa=hPqd`Of z=)o-ILwa!-dHN#i;J}BZ#nd=VkD510)W22YL!EIjC8K&swn&eXD%uhXol1TAPlJN5 zNC8lhMAu$Ipd2rft#YCZ>!EK-@1_LQr}1Pq0B`O16i*5%jVtjW7(=3n=jT67q``uO zX9#@YMI{@sIaIelBr>r9v!iaJpyG`rn+GXVl)2HGcu3VfWfF!7&4o(iF)M0>8i^FT z!)nO85e8Vk27y451(4rH%$mwFz<~g2m*HQAIKnnzv#5SHBw(W~h0->GdDZy@fbMRB zCwpFfciL@M9QxzNuc2^*epslQrU_vruOZf z6y2*Vgk=07zRAaxr;i!F6Sx2!l^$2-N8b8>m&`*a|B+HSHD#X*%}9i0X89QsiAn_b zCC`%tF@)O_VZz=lArU1O%#yk?lGw(A+4;DdBw$|ipgtDJzOI>M4{;^ch#gtbRfUeW?u3p`xRWq+R1)cKh8(@v z2{yhipVkOuSqN$Df>j{ed&-Cu`rQrERjX8{XVlD(6abI;Q46lJDrQQB6Uih4^0t9M zh`8--P~kxl$>50aO&nD~RmpHx!OvoNSwwY$tvUs!7*`62Boc%d^~zlmWSxUWuRH~& zfj8{mDX{hP?S>g();^U&us?r${7(lGI!RGR zrwSaNQYQ;y{2Glq>nX`=bcoF-Ib^#R=3t(jssvJeOiC+K-Bm~!+LcD_>5w)x zeG-}JqbiE93|N|c3`k^i1}rlS6Oy=Qtg1{zAU6}1f2lbnYMu$RVWI7m2p`JFk(mpo z5MI=4r%K0*bWx-M4pH7Bo4s(!u*ZiKfo6%`h@wpqs?&$uuLx3re;*j+*f?cS0F}q9 za*O=`dm7@1Uz&i%vS7T_@0(08emhHjKZy!t!H&e-LW+22VXDM<>^}f^1xaW$3)4o8 zSs0Vjh<}Gte;p+S6ZTKuzY(@pmXK)oez0|9lK7ns;hmigg;z^C$&N2qWsnDxx@-uS z(sdFBL2aVZggo%;SqF)(J^*P@zE2W&J0M#7a? zQNp8mcrGrZie&R4NZka%MEmAKNE3$fS(gv_&w}#05Ys_-^DzhN#A1?&E`s#cEmo67 zsYTHKO_zTHwa}H6`t717gW5;_hWdE{IKR&gQI29-NbN8Txt&m((^1S&cVlf?vT za~%1w9A2=@g#XsZT1P-N2MTnY7j*ESke6&$=QTquv z@0>UROTZKSJA}IbHtIM5XO~qcVV@3ZL&Ybt)l`T3IH-qs^I*IXyMfawaM|by?lK+0 zawUlNo`Pj`2OJr2r1unP*T2LGDHMGcHc+e6;D9{bpW+DYc6=!FG)BJW;UzSs6N#OH z%cZxc;m%g@Gbwid6ZC5BAuw)p21eATFC;AY1t!|x<((7dp8;3+$4Oqx8CbvbzD+g5 zi)_BZu!OAx7K`5`4E`*j*;CX}u{rD`;F3gyO`p#p-D+t10HmD19 zkaP)*l{h#sRlp{DuN31(Gs__FdrQD`12{0@@S74StWW7rlW~EkOmunv-|?h5Q(Y9T z(1ZDU22NAB%Fa@#Ci#q~ROV6lnoJQy8-di1rc($H$~RRPL0$*{PL=y*5XN=p(*y*| z@hjLl>L_WBI+Hwh?A7{d6=6D@AHdhTv@ zNz{E2)1n>Qt&a3}t7{;gOK|gaF-IL)=cp_G&%TLgf^r`fUxKBC<2>rSg!#}ss?^bv z%a|go6g3aD6$6TO-$-!cOTVYvuJvI@U~@o7yAMm}270JhH7fi0&a zaH_lslkR&R3~T*Dgk6O`JS-;~S4V|cq2sAlM0+#P`{2LJ5??(8xZ$z}8f^mIdG(kf zP44=CUWuUg1`Y0MMeP+_zN`5^2~M=?z6KBaQ;(U^yjln!w2)AXhRigj)N7!0@&5l) z5=Q*JkmtT@@B(lKOoCAhp(WQb zFKR0<8fk(8NY;%xx#|vH2Q5`aO%zpw-)P)`D|Tl!P4rY%Qxmanz!C>BKX(HvP0<-> z;s&;a=Af;K9%*T+kdJ5EZh~+7QQ=M4;1-x78$3qCvo!_Ds*OmIT_dDObPn=w#O!HF z5t>LSLX(bm--gY4&3aAIX-{v1Xsi*Aa7mfC9Zy=q0Znpvv72C(+>eHvus~{4KG{h0 zElA?20=zq_sOiJsY<1s)?&O}CRD@9@ik#1AN=*w>_c_h!4Cy~t%C4nkr+YH0bra_Azv72Fysj4Rt z+8rpQ9IxX9jQ<8rVYKQFC?qzL>?3#Jj$qC$lK6fH)}x+glGxk~vaI{igE@CJrx$-$ z?~nrf?!sczahD{b?rMslQ8k^ZJsyA2r^F(^7MK{uEii>o;@^H$mk#9L0(0VN3;1>Z z5l+lND<5f2zhYR{3KRGdif)Ay`0D4R$mdoFc<~F8aJ~m?Zrm%J&_w0;V1T_v{rBMg z2CoB%dQRyBTG9@wS=k1i^_?Wnw}Ho2BP2(t9WMLsBiDA!kMagpv_l=EMn%P45XI=v zGhkj(wA7Jr2dLL`{tJtt+78$qXoAyV(fd#yaEX(M=siu?cpt+pMwyrv5kw|+iTuAj zVMOcIkszxj`1`!+0WMISCTgvyC4uxGfE#iuB;3~uncV&W!r>1$SGd1_+Y?4YUC`*U zS{O=18TRb~jD46e|40cTvxngRM&oHPw8D$_;P4eQ5^jG851{E5BtbN3WuYaBBA&v4 z2zvx(S6NTfFMI@dJ%w|pNeexO3%MYdX-Ldt7+nk8rfETl$p7R4aqN@unZ}Clgt8jz zgl@b1KiHKjy6Rs+X*Ajip0C~hFAV4X?eNEGXIKBNx;H!lx7~J;QlmSyr13q8Nu8ZG zO%GfmqG&}e*+;^DU6?iHEGp`Pcr3d_Vzj3){?=9EgaYz;3O&_>yDK~u=W&8|g(P5x z@Ss-=oyly-bwm3mS4p0IH`GH%8%Ps}yWx^?(@l~yhI0-zl7vMM*sEwF36~}P^3XsJ#nck#Ipj ztd`nuNTU5U$V~J@FB9I9$if$xtP(6M|NJSW$lsT3`2B7B5hcFB$p7L3ad)mXfG969 zx&JBB@IPy!E+v?b)GXpx1x3AtYtWbPaSc_p@4c2N8hQ!MKl*?pD#-j5fxRGjl1tXyo^}m8Y@9_CU3iJMfu0*{CTfZkrr1mu=EQ^Bt z--2OFincK79E90?o2vca>T@Z{kwywczk!w&xk;i0CqD3ygw|VZHYE@Fy@fwH;nF0r zCvP!R{QmkKybImKNG$yw%#x9rB#}Q;Tj+lxg8!WvRoe&^4?($aHUPf*5QHMyF#uU{ zn@w`szrulL!bF=JS*^n-^8lnz4sPCYE#Vaa>%PZysfM;B(zjNd3vGN4qksLpDTEU- z=4p$ed#P|Z>3xr>Q^QwG>5C%fAT(V&iGV&Q3Rs~nfiCZW*7glTYu^K>EODWtKy3l^ z%^!w05&XAu-PiyB8l5g+S1796ZFva4vGA1hCsp<&t!g@K7lHn`~T}b z+*8b@2Ej6h51_5%m>7!x3`hOYhf^WuL?REhVc8D;YvkQ$Ffwm&nt;+5I7_JgB9ZVf z@O;ycD!xETuOY=m6_U)^NMPw-?S)^Vr1O^}a8)EC$K=5ushPA8#w6796*HjiQeYx6 v1tt@jj|1|F~{@?{yp6>fX~LX=tgmw536mN<)K)NNz<7rJ^2vA`LP^QMyD?Q5h{+ zr6^e;$_h#U_cZ<4@#BRNKdJNapYvD!YVqHyxmSu^@dsuTA4_f({)ARuXE7mA1=m?}Q;DYqwv>@5 z0U){&%87r_#~KznG%(1*i;iBRa5L9jqReB*xl_~YD9rRaR%Kg4wt}7Q%U%2lSFDbr z*w}fQJ@?q$7ZX%%L3V#O;^}}W`%%J0_LivkY#%gMAT;98nXu!q0lmqK(Zk9aCmhnvaN;ZZn3$o01Ir1rM) zGJD(jcz5F%<{MZ3LM!4aJ&(V50r8}Ho1aG>e?qufbSF?i0QtS)=O&1tI=7j4Vyh4^ zjV0JBT7;ySzVie-8VC^lp(4%if;>$3VZoI-1oQbgp+Q#SDVHI%SNo5c3e%=SC`gJR zfEEi$;_35Kq0n6f3!V?Ob*->4f#17USVN4!n{1SjVs>m179@t034R8WDYqRHmf|Cr z115#9+Y!uaHX^zN%Ew0JYAAt%CuKC+A;QnJJ1^oXK~PIuL>6cfPd#5nR4nkPyhWm> z1jb^Ks89|5gmBBL;Ul8(SBx1xBL0MjK(|rBp|#(|LzD=90Q-oFKm_52g2WaVf&k(^ zgh~V%kxIQ#A%QMbNRH0vNUf`sWY$$mrL_?#V3%h4@09LIBtS@q%tbFM3#kF}EQL<# zVf@TQQ|f08f@5n4l^nW5AyhhnX%3+pvfd6mz@&sy*K%^hliNneOQ(LIhz-GotI1N z)@+h3WIBp#^7&W1>XiC;G}z!mzyi-tee?KBw{R?c_0Z~~npC?~qNAf%&F=#q59WG5 z=<%b^TYSLNO<30an4F?)ph0bi-UwHeuQjLT`nv}=r3^I}oNev)-)!$}BjrOG(%-z` z3nS0he`RL<1)nZWo5rRH6U!%gLo3zX@il~z_o zr0{MWirMFOMbB{f%%QhO_ZM-_)01tnODYQ4gH;^j^Bwy=*(`i`X+?^9d*_pLD>GH= z{oZ6=>vvVV`wv3$r5!Vi@y(>t8?inm28|!Ty~o?uofC-yV3^ zczASiec{F}hVoe&t=)MYLOzH0`Eg0AJ~m2}TXQ(vD*wJtngd@dbBANkxhQ?FjX`_0 zjy)aPwp*yT_wmFb-IRc~_X~%@-hc15>e`rM$rd)YWyofth zZNmWz-afYBv;m3UK&{9H)h(wBR~`%uOp_LOmptdbN?$YH;mGU4ofU>hU&x==*mY&T zTsL3vv#5%-DHdbN-a!V=?|&7^tlQ{pDY3@=w`ODQqgY9XzuR&>U3znX<-%vO+if`a zs7iaKlnATtU0pEW^fKzo-9PkkSU-xMeDjuILy<+aeNK{%RdlJ{erfknRV@Q{q0?tl zPSF<_x^(lr+@<=$Tr)Sfc|iLJswJ{r+)w;eCl5{pFUN z=Qg#(Jfugq&7(1r{NI#jx%vz5uNm~0%3$zSS9utY?V5)yG<9l&C)Vam6)n5$aQ~^m zD>m(e!Lcz;B8Q8cDrFa}EPvrxacWqvkHUO?IrvtLyYwxC%wfl#zVRUEVO!%15+{d* z536oX4^w{q@G9lOq3RD|Smb{{e01y7mf6&VrpW))<1Sy@zLHUIy?UN(i}>O+*{0?E zJPi+dRH?ahr4v-*l_+-o^sMFj2MdITJ*u-WI@lgPv49rJu=|y0sV(fQ&~veK+ZT4H zh?0+nYYS|z-Y8lwXx8%5=p1!W=8S;m-b5pgmfTU>_50mgPA*>4a&ZH1T%xv3Zep>d z?OczYHshD>l?KKgyvAseG5XKsU`@d#%f`nyCOJFQzp3Q*QL4?O_XH;{)iC5qE3ZW9*mIiuaDr@P_Y}RlGzJ#}+Ow4vBQR`poV9Gfkz#4dV?TITt_m8RPq; z-s&GJd^a^csP~iW7uQe4zXb%zeFJ3<*Brb@UX7u;@(AEPax5u8w2OProb_VpSteBl znI%xE3{UB)YeD{b{)&}t4Qh@TxSwoMyv`wFTUGs#&Gt&5qEv`m(n7gB7Pa^7S^3_S zi@hf=hTV^4x|KJ3Ifn1+^)XDUslFC=QT}YO$-DT66Q>{e{H)9OeaxSg_2&1Mbx+6Y zK2AK{`s>-aJY(?gt~vTu;VFA|nmnH8P;01=Uv{S4g0bzS^RU}8Yj<&F`S4{QNA%cr zQW{zB6^ZS$3ya#|`H02PzSNuVa+%htrTfcTq-)reB(HCIG$%?b=6IZxz0!YAWfm(G z_|_gfxzxqYqwV0CAAWn+)u^mJZZ%kCX4+0jHzFl{w2)1vOGabpqM#$1iWxSh3eDc_D-EW$3DS6RQtZ8uWPn z=zV8i9Jn9(Ea9AWP}9lH4J|HLvl=N67jUJj_#W3y2}=B-`KBdE$$o>O#)F9T4a$Dy z?)H1v7iFnDTpO<9y7G7l9tVj~`sWZB{0v+RAd0=Ej$IwMv7_^f{tIVaqrG+!*CMw3;H%*qQjdKsc6GcF)bEylu%1P3G4@Rtb6x()BPiOV z=zcPCKjWp-WuSLGrdT|Vam;H;Aq(%K)&7>(cXF%|*<3=+Uli8lJ{exXdi=(K+cK?! zE0s!>32wu;Qx3d17An@SRI6~{#H)7RB24tBN~yK{{C<~8Bf)qBa}LkYgvB}YEsRcI z7PdUxEu4ZKJs_45nC8#IdeBpBQQN&N@%fICZ*(rDrgFLc%;m*#q9RN_K7BS=q8I)&GU`$G=Te=jOu_&C%tMX%opW1jcao%q!s zz5ifZcEh_@b_ti2CmJ`^wd+nDiA8B!2l{J1oz3ZKu~=X-+8Zc8ck6&trohLb){a9W z8zeP7_BDS`Fnr(Kzqs#d>iCHz-6Fxs>m)hf3zl`>^D!+DqnI8{9oo_J>3Wg{gW)Wn zIjAhHno?)TGS9ZKAzQ6UKXS+2r~P$&E45D^9P5~qcg^Q|i*!4i5p&J5o(l#y_8tB# zdwQk1q{M-B`XW1*+z8z?Q#bChn2 zof9y%>%k)KLw=VuHe}~125a`}A5dx^sA90SE?v|3{-MAriQ2CFyJFL#0%#KtLnn}{ z&as|TzUg-!xz{NUxF+?aM96K%&So4waFFtoHx`pT+9Ih@blfs$ZOxtSJIb=?+wo` zRl)Fuu}58Y$L+_Kn3kz(w7AXDZhp4;LdVG{q|b-6wJbv=ZzSueUevOwdal#m^*LER zqQxkyRXTgy9j~21>8kXpT;4~Mdy^@{+RRiMcTX)>*J5* z?L1@67=~}=-PP5QX?$C>R$WhTQ}Pr2IBk_{$sQgL-~AZ89bjLr&D%G6)##!Tf3#-_ zb7Sj4k0yK5sGQI81yNMv3pt(yldYiB4n_#Jis;kF!mks*aj=qZB zv@~1jxGUdB&2gU6SdY}#E7rHYv%I{zxal*;+kMa52oe%!_j=T9E{%y!sY+3R&%;f-N|sL1?B-h-+yTSiZ5^qD1Y ze!1o6)qP!&rMj!IkTK zT|$7^?~W$x{@&2F^-|lL3wH&4-4n`Fwkf@Z_e)=9j984ro71klgGM{qe~8qYX)HcDta?WCSyxy%xXq6Rkp#Wk9)4uS`!o1hvTk4e`lSXvS8MEsQWLxloyeFbi`V` z`_1#y{`}p;VMhDPd;Dv6%HLf0J~BL@<;{m!!M8nio4sGe8SkO2SQdRPIm&(S`cHC; ztwY?b9{u?EJg)V`>!my9nkCqN`quSXY&c$I|Da9mfAe2)?X;Wtp*!NlSZ6#c`s?79 zhs}}KJ4QF%KC7lSD0x4+B>St-%ZgTCi!Ho6GoED?f3huj_I&Gr-zFZd#ZB%xJ1O}G zq$p0!6Y@$X5vt+3a-Sa}Lxbu;GufYBF)KgUtQZRq7uo6)tC4r{huc}X=NxNtqXY)o z#SLzh^fJvxv_du-bVO{N`aLPlh(C`ht;k)T`)IZFX_0dMsIwZUw4RBb?x*D~Y=67n zqIb$JG>3UAg{^G2jzGfKz?WuO2Yx?JKcn+IaB^zjwPV{E{6kUS;|?jkKYGNEqwwZ6 zqwI*$sZAWYKC#W$udQMGXD{e>kg?nBJnNh}oSbv!Sirf@`e^ic57mM(wMo=kY%2V} z=um@D9|z5Y+Ixg^s=wI(+7tSqhJ$M8cI=Rk(pxp}oCvMB{40*3lc$D`K4)C#W3vf9 zoN4yc#<0F_w=jD{VtxU0V#~9-@ogVJf14b8t$mFpRxqi!Q{ZskK;nn!v(`nj=O5)P zJaxPx@bShy&S8%>`*5yG-a1*tIM9AV+uM)tlwAECx&7s3RjyBjVK(ox!`M zqj5gl+XXMY>&xrUcoXK%nY2~?je%Q$K?--u@QG!6?KvkTR-fSOZhSAjt}l2cBm2bA zA^pOqeo`6xL=74?l#Q%+rUeHxhirqQ2MgUx)}LD9EvR{S{^4^>t2*DlcN|K58mD;1 zx0i_J#ruBPCf}62Zz3v;$N6wLHMng_&DtToc9o4h!Kc_9i|<^ujMvS*Wf~Daq-R5|aV%3t{^9%*S=C~vSRWx^wJbZ3fqw^TXb>(${=gPW41!@A&g_x@xBm*<9s=}HfW zoj;37=kO*zhh?Q4=NWHD6|xsEwrzIP^>It(oW}^*8*cJr!r5kR`l0i;L?<0q{Rq1@G`>Vh zP#;qXxj)JJdr5(s^^UeEm%00{xTQx|xQjMuE_fF*r*`L&IB|K~QbECy95;@D+d{`{lJ{?lhn{ind~yGRGHw3BFB5y*>R+kFrdfx*FnA-ZlxLsM z&DF`Umvg$@tm8j$Z-jYl(pLW<%fn5AerDHSR2=G+4-c-H=lpx$q6u5GC1v}Qi&->( zn3}!~2#xJ*IkBtXXYTQ{6Rx{I+ByXs49r~GDEsM9i-^{9n#8EdvWAjF-zksy*sTs5 z-&o+luwi@oO1`nZ&CJSloa^O8wzurz7b^KTl;Tq?e=;f`mOKgg&heG&x}08!ui6P2 zwxOls%Bnl0;}@O(;dRBM(etF#c@K8pv4u6mv>PKr4}>1B`Dbo3?`KleS&36IzZ~j8 z@@YJmx|YI)zxxe2|N4Ra4^jOYyX6(W-Rumr2s_WY+&pXT0|&3h+(7Lrrp?W3-)TSj zjRFF(1p-4ycdEApOIF5+*$>@qGaY|#`f(zzaB`^Q^)(hLo8-ZVd7Bqq*7oT4+~Y9# z>EohZZbeBhY_4rbcIL+wMce;W>g5X3T(mAxH?Z*gllqlkt#2ODHW>^GDo!3`H16$B z_Tsv>{H27Cv`-)w(k7_2U=?@JP5z8__tnwy(fS@=OG6ST-mUTp3ATM{Z@kBbFa6>z zJ)^8h8_MethLTWXZByreYYJpnIhBe^%jnlS)zm7n9zR>(kaf31_U+~;m(mtVpS!k{ zJ1_I|qvq{W=L!d+4AUs$Im@(ndxq412x?=M>o*(kjwcjWCUPtHHZ1m8Ku&=dBVd)r9SYh!%Gqpt4 z;Z|~qRIH)eS8FZiuK6d}p4qIPXVB^rPR+dR%4^BD|MTi@wLMQyy)iu9U70~S=en(( zk#jg%m@;Qk!Qnx-rxRP(OI->0Uc_1|75v6UTc>$L_j-XN*0rrC)WTEhJzrRt+}qr* zQIZ;AS7LWj+QmU)$|hgB(0xdM*ZnG%x2mV+Ce==;pX_KkEnjYJ9s2P1P^^#oW%n;( zeICUp!$+^5y;HfwFVnt$^IZ8!=buzc+0hI`hVR*KljCE$rd_S|<*Cw-R!ePn`gF8e z%=E#%ZoZMrLtI=T!Q5Cz$A&fZj*xvdJ+{wTED=-ubeKY)_qks&Ykn-Bu!^{nTxQno zFz>u-(-LjH+8&9Bv-{_-GJPCTCAek8O3gxLQ{|HaDgW`2XAFDQUJ;*l`-+SP_qx2l z-)K<62<1x|d_+l3wmCTbtkv&QcGQ*~@fj^&q$Y>H_e%7;MAKHCsDJl`((wAZPx>9z z{^&1O+x&Yfv?k_v{_0w{eJPg~|I@Ek-G-XCAL#H{CEsRB-?OTcZ1T$cQD^QDd@9ky zWoSD!=cljYl9vTpI!h$8k8MAebvy9O9d@DPhLP$S3}Z`f*_3-1W$YK(qAYVstUCMK z)*F*)D=x4t``ENPW@qyc6Q20FlAbHSZ3x{mx9344%hQrw^(I%17wIiqRyHEZ*O^(h zzwxyD<6UtH_ba~ZBnCHMbzZNX%<;wDkM&Ji!cPqq$z5V;dqs{Iyr`ZVe<@RD_rA#9 zy7ZOD3e%Ks>gs;_4Sb@tnuv|SThee>gx;#u9Ug- zI?$be$A|X~aqFrNsCREq)ZKyCWox(P)56N%1`a}Nt z-hfDdj=f&@?x6L4!g=SH*a+9}siZdi@n5kcCd6n;B|UlM$-q!KqzOxg2Pec~9N>Cs1xq7n!4E#Ih7xI$z&PTfvmYR0L= zO%8fIPE{u`tlz1c#Dl^rb#bQccd8H5>LIEO^AJ_mh`h0R;3!*3s!D5> zRmBBUD_domm927G#N|%vAfG&QkZfaFV(v8$^$K(}=4zRCyA3 zKYG*n$SB4t0F(}-g>Vz1yCY~f@dxIzNSZ2ndAB*4Cd5w=aYf9M9NH~50*pkoJH&&9 zE8sm3(S}L$Q^jC@bpefyxF1A8g)}2VWl15;hrBWbjy>W8ZXc7@NYn}woW4ciP-Qx( zGZ>{+k|3d-gM+@AyniFWL%j4}5`=WgFtdc|FG*vu;&d~@Cn5(A#ObfdyTE#kUP?wN z9{>R}^y!wO1Rppc!yK@q-y}lJje=A)dD71iv^{6Rkqj@o8d*MsWS1Y^o(Pi(peOkh z8$=%#A|&w85n~ITxUypwZJ|FQ-NMI`nZKQGNN8d{NTMGkbrR8}?xnktn))*6H%UVF zUGU^u9-U}A$R8hIRzzP(#J~iwlMp~KOfpR8Qu=Bl8%!A75e~wWq6)eb{=kF*?jU*q zBAj^INY5oZ(Rm^8DSMQzM{2@BH1vtyN{AE0Tc7ERNpA>I_XHGmMH2F$KaXUe)NCA*MxiQz0WP zc-HM^f)N&|fN$oOrZJV|)bv--G`- za~AwzhTrN$wgjAC8#yIVIndER{Qvhg@sCJ#qS_vu-xvw*rE(#G#TXyqC!Da#Q1mm= zAcTQ@7GsJ8b|;Q)%qAT&4W;s;?!}lSK^nnH-npaz%>v_SZTlJ_8Ko1-Fw*9C>bV)!o)-i%mxR#H(HlPZm5%`gqtDuDdY zQ;pGtIVOY-m|;}b;wl0qg<8!pdsby8!A?i!<`|9ASc{6RFcsK?V2daY*GOQ*95bLq zHIjgN6Aa3!LW~b3SYd3)-vTs#Zl|K+4ypm#rbC~`PdugyLDb}*V~MNKpan*>8)D9| zGM`NQ&@n*eM!rkH(=W47RCHwtX3WYx@Ry5@3R`K@%9mM!(VCZkiBwczi5al64bMh# zSz!k7HHd{3=F4J%j#^JV@SpI`5j+m<)>sva`nYSzJ(pHKweHSMyOBxzL+m@y@hi?v0>>=lBUq3czl;ouas*5eKdIr0BW6Oe6C?qu6O^u~Fv&Y2EF(s` ze%uM8vZ$czPFM&HVTy>~B(>06F1q;O4=z^%!D+_dw6P%;dW@Ct~T;e~ObL=VX9 zYEu$3*GyItIY>iI6G5d}$o?(6>cnAloQv3=BYbl~S>#BHC3s>yC}{=wu<^Ts5Sm$B+OdbrD5r zI|;~mV+&d4BUf*16@?|8#3?k&u%lLQu-=)4W5kiT4`{xBkR%8DfV?6i0T^p;RObUD z^stb`prf)9vqn~9C8R9rEJ^cT2^HT|MFMA5g3|7bB=CDBrbpSuBmu}H2Xa~kN^P!? z7_O_3+45Bod4D~LDZC~tgeF#zeG%Vv$-QlnB}z6dJTwx2{rY#s!FLg?BCWD$tW{PF zZT5u*Wr>dZVyju@yJXSeSp_PhuEum&3+~Ax|B$(|D0DTZ$9nZX0nyNHoVIdA7H#yy zq>%U;@GZm#Wd~rgC}0g#+J!J25J#08#JLm#@J zD=pe2_qRNbB_4_<8LlT_>}bsPXqN+0WhKD8c7V1pSO*2VzVOH z9taV%H)cb$9 zc;1s-=RSeaf%kHpNPhg!$g~B4<>U|3mhqUJKFSFq83r&Yti$9f@5g3@F|=k6pa~P% z>p;%=J4qu3tYsZ$N)e!-!B8lIPKx|oG!+6KI|Kux9vg{<*rkymyF3RTI~Ouvfss4f z)4{MMv*g2>WYJJCgdRr#YRHLSo*!xSgCae7`Ps#iD@StA4F_#mAuy}B7UCE+^kktt z4{n=Au{9+zGG_8ZsH6Ok?;AtGB|nQ<@)e;_&3Ei@%nHgHH zm?G(k18V54r@R2#6aFWWR^I=(cifBQ+O!^qKFMcBo(FZV2V1RvGZWi8kGUEn%@ki5oC`iWD6cZvwk!Hxz}?Tl!pnG_?U(b2Uk{`9_#S zCEBQXGbV=w+Mzm&He%*1;b?Fp2v-G@gm}Cm(c_^GwnT$331Or#5zCoq%z~o4jl}rI zVFJitKPE!XUiD4D9aB%zU}h1{a-yJ3V3ctkM|)9@wvuF_&5-(cw{U=pLN-H>kG+dq zw<5N9_=cTwuNxJ|z`83R0}*iE#{nuT8lTICLSlgb=@T5|Pl+3vp$H<)EimAjuV*kq zD18fbp`LFu7)f+%2Sj#gV(#n;|M3$kZUy%mCUHhNwDBVAxln**2p;A{tnVir>o7=t(5@ovp zrzxPCZQx*s85-M$EvIB#k^-x?Lxf#+BtRId*bZ!79ypsk;)(;Sf$K;zjDi(KGISQN z&@%9&F%HVJd_9R4+<{qB1S3gc{SMgGgd~yx;j?y<0w492kkFMn9o2djR&8 zk*rQ96!_4!o#4sMlLRJ@0iN$FC#ghH*`HAmKv4`}S#Wk*KLe^4tH1#TB%1)1tuNt# z6pBcIGFyIyWP>~!Q-L6!w6?uI&; z+78VWW{4o_OoVrXB|JEqinNo!&{|27hj3Fv3Z`J_cF=ty35MHCnxqkF)S@bKqV-$; zO^uGs}@^3`yf1d5!5Y!>W-hS#c2a>JD8LLYa*Vr+*L zc0(;abtDNzPKwIt+-}I%LuV304BQbHMJf_V26Uu5iH4Mjp?ch7HqU_o zK#|8ck$_n$rbKiDd^1J4+KduY;eBg__!UQ^L&`kpatm1QeF2vJ((%{2JO5bLxPyy` zBcU^xAo_Vnksmpwfw9|nNi?A$KMk7G$xad@&#S_VzNSHgw(Oq4@F2naiX7w{5Ll6? zynRU0&OB1&Lk26R-<9!GKuU2BNh;a{ZxV0PF%8P2Y0ULen35azVv^`$FN`WI?lekT z{|vVmC2n8_5XXC}1TxwS<2~@6ME{Yur3{SB!kqY^D2+!2sjq0iEP>ma?h_vo7`z}w(tw*E?U9CmB2R!b?uUSuAu~hcL-~gw&WlixxcLM{WwF1W z5lN9yAxS!ml(~>|KA83Ti;+Ucs&IqTe&Ua9jd{wmJMJE}S;8)+ph50Gm>Wq8{x8~B zPg#KUkZsXF8iMp^SmkHM$Xft$#GA~}V0&l^8jc>qxZtZE^0KZHPa)qDoJR?rDge*z z34n&C3ZR?MK{|)A7)s$FLyE&r>9+=oqXQe`|5e*?&^} z2xd2~Tjv;@$|M|zs*I^7F`dV!F9z^}WP#(pGHf2wFN1e~8~iz#!qPg;SPK<4S_b)g z*iK?xPGGi_OI;+8PzG^8y^D~m+S3ydQRyR`2IskWhgLWVE%;LpiE(}kD@%PZqzHOF zAIdrjOO)0SP9qjcA!KU_uh&GErH%a)$=*@Katbr~yW?K^8I7HS9rxB#FidgNz|~XO z0?L~&IK_jq?Hm3}MdssBF0fh%p|bD)=;Zv4>y$&ary(&Vzh>OvK}VHUxR7W$Y^9iU zkn0)JJ028L4x6$vHXNgXJVRmKBV2t}4nfCql8mr`o3X4yE@xmRu;-t_aiQiju-EHW znxzh`h#;M_;J@NL620*(MqK$I{PKo!k%ms3#TK&;(Ns`2UB!vqUzwkSq!no*zjJVJ zA)!r>WYK`O3J3D`gX|Gi%G6O2LhrON9#$zGfddy=Q`tJhVCY|4B_K*Qwvea*{LYMZC>6+QDq<+S8dGN#NrSZ^O+^(y^`x;X<*K00Tow8MS$grr z!cD^bi_l!6%F)J)aJtug5p`U|ma}g8qJm6rz)sw>2IiYNimJif;7Xyf2D72SVv^ke zt)VDgl^@ZWm>!E0@?(Nf9lt7CFQ7`tH>1;~`-urby9=oz7GYH-XcC-(S_#LhFIIs9Ip9A=xXK9pz#; z9)uW*y8@McEEb)=0w+?hccG~(@a{B_HWQ&3io6OQ9N9y7Acd-~V%n@t`v^M=kkD5M zlrW)Q2Zi65LCSg7!8=?9Li_752g=iY)K>>DLkIsu%JrBH>(wLEPNvsGJ18tfb@gD{ zvU0{G9}+yT%7JvQf!*&HrzE;H>z!$ZPB+2z!n>-H_@-6}Q5%3?>E2&{0mRerXSA5z zsvB;dtMq}K?QApicaA`Vnj{ii3k028akSHgE0 zG}Q=8#$qm%(1K|oDGmB`FYiYB-St5Z@#>y_2ikkAb%lt~q|_y%k^ z8EPo&2Ik6oNnH)C(@;|+k3xy^62A!p&VqDqV(Tdv7oo0Z$P~jsjgQ>A5(D-SSXdcG zYG`8(?CyD*;pBESTn!aQs6jm@{u$OEF=|5me=mi6V$=}V7BEF@feAeqn<4Je4BUnn zRd?UF7zUEcv}Omyt|;ok4pc$Kf*sPpbWN={GHF$*irLca7rAF-Gz6PdU$uk zl@o;ZZLn*Tc`$>474U%?_pDQgS8Xt!R*0n?TShbL_g$D(7!4@lr1)YBYJrp#0QMA}*0QfM9U7a}J z6+!{`U|^$pXJ|aA_#SL9HVc!OtRDRQT|`{~33WqU*JWnV0*JMNCQ8P2T3&tjwwPC* z5IUd05>mAAA?z8tok)Q42#V*TE6E073ZONQ zF!KMP6YqpcD@jse5>#5;Vl8yGfdH55BueCjoG78AUdW1itlPMl8}uw--*g9T^OG}}rPcU5;VIZGLgO8ne&r-?j4S%p$?LbE&1<9mLnAl+&lMbT&+()m z2@k?O$Nm9uLi8yK^gV@X@b^ah>j0R_c!txQS*DQCAT-RKgOH`9=QvIdEgOO`;0jv^ zeI11M0aNHX9IqXENoq@a4n61XDsjpri)04pDQ@ljn2MQx{ZA-~@=Hgx?J>|;D%LdZ)${b7Oz^b%&~ok<+wO$ndE zf8pKi72F@sf!*51VRifi2Mq!A*aHR#RLE0mDQMsod^(cBK27(14ZDJsoYToz*C4Bw3x)BcaBHv*ulqcReuN*r64)%L=ACl*@kA^7O z%Lx0Nff|3eIn{|F$oxHQGg8)(+AH5f!#W#A0<0roDkYp$;}oF*({Tg>E7?e5!lEJR z#MeWF;^A%o_-((9RPu8Kb_vQz_XB1@Y~_i*SD%3tN8z37!UxdzlK|9FM<(Qf?;~Jn z`8Zi4?>~*XC;>-|97e8V@G5QVs4S1as1xJNhS*1;BB30?F@P*taY3IzjW$a7goRTg>q)9z3EnfWfk$zN z|ClrU3_}+KC&0Mt`)+H%S^H<0U;CP8VV>cbYqw@F#CgiJyPjV_9^R_)*wEoGa3I;; zMHY;}cT5;@eTA*^<8Cs!MfWvC$XgjAx!b;i=!Lf=t@0}jZ_WfMI{6iDSX@|<>vyQ9 z)!$&M926q~C@wA(C{7c{@5`oLc>E3YbV|)I7*ZZmX8<@Q9fuMBB1>Yf%F%?-opDIN rA-u(Yhq?wgEm+ndm+!FD2WpZyC~r>W@&P99-S3zp$A}3HI?4Y7WyYXd