From a7f3e9b4d07349dc86fdaf6a66e4ff75beecddf2 Mon Sep 17 00:00:00 2001 From: Connor Tumbleson Date: Fri, 29 Apr 2016 07:07:33 -0400 Subject: [PATCH] add unit-test for #1234 --- .../androlib/ReferenceVersionCodeTest.java | 66 ++++++++++++++++++ .../brut/apktool/issue1234/issue1234.apk | Bin 0 -> 32390 bytes 2 files changed, 66 insertions(+) create mode 100644 brut.apktool/apktool-lib/src/test/java/brut/androlib/ReferenceVersionCodeTest.java create mode 100644 brut.apktool/apktool-lib/src/test/resources/brut/apktool/issue1234/issue1234.apk diff --git a/brut.apktool/apktool-lib/src/test/java/brut/androlib/ReferenceVersionCodeTest.java b/brut.apktool/apktool-lib/src/test/java/brut/androlib/ReferenceVersionCodeTest.java new file mode 100644 index 00000000..4fa4193f --- /dev/null +++ b/brut.apktool/apktool-lib/src/test/java/brut/androlib/ReferenceVersionCodeTest.java @@ -0,0 +1,66 @@ +/** + * Copyright 2014 Ryszard Wiśniewski + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package brut.androlib; + +import brut.androlib.meta.MetaInfo; +import brut.androlib.res.util.ExtFile; +import brut.common.BrutException; +import brut.util.OS; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; + +import java.io.File; +import java.io.IOException; +import java.util.logging.Logger; + +import static org.junit.Assert.assertEquals; + +/** + * @author Connor Tumbleson + */ +public class ReferenceVersionCodeTest { + + @BeforeClass + public static void beforeClass() throws Exception, BrutException { + TestUtils.cleanFrameworkFile(); + sTmpDir = new ExtFile(OS.createTempDirectory()); + TestUtils.copyResourceDir(LargeIntsInManifestTest.class, "brut/apktool/issue1234/", sTmpDir); + } + + @AfterClass + public static void afterClass() throws BrutException { + OS.rmdir(sTmpDir); + } + + @Test + public void referenceBecomesLiteralTest() throws BrutException, IOException { + String apk = "issue1234.apk"; + + // decode issue1234.apk + ApkDecoder apkDecoder = new ApkDecoder(new File(sTmpDir + File.separator + apk)); + ExtFile decodedApk = new ExtFile(sTmpDir + File.separator + apk + ".out"); + apkDecoder.setOutDir(new File(sTmpDir + File.separator + apk + ".out")); + apkDecoder.decode(); + + MetaInfo metaInfo = new Androlib().readMetaFile(decodedApk); + assertEquals("v1.0.0", metaInfo.versionInfo.versionName); + } + + private static ExtFile sTmpDir; + + private final static Logger LOGGER = Logger.getLogger(BuildAndDecodeJarTest.class.getName()); +} \ No newline at end of file diff --git a/brut.apktool/apktool-lib/src/test/resources/brut/apktool/issue1234/issue1234.apk b/brut.apktool/apktool-lib/src/test/resources/brut/apktool/issue1234/issue1234.apk new file mode 100644 index 0000000000000000000000000000000000000000..db82651aded49782f0651f666a0f5c140ce8572a GIT binary patch literal 32390 zcmb5VWl$YKx9>gdjk~*S+})iZ!5u;f?(XjHF2RBacPGIuxVuYm2o~JmJmICK+b96UrA*k*iD8FLEyEfY7u%OToPi;dU}hNdv>wcQp!~V1h{`(o zV+;7tDz!XmAT?v?KscOXFXts4Q;>uGP=k#Ig3geK?|G)r)cA6}z*DM>(&-bftW8C& ztcfp)Z3x~r$^#%0Jhct?fbgWW3R3PByoB+E>+W%I{QA`TAsta-pMh(!z}&m<8fUya z^N`TeI@9bo{sHwU_$*sZHd8M3r+$CBg=HHZ&3c4)o z^Kn~){q?q|p^Yi4QOBIx^MT!H7VdZko5f-5#_K!(ZI{RRJF@@Q%U8#x;CqojER@{` z1&>6TgV$ka>nh(?XN8}gDTp40{Q`g2@OW;8dkwp&-&ZdMYj^d*URroMTf1DJO%40h zPO1yIlWb6JMrP~4$s3}^f1o-fejt2KtarZm?Xmf)8B?h-I*Na6u7>}3F zKor$RQK#8AVfL=^fHjO%_WRJ|VA}&{yxKEumaeI;nu{>mT=;u*Wrt~XF3y(CS-Z{E z0{<(FiaZ?re|Hm=e-4BQ0Pp~C^Ur~}{X+^lkOAO7Mgf2UXEPU8J1a*!BS&USQ%5Ui zcP>^d69Zc#H+vIHGiMe@dkX*nqEwWmQ4k6LJq19Km625Yca-^$!NdOBYo0Yq0|3&a ztmFp`&(*VRuSDzxlA-SIC1K$uQYN2XiXo75Bt`I z1C$wRyQ-gJi<3MxiVN8@qH%*PCAktKiy+pqm?{_;Af`HE!FEAukN3Yru2Zg4H~+Tr zn#5IU#WUiK+O6k~i;H{zi~BaHCpm*-M!)?5Cex0$+BN!@Twc4?x^3k=-DMEOF*}$7 z2qF{atMrDe{XaGoN6@8n0dNpvZh5@KYEw--y1bYny zm16*pX{9Wk;^l)>z;YvV%M&Z(<`y*M7%q8F>jUu6bNA5Q&Hml203M!yJR#LIaqgFnJx zGr2wi-=A%`-7o?hX)bbUru@#RFd@AkJl_4!EBq%$@dGbM*6OcwJ9eA9!79w=OnO(Z zRQWng$d4Jf3F{zFcF;CdN6kjY)_E8-E=(irM+)BF`j>M2< z3!4qhUkU^|St=iPrx{!gngMqL$e(Kg4#lQ}Z2nTku9KR%MR-tC(emvucO}iARW~kJ zv99;9u#{&MgmoIN@1TvjQLg%ip-bY9e{Frl{}E zOM)bP$W7`fW11hE$*E6!3vk3H_WKl&3^%d={CD8bvvkhN#h1XDH)_%&%fqZxbWGoXr42v-(vyv{1q$L`RE*0 z6Ua{ZoGtV25^i|C5zZJ;hvrhP0ijtMyXarZL!+8X)QSoUd4lCelZqzq=v7L&ChmN- zjW9TSD2d;K6Tg>AMl{&(>%Dh4Umw^-pwLblz(GI|J&$MVex*G1`*A@40v25?U#KHruqs#4Bx;0m?uKnCW}}W2eX6CRW`cp-V2LZUE`+U zYGmhkJ(|FKF0{B7xM!2*=QA*%y%Q&X@I{MnT=*n_*ok0?N;aV>o4AdpitF8eEsfR0 zKUhjs=}X(u->A5h!%wwXgk0TDN$&I3OqhgIXd3D6D#TWI193?^k;SOw1;0i$5<2H$ z;EcuRsPQ-6b>|r-_=w*T2}^aq64hYg&3`=AfAgHvI@5nm(n>BYC?NN~A4S^2GCE5Y zHv}M5ONQ>JIb~`moTBC4m=6Are5-9DZW$T!34XAW(k6q`I*=IKnmgH#1|FkE*W6UeZ3?{0he#GXl#eaoSiI7`o*5rbVT7U)%OnRURxy zLo(1CA72M%j%GqCCAhhIkrJIL_GWh+SC*hT3tx|_N{kdW{h^{pTn6KrxXV2Bf*%6a zU6XqM$O|8|s+%{Xy6kSl%A9y43$=W<;6F5wWy_Smw5Dr2V3ZQhEc2CgjU|FxVJ81H z2T3T`?J9BI*BEVD_m8>xt{%IRoz1e1YcH?%b@9vbOKhXHZ;#R48sJ0wU9D2*$1bdl z3>165MXv@d>hmXD^hlYBE~pX7nOyMPwPVL#IjBhM@%F>KlcW|}lbc6k4HiaF@3d^) zEnN~`7H7{uyoq?KUD?$q(=9@xxKt|~8{}j_k(P2~{G53yIuvfPnzo=(9H?wNeak#e z7F7!~3HF3M&)6_&rJ_`7*I9wH!nivM|Aa!p>^$M1vbn zU|G_}hctsoixO_f0L_%gd0Voe8Hx7o@bkWSn9paXLngd2*rZ?V3_CX-<$QwQqJDLR zTDhA-rMP52X7-{Fxc?|IXqlh#0^~z>EmI4L#gxXLRh}^EW6soq+Tlltsl!bY8sbxl zX$2XK4x4WjD(Z>nw){aWAKmKg|l>41ZSlQ_h zZ=5Rm9K+avEe`Y?Dd*Se#`xJ2m1@OCel3=aTQl=-?^hjz3>fk0X3@IqJwh6VMYIas zydarkyfO%-`XnsY(^)HC+n!o^!=doTB474Yc6n)2mE>kp*+6+>66ft!%Kj zS47|o)KBo=^JM=<{QWoiHaWYbu$YgQjtSd}h+Vy=ZFm@m-5W%ksVIS40ac-NoW=IYtzPINS+l+U(XEd?*&0)clt#XQo z)Ej|C8TRL<*zL~KhTU!{3NcPKQhdc;6;`M=Y!jP}?>G3Myw^fb?Ny zxBkeFwK_Z8Wj9F2QGf@?kLRT(`D;es0jfcN6WjNZ zmVa6Rkd;!BtPwX1{@+DMIm50{5!^r3`p+l;(0>;lcK?&;_`hflwto$<{g>v@0zF0m z0G!Q#G>7HpnYLZ5#sY!=ri-Y#xrMnA-jbO|5_1Dm%b41VZ4q{*JZ@wYej)mN+N$I% z8FzBod?1170S)fAbd0CD$D#=DJ}O!d$>EFgUReA zvir?UpTmDEnYO2oJ-g zkazL=*sG`4$*I+KJ>N2DqY!+))_y*?Xvg7q`PHYJ1lE8KgN6KN819( zKn;gAGgVxQS5;a(k_e)?jyJCzQ175J5Rv4{!+S=*#y#E9 zE}q9N{*Iw8^X=7ITTSDg(j}4U77-Fk`ep-iz2C6G)X6*c?>vD0xiZz@A6H3*St;Q$ zloPX95`LSm1}%4vCC;B@)$eh0bU^hAyJKy3<#$C*psmxvGOLRj8#U{SqmrnKRlm8qS*K$ zUj%oFg2i-Y^7_JV%A?t*L2PZT?3ZLc|hkU=r$=GUe^iys;|jxg0?E}RT@JbqE8166)%Ub0lJ zFmkl)QQF?`c^=gdo2J+Fp{7V4OXnR5hF6i7)-(Qea*Plb_zOm>bRIe1UDHp|ivRWp zRhG)_h^svvt1SFzyMX*BJ~~4D$G;@Y>!RrOKLx>%4}VC;atn&;s2BjtGXc1$zs8PIXVJ5)a>9N;vwJzGeYU_W)=9V(_VQ5 zDGXh8c@-{*-~^4>(q^1kA5{FZfJ@ylA`)`u6h1PhyTKa#qEalKVVJd7)WoAC%UBR} zC`FM<;OF3cYtRb4J4rNpW}1tC$?Rdgf7l_NK4+uU^tT^-jkB87j8YiA(9ZlJBXV}a z=98AD(LM$gfzZ9EY?#Q#NCf=wtGFy84ZowSpY1_3o_~t~m_OTKUM_F!X^OqN3LFYs z#i97iE9R&_i%FQuUW1N&8+4~og8X`;xZKrdrptp4)Vz2~*mBI0RKjM9ce>h8-+rMg zhgSDnhvrL3k-LgX1yS}GY2W?G&fK7BtvNJ~C=J)<#}zoGsnAV}p`O+>?)?2x5+co& zB1J>|uq~A<_Em8KN|86A`JaNuOJ3w@XA1NPD|t=o3qczQ(H`z7%#8dSjxfp+$D)kA z*N-8>)Egg)2Hw1Y-ox_BXH$U*HCOEYQ`c49XMZ}TR;dNcuE@ex5PciQ_=&cE*s+Y`i=sNVI#!Ws`t8aj2IHNqTxp?ZtjC?6^D|>6Z76cy z?Z+}lwP6MG2F>QrA8apgqI$p|St!8>9oOl-j0F7|@IJwxra@r^bQ%h}L+vQJ;NP8? z519n~ZwXjC4is-FMA=hS`jAORHcv1;Fn z-oIUR`Rxk%CgGBBtI&&G0?R#0UeCuaV*a z^xo!I+2*Vb(@B9Zsrt2WQok&|v)8mvSw7=ak{N<79{}_JIm*+8Hk6}c0Kk8Y@_$E* zp8rp5(ePgzhW{1ke`k2`0RZ~K|6+@JKB?FXneTqB6>UCQMw^`DY^LGTV)&%N889ev z5K|QhJ3>CDl=9+0NToJU8=-JiJ{5l(jRn>{zT3)fTSOT@0u}p=TU=Z3!jUREIsp`Q zGz6IqnU9lgZZ4s1>uqLX<3B}nV*w@Or^`vtdPSStKfu^|?s1_3C1F;E{I!5XBYaea zfFU3zOxJ#Fos?*(6sEK=R?(?Gq|ndIXQiT9o~BRT>7?I7WL{KiJ0?@!{ON5c_wK5+ zZ}oWcUZ7Yf4yjdu|1g^Wt++LIRoHiaBxlT?^z}T3>+heL_GL%KWa_~wlCFZ9nn@4TED8{0Fut1Qn^5fu!a@gwM-@PP|{&T*Dfr9PY80|R zm+I9&*-R)Z3du5Rt!^jTiC^-mO)~`&O39G*M9P?{1S^Y|_Nxs&b4dD#gPre_Btm@h z0``9OlaS~c0keF3F^>=+ca5ye+vxh{k_>>&aQbU`+36;q*G|}@3JAkO{k5fpn9sfd zCoK9xc8k1SqWfB=!yOdO-_iU%#`c6A&X2+QL_o#|Er70)?DHmvzxA0oL%PAe^^SZW zHZBGM`_3==iXnoCl4L~9E6G0aja-?*N|S^9MGV?j<5l9-iv|aLAcx7|!^v0Cye?@= zZ)Tuw((_+0JsUsq+yXv=MQ1x7T9E+=O3e8JF)9P2V#SI`J1WW{$3suqn1WZOx4mflj$thuk|b6uD@yK9`N@d8>`b3Cf)_ zCKMrn=lOGg^z+zB$UAjer~hG0@tskztB1jyo@he=I(`E zpG#hWx|2;QJG-;~&E${E{L@$>SN%5c4o=&qTjT&O6!Zp%@UO_=*^dM#X!+w>oBZ}4 zC(I-Ph^pYMsEw`s=^~N8kcXdUwQKM-cEPP zja(}v2Hv{Dr6J?DbW*{GsS7*)I;0-jUqJU~LUa#vfB}kYvw5d7AvSBfn-4ahg6oJQ zo27F+9${DutQMdi79OcE00-xBZ}+z3(Al)=*x_gYQKWbpa8VV!&s}wyDNNdeNEOi0 z%~Er_prKivU`2>`_}`{!mOg=`6}HEW11Y27g}~E9(!77;M6C^^NYQYRgq~*|)cu6@ zzueBTZhYR*U{=J?nNg6ckJNN{+DuNfGO+jjP!Yt=U))NC%GZd{P@!7%UK`+lav8iO z+VL2P@tTb#A_hz^3f)y_DyH-OOQ;Deaa4VSn6`2Iib3v$%#QfmBW~zF2%v>rs?Xf~{UyPf(q%qEtqWJfXA=G(U{|Hj<~ zG#^LYqVEWS4W^GTPgDB8pEC zTQAd8iHhMDRzV_25B48&3|=m_Nij&TZr3bC%*OAKzSuLT0%!5>pI?;sQ1k|5-kb=p zmaCaFA9wzc*Iq_+d0q@MI*132Rm(wbSGHC?pLk8oEyUR_;Sq#XT=E!;Pw2*$zX)oi zHyc7`V-hzF8ipgFG`v3=8czttR%V3}8X$p^^r7u;dUap?{XW?J8m8UyatUzgLd<4$ zk<-)52{^mJ?fjTKtwB4>RebI|j(^3Scsw(Xxz_F<6Mv3}nC34yGd15Pm9g@JsT$3J zWGzx};ti{0M`r%cb&x*{-n$fV*^+eXiZWerxVQYl;hubINne-Y%R zNVgeN%oQ1GZD!t4i1j#|g_uU0!l|{1M7xb-KWwi#bsh5hQlCB^qiFH@`(Jy#SlZZV zYKw?)lhIb`KjzRciOp4JuNTq#Yj_hj>Z_lTz({$<;M#g)i&k_fYG0IH`3*XeeNN)m z+7k5OFKlNo%YcqdOB-!iomp)wl%g1yO7Uk|%??%-4L`4~2sZf_0wxl?C(v+NFr)RY z@cu4i%z}>)NJqS1M|u+qT!yJH=T61FfjngQgL8@562Qj~oncA0`#hSJZvnKE$TSss zwR+D7v#ua*y|QvURE4(e^^#dAYg5(S+MYYVBwb@&>aWEZ_lvJ(wH)~fl!?XiA@ z6tR)w0Ou2&6X}Q^*H05n*W0-V-$MF~B68$4!T#W0ytN)thg@j2T+}4e;dP_+a7r8C zgnO5T=g7t7rP{vJNkX=ki&v&JuDphKl8&3kX4tXzN=tmS7CwW+xua#nhRz?A@YJ&7 zTDDd{zXl`PT=M4+rg=L_Vv>jvmIdnt|8K%qZXI9YCKGj>P>ZqcS%p8VdbZ{=oj~ zH#yUOx6Os8UEr*b5{lC7F+s-Md2?)sv*-BVoMbLu#Zl+KWO)%zcT3)F{Ss9FS^ zt2!lXzZPp?>24KIs4Xxb3WF}vZobKBQu=M$^I4|@cAw)c^b7LwD72M&ST)4{{xN*% z-q$p{{)1^agrM%_^|K^(j7MpQk-I>%DYHc4a;oSC9B6@`=ing%v6bo0;IUAM1Cck# z-jzc6@)nT+*k2cr%o8eu<3ztUm<1C`YifKS2+NFt^G{O52AARMeKLbH(1Cs+YFbqb zxiHn=!9Spo3#gjsdbZj43)OeH#4ssz`51UnbL`YmKF+I9?id1q#G>)K8ZjO?QT@~W zeLDBJ9|0CR91P<5h202ovc!2D`lupkgu)Jh)1cQ>7~~SJqE=OZvmipxDJnzW{#iSx z&J%aVNRA^2!W9~Vf!9CHq1f}CeisA=jU$6T5K>Y|E~%%u4pv}*#E3;F4%m41i6h0v z4LJ_3Q`b>T=cz^4)|Cnclko?l-Z0EEdg?c#NK0c`*>TkZIW(8$WY=bazjZg702O>M z09KFB6}l4g&>!tKJP-XhF_35-c4p79RJdH^c*1f+4 zVgwH8P^s{#fPzFL|^#m^c2$-g!RpQsVw^;JT zO{&xu4LYf5Oa^_*YeFR!ovb*DDdr+I?GXY6zrS(=&K_4>Ob{L=10Iy^9kurNGS@J- z24R_I1Q9GL>Sz?FzYpK*t~%DX7(r5lkvXOYbklW96--^|8c3MHP+v-MB*i{PgtA5{QKH@~@(l)8n)<_9X6 zs)#Ie=sekuas)9TLRn>s8n{~SJ}Ioj!av2%P}~dTuYPtPpf|w2ZQ)qUp#%GC*+U&#u2XjY>mtfNg6no zVFQnMEXHrX1ZV!btBW~>QHnlM5O2Vnz#}oFO4YVb?*F6&j_9>I7>drV@+xL3sZzPz zQ1WVjs{k>l&=h?Xp^?Et63FfkaCG)nR7&wamfN<(%9!{#5HG4jP}F9g}K#mZF6yfiT2B2(!FiL19@my=sdW^$AGsaXdJFwBCW{v(UMf zoHI;~2_9Bc6r z$CzTi(u^{k@E42n6mtr0Nq!k9-oRlgVUhbNw%U%XAqMjy!EvyRHvL9j&X}G#E~&|0 z+w?N#EHtM6US0J&+n@|&6eMDHp;I!QQYN{5txX($Kotbf(U*B9qAf2LfR`_dQ;04k|;MQIKKjeuzGk4DEjQ*TYsOeR#`6gSA23LUK0K>c72RP`zG2(DIn zz57mL!}<1@3w&wNPiFm%fO8xWCRPV4>P9hyoXm0E@q0XQ%H9%iQ9(NnGA8n%L~u57E`sEHIMVKn5kQ^v^v(wnEUv~ zIS9Tj%^PfJ<*f)JocR$1v;yFEp7qY%a4-oiD#g=AP`1HF9hjW_DXs<);073ICrKBC z%$*lLPaL}Kvs%#6-;Ki?loV%G-OG&zq)`=jrvBX)bG-cS;d2*IS6zuE#u|uK_qc%4 z&QS$`vU{rJxHc07;DYhmY{XY;)QAy9}~Gu^Z%5T>Wa(0R3Hc%1r3Pc64Az zh{VSvll*Ps_6HZLT=KIY>7_#^@bS02->mEw;^X$dij#Eyf02X#A0s%^jJ|^vEt^|U zl{kI=XQEOz&f9B11OWdrs(-irx5-+b{}WRAzl@tC{;Qh!Up(dT? zw^JUK<_gVfYt70p3l*RK&r_J#)T^wOZr%G@9EMj2XjwU5i8 zPR!f$Pxo8=EeM5()|U>4<5r6%Vj2B(h^n|$q_gL~VyWoQ?dvH~oxu?k7Yy!6 zlrm>8RFw;rI~#9?m+G@MQVWEN4!eOUseJ~^?POl8B~Dzxk+04z}(p<;|a& zd%@#wQKFs?>nl{VJ{52Mn=C(VW~wXw%LxKQP$581_u@r-?c>~LdnQYViEb~H`cWam z9L)gN_p%Cc!X<9A(dAWD^{^p+Emu3Zj_1C~wKY)(<;R@R2LyEWMzGbfUv15LBX|AB z0H8Fg<>Jlqd?G8b4N*l@EGXte_?+is3iA`#-Tsf>>!1FMZYZ%?(}u1Lm3S`*5VWDQ zGBlUqpeG}h1(u~7Odw!)?o+>byG?mDlRK6TO5ZZW0H9gAcPk^1^C(!11#V?as9N^I z7qnc@6E2{p!H@z}4IX?P8BiiL`n&1E6Z7fjv3}8zggIu(g#DNG>1lKZRWUngn1v2R zD2=0KHR#C#*&$x$BrgH2dj7ie+8i{8l{yc&K)%4#yvqj!l~1zRfR$V7K>GSmXQ#v5 zJ(kyAIXaQsL210~QrP)luwhS=OAH11Kf}wsU=;LMO`5iFTo3O+WlTc9g}Ze;F+fqW zPvE;VC5M2&Z>{O&msA>ozB#eC*PmdQ%2gaF$l(mM8_w=HyLflBBq97R5-8sv!L$K> zlVk>8-cDF!M<)?7hhPAEsV=2bLyDx@qOP_&Byov@_)^u75;Qyyl z2Mgh+4h&tnD%sY$KfkX43_3JAj0#%*6UUV^a4!uk-)JXid}Fa-@u z#ngVb_el0CE1Adkk8m)>TnM{26~2u4^)! z9&(1ny@1iiOlAmcI*sf?H1VZYyBx z+3NGFf9d7X9ykL8pl&KcTvWi&io2n}JjfDXq~bB~6nDZ$M2%L``GpaqZr{)UM7hTI zx8}m_F()#oTLEy?;Uz7l)bSE&#a!L1E*qMM@PUxJ5!*B^yw5a;FKeWvvkN^EJ_r^g zpPWs5y=vfbuHBu=;AM`oQpET9tXWoZMH?#Pi3T~~ax9ECULaQZ8y25S{H9XzVONYk zf3=Cj6bnFNeVILr%z^A47)kh#YtBPi>U!SRmre-;?B!@^QS?#dz28J@mHM|FG%AGv zs%UYJfB74YOLf`yLqE$Otr<&-kXKVdMw}ewv7_P2x&wZGVGGX3|DX~no)jv2`{zWj z>Gu*@_tVMs#jSN}6hRpS40;BKneD3?+LZ1X=;|O_A=If#x8ZS6ROGH#osx2=^xZ2Ej zd)4qWKPUaY*r()pwktwNCrl{1IDEaUz~A|QJ5^>_f{x)p=>PB%U6 z_w`L^O*F3C}6++ktg5>f3fPPt9Fkm(Y-{knT4k&;mp)!%JkaYZnyrLfO5dC@~Yss#fg4R)If0W z?Iy{y+IKWUC7q#x60E{AY#0e?UgFoMIii4crP7h{%!q~cn`LdS$uDewwFkT>44!xT~^Zd^pjs@LDA ziKc3N^k7P*(_7N3cSlj;^I_+?0YVCl`o|VC3!w!zEXeCt?2tf zY?{oGKw88By&HKWn9%^OdVMX0CX;$uccAi;@`K^v@zVp$dFpRIYxzG$3>9ED}}uq&8fEN)}qF zZ$|S$P0j1V;VIwb*SCPr?VmVznKVH{U!l>pLUx%X%gsc+pAYG!j99{52)+(H+t6a^ z`v0En7A>o(&Z1eJULCsska&-pg7OcX?I}g2JkfB51cS-DhRCc79Fm5mz zOkyy@x^M#r5&cbu2K9UOhfH9iz3Ih~*Gkk@pRkwzRiL-MW5u2^bUCEA;^-4Am?D`ygp<)X+t( zZzDEJFB8Q_-J%CE6smdK$2#vWhksrC`y@7~BTC_iw#kLw=qL}7Bi(YY8`D`{Sry$6 z#!O^_^DbX*?$h)>bavvY^F0EQt z(E|TPA|28W%a5m~Z$*8xX5ki&6YN%F_XUqo-ZrX zym0~ymsK+ybGDS1pvtsP7oE+PQlfj!QBp-lgjms%yD);rq4{SFjXBId2>@PEQL!Lw ziMUJQLq{(+7wYyEr{f(dmcu9{B{vP}Ji8fR#5P@B?mzFb_Ae_pldC)ZjCzhrIJHeL zML6-=mUvwYy-T~%e6x<^hK>@6U*^CYHRg~jYCet;WPwdLFa}$N)Lg*q&Xz@Kf{tk{ zGrVD_qPx3q@h7D-Sw_M#MrojK`9m36OOOi;eeqC#MjWM@v@#++N{r~Mr4E{0(@}2f zwl8$x^71nN4| zhe+@k#4~LG);Dtrs-NFt&lGKY+uPsp1bvoP)F3+hN<*6+=MTjOVV$KuV>M!a^v@*n zlREg8a=PbVO_lBW2^zx#kTB{+w$QLJs%Nh7H9eqP+ymgFsK?+Fe*OX}^0}>7Z2eXo_!tE=87FmGZWSZ*W8HO}! z+?6GALY?1BdU#IW;qUc6R)q4w$^fB5!c;>>vlDV5=s?FO4<-8;ZmOCI@Bj^)H<3Ok zj8Xlhsu8NKP>X5JShb=h-{j2Ij2LD3lG4?mC%5Wjop^1w>J=NDLeffQ!$s}>n)ImO z1p5+&yCean>|7ua%2#Mo-cx@NSMcB^)Z{5C|1@VHRmJpNH~-Za&yIJhTNS^7IhI#B z9Ywvrg8K36=y5-vbJ1@JNL`S!Qi~JA!ZIw}wzngBir-zHI%MN69i3+wi}Qg2lPP@v zX7P;Dgx`EQL?d71qMrY>{E*W2*2`h1zxVtip2^|;^fiU`ngh3xv+)vjAf?@WY98H; zyaS&%snC-Yz=|ycpj#5*{YWALRF5=O+%rQp+tb!qrn~lVs~iF-ORq-v+dNUl0;GJL zznwL9U0)O%R&nVpBJ=Zk#%T36sZa@Fi*5IvD)UA$JiRS#;*4`bd~>1$EeWG%bbF ztLp1<>Tp|Fdp$Ka=AzsLKi9y|uqumwVO>|RDYRsM?)?lJJ&hXrg97@M3DwF!hm@l~ z>mzyEUFBLa;&wKZX43NOZdeveF(mR?JG&}f@p|QiFNUC#=AA5}F$_HrpbX)Di<_aq zk+CHq;2$D}u61TV9jwOojK0tasJ7E^B#+kRRn+^}3r_D~g-eGt`@)VI7RyY@liWY- zxBc;F)sVLMs8eXP_vRkyfJim2=Xm7#$xu2j2v9oSDTmC>r#KN9=y~p0V%M9u(FLxe zA}f;}Z9jmO_sf+R!y*83 zy}OfckD2>nh4^@J6!-~;(6j4N$v>QpBBnCu1<*ZWTH(-GnT4p;OnA5cNzHlI1RLkm zK3y=Et*zgh7}qek+~!7Lg2F11dBOnFnQb^E6dSPg2tjGdA0GO#QKbkhPQzsdC$?^wrCjE&k_+( z=fRe(fGT-pTM!!B{Y9Dc50-Dw($OCZ29;s{Ev`Z2;&8+%ZP=#2=Zb_RMy`1--wGu{ z{tg?$T0nYs7dBTYb}&S-Wqh1x7jliS__oUFG$4qy(3#Ci*f1S*PR;~C=;2cCkq*T* zEP01mh1F&mqS-nsJ_v`K?DNY35fpyuYlM{z&2rd~?@tb`Xmw^efu(g)weNxQrK$}9yWzmm9#69-8;zas+ z9d=a4IaTRBu@Y?@A(GYLkyuG_C|M)b zEfWYlaseTtI09y;!kUmD4rDc)dLS9Q&_Sf|HG9vsjbF^%HaU12GZ}~17&#LcGRfV% z&@19X(;^k9u(f*U+l zB!$1y5oV=WIiURtGOHJkWxUr`A9vxHwSJ8Ygcc* zvJLzB(4lImdG;j-4;BnSELNxuAWp9)n@jmB=>~6}V^lip6_=RsITwkNrq2W#ed;m5 z_=}`cte%s|k5rI{W*tINka$ zT8QsZ!TAUpG9NL-RY7tHYEHj2WD(n0H#`)8S-3^76O&>wbFp5T0?#c=Zn(%p#$r?m zBYaFm>7@dQ{PF84BPI14m`cU*OlIPZ5q)I(s}h^ZEjiD6MlZWiZT!HK?|{%3sCtFR z`3xCO)2J|qiI2*m8M)tVyc1K6Tg~+$q2z;dQVZ{;QbKu5xSEc}#GKIIGc#o59Ah$z z#0fB3RmeJ#8XdJx@c7vu;t8-qi5N4Xgo*;&C3z0$zdl*+!szf5)aTTH#fE(JssSC- z+=6z-w}c{{PYhqQ$%VNUo9#kj!n#bhG%tS(Y{sk{P=M`O=coP9?N-_Uf#M3RJ+Gfs0t%!&rXIlL;hOkn>PH2oYpiAo9y5hKyxA9Hu|h zJT-Y-M96+na4K)!g{Myz!z2s8@3Y$e&My(U^SH;q-^zR0(BajeC4!e-4PbKP7cC6j z1)|XPHNOAL6HXst67mwnqAy2+cNEg)=JTam_BYMK- zBaL}j42KL`Z_--$h$2}v>~{SX$iP0Id^17HOJ9cm;XB9(2N{f;v;Mb0VIfHecC`bd zqCjT2c9+=^$X4FU@0HGbg;_Kbw#Gw+70HNa58xJ+f?U?36$AmQU11iWJ% zOyBbG-OcNtG8>71Sv~2BWsRaJ*Q=wN!N{N`T`?mWvyEn2T`Jh#7x;h8kE_{kLy&~? zA3K^3LRFRm=HW2N6V=Dr&PO&!4(>{0nC6ELutkFG7G}1BSXa$f0!#Oxd`6&tXZO!A z*#`wfb7I}AMQbPM_nQ&9&qsVyGcFOyycL{0{TS^RnD~4d>1OszY!jOY9U4HS{}sDS zYJ71{M|)t_I2Mw5f-aqs$YSsG03@VO6=;V38?})Xy9S?vuK5S@p{k9@am&5@FLmKj zyVpNa_o^oWX6xD|A^Tjd;j}|;$BPteIR+H#dhYuWKeDPz4JNU0^j^!K3?7*+Iz{_w zyv`)12BCXQCM2cZ1w<707uJ#_DU?ZTY~cP^(G_Scsvj?UWQ4nXMc zyhW!1jofShw|g#2xumBj%!FjRpMxkklK7V}s&4v9QGUUbV_xfw#N+uTS_acNVxeu8 z1FSN8O$^ZwCjC8MRoti`)Tuz^LKJdL4!t4Mb9_?H+nw;WS?w~k!WR@U27OwNumHZOeb%wr*yD=c-7Gg&_6$g`3>h{^^oPyUh5> zGU*~%(j&|&GQ2~t6oj8T`iTNW2dH~ao}0s@TjBp?xnX^8dG2U$RAOKiO8tD6aV{)I z3@Fon_Mrw3^nQSLyMk>DAEG-ahxW?+I%D16;r4MKR0_W@>pJGM5sl@BsC2g_C>m2+ z&SeB#1PPHjaa-;7+1?HRzF69TfoK4|kIlMO;{5y@$X-wV9cfKQZD6DVz^ZVV0;n_Wt;t1)aAgwf8Ujvx3BE%x*ga#K0>8XDsO3Du?(Q8{t zv|M-;g?ZOI2aOZvH8JTjZp6O?rC`T(7Tx~8?%p~qs;=!D-ZOM}3DPZ%NC*rq-3SQM zjda({ARwS1A`JqfAQA%7Atl`cN|!X!oiluc_w&5B*Y&>FaX;_({r8=7oO{Jy>o;q! zbMMt_ov2M6?`sS(y7&3;T<`g_{W=9_f2nYut*m2dqAVnFIwWH5h~tTiwK-K^?iZ*L zeYEssy*?^K5X;=4YtUfYFTVy7xRNohM!JbfjKwG(q3jMK(n(TNXS1odJkDyS^XxB6 zkQ1@eI2YCCo>`b=xCIh@)^*o`z5QSuib*ON0}859yASh1m{9p`Y3yKq!(#-=_;MGz z)}#)~v3l3!C!U(mAtOnaOy0#$E!fD#pM!{W#lKNM6HJfX#+xl%2q%A@jR56i`-@?b zN3%?}ecot$nfIauG5sm?Quh*M^MivxOlvJ#%^w|L0tA7oUw5X&cpiy*A=@40yT&vK z+a2(jzPuK}DQ}M^UMGr4d~;4Pn1-j-_om)Hu2Gx=vss}FJ0U135!TbhKTZ1f*;LaKmhW-Pq*+ zk27@t$MY0gP=C_$dyY6eI9ob95mAsdTng$V&r*(h98;906lSJSJi$92^{l zsO~~WVjC6kbDrnDiVs1%aqjU0FF4&Pv>8FhiP?;cEOXS1JjN3W#$^3pU!#)>U5?CF zWnMn;8`3v4G%)l*{j`4dk7}{2_?#NfpEj+1SqoMJg-0V0f{{H^9mOYCQrWC6g;cJnndbl}r) zsi4(FRl%B;Az$5E2%!2w_y-)l>6R$p;bMwZt$*)2BE1O{Fb|$MS=($vtUv1)QMLP$ zYTg-pUd9ptd_Aa2nQO5cS>ZxW;74J5e8l-#?RML@O9&|cAk4)W>ej+Pb9vAqx+l0V zq@w~bhM$WqBfp^*PV5(53sKj=f%@t_ApF|zIsz+3N*nrEmsFf8{ET|4=D@rTHRV0# zD4|DytvxKbRKDbkXj5BzIiY2ibX&9+UoADx`f~bgM1xB5Le{RIyg7zu?E%4LWs3I~ z`YV8u3kToLmPkXwMpyDqg8J){mflUoc`_I8XC1P$2USa*LT$|42nV_%x(piO)qKIF z;E9}Idp}V(-+1Ll-jtd8JyjqFj*bK%@NWjql0P4jJZ2e~`!+n;wuudg1D)GHt4nr+ zWs_rASVM_j6H98BJ4e}VUipFR*bh^a2B%Pp7l3+J}<@@yrN05Q7z5jg*Kk2*<*@F&tI`RM+_F;uAFzuKx z?|hkEUp@^u_b&Qg68S*}`Uoi_1|tsR@xp-fj-#92ltv?gPmQVP;pdc`D=#$7mOk;| z^9bqygY2T+tEno|O&ZISXC;}7RB^NQND#r9VkZ7U?7lQX#kZ%jTUzA~wb0FWn%FMS zH~an%HtPa-2R_9$pZ7lF(@4z|0%r-IWsU+}>wdxun=nzd#^K%mupoNidZg%OmL&4k zIzotsYTYKf?4UKSbmD4g+XQrEZ`LCNPNKwkJ;Y~T1D(bSDNSuuNxT$1Y}XahRU+HX!0I%+B0$c6TaeScGZT9w*&2vW7-v<^TzXf14?-;nU(mbV?+{d3TSb zt{2JNuH}V&-w|Fl9aT5+RDhy@D9}d??Qsc@qtxANr`FMZ%(=3I7D0L!6J{zizg0Je zA$%F%pA>X~x9#>Cc*PHnD^|a6i3ZJ+1jQ9it3`bt)7E#OXgOJA3C81ae^0GPOY`8E zZt1#gs8(t}LtwdG+$frJS*#<}Lj>eEy6%jKzA!Zto(2ef|H!7|IXS~pVx zx9>>dF7+Z>n#{I{vo;o{doTRiia(N)>%J{yCV!pt8kd9E-zW}Ew~VLqGrA40_IHyk zL$%(<`qQSjJ1a!&8vggS1HRwR(Ht$e|@W31ZeW!t?;(T@R08jk0?WXT(wwCS7}BqdmtbIU!{ zePuwx&4t;)TQp+mVYJW^w)Pc!p9I?!{mm^^WtIKOtl5K6w@;IGb{#{=Ni{H;Se%61} zWe!OFcqFf@tF1rW=@2LnH{HsE$afPn_jk3D)l}rG1+E_wG{VlZvn4MrO-wS1nL?eI zla4|Xl5&3b!F*Pq?wfxVCe4c}a>v0SGCLe}q&1r@S6oBrL6f9^$iYL6yVS`)_9#8w zMQ+uqC&{+_!m zt*k2KhL2DHLdGM`v6($G((Pkvp*~<)#DDpPn(w}cV}8eysy3$f6B~$VLnst{ll?m&L+R}l0ztd z{Ph0G88;)Ggh}i(q$k`RksNLABr)jk3MVe2S`}4#AboODl+hsa^RY=2IdW;ot25hg z;A;jU(z6e@{dL!A-}W(A9z$UdxYX%xgiVwxM4_rd@Daxwv88Smh{S&XB+CPJIt0>$ z|H+o5+v_`VSvJOpR5(L(%`4@+*E9P%N(Zd?k}v~M|E?})alD)l;KYAD&~q&X z4GeBdJ6*}EALp02YFZMa=h|GU-Gq4|kH*4&xh={sJ`Mj)prS!TRUIjVF3_KF#%Yxk zsLW-#^1#jS>g)p^>@;W9icsck+<7oautVZQ+H&LBI>YP`;sC3tWWXOmAA3ZC;0q~? z1|AK$iHW-J&mJQ6N6B$$2_&t-zHX#^S3?yH!K84{<4m;=>X{-}ROIn?9J!jD53``y zWEL`;0`&XZWXkxBN3Bztkb1-cYV-0!id68);)jsD`~A$8T9L26Y`#k=DqJ<+MiLkx7r@O zVh?ZonE^W;pnVYQLTKrp=VHL1(NkE~7|^pN^a*eZJ?PL~V+ zd{uc8M%YQ@-8|xfCr`)N2&xER!9j?zCOAMJdR=J#rs6sj@7bqq!|7i*s@lo>Zwh@i zBGjYP5rntAc2XNnvY=ka&G*s3wRp&H$Ia6AW6(&E;vKyyW=*Vd-rZfu!g(L72#sUr z-2)T750%mlzAMjWK_FA`bu3Xf%zrcV=k<2NG{%~{H_SsSl2)d@{`uDMJY5GO(X1h{d#eliyO!F`<%}U4oycy-$fFw z9~L^N?xFelVczIThGByQlg~5mOoxXlWd*^`Y$83eG>|7fsh_R0F1lVI2XOqeLtz$V zS8Na|pT#4LHggs2pmx1ItUmhZKP>Mlf8&qIxO=d*dO-p^8?PT|#LgnJz=b-r@V_bZ z|5+B+BykY|t?ar2pfx4jL(3_UMfnr6%fyrVHci@wz|OBU1l^FYSs3WlPq46LQoZ+b z&$y_x5YBQN4!%PAiRT6QXJ{3_TG4%8*6&>y4{cQ$hLG3Ur|;~OFs|+W=CJkn7k+=E3Zk-#-hXUb8d?j21c!Euq z_tM|hA--kJJp1%`^K;I2K<;Sun4Tw>WCa=!2 zhx^jT6jB({K#X&0gt#>&OMe&de3tG-nQK?uS?#69Jba!PObm}E@Dix8jgEz`cT8>f zeXhDBh{FM}O|csw`25DcgDhI_!E4VCY|*b@4w2lvUkgM&ry#8sk zerL9^L5;fxf3Xi63EG9NxHWq;lKx6t^YOfo%8%7b9^b2B-m1}W@iWi(_74j+11s+3 zSP~LC8!w)PSUVHRJn*EI(7TVCrIUT$FBVK{a=zYdCYv@y!)-|600-3g#j8ce7@?&f zgII3`QV!vW)FY-6@%#$fttc znM@^t;N{E};nVM9=BRd)7o)Rm2~4~UB`sX1$7&1MKB?cmYnMWgGBjMJ3zwm(l3RUQ z{IpanP`ZFIX+JCXGzH_{cPmiCNjjog*!BIkZxA!R6Hnjcg8laRwZ}pIP-;^S{UlOOt;@LVS$8k-FU`{wv=852 zKb{X#|54liweenGVHDcSTOMS+l?q>-aoRx(Lk&B*IKh%4&2(iP075t48Eu;1??Pas z>a;P$GvK1tWofA(BH#2bj6s7>yGk4&V!Vsk`#FEudr8a782_DBLU&pXxplJ4A>dp? zwcs~;saMVLdRi4(T;1NaClTm;srOK^U&3Q1g0s!jagb$!s5{$HnB#j#dZO1C%*HwC zUxA;NcPE_=Xp%6RD|Y8bj-7g3rbnupwsZvM7&Du9k3LtK^)d2$0rUWDEN(TMn;WNT zA`fb_S8h!^ZOD>G4%2kj-RbN+p$cIQ+6prd`tj^!EnYY91+p`ICW64Fs4q*N(^S{! zh`~!!4yi)g#14lx!ajPKt_$6N`+>B@)dtmS-1L()J-QqZIT5fCF{VWI5<`vB&qt{Hn6o8F2L8mljp}N-o$EcvVamf^XWtLfVPFzok<0sm z^PBf!aT>RsgE67pISjrs>?GFC`Qm}|McI(&8r!A%de zkjzeVE%H0K=8Oikf;7shLw$YDk0m#dE9wo0%`Sfi;2O7*}F~p7ZeTk939J+=ACC3 z;?(rh9Qh1Wqzu+-<3$tSPM#KQarw>PjrqwB?0KQ#D7c1>;q5Zixlf7`W+H!dt3n1} zAMi*DR7~>w-AX?D;#xC3lAl_HY6Ph}^!p<;yIJjM4PUSM-T|YIb6CiRsqh$i^!37+ z8=d=q5C}i*Tau7@x-aY$#}d^93ek)RRXB=j;9i~OMneWCs3^o$s?Ced!y!QfXEaq^ zfIrm+Z$b%s>zfxXLz8E^)BQ~wQVX-Q54L+rcx=ZIE6F-5E}r!RvG40DUcp||9g=}6 z=d!P-Xeu65y!yVVX*s$Lc3ippNqEn2Vb3f(;2MNiutX^3I)&{oz_8FE2|y4ZJt7No z#n8P2;AS|b<^g+#r!?c-J*j?Q&&2mEvfo>)wrq_gz+~3-5+A<%X_dd`sGxGD*m)uDgqg@)3QXrQ(#jHL`0LbrfeH(H zt(vVG2m=_+TqTa~jHb`N1iNyyUdeiOX|ge7>YCy#1mPf6l^G!9v{CwWcVS01kTrk~ zC2FR={W?uqN)fO0(;m)_h5-XHyqEFYa~F z)}~m!85Guiq>a`*&tpa)J~9s9wJeLpFdU`Pv`CvQk`PfrlYBgdoN=%Qv|)HFkC&ty^AcZbPt23AsP z&O1eZdnF(HRR!+dF=7{-7B@_72Fapg@JN@&E)nqgV$Y#gjFu-68_FAB>tO0waMiX} zG{2c3D!QPxvGmQV>X%V%E#1^W0Kop;JqV+PpW_TsbUDlV;pDkLfhZ+kvfSeV&{w8g z^uW9xX9`pHo*#WH&Wtkt;C%y0u!9dZOK2$$Tnic4MSOsC1iu|*#Coer!WfCpM87XZ zbp|?{)eI(R?bPGFs;AZreWVxL;@7o_wcrPd9u&=5vU2x;z>C(v9x*Qr@z#HC2pC|U z-4O#innn7@TS^Vy?mT|}YW<Ni6co%6|TJYg!+6BdSqCl$w4nqs!|MG1EZ zIj0TitbzAO*>o))fVI;^DG4AFOXnZTl%y?-{xPwMmKki#L&PL*?bZpb#zfc6%SwO+ zHBrAhkkvE?I_u$^!ZlZp_}CtE{Z%N<36-of4e-jn zMC{>P@O}KArkLvm;HBs8izx9IfJBE??HW9-`xaWZJw1r$?1MAQofeDEgI2dSv(eVR z)hyiD2W#qVhN0Mok{@oX$|Lj7V?jCQv{o-9NaCxiXzPd<=F5$N)W4lphaSye|g z_a!luhyE}Pz5C4#-+~U!`kq$@E^BKVH!+$=VzLw+@h8g#f5s&0tzc#rgxkoHuT%vZ zjn&z3fY8(acb{FruPDydWt1_)@9>1i*qZZ!FcY+DKnm5u=(Oh`+ZU{ugMxTaT4;q8 z3BWVkDw!AgTqhmf0-mbxbtJ5+3{TV8Ga-YokiCjmskKZN`oZ%wH8yGZxZUBcMt>r3 zuF`b!s6vj+sGd0feY`0eqyh)Jx>s?$FeIV*!%)RtT3e{wK7FjqiN^mWQ=0Z6OZn}@ z`^U(BOu=%nUdD#dowAJsoDUjKv6*z%C)hF)j8v>GG7&G*=0!Jtc9|X{UBh6E7CL-; zSS;oeSnl`3>w+Z%tHV1EgofPTgnH1mhdcFo-CwEI1Fx&)CMyVEoPw|I_i{iB3|vF7Akp1>(fP{-xGP6pdw_aAHj4; zRH^sEmOYm-Xjk~6=F2^bLQY4ldAp258zL{fQNmMW1jdlo8IcW|&eD7t*9NW}5pr2xco#JSQ1{ZB`EJXYq=< zbFBmB8$W>Q=6>-F5FJry>gTd|*;&aY*&sE_49~__7 zcoGi<2szd2QrlxT;?-=Tt6P}E3R!7Wj0>9 zj0pyu=gBO-eH}jHR8{fBhic_A)tzDl$_TB_%71P|htxHlPB6^PQ=wC{g2EDce(HVZhXsk72Ohh(NUx;ICt-zq+L9q z=QzKulN9r8WNyim3{IElI;dhHw!W;sL;2>s>J^0B%UP~d+P(5(-nlja0}6rQg?K>L*H4`P!!+?5t0^x%K7KqZTcw8U9*C#Jdd|>jrU9-7?}>INQda z?PZl`n|jBuQuX zFg*1+=D2?0RV`AFFH~_7h=X(@RWVS6gGdE1jfJh%DMvU6{FgLq^v=2RXFRUx@8`?l zgZ6^z1`B?n4$zmQ2E@9#C;|oBTKc6V?~vH^`xC1faM<``z7l+ETqgpHNH8lbS@{?cV#&-HS3GN4_*S(!|LfaO`#~#|=OhPKSi?!aaQ&sVI9Dz+8Ec z!kU#OR)b(EW0SR?4h!5XKi=EJ5{ILa3b>C6cRt($g*w!OTojvQTi{pDp^SdWRkZitktRFDEw=~GZo#~E)(g-3I`Kx55_BE z5M>C@ZZZJyXUaV4ecigG`6=r_j*Ty%nQ2a$48?={0MwH+1-yra{w)D+#JB!wMT2CdOL12#FE<)=h6Z+sB^znW`$Q;?)~vB% z&9Yy$gut&x+0qnO;W7ck6=`yn-%b|wV^l50+ui=86)n4GBg_=7d#eh}cWeSigb^8iv zVG`K8S}67yR&gU4iImCPKIJ{=*(HZVq5vgUfLgz+n(b^+9YKt})&Au31$6eQW%2tZ)&dc>g%;s{M_4vZqA-E1rQQX;Kdih)V^pd~ z_^6dZnNhg()dqzk7yXsZajqA~NWOxLY15SUaVUgQMwXOV|A+LM27?KD28W68Z5fpQ zk@%HQ1O^;uv&k}dkCagwO^zTCy$}$?m%0Kr?GZGxxX|LsYS#$Ds^Bz3+=sMyZ@dTpZI_ zAY-hiw6Izd?hWx>CLW>!LDAf_6zNs<)4n>av}$qxY)pZ`H06PL1%Lux{wv3CZeu&K zz7S)pqvVk-9e$DgvvhN`;G#*hI~&5a;va;}nmHSHWeX}A)Ldcv!?6rDd#kvprtVWL z>~G^7s=JLx9aRmO~$g=IsoLFN_f^7(&ieFnnEA zivxb8>^8k=O)Gu@DEg7@ViF1|EXHRUQ=;}VU-n%N&2N76=bi5sd&cCPw$h#cUg>ry zWY;M<=(%HEmXf*9p49PG_~UH$8stSJ|6`sPP7H7;pu)&O`c@aUG=wT80LMzVvpH)T zS)+m#mr4H;k2g3f^m7hcpnO1^5q&-0)9j;$uUjhY{P11TJu*;%^w+_G=;Kq~LR|WVW)j_lwMmQ5mdv1)+&=WI*X`@S>FMJXS9;U3Dyv9|ZTRVY@t=R;xy@VZt z4j-)otDc}9y^l$`q~y^|lSS`B{0cV*>}z;~Y$i8P``)DkuR`ip5r<1Yj-;r~5tzhi zsOjB=b17zQY=&xwU*8KNW6nH_#qSB@0nEC zs*?<;WbUN=TvRVx0EMv)G;^_|FZi6xTZEpD2f}zk3bErUGw973=c0f~r!y>BSpGozr(+oaR@Og5{bMjTw!Z}X$8b0}Dqdbbwt_;!cL7XHUqLODY5J&-%fyirqhLpSe=Hp;y5|4pcSJpXM+nK$ncF^Z{CjE-*U?d^%m+ka_C z0x&SF-JZDJczAhxI{sFR^cyb*752aJQ67KEM?%y+IuzeQu{4TRP>hH7hkhlL>o=;b zwY9CQH-L}-+okR4=wj&^01y-Z=~S@vbVlg`vvhYiceQk}MFsY?_4IOdbN!bS3?}}a zc2p96(~X-PWkZeL-6ZSx1q4_qQmYf6@QSqyP5!n~7=;|0a})c4PU^ z*n9tqfV%$QVBe(uKV!@M_hbKGVgJsX|ClEW|F5ubGUY#~8-A07-}HZzCpTel*6%J+mrkk|6qinyQ0cC2V`2S1VZqjjsg)-4lMc<7H{FjM# z^IhI(BKWudJmYa~!(~)5iBZAuPJ=MX|A-_l2RZ|~F4*C&OL>Dzjo|i< z)2QooVkJen6Sq|H$BeCql+`Ng8OKC&!D+Wg9qsMMGbi&FnfA4b;})5s80Vfdk}Gf- zb(qL+$|?kH<3iC-Lqq4qK-?`L=LNDonlrj! zj3zV)e0o9Do$88^{wb`L{>eJ47=ansRshdwf!6~3MTp?3n6mbnru@OyK*HtSC|-A=`klHq_|c*#LeHT7N``c zIV$($#ynWvO1jr0xqlVgZo+fb=n$;`MhY6tNjWujZ=dL=Itw&1V)L|XoFrT3N*Zr` zGtOKw7(HDgj!J9u-VoZ{O8SZ>evTBV!xthIw zwY$4uKHUnl#kzhF0^R3T$fgZBQOZU*XNQyyDXo~5J)VZeE192MRd1IpH$0q1={tMf zM@vaSwYFB2l(u-@JF}&mr?9`#p;}exjf_1P%KLD?S})tNes|(d0#!gtf)2M9f0Nvn zdX-Uz31gldnL)*5_jI2|v#rPB)0GvMp-rP9X;B|;hBULcEDfxDF<$d-RO{;{;&!8s z%#Ok1xzA>u_QtMlBa%43O}H9c4f*VNZ>t6D)N5p4etgulm99D3wnY;eWEM*3nxNQ02Ev0l8j_V|JRq+XM; zC;Ly*5=FUMHAWA<2osv`JHTrm{j}VC*KdO!k*mP?T-iHB6|*yV+I8cNS|E5i&SWgpyb$!5T-JMTL1M13q9 zPdkgks>VC3U#&^9&6AOt&<%U5l_RDz^Yn)pQ(CbMYou_jK&5% zwFtps;Y8E*`S3x{9P=Z45vmfl9Yc*(^hV8J?-*{?xl0YNsaz<|Q_&hOHzFBsbR+&* z1pKvdIA(sE?1C!ezM;xBa#Z1pIuOX|cqNJ#&&!?djJFMgORDc+3&yTD* zY!_XJ#Fkwej^6<4#S~kx<*E$3^}HCP!wpjNBu!X&|8q*iJc8fHLS;^%w1dFz%~r3m z+XRF6{XqHWkG{ucYpqn2Sx}Erha^>!e!eZ+$QJgo1#)|K5LZ`nQ?Q>+l^gfYXP0R@ z1BID5w%1LRWn80l6;K1a*_T+AIS#M3Duc#eU~mO{Z!(SZ2nTn@OX(Q4vbMEot~DQ= znyuaUY|iV5U>TqK^{TL>{nJ~J_r+F^#O$Npz`&h1Y+rckd&ivHc&>gCP(NdsNT~jt zEt$)kA97UPsjFXE`OqgSmAlKNe9BFZ{P<+Ma%i4mldu zUO^0s*9}MPW4$bVr4>TfR|Vi6K~q(eLO@mu9X9#6O}GE@)&9{zerwC?4Ye&DYRpUa zIfd$sPhcjKB722LGJ{&c*X@q0{e>?XdVP{}t*zA6OR`pC3*Ygaww;k^H{$wJD1Q}~ zq9(zM2$Z%x^<5qNk7<$gO<+Y zF}0CtECzN*S!l1T7JzZyL1Le=UMgCe*kL52>8vs+soyPsz9Z38R8Dd!ScTPFvM;?~XfWuC>u}3&vk;O6? zyZK#%bkmljp`|C@G&7GOqwn66XS}M3j7*>U?x^_Y9DkP>D_Q^#Pi$>%Wrd0>JaLtMC6{t-jix*L@K*Y*Thzw4ZqXQ1 z-%^Y|Os59wl(cu?bw$xSIO0*%#x$uJ)aNwtMN@T+m>7Is()%wU;uG@|jlUkN%*O;FtC%pRj7v(PEG{ePGrtZRRNqvC3=3~et|48}VmnL6XyOC-a4jMiV z`jgA5D4!{*>(^v8esd(ted)TF;=&3(x(~kQ<#o4RGHteyXQBN@=7{o?$4qc{;D1 zg)tEOVY{woF>Plss_f8Yx8Y3lZc1wmHYoauc$y|r1zH19o@v?0kK?SCV9uQYJ~Ckz zv?VJ=v;Z_?3*z2`&rzSF!gscQG|)JE^#97t>^zU7^m6VUEXv6fw$q*v!4;^#U08ox z`g$`m+r-cP)SK70nHG8kP8ch$ph|RmLRL;(bj4RE$X=uKdH9*mkwdph)d_T5R9I3= zh<$8uOw77w7wVuk>~wf?+Il+zFViQxNP~+Q>b?DS2ha4eqHa7-#sLx;kOcEd3A(u=%~Kv5YIm`-b816=4XQ7IN0IYF(*wGl2ie!MhnWD2M8=X_1L9 zduvS`_D&qG`EEIvXP3uT>;o=xlUMiy_5?#2kB7Q7Vec0`oXaO^BCJ)23|)j1D)0ML zZ5-6)sbxKqtgGH#Q@=#J9$JTmG>$f|4@$LN51Ld{;SHD@ZQQl&r0;|s>s(@dpQsma zR=>8IXs;zteMJdA{3JUoljrUr2-kOd%kG!VuJnxV^urR?tYKr!#!9`;X^xzOZ!6bQ zrr85NPng5?e)gf_!GqR1s(>G~=j~_JUDv;SR!q-z#QmL{mj?O`uIJ{}v5hycDjt7& zzrCmu$;B@}H>oZq7%RB2fm#ww*^!9|$>D3T&^Z4g)Ay{Uo?iZO*Zq*Lj9IzsxwSO0 z(W#X-vl>xJZqen%FGS@j>~zv;@A;|&4mP$8sR;w5?mQ|lLsSc1Z?q*-HFZFw4ZOR# z<@fV6ka1F2DL%h~&H7(gNT?v&M}AyaefXe70i$mS(BMn>F5Q;ltonK_wK&Q0Oduk` zrKdQ5TGX^5X-4w6tR($zSGBEI_Mx4bdAV)$Sj=_gSw*D@(T~P@i}9c%CRB$23;WM< zM_Ua9CP&rx|D<9YRV@8M|DbUD1_T%QCpF7|#0O+iwbdU(JpVAL^mn|1zi3eV6R#RI z$nXc=Ka6Dk9q+HYTK>d)L-`lHe;R=LJK*1sD*ZR)4#!^s|EGw5-COx@JOGH3{~O}} z1oD3$SNs!l)!{efAES&n5BTS6@n^H~rsw!?l5zV>Kl1Mp|7^hAv?~8iD1BD{uJQh8 zWBwiC&-(MGq4RIT_xS_iznVRNkNxMnepAQ(n}&S<9vfBTYO7)V9?rr;^^b{AJ!Q+F Hn+X38GU!+o literal 0 HcmV?d00001