From 513257a84dedccb067e6e59c529b0872a77c2286 Mon Sep 17 00:00:00 2001 From: Andy Clement Date: Tue, 11 Mar 2014 12:39:34 -0700 Subject: [PATCH] Serialization handling - see github issue #24 --- springloaded/lib/asm-5.0_BETA-sources.zip | Bin 0 -> 378404 bytes .../org/springsource/loaded/Constants.java | 19 +- .../springsource/loaded/ReloadableType.java | 4 + .../loaded/SystemClassReflectionRewriter.java | 422 +++++++++++++++++- .../springsource/loaded/agent/JVMPlugin.java | 50 +++ .../agent/SpringLoadedPreProcessor.java | 44 +- .../loaded/ri/ReflectiveInterceptor.java | 10 + .../loaded/test/ReloadableTypeTests.java | 100 ++++- .../loaded/test/ReloadingJVM.java | 29 +- .../loaded/test/SpringLoadedTests.java | 25 ++ .../test/SpringLoadedTestsInSeparateJVM.java | 78 +++- .../SystemClassReflectionRewriterTests.java | 254 ++++++++++- .../loaded/test/TypeRewriterTests.java | 8 +- testdata-groovy/src/remote/Code.groovy | 11 + testdata-groovy/src/remote/FakeClosure.java | 16 + testdata-groovy/src/remote/SerializeG.java | 149 +++++++ testdata/src/main/java/remote/OneOne.java | 26 ++ testdata/src/main/java/remote/Person.java | 28 ++ testdata/src/main/java/remote/Person2.java | 31 ++ testdata/src/main/java/remote/PersonB.java | 29 ++ testdata/src/main/java/remote/PersonB2.java | 33 ++ testdata/src/main/java/remote/Serialize.java | 173 +++++++ testdata/src/main/java/remote/SerializeB.java | 112 +++++ testdata/src/main/java/system/Eleven.java | 29 ++ testdata/src/main/java/system/Ten.java | 28 ++ testdata/src/main/java/system/Thirteen.java | 27 ++ testdata/src/main/java/system/Twelve.java | 27 ++ 27 files changed, 1704 insertions(+), 58 deletions(-) create mode 100644 springloaded/lib/asm-5.0_BETA-sources.zip create mode 100644 testdata-groovy/src/remote/Code.groovy create mode 100644 testdata-groovy/src/remote/FakeClosure.java create mode 100644 testdata-groovy/src/remote/SerializeG.java create mode 100644 testdata/src/main/java/remote/OneOne.java create mode 100644 testdata/src/main/java/remote/Person.java create mode 100644 testdata/src/main/java/remote/Person2.java create mode 100644 testdata/src/main/java/remote/PersonB.java create mode 100644 testdata/src/main/java/remote/PersonB2.java create mode 100644 testdata/src/main/java/remote/Serialize.java create mode 100644 testdata/src/main/java/remote/SerializeB.java create mode 100644 testdata/src/main/java/system/Eleven.java create mode 100644 testdata/src/main/java/system/Ten.java create mode 100644 testdata/src/main/java/system/Thirteen.java create mode 100644 testdata/src/main/java/system/Twelve.java diff --git a/springloaded/lib/asm-5.0_BETA-sources.zip b/springloaded/lib/asm-5.0_BETA-sources.zip new file mode 100644 index 0000000000000000000000000000000000000000..20bbae9b6aac6a9655d3f0ce6a80407fa5e9efac GIT binary patch literal 378404 zcma&NQJJc0dlb#S&|Q2bva5dIV4U~Fw>;_6{${4ZEiZ&{Il zeHzOD4{PLN_b>SWu8#F@@kXw$&MyDL`tK?@|CVLqU}xuG|F1kYmH%&bc>k8?;OJ^) zXXS0?{4a_e|5r>GD+_xgS2t&~e_{UjS~35vrmM5rzmnMhn;g;qnq*{eWb5T(^{=n_ ze<$hYYGwPssT1ShN_yJ;7Y7Q6^Pe(vLJ|$XAc26c{`qv2|CS?UZ|~r0-fOkgIh(;SgFJJb@nR|^YrwT!V$sV_YnuHrqdg&*VGH4X54Vp6%5Ttu`SmGVG-bju{&kMdm^5VH?ULph-%yS)oB>VNuYKW!v9)*Z$8;0Fv zo}pCa?L!YF_r$_Wa(N-J>C7eozhQcjoxr(CyV~7UKe3K2xo8N-@vR9#dk?6*uR{i0eJhQeslOSJt;|FyD&ftpz5>g1@2Jiij4D=`*@#Dkw(L!+H zoLD7E`URwf@m?q6oK7{!ogHW4ZvY=&cwSC$MquAFo=2nv1W27i2R@A-6ae09s7EFVq^p9HGUy%58L14&0|F^ zA_5N(&{50$@QP8A&PRg0&k+24o&r9UNx0iQP&OzkSi?L06deesMrS)68kC3U6fGeb zII<+S;gJy;p{NS)P6rez!y(m-csQ+N`mUFVJ+JVwgKL!bC_V@T$sMk|MTIMlI0YXm zYZPDDWsp&rVku4s5diFsPXxA5Zbzq=`7>^~*y+j|#x4q7<#47jP>)rD_>!3r?H)2` zDSRes$3$0+gR088Qc_y5o#pZVhu|QIW@6y&w?+^1xYMzg(e{YlPS1zXVGeN-`{%~P zsdy&3*Ni;`2R{-AH?hlwU&j6Jgj<*j5UZ`vRJ8Q+>a<@2CuqTs`MKW_6~~|j&zbst zTwI-%Qz$iI7{9_gS`su%Wrd8vPv}xCy%T9=!}Z5yH+h2^qoJj3a=>MTUq>CHmY0g)w<2SMmVDLpz|%@^=l0h!?f-;KXlOu ziFB2ymJAN1e!Pp}x&^+!RO&}N7Y zPrwaym_LyY0qOX8+!%;&0js0N5T?ejV~BCDe9ExCkMLKB0lV8)#~KfSwXHd+x-B)A zMKSOGa$m8E{1tl>y^2dMzQG>=dGz%?8+?62XHHUxF8l|3529i7s+_Z)51tFh1$zS4 zBFRFq-bYTB34LNZ`o#t}*g>1W?v;FG1z}|@W-Y}9s5C2s`LxE zSn?ivxFu~_F|K0cN!S3s1!RafotWQj)pD1Um@T+mgqhf8%nqAa)xLY4fQM&Uc|6j!7 z_P2Xk6KuyA>;1kZ+st^jv@v_Vcbg6Sg0pyV^a`Y64V`YxsQAC}k(Y+jYsVtByyrX5 z&&F+f1>n62lvL}EW=vuW5Pn`nRoD32A?*ix&Wfzno#jN+i6e*fxm+=Ah^IT z6O9Z;**wZdTJ7_YMy1|9#5;car$9WI#U*`TZ#!F>b?z4k?w1>oJR#nsM*hEnEu+Vn zZo>oh;j%PB&5Jq>?6bom;x1U#VfB>cR|{xGB4TE>Ld2KhXS#(s$R97W@!qf1gBo!H zn#z*#Zh^JfvE;5RG$T2uD$^~JF9oP{1!yX}vTJQ}zaL4XFZmAIyf?cq+eJTh7?mHA zcQ9AH#YT_6Z9+($40nKIyn=|+vR+FyR>hapM`xzO$ss%%`xwaz@IyqaaQ){JI73W{ zzBMz~NpkS(2_#}n-QROBGOl;A^5yg8zhVDha|s3XAC|0Q`zMwd9tdcQ1qg`Z|6n0B zoUL5V{vQW1qV46fA&K#`TTslQ(;B1+*qbnIc1n(d8(g6kuOYkgR8gTKX46C^R^lew zp$d5MtM3Nq#<3l9s`))!{PCB^|MpA<@*fAVM#>Oro!9#dLF>-|p z+qM?BsdJt(#{*>+Pf`Ck2*ux$L|GFHc@3pcbS>AC5x1+kI^{o(IY$lK_WiuJ9^9gY z*{F62&tQP~O#8)wgZO7&v2m}E%t2}qd)Br|bU%A_kEM36-_VXYZX z4I|z*W?D)?ob|3;!HHx)YUEGS=#bPB5b&(J?1WMLHt(}_{ZXKQpcccZUV0NzO zhF7KVTmyX~3kAR#rTkg*2sQ=fb-`k$&j!SPl!=8eSsXS9gc6D5-TBq>c1D9Fj6zrT z7a8x|EsCCjiaU-X&(Gx9Fc)Eo8_J7Xo(a*6L;}a1C`m&{z!W3Dz9YpV?eHq@8|{%T zu<99cMq-gp1b1N>F)oeG$1t@C6PQVnOba1ASJ@*^oo!v8bM9_j@ry@YG3Bk&%LWlJhYliStH6&B)hm)0UhCD>}zHV6v zDu878TSRA-7M!`B2kYf&KT0?d5*vpd`^=&X-n6Z#P}fwQP%4(6YjOI9>Qgo0Z;-tK zbCTaSL2(EFxXOein_VvtK_xkM+)R=Ylf9*ZLVFjen!utr-8}FS%C#=;#xS=UWJq-9 z=!hcALSS<3SnR5xMgk-bCgjSqtIFku<;qDdEKzVWXqYBxZS`TyvlM8I>Z3AnTMZ+& zh|I?v)>&b}(-O;HFk9QLUN4V{Ckr^M7tT*F;X3laJjoTa3V0QO2)3S2KMl2bD$|k zh9rhyfNoJ@j0*e);8esY-|jb51UQiUHOVhYaNg_SM$^hXxF=M*wdICYL2=BkGPce~ zS6C}o`cGl-2@}==E_m0&`Y=uPOq-}33hP^4iDNExNkn3!a}r;}T(+Bhm?tJWglCNS zkL4^Qm|5+GBZZ4{8g47DiBC(1TR~YF;uEy6_sl_~yiNCC!WRMAA18jQJyKZDz3wMRib+Ukp+( z-nxQqB4Ne5M900QbwqDA4u~?4EZ~HK;51k!%?BYxNVRpoFVU+Rao|1PBAw2>2{X~Q zpTHlmt>(}WsC8(FXj%So!HnKKmg@U2egVAyh=%knUx}mG zBmKh$ETadJVQVT_BWN)Eejb6Wwm6z^(01sFlbueiDEheo12HmQZnq{Pvqi^LH=anY0M4(e{k98o2~yhI!7h#DfR5G}6KKm?*;c1`xqvpY(-y7f}flz?QHp-!oW zz*R5dkY8cP(YqjI%2_VXs}ut$dyYWMxf&Sc-?X9PP&1sr0-UAi!)I=Rz^$7XpG=52 zPdDV#ofl&;gnThhWXqFut=RcKY)W8*#Au}-$-X~Ky<8-&F_5HMxXyl zXgW#?V-S?3{|xN;6jGS2hb_a2hI;>qh^Yi=O9xK`F0X#?8I;qH0Gasl55;miQPh15 zA57t|DLn0w`CEO*TR5psCYz4(Tyx+ zG;`F$6A^bh;Sz?{!Qt#(=b?m91WYh89%`uRfa%nOQ4~RyCnU;&;|qrQXE1GytB*Z< zCY{jxX;bg`fvhHa)O3&%l8H-*KI#W!aNMC(WGDG~0b}GxN5$7m;HygmVU!}SJ!CO0 zPz8(p$-U^f8_9UTS+DC?5`8$-gzdWt(A&x|V;sC&FmRq%9%H>hiJ5s$lBJw@7f|RRir- z;ziTWRpCjJa#?m=L>@x#7NbSVq4^|`)ccOu&Jj7NwQaaFNjFQCKYp~kN{%R)1i8rr zPa<((v@lJlzsQ?3@zpxvw{!$x_d%|q`qiwyGh4f($d|O<+q%wIKIwNw|G2EeZ6WRG zZW|JBhnIbVv6$bQoWAqZyV{!HxSW{H{;3{q1Hr3OT`LpKld6+`hjT^L&TuG(deyJH zPOsqlGpzPK`m3cUR2bbTiu_Prd-_(mtZ&R1$u9espq)gR)su=~kR2gUByknXA!Y^= zHjEFd#x$80Cp`~f1`%?Law>sYy1{=7-ln@yPoZ5mPhd%PV>PSY{?>u4wf@kq{vhHsrBZ!oiIQJU=vSzc?jitzQE z&HvC5-7CS>SD7=4EvsVP4yswz-JU^S^g3d3oo*^Lqj8H44>Zi_f>KpO9dCbD~!6i)#?>QRILdx?4Y{(QvjH?G{n@^PQTa zwrKzsTM@IBz8TYq_;@!7VaE=LO29W9uk zRWpd5Z?`g@Gg#-D15IZv5@N>AV*^=#61!Koy?w1kaCfOV!9YTBV~_iBG{JRw+DZf7 zt@Qa3u(M3pfeMY&>t`Sd`I;@A>8mZ3xo>4n;l7K?duyw2ZPt?5E_4QDYE$v|v9tQh zPy7h{3wr~5rf^%tL5k)|iz5;Judq7hQwVVld|xgNx$iW51P-<-tQ;|jRGTJHO<2yRw4ShY%4Bq&ilQbZWi;CHMn)fIBNw53fJ&{uBtMAGFXKdp5Fu(% zxU5D*wfpM*0hhcrQq(nYZy1Jil<-so(daL-qmIgKf2@OA0p^heVPf2T*u#SMaqN#H z)j{~%dZxbD>sEo<9e~SH3OvIzI?}KO+LHaVLk_6B_=Fw>cn;O@MYf`p(JVGo>_|*g z$pb}TypI@;G3zE0ejl}R1NEQp75jd(f^az1sdr<8_!b7zWz{)W9TuBXd~q1R3h`Tv zjoC{QyIsaPqUXz{*Hmf=rQO-fiy~Foym|>XrG7>wKRw(hYrpzv>&$FE_6W9YgDF-$ zIf0Doaq|+GVvmKpWdW|y-)5^_J9qRZmg^@SHn=C4ex3+vAOfn#Sk)&JSpCtp@Lw8A zw>$~THXw4f^;xe$7j&cvQ=HcXs)6tpu0b329f3YKDaNYS1-5o;&8DV#wSbS~H7rD* zCZ>qZ63-8!8=;RSR(jLuo&(ud1-&>wV_N9HAWVpw_`HQ6fv><0dEt;ZirtBB-(A}g z%nz%|W3^Nxm<0}IeV2IZAo}Y|sR2N@{JhuhDU!1~)U$K}3`wgEzGWRIpeo#NDfzZ0 zS!h#3FP9f<*}nSyCl#U$hR{6<+!C9j_u!-9A;Q$OXv#X4M==pOy+5G;wacQ>MHP}H zcpG1Z1_FZor%Oxp?{``MwArnU-CWK7XM^@y+sY=1K6oC* zu9+f+UTTCb+E+7)CdMKfZM+Q4pyTl9Cd_T|9ik5I$$S#lYs+U%-$BW0aQkZp9d#L=my4ygCmJ5w}+3 z$403!wApCNi0jHnc*S53E#r!Cy;-8rA}$qH>~rv%V#W|wkv_?)B0=o;VkslAj*~K_Yh4`{$yITNX|o?=8G|`C!wUy- zNXm%MEHn$948|}N^{u6haL`=xq0}L+kq(m%Jj1O>JuwjN`@Ndaygr7i)tfJg~v z{5XnCQ&Utv0W8F3Rs^r~lDB1A>^RAz4FXqTXnCid-0h)I6`Ud-synjb_FQHNy6lSJ zkYJc*B1~kCu*{Zcl9O_>}T+Kz-9K+ zX0a8hpkDX1gs%a@(K{pr<0-Eica^{YZhsIPfp!(tg>|5vbhlMutS^M2kA+Y7EpLm9 z(>&gO;Qec|l@}2Y^J=QPDDFWq$R^%*^8s$l>ucZBFku#65S!827i%MXaUh@7d_Qd^YMZUv_ z$!@UA7`EgZ-_)1o3*9YPcsxZAu1|W9v~S8%3YsW<#QmG=)p}?FnBS339Z%nborP;4 zQ@?m95-6$$BH7BUJxQ@PtJHAoh((OmRl)XEofj)zRC~ahg{uA2R zn#UqP`?z1wyH60dR*of!-62LSId-p7@F(^ zs{M6tKgT?d8w1NHD;>NWI!(thdn?$T=RXqyUPS7?e@xy!O&x9(Gk$IDjK6_&hMEx* zT^>pPU5p$n5-R1D5!nDFdu1u+HS&`^;Kb7z7pW4vbvr``PNdMLeE-dn{=KJkrB&t z2=gpJbNYNnB4k%n<4hX2GxMV*BS|@$bex2F^(DS(M-F*7jQ}6o5k64u`|URj@zjI* z24}@rX#Hcj`>l?Jz}S+uMR_X)xOI&@yY`;K&xj!z`Xd=xsG~~)l7ygXr3Js%1E;QV zK=43CW2_V%a}txO5!MXXGwXm+zsA=pNypvpq_U`Qtfliu{txR3Ex^iz&88nAV@1rn zk4V|phv#RE-+kiBu`MB`I@QX_D>`pFg*iBM>kZ6 zr=v*(3CT?D;@UQ{n}RVc-ZF~HW2l^M-CvLE8sa#TsV!$>!bkRw@pAhXO-bPQM-jYV z9(TR5gkSA-`yt)s8%Sm`a>-g$Cw5N+UdPu)PkpIRNCRw@7slgxVh8PR*k!pGndpxr zyh;rywI`}6%t9(p=ld8u;u~Fyxh2JvRL5#2zl%-J>aO;2fi-+FP4R6jFdQJvL*B+! zk1SDkZJ@+Tv`fXM#sxCKxZ{|IQ+YRwmk6D!kk_kD)UHb!uTp~QTyH+0-xqRf&{w}y zo1MtV(1XQeXs@$H`$}IQUV~nD|3KFp<#VqZ;j{yf-5|YC3R!9*m4bH#TEOfKL;mt8 z+$m}fE~TFhHkP-82*_Em*1%D?$Z8kSd7(mEN&VF z64%>Rv5X{MlUwx+XSe#Uop)h(IdxF6SC82@$qxdzDP`?loi5CtPl4EMC9mN2WnFH& zz0jnvjCaeA>APd1HF|T7VOr1@Ow3nZ%dt03lwmzMb+?zR$BogcRfge~u;kUX{#&nl z%tiyIS_^GDTQ0KZB-4f#&Z`o}F9xqF7#4=s-I5Jw#LNr>d{`BZv~57VuBF@V=R!Lg z9*N{#QEjScn(%zi`f7FmYDnySRR8L1hx>?kXNhlPgpZsqz-r$oUZK_(`vLR)skEhB z#^re(mA2#Z4mP61i>cyVRz8Mw2+b#yew2YvD*6q~1Kb;V(Utew z0y$^6M+r__?@W3EAJ0eJ&yHvDN|sq}M_?q3@Lp-R?ScEzU=fxqQf*@A9Yj7mU3`5kUorh$C$fDaS7cR#digijSv8WSgd>tORc&6vcHl)!5&gGB(|% zn08F|^p}T|f8DeGcw(~Zre-q9jRj13nBIu;EtLBMzUQH?x-}#1Pnz`8s27P`Ixp&G zwAh9_nb%t2as8~No)>*OOlo#3d1AdXh}UdEopv6)ZQp*SeZ$WK^%}hl&%15=25%MD zd!&v*5lXR@Li(WZqvLa!@l%HCP+j42uFq0b1*w|J#;Hq07ix){98EDM{ z`|HHwKNVpTKgNZY-3hu2*Cs9;8SSj^3c4E?qs(!_nrH|8TC9^9t%q3Le`A%KL>4M1 z@&{aChs@aoH@zbhIb>KGceP^?EVo977DO{r-JwlWq{yNl&wQ!szqr$R)q+=iE_(z1 z#S|V(%8ID3nAyGjV+xJ_F@?nc))WeRxtgi}Gw1Q2vHh~PjmL&0%GZs75)UB?9t)PE zK81WwlF(Xq2!J%o)7Sj5C0r=_$qy@N7LH`dYQOY_23{<9M-Rc1l z1Q&u1lIT~glb`_7QBUL<&CnmGVJEx*;vTA4UkBPsB}vMq+2aM=F8d|*%CJ2JW_c-p zV_B^M(r{hqH25!E@6?lU!Mnq^B&>UC?MNiNVbaXOS~!O+RBn7O*$&=9JRz4nC~j5e zWMly67*q0xPlq6iSv2djMB`L%q*_#Rw7UY62%& zl`tDgogh^s-%gW>s)jXECz0K4_5Kr&yu5qwK;w;?;zxu)2 zc2M5&JLYFrxW23MaP)@y(&>4^w@E$lpDF-l<{RQR^UJawc$pb~GQ~>1c0<-~Y=^=Q ztBIiR;9ns-%>eGzuI)6(4-LNUQlNBWzBEle5uWRdD4y6hyG-w?@`mVY402>C_i97E z3%U^cr(M@rNtXI*C>mImev9*dgn5Jl5uNV&S;o;xjiwO3C7jH6aO7JLs4<*e?KUGs zTm0GguQu84vK+$LbbEY}c87^!c-r1*dE2-xR2Xx3!o$Dk1I&~G%;$VM95aA2yC3=!|6I?qV2?Q|_HH{@b$s^>Xp^2F4&domSEMOa&ci z4DWZXRnA2py1e{n=(EX&r?1jSxER~m;kUH#d`PsuE7qfQU25&R$vW^7Q0RR#^)e(_;#mrR-aMrk0b{2jyc#La6Emg=_83ip z_!B2nF<=XN!>Z^{E+HmPF-AJ5wOVT>a9ZNfi+9fFH!#Q^K~b&WXS+TaCR|X0hz%&Y z5RGG`yD}uP5ePdnmdMW$q0a_BKB}swiBACEiH#GnVbyeQ*NkCJ899Vw4zZ692`m$& zF&m-{%IGXm{VN2oq?}T5hXK?x#6^}k^Gip%nr|f{8WPY1hQ0ci_&fgUAhZk*DLxBL zUJ6=wMgxLb!s&?t;d=@L_dN27z{)EVW1=s`&^!6AG^T#v?|V)Do=s?lY^HL}quvis z;pZ>^S;w-JEN#nVJ|%vzEN#hD+ewo5EPbZ~?8$g}s44KdUaG9U*qd>E<=ov2iV<6r zL3)!cYALv)FHr)Rx$LD9X}p4xNx$6Dl*UXUr#T}4+Nm^?5CSPdcn8pWYQK@x3JQ)_ z%u9!BG^j(~!k5<|5As*pkxiv}RU+3(bc0RSnM(|`s&Wjd_>uYiJ)c)**v(FRvyj|LB-!guS*<|f6H8<9_2CExwVL0L3&f;6@!Uk1=CZ%pr4EVi+e6t;=SSS#7JShP ze1Am!K2N77XUxNdt+GRgvc@(>tQpPundJQA{-%CjDD)E4iJOs&yBPDJ{zQl8@WVSQ zmli|nm({-vr2G}z57OrYvN3{E5fvc@b+(9xQ2_R-tuppqbyNgIfW$=|loG-~ZWUpq z8=AEV)QPA(rurn%I0-w(3ul_$zUm3?8aI->9CE0rX53>K#BqT!!Nv4NBfv$2=c zeSdU}jsbWPS+g5Ka9O`1#s<1)=IFfQ*_(<1lGHdo!Z3DXh87nNV`2&4(kc-8NVK7} zCy3t@UJyDBn>a0pL;=~_6k{6HMDC=<#So8+G}-NxBvmj6ZBUN(iAjIzitmi`Z+)sH zRc`KqOkBNKADd?=DW#{Jp_Rd#i!kWeD6e3LpyP|B*;$qn?k{VtAt51+)dHA5NV!ta zlw+uc?{gC>;dV{2hH*2GTh)(Z#D@ zKXUR2Rez>NFr+&2q4s`O z(ttRgP`3#P>Jv)InfgA-{pvV0%|S^T`+JA1qHla@@WlOzN%g0z0a~H(yR4bG=|fQe zl!)Qi=mM$Wjor^OaW8aF>tMruJJXhM=ulwu9L-3-shbMFES3&yYl+Q0q(*OrUn%K{YQZR5#woe&%SN0-<5=kiI zOj`G*vaj)in1fH+fR|Z}2%4pI1=0Ta=MED}uh85+vQn9YvRY9%y)RTLhF;-Hv%K_6 zo!VLG(kHvXa^crio^^rhxLO@uw{Es7kasINa4Tu&qlRo4eg6z&o;TgEdE_FBnpG6I zq5{|0!sV6-MN)cuPS1&bpW;7qx6#L^O=73bP7gWc>E|t)d<;sNZ;dSCYN_zp@Atsb zJjboY5rSKcgZCqxx0q(2UdLx`Yc*Dea#qEpWjP5l)7ft{_%I>!FeR#H9pP5>cu*Du z^3I6?r~135FZ>viHp!BuiuLAu4;xx~kZ7m#*S;tHo86lqg#Xn_{Ey+%amcW6EKwjJ zngC!Rl7H(OMQn{+T$Ig>O#gFMQ*~>Q!JD&&XNRu&-6?;y*-bgy?HMe>l z8O0{W*lI+wWkeM11u_-S&C1W$EG!TRk)Tr3qWk9A6?-}q0z?SF(43K_Bj9$Y_cqu^ zsQTwb3JC&p;gec&ZfJrGs^V~uRknGrU|$RiuD;1KHMV4rH+Qsoglzi26eo9f=<$p> zD?l8nd*aHPpulfBc%zcw%GS=#?#9;60Wxn$zhW8c`E=hE4LrmWByhG$;VevFGQ=xY z{4vIID|Gi>i2-NKiaj9$_5#vLt5gX|A%s-7G`%N)Jdh=uJmu+)5u1F@Ihvsy z8ho24v5xxb(`{9h4lz+R9Ch9dlsr>H3#N-~%_&QNmsAK35;Vs;aiFvmh~b1I3q%k+ z(OtHm#VJ%#B862T;Zmy9pdt#!y+lcZ9OM*_8Mw6y__e15BY9}r!kJL6MM-hZKP>?= zcRIkX#hNfAm5rKD4hMWWR0!a+gosd*z1@GLV#GcO4WKy+NtiIjn^6%Ia1d)owx}9_ zga8DhT6z%ZgAYNiLxrb+Ex5wKVJML^4#WIvw3+Jx^zVJ=fivAW=Me0d)=3>Ms(OIN&}tKjt~I94(Pvb{rD=} zgynYFA#epEaGkfoN8rBp2UXv>0W9dB-l>rSVF8Rhknmi0Tp{Ld=j{ypp=w^u=eH4e zT70_e_iZlCP77IHqq??k;Sd_T{m$yqd+h!~R0sp%wP0a z-Le5go^e?A+YllIe_yTug4nihK8D;8Aq`{y{sM5HwdfPHbn;+b>sPGq;O{j&^t%T| z1|A8Kp7q<^y5A){_ir*5tKU{Y1pWdn@m;n5+#5Fv3m5rnhI0EMVSwSa@16-3x_l%}AdKC71c-IXAmqeIJ%763`-gG~ zqxa#x>BuAqp*ncxb%g5$=YrVR_8Pt}3Lk&_b!?7S=z%@;Ejp}vJ#hQkF7D6nwilj~ z;_=Jj?2QIk_iPnb!E=8I+1%R&vLN&oT1;e(JtGc+_H^3sz`&VLdEeKX2=gEyk9PtO&DMTqn7-c%&T0yp8#a zZKp$0p^D5!Qh&$O`0{$i9yYuy2#`HEKQ+WG=!;pz0vmR734N;WaL2X{2DI?!n-imZwhR+0e3nH`JUvarC@Lp2%4ogb_U?i60knH`@zf=0%8 z+W`FiL%0v3pAC7Mu+0If*d@&1w-E>Dx;Q=7jxu z+I_1ii}Lp#lq`pV1fyji2`X{aVv$j2K%B5N23y`xrKLyVr@X@^)=+lQ5d|*A6a^sr z#8Z!;1F9MJwdVy?5|vMXNuE3Cj`1+6)?2VbT=R`lH!_J2oV#GLSAk6qrd` zNptN?ouem+?%uSE*}HZpRuTNnx z__z+1mIId7u|yZH;j3pYm7L2cELALy#1V9`aVZSbSJVi@ z^a|R_FDWS83oArRY=RchWiHf)Cd(U#fO#sCh`91%BX&K7RRbjIQh6tQE*bordgNt; zAweH_!h<@or@>yM*mM6{hvb!C81_Nnm!Io{rmInWh9}5W0X;e3cq}ra z(7oGXC-}yB@ZgkN(tO&f3M_K!L@Ll{PYfktBs>H~A~ucomoQW!uv7kkyKuExJO;k) zptKprFwV>n+%r|)Alb-xcolc2v^M|Koc)s-c`cexcs5{)Mw7B)-#8h)0x{JK`k&Qz zfE{88{0dH3>}s1WdzNQQgSAgYI0OPbkY0e?3IPTTB85G$HwB6Ve#fqW*BYtwhN#t$ zRQ4CraLx=Fa9w;XWzqWQnj-=!6h+3q+HXV=V`>PZ{bi`a%rD1S6htU8r(nX{xxWtc zI;iI; z7(u@IC=ywh4%=964S$3AC@-J0~~4 z7)2MvG&}g* z2k#Rtkd9e_-d4XJAR7U&;uQAtgG};MT)hjfdxQsnCE^xAH3p`Iq{Z_?riFAUBCLyq zxx;B7MD~J;b;YSJ^OF)Bc26P)U}K48p)s8a47CGyTcQ>7!29#3&li-WrplL8?%#Vog$rZl?mXne35^m6fn#dy_{on-^queRh+a0ip=ATTB9;m z0&3HCh^AYa(?P4=!jiZP5n`bJ&V;4j>Jn-_onNTa;Q?HSd#uAVIkw==&^q@Fh6z z0J_0BEsTp0y9PR@n;`~;ZnZtXhM)MSUl{ROmNlYb8?oT`ZlHlsb^?C|4vO%EvfaUA zVK~`E09Z~dgdZ3#pv3!*mQ?3%5@cJ?}s6;{m9~MMB|}Sn_uEo zOG@@B2ws#*DmwVgB{VjJki?T+Oi0F@=&LI*+btL@yZ>uvl3ZAPqC%OLS&>+`V&#%( zzYviAMmp7e3hdEY%Qv!JBrZ2@85WQazE}Ym6}Lr=aePN2B=rWf2aVG$0S}ZqEFgVc zePR}8DP;c?tjFJUlpwZc$i`XUx@|#x&QERkS|sSv|5K_`HnVRi74sEhZ=;nXGOwrr zA<%2baBX)>(G0x+NeRLFb#Jvlf#iAexagb-xjm#I)3tp`(93J-!}G1vXp;H$w}A`i zO5oZ335c`20|t#@IY#fGxIDvvNM|#aRABmEY;C$EN>~LJ zr;}5RsslIT0N)Q6hDnUasy2pUlO1*5Hdn>XuQX3k$p}8)2hes51dxhrR#-yj8s%UYNILN*kp)Ha|I- zt7w_r)0t|;bJTE*7d$o4!=;ST=tXm@RZvFe03cKDgIW6K_ryWWBCx(z=bi#Z-92-SoH$7WK9aU-gGJ9g*X`Ea|)LSh&f}I zge$}E704QtP82DVzB+a_6f<~LP(P}G;i}IP*OF0k11%0C~ z!krCQ1z7vb?kaW#1G}WgOZXucSy{y|Q4WdNQ`S>jFgDj{RLkkRdL9?U@o^zk_tB$s z?Y8W839*@-5+JL|gbUe{5Q9TVcq^ET1$Cinaed$^8z*Xgcjko7N8Gjn^(?vpQj}~! zyoi%ZWiuf0k+nCBpk}d4;ku(uLlj}gA!W`ugH61Rx^M1V`1vn7qC{N|@brjrF>l93 zhuF>jM$sf<$N6ki_N+PlSuwqWov->2sdFBDW63Jh;MH0<_g_zI0bnSV5ne~5L3|CMIuoia-tGoJKN zFYTK}%aL^x$Nhkn-+sj%NHyha^3d;U;~;c67f`P&#G?kJJRA4@hO0RFX9}rIwje6~ zQ7vxCv+C`~?0^1Ofe?SO4vuWNc~es9wGDP0(?wk^4gmQwf< zpseMWoPc$mavc!DaBh<;AMHC{g$s8M)oOQ~!vse=N+gKieR9qH6M`$z-yV%!N&m(O z@r$GB`3xj1AV1j1y;pH9%j}6hC1R``g_(BOlegIqce)_JF8JeqiYLDiBTo}KY?mQf zL!=C=N0(AJqLkZX`*(8?`1yf4hOAM>jC#tv`z5WcQKPP&x;$e#W3xYsww{V`#wgj; z^M=cZ)HpD`24cxdU;Fk92v>Nsa<;v_EvioB{MX}&X5#XRxt)NqSiup@%_z0c+C}kT zEyhixl&wG9VnX+s=Z8QrAxu}5upN%y#L?Dm!)%8MP1-2Sf~H3R4h$1PwWR(AzxWr6 z!|!JP-#0VsBqG4`!ZBELc;~#bnXx&qwKx7+1e8qHH|*SGnFtqr9#Z7seC;AwpcQGL@(QxPGE=mn+e6i4m&=vY;RH9LIgEtF`C zy_Lq!HAuS6oq~lwn_Y4-TNnhwDuUnmyFG=A9)8mIgkAKa5&h}$^667zD#P4Z&z^XE zo3IV+Gm^*S@ZS2tbPT?`<_IIYh1=0!cnn+N6>}$f+63;08{f_;_Xe*X--;dH_S|3S zi!D2fA0%8Sbe7P1;`SEescK?5U_U6E-AN@ZS=R1tz1V3x%XMjrQGoncU(ad65s#TR zHz-5}&f%I-s4%028^u~k%mhMB=;rl+OQAAZ=TU0#3Y9LxG6|ta|9U0HipO~2#A1@| zAv1pJFcC<~tOP49g&4oME2f_m4_+gCRCc|LA7WTm6aH8cCU52H$9y1*!Sc*f>J@1( zOT{v6Cc|+QHLdv|_byB7CVD?T3I#Xhc-p(A1(ThL<=$^edy!9!Tg{fNli`WAcF%Oj z?cIEJyVd74BX3!ublwE6jnHih6mizHAmL!X&tBX6c}eyv$K0%D37aY|xH!$0y8-s$ zR+g|UjI9-y1d38^7PxEb`wYYMX@c*>*79$HDeHE^{}5Vzp7>@s<5Md&uHLK$KRmSC zc(}j0@=s`Pb|0$FF>4l(vtkEPvg5qtRLtCw#8PBVsW!v=BBxl6&hJBJnxTNR8EYoU zL<_(CA^!vKK?amEmNMubS`=@ev4;+C5$?Ju0@b{VO0h1Rf>qc^U#5OKXln8 z713h39I3d5{Iwd_dI9H+-ARav&+v+TB|zJ!Vw+$BQD%KXjx+P;v5c$;dPExIZOe01 zM6mI=`M}G%mAE4!h;X%(az${&%w~#3$VPq^>eSZ+bh#bpS)GEUW7C^_0WZp3aLW8* zSl{OATtsV6o6ssHe|@-p&ab{-8}CzRhaqg;?Xq{xXEo=pnek0Ce+tZg_OY#L*ep6( z#3<=5+Z)GwI+005Lba$NnT&I17k%zNq>hnMXC)2+KM5~8K#bFrmpd7c%nVGaJPof- zbbCiPZjJ4llzE9$K7PRJyf<|^K}tu1Bq<&BGkjs}j>MfLU3zuNu=jg zrP)44ZRTi60H>nZ==?x+zPSnPaa+|;jbNxMNaHO^8Ff+kpas#SNC$nUkgfMm^Db2& z8c!DrUIk+RlcM7y4s0w{7?s{qT|@TAlA`4Nj~pqXMlb#Noctn!czMyYz@ zBuqYaD3<3mJ|B$tk2#vUTC_OUU>vhyJ4_6#%Ij44M_ z+%+ltsC-?bxwU1403GF?6}Sl2n&)%5Hy33twH+mb?>O$c*j3e1G?p!|JpPL9WiG3t z_4egl^-kTCPfb~5x8s*LPJ1d|+1I3nS*99l88$^?={)GAYJ>j%OlpjKpfV6xf3TfH z4L)U5yUh?1I10McQMf068eAs=={Lf=5O1;;vXXU|$5~BX{aW<~RUROI6p9d2!V|um zp}fXK0^jcBx0~4v+u!|&-E`lHx({nTw3RTbI=uhE*Es}<0&`ioZQHi{wQbwBZQHhO z+qSLOwrzXfKbx7&%sPvtQk6>X%{ku@G93Qnfp>%^zo~_Xj@a}3?bK&Bs2k|91&V*t z?-#c%j%gRwa_+e~6D2HzZ_|RL>-R2YUq&yYDiXUuvIPZGwEXB8i^_OT%MZ^TC!dBP zTd1lFQ;B6NIGoJ1a^bFDK0n!RoD$!WWLBqwLuB{R$E`;Bw`N;M9%A=pqpL>1Yi>75 zGP+Ab>^lz*ylyjSwssZvHOjyc<2Jh)Ok1W=C(xw#wWZ+F&git9cZ-^nip zFf%Y{f~PuJ>}h@nO3JMi-Rh5v_ojA@yhc>rVPtfV?lc5?{(ZJs7xD|bYiIA5a(FYt zTx|)}d3b9){$~z+o_s^My_8+7to@0aQ?u~hRYp#YoH5N;p>%L1`PND_3b>J_njvO6 zzSW>~lGDiPTijF;$s?(l@7;`z9SPwd2$xSEk9f+~1Ovnlq%*SC0+NHYi(IFF^RO;n z13rM$GEF*nwNFsmQ7I9|Nq$ksOVMjAjkB#0^*AY27i6$Km+>AoPi}b_3~B?0d6YM( ze4y7@>fyrMw?g>@K~z|56sC9WrRl*0P?a^uCn^zuMR~#+3xO+#JWU9OJYX6%HuJ-$ zp)y_&aj&4sAiyfcIn@CRX;jT}cuq(?@E7RGe=cBT=%S#W1PM1teQO)O?|HeThJyeF zD`Zdx=Rs2vqnO^#W2QG!6rsk2)%zkUkhsB7#jW@9<1WJRkDsf5O$j8q>l6-SsT}N* zYeb7@p`It!NTo>^NwxCofbHYJJZG*=0%SAg-mX+wP;oSVlGXm1-nbJ~L})?Z30)VX zb^bwfce$2`c-DyMlaX@JOsz$YQ+92C5sr^2HFR%H4pc2!h85r$6(03ezw7CsG^4Wk z^4$h+&xiI1lbOXlSNr3>V!zq0j@psDCU4hnFn0V;M1Fm&*q5C})xjnim2D(Tp`s}w zbS}KGF5cOuHUZm7VAo2oxXzlEItOKvaeiF)STQjtK3+P2sGqVFXx81xmMr8XMbU?F zdrhpkvfrAB4=waKp~up5*%k_|#j_lLKhF+ya6#Th`r+kOIhgEikWfIOETyFC8Hn#S zq+{nSPnTYbKsUkc;J*aT7b4UxNUA0qhS*sn0;&gnFc_3sHCaHhV}-xPaY%p7cIqx2 z7h?A~WxGYNy^u6+!m(QG;BA2m%=#9*I0-ZfAC5s^#*>~Wn`!2|;xN^D>fZaWkae_v zkHi)XHzupUTAew?)4UV+|Y)YN+i#2u=~)|Qcs&2 zkHf?tV|4IX)ifL-x3h1uoN=&!56JXXMB1#DcUG(V@e!e~yMk^Ge!Jiuu-j>MG%i2v z&f<}+s#?iFSdkJ`S96|BoqM|-=lC>x5UL#;kc?2rByFkN<&9VoqpA&G&S6W1QgN6T z8M(|dVt>Qs2$h;fJlwh5+q%X|6+jF1r&iQu6UGXyDHvn6(hNFg=ha(s@TRx(ic?x9 zz6U#tI{`TV(C-96qjB*~UZn=(49S$^=(ox(>KOlr@PIcS#~JuN5ofkmvZH`;Bn9_dc#;^xS}pK_p(j#s z1OOwA1VhMFq5_CFY>+?_x;Sy|CJfDiTM%KMff+PtbN0eObs){s-Px+qE1@)}vP5R! zxud%p_b0?a6P3^b+ z(iqjxWsA!{jRFJWeSQ_R^``?}TXcXuq3WIrV@%)CB#Bx<+!)6}#>(j3I09Zh(vi@3 zj4(}{Fn@yPfG6HoP3%MNEr25D0GMr5khb3AOwu#;XhhZp)1cd9_nnLGwA)-ZjVE`G z_BYNecUo;3HV%VX(NJVW5Pg@as&Vi-&u(;BAy<~pn*;?CFY&q(!O`Xn%}|DJJj%-E4$vmBMo=@ ztDNMJ!O!W75X`0yXyV6Ew2RfU^H}8A=q+ zSQKa_4Q|m*cOd1hy-H*+&+=s}4HBryh(7v&n7vCuQ>ae!g*HesOMe8vQKo4R!l5&| za7!&37@nk-{4^@bZrh{KG`kPgs#e#ai!mg&bY84-EebBIMBSpz*b-uSA42>JOXMjX zWbPdw&2R7i2KOLcBR zS*E3^U$O+7Rf~QT9Iu_@9CT()tZo^)ipzAM|6%~P-m?!&(-DzI>|*RW-g9@|%1eIH z160BO5!%;&D5>T#X-W3fe)Uu|5mEBxb|;AJc~NLg$|}Zt-t+trF`nv-R4#}Xg%n=j z3*!(LovctQbxyM(dZMn?GB3oHwimK@Z?Pr9GP49=< zexjTR{pvc^hRo_g_1C41t$eLVsGtK0^MPu{;jyMUC$OCs`zNzY)vR6*RjIpX zWl7aQ!6qwlwWQYqw-sl;`?dIESmrz=q}Ou5{dtB$*n}c8P**Nw(WWOc&PHHPhFR)L zd!S2!o4iKfz?yq?rCBcTrP=}vIYF@tW_-wz0NB%uMns+r^UH#5#D}J1{oL+6fT*fj*%;<>5K+_{s1&}Nt+MI|S z#D<&M&AWtPEkXgJn*=EE%9$NnSsPN7y9OX;{(wTE28Rn+kST?;kcsuMrv0mB?RAIw zu*-|B?Ofzx%Dp~$AEaF*gTW9S;a0y#pKkCSz^<4|)bbD+;J}>Z zEJWS7DAg}#i_f%=5^LUWPy>o^aNmep(RnqRVGlqgWH41$qho zY3{z!9qxUigt@0o*b&*TL`y!Mn#UIDSrwM1A3n}{3qoD+#05OVoc^(ggk&m>4%X~_FS)sv~z z&A|#^Xs&9{tfIqq=it>1D9S?i*!sZUDF$p#R+00qTJmfn<$F6j>nbQEUj-4BERzHJ zfk|WfUc}#DIzt$KIN62`4&I`MF>v3F8vwa z!sEEK)d8=hqsAQ=&L!rkBcH)&yM04;7l{T)Sn_~c3nNsH;WY>C^m-?jqSAH+b`-he z7-KqqW1Gl&OIGnWT*TcPQ2VHga3+`a%p_xRy(jE&jp%IigXUoOhD<*yN=7AV_@11? zYcGL5X>#|RjU1di5((ZgcV_o7A^Ia~mjwr60wM<(4qnECabo5{>nK5VQ`@1tId$@@Bvq7R|9{5Cv9!pg<+h zJ?K&1vZ!hMKp4jt1vwvxS+srbV2_AwK}UBJ3BFkS@@eLgcV`n6>~k%Z#7K?@5wG*1 zGNZ`K%Hik-B?urY|6#~F!j@Fi#ECfKA{uz$wc;tGNjTx7y~^T@i8-os(+@7G#n~gX z9`j!<86~c$Qj9qK2|;G{%ObSAIkJ0-*^5kq;+90OW|)W)<6vsdN!^^+aJk2wLi(+Y zwVh@iQ5xbO*FUjj8sSLeVBpOsHi~v{D6DNXNe|j^;!lKoLvZF+qpu7#R2{`>Xcdyl zokoZDhALfHX|#UDLXt3Fu7>|%u!!sC#{$F9tGuMKh}YCP+@ipmJR4h zfcw_`O6@qo;W7J#b@REns1{9Obo&Zt&zY4VX2J8*0L~4wI~R z(r)Illir-1!CjcbRDsEEFeSOtHeBPBQ`Fi2hB4$BA=HOmzkXo4Aw**5U<&3u5qCRc z$c;ipp{fA?#WE7+MwMi%m6F`1JP0co8v=dR2bSVXR0tRq4(}*e+$}wpdMbb-dFPod zHW3sHc6HQLuRfa)Lk3m0%iJhkgbl0zDmj@%n4h5KR$?b)4`Stxl8@fANT(7n|Iwi= z-D{qRn-HGvft76#Y|>^wyYZrwdM{NW)nJo`wL%8&#C5AZ09RXzuhsU64Ius%V6>A( zmbd|sE7_*zmnkuO^p(|%1- zNQ0g`cWZ^PncO5YnR^#iRzq&(S8`(qU;Aof&Fl-Z4wit4Lu!I9iX} zv6y+IA>6)pip6?n`mKQKgqlceAYIjIY*K$BafusvoQ#|Q-3XWm8a7uhAQQY|W~RFf zwMb&y?Bu2)rPiU(Q8{_IPv?!rmxL=Ik`ooMtJnU3g}83YsI!HAAKfF}-f#Z8#mAc{ z(~cM3_X~R@(Ec&$05$9bU^m1Gt7sjZ0=)7Q9fLuoQ&w0in?&u)jMDB{{g&IX8oslp zM6dOc=-yq<}*OUZ>4~lBgQ1*Y2^y7#*LL4USTe7P`L%``fkQ(32vV*mG+D zBi#*EtwUJL*c|l%B$C#oRf#N6{$Y#E+b`)u$oBb~C^p?{NPpWYv3xzx-8T< z_am*gsl9OB-$G94nTXbHcbSNJPpK90N93x#m zF|`kyeRrR(Ji_w_D5lNX??8Hifss&vg5*yGA=BPQhr_T1t-*5Pm_Md9$pHn?t0eE; z=@wg-_Y_3*bl>*xEUIQIeYvMePb)hon>wp9fA5YW&M*MCb1=49sdBRu{wQ11p0}ou z*f~ZU<~!8l-Yx5{cpEU>(jreLF)78SY8mvSNbvbuDcX!^;}UC(Izewj{FR3(JhfW( zmVn=+8z3mGISj59UA1C`&cBJAnes}emA|GsU#(Tt+o<~2lvAsFKK4~mvd=sIxZdx& z>D##F>={tF)XylCS|!Acijr8_BV@*?P>JD$%t3xy1=3T=C>wBv1Haz!wOX~p{*+EQ zmS~P$mY49+Z6r>I)Nh;nefwbGNxQAG1eHh(*g=|gHtYYW9s z#x=63@rk536l;>>a z(;pLS`o(f~1RoGM{aQw!mWS!W#z1JIvcK-9(R&qFSNgLpSdsvoVP=%Tr+*{gFYE>Rw?(oaLg4EfM13$i~=?c{R^uNC`^4;LQ zfcF$_3!oQ8>;SUq8{qyM*{LdGyB2!A^jms&EMe0MiS@evcCGV)m~Q#HPCM~b|0yig zZArrQzyXz#Ll?OAgWm}A^3hwescYu+Sm)u~dhBUCMAtf|e>j5EeeJyU5$7@9yY{<6;j%gqG9R+o-?zZOC~KHZ_lol*j|bA;DN)iXX%pVz zcA08~ou}R4p!}764Zp~+QoJdm^c1H7R{0NwP!}REw0VXUY1LFAXuP>W?tSoHx&J#g8ZSM=)^nC=w!9WcQ3=K0d98b;gSr# zdL7iTbfijge{Vry?4mg`OQ3$@BiHe>WjX*{);F>|#G)}HzKAoUsSu7F5O@@j9uhUp z{PCFzxH>4{cQCZj&FMXinPrlVB(5emt_+${gYHrlPSB@puIB3dyoKX7VYJBXWrk~)=`HKyP?+FA?~f{jLb zgBXgqg#Qo|2=tdceHt{K-PepfqIv#X9YG?A%$HZFSs%sQGyNoOXncn`F5qdO()Z|r zO@y--T3`QSO=RlO-;rc3_-PUGj5@7Do5?I<@%o@0qQxrLpadktlmDw2-w z1gS3~;J0({0fK4D(TbASy@#z$qOEVe-vd!y>{(9Ng3d#rusgG`_5`>PXagZSb*Kru zA;!&5(Ebq!P1xab6dnZQ5f9WU7Z9?-`w)npdAIT?S+@`BGRKtc8GuW{XOAkQP)AW z+!`IepDu!}w1POByEV@nOdwkXJr9ryKM=9?^FtFU^;OYTk%GyeM61XsC%M-TdPy@^ zA{F1%LGc(2O2@6-e5JN%q{V>X-xVlhjWjxymnjptVDBPl$8?;qlfJuYn;xJ+DOc@> zuH!VMnwxw9pHM(|N4KfhM;Q@>ow=R|83j;qK@dt|P7W4I8r7{Q+kK84eLt$F7%k|F zK=cFWtlmTY9?GFiGsMi4w9JmZ$1PM=2Dji#kz-G>6)4P&$EduSnW%%fUIg_m%%~U- zc%Z@WY6x=QPTGxcZv!++nr+cO`mHr0J}af0(=4Uh+kBksSpGKU#TdVK+RBo|L)Enq zyA1pD8OXLvf^26^sm_JhO`=Wl#F~#;zbR$x?QBb2@MZQ@(p2H0x;Bv}_YhFeso_XF z*=j$|a2CKNm~xhczlFDLBDE2sbj^T%GM+NFvUNV-J+cezpn*A(f%oujA`MCcj7wmy zKAHWi^oKOKB!62~C7k+9u<~}YN4?;%;wB2giQ-5TM(Eo_jvMkDhg|giGTRB#XSX_4 zBQor=77w%JH!j(!7S7mGE~VIuRTY%0xR%|L9@hnTgw)&XzH>2|7({gM%Pf+Tn+EBFixiR#D@ZgBn_IfP7RR*yx^25n zA9T6pjx4cz71TDG$SduB7epU|e}KbgcIQ_*1g%f(xs=)6XVb$LL;T@WMS#RKZvJEH z9jtI1Es?!q;jolMlEI^J{8m32Os+`4Iv^zlcUlv{sSX{?Hcr!qYokM9hxw{36r0KEI(dgVHRpCI7wJ)(bQcZz`3 zu4!unqT0H={XZ86UNzWi97%eSTb^e?3Q)D;S-H6T1)mO#QesGp9BkyGh5-;9l^p;3 z8kKDS1L7Se!lZwe&E?WQ2nmzzpS;|C&&`i%mtuwObi#?N-HN#Ay zR)LSd2q{fuD#ZBqT%W}F>2BGYG2BU}Hlie*;nWAl=`h=f zyla=X1wrfF_5;a+|zH$r+c$K=p+)A(W`;RJTWJunTOb%1V z+A+yf6X*I3=qvqhdTzT91Ua8vsLQVOg~!SFFrZyeF~WM&Q=K3?^wm<(NK3|#9k4w} zgx5eZWP~|5&8#w!fkw2&x$nhQ^q@)`ea)bte)Nks5tsQR)g_k+f@HMHG{)T>9h1+M z8;edOG}=gXrc-s7SxJH980!aWJ^C{Tj?|$ZP|?6!u@HH z>~Bh`Jd2ooq(~bwD;A)U9a<8qGdw*0bPfkkZZi>jVWnVo$q7-YXPbm+Ye46DbpmvK zHsp16UUbRfus&|nPVLX5u{9bPkVw}mGeRoF#BM#2$yBaAj*UEt+j52Vq#hH&e zUh~PME2wzi!H_2?o(%<~P7UK{@|`sEadl1kU}HU}7%6}L*ZGx3vH1#nqXDw`;57{YbU*w!%=oiYbu|j(rabxdr8f#75B&nNFIY$bT zLD?^y$b1{BXbrcA&d3f4E+pN|~<%IwtSm~5g#uNh7k-|y@jjYncvFjAc6>YVv{|7^mhqQ7$(iH37oJ~yA zzHG;bB13d0A9{O^{xJE^;knF)9ebC!jcW15cui@2R`C30vXveJ`6Q>MVvYRy<0$IL z*h^}nJ}cXNu)eu>jG?ZjCux>|Z$O;?t<-IU*70(Rq|){DYGpONYP>pl5{F{r2fK)@ zRmsH>5W$>Zf&sM3k}W_>dx%kJA61m@(s@ZO(3})7)+YT5y)yXUxRIKrQUt{~{CyF= z%z1_Sinm+}<3Tm66H$S87nZ0+FH0(v3!m<0dHPkm#+#*`)=SlOwY&5-%TqZiDdk_l zQSwSVcg)0eHdx*QHLguUI^K-%TS!9Xawwy?PTEG@!&i7 z$bbB$STU@M5E#L63nA5`*Et~Hz|+7!EK0zowY5d+PQ*n3!LT5l^1D80Zs1UO7en1E>HqURmmBU z45kvYVVtyYCU?p@wwp6Ug$#J8FU?AP14|1!QJp(#p9D{0sSucc9x&8EBRm%((|GjR zx{}C~)ip++Riivb&h@tGZG^umL&0xQ2k^2s=j1cFl(-~{u*xB!-J24fR0*a$SGrc* zSEfiD#qN-RPQjEeql_YL(1CsE!&s(T{a``P0R-=T>JScBh>o(}huCle9?50`XO)?r z-uqeR1^mm7^z)tjzs+JbGqTy>oJzxv&KHFn*xf`hTzeOJ zwa*T=tQxL~B9icGfemVBNU3S@R1UtBQ&Qqq_P!GesX=Mik!-s6rE^Ry&dX&JW~Ox1 z!&cL8GkawV;S+2<8;~SYnQ9vtHI}T zLE|n5=mWe5*&ZUxq~=okW}dI7S(Fg4w?}EBrY|=tmvmfu&+Q+xV0!N-MeUB%)aTUg zztX-k7)Rc`KNWiP_tLN3Br#70DjxuoSo;{KVKG7>%Kzv{sfS|8wmxUOUyj<@Hkh>K zPvH(XKb+=|+W=s!?GL~`3>jNh(DCQ8s4`HOAG1=6+goYS(W%A**co;xn}tMn#!u~z z`#LRfFJBRXNg2~J#jCzVAiXNEL4;M=M}-~;_XARffZbD^_!mLylFh?#W;{63Hi9JC zi!nn!LL~KXOVIgD5X36IIHScJEMe3a3tSE{uY~y*NTOQ=u(ys?$TK5qEVy(U)8lly zWYZT6L|XKH5$U=dZAr$(I>b2L+##+Rl0`H0IVUN+9QWvGj{bD;PiZ+qg_i#m?v&wt z=<7`c##KzQ!0o>*`1~1d#v12{mo2c2=wzgi7H7x+YJH1)oh~&a1EO;}o zT|@{OW=G?1bBqYzwzg_twK4rF6kxGw55`KJ;c`^7#9IlXuq8OC=p31ktT(ECqnbTH zUiWxD3PHCy)f%uMK%EQ3iWTlu@XuOK(tlbO5w9`9E*P$$!m0x0>(~p@Q(PKzOJ{q* zb93?X5>-$uyDF>XOtDW_W=Yz@k3RLHr^Uy(8ij}Qs`6y-6FrD~y3O}`-*R24F$40G zV?$IT_7ovpFg*-v`bUPzrU&Rl2+TktdQy5YD)ERRkjAOtxILBn>>@KShm*|avPz`O zpfMGcK?J#tLXLTqmEnt%d=S^9AR424N&mh<0W|tLzUe`vW;D>TI_w8YMfVZcgGe_JI4?lRAp7VKV|3KTAa(ecvCi+(*XR~*nyeDvXh+n^nl zk6YGLiKfpnb?pn+uz!_QL2NlTobOATh&84%IEJdvXpDPR)H(sW`OY{5y7rR&J%ZG% zQxC?^yH)J}CecCR_SoXy;5N(Ywtm(E(e=o-q&(h108Ls9~jQq!7vxHW?6u3X;4+Y)-@${9+ynNqTU z#&om4E8&+lb^luj7<@BgcxI40X3q6v$Is12*Dw74a7F%;us0o^rFH}Z08sV^0D$=a z=8F997`baLExXNe)PFH@>9+ncIOUG4*S#d`Ba2A5P4T2D#fcbEBZefg#pjB}{E82q zTEDNkOz4i{vBnb)@+dX_B#ZVZ(;ePUwnN(gpf?xM-9)nXkE!yFM(aEitIV;GGDMB} z9s)n2ZpqU((5!OAqASe%SvJzpxn#x(3oKnyO}p{JeA`=Q-W^opX1=mJ-M-%+b9TCZ zuekT3y{FC-Dxygo#Dq}+^O{$XUE!b{6Y8^#xKW-Av2osL_ub=f*3>Tox~&|<+=L#T zGyX8K)9!)++aj4Yk8~Y}Bay`!Z*1FW;wCww-UFwBt8@jJ#Mr4d9t!p0){V|%#BYk# z=74^T`N(7ExN@n+xnziAA{>eXE>^1DBe%QHSk=cQI_9~>zODI<(WofyB9+dmH+Kn( zut))NiD=%loeV*zBw(K6r5mc@YNwE_Ib+Fn8ljv-b{o^um%A z6e8!|U8WKOEemx0c$D080IZ->>@km$_k;T4YbZhxuW5LgjC3pek0AV^-21PI9*vTR z;U*mQdNW8Xdm^=OfP^IbC?_@NJQ<9^h~Y^{slp7C2#oy;oU|ATl|aluI&k_R?o#=K zVie?Z=p(p;0tV4X*sNl~1B$WpQwUlS!Wy~M4)KES*PtXAdLel@yQFtM2XTC!z;66> zcKZcVABPh)w?6G~6VLAK_TT>OMS#(QqmcT?YzIgEOlHnfTXV>}ut0xa zBHWlTJ^A5T?{XB*It0*Vb^X|J-HYILfSAY4aS{vM4nr7daoimANLF+uM%9i+pFdac zmO7q7b=|33yB`J-ZQVdWIgAh93Rd&raPy=~e~fV;EGc&Tp+AJix*WiH_5fcZJlBHec_e{=MlV zaDH2%jYEvE;(%UnmD0iICi*)Zc>SYu#F~N8F64Y(!7%al2y^s3F@ts4VRar1xbYxb zz-xaOF1rS}{@{QMIxO{H50VuGZ4#r-V{wPxrY-dgeM6SS39i1DCCy{U%?_O8@eAbx zgR8;^*NzbrGErDv?GouIhcbwyd3U-R;8^o29)$D;T|n>$e9vb?b_MbZ390{ark-I4WSsoy{?A>Br@2gTw2p?3*+1Vjq> z_tke9Xz{CQfgd+AvK~6?S0u$9IHk+^37&=SX1!AM{;|Ej9s(t0Jm#dkhbVWf2BAnq z5CA;+hzF@Q$WgaQkwym;Tj5UfjgRxj0m8&S#Vz3J!k21lzqp(DDso?x|NR5hn~+x( zz|Zc=@df>kNtrx1s&!}Xvn9!Qs|=q5(p_mE^swJ&DK+#7Yc<1whQ4T35i_TkAZyc+ zM$(cKQ=*nVqG0tTN+GUPwcv=%LH9-X^B!Sq;3&EUv$bK;Dx;o2wy3?S0b}G0wv#yv zU1B;gCT3F1H#Js zkXX+}TiH>Ml5*zfw;?aSEYHtl=pCtK~RnA1~}KcGO808SG^ zur?3qrieP9fZ+^m2gDeTM-rnq3X8_Dus3`V0B9;9ge7GUL4>uYD&;7nVXyih2%p4$ zh!wY42_ujr%e%x!6Tv8(*0_QP4;~K+hgb)s20Ej%3Sek~*bxXa3Mnu^EI44Cms*Ov z!sH3FE4OlZBJS0aw)rL-GdQ-vLb9YxE%|yYsbSh=>>^@kIHXKV^vhhe_amwn!is~Q z%?(WF(gw;u{opm8&^eimogjZm=Iv=Fbp+aE%N;;cTB&qn1I%@Y&Zf51f2=vVWVNfB zwoAAZeY=BXRXd_4KsmpE}{I0{rGokUA7N9AH%3L+wP;f*$ zclv`TVX^SD&@G7m7&cump7;^3`vX!$Qs!e`U5@WS1v_q`TY@a3PW(x=TO=98%L-YG z7O)wy+-90#GgyRQZupUIPX<*MBbNH2GN2gd#FdLIB_pfI4n|F#K4eDE;WZfT+#~u^ z`PHK!T-denWC`dX(jd1&(hcu_u44$>v2y1gzkVoGC!q*Q&Y8DHT*N&=U8rODeDEn$ z0Oy^kq+lh4pqzCUsvWh%tCKQD)D|MVKp!lIxvT&4rbjTJo21YJ|8$N}Ue9Hn{Pq-N zXkB0~RT#Lj03K>cuJ%e5`%niiO}@Ozn%@wF3QI9ZvvV4g-)_W0jdi440vrYDPrOM6 zs@D|hJxTyn;G*SI3WmFogdlGTST>ZJkWT>W2|_&!oz z3o|@ER5uO(vimAXD|2y8J5Sk(?Aud?-(d;U`-cy(?!WY(#?3NyR z?Cn;2!KGIDdMS@Hyjgr0+xxR4H!f`KmZYq2eb*qcR%f1&8#9FXHM;TnfYG|0MEP

hoH3oTTlrql3GX@D9#i>fSXH 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�C=M0!g9)E2vXH5b!f% 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 )Qe(Jj)%EkZ>S&C>kE)bY2Z1W|D+E1)Od$Ck=d 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�za<({V3#ayyrs$SlT(p4WQPik~O$Y4L7a+ z-FKr)*B4Tm!h|)?u!+Mj8zm@+iEcA^*0Ft*bplluN3& zIpPi5^jM$#=0D7pjczZ+hmcJ+tSpvXNvkAZxh=U6VIab9O?iu9_|PivIRODYQyecmx-YrI9&#tKk-o zCNFEPVXp`A`WASr>Jg*)N?u;yaGR^A!RU|WF;H6YQnx1>_xpKB@;L_F_{QI3<_n}f z5ntZ|_@%2DE+r_g1po_1RkU3UKU>a~qBvTJk+w~ro3T_)lm{sEv!!yx#w!~m9I<03 zkY_XM{$L49h!ZB`$hQzv?@P` z)|IRfse0Y5*+IIsj;Saye%*&SLef4zro-QXky?KDFCdwi;hKJ{2Q1Ho7uLW`R9l+T zBvvr?Ia2Qf97bHr(yak|pEr|Plj=N1%Y6&M@w5tbDQGEI2s2BwQjPF$EPE{6j$%8+ z>`1TcF=Xjn>iX|_XE;GjC~ZsZ!<;Gu>jybiP6vd6U4ckW*J=V)Z-i1i8nJBJ!dU=n z|IF&g^A(l_){Vva_~t^HnJ7o7E{tZ~O|qbe1Kj^>NiLPS4{bs?)&tbp;e61094a@h zSs|9S1gXng78DPkiW#w=vl4#%Q$VL6-YH(?w87fsd?=yGc`97Iv%kS{o>Flm_=evQ z)CV^V;cA76RO!{%#J+wk0wp$od@#6%#*%hkpz3Z-VfyOT0Fke5#5L9gUA#MrhS@N*1mZ?r#Qz>*;O{~=XcguRuMAhGL z5y;`3A){4&YbAO-Jr<=V4!ru$+fPAT%>ja}I&>x+wKzJ)Q7=7zrk!Bi@5CIA|t< zAEfu`U5B`U!=#Bhe_+XZOhxltJB>t#Z2pO2g>MptM7m0_!@_BrNOS}^wdJ7g0$>HI6q*cp0=Su{}EM}(&pI*eJ;oD!?V0mTlh2X#V*=9q6NpSqFo zxmX6^@!vx()h->EgJ;WZ(}v+q=xtU%x7OK-d|t6SMNElwNb)HEHttT2L$P7agyC1k zw>e_%W9(#9oIl*HNv2O>0_{BWJ2M*n-?M1zS6!M!sSSqKo{tG{EZ2m%rZmpS27I3^vps+COCjm-5 zhatu5faiT;9F`Jf9;g2e^e=(^CkWn!IWsX8Ah4K#tN#DOlS$bD8hHP!xw%!7Q#3U&5*Snx71*;dh}j!pI7(i?zovJYZCn-c(+Z}M?7 zFpfu{R6if=>Y2l6VwdsiMO{PQ>z=Y z12ooT=%EG~jo=u!INeR+RN)vi13+I6-c%GV(onTVQBTH{{~-!F$QnfqFFsg~#@zA3 z4(0F}3u9~>6an|+?2dj}as^)5^%yI{>@tYx6hgl3r-gFd=U^Dg?ropwXJKdqdGf@r z=L};6=Fg1d+A9nig8`KN;j85d$4$jQj-6@YHxY(WHI+A>|`yt-2Xly1SxI{DF=U zRB)zu^Drk5coF+O-NIP&?HhRUv3xNb;h{mK-JwRIoEwug#y04|LTB%(BAlzn7rvOm zRW3X9Mto{1UL|?T6E@zFM+0={yL@M_ggVMBSrmM5-I!N8FG$~=-OIvzS4__AIZZ-q)^{5^lFz~g{@D)jT( zlHSmrMzqCVb(DK|N^)(?|23t2Z#P77d|&IUCn;^k0LUoUb$4xAxmBM;x6NIaeMCGw zH}j$Qn?I^1o7-&_&i$FXI?FNpNyn^1<8%ALaF5#&mmy>iKOXjhMZ8HhFI5lq#fK-Q-H6!FRz-=6%~2z3H3*X8aVs^B)2PnS17 z=ZDa*fBa>21iGw<_UZA;>Qc$-8+tB}F-7CCt;{p(>d-=Z<5qduKex=^?3LTnLXzn# znbjHocCqKe#i&wtU36D(cP2sME$gv)7A?W-ElaszB`(3-tSoTF1Dea*eS(5=8?e26 z(2VAXiP1dTy7Z%FYYF4-wxF6`0LH0<4++r`){_}iyBa<2czrq1!XKQ_Zo~hy<+=_Y ziMJBiEkcn8)%6GVdp`Gn7WaQFTU~J|ayxK8e$Yt#_(A$VTekk0oMkMXUH&bA=1^N3 zu1E+)AktZA@qzEGTr;+4Sm_rJrvMcPe%|S<5wFa25(P&Bm}ibQ|jH( zw?8IZBMGl<)SBAe#WxGM}COgTpKaA)dh8E5w$N8g?VJKGQ>7soSNB!8Xk?XPn2 zWhXSw?X2Q=4q@XDwhoT3a%IVh-wd-%hVtY`P6aYqza*~q>c`lwkQFmIPBVbRkAZ+0 zTXQshV$h}`B-`SG5H^qH z-p#4sGSIzwXt=+HYZ<|6z2+_u*yZiksw7?;(uZR3E-qdsRZ%Gp5GV!t48jXIev~-` zNK%?S2zh#7wx7Q?<1vyFy`Se)Cn&K8O+-y&kv2T{ANM4*HU6p~Qdsjs-vq)7(+_}T zrTKcr?E+4znx{qsc?_`LYRcZ<<>3ciYA z_QUY?yT1>6i2egp#Z2^wEXi3aKV0gLUI(Io7vG2RoJw3GirpISM43u#+%y+GbK%uh zOV$Yqb-T2}5pBujrJxeLiYkSnY`74X(7UR&s9n(rP3FsSILX@v@UQ1t8NKZHMyr|% zhu>&|7wkAbsFruqdu>d#Q}|rDBduYzujENGGrFfTCTK#8aG42HXFZTi}$u554#&Z$+eQ`gWZsfAt!Ot&?t{V(q+Yt#u{w zH32lBf>*<)7NdY0kW0{R3+LfE0w zcIZ#)hcM9+SHwQO;27a0%wL{yVWbskYAwUoNFFC-p2CBqG&N($ejXwq+r@3Y8Gn&B z#R^@hA|`XgR+BeNVN}8Uq6W&O#VgyQLVgDrkWS7iLf2hG%%{MNC>@OpRXTdkXBX&+ zwQ8gocr?k0M;BY*dGS`)fa4%V;89(BCg3Lc-mU0Mf8AFe>{Jsc|6Mk?pf%7(fy75P zYG~U$;hv)QqG&cTpSTI+AT?=Sf_HU8nAg5?wmRVM_5I0s7?lL5lbDY(_A*Z^QWKo| zB!&IlOp(dht5cy(-!qDJism#HLe+DWi4;a!07lEPbohDQHkP4Oc4SSc89u9GI3f4~ z=Cd$Gdk(=I#k7%u3f)NqH|v$+j1piW=LXfcjf{+PV1|SUjz$%?;a0PwCQPiAt^0Hb zs_`wO+jsu74#9l(a)1GabN9i8^i2hgLKyu1sW;X`&bA{Z)?B;`tC}K`a^1olQ)PM> zxi-Wl46^U4Qx#g8@)4_3b!aIq*PdZ3GQ6gDm0ch8>CYan5}iMK9gHDvL!B`9%H8KH zITvFSQKt#E_QUX|iYwBHXfPu1va%lIVtQbuJx~}y) z>klP!#Z0C;V(U}f$$V%VJ9XHJb14LVm3w^nFC+LK$lvoY-0;%Dq75a9h?SNIhNbvO zh^rOD2(fKiSC>Nvz}dc9jv6r=ohn`Bf8<7=+_NpdC~ls+JN2pqa$m?|6W=_K*SJHb zviuFV8voh~8`(Ujls0%L&q(I{f#Yl!tD+?DFr%kc-Z(rYx7sGHYkB;9@D!2JR2y6s zw7Vcsp&)}bW9NJCOB8xuEQfvDNEC~B`GH>_M0K2x(rpk&xT3CkUh>aTswm<-&=K~`_zs) zSuxRKIa3Crxc0)Wsf59mOLnvCNAYPp&J)7eRvzsMkxkD%UO`xSe{a_~;mMLU71R)7 z3Q+qzA#H02X{YT(tQF$2O$F`DK3aE^MH-9tR+wJR693*QO1_ug2K(FLrlmXyO(>xRpc53A*gL|@-8HbGsQYl=&LdiapTn& z&vOm?esxFCrG#Swa8r`lM+E`a5V+f*Vb}-||9A4)20JZL$H|}VQA&Moj0fGqG%A9S*JuVN1175Js+EGlZAEy@L2cu0=nhBS8FYp5 ztw9Bi1v@`Y?P0g-ILnDST-nV=YD}Ep1%@1Y94@pa<%mvBHRQ$^-I=|J*!-Yx)(!e> zMp007=`3EBf4`nWF@%>B40%>7zT!#NPHA&Vswd=O&Bq@3t8ZzOo?%6B?+_*?Ac*s(xsU`Vs)cS5gn%|?S zYgvB2r}dKT?!;3C!OgHfCQm|Ky2h+2-X}EX;Eq^jRtK3rn9~?;MG|O(`3L2^e%AzV zn6GSiGxIB5VYnN|uIab?(j5A41?t$cG78r4w;TpMH9OKCsV<2Jj@c3fqAiT2%!i8P zSVXJG`f?Rsiqxpru3x4qLEDL|PK;i9SCbFzmMW&}kD&@S8O=gUBQ?S@TALo}A_2Dj z--Px~L`&)|g`3Nz;{DBjd?jIL`nx7bwyz>OEmk-ttuH`w=B7)hQS9-U>8RT(srsh$ z+k|oygj>L=F?UI|Un1*+KEUS8>a&TGdcM$TZ0Obsw>({1_(KDg!-llQLssk_ye6z9 zCHPdsSR*EkLb_@X7gX3R$C&M9ITZ21tIYk;dKC_$RknEhGWa~Ol(a$I0V-GfceO@0 z=N5P#kiMSG>OYlp&8C)d6K8I7H*Uc5F;W5T=O zpNBZuAdqikZ%hbbuNU!|nFf3QyoxMsLUG(Y(rF+TA`WNW6)%j#M$fNrXsoSO2j$G7 zweU>0Q4kU7gR0oW>eVL)wDH6_ z>Z_qMa}o)ZfYL?6vWkq9x|(rgZSJ)n)I@5-+e_B{=87({FHwB~W1Tg|J#g9ET$VbW z#S^4PG=Nu$tc3T(3U6;)t_lMhs1}KXit!rCR@N3`yq~rJ(PhWm9IZUM@zXRSUyG91 znaVpeEq`h$KUJqLqAEKrg|;`GhQRhC6;j)ia-i1%ZzQ=eO+{G z*_}!$C0L+;z5bl`|4-|`fBq1s)_51>0Z@+`{Qvh4@juKk&FVj$0k@T&clC<{6K{>z z#HS<|?y#4-*+R)wLb~^qLeW(-;Y94Dq;s>o?RPrK38yO7Usfa0U~adUAkkpHZeCtq zqQ6KNA3#c*mL6HyDw`-N=~z1Cv(vt0TB+#rw7aXAWh4K$O&-1ugN+j=4G`DLO_r8vVEoX+%C0kFXH_{DU(wEut(z{A zH1}Lsel;?_sAI?$SJqQfwzcZJnIL9RZu8b(svIf$)#Y1K!EW4aiDjy4`s&-m+M|`S zoVDDccW7J5qP4QbKGW9}ZwXTrsEoR#tj9mwK;4+b!4@;{uGaC{_c46Jvw~f51(DzJ zVUy6H)k@`Ky6B>4tGRd_CUiqn$*yk&gY78-c7u5|Tm^OAEYH|MJMU9!J&mN>;|dD? z%*@Og#Mua!^X~6cNI!v3RhgEZO26U4*~F3~0p=OoVCkCsOYA<$!`T3~iy#c@>N5g3 zH`|w%LDA#_<(}vGw4Rz-m&4&(Y%)iDi@jR_vIwN6pjA5Gvame{QBJI5s;;6PkWX4+ z#pYTr%m&OM!Bo`MDLgzw`m6kEgMvQ1XXLl$Ihi_U%aM*3+ltzns^-GOE~7ASVwB3s zurpFSs2_SL$GjsR_O{ST65jL`u_s@oCGuMw4i$1>@DgF%0cWHLZ5IkO&vs@uNG9af zSa+^ijS{Lj=`R+2U<7btq@j6Lbi2Guia6LBI$&@xLz$kO2}~o!7LMI9wed1JF7!DR)#czPz#=9MZGZsZ( zzT9`i?)zdn1Jvu|;L;d|SKWD>BbE~rtw(W}Va!P)9p+ml|LABl?{9TPNQ%0n8^{_% zgB*UP3L-c;4XNmmjO^!|Kv0-aB=VS!io`prFss$aBm*k#8C_)7Q*r)EZm1HBBcw{{ z6zRZ-8}%PyfoTR~esC%#-J2)j580uTHEM+QLrwd{0qoYmop{OTjEqbqfYskAp$*ID7kQ9;7bpE6t%<|4+ahBO>2F<&cMqCR+EBul`AQC52gCJiUs*_r&p~Uyy}I+^oPLOox$H) zKFgC&QVimjjo8i2%LMUpcS{`=+HWxs79m#(F=eN3rmvSRiK9D-Hj)sCa1k7bLts%|~@=wQpU z;Mrj&Ybik4v;O;U=5UcTi96Qw6}(d_R%h`C+dm&KRI%j4#C<&I%O$&TcXFq1desqrZ62o$+6lj9I+ z*dv9O>ERwZ&lHj1If)4L)C9l?*WfF+pvfM{q0Z4|hJ@|EUv9ZT!__!`Z%%le2%4K+ z@NCWI$6eo6YZeSQ`ND7sCF3|`!DXE}_I}OL`k!;}s7ClRopoJv@{tGgp0NAro$vc% z`iR?~A&V6TsS|qJx@7tFs}pc^LijYKHeF`d;jS2N-{7P=vs0!Dc~xtO*Wmv!BpJ4-}I5^7+w9m*Xi-}N)uCs z{}uXt?=GNw5=8d9F7PuL+AJGn{P>rp`%!l?NpSl$Hig&mW^3{P`yg@ueic>%+@lBp zSvwT}+sg94#%4FG$=YvlB6h#4!+J>r*CxB!|8YaoEHkDz8K)VS^3@tcPOe)DCz_B8 zF8cP}R&c5wq6*@x`XK=u?sI?i$Km&VV`C#wZX(Jb0VQD`Re?mRB;H>oQz!IHaG$9c z$XWty)YZ&lVoGO!*yXWxQ(e?4LcOZaYGHTPvVUo93$VH*<;{mjM@Mh->vZ|c&m)ww zlvw7blox3n{-Cas_o&B#U7Gmq^{WBtXbrVOCcA9;y!vrar$s!Geq3b(n~}G1*%Y|L zT~#-Oi0|wuuwuQZ(sqziEcKKpSF1)u+DZ&Z6{EvaMLfG>{S-F%h{*Cr0*GR!QbKo2 zSt~X3NH$E-L%%R9p4U&nOX!b+YwPjiS!1Y4vlX&~>7t45bK0I=ulv@7A1&_>@$>4M}e zE4IN_JtyUW*aa}AZ3JO(SI=|k7wxs$~jsSq?%L>*{`4O6PCu-yTzp}eCg`p@T^SWMglF_DZki^j= zx3VS&UU50m8{TNenf7o^(Fy zb!-L&+E|eb?4HbfYz?k{=Y97{ga5FlZmX4tg|c+x0Jaoo{6M?fgHM_`N%z%2zsbcs z_sxfP8X}wYGi&o6sf$4MoPpXFf5|H)!)S3)S{EL?V^zgfMBf1@b{6k$j&}{WEWY&* zTAZm{aqLLs=)nDzok;wc%En1M(OwM|&Xx6v-U%<~-DZsqkMvkU|Dn%9AJ8;YR)($A zN2hd4U#-+4=k30ic10QWhGfe*uCqndNCGX6X4brU{u$1jklC2#pkfj}>^2059ZedM zfC4OE)%_|vkL}xs_}>oacYv!_Lk}OQL$wvBP^ldM^j)=Pvews6;OTdhzrHQ<=IM{a zNgIJRZ|uqWEf-yhE9;1!jw5`)=jWHuh}checuE>btJk3|#-d*BX{UN0cq(2xiO7U| zPG9r_?is#h6Z787+1zFS!xNkNo$$u8JV%Ax{%qfp!DE@8rw0$;)P!~E>C0UbZ7UF$ zgiZwrTN(%=!qY+zDX4L) z_9Q(-0=-v0`TjQfB)-4*Up9e%n#DqWlPaGqkn* z?+sbc|8B@4`@e=Pj(;;`F~Wk;F+t%-v5Kx)Djf7)$0Zq2xMlrE1dyhxlep2txq zbu!D;CYxhLbe6?~D*8@bV;P$oRZ;~zI6CNKK@ck1L3B6tyX_!L7u!1&GY`)Kev?(1 z=vI^^a#dM%D{|3i@yzWAAUj403;aGqXVyK8%7HCR(5K3tY5F?pDKZn>e#p`CU8dBe z!wJ-ZQl)(ilgVWVI0i~_Ql%i|DM7&YkfzwHWUt96V6)JKQya)*cNX}OVB3l%wTTAjZ@0Wzn><${t&lN;#$Gq0I=qB|Av|TnSUCvK)Vb#*XD! z^vL4bwjf4t9sJPx%Z5$Gn43RC6sGD{hYH`2syvnv53XUtQC(@2uvm!$S*yGb2T9$K z#mKugHYy%%^d$QzaJ}%HiIFB#F}$#{Xt}bywW4J*=5(GY#AO0SvPjD7a2VEsFTVIE zznL+nZgFBD!Jk@VKPFj2Y%pVVik(p7O}K@Ocy!AU9D*)TK7rNjV0MNs@F!FJM$$k^ zaQU0NU`FN5#C#n_?gvJF?dXjRWcZ5$ud2}E@_Sq zXiXWYt}$1Wdf=;A;N`GEn^9gfKWR%_b^fRbQV@tFu6r)JRg5q!&)eqUIyXi@mhP9{ z4p-CQYPKgv#{LbSYn|{Hu^9_7zAPk#W=vAbujrJ1G1S=V3#e#@_L(FW$f6_QD zA*J{M6zGaDGo5&JD2mUj6T^u;4<>m}RD8ofwF*RweInQOOWe@5)0Aqc`Y7~~hCg@v zmQr^4mw7Mde;UUhNGb>l{N;;ORGe|4(1ctQ>toP3VQCNtbs0u+TSSkia0zSeujP&D zDtNG+OVIAzJT)CnLw^D7x+SByt5$Qt*CyW8eJ{{&xcQa)PqG;}P2%5Z?T(<<8a=;c z&3nT18phI%MWsAA@Cu#NjzIetU?)dz)GL{)mW_8iWn3;W?jBDA^4qPW^a)B_C;={v zYKt_S7}xo3e8;JS24D4Anc)@HrCEz1ptiYZX8)nvU}r&9&IyOGhvb;A>0#{RWzO24 zU?{rL*S1gRrh)jJlCeN`iX(K;wK8Z*oUeGlr0n{%i7Upk%m?H91HzKXBxW2TW)})H zPu$8--Z#X4I^gg9pm<;7!OZYit3-o-WFh5lj%S_kAex}@axB^l|FLe=Kc6CSKZ<0B zt;qI*-qU=I?hHxOu=IYcFMNNd-57szUc;=x`uhOngOfqU)nDV~7r*g||BO1YfNPcA z=kj#%7HY3MY37#eCN;bWiK)C}FWmp9*DC5Vvt_!r1~M}j#NeW<)<1QyxWM7 zR5-_rrP9SyJ_th#rKfovPA8lFMv1#c^ks+L%sb?@$hFDx%N?HE^UC3_=>rCie)v|* zyM%eLt=2@_Q{&$A6@6D7B1ThF_vb(m(wu?!(<48VrL8SQ(q;MO;5}q-rS-?jTB=lG zLTf{z7Q8!4pZ%z-uF%g<>(Ngdgyb9FsaQ3x2-@VzGL()z;y^I&RfB>;MzE z?~FR^+X1K^*<}yghL}mF8|GM2<t(W_ShtA|ktzfRJkTwN)up>2Ky& zLS>Y5#3ZdgrNz)iEt9&c%H}DDf_&sy0$|6xuJy4yr1^>|QY?*Iit3Mu zl7_MPEex>UiURgQIE8!0V~R_`TM4*Yv4L7qDX3v(NhRvZEfeCV(#@xc!Y+SAAU~yC z%pqVMco9Cd|Izrr`@|rl`P&daUU>b@*KwMNL6@m2o ztLdJ71Bf3#UTm(M0M6UMOR=0#5nj(YocMMQJYb`MV~L$Rtau0Q1B7vgKs>D=fj}&n z9P1Cu__oPn?|r8MlK4&8*?c%>o`^P-PPZTToEh(hLjP#Ii%vE`;|DNj8S1o;#1Qp1 zYTk);zo(6X$m-J1#|+vx@!P8$!`I?G`*I@Y*JE)>k%C>q5vMZ;E&F;Hr^eu~!Xd4( zldnTBoMYY{@J61d@{HnwIad3jxg7hBEav1SLk>d9v`WK%^!=4hrS~m@M$=duZ zBBDjuMJW@-A;$FGK@ppFk!GQk-3j){dDk{zT_xcYRIqgfCXj54iFelgr+_O?bK) zdCiT@GnU>)g)_De0Jx+qx zFHx!GgHpZ~5t{mYV7?hKor0o4L#;W?-UCQ;70<~!jn;i3+>9k~l({oidM|P`_W1H| z7#}f;Z1JzK2zS}YU%Y|#l}3?xu$>6_-rUt~kB7LDX91uK`K%g?ic@Yj6jEys?flqS zbK9y718r6YY;IAC-PEBq6Jdc%#G_m`Wzzj{!naDP_+T_&{o+Yfbr=!pC0?C3`v)O! ziBhrnCD_^ep>*MIO{YmpmlSAoGOfY$fxMa#T~fp-()?+wxvJq3e_R+=pxNb_eYpj< zkPVv4j*mKJC&&oMP4+ME2bV#jJ`J6MN;sIF)PN_zb`wZ|KFJyYe@atL$CYNK$|5;_*uiec2 zcWrlRmnef-+G%SScvE1=*NFWsRh+cHXVB+;0!Z}!I8Eq}| z>cWD3{YoY-kdLlY?|c^HJU94rC-eo3r(>|7g4Edn(3~8_)=5ECN zRnr|%W{&jRF}&tG4obRIMp}*bxwDwjC>lC?nM~UDbfQodv26ZdsXdAIx&CIu}?i^*_ zc+*rkZ1McyeZ~0K>+w&+Az}!ya4qPM9~gjy7qb6(eIsLNWNP!TgMyl(GT`X|Sk5jU zpfEWEud8+J&p4syVvUb!aVCn5XbP5FnA4EsPH(pD)!ifmp1c^2ArOVmTYU-U z`IJUArKM(JB4$P$$npf(^<^rA0SAM{>Tm7z3!Gd(p)arcT)uv<@rYT;7i+dZ=z+)Q z1U8@HU1nDpZDv&0IP6{(4-msSo~;X=MRr zs!~-X(-cdQYb-A6`{$d%shCFBi@*L4tkI}+e%N&oEHj~VCh2;B>f<2?flkEJKpx0f ziJ18A-zrk;BvK*YW~Fw1Py?{kLJm46Y>80?vK^cF*YJ|PVQihP+mi7#m-{E3LsaC7 zO@36!&m}c#mI+^9skNbQZaYC_UPeLBc&{*W61Krk2xTq(`VxddSYsdKLBkj*av8Q5 ze7eHNB({&`q<=sH5@ z3bRZ(nss)SMamgop#(nqEU{}fVC$kKs`vW#59fqGF3cD>6h z-|y)Wf*0q%i=;tA$Hqmycbe?*jTMV`CMvs6JyWssGSGZQz+?|?Pt9W=t`AH;F)TS( z8F;R3_^}lw`{TZZns=hXB;lTew=Z)$U;IQgd=CBEHPd4Xppm(W#+0!uhuS+8{m)2% zdvK^N?FPfaGLCF-qVd2ki~iPt;6F=inQ@tI!nLuVE zTCa5Ra4x}axy1PfQ&@yN8|e|iwDNxW+qhn@;_dGE*g2%u*0s8NIO3;><-qUSkn6l3 zn|?tK5lPaivA=*rv+0SpV zci4TOLsh^ez}JPiB+tJ(eWn)NVPCw39qzqZMN~}Rf5xUx^E*GKCZ+$tTMS$M8(5#^ zNbZj+bU8|}=7;&8Y?e< zbCDUa&{(uu0gcoDOqOe)`VuGBBB@C-@x6M}=uebgfRnd$(Vy5Bm)X+o37%KiLhdf* z<&sTIc>Is&V=$<9ov*oxI^nujVI0yhQ@R~w@BXNwzx94b&y86p4@^&|#Q&*y|MbgB z1_jqbzfZF1Wk+q6CNha8Gzt)RB z5Kzmlo>V6-z*1eY$T5u*K+MhRFKI(ND^GEUCxF9oL6c|!U=A20&4t-_%h zSPD#}Ntj?u)6`y$_y_>2Ut44S1D-mvW-54<6YA$5C~3>mH25qPOEBW>l?|xU?$s`~ z!#8T{(8}vw>OWwMH6+@YoJU*{#N<|G_0yKe!CG`K$HAbVM72JsQA;ZpRo84tG!<0l zsl;iTYEz%sV}!l7RoL^Fy%lqW7-dU}F-KFBhh#4S5!1saXNCyIo`yutbXJ; zL5Mpn`HnFTQ)`}JxY_B`oL7(p@S3X+2{Lj8-7hZbzktIA6`h6qJ`z5o5VvNJ(3F1= zHH^`c-hUx#*5;Hh{~&615kujJo0xP$iUdW=PZ8q%Zai|sOP^b+D63yb1o^Agz@tmJO1}EEel=LULOa-RKfc%?y*KN~9kL%1RQ+4)dCA2}m6> zy#v-gcQJt=Ub#U0k5eU&(MIoMr{TtMAfuLt3@<$9QHSsefi+=^>AD@b>2TQZ2&cs8t<<7MqCfbeFw6OeQA5Wv!&r92$OkfN1mf*RprxSi z{VZg{ZN%hNKja;g8-!Brn(3tx_!~`_v0W3JfpaQuizNt?c9@V*`^aY@CA=I>UP^- z>I&HE9Tg5p_`g_Duz2m|(NWt!;Jw9-dksmmM=y`sJdRd$G$ zfe2;JtljJK{+|?6KG3Nq_7bXR`Oy2nbu4FeU-uq$XEr-DY24i6@x5Oqe~LV2;=@S_ z5snf*3jFN<@;yu@>HVDCssAf8?+y}2_7~rE8`P)znO@twd^^RFWDF4V?9Ykvgz@7C zvb|1cs-*9!x7JE&S{P^hra)7eVTa4?AGx&TN}L{8PJ>nPJWA`o07B7Xd%NmX}Y=7fD?E5nv_3Dc?gnNXw zR;@7&4S$-sKx-^gW7q-b3knl)ioZ{_8Od3ULNJW?mt-XIXx9hge@gH_3>z3fS(qc)fU~4@MPRdTN}81m*$i)m z%R=4guvh!=aI7+DV{9InH8omk_=Pl36sa?#Y~Spgrp^BgNC_j(kSf(icCeWK-1kh~ zx}(kNKOn-!{dW2xw72utB%-3H!ackscwS8su{*Ue5NZ}&&dg`D-6qIW4Mnn#3|b|o!4SR&W8^9; zbLtJ>nk6{T&qU>7Fic?G2bPYpE`K0liXn;#2tMkRM$F(2$u@fTQ?mNdg0*%S^Tcr~ zg+4?wQ1Ciou+Sm7o2V@|@Ay#JXh1;_o|cKB$`rXA7o|d^%BgSswXPH$dUEq4{Zx6Ysw{ z;UU1U%w{g6?mb8jN%yi5_WCWQ9zm|87cGt7<8(fIj{Bz$zYC<)8o0gKzIFc4@fnBA z)Q{?(PJYZoE2Fmo7A%dWpxs$ za`2P+De1SDe^HOz9H}<=WWKMw{EBSphC!;G_CCRUJ(kI@bdONjLz14N9yP3f%Kpgt z+vOI&-4Vbyu0!?`WOLtmqT*mEt^@0X$ZT}jBuAv*E3!-T{6sdy>TCRs$93R;;G$yJ zs~m|p7yRxP{gI>9&wVDNxb@)Lg_8R!50&G-<5vx3+TnGo3E=yKUuySYQ)0CIspB(?Q~1atgt zWIiyDyv~O*L@{t*4ssb<&>FPL9&g6~?z4+MYlBpfHRT}= z?`<3F#VK&e+Hf04KuG+T?=GvfxyrR;0ax(y+0r(sYtmm#LHu2@dvUSWdfEBhQE z{Uc+0W={A&mHMA%IY02tg&YP1WC9-qg!_Mq2kcFaZ8VIXtc*=;%tim-rz|hE6rA^l zu{M>KKEiaz`aQ(zEVm{sE?Om_)->Qy5`qaet+8Sjccx(?5+R6slK;N*|JDUF4yI1J z9xBt5EPKy=pDUfQb$mEms!U@(!PNfRVT9Egy9l^z3pYiR`KFqH{Sc%Dn<;?7CQmNo zoKQBzh7}@>E2VpoJf>$skL&6og6zfi-7}$l?ECwkM`{~IigGR!JIQTQge-(uZpoT}{X!Sr z70uLxWjh1Mq(ID~S_t0`SA_h$n1!=C23w&-YK>ZO)}A893pFUl$Z40X1xAU?uT`2A z78{GeI*JBwM-r@y12GtTuy0kGd61`!}B$pv^^AHZW8VW`=nvL{Ar%2FI9{d@; zq071*&ghWL33<)Pt&32wwB`o20+JO##LZVBV3a~f6zGG^p7@2bv`%QO{at>vH($&` zcJQ_2!)p_#EjN7ZT9^<|wiwY<46NT#&8H_e?`obWQ9BlbtMMVRjI5SSj0lQvXt2#A zKf+9iv?$pOZMWR)jHJXd2!AHx_oC^)AdY5rcI7VROdF*i%H~I|;WVf#|G{E%T_F~Y^|BrKMnk^U% z;^xn{>0VeCMu&|Ht)k1!L~l{>jdO$DO4qB0oE?q#PKQ9!_l}?9QIe_HJe!W&cL0tj z$r}3|o}t`*_xDuxI&Z>npfhHM8v{Q-=qtDV6YIU%n*w8imVr%K9A|7qykF!hW)jx<2TrP>M7 z*VC@BW9KVgn48i=Yczr8N{DkLNi{>}L5=WTWofJ+FoAE>(kcl2ZZJgiLhl37Ds%uVe=k zXjOA1DKv$!7(!7t&mFaRkJCq0B^7jcFS;GapCGlsToBr2MjCncZ|ys|!B60)TrniH zY7O#fJd)vNP^T+vGegjAq5Gb^e3EN|t$nA9l`iGQi7W<3vu^`Ph^>}nl6GjN5{{`1 z`!5eL+&OSJqkoc5*@F~0Wq1nM$KexjWjTv6qk32wUmcS)>g+DwlpUxw8f?~~7>}F?{`j$o>`2o{^Ig zj)#6ya%gfVBzGYA`NpI%7IyqJU>c^ll+lxYk`vT?7`*(GfSlOvF)|d>D>H|voSj42 zCyi_`DAR`}g(ZoblLq|dEdxg6rBESdwaKbWS-8jl4if!!VC0oHgHWg@XUDdHZ#fz)EFNk*bGH_GnA5~)+Jh9r!}6rM-Qd0eD(Ks`A0g?g#_Ze0@I}AaoxkdD%01X>-8*> zs={={Ms2C9L=>ao!EkC*QM_d_H`*VOI79WNDoHi+tT5idirc ziUeJ(aBeM%0rjbI-7AURUvmXd6$|s|eD(4cL;8)bQr{9VM;PxLAq>uN`&S9Cv`8|J zJB>Z^n2D?(f&=u0EzSiW)w)2N9~^>8X;1PsRpxY6FRQ`q2b_5r)w%tBN`jC`%q-An zNK|E(1}95Vo2i9uF0S+LmxP=&%Ov@=4Xs}kW+};L!1A7L2VIXeIErc`QZ=wXhVK6t z`agZgKNF&E|DJI^a6$wHT22`MfA$^!84@+Oo%et)spHz!Q@JDr%C_^3&y#FcvNBT} z>#T!28XM8YRV;FNr;M!k?GAc;FwmOQ=12LuS=nvBj&~~wCT1okJ_k?(Ha}>v<#_>7 z{m4QPl|vTn=8)|no!*PF@qceF9af-doWdPRCf})KK?mME-i?(Fb%iuu5NsLf>wn%o zolW8I7*BRFA;gri!Im?il(`7aMQtbtB{XyV$ar?hm9L*vw~fiH&L-Y#sGux^v+iO8 zMs@7!u)p|MN~$_;$}R)}`&(Y-u)xKo%*si}%Rm;i)cNFbos5C`ljdQ{YdFc?4&&Axze`b?lntpTxPPL$PDI61}Y+UP=~-aUv; zho6ncc=ul%F%Emw%zZh+ZAt&^EdfO*X#d_@%7q}fofZ9OZ%GDQDVJCtTA=d^%tQpI z80Cgl$x$26^`AHGt6%_(Db_pr$JwK2?*jj^)96C{AH=ylXmn=9Hetk09I6EmG)iDn zhkrAOEFfeNMD%Z)RJs`3UEq#H>zwVV37ir0a`ymS>k6{gK2j0kP5LWs$fLj=YlJl0 zi5Q!)5HP8mWFcejJ|_bvbt>s~!ocH*WcBt+V9yJa7RjH31GUB3W8W8oRloG+2a<UD3u~-dx83{wf8z(G)P4LT%Hz+j9&V?p zT8IL12jeD22A5VPr9N*fVHW%2J)Z6-ts;IaySn*M#ju61U$QcZMT3KSMK#M4PoCI^ zrOQE@=6v7AF+_&oPTr};%wbv)prRq>5oHYc@1^*X73yD63aKDMT6(t)Ldbe9rOb_< zw{m1}zF*ap_68SCZ(9nUZCAW?g2maK{SG>-jBRrI_N3MH*K4nS#;1K4SL+*S_H579_y6q$n%qlX z91;_hARkDyEu(;du>5bO-u{QHgQ~lgiz(oL?lCz5={DaLO`CfP{;G>#_NiH!i2!^? zi3$qyk)$yf60`=D`$AIDHoM`!TlzO-XL}Tv^1P<#{f8H8jZu&uPCh<=f=pRHPjMZz zqCRjVgGX3zI07k|F+Rpu2(V^kgS9D0cFXlrST)(?j5F@P37Ef}Fy zd-!{Kz3sm*xL^O|C1OWxo%FPk3*FW18O=Raxh$q1;25<%T^J<5#1*LO%bo}-IokdR|IrheMZYtJpXkF7@xqS z9q(sDE#Fg^Rb(N;jXh51l08Tq8ItrMWC6QsFUWbf0*Q_HB8(|bHyeytXY}+K-IG3m zoZp_DpNp?3d(B73bO^mi`$B*hwFS#yWS#PFJJq|jRuUml?;L3z%a_eOE)q9n^CLmzX;ja^#7MOVMd;F!`*U>ex!%{6KAItbk$}YEE}s8YK^k)GiAr1fAMa3i1o66A%QzC>5?esOCh^#) z)6-S&;e0Rr#R;QlJ+8D>$*v60VugucLE(=AAT?|F=NjHq-3NwKg&{T`n;o3D*=D7U z5XfL9^i_D(u~*_gKBbhBv?;CPsSCD(FMJ<+cEknZiC z@2dt-lC&p;44&PkcwR-uLLMyfmn-R1X(g1!64K3h+!bp%^H9aVZ}=Q-H-NY%(k_2v zkW`TQ)dO!(I7LuJKtD~xtXj~}^u0lEa5YS#jiz_HVZ`asGzN}XOXn9-2D-noaU>iI zcKC$&5|Yp9V_CPA(*wbP^q&ciVm`x_Khg}IxTZrxkwm5n27}r!JY}VMC+-R&K!B^r zJi72&3_85!$Wa^9y5A3DW(edxt4JylZHn~akSz6-yiP5`JE2FU*v4^{qlUNE(r>oz z{YZC4=U$hoOZJzx;k{MY2a@FFA7m8Odyq;;jgd@-lD%?HXOdXv7)rnvHhpXwOSSvL zk|)+*x>Q7*a(57U!q~0pz4579M^E)n=VBqX3E{DsW9pZv{`_m~?I#=f=o*psG?EB& z_;6t)sq>%fpOjmrdpT8H`DZERZx7n^Mi1?SZp%B_#9)zb&i5h?|Gf-h~%u;S4^jn zy}%nYYemsdc&^?PXG0=Hl+#dI8Gj`XFPFV${!%I}SGS;BeTv_ScO+9S2OQtdDLK`B ztQNw`sm}W{A-1ZCeb*aunkCigGEM3ND#$EKUT{l#vLc0`&Nk+@_(unLR zIE}7R&gdL&+VlJHHj&kb$1`ifyf+$Jj8CS_76W{&6VO|zL|F@%z{|q*ytV=!zz`+LYf7drEn7aV%|L0Z4|1;IJ2_>7+jOlMPbty)p zidNT`+a^w^O0ANqnCeEG=VxSnTyLgaf&@@3WG%D9idB9-ZRD|80&xmL9!Tm;A1Kft z+CqV25~%?+-?d;=`|M2^jlQ(TzLlamsgxbkp{LA4GRP)O#4r)V^e;_}eBa#EoK;ZV zS$KVYRRXRr_(5ES{W<-|;7CTA3N$z_Q|Z*hLCIQ~wWV4SKg(c@t7TNE-KR8*>uE>^ z()FIGN3b-pYleul!|NZFK;x@#1~FZh8mI#ej%ti*CT&k5$!Mt!lj`bY7^%eul^EDd zU1c|U-?AAN@YVl_7DlNh01b}w6XuT@%f#=@K!amcsw!a~W@uG%ibzc`-I13I1tzY1`j0_(cOQ>2gJl zHU_#ms!N3X0u=+3HMIscGWLz$jbPN98vNz9ymz2n<5AkcC;^pPM>r|WJEypTL)zba z+(KNvWH(50u@`UVa1Zq;aU5oIjwA}hol+fvZ5${WM#9t}-=kxYWVmiuzOCq@k)EUTPMA0`wF9}x(o!5QLK90gffU}-%P=L+s)gu`v^d*C|I z+{YOX;5IXch!q~x7e;zD!h&wS?Tb*p54t2s=KW%B4}%gLiQ|p( zTJ@~q#&`N#0UZwNhY~bGEii2AI7{9E;Z_FQ2Sdf+GV-#7>kv2cd-))IL?{ElKoGh_ z5y#p6h?i8}a+f2V0q>RjAmN}5%6`_0palNpG2ht&n3)M8{+o~@$ zUplEfRs$?5vScv&6qL&3zV_q}9ZV?K1uA@P+e9J!P2eb$9ZovA<%s3uc6dvF)Dis)6m;_@JZEuiA2nyU`4%6Vac0yvi{n6p+1Gp65E^?PILVb_8trA922<>R z24Jlb7Lz@J2N-$AdmR0KL1pu z*R0)@Kyrc3>QSXw=zB=h9zLy;RdzRcelByn|nW3W} z7dwl?B7^~zN~?1mPI}A!r|88`m}%X$XzscG+R0KV28;`-!YbY&Uvu*|k7XiT3-8Q8 zI=ZPHUgCDJm&@u(w5xFg&^66eB*^P|Cl(@|yF+6&lZDw`?(*XyDQbF|)%?wMyu0bM zle&@jYrg3;H<%&+mmTf8FCU;v+C;AF0?hoW9X}Fpas)Ng~vK z7z(haW!T^5rS*tO$~g}@R|I2sJqUG``h)x@1pDXlZ4}doBLxElq{RsYgzEo$GWz$o z;{T*ym-^m7+egda?L4r}X_s=1l$?gnF2!8b@^ihvZxWj27FiDgA>rr8 z#9S2iAYtsLT~_vp0Z*x!EI3J%i9i7SkNEg>Dvqsr3FutYxpbxvikQ!}&|6V$E?7!G z=|liJIIa)dy*ToqzT_>PRT95&7pcnRmt+=3c~xOZ&%?3&GS{t%>@tVJtCcLa8KIP} zKd9k6K6A)lm3(xFxg27HBu@+`ADd(nOq<_@r*a=(g{I-D@c>%$y%!shhV&Am(MYu} z?WQ5J07SF^C7j}~?3RMiym*ik(u{0IRi!l8^l9)J!#NyQvK|ab&`>zC?m zg6O$_zV!tT!-nUrm~`!yM#MuW?*x;V{l2>zi!Q_s;6p9g13gcA?IEKYVP>%|MG zK^}%VnnJ`BLdd4jDRBoN^$$xolsGrB0M3d|hXA^yzZ)n}&qzW}b=}3NitbO}uUdg8 z?hid4rUlRQ5*Cn^SE;+^4#Vo-k1mrt2@$8?_F+$vW_C^;_}r9gOUONL(ykzMzCvOM zXwH#@&OO-U?H#5Zi>HjENboC;RKgu@3fv5QP*BA0JKRer%x!qnwsuYUwq+n~Q z)juFGZaQK5;LL^1wN!IK$der}hjo?u^OpbjN*+N{AE5tdN9Myuui3i9lQg7qkjaam z7pEhtFw~pFI&oYrQ|T38HBiVO83q(eAK*J&M}(L$4YCaQ06itcsiI#$_}mZ@2ooZP zdo0;!>SqN7@m6i7a)1;ljchPm^=Eh3ehBLlN{x-5^>&}Pznylb)*3mS+;$JR$E=v) zLp0kr#MHHGtf9Q(JhoU-rwK@hl-19-}q zUf}0D_ZX{48crr6CU~iI#V9>smlq+tK@u&+AKCf@`7`7wqisUF^LThq26U1V#kW*#Tvp()GLIc0_kxKd8o>uD8Vujwqq!mtt9GpbaC6W-HG@SD6m&O%p(dCc$Pt5igV>$}n8Z2x}4*C#S98&oKEdz0|UNGp0>UhQKTsIO?kPf@*M+0jV<<^)bliaI2eSA{vc&g^ zaGuNvlY=rrx0DorlFVCEts2vZhy2i@q9qr2rz zFl2wfpt`W9e7UMFl0>8|<2ey#xn((J=jQP9M&Dld@zOtTgdxi06NZ(|8S#QB3uKLV zE+f-^L93_izF(wcW?TS_B)~EfP9^3cU5jqJJ<&&korSyxZ6Qw5I_GBzXNr`i3N<0#IOud~R3eh4vosnWiyjoe&NRX- zmO_%Pap3b7r^E553NT4(tVLPvR#VH$#B(Zd zaS{VP#Ny#R$OqR*03qq_642?`w7eR=yhd(;Et{5e%Vc|`eXmupE-I2dg&@$km~uvn zHYDLgj-H6tz>$+Bt@N)7=XTDk1#1Enn5~GATKOG@4@ab&%pr>x1;`t zg%xE38b3&@Z_&xhw$-Q+G)c1@peYb@4O?}7#BGN4?S4ZrC2#mykisdFgQ(g!K5B1FVC)_WHRu*6Y` zOZ3Y->S#4-i?okF{R6GQ*$0Ywvzg+`S+469%{2~&0)Hcdwg23S5+8GA5fHtw z7nNb#PoO`aO=gPB_DXQL!C_BQI0^GR^9JQ<3i&3i#3JM}O8?iaA!7^!9X?MKSqAYp zd4{~R3|FKf;Ttt!w(|EgMhEejt$Vl5hK#~DA=L#;5&OAI z2oicOT&S^oT4J@=223BBSJB~_!+$>=q8|q7!%WIN&!@OS?kvMU6y6ez%;?+C@n)XmpMFiurX&ciNyOX%WDOF;}tke73vy^{N1-~AM zwkw{s-ko|i`IDSx`k>#6vSqAb$cFpRZECgX%`FQJq8N>;AZo_3Ba$!E7|8rc(iHd(aR_f|Kfl7bU&rH~q13w}akDel9u3=0U+=zg%>U4(CYIW=fbjn_%cyY zM?AOvU5K*V2g8v38)^g##deB!2t@Ql%(jA1e zYyxUNIPfYs|2*Ti`^(R))cMbM*B&g@J!dU== z&s7gCqTv7?M{>8?62#8p-1j0K(GR{Z-w>V3%qCBa{5x!AFclPRqhjNHBq00uCBojz z+ICgQf1_$776AZ57d3C=I{+~*7T1CyVpDxY3-w_-#@4%I#!VS7wpS-v?M8(v++0VF z%H*E3q>e<-RD-ETp4wZsq@Szp`0bNWd%dkf5WUZ76doH9LIzQLU3()Z*z0(xS6&2E^Rc|3f;?mQA$R*IgZAl}qyOruOC1bY#IHU8 zM=M=9as3uJ6>eJ&$J?<*bIk?y5ezK9fF^wzMTuw)pK92`n!>l`^)&@N{DmA3rXx5y zGEz>Zc^#N<;=|bI*A@nTJluTX+1Y3G1!9xm%O54l0jx4ODV>*g2I!5uz%e3c8>gZA zLpjCv(6=7ZY|A{#Jl>ir1pKF~eAg#F8cPh0{Xy9Vc7xUF_nnb&IGzncMzTmd?sG6C ziAxYT7&p69-|vx7PzqCO+-+=>jCi^)f(cvLStO4g;$97-wzkcU zsgevETTp~rp&+U)kG%>Z`CZxhq-SG>oUQZobV?IaXDo z$G3E#WYW7U%!kt#z@+}TZB~tyPx57R#hk*UIDaxYOKsSs?EzJLno!c<^0Da3;|(dF zG&ystI_fa?#6DL=??(LPL)BsIsIS*(G3y?7Uq1Nwx|yh9Nb>33jvaLlLvAj}?KZ=0m1q`Tfi#v%Mh_AEgbxqD+m$A1BZ$Xx!dCPo@2E6TrSceoK_wj0Ueb)CiN3s#hexh>pJ$&l$ zJPh8MSc;cG$fB!%#RwP4jA)2eVfm#*C|ZhK!{^f8iUy787j&hX0Qi(*vYZJoD9cOy zo+ul0_cfpv=Y|pbrJ>Ts|)TUL@97gpJSM@h4qu4SXzrnem{Ohor zmOLnb)N9>^c+nU1pX_LeX0hzuram=BvxyAW^s4)?cSANWD1ZI2kA!DWjPFDnxxR9u zoBcyU++d6Bql?|mv!e8xG$}Fc(hbU|i}y!d53By&@5TDNkA%$=7rNwS?C?b(q`&1k z*mh03*mDFk0j#Qc#l=-f=OH+Sm_%CpyU((&xB$K`Hm^@)LpnzJC&#CL4H7AL&w~yn@Ix-?mu>=p)kB=&}#~Xc3}$oUVDy6E8b!t07IE8s-R>)_7aAt*&buu;R0! z63fTCq}dHGXn7dO1=%FW1P%w#*y!IY>t>c1>~OZMxyUI``mvft6*?TsN1j@i);NWo zj!NY7Vta?{FfA%_Y}gq|O@?|1m4h2{6CoWX^pWSsX1sE>LHj(ep1XW%L5V=oqmj;e z;y^#<9|iA2iGL*lxYN`<19jYW(u-ikOu8gmZ^Bq}BD`t+C0IC*`gviy5v|+dAvXh< z31)0|u`mS z^vg<<;%lzZsjU&rY0$WPuk3gT{3W)1rZ3gyeAzcy!Egh(BT<5z z#>H0KyhG^g`mUV*wK~QMwbH&G$26104mrrnMD6vr4W^!wQ{*a?UH4_$Wq9?i`Xn&s zIyL`2&ck_ijW^=$udv!fRdQ-0ld+l_@jWoNzQC-G&A_};-Mih!FiAd-vuI_l3fn+d zUtrQ`>U>pqEmfXxoeyCs4P36bx%w2Xf|qcgvJsMF>UkCbz@v603M&z{QPLYX{Gp>< zz3T~ESvfQ_5&D|#3tC=eM@CVSF`mP@6ecWoTe6n#t6p1bsFvHYYoXC_*G-|ZJ)o$2 zV99WogvqDBJCyNTrL;DCyP}oGhsT5G<$q8G$07^A1%Z!X^+5iM?SBb2U2R;fL>0~5 zMV*|CJ^!CeA3%NNzi3=dgr@_DnxxGwE?ZP>3pA{T16ijAUd*OJiuIIl;>j0K5?|gx zedL}G!_%zBPx4Ulf77_Pb8~Z`gb8Vr!bycOc0{8Z6$~;WY`=jT0wF?*A1;->DJo0jHme)}pgYof0V{*ZRKmC%f@t8MEx)b+Vy1mt+DfHIZ;askiD;dwu@j&T;c1z-2GA=tD2mIo+cO{S?q0iEzp{ zQgsvwS~T92=~b>A)61wFO>^C?e9Pll)n@x!4@o>GLH|6O9zhqLsVnqHF7dfX(G9Rj|2HSw?~zVokpuK*(W~;>$!^n-13_^Ws70C?USp! z58~&o^V~&@V2;wFfR$h!dnJqS4GLO?SEWs4Rm>%3uw?7RL1&?f{tkDbSE7|FY5Ft) z#Bsm7C_1CQr@gFXjf<3UPan3)i@Uia`4cgA@}zvR-I(Yw>`Nr`aKzeEp$p#}=uJ}X zfb>w*d`tiCbPCy5=}>g8JV*dM8Ci-%AHT(c(#8LcKdJsk73tjbK>S-g!f-M}FtaB~ zH_W$#A#T%N;4QO|h!@ic*SdwtEN|>^#|LoNcv64dC|>lqXI+~?w_(HROO)y%1aP1W0yzwiywU8!HI$+cUUT( z)3~sTSJ8AE1MQK;Ch{w3VE3b*Ji%$hL=y=jKsT8oZ0#)jCVZ-xBkCwT>RVtn>i@;q zKZR!+w%fL7?22vMPQFwsX2rH`8x`9&DzJO`>TJfz4x4BtvRlBmg5}UZ}Rls zTLagb5W#;MON6b7@4B}_%1OoVmd0&;9O%*{>{v|Tqq1|QNcXP6s1cVWccdn|kWTqJ z%Ht=BJP2$W?=A!I2e_d%yp=b&R;ZzwR7h@^`*_;RD_bozK44(YLTu${O)kB8yj?c8 z4cAT9z-jFc=KA{SG#;zkfV%K)`ks)sUDbfurng30K7fkeoA?*N1_SW8PFzov%~3kU zhI-hR`mBTt1c}l(b*i+Ko^M?$P@T+^m*+d_Hu~Wom#uIgiLJCkFBJa*W;egj2C=8$=1@S{vecvN-}yTOrto7 z*_;M-c^lSQRiR_oXJ5q6?r!dwnARcxjwJjd&)ll_*l{Deb*KA|xxp0}SLsmI0(iQP zd}tLe*?PCGx;felyDokreAI(^JOl^rJShBHIqM`kKfzRUZ_7<*c~k;$ASvJiFq;Qd z*l@=^?&{T%khY$v0LEaj9_7r@}(eR8FywP$4;N<7X^4Ex3NBW2H+I_M`$??0_bXaKP7 zSjjG)cnym)9pBk7U)V*dRBN1tg&Qtf5Az*`kckff&racY2i>PJ$B3L${x9(VJ!R5j z{Y?c1JjUF>V@&gZKF0C}js`X+&i~sM_y2!`=gH+SFP@r-fLmNy_0a^n@v%4MStzYxABd%!{gY?d%}F_B=u>>8Chtwsv*IoNW&!%gO< zq&h!O6KimQ)Usy-L(xKUNKA3tt0)rgR|KZ z%zg2SFzV5+!6isBU8v@994PJ8gv2wUyUe21H=2^g;Gi) znmsK~YFA8Q4?waD&l~tI>Pd=iRww%J0-FOrC~ytys^zXgdN1<5!K`habymG*%2dTa zYcG%`k93s^N-p*8V_fqeYp>quKo0ZB0CIVIe;jOeZR z**|#9;S(WiYZ{_pL4k8z-bkQOGLZhK1Hm_fDM!Nu0%M%b?LHr;fU$R`>r};|@lNW`+Lb;S-{xPdd``-}ks5zKSyXi(&+g2;}^;(<0gwpOWyx>TLoixBaj z-T~Ygx~*;cpuA(kj&jtcxET(78St`i9&?FVCTrd)Ko-nE)=q&?sbE;gi0(Q2Es%#` z(M+t3I#5FDzhM<}pLYKno@quXK{(G}p}PmQt03o9w>GY}B2BN3+|XDC_9O+~b(u02 zUUNX}pR+ed=|9e1f~)^>_JZxb0G++6|D3%f?rQw4a+8JUvOc_+1Bubv-$wzw0dC+8 zA4*l5g_?-QO5d_n&KAbPt2u|;$)3vk@6|R>#17_$g9omF9c%g0=Ktzg4yX%a1K*{0-$1q9j{J>YB*qZ&e$d~)5yC;^? z?w?KHvWi>g;NyC=!W{9Hc0(TZ1L;=nhLs8v*7RF!V=h&=XPWO2Iy~Fp{T>$nH<^`c zqYut{7$!6`pTK1KiV^-eaE)BO*5_;K8nMuIxvTGgDOY!+!Nfs)1<;H_z3TD%xaChm z7nXvhf*l4!-)kOSh)+&&|Dq+mb6^Po9y2N$s?**hZFlW9nRJ2))p=cdI*rrmXY3rm zCnJ?|v2+h)HiqbUDQ~!WrFZ9y3GKbs*LQryn)a*{poq-xuwHv|CxlU$zgBNC8o{zx!> zXWm*XfZYeZ0f9I@c)s3w-u&ehj?G2DB?j+e3Y)O z3d>}Y(^s%t<~|zf6@Yy-Q6jXxoje;Gv%4@hHdd1>%kK+u{5HwD+qnyDKBL2e6|GZh z&cVUK<%`sz)`j1b--*(zXpDLkUB)pbqY|^pd#Dg2Oih{$&uxk7{vP*-*4P%*J#o`b z4oWz#(;k(0w*+B=pcjoFuSaL0kMyQ6!cTJR9Ax^%Et&9R^a8VhFOq@=$YbnMPRh0T znA>!a5$rbiDSs`Cs~1Yb_n}bcpHU;XYz0nN>N}I-neBs>&dg5W*?zKg?R zW{@ffo=L|={u#8DVuQ)*QR>?+`TK=q3a2MXbdZ9fc~VWpC2drq%Df!A)bOt&z8K7bA*Uz$z zGXA=>3UEV2+aS`}m$Mqh$J{ng{6p_Nw#l>Jpl|s~f;WXf5qdhA>-kHp@MV}Dn+G#< z)dMEa?HHWa(}5HVPGRhMvjv0i~v*o z6gJoUWoaam;%7u$Y5Ow=Z`E(wo?zU-TBZ^{s_rioAT57xvW4of)lHVW&l)?3J}a10 z+kIPofpGN;18=Pl1fOYka0+ZgfGl717)WIlW{C-H@JI2>aOP_C@#FlK{)f^=VQ+4SQH<<;G=_AacQawH&oCY zL%Wdayu|JXpFvDqlutVLFWTgRsYhtP7>K(Qqzv6WOtM>k8-aeF5pYp4xK^q!jvzLf z@x8KM@Zby4KJ8`%OC(O#QW!E>0!V$P-GeFNYvHZA2MWeT(#<&Hm-za4F2e=2^KD z&6A$o=xC1}@Z(Dh=BpKn1-*rJ;-u2z&6ggtQ>ym-pe$jxjalyQT9M!#Pk`DZAP9-o8Sp5S#HIuM?grp>3WIUj#Um@myoa}5*yfmVJRtt8fs);UNHu|w}*+bibRXgH<$CB33XAasv`bntiuw_Kr z?HELsd)DJsC-@b5?Qs24*m@ju3+JT*_s-_THYKg!xU&Tz;vdz4S`m$v(s3uxV~RZ~ zl6ii{{!OKmP8VTN67b$`TBhg%>nsq}498{8!K51ENB%IS_ZT13!m|a4Dj=U(_X#Yy zFaC|NdY%VeFGWtY9+oL@3I6zGslPtPAm(=F*!42H7}*g&U++>m^Y_0M$jtP#-Z`N` zKu|FM#}%crqld5oa8@H^ZD(Zl|Lc)Wsq46{4`cfLQOi1}*j2nZe9EV5-hhd-*@8q( z4gz*k4Qop3 zt)%{tA^>3x8R6`OeYgY=|D}X=UOK?0iMIUn9&Lwe6i-S;*`#Kw3i(Pr>t}2y$(|L^{k_7GwP8UrMa; z3i`NWhuW+OYP6$*Y{Tz{4^(k7lxP(F&eEN_%uv-S`H}B(q1I&&d{?o=tkdB;Tw@DH z__8Jmq@S16UAVNsa9Cah5#MN2yV8PGLyVe=5=Ul^R)b~KoX{-6u{=*~mo^OLZaO$3 zmy!wyH)ET~pT#bM$EodSR;hbHT~7 zSLTeT&}*f=`}TAg=RszLY~ZSJ=}D&o@I=7g$-+13UFe4RhVY&T%d={7oDj z-W_Hax7jXT7Y|Uwh5gL%-Y(Niym4!x|BZoYz`JD10jH8bF^dj2!}c2LFMIoP@7=Y_ zDBVO0&nCt`4m+#%&RH~ch;(5cz>zO{`0HdhiQvl_l(v$ zvu2b*E^fX;e-7t^F2EE0v0S3(3C~ z2+pmoH1m;+4N;G7D`o;hn2Xn?_%JyBPpLZN%oXtS^+qqsXI=znGY?ZbJ-&$p7FEKJ zX@NtQ)EcaBZAUd23@wlI2`-{yf0y?UovPjW$oDjYy_sk5o^9ctJhZYnF-hG~kvbuX zcyABYaExah=TS~O6DbsPxNt4I!xE!>hd>v90fMqYvkW(MbGedMQx~+7X{|jF_!tnm z(gu}}WoKf-1}OVEv6A}e9rz$(*v9wrLFziy-*;Fdz}P6r-%lc(-WgoiyG+iZf*v%1 zzPxaTz99G50K9gwbP`i}kdkfDKl=9PZ_a{Dm0$SMR3+2hy0BHs$wo|`1izicYD;6Prw9Bm zE59p26RjhzSFI4Wf&ni?{RuT(?Ql&5ADd+rEjkhnedwFT3hfIJd6cdxtfd;R25URCx8$AuZa)ybqgl0 zkE18!wbPYNJA>=ahZNSH9`ixyey?d%jd4uSBw+8@8TTs>!!CCVctu(g89!k{jMXlBz^b`*k~ZD#Cm?O0l_0tbz`uFHW`3!t z5cY3mrek?a=vAoiDe0owINS*7t}=SCsxa7-)f+Q89U(-zJ)L@e*+G7sxN#!Me(eYN zn%k^sPL+DBf}dte?@uX3=ea~gFI8sJn2;7AiBFgLAWZ!VYaG2(Zt=*yj`Frx+~NLX zH2v9L8Jqv<5T%? zHs0&KG^Y>9Sy?Pz=o4F9Ub1dlvo8Nz&C*(z<6U-A@^Ne6L{$}FF#y>@;SFZtEFjUZjZCBvL$4JdvV%MYc9>ASP?ZEe)v9e6FL+V#n1jgzgH$X$% zl6GdqbNndb`6gyqZ6e4fh4fl^&_+ap6JL9`h{QSXgbUS_|I;3UEKfP z;69nsN!SCvt?>i5t&IP}zl0w4|BuupH5sK13FI!NA-@wTL{KR!30Egra*Q=hX07JK zWMi0-I*yRF(F7~@kfP?7>vvCboIn{ziKoVjf=Tz{_s5k?+t-`jU46Gu#8ElmCwRV! z^;vn!Bqx!cHDhdi{`yXJ{&2h8BAq5s>T;9}sY&^T4pBNDX^sGGFci^-)-W43MTKVXvI`2+oH}Ghq-}M-)0@G8|b56^gR>>^T8IsbitW?C{mA20i z;JwHg_|g6EIy)DJIAkVB7b=x`uvN3@-urw!Haw1XM2{+6Dr6T>)7i$QS|?f^6}Rsc z5=lY>N~o)HXpudJ4)sU^4gS`GGa4AEt z3z-}_^QZ+U+gu_lq@aR9A=HnXr>n)Dy15t~J_?+@_+HAFHYyqa0t+&#aqqgzwH@bE zDi#8XRjejoSFI8cD-2;I;ZA*KSD2&{QBI&`y`U{d^v+0CRmf&UM(f4xgjm6w-*XB7muoTLLx05OrWq00bG+ z@W)TlIQQ1@uD({LezsT;A%moO0R&OFI`+HOTHy`lqLZW$!A-!3S`Qr*X_q6XoG5O6 zmlF1a#o_#*N**Ub>~iQ6tDy^=jj5DmqjFZ~<({S#IML&QDF z)-7CX;*Trh(r=`@-C=>cYpU?Q9~vjtY95-4xPx<{#|S0>3~|S8;e1SR8rWdOw@>=U=f?I`Or(2 zlHO#*?WGA0MX%~!a@nzKJs8)XF)TWN+;DSqh#})mfSuHC_2}N!w2*AixK(%jO19%& zNya*W<8;(=yH2d^U@Loz;JaSZux)%8=4L>}fnC_|XLyc;r(-YHx(u2^=H{%S0ax{c zIpcCd+)Z_sb~tA^NlaRE*OS8PYYv7} z7b)|qP2k`iV8bS_rqHbLO-EWUKTG|+O#S$Ej0E$y*?G>bM7_OqzPVk-=yu#8+_phd zDc0R=!Z42YYD0Q7A!QMVt+NE}qE6;n$&lB{Z1`6aJyrDywyLd^aDUgqjkgA^W1PC)UPph?du;m?|Ohz%eAQeQ8o}B0l2HYd{Pb7b`((D4!qccB-n`=cCr|iw5A0HLNK> z#%JA^2S0F6dcHF^a6a$Ynf?9Sa?xWyAu#$BQl-~!<7Raa<@;w|Mf&4m)d_RiPL&{~ znm3x|t(9|&3nFVM_M9v>)&X$)zfME{y&po-7WrlYKNi^E{zs9EGVo*Z-?H!>J0JkT zcSg@)H4)8ScD;+^92uxmw5>l3cb@0_2F${(9|w>v%mm~A`nV-!jXFeNLQ?jk2ov_a zUv(TPlu%JoiQ9wyO7jDO)Y{?;U{F!;FL!KJS?pvJ}EW!D!^urhi_{2T)l z=<2!!y1Hs2wYe})d(>a8vCRPd*dp-Sg*s(~21R92%vre3$p@9i5rSeSm+X!I@YL0P zhJ$yu@EAl)F;#Y3;K{;jKsG9GA>2S!h*V8JkQz+e&93fJf^G*O#_b4G=CT& zw+b=L)jCT26O)UkCrdJoVlJo%EWkaWq3-9aI}KXa3k7oPJ(i!NJwuqCzmMkcpD+@N zyZ54lC`bgq1?hRvfEpKr#;ltcN0=~B2U3!KC&sy-l)^wbbtr%&y+5mH58>~(VZQyl z;f^dvoWu^AH+X%N-wB};)Di}DKe57Z%+Y~RerC9r|3LXa!8#1Jw@kMg?A%2I9b_(qy9D8cT5-@?a)R6dBv6lcODJ7TH)o2 zLB~ksd*z=P=IG97y!wPD8OeOd_T%O(g#=c#YY#X*wBx?nW$Quz15>{P!PNgzDatY2 z&_E>8$pTf1Krpq?O|`duu6jtrzaXYW+$z~e!Oa=sTI}(xVR|!AH#&(yyn62K<771H zyxrjjhba%mHPnz@?L75#z{V+hgtdotc{f~qVByMkfH3~Nc}_`qu%ozNsk--j^{H&% zRp3aDEL}!-4!AHuoc>$lWl?_jiCLQVMkR}tGXh*@Rzc>R%T$IhmSx}}uKu^?NQZ{9 z#)=Bnkg4)so{Q4u019F^l7tZqUA1*N;&xj;`N=*qfl`G%*e z`PI)+@~I1Y@1LzP5OgYy-(2;Zw)1_usDC~leG3lXUbro706bpD^z^DqyMdqC`wB2s z0vLa*6%n}-zU}c}>Ki{NewQIN~c8$E|eKu|AAVIGU$o3Ry6=wD`A=C`w=@Z2D za5_j&R)@O7q+Lh2C-mdM|Ahl5IUU}uiv!KcGv@UiO78zlxuEOm8+K$nf#<(7zAIN$ zog3U&MIs<_g^nWxSeUqG!Q71r+aewjwDR=!eL$_PBdZUN)sdXNSP(RTiKe*ajjgeK zHX9GHtgNxO`k+4-EZ^~ey*<1RZ>y3)RP7i9@WeILWMh?)-PdXDpq-KSA>9o-E4U)U zoXY~F*7IURh_W+_!8{uD{}PY9yi4SikF$2U63lcV!W}io>e-5GX|AeF=&KQRlj|z( zfI(sSs=Xlz0tB+I6M4)XH5AkUpS8Dt3Cofh4XQR!t=cllMK(n(p1*BL^*?Ts3HxG~3iH?aD zyIqe3_vr9fWkVF8!_&KapfD)l7MyIUkE&Z|ns(hvvq%l~C!1bTAw?_DUY=$a)vdcDmz?P{$n zt&^yyWZhGNe4Eg{fOi*|c;zen%N2DX-{zRo6pE^XRR4uSD*r+upeJ`G+~{GRUxCM&1Im=bshpXwyz~LLysG^_ zo?IA`%p3H1_pB`sSn#ZwgqIX(djGlawyZY?Yd-yUlsG^4ne`>%bkTP$lPJ8|XAHI7 z4~pFHqC0q6|A;>K@=u|r6eCmhmNdkX5%NlOQXkM0>`vVec=Q%#f)YcCI6#r)-XToY zy9@ZjUfhrm8l}|_=I;7+p&)s`Q{X)R$xrRI&Y9d_%vbORmHV7M zP{Krr2Y-WfohU$<5623r>5sl9O_2xjs*Ax_9qm#W)pWzQ=|wv>LtnN%F8rq+5a2c9 zFM)j@1Om<4h=~6$^}w-t=sU8z(lrz?X%7bu|NU}mX;5NEf)c02f$9N|;a$oYa4N6y z1g)!v2e^K2m;NawP64WPaiFD3WxysY_Lzq1GwVcQIKh~I!W}=`VEX!>iE&`z*8*>h z_9V4x)+W%zxTnbC-vK+|GU>4xoJv7B7GL1+yWApDQ);#hk4fr^c87=g8s%yP#9q?? ztP)3*>i4Sd0Z89xXuMO|50_=Vn)vL?Ao-z~T8~7!mm)6e$Q8Gfk#eN}eEn9+tsWX0 zlRDHJ1lQ>c&DZr#Y4b^l%x7Mjb%~=>&f?nNP9+%xOauHiS&hG3i`5DK(1*C;v?Ci}HXGhhEv<*bIVsu*YOLwX+ zBt2KRwtb$PTm8X!fQ<5HV|y2YzLo4Birp!4H<#_okEy;QJ1t?g1T{eOB1;^0SJlSQ z_Dp;0=D@~x5)f2a#gtk2;gBK{_xX zcm@ttUTDw>8B-_$YSX}nydK7bGm*YI?iHkm2C{&)@|%8yzmaoeTlh%Jzm`eHm==El8 zvOYhBS9H0Mh0s7iyw(551jfMDz}myf!ih=n-w&Q9j*ONDt_GKUR!$q-2|M?6%-!W# z?5f6QS6ch-p(&?nPW6Xq7G_FiWpoii#+2w~6f}Tsg1^t_!+{WjaS23g9c`M*6vZ%k zbJw<=?l<={KYB=ipiOkSi+ejtH+Ut~d~j3xq9z3AVjXh*U8cH!4}h|e7#o)>c%*!a zq?Q>ay;pl+oa!bCQ)us=DL9f5^c2kfaCCQnIZhpDu?uHQ=UMj8GVw)~-=D(^Bx!$)aK-&P!PIvP6WmFW{X87n$`KeMoSdeQQAsk zG5l4W36@_u&#Wl|I^ZJk5tYC(rK+GX8&}!zzzMgP-+BxG5(}2aEqh&HEE&KKOLmb& zhJMjfFa+@S1uV)>NVdmuJA7IDo8T~b_hRI~-9KPfK-eL}B#|=|_#@_tCM9C;lB8Lx zi|GqP!M`!yuH}i;#jjhu{fZjqD0>Cxa=bL1kjd!0EwVf*i&R`9N7J z&C=f;bQk0aoMS*YZ&h6u_7XIT$&Uubg^vfmej<755e@JcwvX{$8@&UP%axs68NCqww0I$;sr zpbj(+=QBK}Pb{scMvs;*9M4$IC3eaVVun+k3~~`cp|Mj}SDpsRuG%;Vtqx^>$Xwu{ z$`?Kc_2B}R$5xLAK$}XYCkZ_yR3F*FD8UjAKpmJa;{%bN^lb7*Gkgd^)Q{7O(N?}{ z=**!X4;R~O`N5*Q7&bv+qpMAyAW8YZ3v*vBg`e|mCz~b4E}YUBby&?*XUAW5Qyr8| zV7ncygJTai*t-XTX$M-m^S3z?91K7j6Jukx z;(d>@kH`6m4t{sK8S+egA5J`zsWFO(h0T4pn8HkZv!E14f%bl|`f4sG#X)-80GJ`2M2ReEygAD+T(HptuMitI5>XN^R=$1CKMm+QsBi?u1< z!0q1j6lnK_Dr3*{^N*f|{N~*2?2Os~X`%B8m9KZM`0Kk`O~DfH6x`4;c-{=SOf|!}y z-Bf+wzIESr?sK_?IK&mPH$%^%CV>bc#8x0n*nV=ug^EMZv2gbJ^;G*vl#k9m)`jua zqvsj3!s))>iUrjN!}!f>hENduf&ZKi%Lav|TBFPt&9Lv-m^5-9acF^%5nl=N4c)~! z#(!f0EgnK2@Q@9Hjq~gD3@#OD>rqDa|0?39HQ3Rvmqlei8))AOTrE1?$&S6^tOy`J zsF}?_lBfcn5gu@is9ZLMF@oe%n~sXL7_#{u$;nF1jvM9~1!qYx2wKX6UI#MK2Woy| z*+rwTttr*=n}Cdm%{5pYBV2xM;0Bc?@8(aK{#!w9nK58(C)T--3tK8ef113YPkp`s z>+zh{|6ux*RVr--N+AGS_|2#N1T>E1rJ|Dg!C$+7m2lgtN_xLr2%2-&%biaMMq*Me z8=IcNvVRy*vnc8KJfS92g_8o0uWEx-0D)wJ8>^%e7_G=eMGB?u`FR|tj-CY(I6dJk zX7@fTqG|EtVF1~q{M$pGdYQtzIySA#cB#kpcucZGT=I-_o-ONl<24X=iz7dxk~o_~ z@aZ8qnqgueDCf#N<^cSnv3W71qnPl#S+6qtC&}LIiHmkXgpKr)l#jSq;w@o9!Gm~LrmqU9 z7$}n*CX57c!E&utcEo>Z&El%IAIYPE)%9e816 zBHipA-Q%<-BV!1MN*2LaS;4C6#5&ohjg(NUKoqp8AUf!$88wb&?6 zlEYFqa}Fc`Mrw+CULW0%nMVk1-Sxk&{MV`R3WbY7!TK|C1v&Gh=uV z!558u3U!IeZd*W_0g1NC5p>F(^b->Bxs73Zco5nyXX$!?!(Jo!(raFh943l%hhXxg z?`R)ah1)24S}-M|&I{iZ0zl)%!wS%N2=y)t5Fv zb8A_EETeKT4X9m2>ot9&GRPcLU_pL^4<8yS;~E+S?lidEmV;q1bta1{)@iLZa!8#u zGMus!M6%Gpv~cf7YlfYh0|7*YebD#{E-RW>ba%_L0u;TPu9f1YxM=P4d1yV^#*5Pj zs$+Z149Jl6Hk|tFsAq;T8X(;md9nr)^(Z8T^%YYuk1)r8(JbBAdR)TFvZbY1Fk)ml~+mMb?BI|K2^b z2zo%cr2nE{*XWFM#r!)zO)D~GT@xAjcobw)kz8Nv1KC|)Y{#HXvnV@fEw?d1=`TST zY#ljfMkfl^)I}vqy0ED%GcqV7GeX;+>u8Y`owL9Mzf3$g<7{Joi z|8yiY%ZXZRzhz={Pp|z;$>Ls?bg*E04FVyU!kfehoQmliNZ`jg5I>n7Y z)AtM?KEbeQ0mVTexyBTY2Y`AV3+uO~Uab;o8Vne(V?d_~m2*{qRPNWxWx#s2)S_;$h))(TO)V-IGwR}!tdI3TIplk(e#(*ya(Q> z4m&*{qZ44Xo}97dT0(J_UNb@~+;#m!4v)}k2neR#@;*~;2%iylvi!ShBRY_Ql`=fN zkI7^J=hGD3O%SNN!D;txxmkZCB?8X1xULFzKGdr%SY2hE2FXI_ZhN314Z1Fu9*OU# zDs#!zPZHO3x)vlV6u&hJ*dW?P!-@K!;$Bu9C3c(^=axF9C3 zHy4iRPVdZ>ePZ)-X6`T<{=k4W|LK?jrEN0+Gni^rn^1QUK{O#1jOlCou8MiVEkf7x zd~uhjw@cMZhC1+I(I-2RxZ;kCdK99qMj*G&pb88J`DD8nH zqEpkB9DPstDv}{;iOHBGbedZ<-=?ztO}XPscvo-mSS(`H*sYJ!Ycv=!D=$dNb4{gZ z8o1%4b)JY`d(VLUQjbd3=p~c7gYgUxQ5i)u2t&&HL;=M3ni3n5+7$nA-=-smyO7SI z&Wp4oGrR4^VuNv1HE?CM<0Z+l30U)$rq>h>4;oUoG^$Z*--4+9)I^1k9Uea49(XH^VWy?Aw!rQs+56en)@28?4 zqyH9Mns7=My}PDhpE-@^mRWfT5As73wy%Ic?cW(JN~FHlcuN+bWjBs$1I_+i*z)u` z{zfmORF9s8@7oc`Kw0Zj^Y*P`eXHDN0#s(mTzmeoy6i(1l1um@-6lZdMIo2d^mV6j z$+YN2))(<{d4@FW_E3?}T3ZJKR;zgfEMo*}smiK0i5tzokbYH-F$t5mV&WkGNa1oE z4$Y%h(qkyrhD)ZQJ<7#rlMX<6MsuAF*>9^F7%W0E^uDGduLvfU8FWX_Ts!+$!5Z~> zro3WlB&?6~OFvOHhuJxfgd??K^5gMa{$Bl+k!DsTgy|j2AkFGHI<~VXd^}oP6hHlx zknaF@oT5T@J}8bWwLsJ?T~v;XZ%sdPyfClysT`pcyT@*f0D)~GAMF|JaL=Fh&zUX5 zLQF)Bv_+YkEJK_(HHRikQ@ABDBGc9Ja%i5VW~rM`SEObco<{G8Dnkyo*o3dkj7HI5 za^if+?DED$M2n1yiupp9Qjr_E-%`n5N)1~GOs1B#9TuJLG>831A zIC`Ov`U)>E#(wVyKO=^n$A%ddw?tj-NH8x%y!Bky%WebvZmo{XU*5zutH!h`8cWox zY^yO$e+*kj>f4^IY1dem3R$H8)w5ptom9^!$z!snAn8|{%giW{k=Vq5_i`y6t7+&a zu-&Q5V%>Uo>Evml?WiTjl7|qeTPN6Xp&^l84v&2es1=8A1|6^yM z(M`~EDew5v5(DiKmDa0fr}L1EJw^!U`J#LnH8?*G#K>WSqbL;W>1vs+yCYZ7dTnLt zn)`HX{p1+N&C$SZ^AIS;DuvgxuX@Z1J2j<>q2259mGM=yBRn&*YC+9JzdKJ5ZQtHW z%{4dI;PCBiyA3Aal;KR%UK`i*Pnfix@#Ylb%W?iy&TmK|`|!2HsV!L>=QBj1NGRcp zLY8{)fefhm{RE-J<%^St?vP1vX)R1ae!y_#*Zs=Z`S!nP zuELd?Y2l286lT8zDa_v>%)OW{7uk?S=Y8LOa+fQz@QH}zcCm%(c%fmR$N2-SjCBI7 z=~ksy`k3x?`;Y6CiptR0>z6vZQ?fZ3tgEaS1MBo)NLf3?E9|a$x#?qf4^B@{k%;7G zrv0gKkigZ|*HYjdRmkKIoD4CEc6(_{F1pH#x#gtO%Nx%tw;%YC98R;rwgT9?M6rRN zZ&lK*s=8?ST|qZD{mQ@WKH}8TWe=*UIaVO^w5v25C)G+A7nN-*7>MnFwY?v~+%7hR z&R+0E7IZR#G4j;a3R^tUGsSkLJj@$ZvVlLoYnrN1#na`FN4J#}&EbLdm2hM;s`vvM z195L*jwz~ApEJ-X8LZ0iOvcDwUUFb4H=Pc{Va_T&$)9)Ze+eFiDW})lDQ}FG2m|`= znOlLQM_!Yr%B{%TuU;5;y%4PD19a3PAN;D8e^Jcv%;DbjVsbs=Y0t%7Nj`wlS!=Jd02s7KpQ0nE{tMcNfk8VV90rkH4BN)luW^G)7JGn-Vz5DJ z@qB}_)}_43bhIN3iJl`Usm|ew!7#|kIepi@6KCk!H%8X5`A3;yrc@sK1^4NHo5zuV zo5#vgr7Uh3NHM|}F6fp1L#Wk1F2h0o?BLy+Blx$>f|!&%W~9AbOc9Yha*W^t2om%7 zhTZ!-wi65fcc`oH5)xRoh8m57HG5Gbd_A``SbTESTVVIWwTKN_;-dJbwT$&Hw0yXy znNBD}BzkqP=sfzm`fBuJg7gF2zGPfovg%@Bx)#|Um1&_3Y2QxeFSE?($AMEYY9X|E zV|;)0hOh;HAJbCmNn5agIlBzRdsDAZE8@L9hHk;|z;$aN6*>lv7Rs%&Aa_Apc-9}$ z>0MTtKijT-^>lG$iUxA*DDl0 z5e%Dix^~HMpE6g?*g|GZ--{*nKc^V*;JY_YN;M-{Bbn``-q{J)n49sIqbI*$Jx-+$ z$F3@daGrt$;3CGtuMdPCu8^2AN_78VKjcJsw&b}HhxZ2E`-nh$?W0=S(uIf@uK>nDC`==Jb3r({3RZah{S)Oeden!_EI^H)iNt6iN zl*(co`PmWD;#oW7q2PtLBS`cmY|gwNF)eMod5LlyeCzPNxk5Oj(>sjNv6gV$peiW9+M1e|IEHx{2dawjo~z_GwO}mcO5wOE0vzKbD7;A=GKDE7rIM^SA^5D&2?T?o zfGlgy{YA`-C-Den>P$iBXu)~%Y@oI(57oaAA{i7xs=AOIqMgg4d9>q@pVn3~BRu!C zTp&r5H`2DCY#01Q~?YjJRA0u*Uca)C)`oM)I`43EC8%EH=qP}CFe;q?ie4!98tju`>mHEPA{Fn ziWaz|F!_Y>;=6xBpkJvQ3qu_9Xo0p}4+JMQXp>FNpIY`Ml5Wzk(^QJXUE;LL^fgdN z-B;}m1(4iau@4^VK8H<_u^?`s*|Q!7UCSMg+2GE&r+|OjFxBBI#Miv`l1uHPzcKVf zJ5J3->+{m=jUoKT{|<%CFdvXOue=-WkN1l$z$-NdE|ys~XB++b1ks9!>@`7dZb08W zs5&*@j-n{_=+%=qY&SMdoNwfTi6a%&J-2lllC4w_N^Mpm{OV`5HYfh8@u51D%lCpc zC<&V#lfYg#f!TRJ>@`#X^g8={#4Hk8swbg?cK`>e z;A)H`gw_3-@YCX&fIpF!SQA{{;>VHp~2yeA(^~Vcn&yS1W=_Mzz#qXUIw7*2|tE`sRo+56G0FPzrz-8@Vjj3 z@3W0u^=9Y=1ouMWMsWsJ5ok@~L>;xNg+&e{OV3fHlEFEuJ9&NozOyuoPlzr5?B*4q zT3gb?reU~{KNPaKOw-H@<2=Uq|6%N%f^3PpZQZhM+qP}ncCE5)o2zWwwr$(Ct##|) zapImG`{Bfn7?ERUKITKtHhORUYa5j4aUN@7$rJRfb2xiX!v%n?4=$srokkXr%n@cf z3?%v+P@h54?$+0Q3^UMA^BW&+v~uz(`%lUoqqH2i#jAb~77nwuUWPqqsFas|UozkLRBlLEZph&FSNp%v~!@G(HyG zke8hoUQXRrQpooQw%9~@kg5JgQWLctUZc>>F>pgXS^5F@Vf=C2pD|Imem}cG)Vmpo zX#x@W2GxNmmUSBp12(6@BInU%7npB?#$%6&j>5#dS%h`-ce)t;mI^;ohW0e$hoGZI z-xWTwo-BxYtlr428-cLtcyG}5LfGN8*=#35Z=JYl0zuh&+l0_vftff$cytmSF(x#q z*SsArg(K7W08%9*GLrq*15?=ONg=2=J9MrNLYt%nb~}lN$irTsk#s3qCN6at431b) z)=!yvkn$PTad34$)$wjb5mi;-As5n8TxEgO3c!{_*~$4>qHwuqj1*(|I6;G4Pmn=K zf_uC{3a{lt173$>rbK3U@bgcME@{~dqnrxMwEIj1p{bv@12*Z~c@M)@bBh(*2;M-v zsry&8(hJ+^)*#?diKM1WTE&=;y7z}7;>K}8PeG_p_}Q~lO8v-!x2U5F4h-GyXf!DE z)jHpM{*3_B@@=0+!|&%32NC<>-3{6;=xVvr2A-;5oL(;F3H^#;*6vTsd#mO*earh< z{Z1E!=KOH0w@bhA;!aKXi9y0CKi%rl&lWW`9Sv?mS3%Mlyjgx1$&9 z{)ATRlnkD!WlUuTRO;L?v?K^=98AwG$J%4;1}Q%XzJLqEs2!I&q)o|7XLZ{|g&p2?V!W2~>Mft)@d2+)Uht;;eU-S&>>XpoR5&z#Duk4h%wMDX(2oviQ@Xq@683iPIA_uL9<^1wVSr^Xkrc3|>=>3ATeyY5WoY zkyHCFW2a^U(b&A{MZO_h6(&5ZQo(8M`F{0Ky!AD@*IR;j<>Mk4&K@5_HE@HM+i(aM z%Tei?p%Q5&9054XHBo)X_BQHhqqEGE30GN6(D-bLxoW;FC7pCvlBpdIzVmr0VXiY{FSlqxSz!jdX4Ns%KT>rR!nVCKYBOj(nnyT>V)Cq`Nn3f@)sOI-gWqQQ2|HoHK zn4uTe;s?EiV51PG*3NASak|_u$u0-mr-7Sx@KFw!r3qfzA#Uk!zO+Bit_?f4Bl%|{ z5HQzfp5T}xVZH-o0zx8mK04UFm6lFSJ1mM>wp)9m5vl+C*?B_IrswfQyX{#Vxq+ z`VG|=1`{ug240wTyijZS!hT2GvfE}TepZ3&T;CP9&%+4ke|$L-JzxzNfFlY|%rBqi zn9DZsX1*p2dJcaO9f!w7$52Pn3DvU&wiMW8of-`+uh zz~J+$u(RR=D&w}T=tU~$cDvDmuzP0y9Pp5jq1MJ`?vC&*-x~$zY%h4sNPn=(ARfw) z^^u?c5oc|F6URNL3ptc1zt6lz8#dd|O+A24GDo$AW$z0#f1CylSFhH)hsEMi8|xkmEOr&D|Y z4a4ZPPK6YWdAqh#zt;kGR9svf+#W>E`x_60N1_|35kV7-D7RlH4T&!j9PqCyW$CcY zfY6bprfGqSD4Y{5+C%-EKEwcR3U&3(jr5sJr@gDAdP#5pNm8Q5Q}qR3B+8|9WC|AY zh1TpTJze}!vjmHL=PJ#}g`!++KuM#{kCeO@(1v9P3C!)HSXOzN6T%$(^~>iBZalC# z4dgA#l!Yt}A!c>UfB?5(Xp#rI%uvbP{2K?opu#TFWUNMGq95+C7+s44dS#s`Nz#g# z;z72<7VEoavUc!$B8;E-nD>n(D$F{2r}Su}Z%AJPTl8yb*j6aEc<3jx+ylBsGXh1H zWEyaUihqYuC#3{q)c5>^*oSS+gU zQcGu)Kj}ph@#}b!hEZO3tRT&F|rjh<>haeAR;?| zCBS1$T?GCdsv{!DdPP`)D`5y<*Qear=X0NFc8Xwi)iVU=J}N=%EEyUk+#fn8kaJHY zgP|LoYit^&>DZ@>n(c=-me#>)!~>JWfs&^f!?HbmB#7a>H%T@Fbh+}FOG*`in@1!Luw7^wDjPFjph5$3J%5x& zYm0Uj2I@Fwyj+<+WL&@FdaDjfP^Q{tgLSIJ*VejOUjf1oJlwXI>N$zLQbc03I|}l3 zxX@$0TCC^b(}+ArcMuo9tI?O?o3wbRAonpu`&N=(M{gff6H9*#0&dno>)0|(t4cw7 zjmu2M@cxW1|AO8MuS(>4txt7x44m4V~v^z;4sD~BicfO0mPi*R95QTlcl8%AZG>Irpz^W&S z0UCY0f^50Bk@gvZD( zxKZW@rLN@-RN`Vn9EYm%^F$=^eA)ek^ms zF79e&*fx8ZZN$^{zMasGjaoRpN*5pt;MfS2FLMOiQHn15aTlC`-9ZoUUvyZo>Yp`% zhS;%y>YnRp^hT*uuWuE-MD41d?MpCp^ty87w;vy;(q+Rptq zQzhvx+*{ZW?8Mko`yh*tE-&!x1`GFSVkE#7&ETN8w^$wW)hz`T3c z7HawT=7CS`#SAU+JArLW^6Hbh`Y4o8t>qnS_2SABU^bqy=$cpg87lGLkT~~jFSTJd zl=Rw&R%T19UeuaJi@_z$*Ug?&>>OD>uYHxI|cU}`e@I>=AHX5j?s*+U9vAt|LXkO8b7UyaGlKY z6Cbe_M((!4kh(?It2a+*JQie{wGQZ`U}qX|bw#ci8S&vfpJm;n`Sc{gpow7 zFvj;Ml;e8>xFHTt7D?ZHKc$E;{==4|b<+GKFhq}>jc;em3eUh3(LZWR+WBRTVG-Z_L?fXqxvTzPl z#@;4CY#X3>Hm`!F{t5;WfFHkFbG(mC^FOD#`y!1}6hBe{0fKSDS_cB;JhcLN<Xh9HO|`d~R@{#W1IYv$lRf4t|32nDGan-g??0 z+!UFshk;@a7_7ypL&d4X{vmWkr1-=m6#&*qi;nRut)p(Lxnm4HB7!@j_;0-#y!c%y zQy!R0EvIyL2U){nK&}uS%4YFkME=^5k&(UzTxsY-`4T1;6t0yeJOhA!fv#nVbXI~9 z2B||ewQ{4Pe_$1`++^NF-yD-GLA8{P%~^p)XD1;Aq5ziefzBV{NcIhJSQ4eHOS<^u zfN>_=>ru$6Addnn<6|5XYyN!Px;c9zD`ODbbBWP(7@X7&WOd@xlw!wb?hGHvu#83W z&|~{yS)6KU86D7dV$?Y-nZa*^1BE4g^^SAP7T$LIa#Pp76ZJg8xd5O})f%hGBc`AR znoq3r0;V>~jw8#WevY-Rt?<(gsER>AP`K?csXeF zGoFh*tPI9pCI3f|;ZreS>vfx%)XuG@;0qB&ddk3A=a9>OQk)J4{Iye=(88FPdyOt$ zEsw_89ay~nOg)zGA+vMd%$F{cb!p=fPrWlx_=w!6xY(~_sz~JrNG3)20g*Xo0+Xu| zQJ|Z_$mhyZP9IY!!_mxQ78xOAp;zTgmt4@tjwlOvbRV+|U=dP3HMhkyL5=Zx4$n@> z8A8KeVT1m%_fxk3d|xtPdch6^74>*)jW5zk<3??^&n%PIILb|UK?Mlw_h7cD1B^9r zcpid>vZ#MOk1GI#WLhwSHVC!CDPo4cM*jD^F9TElmlgn*1n4A^p=U@$rvqVa+555} zSx2*l#L=ah)giLia8rrX$yJ1rE%`L>Zl$x}z1D0a2o>gO{ZU@%@gG14tfV^==#cvc z0W)rBOI(a3M2NBIRgEIX{c<^zY)g}PK^d@}aang0XeVb|`?GKwB(XQhbtG?3_%tiN zx%H^CiQIYXo-dz~QLDR<0PAM1(i>w{Zi7lzA!;^m4?;6M5~fRaD9=6?Qvr{)-Sh@q z4Fvd(0$vCSzTGO(5i9gGIU`e_Tl7fFq|r|s(e`dOYN5f&ikZoV>8CE7&GH==$AdJClcTo4^a#~~!p%nA^; z6fGSw1+Ao_l?Jrk5mD_apZR27k+awV&HpEj_l zCftMXFvBXA0woMp2;J33JKk{BQVSPsYAac^T`uuGwe`;8vDA*2?w`vFtL!aHB9gAw zq8hA0r&yc6<7}QMY`o;bLM|$?c?w*~VR9~pLkMEQ3f^1@Vj>fA9wMv0D4{a47)&~b zXF57AbTv#9l{z#X+0++s;>Uefn*1_!ManGPwZ*@kL)l>$3k}54drx0Ir0UXKCBq_X zDqV(Ty_6EH9m91QkUtOru>GAdfO(4edxD$_L#0q}DuB6EWh&Kiw{=qFwKcf zB7AbKF|__HbB_RhK|FL8t(zeOJ%fWvrRdvXG&jyUVk|fogZQEGKR-S1S*c^)N^>(9 zsTL-u=(9EX>8CdmL`}IA4p+P;YVNKzCqiBlcYd^uG<}peV=Xlk^>fZTpdVJ1-f|-; zlJ!ypJH191#HhqgoQ%O&1(_+DIDSk2_?OP<$mq(Jiw8Z$@#Wup9(m2juObdSif zJvrNuc+PJ#d2N&^q_o<^ZIgS}KGItzjOq@AVhsYX(WYez<7K9 zu-y%0wrW0a`hnW3C=QdyBj?}Z$_EFE6{i|WbE5r;367a5(~+K!Fp*&dHAtyDE95Bp zClz)GEeSs}N*cp~pXz+*t+SA5eu#P*6B!mq-c0j^6sAyDO1GhmeqA2*vLxztK~Z3G z)s?c8TPAFv?o{0VX^DHiO&-?cZ_NO$(v0~!~Y8&SvsSiOupD>4` z&>c!2?n2N(o1uUTOA$4uEK*EGl(+)vRn@A~?l~w9svq7<2?$Z7JX}YL((xM5!m7jU zaPk1y{$`sv2&y{!C|@q$X7IOnKjz8FNoGMc#rp#2`C!iDk$=>V()z>S6i43qa$6(_ zyuR?wAsKO}St>in3DYZ>*w4KUeA}etcbpRI{Z?0A zJh8|2%~Z7v6x!t!*FbV0&2B#J+AcZcvPr&8)yIl$f5YY{39e`Us=1iT@~QpUC|3QR z)7moa`PgXwbb@*-`tN+&!zmdybECF{+YWBT0;;5g_jmvEyYur~>49Cy&a1ecna@(J zEtl9=WIi>XF6mDwyEiE7M?DgvF7MV}{qZOwojx1o^uhg`@`m-tPm+k+BqWYpuY@i^ zDD^(Y^vefzX!TeK?aF07IXa|X>Qm8+Ur}w?(jgpZ3GZ)5E zsq&;x9*9_vx-Xpy9sWD8)-KhDU=Fe4>7F^H;RanX+C@Ujo8Y|$zPD$c;DYoAUm^tu z|Fa=jca|PGc5#uzM)P?X`bI(X&-+6#fR9{(BVDr2MIvJ$;6IyqN&F^Y_29Av5M~cRD zc62Kn((LQPis7OU5iXB+_IHKo>4IY@k?g=%Ta|R6=g7x@OWc0@((e{1pi|J2`;%D} zcC`O!uvH&;CG}^>#jC#VMD|jAlo|$|>Im7+aw-yEDU8hrp<35(wc^lfmDb6M`D-?T zJ{+I^NA0KX@vvq67p22%002Pszi4KP{Rdh7UuBD+>{VpQ9^|`xP5ox!2f*O8eC-%s3`kN8bzny7vL71e{tFLO8A=q94@+bM7MXiEw z;00%(m7Q~)JrR;t8)V|(;NY`yaB%Puwi+D^gx_<|rAZvlfZ-|8WD17JL`Vzaq1arP z13n;{&L^S{XR<5Na1RZ!6!+dppqB`9d)X1Eoqabv5UGk`Tb}o@kU}qZb+L$(OlclY zb`$Q`2<$~BqJzcgqt0S#hIRL5cf>so#&7tbJW-r9w3wv3i{|*BIq!Q) zV->`XDJCNlq%BHJK#Xx}13SeHLhmb)rJ40RcNh6ym56x(zCZxr1#S+pJZ*_Ksq!#m z5Y0sO2YaoPf<3SC1b^;1t8;K1I^T{37hnf) z0OtR|+$cR^?ES&~jg?dlU2RAR)p1{7udaT zO%_lff-`cQcF0;c-s(`Li0!@3F^zUqlpj4o`D2}@4^m6>bGwbTb1JY-l11hZ=nmFD zEhZQb#FR$DGUqmo0j3%0AYNb3Em&u!q0Q5W0^{BR0!lOD=r(dAcy#wmEXOp${i3HC zaGB=loxwvn&A`uz8ZKmvUdBVro@e&uk5%x`W>AUOS8;*Ip96A)LL-mQy5|Mz$LvjD zWit(h-&MA6U{St>lso%?=SVj+m~o79se=S1bsiVyXi)M9E-43D=aLr#M#cl0Dr_xy z!G||~E&`AO#s$OHgsV#r;jgQ~kSJGF!RH!=Ot4yBHX%j;v&tqy9Ko1cT>pU6EMaSI zfHK*>Aja`>HREn$a$<2Z%O;m^uT<6VEM6HiG1!!}B~-ikhZhof3;}5YGko#ku5(?) zQEuC_Ok%;}ZnJC{JW9_YoCyT1Q!O@IFr*7=mbiqtD`HNe;5vHL^!wDcCxoAB{EBrj z(3h+)iM(I2?l^!X%#D3!o-x0OU`bRUy}h!r<=zov>@4@C1UNyAl8XuJe#r0Cvt?L9 z>X}P%p&@?KUSrSG7FbQb`a!eyb4C5l@DuOA52y33wE9NEN*+cdMR|NiDN9U+*65)LMYV za4459u;5r)eZ7J4s6jiY1;Ek#xv}RX_|vF z`7ys-9>IbsI(I<~AjA*E3KS~9jzpI;bax||FUUI5#~iqn!Bq$EgIe^cRr)>f`;)Fd zCvR_!KuV&_zQL53e!V)sd<5IPrN0hLp$@J(lj@T1GOwV|j%4{aj_ehsk2gL>FP=m{ zo}2+}L@o_D?O=5%x*efA zAV5=}%!e68|HypL;4v1@x4Zav48Z@*YuBW9st8AAjN5NgEWj;od5;;<)`%c(6{gd- zp3Jq=rO6?kaFe)2&07cg*+mG>k?j94TLhptrB|eNc1tV7n~zVujt)m`l`t@3j`ine zXa!bd^f~24J?FcCk>%%ZX_b_!w-`VQv5*st_iP7| zMNO8L--9Si5E_sQTX$2GN!3NKB&p%m()Mv36AV-FCDWRrL<{7}?;GeI13;E5a>yLf z+4U;2Pncj2jNfkLS~4iFM2Cd}Wyb@mgRNWZ8}c-6K+LoxUPwuv+aMl|_-1LG>2^RJ z8lrKPHO{fsQr&N0YSd;qF&kc^ejt7TsAW5fbPAZq{MJAY_?+`W-VN@z5pfQOkJp)l$iKN9%#?0TmOceyNmBZ-}>z#^o`v ze$rjEUvcRm%^44qSgaXY*C0e(m*-r6(}u_r`QrkXbaL={M>IZK#od%ITP;1V*}TJz zkKW#odc>Cy=B`mkxbSe%8g3)*n=<_somN?3lU1EQaGPB%jfuFG1)jmc`hvCuTj=Eh zA&sV-HS0mgvR+llji87NMyI1tMg;pV z#P-R&STV3_WSGr{42?r(HCK4Fn>yahZv#4HekeicW0JBC> zFsVDX^;Pasnaw`66hk42SLz1q^j1Nz0Rr`fKl&Vm>P>#=%^()kU-^N^h40`%5r#k3 z&uxZ3-cNtLmwUA52iXVAdHTD2-miQM*NNIyIUQAFzf|yJubcqqQUJj%YtOi8x{n6( zpcCwjLX84q`POGbuIcO+!AlAvC8P~}AZ3#Kl8CC*2)xr&lFHIB7O1rkTD00*>1|S^ zHgv<+U-U8*Oe*35Kbi8VfT@`F%3;?20$yX$K0bkKX1I`zs;(LGRvF>`5Q>iT71MO4 z?%0eru_Wx6_VvJ&P54VeYA6iAsUJyI{9zahy9VN?iJeYa2arTn7YgGA05|ZFR5P5z z{3U4nVd5_tGYC;~*Nq0zdc$d&eJaB)$7iWT9CA`h#~&OH_I{=l zcszW+diw&GQzi25N;gzE=e~@AD5WL|eJYhvg-|J-m7{F@6|%`6>`gKW_A-g;^4aU% zPA9q^eUZQzbYu_l9dWnVQ`Ay2gPTlYtA-`B9HobHv?N@Q`m-EZ%k4{HsZ zMkR?7%6}Ns_ajBdm#!ob1|Hs#_tDP8fh07wx>k9gH~%Q2;4^)pB;dC6rxB)*7)LFl z$0nLia^sIunOh>e`cO2*UWu!?#9gQ~+5CDgcYH<8hpzMK#=;W-?F8MVO%fo`9OyQW zM?>=Br07YHcZbMkXZJBZZs3Q?e`RUx8VfmA@+I?Pt>X2Ep1`%Qm3oVlpA;J1f}dv3 z-p&M_I5f%gliTN@YIb7{_?$+G6NlFMc@T(g^ZzR4jX!)ANH^qHS-6VNKX_olqnsoi zPH6B}!l9g`beDX9(p%mdxS8k}jsE%9=z@E8IliJVSp8En{qm1gr3WceTjNuy+-u1t z*Sy4U@h?u&UVhG@3epZSuizr8>Q|&3#6^@~1xC?kq4K^JC1Dvo*e|NZml3J^8b4gn zhfxAG$XOL1TAvO2|J+D-BFrNNeHg`S0qj3N_pGrrF(+IZDd@u}LFZ{qw!je!w7~o*5;%J1owx#lXC{>b$l9^CyOKMc8 zJ-*5Rv}<~k`;P%Sc`3Xydy7KpK%Tlak>$p0yR~1+2OUFkjBKm6({{c7%Q%&BvKDuE z68|Q0{(dUOYX|L74G|sF*m*_?4uVaKe17F7@y4}R!Dhy8dbVogv%Qk^>|m5jJ9b3 zws@z5?>$izyn2>Ha3?~t%4YD!i_|AbwzMQ-eq=#lAZN`bzY z0Do-NJj&>^O!o@!3Mky^Jv9J&cAwTot+?9&9a|S*mc@ChUqnJV({8HA=a_JvZPl%R zziDj<>knf7#M1ar)TD<27MCAnG=q4L0{2194NsFDy)d9~)g4qX23d))P~f_fx06;{ zVu#7|Eb9T2kw%|xk`3Smc9CKLe?o|v%S|v$bZFCTQ|q(7wP;h1+p8RfVdo7H`q(Go zcuM8h)h0M-Z9YrF3|Iy+S`hqsa>i*Y@P zEz62aH`<6t=jNNhv*RS<_;a}DLUC}j#gPF7(M|lt5u2g6&jg&|7Az-4#XfEnn z(eMK{-i08|bU(}hTqFRDPacMRpxk3-IoE7R%rr--=+`&TqXMGWrAM;6S-)9dcv zTPApU-~t?;&Vd4!A8AlYPqSEQqMn|K8S~@O5O!`v)7tf|CA%qDSYbP{$58ndcZWVd zlvua@R=L$jPL&bKh1_Gilg~!3pc6UI%I1rr%Nn&k?dmJo0`+TrC}2MV{;QI7?&&|| zn!aT*t2ef+3X_5bFOs%8mV5H@KmV3iBnBi>}_vg(d5zLy4NZ)?B#XZ$GnvcW5?a7OOUI zOjwNphK>h0!SQDRA#Z!#?~TN}5X?AyXpJ1IBefN44p~qgT9D8kG$U>gFEwavshg+N zrK%2T)|V`FNIl5tBHgQP9}b8GWgez&5_I%bjojMF;q-gFe?OY3;NU`@0W7flC=M+u zL`szYD?H?8`+&t1D&>(@%~<(489>ca6BQC@th2%mOT|c%WD{L<0K%+MBvFJnqIy-* z!doQE$z#wnj~zrwE;It1DJj_%LiD)FQtMk|j4wL&u?1hvSnK4n=)sWn+HnW4$!BiN#EF#FU~? zJb~w>rq4GM!IG&KSyifnY)E0Rp#8zXQB8pYv#PNBIpS#f&DQa1?+tpDRgs&bo1>mb zf9M4=rBEfaQo8p&`XSuQz^Gp>NqCa)I4oxcm=Yr)QQU{#PBHc z1Du|;M_Y~Z!^ITH(W$ia)ewyd=DBK<=1PFD12X-i^IFNMe66#XddqCX;b2Ea+7+dZ zFha>hx&zyiEmD$A3*iVw$eB>`Z$-?_41TRx0e)1pn@ERFEE`4#vopXR-bfM1yUkYw zC?)3kD^Wn4IpTa&J#YxrgXxS<2^!C5mpkUTO7X?i5rbA2xH58ge`1TN3!QQn5)#B0In!oQn3=uQ`V@r1^9=GMch{b7Q? zqJ+HR4o03CH6$tYFo`nWZC$&{$IY6E!0kb-!Ee|<$+s~`94k791XUAeo;dWN827by zrf&!`;EO7{y*8YlH6Z*wmHmmbx%R4Jjy?uI4VE6+D`ps4kBIU7otY{_2PI1<4hAHj zuOl}L;Vlek7-)>s^|1Cr&eZY&;`*E4U5YLrx+H!vJ}WcDL;mbBPmoCm*JgdU0Cf(r z$dyde)q?sAPAarM2Yxv4epFP?XA||EE!*{lp}&CEg>xL0yVTI37^SFFBd(giL@{&l z)FLy%&dojU`4>I;4Km>m2zx@TPFr-(51)W@r=lI6otd{2U@I~`b$W6-_$qAIHyK8x z65&ig?TZ8b_+B5I{gr*6QHC-NW!<}U@(x>#)12^;rspIggp|$zt;K5d&QgqBaArsB zA{OnDF&2KgmEK@L|6i&HYgOR64~?)|k zy`l;eaqRkES6bU29X1blcW;MsrnkO;kKP{XzgL9}7P7v-%@?84zS)}iJP3~3$sI>v zCzkni9+MY<$+tXtvgTyLMYfR#!SRxEMJa1w|{FvYO^JBNg}I<*8h3!mLS+F1d!-$cEHz8>Z!m zZih5YUImdTobZxj>B<{vvAm0-)HpCJt5Mx6LFVFtQ3!D_m zCdIrvV0i~^G46C@>K>d}5fu}^EUf}}C3#`6*ZR2F??&9n6+2|cgJZqeWeo?GtgPOD zP4(1&w2N9T6~QFCqidJLtA9Pg8{}$08V9REq~PF40JnJc(9wBNti!P&U#z2~)Gjlf zZR!l0^cK!LzPwgtrHmHm_jE#M)Vl~f7gYCNPyXl_ta+-S{@y-Inn(S|5WFeah8w)N z%(?0Ei&tJjo4VkNIkv{jA;4g7w~~dq_rbt8Sc@GP8%iG+K;ZKVZe}oh0hk^WgU7;& z>cJ2zUFN;8z)E(}YOXr-bn7oWodD<*uc(2Fgsy&VZFT#&OVydnQ4ke0|99L#S2t1F zVNmL4cSBycFlv$Ud1DK1-LkwhWB)J;^3AJqQr$6vt-OA{!*dx#;{g?^j#U%Ww5jMC z^{p@Gb^cKTigrFVpI*$YY|b=<2~W=0I-X6|>bzr<*W$@{cr*$RF6%qy@wa6;Ob0(F zz46q%0?Y)PKak@tr+TrlSW{7DuF2ECMZX(x4A%~N$@7R7T}Ciy+a8_ObF4c4uJoGB z)8l8#m1!Qr}iPMFnnIqX9RLE0e{%|foxMexN zXy|uC=jA$E2;@|;QmhsQrscJlfef0LZZZBRP;Rb#v7lYedfZ(^LIY@ zAn>*~cXorkYfkL3PuNAL)}*!l|LCe0bW@9`bShIWNn9Pl63{vIwp`yM+h({en$A7p-rt zNW@kjC$H%1E6cLK@s0fJAYA|T$}+aB9~}P5XYg197g=cHj_Y~?1P=qCjn2NO6_6Lh zm7H~~EpQO$2XeTF`MZ;)P-o9kb1mKf-cD@yAM0UyY!phZY?^Uh@CI$ zUb7BWw|piPvqOtZWTxXKB!HSJc1d%FSN#SR8v-aPPc~RCnkL z&6ZQWu_4-NPU~XmV^o!6p;&>O|A3o*9^{8$Zt>GNx?i7AIi#*hQ%n6TGmdZPxN!Y@ z?>8_7_ap@pI;Va{o@-dps?Qh%#8Rhfx-<}ZD`j5?#?$Mgm8vHzsuJ3Yrw{DLz zE4H>LpE(EkdNx8B;}7eSo^xUM(H*(P7acH< zb1G_*Puin`39SJBnp0t=R|!w8Av0OlL#4g<-1tWMVa`Pq8=w!hArjp&7fPbb=6YBU z?atqy>qxc0#w(H}5B?IHP#*G4NU3~_HWZfwVG{)s%eiCJ0oFh;hsWb3l&?WOXD|^i z5C+vAg+74=BeJH8{ z(!+=aUs^&O|8NCkLJ#w0#LbUOka_Mv!@Ef~nOKA#s8vEJ?1>FR^e6X}6?cVBVmW5sF9 z;8t&;E=%x5p2U@hyr-g5Vj#t zF^=U`s`SJn4yQPB2DnM)Y&q-yniq+IIW_Y)5jAQsuX%svtQqu3!$=+Byjb%B!EKsz zze!6aY4Z_t-g+Nfk?UDLeK>gPBQ|?rIYcFW6MRo@Q4+( zZ-dxdtE?5N2`^PwMl(BkU*cjnH~wp8L-aK6INigNbG(2h&GgTN;FPnRK035vd^Cd| zKG>q43)tAvCgBe0H|>^gUn}HukI#*-hhna@j)QaKt>64#iqM^F8jY_J;BNi!-0X^Q z4inpxF@MMGz}3?kg^pcf(xALXL}(gW!9I$z*mI9`U*|4E7C&XAHp~??7@29dKA(u; z7p9mm8rUkvX=Qvdd;^5RTBKH>OOTXkWPJ>z5jEO4QDVf?ks{q1niu1E6+7qX(qPXU zAh=AlCK%4Uu`JYKG_#+iCgm)J(}w^)VvsQDb|ENh)V7d_=REd0nHvl1<-e<(|=@obcj5C z4AJ#W)n5R#6nl9YBD1y5 zDehBMbdl%P@>kXM+L9dWWTqu3n3Ff5sc!dEBuTx#4c{qJpFVVdjH8KjB84u6r(BDJ z*t_rZhxI;eoMda`b|8oIpthqPDX{#%ItOfn2>mj=-?S(phzujVBDWj1po2q+5R;yY z?p+CAn${E)O9|&R6Zeq}cj8u4QNGurLb|TR?yLg&knWVUDfs!Vy{&7o=~U#FM-J&W zh*U&_LN^)@YfTg$IYH0w*xT9`o-&G6Tkme6;iA5X%*!l@w*vBD5o3wLo`VE-Pz*d`il>TVBqI=3?AZ+j)a<_9 z3dp>9z#r2%Q!C=Elp9IfxJp$dCwDDBcs3Rm>y2+6DBmh#by{`orHHvHHpjo`R+7cvOlIUM#~e)JdWKCxmG?l~i@zj0nu8Jf=FEkA~G zKQ1;hr)I|#Ato#p2n-7-&@*2BnOef=aaL>1gyKjR66|p7rLYl^yf%gnx?}T(o}`4z zC$)O*#Zv*zuPKDUBOVjP>?p?NWD|Lk*di&(TwISUi zvH|+j@!BBrMbY~^MYL2PTGL{&9%fw59jPyv4SuI<;IA#Xf8hLOgD}`NTovprga(hx z+we^^{Wn{iiW}xYc1!j{$q!WKcBIVX@rv&d+ey-n?M7F$qodJ-h_3-?-gg>K!YluJj8o$gyaKJPAT`& zDX8d`sVF{R>)&-Vu9z6k_|DB!GW3C35ZRY#4ZJt#b9US)D(VU#Dqg$`X9{9OwM0;I zREiNoR1nGkcjSAAl*|5n*-T5`G|Ny(nEdB%D5)+L1FFv})<)&F4} zn~Lti=btvOsIz|rg|w+gmJQ40}AZl#^Y#BY*Y&XQRT}^lQ<3AJApqGEv<*7`hT;tuXGSO%+#_ZzT6z z&)wIyQ{}iXLrr+100w?SRUbVo&9{-JE9P5tXlB7=yU!A!Vyc!J2UOI-q8K`rRQr8x zn+?#%=tw0gXHBR^)3dUIGRU^+YQyH3eRH9yGZwcJt0*$;I}%6z%9%PiyO}f+ESXXj zFwxe&ji($&4(BllN4n-+u%<$jcQx_x5LCT2Q*2+W)0SDJa1-IY?L>dj>rLCXXw>!?9n)+`^!*@1*7ITT_I0sin=c5_fR*@=2nn%LnldGN?l=8&k=K;A<{h0 z=acjjRwvf)sjJucLr@%cl8mayR~l%}&mo>Y2y?K>f4^H20Xxf1VL1Ux`_;C(UIxy9 z%D9~)NGW`&2Hi7kTCmVd$|l=?sih#l1s#^oZ?Vi)Spk7JyY_J-<8GPr5&*rq3Euf{ zpxT9^tjd+`jis;G3t(?^y@!gTi(xY1G8%Tz7iZP7x6wsT0oHZt&<2P&VTp-%jsu)Lo~>{NBaCg%9wQ5QMae!eB&cznBj zhXx2|g{9amS@~Mvg*NYL?pE1Pse;As^>yB_*gd3>62ixxo0Cei_zL{RW_u=h3OgUv zq-URj{v?O8F!u?Yuo@@P#pZpFf#PAp&LjDjD5*3#6rM+cIm3c>z*U@0i?W)cC6!Rk zH)gLRTdCk7HLpWCw(F3LuUg=8ugX^v`y~RGU5ZIjY9bWMh*n3X$B|(0>8Z^Xfvc8b z&;f?I;$9`zg5^NdS@+w%Y?YQ&=U%ncB@fTqJN55*!P|nsSp;3n&}zNb0Q?ebWJElA zIX#%Y;XBdZ&q0k}tSH#=ELhl=-mG>PlKv+!Z9llR*6?+(PWD|RNnGmkw?G{d|_(E9We~+vEPxbn5EILK@?`S6l(*F*Yu54pyZLMtT{9g{g zZVg?h4KWm-*V?vgVQ_Pb7K_{il4=+$ZCn~f$)V>%q7-**Ld9wZhs>|noK9*1gLX;t z3?^fZ>(Tbt9Iw}_337V9E{+29qhWS>$%P;){BatSl!PgBmei60{iC3wbK~L#qmn;_ zPTe}D4GW@jk4kh)9TdCFLwOo}DIeQDqS;SrAEl+GyRW}&rZIS;-OB}2%10H&0ww_3 zDp`$sXqe=QvWNeVv3Cd$E$kXBW81cE+qP{RH_nZ1>&CWi+qP{xov*sO>aWJrH9F%n z+56pEOK{5b^dwJWs<7SFx(I7IMvEK;hZJQ8zV0gNYPExl>)>I0;}lI%$+ zc@ps{hYKhWR*Wr%V0sN|+6PyER8*6AD#E2n!Gn}tl3S1uDk_yCQz}`@%uKvf76X`l zptkR8wm`tLBWA=I1@mL@s_MZ---KBetF}gL`6G}3$HCtN`b|Q4$TY|SO6d)z zD}ovfk2XRoz5r?oLMPft#G^xKXe7Zn!lUWfsnj}ZQmIJCP@}x(R~1+XCTQvJ(*-!jC~gd zbx#vFxUrst_9$jU+vzt zblEV~*8dUJ;?SDD>vbQ{zE-Qt{8hJXQd`JoiPTf2T1sr2#EWJ-5f}HYqZyCz9g$oN zlriD8hZ>8sM6EdgJUeY-dATCyQ;`sY(+UY7(kpr)Qm!=E7cNh!6sJX|y`Pixu}e@? zV{i_#$Jnc7SK>9?p6Q+~#|Eeu?WFd-+*12R^m0-;Lqmvvry+e-k6T z2)Z-f>rPAm*@ldKbq3;|X+(kVWtE-E^<)Iv#5;M|f%HX!F0USW^P z;+3-k@W;We9GJeoEI$CHB?sBb--5fq==W>_7+O!dyJ$@C= zGf%7SMRmUTQkQuFQL3yMsp(v^y3;+9DO4^hR?8e^O4vIKkgUo|Jt|`?<^+y^Q&ct$Nb;p5GvcdIvM{u|Nd7f z*OA87@8K!Z-xvM4UuN6-d|k8hi&0JD5Rj&Gr~vq=9&eEtLwz`6DMszS^k~H7_+=i9 z6`LC)L1KYv;@I(uQM--MAh2viO2C5r13-OWtQxtG_46pjf^~?J(-(zZBi@CrIfiS8 zM3L?^`am^EViB2k6eqrmy=d_X1z#YMQ4DkMm^_6PZu!Empu4=an|I5X;^pBz9R0?uVj@>S8__+zAF1e zs?;Tnz%YU;M0aQBNee??ra9s*-57-`E18(9^dBt({OiEHnMdkJ$J_K%gOFk9l`KRD zb0N>pp`sJ!zk8VuM;swgzk>D^8yn9P1I}!y&3D+WFV$m=yHGZYeAy>eOg0ys|~0Og}pv zW+46Hh}Sw29<^lnagWHm#t1&#$QN;Kyv+w~u7DP;_IFi~H@Qj{I(DsW$h^CtkyxgL z-@G?xmTAWM8NnVOVoS7Kth4Pw#D8kOhMH{$PlY@z#QP zy`tT)#q-YLDlhQ5e(656BFNtg=qoijzQ4qym$Csf572p}qlS+z6i)iqMZ|}ohbJXR zga9J+7?Q)9E}VvjW7>10JG4=EY|uL5k(&PkUDmduZD zRw&B$-WCnl((f0x3nVx5Qd%K%`|*&%YTQYGUg``62&an9fWZ=TQ0t-xU8?(}L5z4f zYH2Z?H!S6N{eBS3wkE-N3$)-GamMw=(@VYZ;*DE#r3e2-we!e}0rR}B9F0Ds&frZM z!7dwOG!@Bl)8u*&S|mwSF#nypL?9apj=E<7Z#1^5QrNE5aI7a-{;HS%P$GcNGVsG% z+H>r^w>is4tBb_l#D!AeL&BXTDQ-2t$C$wr&Be8=Vl*e8W{LTO&#K=I*rWTE6{WYq z`K4A=q#d(8=7v8vA5EtpYO&%K1)o7SejBjD?z38|*6OF``ORMY6W$U< zEuvd@?q#X-)wUv=!F3&ub|HGy?xIB^5$_putqGqpPb}BeS?1{!-PAi^0G_}1`swPA z2jQ78Hxa+TN`VXQf+>bju)(S}l~%k$=Z=bkq0QFgVOC*%6|acBP!&xHbW)z`MzGja z(8s!`{5Uo#+ritv=I{hTOD7d<96{_8W%;d?a7B%tin@8P{f=?;XkY51*2M#Ng^ry+ z#qUc;$yo@y>YVG!iHq(S301Z1i!&Qv>96Gou5iv8_-iHqkBYTgk*|9FSLjIiD|Gzd z*|+*XGx>j^5vgrB{i=I?R@7}C;^KK|d?X+CrO8l0*G@+ZrIge@Atd91gV2Kkj!H3q zyxauG^XX-|(#y3??h z(os>0zUZigDKzU8q*+^Za1n}vnrN6!qjY-PY1pj%fg6y(ek2Da7xwjz+!*NZgY#uG ze$BmPQp4)g)J2G+$qGZ2tFuZ6u>QN`^idho;KWHGD0dKMIm_c- zF%2Z z(s4f;{a~8?d906>z7_P@5~q$MgaOEx7te8U03;s$mqY}|=kaa9wA)t%90n+u)*Gh( z05Xs;o7V~Q>_i?U+-es8H<-VR5C86Pxfti3B-cfF@}zGy66soAOb_Hhk_GM;Mf48F z^DK_nV+M@=AExksLlNDJ6_`5>SoRVj-HKT67)7_P;MZ~CmgC-ry+Mwx$9l6MO2*)X zjZB{WN8U?ypRWyWXlo1=nD)im$MIWJx?Sn!4`0h~_95SsBX*GO@5MRnOY+OPGf86T zgzWXM<29Uye9-U(Dq?6KkTE(lNbW0o3JI<_V2*rAPLA5bin~vU`|05X!nycUn+7ibQy8Pn&YwDCyWwv8?nsFug9mMe#vMV5gMfa>U)85 z=By+Hl<^w$eB618G4#lDJkvac?yvF)TRd0GO-Jx(ZwcK4vE>e}YbfxfiH>F8cDvp8 z^;xeMj2%}sBj0{mM6tX7v?uu{+S*c?)lVl`i;}8GMcbF8a$LEnw9$+FXWWt7R>_pu zQ_T3k=s&tJn^76rc~(69sxaAc*iv!5f6~hT!zXG?fPX^GZM;fxM?7-jpKM-~=(SmS zUPm;zhW@BXU(mKSG22iT>dIra#Kw9alR85UHg<*rW`iy8zbYDIDRk5+&;)t^prEp$ zBCSRGknE{+vW)0_F3Tw52&GlG4!hDd4hKG$CuP;qrS`x12ggcHoya!`t6A2Q`5n%~ zj&jO25&GQGr@wy`pRZ=jp4A0aivtnI&r6q&;-DyD<&VKcM8 zb!PW*{edIBJ8(U6M@iA@SJ1FE2q{OCchPPKKV?U@^KbuGY{x(R

4eardF@iC;R7 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%0AaPLsWeH_7#GOJR{5fkY-iv+s& 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 literal 0 HcmV?d00001 diff --git a/springloaded/src/main/java/org/springsource/loaded/Constants.java b/springloaded/src/main/java/org/springsource/loaded/Constants.java index 22e6c25..7dad0a9 100644 --- a/springloaded/src/main/java/org/springsource/loaded/Constants.java +++ b/springloaded/src/main/java/org/springsource/loaded/Constants.java @@ -130,8 +130,14 @@ public interface Constants extends Opcodes { public static int JLC_GETMODIFIERS = 0x0080; public static int JLC_GETMETHODS = 0x0100; public static int JLC_GETCONSTRUCTOR = 0x0200; + public static int JLC_GETDECLAREDCONSTRUCTORS = 0x0400; + public static int JLRM_INVOKE = 0x0800; + public static int JLRF_GET = 0x1000; + public static int JLRF_GETLONG = 0x2000; + public static int JLOS_HASSTATICINITIALIZER = 0x4000; // For rewritten reflection in system classes, these are used: + // The member names are used for fields *and* methods static final String jlcgdfs = "__sljlcgdfs"; static final String jlcgdfsDescriptor = "(Ljava/lang/Class;)[Ljava/lang/reflect/Field;"; static final String jlcgdf = "__sljlcgdf"; @@ -152,6 +158,17 @@ public interface Constants extends Opcodes { static final String jlcgmodsDescriptor = "(Ljava/lang/Class;)I"; static final String jlcgms = "__sljlcgms"; static final String jlcgmsDescriptor = "(Ljava/lang/Class;)[Ljava/lang/reflect/Method;"; - + + // TODO migrate those above to this slightly more comprehensible format + static final String jlcGetDeclaredConstructorsMember = "__sljlcgdcs"; + static final String jlcGetDeclaredConstructorsDescriptor = "(Ljava/lang/Class;)[Ljava/lang/reflect/Constructor;"; + static final String jlrmInvokeMember = "__sljlrmi"; + static final String jlrmInvokeDescriptor = "(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;"; + static final String jlrfGetMember = "__sljlrfg"; + static final String jlrfGetDescriptor = "(Ljava/lang/reflect/Field;Ljava/lang/Object;)Ljava/lang/Object;"; + static final String jlrfGetLongMember = "__sljlrfgl"; + static final String jlrfGetLongDescriptor = "(Ljava/lang/reflect/Field;Ljava/lang/Object;)J"; + static final String jloObjectStream_hasInitializerMethod = "__sljlos_him"; + static final String methodSuffixSuperDispatcher = "_$superdispatcher$"; } diff --git a/springloaded/src/main/java/org/springsource/loaded/ReloadableType.java b/springloaded/src/main/java/org/springsource/loaded/ReloadableType.java index beba62e..673355a 100644 --- a/springloaded/src/main/java/org/springsource/loaded/ReloadableType.java +++ b/springloaded/src/main/java/org/springsource/loaded/ReloadableType.java @@ -1480,4 +1480,8 @@ public class ReloadableType { return superRtype; } } + + public boolean hasStaticInitializer() { + return this.typedescriptor.hasClinit(); + } } diff --git a/springloaded/src/main/java/org/springsource/loaded/SystemClassReflectionRewriter.java b/springloaded/src/main/java/org/springsource/loaded/SystemClassReflectionRewriter.java index 44e3852..b5ff6aa 100644 --- a/springloaded/src/main/java/org/springsource/loaded/SystemClassReflectionRewriter.java +++ b/springloaded/src/main/java/org/springsource/loaded/SystemClassReflectionRewriter.java @@ -1,5 +1,5 @@ /* - * Copyright 2010-2012 VMware and contributors + * Copyright 2010-2014 Pivotal Software, Inc. and contributors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,6 +15,7 @@ */ package org.springsource.loaded; +import java.lang.reflect.Method; import java.util.logging.Level; import java.util.logging.Logger; @@ -53,9 +54,17 @@ import org.objectweb.asm.Opcodes; *
    *
  • getMethods *
+ * Due to ObjectStream (added in SL 1.2.0) + *
    + *
  • Class.getDeclaredConstructors + *
  • Field.get + *
  • Field.getLong + *
  • Method.invoke + *
+ * The method hasStaticInitializer(Class) in ObjectStream needs special handling. * *

- * This class modifiers the calls to the reflective APIs, adds the fields and helper methods. The wiring of the SpringLoaded + * This class modifies the calls to the reflective APIs, adds the fields and helper methods. The wiring of the SpringLoaded * reflectiveinterceptor into types affected by this rewriter is currently done in SpringLoadedPreProcessor. * * @author Andy Clement @@ -70,7 +79,8 @@ public class SystemClassReflectionRewriter { log.info("SystemClassReflectionRewriter running for " + slashedClassName); } ClassReader fileReader = new ClassReader(bytes); - RewriteClassAdaptor classAdaptor = new RewriteClassAdaptor(); + boolean is_jlObjectStream = slashedClassName.equals("java/io/ObjectStreamClass"); + RewriteClassAdaptor classAdaptor = new RewriteClassAdaptor(is_jlObjectStream); // TODO always skip frames? or just for javassist things? fileReader.accept(classAdaptor, ClassReader.SKIP_FRAMES); return new RewriteResult(classAdaptor.getBytes(), classAdaptor.getBits()); @@ -91,16 +101,21 @@ public class SystemClassReflectionRewriter { public String summarize() { StringBuilder s = new StringBuilder(); - s.append((bits & JLC_GETDECLAREDCONSTRUCTOR) != 0 ? "getDeclaredConstructor()" : ""); - s.append((bits & JLC_GETCONSTRUCTOR) != 0 ? "getConstructor()" : ""); - s.append((bits & JLC_GETMODIFIERS) != 0 ? "getModifiers()" : ""); - s.append((bits & JLC_GETDECLAREDFIELDS) != 0 ? "getDeclaredFields() " : ""); - s.append((bits & JLC_GETDECLAREDFIELD) != 0 ? "getDeclaredField() " : ""); - s.append((bits & JLC_GETFIELD) != 0 ? "getField() " : ""); - s.append((bits & JLC_GETDECLAREDMETHODS) != 0 ? "getDeclaredMethods() " : ""); - s.append((bits & JLC_GETDECLAREDMETHOD) != 0 ? "getDeclaredMethod() " : ""); - s.append((bits & JLC_GETMETHOD) != 0 ? "getMethod() " : ""); - s.append((bits & JLC_GETMETHODS) != 0 ? "getMethods() " : ""); + s.append((bits & JLC_GETDECLAREDCONSTRUCTORS) != 0 ? "Class.getDeclaredConstructors()":""); + s.append((bits & JLC_GETDECLAREDCONSTRUCTOR) != 0 ? "Class.getDeclaredConstructor()" : ""); + s.append((bits & JLC_GETCONSTRUCTOR) != 0 ? "Class.getConstructor()" : ""); + s.append((bits & JLC_GETMODIFIERS) != 0 ? "Class.getModifiers()" : ""); + s.append((bits & JLC_GETDECLAREDFIELDS) != 0 ? "Class.getDeclaredFields() " : ""); + s.append((bits & JLC_GETDECLAREDFIELD) != 0 ? "Class.getDeclaredField() " : ""); + s.append((bits & JLC_GETFIELD) != 0 ? "Class.getField() " : ""); + s.append((bits & JLC_GETDECLAREDMETHODS) != 0 ? "Class.getDeclaredMethods() " : ""); + s.append((bits & JLC_GETDECLAREDMETHOD) != 0 ? "Class.getDeclaredMethod() " : ""); + s.append((bits & JLC_GETMETHOD) != 0 ? "Class.getMethod() " : ""); + s.append((bits & JLC_GETMETHODS) != 0 ? "Class.getMethods() " : ""); + s.append((bits & JLRM_INVOKE) != 0 ? "Method.invoke() " : ""); + s.append((bits & JLRF_GET) != 0 ? "Field.get() " : ""); + s.append((bits & JLRF_GETLONG) != 0 ? "Field.getLong() " : ""); + s.append((bits & JLOS_HASSTATICINITIALIZER) != 0 ? "jlObjectStream.hasStaticInitializer() " : ""); return s.toString().trim(); } } @@ -110,6 +125,7 @@ public class SystemClassReflectionRewriter { private ClassWriter cw; int bits = 0x0000; private String classname; + private boolean is_jlObjectStream; // enum SpecialRewrite { NotSpecial, java_io_ObjectStreamClass_2 }; // private SpecialRewrite special = SpecialRewrite.NotSpecial; @@ -119,11 +135,14 @@ public class SystemClassReflectionRewriter { String s = new StringBuilder(owner).append(".").append(methodName).toString(); return MethodInvokerRewriter.RewriteClassAdaptor.intercepted.contains(s); } - - public RewriteClassAdaptor() { - // TODO should it also compute frames? + + public RewriteClassAdaptor(boolean is_jlObjectStream) { super(ASM5,new ClassWriter(ClassWriter.COMPUTE_MAXS)); cw = (ClassWriter) cv; + this.is_jlObjectStream = is_jlObjectStream; + if (this.is_jlObjectStream) { + bits |= JLOS_HASSTATICINITIALIZER; + } } public byte[] getBytes() { @@ -143,9 +162,29 @@ public class SystemClassReflectionRewriter { // special = SpecialRewrite.java_io_ObjectStreamClass_2; // } } + + static Method m = null; + + private static boolean hasStaticInitializer(Class cl) { + try { + return (Boolean)m.invoke(null,cl); + }catch (Exception e) { + return false; + } + } @Override public MethodVisitor visitMethod(int flags, String name, String descriptor, String signature, String[] exceptions) { +// if (is_jlObjectStream) { +// // TODO [serialization] clear those caches in the JVMPlugin +// // TODO [serialization] deal with FieldReflectors and changing formats? Maybe leave that for now and assume all the real fields are 'first'? +// // TODO [serialization] because not all classes to be serialized are reloadable ones, we'll need to change what we do here, generate the existing native method but an additional one that can delegate to it or call our SL layer +// if (name.equals("hasStaticInitializer")) { +// bits |= JLOS_HASSTATICINITIALIZER; +// SystemClassReflectionGenerator.generateJLObjectStream_hasStaticInitializer(cw, classname); +// return null; +// } +// } MethodVisitor mv = super.visitMethod(flags, name, descriptor, signature, exceptions); return new RewritingMethodAdapter(mv); } @@ -181,12 +220,27 @@ public class SystemClassReflectionRewriter { if ((bits & JLC_GETDECLAREDCONSTRUCTOR) != 0) { SystemClassReflectionGenerator.generateJLCGDC(cw, classname); } + if ((bits & JLC_GETDECLAREDCONSTRUCTORS) != 0) { + SystemClassReflectionGenerator.generateJLC_GetDeclaredConstructors(cw, classname); + } if ((bits & JLC_GETMETHODS) != 0) { SystemClassReflectionGenerator.generateJLCGetXXXMethods(cw, classname, "getMethods"); } if ((bits & JLC_GETCONSTRUCTOR) != 0) { SystemClassReflectionGenerator.generateJLCGC(cw, classname); } + if ((bits & JLRM_INVOKE) != 0) { + SystemClassReflectionGenerator.generateJLRM_Invoke(cw, classname); + } + if ((bits & JLRF_GET) != 0) { + SystemClassReflectionGenerator.generateJLRF_Get(cw, classname); + } + if ((bits & JLRF_GETLONG) != 0) { + SystemClassReflectionGenerator.generateJLRF_GetLong(cw, classname); + } + if (this.is_jlObjectStream) { + SystemClassReflectionGenerator.generateJLObjectStream_hasStaticInitializer(cw, classname); + } } class RewritingMethodAdapter extends MethodVisitor implements Opcodes, Constants { @@ -279,6 +333,11 @@ public class SystemClassReflectionRewriter { return true; } } + else if (is_jlObjectStream && owner.equals(classname) && name.equals("hasStaticInitializer")) { + // Call our interception method generated into this type + mv.visitMethodInsn(INVOKESTATIC,classname,jloObjectStream_hasInitializerMethod,desc); + return true; + } return false; } @@ -319,6 +378,11 @@ public class SystemClassReflectionRewriter { bits |= JLC_GETDECLAREDCONSTRUCTOR; mv.visitMethodInsn(INVOKESTATIC, classname, jlcgdc, jlcgdcDescriptor); return true; + } else if (name.equals("getDeclaredConstructors")) { + // stack on arrival: + bits |= JLC_GETDECLAREDCONSTRUCTORS; + mv.visitMethodInsn(INVOKESTATIC, classname, jlcGetDeclaredConstructorsMember,jlcGetDeclaredConstructorsDescriptor); + return true; } else if (name.equals("getConstructor")) { // stack on arrival: bits |= JLC_GETCONSTRUCTOR; @@ -344,10 +408,28 @@ public class SystemClassReflectionRewriter { // seen: in Proxy Constructor.newInstance() is used on the newly created proxy class - we don't need to intercept that return false; } + } else if (owner.equals("java/lang/reflect/Method")) { + if (name.equals("invoke")) { + bits |= JLRM_INVOKE; + // stack on arrival: + mv.visitMethodInsn(INVOKESTATIC, classname, jlrmInvokeMember, jlrmInvokeDescriptor); + return true; + } + } else if (owner.equals("java/lang/reflect/Field")) { + if (name.equals("get")) { + bits |= JLRF_GET; + // stack on arrival: + mv.visitMethodInsn(INVOKESTATIC, classname, jlrfGetMember, jlrfGetDescriptor); + return true; + } else if (name.equals("getLong")) { + bits |= JLRF_GETLONG; + // stack on arrival: + mv.visitMethodInsn(INVOKESTATIC, classname, jlrfGetLongMember, jlrfGetLongDescriptor); + return true; + } } System.err.println("!!! SystemClassReflectionRewriter: nyi for " + owner + "." + name); return false; - //throw new IllegalStateException("nyi for " + owner + "." + name); } } } @@ -463,6 +545,312 @@ class SystemClassReflectionGenerator implements Constants { // return 0; // } // } + +// public static Method __sljlcgdcs; +// private static Constructor[] __sljlcgdcs(Class clazz) { +// if (__sljlcgdcs == null) { +// return clazz.getDeclaredConstructors(); +// } +// try { +// return (Constructor[])__sljlcgdcs.invoke(null,clazz); +// } catch (Exception e) { +// return null; +// } +// } + +// public static Method __sljlrmi; +// private static Object __sljlrmi(Method method, Object instance, Object[] args) throws InvocationTargetException, IllegalAccessException { +// if (__sljlrmi == null) { +// return method.invoke(instance,args); +// } +// try { +// return __sljlrmi.invoke(null, method, instance, args); +// } catch (Exception e) { +// return null; +// } +// } + +// public static Method __sljlrfg; +// private static Object __sljlrfg(Field field, Object instance) throws IllegalArgumentException, IllegalAccessException { +// if (__sljlrfg == null) { +// return field.get(instance); +// } +// try { +// return __sljlrfg.invoke(null, field,instance); +// } catch (Exception e) { +// return null; +// } +// } + +// public static Method __sljlrfgl; +// private static long __sljlrfgl(Field field, Object instance) throws IllegalArgumentException, IllegalAccessException { +// if (__sljlrfgl == null) { +// return field.getLong(instance); +// } +// try { +// return (Long)__sljlrfgl.invoke(null, field, instance); +// } catch (Exception e) { +// return 0; +// } +// } + + public static void generateJLRF_GetLong(ClassWriter cw, String classname) { + FieldVisitor fv = cw.visitField(ACC_PUBLIC + ACC_STATIC, jlrfGetLongMember, "Ljava/lang/reflect/Method;", null, null); + fv.visitEnd(); + + MethodVisitor mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC, jlrfGetLongMember, jlrfGetLongDescriptor, + null, new String[]{"java/lang/IllegalAccessException","java/lang/IllegalArgumentException"}); + mv.visitCode(); + Label l0 = new Label(); + Label l1 = new Label(); + Label l2 = new Label(); + mv.visitTryCatchBlock(l0, l1, l2, "java/lang/Exception"); + Label l3 = new Label(); + mv.visitLabel(l3); + mv.visitFieldInsn(GETSTATIC, classname, jlrfGetLongMember, "Ljava/lang/reflect/Method;"); + mv.visitJumpInsn(IFNONNULL, l0); + Label l4 = new Label(); + mv.visitLabel(l4); + mv.visitVarInsn(ALOAD, 0); + mv.visitVarInsn(ALOAD, 1); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/reflect/Field", "getLong", "(Ljava/lang/Object;)J"); + mv.visitInsn(LRETURN); + mv.visitLabel(l0); + mv.visitFieldInsn(GETSTATIC, classname, jlrfGetLongMember, "Ljava/lang/reflect/Method;"); + mv.visitInsn(ACONST_NULL); + mv.visitInsn(ICONST_2); + mv.visitTypeInsn(ANEWARRAY, "java/lang/Object"); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_0); + mv.visitVarInsn(ALOAD, 0); // target field + mv.visitInsn(AASTORE); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_1); + mv.visitVarInsn(ALOAD, 1); // instance on which to get the field + mv.visitInsn(AASTORE); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/reflect/Method", "invoke", + "(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;"); + mv.visitLabel(l1); + mv.visitTypeInsn(CHECKCAST, "java/lang/Long"); + mv.visitMethodInsn(INVOKEVIRTUAL,"java/lang/Long","longValue","()J"); + mv.visitInsn(LRETURN); + mv.visitLabel(l2); + mv.visitVarInsn(ASTORE, 2); + Label l5 = new Label(); + mv.visitLabel(l5); + Label l6 = new Label(); + mv.visitLabel(l6); + mv.visitLdcInsn(0L); + mv.visitInsn(LRETURN); + Label l7 = new Label(); + mv.visitLabel(l7); + mv.visitMaxs(8, 4); + mv.visitEnd(); + } + + /** + * Create a method that can be used to intercept the calls to hasStaticInitializer made in the ObjectStreamClass. + * The method will ask SpringLoaded whether the type has a static initializer. SpringLoaded will be able to answer + * if it is a reloadable type. If it is not a reloadable type then springloaded will throw an exception which will + * be caught here and the 'regular' call to hasStaticInitializer will be made. + * + * @param cw the classwriter to create the method in + * @param classname the name of the class being visited + */ + public static void generateJLObjectStream_hasStaticInitializer( + ClassWriter cw, String classname) { + FieldVisitor fv = cw.visitField(ACC_PUBLIC + ACC_STATIC, jloObjectStream_hasInitializerMethod, "Ljava/lang/reflect/Method;", null, null); + fv.visitEnd(); + + MethodVisitor mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC, jloObjectStream_hasInitializerMethod, "(Ljava/lang/Class;)Z", null, null); + mv.visitCode(); + Label l0 = new Label(); + Label l1 = new Label(); + Label l2 = new Label(); + mv.visitTryCatchBlock(l0, l1, l2, "java/lang/Exception"); + mv.visitLabel(l0); + mv.visitFieldInsn(GETSTATIC, classname, jloObjectStream_hasInitializerMethod, "Ljava/lang/reflect/Method;"); + mv.visitInsn(ACONST_NULL); + mv.visitInsn(ICONST_1); + mv.visitTypeInsn(ANEWARRAY,"java/lang/Object"); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_0); + mv.visitVarInsn(ALOAD, 0); + mv.visitInsn(AASTORE); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/reflect/Method", "invoke", + "(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;"); + mv.visitTypeInsn(CHECKCAST, "java/lang/Boolean"); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Boolean", "booleanValue", "()Z"); + mv.visitLabel(l1); + mv.visitInsn(IRETURN); + mv.visitLabel(l2); + // If not a reloadable type, we'll end up here (the method we called threw IllegalStateException), just make that native method call + mv.visitVarInsn(ASTORE, 1); + mv.visitVarInsn(ALOAD,0); + mv.visitMethodInsn(INVOKESTATIC, classname, "hasStaticInitializer","(Ljava/lang/Class;)Z"); + mv.visitInsn(IRETURN); + mv.visitMaxs(3, 1); + mv.visitEnd(); + } + + public static void generateJLRF_Get(ClassWriter cw, String classname) { + FieldVisitor fv = cw.visitField(ACC_PUBLIC + ACC_STATIC, jlrfGetMember, "Ljava/lang/reflect/Method;", null, null); + fv.visitEnd(); + + MethodVisitor mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC, jlrfGetMember, jlrfGetDescriptor, + null, new String[]{"java/lang/IllegalAccessException","java/lang/IllegalArgumentException"}); + mv.visitCode(); + Label l0 = new Label(); + Label l1 = new Label(); + Label l2 = new Label(); + mv.visitTryCatchBlock(l0, l1, l2, "java/lang/Exception"); + Label l3 = new Label(); + mv.visitLabel(l3); + mv.visitFieldInsn(GETSTATIC, classname, jlrfGetMember, "Ljava/lang/reflect/Method;"); + mv.visitJumpInsn(IFNONNULL, l0); + Label l4 = new Label(); + mv.visitLabel(l4); + mv.visitVarInsn(ALOAD, 0); + mv.visitVarInsn(ALOAD, 1); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/reflect/Field", "get", "(Ljava/lang/Object;)Ljava/lang/Object;"); + mv.visitInsn(ARETURN); + mv.visitLabel(l0); + mv.visitFieldInsn(GETSTATIC, classname, jlrfGetMember, "Ljava/lang/reflect/Method;"); + mv.visitInsn(ACONST_NULL); + mv.visitInsn(ICONST_2); + mv.visitTypeInsn(ANEWARRAY, "java/lang/Object"); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_0); + mv.visitVarInsn(ALOAD, 0); // target field + mv.visitInsn(AASTORE); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_1); + mv.visitVarInsn(ALOAD, 1); // instance on which to get the field + mv.visitInsn(AASTORE); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/reflect/Method", "invoke", + "(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;"); + mv.visitLabel(l1); + mv.visitInsn(ARETURN); + mv.visitLabel(l2); + mv.visitVarInsn(ASTORE, 2); + Label l5 = new Label(); + mv.visitLabel(l5); + Label l6 = new Label(); + mv.visitLabel(l6); + mv.visitInsn(ACONST_NULL); + mv.visitInsn(ARETURN); + Label l7 = new Label(); + mv.visitLabel(l7); + mv.visitMaxs(8, 4); + mv.visitEnd(); + } + + public static void generateJLRM_Invoke(ClassWriter cw, String classname) { + FieldVisitor fv = cw.visitField(ACC_PUBLIC + ACC_STATIC, jlrmInvokeMember, "Ljava/lang/reflect/Method;", null, null); + fv.visitEnd(); + + MethodVisitor mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC, jlrmInvokeMember, jlrmInvokeDescriptor, + null, new String[]{"java/lang/IllegalAccessException","java/lang/reflect/InvocationTargetException"}); + mv.visitCode(); + Label l0 = new Label(); + Label l1 = new Label(); + Label l2 = new Label(); + mv.visitTryCatchBlock(l0, l1, l2, "java/lang/Exception"); + Label l3 = new Label(); + mv.visitLabel(l3); + mv.visitFieldInsn(GETSTATIC, classname, jlrmInvokeMember, "Ljava/lang/reflect/Method;"); + mv.visitJumpInsn(IFNONNULL, l0); + Label l4 = new Label(); + mv.visitLabel(l4); + mv.visitVarInsn(ALOAD, 0); + mv.visitVarInsn(ALOAD, 1); + mv.visitVarInsn(ALOAD, 2); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/reflect/Method", "invoke", "(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;"); + mv.visitInsn(ARETURN); + mv.visitLabel(l0); + mv.visitFieldInsn(GETSTATIC, classname, jlrmInvokeMember, "Ljava/lang/reflect/Method;"); + mv.visitInsn(ACONST_NULL); + mv.visitInsn(ICONST_3); + mv.visitTypeInsn(ANEWARRAY, "java/lang/Object"); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_0); + mv.visitVarInsn(ALOAD, 0); // target method + mv.visitInsn(AASTORE); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_1); + mv.visitVarInsn(ALOAD, 1); // instance on which to call the method + mv.visitInsn(AASTORE); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_2); + mv.visitVarInsn(ALOAD, 2); // arguments to method call + mv.visitInsn(AASTORE); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/reflect/Method", "invoke", + "(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;"); + mv.visitLabel(l1); + mv.visitInsn(ARETURN); + mv.visitLabel(l2); + mv.visitVarInsn(ASTORE, 3); + Label l5 = new Label(); + mv.visitLabel(l5); + Label l6 = new Label(); + mv.visitLabel(l6); + mv.visitInsn(ACONST_NULL); + mv.visitInsn(ARETURN); + Label l7 = new Label(); + mv.visitLabel(l7); + mv.visitMaxs(8, 4); + mv.visitEnd(); + } + + public static void generateJLC_GetDeclaredConstructors(ClassWriter cw, String classname) { + FieldVisitor fv = cw.visitField(ACC_PUBLIC + ACC_STATIC, jlcGetDeclaredConstructorsMember, "Ljava/lang/reflect/Method;", null, null); + fv.visitEnd(); + + MethodVisitor mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC, jlcGetDeclaredConstructorsMember, jlcGetDeclaredConstructorsDescriptor, + null, null); + mv.visitCode(); + Label l0 = new Label(); + Label l1 = new Label(); + Label l2 = new Label(); + mv.visitTryCatchBlock(l0, l1, l2, "java/lang/Exception"); + Label l3 = new Label(); + mv.visitLabel(l3); + mv.visitFieldInsn(GETSTATIC, classname, jlcGetDeclaredConstructorsMember, "Ljava/lang/reflect/Method;"); + mv.visitJumpInsn(IFNONNULL, l0); + Label l4 = new Label(); + mv.visitLabel(l4); + mv.visitVarInsn(ALOAD, 0); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Class", "getDeclaredConstructors", "()[Ljava/lang/reflect/Constructor;"); + mv.visitInsn(ARETURN); + mv.visitLabel(l0); + mv.visitFieldInsn(GETSTATIC, classname, jlcGetDeclaredConstructorsMember, "Ljava/lang/reflect/Method;"); + mv.visitInsn(ACONST_NULL); + mv.visitInsn(ICONST_1); + mv.visitTypeInsn(ANEWARRAY, "java/lang/Object"); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_0); + mv.visitVarInsn(ALOAD, 0); + mv.visitInsn(AASTORE); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/reflect/Method", "invoke", + "(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;"); + mv.visitTypeInsn(CHECKCAST, "[Ljava/lang/reflect/Constructor;"); + mv.visitLabel(l1); + mv.visitInsn(ARETURN); + mv.visitLabel(l2); + mv.visitVarInsn(ASTORE, 1); + Label l5 = new Label(); + mv.visitLabel(l5); + Label l6 = new Label(); + mv.visitLabel(l6); + mv.visitInsn(ACONST_NULL); + mv.visitInsn(ARETURN); + Label l7 = new Label(); + mv.visitLabel(l7); + // mv.visitLocalVariable("clazz", "Ljava/lang/Class;", "Ljava/lang/Class<*>;", l3, l7, 0); + // mv.visitLocalVariable("e", "Ljava/lang/Exception;", null, l5, l7, 1); + mv.visitMaxs(6, 2); + mv.visitEnd(); + } public static void generateJLCGMODS(ClassWriter cw, String classname) { FieldVisitor fv = cw.visitField(ACC_PUBLIC + ACC_STATIC, "__sljlcgmods", "Ljava/lang/reflect/Method;", null, null); diff --git a/springloaded/src/main/java/org/springsource/loaded/agent/JVMPlugin.java b/springloaded/src/main/java/org/springsource/loaded/agent/JVMPlugin.java index 832945a..ef08895 100644 --- a/springloaded/src/main/java/org/springsource/loaded/agent/JVMPlugin.java +++ b/springloaded/src/main/java/org/springsource/loaded/agent/JVMPlugin.java @@ -18,11 +18,14 @@ package org.springsource.loaded.agent; import java.beans.BeanInfo; import java.beans.Introspector; import java.lang.ref.Reference; +import java.lang.ref.ReferenceQueue; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.security.ProtectionDomain; import java.util.Collection; import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; import org.springsource.loaded.GlobalConfiguration; import org.springsource.loaded.LoadtimeInstrumentationPlugin; @@ -50,11 +53,58 @@ public class JVMPlugin implements ReloadEventProcessorPlugin, LoadtimeInstrument private Field threadGroupContext_contextsField; /* Map */ private Method threadGroupContext_removeBeanInfoMethod; /* removeBeanInfo(Class type) { */ + + private void tidySerialization(Class reloadedClass) { +// if (true) return; + try { + Class clazz = Class.forName("java.io.ObjectStreamClass$Caches"); + Field localDescsField = clazz.getDeclaredField("localDescs"); + localDescsField.setAccessible(true); + ConcurrentMap cm = (ConcurrentMap)localDescsField.get(null); + // TODO [serialization] a bit extreme to wipe out everything + cm.clear(); +// Field reflectorsField = clazz.getDeclaredField("reflectors"); +// reflectorsField.setAccessible(true); +// cm = (ConcurrentMap)reflectorsField.get(null); +// cm.clear(); + } catch (ClassNotFoundException e) { + throw new IllegalStateException(e); + } catch (NoSuchFieldException e) { + throw new IllegalStateException(e); + } catch (SecurityException e) { + throw new IllegalStateException(e); + } catch (IllegalArgumentException e) { + throw new IllegalStateException(e); + } catch (IllegalAccessException e) { + throw new IllegalStateException(e); + } + + +// private static class Caches { +// /** cache mapping local classes -> descriptors */ +// static final ConcurrentMap> localDescs = +// new ConcurrentHashMap<>(); +// +// /** cache mapping field group/local desc pairs -> field reflectors */ +// static final ConcurrentMap> reflectors = +// new ConcurrentHashMap<>(); +// +// /** queue for WeakReferences to local classes */ +// private static final ReferenceQueue> localDescsQueue = +// new ReferenceQueue<>(); +// /** queue for WeakReferences to field reflectors keys */ +// private static final ReferenceQueue> reflectorsQueue = +// new ReferenceQueue<>(); +// } + } + + @SuppressWarnings({ "restriction", "unchecked" }) public void reloadEvent(String typename, Class clazz, String encodedTimestamp) { if (pluginBroken) { return; } + tidySerialization(clazz); if (introspectorLoaded) { // Clear out the Introspector BeanInfo cache entry that might exist for this class diff --git a/springloaded/src/main/java/org/springsource/loaded/agent/SpringLoadedPreProcessor.java b/springloaded/src/main/java/org/springsource/loaded/agent/SpringLoadedPreProcessor.java index eb461a9..1ba852f 100644 --- a/springloaded/src/main/java/org/springsource/loaded/agent/SpringLoadedPreProcessor.java +++ b/springloaded/src/main/java/org/springsource/loaded/agent/SpringLoadedPreProcessor.java @@ -88,6 +88,12 @@ public class SpringLoadedPreProcessor implements Constants { systemClassesContainingReflection.add("java/lang/reflect/Proxy"); // So that javabeans introspection is intercepter systemClassesContainingReflection.add("java/beans/Introspector"); + + // Related to serialization + // TODO [serialization] Caches in ObjectStreamClass for descriptors, need clearing on reload + systemClassesContainingReflection.add("java/io/ObjectStreamClass"); + systemClassesContainingReflection.add("java/io/ObjectStreamClass$EntryFuture"); + // Don't need this right now, instead we are not removing 'final' from the serialVersionUID // // Need to catch at least the call to access the serialVersionUID made in getDeclaredSUID() // systemClassesContainingReflection.add("java/io/ObjectStreamClass$2"); @@ -133,8 +139,8 @@ public class SpringLoadedPreProcessor implements Constants { try { // TODO [perf] why are we not using the cache here, is it because the list is so short? RewriteResult rr = SystemClassReflectionRewriter.rewrite(slashedClassName, bytes); - if (GlobalConfiguration.verboseMode && log.isLoggable(Level.FINER)) { - log.finer("System class rewritten: name="+slashedClassName+" rewrite summary="+rr.summarize()); + if (GlobalConfiguration.verboseMode && log.isLoggable(Level.INFO)) { + log.info("System class rewritten: name="+slashedClassName+" rewrite summary="+rr.summarize()); } systemClassesRequiringInitialization.put(slashedClassName, rr.bits); return rr.bytes; @@ -421,13 +427,39 @@ public class SpringLoadedPreProcessor implements Constants { f.setAccessible(true); f.set(null, method_jlcgc); } + if ((bits & Constants.JLC_GETDECLAREDCONSTRUCTORS) != 0) { + Field f = clazz.getDeclaredField(jlcGetDeclaredConstructorsMember); + f.setAccessible(true); + f.set(null,method_jlcgdcs); + } + if ((bits & Constants.JLRF_GET) != 0) { + Field f = clazz.getDeclaredField(jlrfGetMember); + f.setAccessible(true); + f.set(null,method_jlrfg); + } + if ((bits & Constants.JLRF_GETLONG) != 0) { + Field f = clazz.getDeclaredField(jlrfGetLongMember); + f.setAccessible(true); + f.set(null,method_jlrfgl); + } + if ((bits & Constants.JLRM_INVOKE) != 0) { + Field f = clazz.getDeclaredField(jlrmInvokeMember); + f.setAccessible(true); + f.set(null,method_jlrmi); + } + if ((bits & Constants.JLOS_HASSTATICINITIALIZER) != 0) { + Field f = clazz.getDeclaredField(jloObjectStream_hasInitializerMethod); + f.setAccessible(true); + f.set(null,method_jloObjectStream_hasInitializerMethod); + } } private static final Class EMPTY_CLASS_ARRAY_CLAZZ = Class[].class; // TODO threads private static boolean prepared = false; private static Method method_jlcgdfs, method_jlcgdf, method_jlcgf, method_jlcgdms, method_jlcgdm, method_jlcgm, method_jlcgdc, - method_jlcgc, method_jlcgmods, method_jlcgms; + method_jlcgc, method_jlcgmods, method_jlcgms, method_jlcgdcs, method_jlrfg, method_jlrfgl, method_jlrmi, + method_jloObjectStream_hasInitializerMethod; /** * Cache the Method objects that will be injected. @@ -447,6 +479,12 @@ public class SpringLoadedPreProcessor implements Constants { method_jlcgc = clazz.getDeclaredMethod("jlClassGetConstructor", Class.class, EMPTY_CLASS_ARRAY_CLAZZ); method_jlcgmods = clazz.getDeclaredMethod("jlClassGetModifiers", Class.class); method_jlcgms = clazz.getDeclaredMethod("jlClassGetMethods", Class.class); + + method_jlcgdcs = clazz.getDeclaredMethod("jlClassGetDeclaredConstructors",Class.class); + method_jlrfg = clazz.getDeclaredMethod("jlrFieldGet",Field.class,Object.class); + method_jlrfgl = clazz.getDeclaredMethod("jlrFieldGetLong",Field.class,Object.class); + method_jlrmi = clazz.getDeclaredMethod("jlrMethodInvoke",Method.class,Object.class,Object[].class); + method_jloObjectStream_hasInitializerMethod = clazz.getDeclaredMethod("jlosHasStaticInitializer",Class.class); } catch (NoSuchMethodException nsme) { // cant happen, a-hahaha throw new Impossible(nsme); diff --git a/springloaded/src/main/java/org/springsource/loaded/ri/ReflectiveInterceptor.java b/springloaded/src/main/java/org/springsource/loaded/ri/ReflectiveInterceptor.java index b61e68a..378ae4a 100644 --- a/springloaded/src/main/java/org/springsource/loaded/ri/ReflectiveInterceptor.java +++ b/springloaded/src/main/java/org/springsource/loaded/ri/ReflectiveInterceptor.java @@ -84,6 +84,16 @@ public class ReflectiveInterceptor { classToRType = new WeakHashMap, WeakReference>(); } } + + @UsedByGeneratedCode + public static boolean jlosHasStaticInitializer(Class clazz) { + ReloadableType rtype = getRType(clazz); + if (rtype == null) { + // Exception tells the caller to use the 'old way' to determine if there is a static initializer + throw new IllegalStateException(); + } + return rtype.hasStaticInitializer(); + } /* * Implementation of java.lang.class.getDeclaredMethod(String name, Class... params). diff --git a/springloaded/src/test/java/org/springsource/loaded/test/ReloadableTypeTests.java b/springloaded/src/test/java/org/springsource/loaded/test/ReloadableTypeTests.java index 082323b..e5e225e 100644 --- a/springloaded/src/test/java/org/springsource/loaded/test/ReloadableTypeTests.java +++ b/springloaded/src/test/java/org/springsource/loaded/test/ReloadableTypeTests.java @@ -18,8 +18,8 @@ package org.springsource.loaded.test; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; import java.lang.reflect.Modifier; @@ -31,7 +31,6 @@ import org.springsource.loaded.TypeRegistry; import org.springsource.loaded.Utils.ReturnType; import org.springsource.loaded.test.infra.Result; - /** * Tests for the TypeRegistry that exercise it in the same way it will actively be used when managing ReloadableType instances. * @@ -268,6 +267,103 @@ public class ReloadableTypeTests extends SpringLoadedTests { assertEquals("Hello",(String)r.returnValue); } + // Basic write/read then reload then write/read again + @Test + public void serialization1() throws Exception { + TypeRegistry tr = getTypeRegistry("remote..*"); + ReloadableType person = tr.addType("remote.Person", loadBytesForClass("remote.Person")); + + // When the Serialize class is run directly, we see: byteinfo:len=98:crc=c1047cf6 + // When run via this test, we see: byteinfo:len=98:crc=7e07276a + // Tried running the Serialize code directly but with a clinit in the Person class: 2b4c0df4 + + ReloadableType runner = tr.addType("remote.Serialize", loadBytesForClass("remote.Serialize")); + + Result r = null; + r = runUnguarded(runner.getClazz(), "run"); + assertContains("check ok", r.stdout); + + person.loadNewVersion("2",retrieveRename("remote.Person", "remote.Person2")); + + r = runUnguarded(runner.getClazz(), "run"); + assertContains("check ok", r.stdout); + } + + + // Unlike the first test, this one will reload the class in between serialize and deserialize + @Test + public void serialization2() throws Exception { + TypeRegistry tr = getTypeRegistry("remote..*"); + ReloadableType person = tr.addType("remote.Person", loadBytesForClass("remote.Person")); + + // byteinfo:len=98:crc=7e07276a + ReloadableType runner = tr.addType("remote.Serialize", loadBytesForClass("remote.Serialize")); + + Class clazz = runner.getClazz(); + Object instance = clazz.newInstance(); + + Result r = null; + + // Basic: write and read the same Person + r = runOnInstance(clazz,instance,"writePerson"); + assertStdoutContains("Person stored ok", r); + r = runOnInstance(clazz,instance,"readPerson"); + assertContains("Person read ok", r.stdout); + + // Advanced: write it, reload, then read back from the written form + r = runOnInstance(clazz,instance,"writePerson"); + assertStdoutContains("Person stored ok", r); + person.loadNewVersion("2",retrieveRename("remote.Person", "remote.Person2")); + r = runOnInstance(clazz,instance,"readPerson"); + assertContains("Person read ok", r.stdout); + } + + // Variant of the second test but using serialVersionUID and adding methods to the class on reload + @Test + public void serialization3() throws Exception { + TypeRegistry tr = getTypeRegistry("remote..*"); + ReloadableType person = tr.addType("remote.PersonB", loadBytesForClass("remote.PersonB")); + ReloadableType runner = tr.addType("remote.SerializeB", loadBytesForClass("remote.SerializeB")); + + Class clazz = runner.getClazz(); + Object instance = clazz.newInstance(); + + Result r = null; + + // Basic: write and read the same Person + r = runOnInstance(runner.getClazz(),instance,"writePerson"); + assertStdoutContains("Person stored ok", r); + r = runOnInstance(runner.getClazz(),instance,"readPerson"); + assertContains("Person read ok", r.stdout); + + // Advanced: write it, reload, then read back from the written form + r = runOnInstance(runner.getClazz(),instance,"writePerson"); + assertStdoutContains("Person stored ok", r); + person.loadNewVersion("2",retrieveRename("remote.PersonB", "remote.PersonB2")); + r = runOnInstance(runner.getClazz(),instance,"readPerson"); + assertContains("Person read ok", r.stdout); + + r = runOnInstance(clazz,instance,"printInitials"); + assertContains("Person read ok\nWS", r.stdout); + } + + // Deserialize something we serialized earlier + // This test cannot work without the agent. The agent must intercept java.lang.ObjectStream and its use of reflection + // There is a test that will work in the SpringLoadedTestsInSeparateJVM + public void serialization4() throws Exception { + TypeRegistry tr = getTypeRegistry("remote..*"); +// ReloadableType person = + tr.addType("remote.Person", loadBytesForClass("remote.Person")); + + // When the Serialize class is run directly, we see: byteinfo:len=98:crc=c1047cf6 + // When run via this test, we see: byteinfo:len=98:crc=7e07276a + ReloadableType runner = tr.addType("remote.Serialize", loadBytesForClass("remote.Serialize")); + Class clazz = runner.getClazz(); + Object instance = clazz.newInstance(); + Result r = runOnInstance(clazz,instance,"checkPredeserializedData"); + assertStdoutContains("Person stored ok", r); + } + // extra class in the middle: A in jar, subtype AB reloadable, subtype BBBBB reloadable @Test public void invokeStaticReloading_gh4_6() throws Exception { diff --git a/springloaded/src/test/java/org/springsource/loaded/test/ReloadingJVM.java b/springloaded/src/test/java/org/springsource/loaded/test/ReloadingJVM.java index b65d091..79d9432 100644 --- a/springloaded/src/test/java/org/springsource/loaded/test/ReloadingJVM.java +++ b/springloaded/src/test/java/org/springsource/loaded/test/ReloadingJVM.java @@ -78,6 +78,7 @@ public class ReloadingJVM { System.out.println("Found agent at "+agentJarLocation); System.out.println("(client) Test data directory is "+testdataDirectory); } + javaclasspath = javaclasspath + File.pathSeparator + new File("../testdata-groovy/groovy-all-1.8.6.jar").toString(); javaclasspath = javaclasspath + File.pathSeparator + testdataDirectory.toString(); if (DEBUG_CLIENT_SIDE) { System.out.println("(client) Classpath for JVM that is being launched: " + javaclasspath); @@ -87,15 +88,18 @@ public class ReloadingJVM { if (agentOptions!=null && agentOptions.length()>0) { AGENT_OPTION_STRING = "-Dspringloaded="+agentOptions; } + if (DEBUG_CLIENT_SIDE) { + System.out.println("java.home="+System.getProperty("java.home")); + } process = Runtime.getRuntime().exec( - "java -noverify -javaagent:" + agentJarLocation + " -cp " + javaclasspath + " " + AGENT_OPTION_STRING + + System.getProperty("java.home")+"/bin/java -noverify -javaagent:" + agentJarLocation + " -cp " + javaclasspath + " " + AGENT_OPTION_STRING + " "+OPTS+" " + ReloadingJVMCommandProcess.class.getName(), new String[] { OPTS }); writer = new DataOutputStream(process.getOutputStream()); reader = new DataInputStream(process.getInputStream()); readerErrors = new DataInputStream(process.getErrorStream()); if (debug) { - System.out.println("Debugging launched VM, port 5000"); + System.out.println("Debugging launched VM, port 5100"); } JVMOutput text = waitFor("ReloadingJVM:started"); if (DEBUG_CLIENT_SIDE) { @@ -119,7 +123,7 @@ public class ReloadingJVM { return captureOutput(message); } - private final static boolean DEBUG_CLIENT_SIDE = false; + private final static boolean DEBUG_CLIENT_SIDE = true; private JVMOutput sendAndReceive(String message) { try { @@ -227,6 +231,9 @@ public class ReloadingJVM { } String classfile = classname.replaceAll("\\.",File.separator)+".class"; File f = new File("../testdata/bin",classfile); + if (!f.exists()) { + f = new File("../testdata-groovy/bin",classfile); + } byte[] data = Utils.load(f); // Ensure directories exist int dotPos = classname.lastIndexOf("."); @@ -235,6 +242,22 @@ public class ReloadingJVM { } Utils.write(new File(testdataDirectory,classfile),data); } + + public void copyResourceToTestDataDirectory(String resourcename) { + if (DEBUG_CLIENT_SIDE) { + System.out.println("(client) copying resource to test data directory: "+resourcename); + } + File f = new File("../testdata-groovy/",resourcename); + byte[] data = Utils.load(f); +// // Ensure directories exist +// int dotPos = classname.lastIndexOf("."); +// if (dotPos!=-1) { +// new File(testdataDirectory,classname.substring(0,dotPos).replaceAll("\\.",File.separator)).mkdirs(); +// } + Utils.write(new File(testdataDirectory,resourcename),data); + } + + public void clearTestdataDirectory() { File[] fs = testdataDirectory.listFiles(); diff --git a/springloaded/src/test/java/org/springsource/loaded/test/SpringLoadedTests.java b/springloaded/src/test/java/org/springsource/loaded/test/SpringLoadedTests.java index 90fc2f1..319f6a2 100644 --- a/springloaded/src/test/java/org/springsource/loaded/test/SpringLoadedTests.java +++ b/springloaded/src/test/java/org/springsource/loaded/test/SpringLoadedTests.java @@ -65,6 +65,7 @@ import org.springsource.loaded.TypeDescriptor; import org.springsource.loaded.TypeRegistry; import org.springsource.loaded.Utils; import org.springsource.loaded.agent.SpringLoadedPreProcessor; +import org.springsource.loaded.test.ReloadingJVM.JVMOutput; import org.springsource.loaded.test.infra.ClassPrinter; import org.springsource.loaded.test.infra.MethodPrinter; import org.springsource.loaded.test.infra.Result; @@ -1278,5 +1279,29 @@ public abstract class SpringLoadedTests implements Constants { } catch (Exception e) {} } + protected void assertStdout(String expectedStdout, JVMOutput actualOutput) { + if (!expectedStdout.equals(actualOutput.stdout)) { + // assertEquals(expectedStdout, actualOutput.stdout); + fail("Expected stdout '" + expectedStdout + "' not found in \n" + actualOutput.toString()); + } + } + + protected void assertStdoutContains(String expectedStdout, JVMOutput actualOutput) { + if (!actualOutput.stdout.contains(expectedStdout)) { + fail("Expected stdout:\n" + expectedStdout + "\nbut was:\n" + actualOutput.stdout.toString()+"\nComplete output: \n"+actualOutput.toString()); + } + } + + protected void assertStdoutContains(String expectedStdout, Result r) { + // TODO Auto-generated method stub + + } + + + protected void assertStderrContains(String expectedStderrContains, JVMOutput actualOutput) { + if (actualOutput.stderr.indexOf(expectedStderrContains) == -1) { + fail("Expected stderr to contain '" + expectedStderrContains + "'\n" + actualOutput.toString()); + } + } } diff --git a/springloaded/src/test/java/org/springsource/loaded/test/SpringLoadedTestsInSeparateJVM.java b/springloaded/src/test/java/org/springsource/loaded/test/SpringLoadedTestsInSeparateJVM.java index c45281f..82f0950 100644 --- a/springloaded/src/test/java/org/springsource/loaded/test/SpringLoadedTestsInSeparateJVM.java +++ b/springloaded/src/test/java/org/springsource/loaded/test/SpringLoadedTestsInSeparateJVM.java @@ -15,8 +15,6 @@ */ package org.springsource.loaded.test; -import static org.junit.Assert.fail; - import org.junit.After; import org.junit.AfterClass; import org.junit.BeforeClass; @@ -73,7 +71,66 @@ public class SpringLoadedTestsInSeparateJVM extends SpringLoadedTests { JVMOutput output = jvm.run("issue34.Implementation3"); assertStdout("Hello World!\n", output); } + + @Test + public void serialization() throws Exception { + jvm.copyToTestdataDirectory("remote.Serialize"); + jvm.copyToTestdataDirectory("remote.Person"); + JVMOutput output = null; + // When the Serialize class is run directly, we see: byteinfo:len=98:crc=c1047cf6 + // When run via the non separate JVM test, we see: byteinfo:len=98:crc=7e07276a + // When run here, we see: byteinfo:len=98:crc=c1047cf6 + + output = jvm.run("remote.Serialize"); + assertStdoutContains("check ok\n", output); + + // Load new Person + jvm.updateClass("remote.Person", retrieveRename("remote.Person","remote.Person2")); + pause(2); + + output = jvm.run("remote.Serialize"); + assertStdoutContains("check ok\n", output); + + // Load original Person + jvm.updateClass("remote.Person", loadBytesForClass("remote.Person")); + pause(2); + + output = jvm.run("remote.Serialize"); + assertStdoutContains("check ok\n", output); + } + + // Deserializing something serialized earlier + @Test + public void serialization2() throws Exception { + jvm.copyToTestdataDirectory("remote.Serialize"); + jvm.copyToTestdataDirectory("remote.Person"); + JVMOutput output = null; + + output = jvm.run("remote.Serialize"); + assertStdoutContains("check ok\n", output); + + jvm.newInstance("a", "remote.Serialize"); + JVMOutput jo = jvm.call("a","checkPredeserializedData"); + assertStdoutContains("Pre-serialized form checked ok\n", jo); + } + + // Deserialize a groovy closure + @Test + public void serializationGroovy() throws Exception { +// debug(); + jvm.copyToTestdataDirectory("remote.SerializeG"); + jvm.copyToTestdataDirectory("remote.FakeClosure"); + + // Notes on serialization + // When SerializeG run standalone, reports byteinfo:len=283:crc=245529d9 + // When run in agented JVM, reports byteinfo:len=283:crc=245529d9 + + jvm.newInstance("a", "remote.SerializeG"); + JVMOutput jo = jvm.call("a","checkPredeserializedData"); + assertStdoutContains("Pre-serialized groovy form checked ok\n", jo); + } + @Test public void githubIssue34_2() throws Exception { jvm.copyToTestdataDirectory("issue34.InnerEnum$sorters"); @@ -175,23 +232,6 @@ public class SpringLoadedTestsInSeparateJVM extends SpringLoadedTests { try { Thread.sleep(2000); } catch (Exception e) {} } - private void assertStdout(String expectedStdout, JVMOutput actualOutput) { - if (!expectedStdout.equals(actualOutput.stdout)) { - // assertEquals(expectedStdout, actualOutput.stdout); - fail("Expected stdout '" + expectedStdout + "' not found in \n" + actualOutput.toString()); - } - } - private void assertStdoutContains(String expectedStdout, JVMOutput actualOutput) { - if (!actualOutput.stdout.contains(expectedStdout)) { - fail("Expected stdout:\n" + expectedStdout + "\nbut was:\n" + actualOutput.stdout.toString()+"\nComplete output: \n"+actualOutput.toString()); - } - } - - private void assertStderrContains(String expectedStderrContains, JVMOutput actualOutput) { - if (actualOutput.stderr.indexOf(expectedStderrContains) == -1) { - fail("Expected stderr to contain '" + expectedStderrContains + "'\n" + actualOutput.toString()); - } - } } diff --git a/springloaded/src/test/java/org/springsource/loaded/test/SystemClassReflectionRewriterTests.java b/springloaded/src/test/java/org/springsource/loaded/test/SystemClassReflectionRewriterTests.java index 2c91881..4874671 100644 --- a/springloaded/src/test/java/org/springsource/loaded/test/SystemClassReflectionRewriterTests.java +++ b/springloaded/src/test/java/org/springsource/loaded/test/SystemClassReflectionRewriterTests.java @@ -19,6 +19,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; +import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.ArrayList; @@ -83,7 +84,7 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { assertTrue((rr.bits & ~JLC_GETDECLAREDFIELDS) == 0); assertEquals(1, callcount); - assertEquals("getDeclaredFields()", rr.summarize()); + assertEquals("Class.getDeclaredFields()", rr.summarize()); } @Test @@ -129,7 +130,7 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { assertEquals(2, events.size()); assertEquals("helper2(system.Two,s)", events.get(0)); assertEquals("helper2(system.Two,foo)", events.get(1)); - assertEquals("getDeclaredField()", rr.summarize()); + assertEquals("Class.getDeclaredField()", rr.summarize()); } @Test @@ -175,7 +176,7 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { assertEquals(2, events.size()); assertEquals("helper2(system.Three,s)", events.get(0)); assertEquals("helper2(system.Three,foo)", events.get(1)); - assertEquals("getField()", rr.summarize()); + assertEquals("Class.getField()", rr.summarize()); } @Test @@ -217,7 +218,98 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { assertTrue((rr.bits & ~JLC_GETDECLAREDMETHODS) == 0); assertEquals(1, callcount); - assertEquals("getDeclaredMethods()", rr.summarize()); + assertEquals("Class.getDeclaredMethods()", rr.summarize()); + } + + @Test + public void jlClass_getDeclaredConstructors() throws Exception { + byte[] classbytes = loadBytesForClass("system.Ten"); + RewriteResult rr = SystemClassReflectionRewriter.rewrite("system.Ten", classbytes); + byte[] newbytes = rr.bytes; + Class clazz = loadit("system.Ten", newbytes); + + // Check the new field and method are in the type: + //@formatter:off + assertEquals( + "CLASS: system/Ten v50 0x0021(public synchronized) super java/lang/Object\n"+ + "SOURCE: Ten.java null\n"+ + "FIELD 0x0009(public static) __sljlcgdcs Ljava/lang/reflect/Method;\n"+ + "METHOD: 0x0001(public) ()V\n"+ + "METHOD: 0x0001(public) runIt()Ljava/lang/String;\n"+ + "METHOD: 0x0001(public) cs()[Ljava/lang/reflect/Constructor;\n"+ + "METHOD: 0x000a(private static) __sljlcgdcs(Ljava/lang/Class;)[Ljava/lang/reflect/Constructor;\n"+ + "\n", + toStringClass(newbytes)); + //@formatter:on + Object value = run(clazz, "runIt"); + // Check that without the field initialized, things behave as expected + assertEquals("complete:constructors:null?false constructors:size=1", value); + assertEquals(0, callcount); + + // Set the field + Method m = SystemClassReflectionRewriterTests.class.getDeclaredMethod("helper4", Class.class); + assertNotNull(m); + clazz.getDeclaredField(jlcGetDeclaredConstructorsMember).set(null, m); + + // Now re-run, should be intercepted to call our helper + value = run(clazz, "runIt"); + assertEquals("complete:constructors:null?true", value); + + // Check the correct amount of rewriting went on + assertTrue((rr.bits & JLC_GETDECLAREDCONSTRUCTORS) != 0); + assertTrue((rr.bits & ~JLC_GETDECLAREDCONSTRUCTORS) == 0); + + assertEquals(1, callcount); + assertEquals("Class.getDeclaredConstructors()", rr.summarize()); + } + + @Test + public void jlrMethod_Invoke() throws Exception { + byte[] classbytes = loadBytesForClass("system.Eleven"); + RewriteResult rr = SystemClassReflectionRewriter.rewrite("system.Eleven", classbytes); + byte[] newbytes = rr.bytes; + Class clazz = loadit("system.Eleven", newbytes); + + // Check the new field and method are in the type: + //@formatter:off + assertEquals( + "CLASS: system/Eleven v50 0x0021(public synchronized) super java/lang/Object\n"+ + "SOURCE: Eleven.java null\n"+ + "FIELD 0x0009(public static) __sljlcgdm Ljava/lang/reflect/Method;\n"+ + "FIELD 0x0009(public static) __sljlrmi Ljava/lang/reflect/Method;\n"+ + "METHOD: 0x0001(public) ()V\n"+ + "METHOD: 0x0001(public) runIt()Ljava/lang/String; java/lang/Exception\n"+ + "METHOD: 0x0089(public static) invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java/lang/Exception\n"+ + "METHOD: 0x0001(public) foo(ILjava/lang/String;)Ljava/lang/String;\n"+ + "METHOD: 0x008a(private static) __sljlcgdm(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; java/lang/NoSuchMethodException\n"+ + "METHOD: 0x000a(private static) __sljlrmi(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java/lang/IllegalAccessException java/lang/reflect/InvocationTargetException\n"+ + "\n", + toStringClass(newbytes)); + //@formatter:on + Object value = run(clazz, "runIt"); + // Check that without the field initialized, things behave as expected + assertEquals("complete:obj=i=12:s=abc", value); + assertEquals(0, callcount); + + // Set the field + Method m = SystemClassReflectionRewriterTests.class.getDeclaredMethod("helperJLRMI_0", Class.class, String.class, Class[].class); + assertNotNull(m); + clazz.getDeclaredField(jlcgdm).set(null, m); + + m = SystemClassReflectionRewriterTests.class.getDeclaredMethod("helperJLRMI", Method.class, Object.class, Object[].class); + assertNotNull(m); + clazz.getDeclaredField(jlrmInvokeMember).set(null, m); + + // Now re-run, should be intercepted to call our helper + value = run(clazz, "runIt"); + assertEquals("complete:obj=null", value); + + // Check the correct amount of rewriting went on + assertTrue((rr.bits & (JLC_GETDECLAREDMETHOD|JLRM_INVOKE)) != 0); + assertTrue((rr.bits & ~(JLC_GETDECLAREDMETHOD|JLRM_INVOKE)) == 0); + + assertEquals(1, callcount); + assertEquals("Class.getDeclaredMethod() Method.invoke()", rr.summarize()); } @Test @@ -263,7 +355,7 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { assertEquals(2, events.size()); assertEquals("helper4(system.Five,runIt)", events.get(0)); assertEquals("helper4(system.Five,foobar)", events.get(1)); - assertEquals("getDeclaredMethod()", rr.summarize()); + assertEquals("Class.getDeclaredMethod()", rr.summarize()); } @Test @@ -309,7 +401,7 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { assertEquals(2, events.size()); assertEquals("helper4(system.Six,runIt)", events.get(0)); assertEquals("helper4(system.Six,foo)", events.get(1)); - assertEquals("getMethod()", rr.summarize()); + assertEquals("Class.getMethod()", rr.summarize()); } @Test @@ -356,9 +448,108 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { assertEquals("helper5(system.Seven)", events.get(0)); assertEquals("helper5(system.Seven)", events.get(1)); assertEquals("helper5(system.Seven)", events.get(2)); - assertEquals("getDeclaredConstructor()", rr.summarize()); + assertEquals("Class.getDeclaredConstructor()", rr.summarize()); } + + @Test + public void jlrField_getLong() throws Exception { + byte[] classbytes = loadBytesForClass("system.Thirteen"); + RewriteResult rr = SystemClassReflectionRewriter.rewrite("system.Thirteen", classbytes); + byte[] newbytes = rr.bytes; + Class clazz = loadit("system.Thirteen", newbytes); + + // Check the new field and method are in the type: + //@formatter:off + assertEquals( + "CLASS: system/Thirteen v50 0x0021(public synchronized) super java/lang/Object\n"+ + "SOURCE: Thirteen.java null\n"+ + "FIELD 0x0001(public) foo J\n"+ + "FIELD 0x0009(public static) __sljlcgf Ljava/lang/reflect/Method;\n"+ + "FIELD 0x0009(public static) __sljlrfgl Ljava/lang/reflect/Method;\n"+ + "METHOD: 0x0001(public) ()V\n"+ + "METHOD: 0x0001(public) runIt()Ljava/lang/String; java/lang/Exception\n"+ + "METHOD: 0x0001(public) gf()Ljava/lang/Long; java/lang/Exception\n"+ + "METHOD: 0x000a(private static) __sljlcgf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field; java/lang/NoSuchFieldException\n"+ + "METHOD: 0x000a(private static) __sljlrfgl(Ljava/lang/reflect/Field;Ljava/lang/Object;)J java/lang/IllegalAccessException java/lang/IllegalArgumentException\n"+ + "\n", + toStringClass(newbytes)); + //@formatter:on + Object value = run(clazz, "runIt"); + // Check that without the field initialized, things behave as expected + assertEquals("complete:value=42", value); + assertEquals(0, callcount); + + // Set the field + Method m = SystemClassReflectionRewriterTests.class.getDeclaredMethod("helperJLRFGL_0", Class.class, String.class); + assertNotNull(m); + clazz.getDeclaredField(jlcgf).set(null, m); + + m = SystemClassReflectionRewriterTests.class.getDeclaredMethod("helperJLRFGL", Field.class, Object.class); + assertNotNull(m); + clazz.getDeclaredField(jlrfGetLongMember).set(null, m); + + // Now re-run, should be intercepted to call our helper + value = run(clazz, "runIt"); + assertEquals("complete:value=0", value); + + // Check the correct amount of rewriting went on + assertTrue((rr.bits & (JLRF_GETLONG | JLC_GETFIELD)) != 0); + assertTrue((rr.bits & ~(JLRF_GETLONG | JLC_GETFIELD)) == 0); + + assertEquals(1, callcount); + assertEquals("Class.getField() Field.getLong()", rr.summarize()); + } + + @Test + public void jlrField_get() throws Exception { + byte[] classbytes = loadBytesForClass("system.Twelve"); + RewriteResult rr = SystemClassReflectionRewriter.rewrite("system.Twelve", classbytes); + byte[] newbytes = rr.bytes; + Class clazz = loadit("system.Twelve", newbytes); + + // Check the new field and method are in the type: + //@formatter:off + assertEquals( + "CLASS: system/Twelve v50 0x0021(public synchronized) super java/lang/Object\n"+ + "SOURCE: Twelve.java null\n"+ + "FIELD 0x0001(public) foo Ljava/lang/String;\n"+ + "FIELD 0x0009(public static) __sljlcgf Ljava/lang/reflect/Method;\n"+ + "FIELD 0x0009(public static) __sljlrfg Ljava/lang/reflect/Method;\n"+ + "METHOD: 0x0001(public) ()V\n"+ + "METHOD: 0x0001(public) runIt()Ljava/lang/String; java/lang/Exception\n"+ + "METHOD: 0x0001(public) gf()Ljava/lang/Object; java/lang/Exception\n"+ + "METHOD: 0x000a(private static) __sljlcgf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field; java/lang/NoSuchFieldException\n"+ + "METHOD: 0x000a(private static) __sljlrfg(Ljava/lang/reflect/Field;Ljava/lang/Object;)Ljava/lang/Object; java/lang/IllegalAccessException java/lang/IllegalArgumentException\n"+ + "\n", + toStringClass(newbytes)); + //@formatter:on + Object value = run(clazz, "runIt"); + // Check that without the field initialized, things behave as expected + assertEquals("complete:value=abc", value); + assertEquals(0, callcount); + + // Set the field + Method m = SystemClassReflectionRewriterTests.class.getDeclaredMethod("helperJLRFG_0", Class.class, String.class); + assertNotNull(m); + clazz.getDeclaredField(jlcgf).set(null, m); + + m = SystemClassReflectionRewriterTests.class.getDeclaredMethod("helperJLRFG", Field.class, Object.class); + assertNotNull(m); + clazz.getDeclaredField(jlrfGetMember).set(null, m); + + // Now re-run, should be intercepted to call our helper + value = run(clazz, "runIt"); + assertEquals("complete:value=null", value); + + // Check the correct amount of rewriting went on + assertTrue((rr.bits & (JLRF_GET | JLC_GETFIELD)) != 0); + assertTrue((rr.bits & ~(JLRF_GET | JLC_GETFIELD)) == 0); + + assertEquals(1, callcount); + assertEquals("Class.getField() Field.get()", rr.summarize()); + } + @Test public void jlClass_getModifiers() throws Exception { byte[] classbytes = loadBytesForClass("system.Eight"); @@ -405,7 +596,7 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { assertEquals("helper6(system.Eight)", events.get(0)); assertEquals("helper6(system.DefaultVis)", events.get(1)); assertEquals("helper6(system.Eight$Inner)", events.get(2)); - assertEquals("getModifiers()", rr.summarize()); + assertEquals("Class.getModifiers()", rr.summarize()); } @Test @@ -438,6 +629,11 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { assertNotNull(m); clazz.getDeclaredField(jlcgms).set(null, m); + m = SystemClassReflectionRewriterTests.class.getDeclaredMethod("helperGMs", Class.class); + assertNotNull(m); + clazz.getDeclaredField(jlcgms).set(null, m); + + // Now re-run, should be intercepted to call our helper value = run(clazz, "runIt"); assertEquals("complete:methods:null?true", value); @@ -447,7 +643,7 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { assertTrue((rr.bits & ~JLC_GETMETHODS) == 0); assertEquals(1, callcount); - assertEquals("getMethods()", rr.summarize()); + assertEquals("Class.getMethods()", rr.summarize()); } // --- @@ -466,6 +662,13 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { callcount++; return null; } + + // helper method - standin for Class.getDeclaredConstructors() + @SuppressWarnings("rawtypes") + public static Constructor[] helper4(Class clazz) { + callcount++; + return null; + } // helper method - standin for Class.getMethods() public static Method[] helperGMs(Class clazz) { @@ -473,6 +676,39 @@ public class SystemClassReflectionRewriterTests extends SpringLoadedTests { return null; } + // The testcase for JLRMI uses GDM to find the Method object, so that is why this helper exists + public static Method helperJLRMI_0(Class clazz, String name, Class[] argTypes) throws Exception { + return SystemClassReflectionRewriterTests.class.getDeclaredMethod("helperJLRMI",Method.class,Object.class,Object[].class); + } + + public static Object helperJLRMI(Method m, Object instance, Object[] arguments) { + callcount++; + return null; + } + + public String string = "wibble"; + + public static Field helperJLRFG_0(Class clazz, String name) throws Exception { + return SystemClassReflectionRewriterTests.class.getDeclaredField("string"); + + } + public static Object helperJLRFG(Field f, Object instance) { + callcount++; + return null; + } + + + public long lll = 99L; + + public static Field helperJLRFGL_0(Class clazz, String name) throws Exception { + return SystemClassReflectionRewriterTests.class.getDeclaredField("lll"); + + } + public static Long helperJLRFGL(Field f, Object instance) { + callcount++; + return 0L; + } + // TODO what about SecurityException on these get methods? // helper method - standin for Class.getDeclaredField(String s) and Class.getField(String s) public static Field[] helper2(Class clazz, String s) throws NoSuchFieldException { diff --git a/springloaded/src/test/java/org/springsource/loaded/test/TypeRewriterTests.java b/springloaded/src/test/java/org/springsource/loaded/test/TypeRewriterTests.java index 3934a4e..f465fa6 100644 --- a/springloaded/src/test/java/org/springsource/loaded/test/TypeRewriterTests.java +++ b/springloaded/src/test/java/org/springsource/loaded/test/TypeRewriterTests.java @@ -262,7 +262,7 @@ public class TypeRewriterTests extends SpringLoadedTests { ReloadableType itype = r.addType(t, loadBytesForClass(t)); ReloadableType subitype = r.addType(t2, loadBytesForClass(t2)); - ClassPrinter.print(subitype.bytesLoaded); +// ClassPrinter.print(subitype.bytesLoaded); // An interface will get the reloadable type field assertEquals("0x19(public static final) r$type Lorg/springsource/loaded/ReloadableType;", @@ -399,7 +399,7 @@ public class TypeRewriterTests extends SpringLoadedTests { // Load a real new version rtype.loadNewVersion("002", retrieveRename(t, t + "2")); - ClassPrinter.print(rtype.getLatestExecutorBytes()); +// ClassPrinter.print(rtype.getLatestExecutorBytes()); result = runConstructor(rtype.getClazz(), "java.lang.String", "Wabble"); assertEquals("WabbleWabble", result.stdout); assertEquals(rtype.getClazz().getName(), result.returnValue.getClass().getName()); @@ -1321,7 +1321,7 @@ public class TypeRewriterTests extends SpringLoadedTests { // a new version of the concrete type without method() in it rAbsimpl.loadNewVersion("2", retrieveRename(absimpl, absimpl + "2")); rImpl.loadNewVersion("2", retrieveRename(impl, impl + "2", absimpl + "2:" + absimpl)); - ClassPrinter.print(rAbsimpl.bytesLoaded); +// ClassPrinter.print(rAbsimpl.bytesLoaded); result = runUnguarded(rImpl.getClazz(), "run"); assertEquals("2", result.stdout); } @@ -1347,7 +1347,7 @@ public class TypeRewriterTests extends SpringLoadedTests { result = runUnguarded(type.getClazz(), "run"); assertEquals("hello", result.returnValue); type.loadNewVersion("2", retrieveRename(t, t + "2")); - ClassPrinter.print(type.getLatestExecutorBytes()); +// ClassPrinter.print(type.getLatestExecutorBytes()); result = runUnguarded(type.getClazz(), "run"); assertEquals("world", result.returnValue); } diff --git a/testdata-groovy/src/remote/Code.groovy b/testdata-groovy/src/remote/Code.groovy new file mode 100644 index 0000000..e99c333 --- /dev/null +++ b/testdata-groovy/src/remote/Code.groovy @@ -0,0 +1,11 @@ +package remote + +class Code { + // Create a serialized closure + static void main(String[] args) { + def a = { 1 + 1 } + def out = new ObjectOutputStream(new FileOutputStream('ser.obj')) + out.writeObject(a) + out.close() + } +} \ No newline at end of file diff --git a/testdata-groovy/src/remote/FakeClosure.java b/testdata-groovy/src/remote/FakeClosure.java new file mode 100644 index 0000000..2bfda2b --- /dev/null +++ b/testdata-groovy/src/remote/FakeClosure.java @@ -0,0 +1,16 @@ +package remote; + +import org.codehaus.groovy.runtime.GeneratedClosure; + +import groovy.lang.Closure; + +@SuppressWarnings({ "rawtypes", "serial" }) +public class FakeClosure extends Closure implements GeneratedClosure { + + public String field; + + public FakeClosure(Object owner) { + super(owner); + } + +} diff --git a/testdata-groovy/src/remote/SerializeG.java b/testdata-groovy/src/remote/SerializeG.java new file mode 100644 index 0000000..9057bba --- /dev/null +++ b/testdata-groovy/src/remote/SerializeG.java @@ -0,0 +1,149 @@ +package remote; + +import java.io.BufferedInputStream; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.util.zip.CRC32; + +public class SerializeG { + + // This is a serialized FakeClosure( field=abc) + private static final String serString = + "aced00057372001272656d6f74652e46616b65436c6f73757265cebbffd721e98fea0200014c00056669656c647400124c6a6176612f6c616e672f537472696e673b7872001367726f6f76792e6c616e672e436c6f737572653ca0c76616126c5a0200074900096469726563746976654900196d6178696d756d4e756d6265724f66506172616d657465727349000f7265736f6c766553747261746567794c000864656c65676174657400124c6a6176612f6c616e672f4f626a6563743b4c00056f776e657271007e00035b000e706172616d6574657254797065737400125b4c6a6176612f6c616e672f436c6173733b4c000a746869734f626a65637471007e0003787000000000000000000000000070707070740003616263"; + + private static final byte[] serBytes; + + static { + serBytes = new byte[serString.length()/2]; + int p = 0; + while (p < serString.length()) { + String oneByte = serString.substring(p,p+2); + int b = Integer.decode("0x"+oneByte); + serBytes[p/2]=(byte)b; + p+=2; + + } + System.out.println(); + } + + + public static void main(String[] args) { + if (args!=null && args.length!=0 && args[0].equals("ds")) { + checkPredeserializedData(); + } + else { + run(); + checkPredeserializedData(); + } + } + + public static void checkPredeserializedData() { + FakeClosure p = (FakeClosure)read(serBytes); + if (p==null) { + throw new IllegalStateException("Unable to deserialize FakeClosure!"); + } + if (!p.field.equals("abc")) { + throw new IllegalStateException("Unable to deserialized pre-serialized data: "+p.field); + } + System.out.println("Pre-serialized groovy form checked ok"); + } + + public static byte[] loadBytesFromStream(InputStream stream) { + try { + BufferedInputStream bis = new BufferedInputStream(stream); + byte[] theData = new byte[10000000]; + int dataReadSoFar = 0; + byte[] buffer = new byte[1024]; + int read = 0; + while ((read = bis.read(buffer)) != -1) { + System.arraycopy(buffer, 0, theData, dataReadSoFar, read); + dataReadSoFar += read; + } + bis.close(); + // Resize to actual data read + byte[] returnData = new byte[dataReadSoFar]; + System.arraycopy(theData, 0, returnData, 0, dataReadSoFar); + return returnData; + } catch (IOException e) { + throw new RuntimeException(e); + } + } + + + public static void run() { + new SerializeG().run2(); + } + + public void run2() { + FakeClosure p = new FakeClosure(null); + p.field = "abc"; + byte[] bs = write(p); + dumpinfo(bs); + FakeClosure p2 = (FakeClosure)read(bs); + check(p,p2); + } + + public static void run3() { + String p = new String("abc"); + byte[] bs = write(p); + dumpinfo(bs); + String p2 = (String)read(bs); + if (!p2.equals("abc")) { + throw new IllegalStateException(); + } + } + + private static void dumpinfo(byte[] bytes) { + CRC32 crc = new CRC32(); + crc.update(bytes,0,bytes.length); + StringBuilder data = new StringBuilder(); + for (int i=0;i"); + return true; + } + catch (Exception e) { + return false; + } + } + static { + System.out.println(); + } +} diff --git a/testdata/src/main/java/remote/Person.java b/testdata/src/main/java/remote/Person.java new file mode 100644 index 0000000..dc77dfd --- /dev/null +++ b/testdata/src/main/java/remote/Person.java @@ -0,0 +1,28 @@ +package remote; + +import java.io.Serializable; + +@SuppressWarnings("serial") +public class Person implements Serializable { + + private String firstname; + private String lastname; + + public Person(String f, String l) { + this.firstname = f; + this.lastname = l; + } + + public String getFirstname() { + return firstname; + } + + public String getLastname() { + return lastname; + } + + public String toString() { + return firstname+" "+lastname; + } + +} diff --git a/testdata/src/main/java/remote/Person2.java b/testdata/src/main/java/remote/Person2.java new file mode 100644 index 0000000..1e4cdd7 --- /dev/null +++ b/testdata/src/main/java/remote/Person2.java @@ -0,0 +1,31 @@ +package remote; + +import java.io.Serializable; + +@SuppressWarnings("serial") +public class Person2 implements Serializable { + + private String firstname; + private String lastname; + + public Person2(String f, String l) { + this.firstname = f; + this.lastname = l; + } + + public String getFirstname() { + return firstname; + } + + public String getLastname() { + return lastname; + } + + public String toString() { + return firstname+" "+lastname; + } + +// private String getInitials() { +// return firstname.charAt(0)+""+lastname.charAt(0); +// } +} diff --git a/testdata/src/main/java/remote/PersonB.java b/testdata/src/main/java/remote/PersonB.java new file mode 100644 index 0000000..c1e6db0 --- /dev/null +++ b/testdata/src/main/java/remote/PersonB.java @@ -0,0 +1,29 @@ +package remote; + +import java.io.Serializable; + +public class PersonB implements Serializable { + + private static final long serialVersionUID = 1L; + + private String firstname; + private String lastname; + + public PersonB(String f, String l) { + this.firstname = f; + this.lastname = l; + } + + public String getFirstname() { + return firstname; + } + + public String getLastname() { + return lastname; + } + + public String toString() { + return firstname+" "+lastname; + } + +} diff --git a/testdata/src/main/java/remote/PersonB2.java b/testdata/src/main/java/remote/PersonB2.java new file mode 100644 index 0000000..6d52aec --- /dev/null +++ b/testdata/src/main/java/remote/PersonB2.java @@ -0,0 +1,33 @@ +package remote; + +import java.io.Serializable; + +public class PersonB2 implements Serializable { + + private static final long serialVersionUID = 1L; + + private String firstname; + private String lastname; + + + public PersonB2(String f, String l) { + this.firstname = f; + this.lastname = l; + } + + public String getFirstname() { + return firstname; + } + + public String getLastname() { + return lastname; + } + + public String toString() { + return firstname+" "+lastname; + } + + public String getInitials() { + return firstname.charAt(0)+""+lastname.charAt(0); + } +} diff --git a/testdata/src/main/java/remote/Serialize.java b/testdata/src/main/java/remote/Serialize.java new file mode 100644 index 0000000..3ff2e50 --- /dev/null +++ b/testdata/src/main/java/remote/Serialize.java @@ -0,0 +1,173 @@ +package remote; + +import java.io.BufferedInputStream; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.lang.reflect.Field; +import java.util.zip.CRC32; + +public class Serialize { + + private static byte[] storedBytes; + + // This is a serialized Person(Wilf,Smith) + private static final String serString = + "aced00057372000d72656d6f74652e506572736f6e176b418850fd97d50200024c000966697273746e616d657400124c6a6176612f6c616e672f537472696e673b4c00086c6173746e616d6571007e0001787074000457696c66740005536d697468"; + + private static final byte[] serBytes; + + static { + serBytes = new byte[serString.length()/2]; + int p = 0; + while (p < serString.length()) { + String oneByte = serString.substring(p,p+2); + int b = Integer.decode("0x"+oneByte); + serBytes[p/2]=(byte)b; + p+=2; + + } + System.out.println(); + } + + + public static void main(String[] args) { + if (args!=null && args.length!=0 && args[0].equals("ds")) { + new Serialize().checkPredeserializedData(); + + } + else { + run(); + new Serialize().checkPredeserializedData(); + } + } + + public void checkPredeserializedData() { + Person p = (Person)read(serBytes); + if (p==null) { + throw new IllegalStateException("Unable to deserialize Person!"); + } + if (!p.toString().equals("Wilf Smith")) { + throw new IllegalStateException("Unable to deserialized pre-serialized data: "+p.toString()); + } + System.out.println("Pre-serialized form checked ok"); + } + + public static byte[] loadBytesFromStream(InputStream stream) { + try { + BufferedInputStream bis = new BufferedInputStream(stream); + byte[] theData = new byte[10000000]; + int dataReadSoFar = 0; + byte[] buffer = new byte[1024]; + int read = 0; + while ((read = bis.read(buffer)) != -1) { + System.arraycopy(buffer, 0, theData, dataReadSoFar, read); + dataReadSoFar += read; + } + bis.close(); + // Resize to actual data read + byte[] returnData = new byte[dataReadSoFar]; + System.arraycopy(theData, 0, returnData, 0, dataReadSoFar); + return returnData; + } catch (IOException e) { + throw new RuntimeException(e); + } + } + + + public static void run() { +// new Serialize().run1(); + new Serialize().run2(); + } + + public void writePerson() { + Person p = new Person("Wilf","Smith"); + storedBytes = write(p); + System.out.println("Person stored ok"); + } + + public Person readPerson() { + Person person = (Person)read(storedBytes); + if (!person.toString().equals("Wilf Smith")) { + throw new IllegalStateException("Expected 'Wilf Smith' but was '"+person.toString()+"'"); + } + System.out.println("Person read ok"); + return person; + } + + public void printSecret() throws Exception { + Person p = readPerson(); + Field f = p.getClass().getDeclaredField("newSecretField"); + f.setAccessible(true); + Object value = f.get(p); + System.out.println(value); + } + + public void run1() { + String s = "abc"; + byte[] bs = write(s); + String s2 = (String)read(bs); + check(s,s2); + } + + public void run2() { + Person p = new Person("Wilf","Smith"); + byte[] bs = write(p); + dumpinfo(bs); + Person p2 = (Person)read(bs); + check(p,p2); + } + + private void dumpinfo(byte[] bytes) { + CRC32 crc = new CRC32(); + crc.update(bytes,0,bytes.length); + StringBuilder data = new StringBuilder(); + for (int i=0;i