From 5a7c8f9cde96480c06faa0d11b6813dbe65c0a67 Mon Sep 17 00:00:00 2001 From: 4ra1n <2023503307@qq.com> Date: Mon, 8 Sep 2025 22:05:43 +0800 Subject: [PATCH] update readme --- CHANGELOG.MD | 1 + README.md | 84 ++++++++------------------------------------------- img/000.png | Bin 125303 -> 0 bytes img/001.png | Bin 86141 -> 0 bytes img/002.png | Bin 33748 -> 0 bytes img/003.png | Bin 49292 -> 0 bytes img/004.png | Bin 10599 -> 0 bytes img/005.png | Bin 23648 -> 0 bytes img/007.png | Bin 41217 -> 0 bytes img/008.png | Bin 481347 -> 0 bytes img/009.png | Bin 0 -> 139900 bytes 11 files changed, 13 insertions(+), 72 deletions(-) delete mode 100644 img/000.png delete mode 100644 img/001.png delete mode 100644 img/002.png delete mode 100644 img/003.png delete mode 100644 img/004.png delete mode 100644 img/005.png delete mode 100644 img/007.png delete mode 100644 img/008.png create mode 100644 img/009.png diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 27bd46e..1dc6046 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -6,6 +6,7 @@ - [功能] 允许拓展方法无意义参数个数并修改引用 @4ra1n - [优化] 删除编译信息应该位于最后一步 @4ra1n +- [优化] 删除不稳定不可用的反射混淆法 @4ra1n 感谢以下用户的贡献: diff --git a/README.md b/README.md index 5d6d998..fbd6702 100644 --- a/README.md +++ b/README.md @@ -15,15 +15,7 @@ 示例图:混淆前 -> 混淆后 - - -可以自定义中文混淆字符,以及方法隐藏等技巧 - - - -从 `1.2.0` 版本开始支持集中提取字符串后 `AES` 加密运行时解密 - - + 本项目已深度集成到 `web-chains` 项目中 (https://github.com/Java-Chains/web-chains) @@ -82,28 +74,6 @@ public class Test { } ``` -你可以随意搭配配置文件,得到以下几种混淆结果 - -效果一(默认配置) - - - -效果二(使用最高级别的花指令参数) - - - -自定义混淆字符(例如使用中文) - - - -开启隐藏方法和字段功能(反编译看不到方法) - - - -但是!可以成功执行 - - - 使用 `--std-output` 参数将会导出标准的 `class` 文件以及对应的包名 例如 `me.n1ar4.Test` 将会导出 `class-obf-output/me/n1ar4/Test.class` 文件 @@ -231,20 +201,17 @@ enableHideField: false # 可以防止大部分 IDEA 版本反编译 enableHideMethod: false -# 是否将 JVM INVOKE 指令改成反射调用 -# 注意:该功能会明显影响执行效率 -# 优点:经过该混淆后会更加难以分析 -# 缺点:该功能未经过完善测试不稳定 -enableReflect: false -# INVOKEVIRTUAL 转换 -enableReflectVirtual: false -# INVOKESTATIC 转换 -enableReflectStatic: false -# INVOKESPECIAL 转换 -enableReflectSpecial: false -# INVOKEINTERFACE 转换 -enableReflectInterface: false - +# 参数拓展混淆 +# void a(int a) 可以拓展为 void a(int a,int b,int c,int d) +# 其中 b c d 都是无用参数 +# 其中 int 类型不是固定的 +# 会从 int bool byte char short long float double 中随机 +enableExpandMethod: true +# 拓展多少个参数 默认 3 个 +expandParamNum: 3 +# expand 操作只会对白名单方法名进行混淆 +expandMethodList: + - "test" ``` ## test @@ -290,33 +257,6 @@ public class Test extends ClassLoader { } ``` -## class-obf 开发进度 - -| 功能 | 开发进度 | -|-----------------------|------| -| 方法名及引用混淆 | ✅ | -| 字段名及引用混淆 | ✅ | -| 参数名及引用混淆 | ✅ | -| 字符串统一提取混淆 | ✅ | -| 整型常量异或混淆 | ✅ | -| 多级别可精细配置的垃圾指令混淆 | ✅ | -| 已有方法名和字段名的隐藏混淆 | ✅ | -| INVOKE 指令修改反射调用(beta) | ✅ | -| 字符串混淆运行时 AES 解密 | ✅ | -| 字符串混淆运行时自研算法解密 | ❌ | -| 支持方法字段名加入换行 | ❌ | -| 构造方法静态代码支持隐藏 | ❌ | -| 字段名混淆黑名单的配置 | ❌ | -| 字符串混淆加入不可见字符和特殊字符 | ❌ | -| 方法支持拓展无意义参数并修改引用 | ❌ | -| 方法支持精细配置拓展无意义参数个数 | ❌ | -| 方法支持精细配置拓展无意义参数方法白名单 | ❌ | -| 方法拓展后支持拓展参数无意义计算和调用 | ❌ | -| 支持首次混淆生成的解密方法进一步混淆 | ❌ | -| 字符串动态解密 KEY 支持隐藏 | ❌ | -| 字符串动态解密方法支持隐藏 | ❌ | -| 支持生成超大字符串分解代码 | ❌ | - ## Star
}M@!B(HW5s16 z3p(hxIPUMqb0V3(HXsU~;lGe7YD$|FIKa8goY{5!c&FSw 7q( zZVV*|Xo6yNc0=iWV+y7wFl8r(<*7VO!6 RDc;a zN`*wP{br5egy<)yV*H%U-JmPS6g*5J%_YB pNe_6{!G&{0+L+)j~65 z*A~1#p`JLkO?;%tjmA4bdILUViRguqOC^stjXTLA$)cZRZ=s&QS{+l@j+njMXhs%z zH}Nh8-^nQ!nUv~ctgHY@xxH (zn|Aq{vgz69g=hSO61y8vQ^~8yYu6XCw0HBYw^ZNdS9N=l`hbI!4lam z(IDKK2(g8S`zO=?Yl(|bD!RlYYsJ6baP!(!YB|?tIDCre`7syk_B8Y+h!|O5Xa~gL z@6R({ahW|{Mn~SgPl`=(UKUZ4O0I;l9gME~xW1VoI-eZ}t!Lo#A5S>s-l2V~F3i5m z+1~~%9EyNeBX0Vb&QiRt{ZWm$8(2-@)$+KJU$Es}(mn#WPBFjWJe#)ToSGi)>oEI4 zF5Q79V)yiFUxRyY{sMH(l$ZPjtAoNV>E6|4B~I@m=ZG6`eNNSqi1QePwpQlz-H?b3 zq)~e)o~39hq?FX(95|tK)&eR^b<2D!-tH-R!o8;mZCkh0g#vru$VG82w$PV^kHhuT zI_~xl9ve24U1O*q&9MSR=eNfhpEUU!2FufrdY=yMV>4%x^ijqArjE1q#FFtg0kTqI z*$+=XLZ17?N{o4yVMLNe_NH~##QY7_mKt817?ZqJaU+h8S0*|Ghdu<5PwIlN{IBP4 zWFKmRU43!ZF6hUem0UJ#Yy2Qtt2x<8>-pH2HtO^&foHsV-}^oFaC!vSelj11W= zkhcXUl(J;`f{E5EXilVuP!8skN?mjPX09~g2KJrp6Doa6xCFju^!j}DX&v+J(X-EI z?=S 98g#`_B{wIoGi->-E>{AY1D0C>(hfvyXjeY$4zv11Wn1smb^s3 z$M2@4;-xz>xeOxxp9DFCoeRfLZFlDwS^f5Y0Ckqyw7`V?{uMYU^pxXfJDK&<%Xy+1 zCpd-`6Dj!h(E)uWB6_Dfo`w~JtiM7Jnxn5~0|y*uFFTH}m(zmDuMLeH^Oe_6IPM*% z0D~X%mmU&&9Tp*(14bM1%F+H$PE(FA+iq{u{Y9V+f7Z&(831)utL$W_X=H!1%2e@o zourYj)`RZNwJ9a_nH-EHHQ1Q6ynB0bCae-8X(-xn@R={?7%_ k1rGjc!FZT6^?QnW(^N6E+=T*c*}H50!>{?!jXlEi zTd!`?Df2cPB2uHPk>m%f`_0Uhqn$uLn_ZfvK|luJFTsqzfwF&LQYdP}yGSa3OV&o* z%d4*ZW8YQ(t74tshgv^ZvUr+L_~bX`On7xIcPkBeQ$1>g743XzZPm;kJGs|?Nv?6f zy_oj%ZmBtImKS^v?^i1Pbli7-ZMRxLdONW$5d%eM2;480hl%ZkHky?S&^XfIBpoLg z6h7Up#Gh!p6q3^KI@VIyeuORmYpW#!X`hIYNHe?6!nc6mO}rjjs;~P>NK*uU-SvO0 zy43gEI@w=Gq9BUyw{Y^M&!_&E#`Aw9&<}$v{@^Rh=Y<0 b;KTV6q5W%DD{TM8w2$QuNi&B8(2M? z6)0(+o&3tYco+pdmp)BySs?Z;w^`!5d&BKah3EP4bDi+@EJLpTGWKlutUWWrai=(} z9EUF(;kI(ksDqDY`l_`=zZ$tozg;{9wulZqa9JBjIiF%?qjY#x+C!-s7U3U# HS<=?P^-4{eS`e z-MDcJ)B d69?te8XG$TbSaEI7$cEpBwTmF;X?_*T6-G@Cqiidwk zY5|~*5xD!1I))j5q&^eiKF+_xDn^HuK>(5eyTb8rasRg@Qjwk`%1FuDx-QehSYy5l zj@Eb@?O4&z^9H*YfSZ4E%0neAQHpXl{W$tABrHyv;V8H0T^3_vQ4Q$N6TbWZhoixP z@WikB)ia}H^z!{Z?1eM}LqcEvFp%rN4}VLP4C$1X{b729!;=*v_GhnW{{>*uQU*3m zEw0(jGlul>CdaP*!_9vb4nC0TBCeZPlq4BhGXW_K|Brw(@#wFNW8SI&Q`c7TvCiP8 zVc@j2%uK)gCn!93{)R?p5G%JtF?>BAgNTpxONu`DBLLX~Q-Gs5#MtJanA#sXCQ6EK z&1|CBX=o@)Rf%ww5Cr?2K|j&-J(qXUgl5&>ZEy0ZX*9@o7+VaoLuP{OS5C+nb5{%7R`TaE3A1Ruq{okL zf56=OcW?$#STQP+ktKgJ=cIS!x%+hn^?}4z1EMypfZo|CoDMW>*6`d^&3ZrQU}RN9 zvfJEjr4RQ^Ejn6ex?wuLK*MmQ-c9jl@# ny+eXc*-9FKH&X3umMRx2H9+d7 pcHA4T*N@72aTo#^Bk`mF#Gqwd~*>VVd zSlrgqvj&f!Bl#yg3g!ZC`f}jXvCWt&uj!0?^2*_sl@X&(LuQKpccX#kVMe8m!pSwk z1^|H18S>kD9p=+@GS$OYe_111f6e8mw*c?omZ8%1&1>4F|=hnb<&HpSl$DbtZ$I z8R|>#A%J`j!hdc5KIi)#xDO3pHuO8l7S(Dfl;5x|J!c=f@+<>NpZo#h?6`dQ$sr zzr@-JI SKCauMD|K^F#XnxIb7!p79CPt?Z&4m2`+aP#61|?h6o61! zGonon#dxN4ksNtmd}H&_XQb@cF*;c_J7gp1KZn)#S&xtAW{$#0M|bIT{RO5E{K~$~ zFIY<#&D4IXafpBQa%|t8<5}GLdcCWq#p2En (a_hVz(*JKr$T4(>+y?9*)nRH= zP1z957wE$^!*|d~A~<1j@d$A;+c~PW_q)Z*V>uX^w7k-UI#F0|R`GSMinN7x-7e(J zq-vSEw0RaIc2`a3?znGWbzhM(EI2$`B&|fyM84`90m){8-wU>HvF8os!kZ6Y@itYQ zpx)ZUM4_66Nh#H7;gc-eVVxy5SC9mQ;xJSpKBG0GNZ8tH`5K!hngjtH?Q>sEHL&ef z sdE(k`E+JWXUIV%rADK~YfSKZ9?3kx zr5sUyc3#&imhpxL-h4+52OE3&%=OVd1Eak 5=N%V*cu< zGv}WrrFycX@Q0lJU;&MPWMrEJUCio-t=zW w!Y zhN<1C%-HOOvzds8J!C`{WDy$F@>j3L0RVq;&<}nyzlW>`UjP6BD*;rxjaq`>knTIp z(CcAa7$kujrSaln3nP3h;nwG*6(Q9TjKCXZi^CLP*9Cg)t|~&NFCq2%WSqvyOi{FX z3%gO2bB@< J;wr^nY%HPf}@G6bkw;Z493d?9Mm2UiTVnnR;DKv5D};08L~0WBMblixWK9{R@=@ zMeYD>yB}wZN~&h&aElwIf=Nk~?Pn>oTUjXoXN#uOfKZMLpF)a{%vi4l%)eK~GOc$& zSS6i31dX0 2d%YCLXBCu3%d!be_SBD~Jk&Ak3#qIWNx&`fU0a+?TBA>K% z`#w?lEA()rVTGQNYK=szK2{so_m9Ko{SMKSR$kfOY%Qqtdo&D!d@atD{sc&DyQ}OD zl--4Xd@2pW7oFsuOU*DXqd9^5KPx< c`G4DfraCVmDCv{eMSI&ctu_9L-%o`%o z_N&({{1nC1eaSDWVtQg}E3?@7lw5UHN+I-@s`l13ghq_YP`QY&PYrSgmH)~%@7`-Z z=l0i3IO| I}h#DDMS=hBoLv(yU}f($k _JqCPlqP>|vnMwDyNgKK-dnS 9 +5`SdQ7zE e7O9otJ3JOVCLV!^}z!KhxScdacO%$Bn6py&4J~necaCamsVL zG&~4WuWwSU2UffUoP0FS6W!HV-QjzI%gQOMA)8;XDP7J@rI#1}dzJ8MRU9zJZ0dmR zZ~#65e8~}vTVVnCUrNoR%8J{yKkgzK_-nKGR Qp>-lMNR zKgej0u+;T?$t;`z_1}5HP%xOfU4k*mJg#+NAq$UF)Hbd6QyOwk>x9SzLY*HQUZ0#V zO`o5C=B3?KT`o}!Zo8vp*_`CxQrCEJuwR^^nqv9*xg5T^Ro!c$OUzRD=5Y6xxL*;a z3`1gG+`N*y6(uI&j1XWf-YN%^3!KW9wa6YzPHk{18BV7zbUK3$as%3{OYG~L1r<;3 z4UuA=9zmXyl=9F)du5^HO0^D_jMMqQt$R0K@J%B4CUZ=c<1G3$%OiF)sSrn3Pi4UB zH3m8e(kh2}`MJoEB?<7|iBc>af>F9R?nUrzeqz=bvob_){5TV-2g(8iwZQt+nlYaZ z!u#9D`W-BYw20#!Mj9@k-vZpm;_LONNpsvz7#mA3%K9#t0_^2`gV}%?HA!ovJN022 z9jIa0Ageg9(%vm|1@pFx!sWJJ>Y!VhZ}ZeM`E2lIXx9{#EN;p5yR7PQjh3qUDxR(| zb&E#FZUMOYC{Nw^sNHj}BD?5r^+5BsfqFM*yl2M=3BNBEvYHp1a-8k-)K;crSXvYy zEn951C?qx^I0#PZT>541@LJec4S!UJ?>dX7PFM(C8E ?v&M6cn41jr zJ$x>0 `K?a3IGt^COqO|^fs-aSqhfLOCZl4TQ9Q8$vob5!C&@35=|Nv7m^sTjWZ=QN zijanTw~TuN5WpPSQ7Yb7N>%1erarz h0Y4>B>c5JpebE@*0$*6syFnbT| zN76G8ta+vcE6iHS6Finabe?I^BTz8skgK`uU-xJh2GOp?-<-Q1*Znj`ktCAX`0;6| zlB{h7oMGYHOmE_a^3TA&{3+L_jHVnkN=6ANAXA-QzJYq{*QAmZT~wG~dX5#7dsADq z>&eNW>{+{WNo#5bZf*6FqxYIG(6jCYZC(~OlfR||rPmVW4l54iHkE}CX_p16rK8yv zW@{@J<6lMeJ%u%6dIbA>6y+z$LBsB%i1*8@! )GGxpR&Qt6=y q~iev`YEpR?B9 z9l9u1ES2YCc DUD0i-?P&dslHk zD$JR3z0&FrJB%&pNu0n{h?t)mo6D`KZt8rRp|HXz(DZ;52DltXE5Ons{?ck0?Cs RtiBKL5WhE^a1-q6OCPh*vzVz99#jtrznod`VZ4;UKy4&2&SID-&`bSSDas4f2 zkN==N4p}Jiy+l9ZX|$nMZ3A0Wexxyz+1LPSNh+E?`CHj4b=_tt{2{(FtX^EXacne2 zz_8txo7acC@(L5$ahg}6&(Albk(_Y|!P>;Wjb%^t#`X42x!|qsLW0*UMXyFW1kD4; zP)Qw+k6qoiJU7dl0&SVI3pFM+>YH4L4+-)68f+SnPi`5Di2h;VZ;7rTGV)suZcQy8 z{$i%>h6Wryx=?i}zq7Re_9eEo(2$9Yo%rT8O{7;-)9Dn|JIq2Ob7e;07CEPJEBbuf zSHDO$7&Vm+Qh>X!nAX~TDqiMWjBEN@$ZFVV4J@23H=PHr5wx`{o`Sq&%%A10YAM0L zq-Kzx%BY+gIAUE|8&0MYLKBenf?h?upU2k}ySF~k{)gaWE1;+B?n-dCS;;+G)=Gy9 zxp-Jn`%?v2iJMys<7EXzgBH(6S0#-~5)qYlv@uF%rDw;3#YH)}Gb>#o@7sc?BtdH( z7zJ2w=fEz>Y>N6&(8uu1$0yzQ4-C=-OCYp6XtTp}h&v9I@3jKhjL41`TscxAPp8=F z!K1^Q%&d!s4u*Pw&7?wv!7PqK+_{!SuT{fz!}^U`N*Fsi>$|xw97+YrdR=x`URP{D zo=^Kg&Fy8@RWHfofI={_rcD=-rx2}jj31}Bjvhj1T^a@`+x?GzpbCzCQK&3(b@2^l zp(Nk6CFHg>4dcs1g?QzNVzYMDlKcvk<-O+*Aj-kMlL_SaoW;~KkfWlqv+m+ov~#y# z;x|5cPVEadsmsKhsWcNaKe6_HewW68qJf%RKId%Ta&8v!LKBN{*)Q=@4EXqy9oY6$ zSj>xUQw>2 ixOL|pdV{wV^8!8vG z1VCfewO8ikrBey9nTo8X-_AU0iujbOk_AEG+TiTT%iQ^XMLh2KRU*ymv?N4Y)7#c; zQQzO=Ob&U<(?cpUv2Z3!3X%HVu!L(6vn6`P`GlNs2pY*e({bDI^Mm(v1D25cl%>xB9uKgx zR9AH9w6cOh)A7O-T>i6lr4Mska~yDXYjf(J3*2ilBRXjX4kQK_`=+>&4X`sYIWj4f zC8 B$T++p? %hG<7d?q 7VM%ykgOD}wh~;E zRNEsT #euEai!^!fID+?^jKE2=ZY! 6%T2LK$K!SKW^=|ZY}h|tB_BUgkbbuUPU%;1G(mT6S2k2egcr%X z^H N`SgYg9x^c8t@56A=ozU-ryjnpLJHZz#>hi~{S) zOUIH0c}zLMGlt;duRqnyz#}7Jv(2OMd`kBjp6NKCflEF2lo$V&CY|ma9^6B7fApCa z#t%~4RODllxspdvJ&qewZ~wh$3OK&h6az9vr_*2)u~)yRa38AZ{kHaHk2B~{yTs0> zz{k5{1 wgF8&xb;c2E8~EFg0Fvd2hIS-Yy)`10Kj79?u3 zddz@O>FRM~&O5V6-U$BUIpQbS`}D`th$8@M@0#!v;RFrOU%Q0QH1VjCl8t-}NUH9G z?)|npuM>CRN@&1?T=B%E{VXB*mEF33v89o(<7FVJa~`p_85Dy!c%CzroXtT(I&cns z8|P8hvg4b@5z=I@T5M`xVK0LPjYau45dDed0>yEXDZNeMuw}DOLRHC38osXRIC(7+ zW%+ln=;)xPh>P~jZjp$%_j+zTP5W v$0;QmhUCGv5#9wFi z5HFa^I3m=F!8rn;=4 rd>VtDnMr!xG~J4js^V>Z>{C+>ey|n&;?2&c62HUt9C^ ##(Qn77OQv`<> #%{$)2#d|@08f96;pj@dr*-Ul-fJ6)@^=KNjJ5-df*pL{1>y@Vm9Z)*H+4o`^>pp z@C53fCRJFOfA#Jyh9H!J;VHI^rg&>Ys_KmL>--bKY6b6wG_=VS#v;}w)QHsRC|caD z(K}Z&DTQm;dP&RVQT!l`(0q8I5T#Qx4)@<)+02m|UrfMvTXUlX^`{g&8IWDBqu}1f zx;VbG1+3R+R~{VkerqhIX+)1CFklV`J>MJa$Y`=+|Z;1ckdu-wM+5i+3v}#YwWT zM>(QtMT;dofW1F}
%1)gw{4f#A_*E-*l?qmFS(Zj5dAsC+;%(#nP)jVC{CBAQVYj)J) z$^1lO@;ohxauRPR@TgFxELOuk^=xzKV7t$-63M0l0SSY7kZSgZ9pynqAgr4z>%0+| z_8zf5Ze`U{%|C1D0#CZf^O9jxPFe;gcHG4T1Q`B1`F3hx1zT`hvvyw)LAIzLnEFAs zs17CR?X|*~oCh^@Yn##&CON7)2m7XW^X^ljAYF^s-?&eU$)Jw8asy$c=Fk!6MHg~e zg2d)TBSFJ;2QalAC1`FnM-*j}En4x^f@zriP2`_`)0_3F63E1BVa(CA_kf@n^ zWCaAA}Yq{daK-)Y1~+0YPM_j5Q=89?KN1%`jKg)fQYC}hZ#)B@cP|K zr7WVf84bpsjV2*3)y>3nDX@Xy$wh~YM#|m(&t}TX`Sy-YGhL<&osEJ4DmH-?fQ(GL`)c!J_MZ9F64^lGaDjohh8u@ z3`cE^OXF_b1Bw?ZP=v|KaprKS1+yOrG~>dXTk*2Y^AdE-zHT#fmgwl+#U>W1w4`>d z7wNYd@KXEPE^dr%gZJ<}r_m0ASi<}NKzvjppl+7h{u)7gUTsg`54o8IMoJo_m0Px6 z;(9K#c`<>KOO>62&|;6JJ|vw{Ezz2Gkz{oTS(E3XBB_8ks8VCd(FE#QP|FTSNYW~{ zU1z^#2Ms#}dysn1W92pr>7I#>E?E_oAJ9lYTj4X0{kBp5P^na7cco^ZEiRC?YeTI1 zXKx||;;?@EcPwGCQcrHy28Z{1`vyI0xoDYsS{)mumDKmM!kqqv37*^RBry`2L4)hj zZJQ5kl*zQp{uQW!n0R2*mWxQsT>x1?GBCf)qqu1zJA{_kE dU$JSdzrZs1O~znj@A$G*Yn6C)*NBv5Osd%Kzl|%2OLhIxUx(*(rZg&g9tHxE zLz}ks2utG|b)f6@gQlJ00WUsJoG3%R+PUWEa_<;6O2_Y2D}IQ?--cL0FRTs77G^j0 zuZ~IIQgExfW(-Y@>zwW@U h*Ulho(V=lqt?@=f7bR^-24ZjJ! zwnjhZ{?)r!1(IX9dX!-muWkIgwmr5SVvY=Z9UdcoSh?w#Z*2W$@i*7XUT3#uZ_0)U z7cTzVxyKei*Wcppy!K8y+} !*?2K&>3HdH!9 zxb(7p8mD2Ut-gzD4UP37k!Bf$UTMrCa%lN4h7F+Bv$<({c 10Cc+~w0#*Xny5wPV$1CXRj9tIFD%Y%bp@Am=kGotT)#xwZvbP^4 zaWL9;G$*02A jD=y52oAP6gPiBV`dm+UfhKC}kU|+w8~oVe zqpS!``_Yb2i|3{LF&V+~Ff-5LDO`f?gD!Xu(sxFL6#y`Li@hB--TmW?jV-tid3N%! zSc$1IMgRUB*P3yk1S>xg?TNw|r=*edXDxW<)r9el0<#CG{muLtj}nqWU7cOS2esD; z?J3CR{D=X*0fb;5V+5(4ze=X@E9qZ+TRn5hwpf=vpFex84ol9%pLT(BH?I7X&J=;r zu>aFf-#s3dPOUO(R4OcN>moE7O9tMpk_^Ne+jlU^34c0t2`2 >JJR&w?F@6Gvp?7_!>d6Wvk-qYtW-!lZfFOBMAPPNdT7b zv3GsF>pr4Dl%%RJG^cLXcx~)9nxeFZxie}Rdc?olT*o6DU4h0T_12Tgi-z`m_d}Oc zyo4rYsQ5+55E}Pk4zukaUGp{;a{jU*da*}FiUaTJ{h*pf)8e;;bU%&wf+6C-g+{JO zgR4$O41GCc#SPy8?qfg7K&cev55`3kHfI?r)bfG+Ub66+sOdlw!)q?)rAQIBdGs;B z4x7AgH%&J&S(UDcHS6$i2?t-S>RAmlP*WCX(6{)g+3}NRB^HxX61Z_nO3@1$<5ziF zV}9UnJ9hd$Yq!eE6BGwh5?@Ky^lQQEECv_*ijz8qaL=L;`7dUhHiz9ef~pfy(UAq3 zwLIh3oSS8r+u4eISF=~MCVDds>td3HZeB60NspobZ6&I%D#1!E`;Xu`iNh`erA^v? zQ&3~0cuEG@LS?zF7Rl^ZEiPUl `OFs@e=B$*t62>aWe4S{kMua zToL8=0>?T~DQ0GR;i?A05Hy+ndcn3?^_#qW VHEo)NT2NN9dwz=1MqE2rG#GUWS`04)Z`+QaT8#eM zKM~MrL}#tXN;g6}M{n$UO)R(Qh_$YT&3;SS1_eq>eL}Xx7yfIPqVs;qsK`+Y45Eb9 z=-q|FIA@cJNR^I`6;q<8ktO}jDQQi<=e?~#GZGA?+! hKa_jp77ur|qta`e=zuq|jEzj<9}WN!_@Q-=K+Vmpgb6xg(AP2*vn zsF4|CHDer7?iSXiUV%KCm^@`PXI_4_P8z76Yf#vZo?Cxgu9&~gl7)6&EiX(SC;a{j zYuoV#BmBh%gRt%mpZkC8I2;8>(U26?A3i#du!eK>J|8-Z)C0~}0;-Uo>vD=iIOiv0 zW=7CRRc#Ael5m?1c{-7ad0{=G4!HC$l72GltMek8l$m)tCT~Kt!^!PGzWzZQgV`Xb zS)dUL@ybBl&~v){5HH@yAC=*9N)wXXdhfFv7Njm%krq`q{Gd~#j0L7Wp7I0 &=)V=d6}6 zmF$*LyrH6X_}gB$2X#SsdVVh&SW7zysnbL^#S1L#U*eDN^zWK3(};f%!u=x{aNc|( z|HJ0*tAf8O@T|PXpLq5Bzo0O mHo!aw3fic1&_2| zdo}3klLlSQ*5})t{gFe&!JmY}dPTlV{~_@BRS>IwhCg -$&Z+sZ>vVglVpopWUuSjGc~f6QW+aZuq559e _}(nU`B4Nv5obq9CMJ6#Qsa zW{4lFRoz$IET=See*MgZ)n_Wo+$Al70ojg~8Ikvf$sLSxe>9}8E6-+=E17d+cvxlubW97x7xz#U#{x2DXyLu_JRxP3yE$pz;tZTy;4f>hNPDpZf zS%hhpzDcyAd&H&goaQg&RtE@F?K_Xq{HBr%encm*sd)}%|FPGHi1Vh|Bs3&5{=c2_ zvmy>uLr|98qZwp}5% s8Ou2kW0Au}#f$Z?T%@y`fttxcs2#z{`mm zUpXu#OMQYh#1X4fNfK}N3XxV9T4H4pqGBVH00meG73^0-1GW>&3X)sKe4h4CD 4I~h#80LJ;l1X}%2v2{#;z(q=1lv??`MfCRt(D(d)Tl2PP*cA9vr=$p`DioYiZh!&!-VxMC?e z{xak7+)FMS f$u-F|2 zKGo092vR!!k1btdX$HM`%q8~0_n-am#jx>*MyyPEGo-?<+xCcl6ugb~?aa+?5nQq? zHA~C(HbrQrJ<{${6bOIubTi!FFiZT_36^7GKMysR!4@p=qvtfi?sE%cqXr&6HksWE zU=t=<*=LnkiaeOS@!!55LJE*|jXo8|FpegHKoLqpl_w`m{~cad_-q1y{Y?5=cI+ oF@ltzsAa#LD2;f@8R>Ts*>nZvZrtV7uT~amEU}BmC&$S=Gnwr z?hKf~BJsaEkPsF?-_IY8PBgF{PzZDK$IE>PXV}tQ;imT3trL3x|4{Z;QE_eC7AP?+ zA-IGJ4#Axi4#6QnaCdhJ?hpuW!5xCTySrO(cMDLs7Wx+1d!KXez2~*p-beCLsZ>oF zYs@}+?_(C=|HI5o!?mRY8yl#JqHY#6J^M*)pWQig)T)`F72oP4Oyac2{|^4SSnbYCj+rBb$;hbf`hy07?}Gu6sueSe7QHmA$wS^o z*F~GwATWkGNf0<|Bm@YEnIA7lmwFL*^}4CDlcWrEdoiiwUhdYxl>Lz_;WgU7_}IkE z;S$hh>&g`i; 106fwbyPGoGVp>#FtYnp}S5O@|IjP z?)t?=j ;p+CI~Yt*a28omr5|qcsJ(N$(G}-7%ZQgmogde8 zO#Kzg)i@`|+q72DWNxN{?yhMfy;jr!Hvc6kirB)@A*I!^HS{5ZrBAGC<+{FdWoS?@ zwWTr5A0O$1xip;vuy+K#23O-BzceSMHF~x+l`z4){L5LcR5k&a|3F;d$A5A+l9Dve znvPDJtvl}Z$}e0}_Gh<;XOfYdQw0l8j43`Y hI0E^4|6i6^35JIJ+^`X?`}KH=iq2mmq*BHDnp_ zU2YsFlWN3xAUUas+cHQGzi=ImIN@f#>6AAd!y$__t6-{lxVklj0|J2ti2Vzc{}TPb zpuDH5Gpl`u+303KR&uvKWk!>R_dvf=^85cUSgzn@!az)%?7AA$@_jHN5@`M_Iih1P zzg@dwp-}#_gvh6L=3D12 W&H}Lr^cg-u;kfnaU3!3Aiy6`bILN+{?E$iaz>NdP3Ma-799yXLNH!Oq zAluowoBnP9Gt2=D O2 zwyiB-nGrpc_)Am<==$Z-v2CWi{S`bFTy18XDiah7XbH(l6!sbfgTJC;OpN&1+?NLa z6A8mc!#XE@m%~zNnPd4qPhD`baA9KYW3yh@GT0qP9g#m-pnSOZtWEKWTl*LFIAakh z*!BDM_{GU)jzyV8TBK&-=_&L7D`d?g{ojz)e4%s)r&UVvl0w}TA-lb9t^FVBvB&;7 zYe2XMX1QO}X^q|v0bT1uj=;{LIEJJT^4op&QtI|G4rMcYU#T2H3M3x9sxw@-#r7s) zg~8#eUCXFKF6e44Kt29Dbyahl{D>6v6F1N~q(M!HwqR}a u-r7maSZxx4Ey4r{y*9VawF zH#x?lM>2JNal1rl6=gj@JQxA{j350k)A+$>pObzSUoo3)N-_lGl$Q1j5~0GIS*Myg zK&YoGx^w>(yGsGR$m8}kV_38{8VAx*OUL|BHqtmDGtkGWzUzWZC$88_)eShj%N>>y z-_co1-U;|_g)}|rWK7=6PdMM&X7j0B%n+o$F{~S~AYp#UZlBoS!Pv4u`=X-H4p5@T zz)ez?%1YQU+E?(FxcWI=s~!aLKP-noD>3k5gyd|XFt7fSHx_5^79KSC95p8sUxaeK z-hxzfAQvg_!yAT?rf(P_V_Vs0U0DMU^v9yTE0nG?iZEd_(;?^uib>L>L;S1iref=C z V-Nme9%UmboHLfWgNOF@d?9)<{QTX( zm=GE(y4M}!3f`1Q*x26BVO!mQ_L*O<>7EN3m}J9a_7M+B&gj^(@!=CQYXURy8tCDh z88F?@QYnwHbY!(J_ b4^wMniUgar3hV zp)42Bdj`;p_j!<>Y Jt5Q zZrsZ^3#851XGsD%3=*31isz<9&{9YcMsXt2b9PLNe7yVZhv4qovok46$r^(q`KI3;%%``2y@M=Fbn(xcX=^5CRLYXs>7rm~EHV}Xqrbl{c`hYpcMsRJ0Iknf z5F-nYwz_e98NTn_oEUa1E-r@&F)x8B!vq>Xl$9J8UXmdl2HM-#k|Xu}izjsWO^v%^ z#6jSjnY;5#nH6}Xq^u`a4{L#J1AuY6M@tm2?}IAl{{oV2=@T9&b1~Tq8dPq{&&*XA zCJ3jew!k_X8a4N;MTLXe?Q@ZSFRCZR{f%~zlMm#3Bd2O88d^#WsMLlZ-t7l=>5L(S zW*e|_Bwulweh8MN9NP?YlaE)QQdc~Y^grVhxe(N>h^>E+uVcF4SGs3JXJufc;V#|& zYAa0DD3-?~a_knbQB$^D(xO|{*uhWv8U!Q+rysDq=%p(9ZJy_j1;&`n083f+bXS98 zsT8C(fG9XJ-j$%3=iPPFqwE_LV!+N;UP3oLg>=)<0L*l+g)LH7T+F&kk@q3rweQ12 z!|$d^=mFpbccZ_d$+%!2-%E@gOgMq0rK%8Q3{WNI>@y)wBBp$(uWg4~n8=2dI%E`@ zC6>e`La2Os`mMWmn<8>IUHYO9w!-J%Us6ypjX6{oHi&fIzY(r#>4S>KE7eY2IJjr= zIiTzs2adVJg !T&OYzd8|vzgucrlL+ApkzSNVjdG}JYDR8Uq$h(5sw1qETD7qJA`+n1M=w3(Zz zX(`2t`>ZHo)Q#Ji_fDj9E|v4_iF6m#qwKHUxIgAdM~W^fJ6eSIT(GF8FsbW{Vp;gN zJoE&nR=6m&l3}K(-c2Tql;{hI5$mR049nGX82OyJcyPHg@$6Y?o9!RK{(zm+aDhNv zlbEn dn_!d2`_C8=_#?7QhI6px!~oJo8uxoSMAj+a->rr zaDb>$L`mXwwcX!yxwn)y@7epA8J@&6C%0=iEYw2uIYXj#apE+q5n3)jI8pOvbP7IP zs&R7ZF6-mOUTVss(fug-f8|2{{<7xLRA9eLl>bO#MTMXy7Mxj88Ch+UvMM3k8LB0W z2nf8Up;-vem4ng5eOL#Y<4*DDO_~&p$q(0|(6dd)`>$jrU(*Myfd{3rdrGHoB_*lB z57`980rRPfnZ2qZLehPj#l8{l;$lMsC#P)H2(v5;f0Rp6Umu9_v(SJ(BIOnWFQjj@ zpys9H{cqzGe&9YSmng%sVdoKCE%h-rjr 3w?7Hm5HF#68dsV}`p(YHHlI8&}E^oGh`mt&3Us zr~;MnfrQ`BI_pl~ACD@J3JI3{qDEqpi?K1WUOIwJ=-oU*n7io^ft#iL)8a+1@ZR#G zVB#!A=1raOsXs^rFIGdwZYOk`l8l sVFCd&J%^>R_a?+VB#yet&SP*Z`B2Gx-WxK8=zECq7J(N;u87u&_d5Yi~hbO&s42 zqijRy)xMQ+@czM#sLx^Xa+LRJukUGPhFO?2oK;vt_0s;u^1Xk&9EJnspS_8z;Y2z_ zTexKR2a@0O{XJMi r{Wj5+7W0HyKElik+r*;tr=x6%EDj(qN8l7X_=0hcoOfi zN!b56#PH870V5hL!MJuCxUs}ClFAU8WPT%6+Dl{{S6VwrfEq*r@A~Qqkw9Dl{zvKm z6tsW6jBttQXATs!FY(4#Ed|7;L>dRIumQhEZ#X>96;xWb_fzNOM}OM&v#M4VPJ14p zGwZ3T8E6S4B>eq^utZ~GCn2(~hNf>$n!#K|ou |n^VeYs0!8O2cp~ugUtfHrmOicM5mPRK2g06`uSdoMiL=*!m3_>u&a=ylprQK z9v`@vZ9Fea- sEanVgnCC*84ssP*3Vs+`|tML8Rz9a+2a zDg0sJ;T>?J3x}q!jVUpcOv%QzvpA@Q3Re{gmMDR;YB$lWm@fP5(dcM6Ephfnc%?Nf zX+Rp~6wMDEjh{|T^mz=5C_EZkj&2x{mjvS5fag@Wm`iMH@Ie%LGSLY?*w&UuJ!-<2 z8+In0N7ZUAQ*8I9>vxK458e0P9PzZSq@wXRa58;|T~oWDEUa|7P%Tu#ZRAxcoT<&; zuFO3V2)A&TUw&S@RBqRQzhA$HYDUHWUO%rW*Zbt{R2q`-icnWWeql*rqI5Z>(P)(f z=W$ylJnx)>7T7cW1etiiGV_fiTIv|qyLrbxca7jUzb-PYxcQu04bNtX>Ti}A@mJ@D z{+)~Xr%ikIA`7Oi+B^0G(-DCp!J)GBp!D*Jl`m44S;brWm6SbpFJtNo4lfHf-KwtR z }oE{wv5D$%#8x X zwcp~vd}(emQbDwNLeZGQ?M0DT_$i7`hH7Hb^yVniRO$rj#=`g}%d=E18Tp4e9<@TS zBze@wkJArhR$!rfEaiEDRHfZlneuVzY*TAD%Uaq2s`Q{uWfeo0-ZP6i!n9Em)*3S( z^8=m1(b$pM5fnR6h^m$4Oz 7>5JMYiQiW-Iwtkjp;?p$^EAY!gnxYoR zjw<3)A9{bZ^V<|+gt<^Y{*lATtdIA5vRx5aagnzUc@3PeR(dRso4WaPGG#~WW6Qm( zjobyZQr=Y3Gd HN!6F%T48fq)BMVqlIG9M!OQj%?aZoN7% zKl~&ySD?Cim-hjY7?{nBRcOMbvq8L@0Oo=2w2LP^+L2oY5=eca(E^m^FgA})#;fOY z?l5lggCi(kGx=q{M55p&7`U4k)*MJ=Fl?WG6^A2PnxpVVF-s__JilP18;*|44O|I@ zQwJu1D&yRl5)=>gY2=to%e(bWM!y?|MGai$oV5PZE+BnUei%Dfq0f|(R?y(E2wjNT zZq?|9^2pCoA~>)O50sVutj*m5MMP~bNO%4`?bUjgiByt;ttoSHBL6hhCGT1DAlj7q zMlA~z7%yd*zXQoy-=|{;($TcJ+9W7g^fCTIcm4$ 8f zRb*aD!)K)5M8>8o3EQ6vAATgq$L7< 80`P&%|MHR{LOIB_wtToUWQ?G@ZLe$y5uR>}Pb&X+)aj7%O0>izQX_g}hPQy296M znLDXv{y?ijDD@G%*-(IRSw`%+1qTio#Ymx+O6NI6V=@q JyFnCA4x35 zE}C97^S7Iw_aXK+2KUL+lPEuu2FA2c$!WeV2s{wHd&S<7BP`XYP!LVHP8v;y$LFNW z2px02+FTDnT~Q>J9;_wKTQ{z>s>zUzlZd6y!P-dACJFE=<_>|*4d|GW$By9W5P# P4mh67 1gZKm07+aSia+57B8?{P%7 E JsVm`Z=+x1LrsRLaE72oepDiIk}wNWUNs^`(LX!HKVk zUatU6U6L$il4|XK?TzX)aSj488-g$zqjpO~1=2`@`kBj1=C6b*Z}m6``t{9_^*m~9 zX6FO5nT6BB$C34+r_+HkF%dzloV7sHJW`lB%KDy7kEP0-<&-#F<3`41a7O>`cfA(~ zQH(Wwf%TPV*Pq~K31QyD=$iSs5 u&4y_fn%NzcTNd%D6#HB zN-x~;*KS02W%hgh^?4#egsx+~-2V3tP7K^!%s|5|;_T{M;7~CqAZ@XnJ!+M1>Q-Zi zfg!3Z;|nN!{ndU3Gq`7FnsyjYOXHJMPfdZXzmJvTul7^&ewKkE>u53l={p@brdh&~ z%k?SCcGy4x4#}>MUU?Rq!m)E75Q2zfLfIBgdeVNB4R&rGBIj%@$h#=Z04R*&ue{!3 z)N283Mum_pN7+| l516PH-jH4jhB5)mdjj4~>ZiL9ISM+W)UzgU_^g?tD;bGds zp8v^R5Lbs~SfUcTV5D)Kvi5r%CC5r|-CRP34%{Ioh_trfIdx6IQy=joJ&P|nqoYGz z{ &1v=bN@Iu*VQ7@?$PqX@<9) Z<})us{*Fc z$O;WypAv2o1}511&l}3xXJ14_UoyF}Ytr(Nu;h87Rtf-@(BhW?^%RWu$_p@#Ya6Vm zs2|JNW1IIqsC@XDE0?Clb%?YyAIz*q+Y<=&az~yeZ2Q>V!y@tc`*GYBSUCvs-y08S zj (ulrw?z60lFoz-Br^-CpII3(NHD??&Zp+L z84FlfpY=5ZK7g5Edf4|TAU1lzX&x-6X`0)wU$`nism!}t>3%4yYhwGFyHXOcqRKu= zlw@LL&KC(vvujQ*+x$MgCc-p&BZZ_;{{3j)>0vlW&ede=#Vx|0HH6V7tN{o7^nU5g zSCTE7Kf)?J|C5$kh!kZVe&XyD(IzqgrTV??r^84Y2=xc^n!Dlc6&g|9&d`|tv0j2B z*1=s@$AI79I!dtaS5a@SkEo+R%{^Q04n54u`7ms8bJ+0qg3(=C1`&wBsNz%XIL zC2{}U4}umKbGmkBmv60@b6BJN^%%gw>RR~dn$!>}kP1fH`PqXhh{jLC;i;na7i=qK zbuV7lQ?fOR%bFEWnJlQ9^0?yip3hE;Y|&aT;EBgAwx$;1m*+%w>iP}1P+cEL-_L2E zYX}x4HS7VWH)fK}rNm&BfVb6Il*Wa@88+@CVFm;|a2(U=B&?=Su|#xbPdj$@HLyFo zX4hjzi@p(yWB5Y$S@YZ)A+d^-*#(@`L@l+G{F)`^@`Le~RRwp*PH>!05aL1ivIlU* zdR%E^9&OZKEyeL?zirLS*s3oyOE!KzI1`C!MO^!Z7LBaz*zqYIhhMiMJGIPr0~i_` z9@n};JaxXFK;5N6VLj_#h*`c@QQ=V%EFSRt*-(OA7(O3;4Gu=y`yz3>;@Pf@AVEMf z63wBgYeJCf(tO-ryY6{^J{@s~K@*|$HEQU+F4-!tQdNlrDW8QIfeY7u_h*4$*Lz8Y za^xYCbk5L|cCa27{bzRbox#~J5UIMuk-fo(?Htf@0@>sKiH;+kNBLUgb z=Kc(wonse?#oGB0re8`8cm3|K-0^2uXIr~`E?hwBasFxPla zH!)#9Vrr7y+c6hV7jFIexi^VOW*^h63pth%_bX-3ApHTF&~fknsX}xtq?VNIF9@mh zkw2*{LAXg5QlW1qxBC0uh0LQ{VG&&6M$PoQMcd4d#FeLHA+?+>^Q!2`?jKl?1XC|p za%3#a?{s!UPb@`Jd!+66E{8ZfV9V|JT+$0YhZ-Ru0**E5$617kI?{Z>1WL-^oa?|r zs46ZJm4tkogS=Y u!7a$;w0_m9TlN&t*FACqHqG4`9?0uxW z9n (+rND~fooTdtFd!uW%_KJo}?S4;M>WE72;Crd({CU&Cg{NBn#$iV#te&mJ*H^M_N zls;HpP2ps%Syd3}%H5{S`F78Zsl|nVRGtX*E06IJX4l$wSO>H1P-d5?-S1+5`>KR% z*xgZKmZo{7B03igw5Nfp_|RG=7p*VX2D7(L(!Y?1r+xSN=^NJ=XQ}V60nIZxo;}4| znm7BQHrP6MzPj9ZN{N=mWP&yaYLh|&@FNV2wbxHI0?_*f!pkB`W{wJ=#2{J(N(?4q zDyzCP6lS5b$;pZOyz3wNl+1}p#AwZqd27kfU5T*?_AL`=#Xn3y^9#&+Q(84l9u^dm zj|5^;+H C(IXTmO-O|U!)ZR7WFqigBzd$vZ*D@8iz!mwo677n zjOrJ9m9{P6gAY=J52MuIa Upox#*RaTT`9f zHs%2byOHJI{3`y^ItokS{qC(1e%yzmh0aUFD0!i+VWU#+t5Ggvg$gyY0gskRA_?$y zMK6ZpsywyFf!GqVQZFZqyvueu`M$*uHn66mi;mmL(#iX69+f!u_KzMn(Ec*CAJ;eK z6H(kfSbXuzt7PPPW2tLOXws$D&R+BMu%3wThU zs@IP|^{RrU^ahn)tnwYpfy2b`VW-yZP|mMk1Om_`v(fo)3pIQ)2Yr!`8yy**mSe4} zw@s&cw7$O=tY0JgGve`GXvn2CcUrts)lJN Qr7&pro+f3o(G$ldQl!f>~&1;3P&opcDP6^oESK%*K(8{&?q2pG%~B zADpgwdM|uO(tIabV|36a3hFWng5C4puxdI#jLk5-Ovq5?UEq3{!7e;jT4g}IO)U $vkebR17f_P9-Qj&NICHbn^Z9#ceC z?eLXmwb84qfdyd`ED`(|Q{rUnWlp=M&k0^C3F-F{wYBkyhXGxfm&0!7(XhNs0K8~1 zQxL3)8iqwLu=4O2ixSBO-8M~9F`ewjPJa`z{SJqZm{x;}Co^(vg_mp7sY*7|3{|`R zdWt8+0UB+cvqN)%w(-39o4*JsM$!#GbxT){C&bFx!bP+pn-%t^*z^!hmRFI^kbt(! z#&RMWIf{+L@?Ol*uNL<8^(pB0DX8ICpzysCLld)Bi1DL#(dDE}jTGz1$!S=8jhWwm z*PkoJ+G;ge-Y;iIHRU_qFlBwaUWl*mz-!-ErK9JSAhhNACN^!PTPflzyIG57nW{>U zSimV%LGo}V96OpivT|JZAZ(mo34)Y9B?*9|8g7{pB||#k{fxj6*gyrXZ|A9Il_L0l zc`xsV#|`G$i$v6Ad{cS+iBwAheyuAZA}!flIl2t8z$#Wu(XzF<9&Tg+b-jmd7Pj4u z`>!Qd^NDxBrrG26k*UFtlfe^X?X`PIQr_zp$QAD#(U&0-^ zkzlTCLputH(jFZeRea+zB~*{(XRD(PZPMyFr_+0lUSn${swLiRSx3mESmZ;J;?r8y zFq7~5l-~|Qdn&7#BgSB5h%0=LhC`_oB0nW-cpA8Tt7tEZUD$Xr+zmSaB={qzEzVqK z9#5{dp7Z>=#=D6}lC0Fj%zPp{Pab0c1Hv(<58!MON`hG 9-!;XX3n8vg<3GF#n0<$vLoc>O_$#q#p zn@gWIv;yH#ByHxs-=T_PU~`!Ax+Jz}*n9HGZ8H`XXSXXq X4y|Jd}^VLl< z&XH_rg#jL 8uMvF*kf5Nm zh2u_Kd8B)#QkbhZ>W4f $jqRqC%VC ziGJ}yIwbG=;ZqaZj9aV4_e*}p-OVO{w3h3lPcAzM?BnR^)ir~3dygID$&!nE{cd#< z7Wv=*{fUc*xYkv+`=A5%5 h`13MM8_b{MpzP>h6@sM?`~Y^&Z~ItTxfVJ`nj5+fDalc~p^u!Wh(Rn*dO~q4 zk|S_=q}L1hzfTerwI@Q $n>$cOvZQpZDAJ4fNgzC`1d$J6 W3dlFrzZxS{vuWU+HwO=vrq|;dU z@_&xP3j~ZkU0K8Yml>(9n73d;j8cY}|J4%(0TcEQmSC&k^YCl eG5t_~K`)d#N{z2t*dj6bN2?ijjXnRYiG2Oyij zD=}waZu}LAW$E+5;`yH?Y(voY;bjbvcF1XVs}iJ|4c+kztyDW$EOudi-4V4g>WaPH zJTp&AoRNQ*96Pun9$e~?FAcv7{Wj|zfEd2~?lya>Yb9a-rC1TPdxwBsHA7)gs1ZZt z?JRD2HQ&pvGvEKgb!V_e`~M_1De3$vw}$#5k}29b?7abE1GAEz-Q|h~8Zhx|BK29q zuBp(s-iS$@s)_~KsJqh*osYNGB&1iN5h81F9}Gj^)VU!ArCeja6B}`6mba&I&Lk7* zZ_PXi;XikYknbFlHpu<1qhv0&cTInp|0on`OTnW{@7)7(X%e@xj2@gm;CI@sX=fEL z<;EKGQx!e(tl2lkW=vB%ZGA-htAI|gT;K^Pa;G^iQt6S#i&WooZobxSD;KamLvij^ zUUd$33-%?+TOQL$t7f*it^X0vnPT{*bVqsNC)<*Aq806H9jc+IAB7=^WsO;6PI1w% z*XRIB8^*djYyp_uJ(0Q80e^&Y0+mcofiPVS!~AL(e{Jw@bMRwHX97~jI>brkOH+|J z? +P8+ENh}hPZCQElBZiKPwD{4+3jA%Lio!wqZ0NP-UEKHBo@D ePf8gIBz@J%XG|POG){8^tDKQ@yU@xbnq4Y6bPi`dDB*8)S_<*fE zGeh67?c$bfN8Odr;Fw9TI4*4wQgEte *xM8=w0KZuItU{cJPMD zyKCfk0h{W}XPzTqX mElyvH;YZhN%vN5#!N0!va2O8cH{-^29FG{g`c@J#Hec~s=don z$O?ghVED7q*7H^#6O6US_3_jB65dm~VS2h|C%Y+wpULk6#aSJfan9)IY3R8@>`JLZ z5AK2chea(A+s2Y+x5iCR?yrDsI9gcuj)(9a&xd?YMm&iG9%1$J_7DBVOSQdP^rNGr zp(}^fMBDqaTUV^COUEPHTj9u!wkN^I{)EQ;tFqd!Gk>aJ-s54qkall#9fJd$wM86r z`_+%6_wknQ-+mNn{!8D5xc(h0ZitWLM{HKndt0Z|+c#GC+jnf5cA&e(qdJt>6^vxc zE@K}zn^|d{^OD*WyUGpvII2<5#6`uqUqb;eY%n!?1~*vc|Bx)G(_j9th|8~JLv7ZY zS_96LtuUw%Ryvre{J@P%`xGHR1MxJ53HJ0igIPoqbsX}x^>JH@0Yb+m9U}iFk%uHR zGkeV}oH5DmC@g!~T;yV9gfq-^;yh@GnYKF3L*M5_p%p89sQ>J3VDwZ4`lB)z(}!)H z6(z%-EzfEPc_MvRrV?z4henBv*sg8QiX}I)DK)g{nBCq-pMw#NQ|?b(pkSmA(<^Gu zQ{v#Hu#9`?z{ZGOY%{6(Jwel3@$&u8|I(KUgE}m%%N(-QO@3sve}11 vd zmRSu}Pq}o4JGP6ENXV8^b?JRk`bC-L+98(1w{H15@{L;n(;uoSx}Jc3gv*?o(b%s0 z(2QAJs!`#3g fqHdkLF!*Nb=k*mGib)vvakKH@4c`}V#w;OYpq*qW zyg`P|e-(E~4pq(k;U+qntzN#2NnBKpI`+)hl_TCqj1k+Tt5?!Jgjg?-3LacLFmPw+ zhxv;EI@A+UKMG{Y9=_m0aUS2tCl!5EfwJDpzo1dhL)&NnOv(OL?j7SiVYT>^f{rKA z1X4}9ub%ux-SLOmnNV>B4QkDdH|@#(2sR@8`dr4Ff#r=*nsWeZFZ!`_`y1JfMQLa8 z<6>~n-DJr@H98q&Yr$(yu!?p<6MA1I<4fP{b+zM`#~XFNoIa4bCPzlHAKH84Tu&8x zlSgwb0-S1+Q5ts>^5WcYi8JswHhC$TPwqPQR>Tjv(|am#TVfXL_?m5cq`Dx11En}% zsRydpB}Dy(K9QZsN;xj_G@ck0BvMML4hCfqB>&~dP5TQqy$|*pe+l_nk~(0gW!?1D z+w4?ZTD@2NH4lR0XIR#u65KOpjmxvvLc`+JR97=uBCQ@c?dI0qkIr+Cfx6LX8WIWe z2k61{H&mRdv@IM~q&eZbD@xtR vS z1m@-;LYx W)yudX+ycM^-nde7TyJIe(Y#w2jDJV g;9&l(a7IMPn>F(wB&mm0rTnVzHKtlO;dx5Kw~DFqGA!@Gme zXDcP^ZpeVY1=wJVTJ#8Q!*S~`-*_YbFj<}9-Kq1guBw{v(d3-3_j(18u;JA*Wr_DO z2{>C6kC0aYP?l+PJsP?5IB^-WsU`m5u`)54F^R+2<$*xKw1}IkJBIf)?pc1OzQ&x= z<3xJkBkIs&ZOEkbL8G3J*^I)mi$H!thO_BFmteQQgk-|g7CIG(D1F{Tn+$h7g^(%8 z2?cI*?9{y@SPQqgXYdY3S~eyU-htojPhasvX{ph>%N*skoqlf)LuJpaig)x&5X1ZD z-bkQ=mMG abJVa}1W?yt>x@KmNg({b--}A}-K~vRU#h8a5Z}Z` z#b-=XC~ye)?#!)cHsrNB3hESs`%ESG^=XPWt2;Y;aXM)%Ndz~MKc<#TWZVmimziU_ z1lCV{dz6$3tkU&i_Ynwq|Ccr6kGzSjslL>gd(3U_gL4welEgP*$+`sLxvL&EM?|`3 zoE7@F6(cN qPY<1z4K`PGl7@1Lk;(((+}d2G{m;cdCo7u6a|g7>)e?J(BMAvw7WG488nwi z5ltl;Fivb*J#YEZy}H(LKGy`lc TgAqP5dzyudPI%y6`8TBf9wzg=wZB0n z2&T&NAUEsDD#I9+0aBvjX@><^0m8h44&Bwebb=jy{nubo%P3o>PXC9#=wB~Kj{6hV z{G-HYzE`S%)XikePC^X)n4$(de`I>Tztyz+M^%IaJFNn$@$j9Xw1>UznUN9f$0%Cn z6<+zhuw3&Wsl3XGkUe1wl(cW}@}gu2oOhRKg@z#{Xv!YWenUTKe)0re(EFM8U-ce` z+cmD{_xPzReQbXdbQeQAzq&my7O7Ksx2!h=2oMfEf(_^kLp{HUs$6QB 4Wyyv#5+wmEzbEQZZ)HXm{LVISCo*R$9y81{qKY zSk8_bOws0MbC`9~%l>XI5y=lve0MsL!cyPdx{#;G(8t^$vJ~D>0p+0mORvSCu8WCv z?LRdlpoPQHm(W2m9`Z-O6d{tl*24Voapj>fch8%zKu$lEeg1leuKBsAk)QH`9*ouj z2{EsX>i9_%?I2wYkEC~L2yvJQibv%4*&Zb^le!G@ny7Wggy;nElPQ%q*LyT0etV@p zH9^LOmB)pNi>(Co6iTE<+1c}W*;*yDAa5vY%U-*|m7KpsaOvmB=%L=U4yiOtkCj-x zsNCQ31+R P5 z_!Mm`G4<$)Rb0teygr{6i{2}E`krf5(1xiRJ~YqNc+9ie 3@bqQvaNk&Q`w-+OneVb!A(%?~hsokG{TMSPC4mc`xCqtZ+_R z8+Rp$_9P3*6(cAIXN-qpUPJ{~c7oTNMe1GcbR4QWb>z)xrgpSwS{kDXs@ivzNXP;E z5TZa~-wy?nf4H@3a4Zh}7xKh!rNqpCv2oWIyB gKO=d=(8J_wo$UQO+b&{i#*7PF6YWM 4Rq1Q0U&T_L1i5IzkQ&ze&{kL6xJG25@I@~Y z8TH?J_rHN6X6ha)k |Sl VwP&@HW_IB;F(RRHjqdN!$o@xa@oGi> d }u(d4S1 z?oN}9T&-1H7seDc9p9UdXN$>8-CqX>j~==1Rb4|A$ER~fzzzP*N3r*% fL zNul%j8sh3nnoJ0wIv6oQK6x!|dol)FE;!D(qRZUEh<0-PYF*+6EFIlv;S4&+;SA-k zK+!B=*VtT`Htn$w`@y B>%&k{p5>9;MI_(TZzxIqbxE zdaSP#QGP^5zb48mZvNe$c{Hzq!ZP;jvTa}O0(vw9I}^X;BMA6Ve*VQ`J%cf4xD*WO zhiOA@FL@W3Q#5BGPMq59`$5U9p3#?*l)Fv1Yj!DBAU?9>M{o@bSDnC*qg@#t^6Amd zm!kiSY*ric6upOY``|iqgtTS^D$&1G)BnMl84>1*TJkJT$;3*$nd!x@NwJ>82#lD^ z@cHScV)9tLV_Vtc>gue?0R!WT_%G(|*a+?)&&n&;TVLhx 6N>5%)AKy`jiD90SPhHA!D!RJ_{YrqKdmeAX@qz3l+~v-3dPYD7SOqaN~5Dl z^CK 7-YOuC<(dHyOh4Y&Ak>R;ocGcG)}i8 hOfUQ NDSNEgBlqDj>4V>YP;$5u<$)%&Is zH5UGxQHhXoK>Zh=LW@Hd6SN>7x8y+@&ueRegT!Yb;1dBhezJZKKUu%SWrP3IN@7eh zX36;dqbF_sSL!=)zV+zH&NHavWB28G+AwzS1XG?@c|hIgxhqfQw7aWFqsKIRC$V&? z-U(z{!8Z)C5)a&*^vbFyThOgFv>c%<)MzXA+B&yP4 zO6wA1fdt@r0b)}R z0Z!qkHc2B=bFc2}W?>i@2VZ4CC#HXh$2almpwZCbqsVwe+|RhZ-xt@*=9i>~gZqCx z8{r#5we6$#VXt+dlI_r{5O5#4KN6feU zY4G2npB*=g;XT$`I1x)mVW-I?&tDFMZ}`1al=v0-g*Cm`_}VvHmEN5mAG~?Nn@UAn z{;)hyxNIJ4r9SrHw)NGBV{q9TMV@f{z3Zy$SnS2d5U{62|8;^-{sd8wAYgue+pPLw z^+bm6v&$E;R7L#SZ@G{0ox`+mkmgrQ>0UV}ihc%e+uA#fCYW8lxl_>SA2a_kPd5I= zZ;tT8CQ|Y6gQ{-R+uOff1rwf&Q>cKC%A_LLGto4E@CE7x4*8>4LSU_&%eE&5o|Ry~ zLl4<08rfGOGlK+5D)u{Tg94H6)6l^%E)D1TnD&aemwdsa!|tk=o|>sCxOsh~X28!N z%>qnx`F9^G>9U9=zh%90UriDin8xR<;DB~?z})gyPA8wSm9+F%EM*|qchFN5@`2to z!{OM}{057T63|#|fa7Q9mY6oQodoDPSU@aP{*N@y54;wmq7T*jr@V#L*P0#=!5v1A z!!8?Fi_DtUXVJ zo8D(L>}5WVv;)hyME`{M(QSFe&hJ*$SL!C$_4mb`JGqx)9(6&$hWm(=&;HCiTn@Sl ziQN((HBVbym5{-(ivJ6jBN@N~9WBp5A!P66zj=p3z~}hEv}^X=r1*@0mEA`i)HShD zSrxnf=BvKP$m%whAFRa>o-=el=+y9VTFSdgiNPVaN9ladhhAo(Qp-u$lZ1?K9Pch7 z;+B_WC!4-Sup}a_GYbt%V(pP=eUM)V2i%9#$}5oN1m@fIL!0_NONZd`$u1b?2~97C zpq4Ryv8aeI_+Cv14~oy2T~`(Qq6$j0zK`cLS(G*eRtBxCUAcn~lcE;<{8##wvN?hR zMxj#|;PVZgohQs8{@;@Axd)+l54lksPIWv7WImINwUz;cS7q^#=VC5UK}UbBup?`G z!Sh01gF)0DV6a3$kMr3|KckU6-ce-lkbf5E@Tf4D%O1}aJC4!oI)U$yibPoeyy8eo z=Uoo6T+<6owv;VFA ?SCnjPbuh|XSPzkwjeezaG7bX=1z`0J}DobOl`&1 za*xj#2_7x`z{!g#d7T~D?tsW)llrjqy9lM2KwMBzK_K{He`+$om@S}hE#cm2$6DVQ z3CP_G#@eR=>%B&RK@`RNHHeGtt37+(a{ }bQBLR z=Cb2n2 %%(ZaxZ2s BK=jb~#S{RGNC>g3Pz1KC#~ z%~52!>(9jg4QTScQqz!z?2#;xn_3jo9zBY$cN&|Y!<11&nvn3b>KcHj$ZuGlCE2Ow zRJScd9UZ|rw)}Kx>0~$N)ynDQZ%jwjYziBJsr<&}-R^LnR!^7H<&%Q TBxKu5li&3zsz?tM12}-C`0b z<=9{#f>|qZ?Ucs}iwB#*K70?Q@H$$sxW&YMNvoy J`@ z@WqToWOvsGlFUUwfnFS3Z68j-t^x*_&*y=Ha?_9+GStWN*ODdEHhL6@TiYl(S=5`v zIQTDNwDtZybK&ZUrjp#VQjz(6$aLf$No$je%SO4;n(H9f>%k}` *3{>mJym+1^MPhnV`4;YE8{xn6#={OVHWQCYp&}ta>ow?kO0RcD {uKVc28~nM2ub%-u$d_`+ILA3OXs`zH{GZS1L)QM5R&7JFMwQ6_9*N zQ>~hoBBqS^5Mhu*3_5?8I;*tEP;s*g&(q}Ri9yhUckE#51W)z1)vf;j;p?sAvg)4h zVMGZ*x=T`;i|&$cknS#N=?3ZU?(S}B=?3ZU?(TYzdf(6YiQnh_7p`;m**R<0o;5=b zj+_ulfPN`(`aC(P`<8Dr#vqr;{|jkVy9ghT@zYGASQ$@(?ggA;ZAekwP;32~sntIs zCN2_gt2eVfQ?{-3hhcEaQ!TaGHlA>3>51^H&+T#03h(8Tm`s#ket_v{|5t?l66ClK zs&ax4<*% L<}T}T5miJkKP8VW*-iYl5RQu=gzQ|s2e@YF!C z>W>W>$K_k#VwaZ-;(Pu ^vF zc?FgX@uBTSm~WlW+t`c}dZ{Kz9ghq;DlpeM-h6=P*3|Ggt}5}QW9flh-VpswMs>3} zkV&$t45pUXPx|CsN>n`93fTIaY*$v*C1snl+!ad}$CE;diTBRFli{9Kwxt}a{T2P` z7Y0PCxMMR)jiAc_$ J;N^;Z@7Y_|L=i>^0dP`B0WlNTks~-TXblgzyJ)(cgRy7ra%Ag7NsE zpn{9(Q0vc !8l=aXT1O6rP3il-Y#*Dy=M)c_`k z-Ap);D1(@ZPG0G&X%mrp$P6=JT~&L(#H*=_i93}2+l-WAU)) kdIq~=Wv zsUX_4nQ?2?sY5PV-kN1{V_T(*ruw|WAOe|s`Zxk{gh9#rjNkRglEYPYBzEzk0mlAk zJ|HCf9f0wBkQV~Eh7^_^JvWXAJ0~VW`noJ`%uSWsY}Yzc8YJ-DUv5uZHZhWivCN3o zRQ=M3$97g8!Aq#T8eb;xQ^84Ziv8EmRT*A~&vBQMBiWqStJGz*9?{V;GFES=Op4;v ze%U<^aIUb1;Jdy2Tr3hPkciW@cETDAdM|5^7=)4#8`pyK^{J$<&S`jo1gNZp3S?D8 zn7$FE_ldi@s&(s2z%;Z#05+DNQ} rvU5z@OKVAzk45q+~jgBRhd7r zhyeCe8qk6KZgaVW#pYWk0KWkL4eZa`fL1oX`(zR|-hWdTQMEZM^YV<$ooF?)@@9_n z5dJB{=cc>(K0zu9GYS3)^*dZIGBBkb!VWkt5k2TGVL)6B43La0z=zU97*Te8oKwHO zHn|>)6?%Q(c()bya>eWzUAB_E$ >huYG8w FQt)Lt(!!&6`NwaF}iMA=!3 zwhi-Jx0L`FBGbyRO-&cu9F6)J%q!!1KCzgg=Soqbr dLB zdFec=3o7jy)97=7NVcldyp{{T60;4_kw}4(0zHBXG$L6HZZ^5eI5Z@1n%Iv4XQ;-D zRM_V_J<&!9k4Xal)8te0T1q8?cZ6 !KeUxfP_U$R z%Q$p{t80o)OUuqx&8`ho#HHMWf?w>nbx_enK*SBIh)G2khOO}`X6~?+?zGUf%PeuPrWq()`Bu<50tQ?q=mxjWiD3T%N(92!wj9 zO=kcWzT9ees=mJ)LtFRDW#(0No>5+Ou(AQsaXv3?4t@%FV^5av!(I?!A^;*RZ?1W$ zZg1T8cQhJ!b#a?Zlc1^aK10hh?$groYjK%VUFH1fv;o6CiJ_gY{SlN!0k!-in&hEc zo|RUk&ChzpmO3Mli;t8gnO?m)=u`3(Tviq@|N7a}ZdGit{uW_YRmYl_LXuN@<`I%} zVKDYcR(4>Hia&anI;gn9HbTXqyM3#30qN-%WEB-3^PK8ryma2>Bx-=|#M#wWYKob@ z<;kzlL=sJv#l7x)7y+av71O90j@u^AfmJ`&{VCoADPPZE!$xm>$+Nc^ft+QQi?+bA zqH d179H@E8`-0WN#L>|E-m=Ya<~Rh>DAvd=517Ic>R>QA(V0 zab4`+2)->1|0-F0xxVq_)IcnwU&vwax}%x+PasB$lo?|VOggWeq=$lHTES7cB*MUY z^3giwoMN6fXZ!%90CJ+|*3P}WG@7ia2U=Z}0X)Z+k@*)D&CRyB4DqKFQBGPr0hYu< zyn|A^^%$;Myg- 7+F{ljus2~T|xoxtiuO;z06V9byo?k z32NYozJl}YIre e(@mwfmI5gF~;TvH2) zA*zI9Knb<@skofotwKRRTD+P;p+KYjQHX-8MWt$Jo=vT&XM$O^(OC1E5cp+4ZHND3 zoO2ID5T$^7@3F_1Sn*h&mpxb6T3&7ErKGk|NZV#DH?8xr4EioAKUdVh9K>&c;!wyo zUd!k33(^m(*jpf&L@%Yf;||rLN}BKu&Js^9+zSBE%U`_={^k%EhC}|NsJRnhN&i^k z%%QNDGAi&p_(1c21s{BQD;`SlzjQ2qx?^pUj6&8pZmuh$^-#=zBs5YQoPrx|5;Yy{ zG8EGu{|H-nCKMfxCl7gG+3j$R8}C?#AwLD+mrGvzl9u`h{wj-1l*NBPZ^k4qC!&U* z{xP~W@QJWO-OA?>L1PGCb-~Ce_$3k=$F6 2cs_LI{uDLLcj3d5RRiU z4To$rDyT``=P>wPv>F9$d@|I6Y2}%Aa|WZ$JY5z{53R5mcy@6WTwC_L$6&*2F$H^~ zwC6l3<)Db`B9LELlxbNVFjXL^2EJX2PtJL|o&;#LIClF{#(jZD{gZJ8npjA)y50(; zQr_22H`IUGJYa^tAAfG(VR7h(L`oNoSI-_3{}g9sVIG Qf>9?bf_RaegrJi2bPb<-!!3aHU%G zf0w#I&c5i@br_Syc33SfP05>O=Az2zR(B+D=U0LksG+Gm=A8tTY~o>4a$nBH0Jp+C zn3%ZDUEDN#HXZLXfGuHd5i&fc_j?X-%t;D@{EZ?{3gKol2GObHzFmZfMyc2EY4L-{ zr<>Han~$t|!;$WZYbhBWP)|Q&PpN3QQwuEEck_iV%O(MC!+HUhWrH%F7=kKdj(e1V zr!`F4wL{9IVZq~k)I*T;ESdngHL8&hoUz@Mv#vp)Gc`+KoDTx!N^s?dk((A3PoKR- zDAUynfh&8r @Dg&OER0Jfv4E++PC!_u%3 E!G&QI z(wDZwaZ@B!l!);m`E*%zHD&A0TyP-?OQQ PFw<`ciC zfsY-F?q9_V(^D&->~bsGDHcsxF!XXT?x8v_i)cef{}WC_N99|6W|qM2_ZxTMBqYiy zsT9FyOg*#_<~@+(A1-4cTWd<2Xz=jKafW3xtZ1n}3`y4Txv@A2Xl_1l)Sg-Eqd&rY zBtpz34I1vLqg`_5FhynnG~13_+HmUZxp47KhGsW~k ({S#G`~Pv+&fD;b zp-sPfZXMIWmr2Ucv0jeLV?U8w;Ve_&NEWu;-wVlnjI%tt^sgY&|4WHBLW%iWMm;o~ zwDRfgMTi~nzo5HVMXKo=)vyG%Oa54aWW87+z$008xKmYy%-|4tf~ZHTAxVZS*A{}z zINzHpdo^V-@ LQF`u zEy;PQr9|~Gius*~qs&w~r}|uoC{HkOagEd{*x#H^FTYR;dtS({lD5;u+Iin)goW4` z9QW^dc}wV_A>3xZc}53E!c_O~v$R+1Ou$&AzH%Bw+(uvX2YA{W9m+xKVMeTIAtJ9x zl5`dM*pIq;$6*Yh^*?}-e0(~TCD6hcJ?@oW#e)L_U{|+G?_D}fKh5;^SD4&=YttoB z{@!gE{()`vHU)O>b+*&IY;R&|Vv05(B=o>s!f>_w>1nx`iIVrf+*g3K9VFo&0|Yv* zJLm<*5Xw }JIEdB~_@2DN;#f#&P3wmIT)B#6ed+DTf_HGF~!%(Z*%T4~r?5aKl* zkyElLY(6!glXAnWne|dMXs=XWdix-|jDlH|gu>x0$03Ep4^>3A#Wa&CnHzt8dCJUb zf{TD3Gx8zF(%qm((&bMp;$B^HBGzu <@kqFrn@eHdZO;0fUIhV z(GAuzreNMa>{Q0`{?SzBcW3`CPAz5uKQZ0SsY$%X@LVT#lK(hZh-+yCIgfkM!1Goe zHL^2=v28tiEuzQ?CVAzGyp$?E0+(j#;dS}yV%EX1ekm=<^Oxn^MJ;Rn-}(LyU}hU( zEt9r7YTtoE!q !3y{AjlD!3`9ZY%=+t2Il}Bbu})0-Ih*94 zJ9NFV+vxQ4_|rS&obfgY!Q6^tPdfTzbrlV_^RI>MRwEr})`@^?KY!cy^FUl@#|d5w zJ_OFFjyLaxN()x}ypTC*84^iWYjOGBu+(7nC~h XZSGzgw T^aWEs~sRh^ZTo#t} LdJR1>ERDb-TjdBx$iJV}{!%V-M z(&|`EVo+nZxqy22b!FjheW7$5&)cJoGrXvqU6rx`!L2F}AI$p{PFP)u72NB5E=~F6 zJ}4w05Ho#Uhe)R#Sp~}?;bhnrywY9o>;K42AnHmCzHwlQFkw35!7OMi)1v17E85H6 zzN`PBW|LjvVIc)_*xEd&d%!R}AZ41F$Fbma;%aGFzhRu`%+zpaej8cO^27gT(GQ{8 z3F&*+!zR)bD-j;x1X33doVhrgYoF})Dj&10PO{S^Wu`u!;GDbcuF?*>SY0a(I;lKP z 5(1n0CK3u@ML3h8$jROi4GR zy2yDk$jZz6xaJl|4Kls=F3v(To%Jq=bvXyyUgYws>X_`RcwV7mhTO$F?VQLdce8Pd zU-3AIRo$S7f#8o-*AW4(=Gbu+s@gkVR#C*x-{--^6+L7-?wep(w8)Z=$1*otWL2)c z5{TtV%;rOnp!Uqkq5%Q(yxVDDhr%A>)uQo40|THR<65gFM5n~&`%qzlK)w?1Ut6X$ ztod}SrT@u9a|2CZ%Xg%`VMQ?ksascziDJnNO)G2Ed}e28o%scG*>vyUfeuj(vubKz zQsKCBupE?+(mzd6b6+a&br|?R;nJ2<8IzcsXTl~3#B;Wui!p%8_*;IncZd4^k&lN! zbV>OrWbea4m|9oXrlZzqIS=6=pTVelja5Z`>;ZF=Mqg5Z1iojHSnnvSm_IjDVpFd& znG3=?T$d=y<|#!I)T&el<64b|FHv63u9(h)IK&Mrjy7lYg%LqQ69p-LTLXuOWJrec zeVE~DvpRRVn}syrWq-=gi_e5B8Kv8oBqn!#oiQl7L#tU>A|ET-&ZZ7W3i_UF(jjAz z4l%9pSMnr}$s+VZ3M9d0Exqs{%;|Q%ed&3D Y(Q#p5q2+F72U%=2&PpWi#b zHWHP3Vv7Xce%Le @uES|+{TQ(-Y;*ixLH>^R2@pMStM9$ zR^30tT7jnZo^^OxYko_-4+8G0&G1)m)QjE bX z50apXjKQeIFzPebBOKp0jed!~h3b@u;;rDCr6TyuXlL8}t#aB_>U8Lpfrk@0W0$H` zH^bX*)L*VrcN s!g-tcwl3Ppr-(#_+1Kxx>(FFoZ(5+aiecN{ zOVWCl5e+{)5u Y%&sQxN+w9j|RY#LAf1r{xjoyAXx8QTO>GXYM{S z6(f0(@v>GTAag-q-l=8hPuD{?;QYxOevX3w< kLEQA-Xnqi%^; zhP^|=LXJh({cW^D0_*5MF%yTtb~)&w#cTlqz9A@N5|>l#d9S>#w-2$sFQ>3C2uTn1 zU50O~g$#)U%|YHxe5fs}G^fFiQ-zIRkw=zENa+WH8 eyGck$&%-OD(PpilJsulw z)CzXSlae(VcgK^884GqghIuaC9w3RNP(+h&qGhH_ >JZXyBD9^3M@^KW(kO{8F-NnsK _x5aK1ER zw3Z>3yWu@^^$)f4=|viw@$nFfy~(45W6ze{- = zhLU=kz`Dn8d#nbew@2n%1OsWw<9w*8sp-tYsFce0;rcvIp{p=vNDU!@dpeUuYW(cD zz$%ENh4w_IE^$8vY+g{pCv;nP^wI);#zjEIXsB$uZo5EpYr8ZyHoE2#$H`HfXEXz+ zz488yjP;gXQRCspQXfLf3qrczkihofFDfB4L$VzuCHHP`3k@@(Q9opiZ!6{S-O^#M zgieq$<_B!Nx96Mwr^_2lN$^zm{`l;po@dVrD1~S0_SctvmshPJNQ*MZZn$m8Pahk! z7VI8joi)FnjL&ul$#29Kox)F>*KQjZ6?{;%e1kv$XA>UqTaDfASHtw<^}G^gBMbJ- zM<83lP&k>KVu<^7TRI?`y=%Rz^v?sl|9JpNpqt>d2maJASfttwk<^51e2O=Ak(OMG z|LM$kTHc?s;X8gLBzvF0Z!Po&xJjf0m)#o=73i3$F}L$5p#W{}WCzv#b%W33g*LEk z?@S_Xf&T-cMxaQ@#_m54-M#tq$0!2m7!zDPVjpIOtc6x03LAXeIJ20p0+9f^tR|O> zn~*re)7G8O%*tS3nV+$@kP-f<{GoFBM$dl
By9d jI5an<~BkH38j0n(!r!_7( zBHiK%(a=f@DsmPBKvN-@_$4)7-&$!=p!oVCB0v)pLDQFi;9;H-WR;?XU9E&f%D_3a zl5zOp-gL{WdFZNo5m&4X9i!66g>z~-Q@n3edR{NTG~qS&xzP&NlUYkNQr2UAxp$GG zfO !UPikQTxhNFAX0!MZK8%KYeThKI12X a{lwO} z$7d5n;!)@LRQK0ytpxvjIYH3{kD=FdOh>d7Ft7liA}#3r*Y9)O<69c!B-4G*!B0)~ ziPGpNb7uedh@{Gf>XU|gv3gbf*js^hZE+kJx4U+S`^&rCi1{h43+!olmoA{@mL_)j z4$N*gJx9HD0nr%$`53@t%b%Y{^C#D?GC>&$uRx9RV=P)Y1iW+lg88ksAMqoc9Apb5#;7fUb zNcm(Tl8VkG%!g76=JL70SSP}pL<;a9*rm?wychEkRo-h~xU^DseMvld_Hp~}swJ74 z6-Lx}y)u&$GoLk^T-^|(y!!O$WSv4tqh5Am$NcKCkX~cU{mqwY&)nqIeR#f5YPuxW zUh2ACn;b;Q3TYvBtW7rfI3gaRw!A$5bSoC%e*5gP;Dw qGKp+WBk>X?hqf!IE|Z+S zfjl|U&*$@fukPYnuc>wbFBeM^E!IP{f$(mkElW$LF*RLE&xK{#jX{6bKkLM`{@R>` z@nFWgvbu(<-Ta}=97LO5G}M_r`T^`tm+#N6!o_wn5SR5WDC&Cis(}dohV314EM(N@ ztkIJG@d8)}{4@dVEe#dyTr%ONPDU6b>|8-}kwnWM4zR9El2cnb~#P)kh^6Z9x< zH1}Vav~F`7?(`HLyi$`Hueat#RYfjH3>G1lS#vwKn9{_ID^(8j(<^vQ=hMjEfPMda zepr7MjX@j6wg0-75q=-_1`JAqXo5goT)H7veI$vf_w(!T14j%ywr*+hB9(!$4a0~N zS|WpOdh>LQVmgxS!-!vrwuBE`5WlJ=Gn~SLRhYvQ&w3^7I|Xbv`JC)gj%YbKzh-m- zvo*s|92a#o0tSit~68pfBn&H6+m zNU*1`z(E`o0D{jBw0BK G{|AJzErGrzmKtPxoD8VekeB=r#GV1v56 zAwyIm5n&%H8cdH(l>$g |XoEME|)T>^nY8f=OhV2WZhQ{f}J=so+2G>U-JcKHyd#)15oG zVc4APKvu@yI*?c|#w-6;$5qwfQ)!^w?3lMS=oaL}{E|HkCfH$*Ejcn=0U|GdU%e=a zT-_2bS`&`PI${5+}RZw z4W+V(&7xbf^EbMZMm;}KDcYIwQz`~tkIW{pYGqW>ODk9N1&^w(E-0k=JG(OgsR`mC z=MQ$PrFQWVI0-*C-4)Lvl-_qJH6&nVz@v-$U^)(=xN?q963`2z3MIV>^j`d9u7Oz# z5&SH+AC3Y`wX*HnN44eZi0Oke?|<5IUIx;jUe@%Y<9PCvE_w9oYd*eSwt`n^0Rlx~ z0!-*^o;B+CpEh;L0Aq`4I5t_fi!yTJN~`=dBte_6;fyRvP}scvct86^-2*T~HRKds z^mdn3# +SFW R(dO0^*YIX>;1lfvSF zYyJ&(Ks1ce?!#aq)>)}26rHI{|E5lSh}p;NNq>j8)B0-~+G}BUKZ)ZH-q9m4yXO)H zB(m3@7n;xwCUn*_T*_3Kb8%|NnN1v&ZIfZlBox5Jv~3TKP`JOCy*BPh*3h?BmRag9 za+~V9!AjEScaRUo{2CL=>nQ6;dS5eAYG=m^dNKUAbW;Zm=Mawbwc${M%ix;^RBtu_ znc@CHW`VHACUk)`*Hu!xaDSG1CZfsNGdoTr1CkNG_CmTz{@7Eu?YO4t;?a#yo8&`L z%O+X7aUkvoI9;NypPdgSK@T0fhgPHWBvak}m&B5Ctd}9Xu|DabT1V}4Q |-0u9mpj(d;_L&IvU6TZk8z;}=Kzg;eo}>@z&IQSXt*pt}ZWBXsD1-RE zC-;jJo#8AFal(3Z@f78QKaeH*{~%e^3-NJ%4h}d P$K}-mvo;MFX=??GIjFRwmi_1k8FMUXjFjS6A=;VIDgnjGg@=8S~+=m#& z7nbm$zWk!>0Z9u3=c-Q!=T9q{3jvSzpqr!(vpCqT9i1TEy7F*;+!>QH3yOfN-OW2) z!tFFCgUQPFD1ICnBb)KWTfDP3zic=Uu)J9m`l2?b=^|F&@T6Us=fb69Fxq&i8M-ZY zwF}d1g($X=5#Ej~-wPCy2*m$`sR2Cr{l{OR{e^#0C(#MMH0bRul*rN6wlk`xxK1cT ztemsSKtuIOnn^a)mQD(<3${VYB2Ii7QAS0`^Adr?#N!|r;c-nXz3wg~afRf8qP73D z>g0({gm$9(vJ+zx#t$Lid3YS(q`u`8GaBw5aUa4FonH~HA?c71MOa&UbHW)`tz4TV z_$6rCjpfmeTtTlI+A==Yf9&vo+`GRPI}`B71XZ*8p=Lx=^CjbC6XuX)20|Xtg{iOP zWt)0) BI@UN3Mx>!@qWlDD9mxXH}+tvfB`3%?tD-i z3hkDj^hFyV(aUj@72OtkTLnq03IHtawlqVKR(`}l4*0!aVig6ce7J?1IP^Ww6I4y2 z44Et??L8vQFSuQ~Y{&Wq)y5#q2^6q(Z}fg}-NXkOLZlnvY6c}k`fN1I#a3~>2l~@2 z$F%a>fc8^Dz>vC_BAh!*bS6wo0u>_$fYeyb >IAymI+kzn*DK$;Y^PfHlEAvfjgP~LK^l9hY8}i}TR^<&>@x_ux7S9Gl zu-ZgGQIKu1vt6QzOwT=sesTt~O9A1ipaybAFj-)AX=FEx+C2hx@$Oq9B=PK+ValjE z;keVB*x4_LPiolRB>weD_uCn*FUK^meL0)~<4H6PO0)494iLSLgruY)#XXWsM1fmz3GqB*5nHlvJ#-e@TvJk5`wxYPM`fgy(cp)NomrGwSupUW0+bSU z{w!Abj9&;i=MuW=Nh-qI=bY(|hZ!wAua7+ dyBgb<3e50o@$~v7~}?PdhVfX7CjhD%jlr7@fZx z5% DK2Z|Yl!dM_ |ee(f~9&kGv1s$XIZh*wyXaAsC zrrZG-qd*R(Gnu}pew_*ev7yj0$F?IXfn0Dzz^B?pUKYw;1WJu`0hN;hZ-3*LC~}}Y z>N?@Ux1YQi0Q|+r0{d3^U*EHqDUc|+xrd2WD&~g+1y3Lr^_W 1!ToCe{y$D1n~aZWVlfkk4J?%fM2|nU;@Ou(3yv|T zIloU$A%YF~zJg5$F}LVE53{VZ7$=fSrk{qL^?aw^MySG+pP=QYT;a8A5Q|O`Wli}P zH5^uqDv0ULO(h-n@l+i=-YXAIH>t?K=_Hw #>g4%_< ?Fz=*aY!gQI;|l2MU1x;6jY} z-!tM7X}Q+36Y%(Ks3b3K_$ot{0^9dNo3qKVOOn$Sl(Y6?_3Wd%`VjP^M}wEhk43&@ zY>Gvu%)BoOa+`*gwN-wa6Rnbb0MA16Hl%i|9p-|VY(U=NKp}~v*~#OpBQ`3`q})IP zG}g(@DA_iaAfKjJ_UttKtd4adYH#V$z{%)i-hPxnQ^>Dy_JXVN&s|Z}vUG5R)Y~D) zb*zxZ>fqN&(Z1FBJEH|sjY3#3X&h#mdHQX_R4A1+WQ2ZBV)Kg&_7w_YV>vLW4@OC# zqM}o$nP}~7r9I{*-6vbcB16HBvn#Lia*^wu&JTWkW*pP=_dobY$k$N2S$N|h)x)uZ z@}`Xn7Z236>~~YTRzLdRw;tJ%fY={jhFU?{7g%fW{x3!Hd0xguNz9`jyX)OQM|E@M zpM6IG9mBM;pv7gBlVNHap#`Mg0gqi^Z?1E$_Z=mJt_f{f@YtF`ia;CnO6qAa%V<$= zYZ$Y FkEbWav z`PzP4LDs S?rdZkA&$op(vUZ=6=L!3hJ{r! zLNdw=rrOOmb=}QVWJ}GX^q?67