From 9a2954622536a55391f01ba5b367d1ff12604b39 Mon Sep 17 00:00:00 2001
From: zhongzb <972627721@qq.com>
Date: Sat, 1 Jul 2023 18:15:21 +0800
Subject: [PATCH] =?UTF-8?q?feat:=E6=9B=B4=E6=96=B0readme?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 46 +++++++++++++++++++++++++++++++++++++---
docs/image/复杂图片.jpg | Bin 0 -> 683847 bytes
docs/image/文档1.jpg | Bin 0 -> 45495 bytes
docs/image/文档2.jpg | Bin 0 -> 66409 bytes
docs/image/群聊截图.jpg | Bin 0 -> 319316 bytes
docs/image/设计模式.jpg | Bin 0 -> 22040 bytes
docs/image/项目大纲.jpg | Bin 0 -> 84505 bytes
7 files changed, 43 insertions(+), 3 deletions(-)
create mode 100644 docs/image/复杂图片.jpg
create mode 100644 docs/image/文档1.jpg
create mode 100644 docs/image/文档2.jpg
create mode 100644 docs/image/群聊截图.jpg
create mode 100644 docs/image/设计模式.jpg
create mode 100644 docs/image/项目大纲.jpg
diff --git a/README.md b/README.md
index 6bca532..aa4d81a 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,11 @@ MallChat的后端项目,是一个既能购物又能即时聊天的电商系统
## 项目介绍
-抹茶聊天是一个IM项目,通过netty实现和前端的websocket连接。内含微信扫描登录,成员列表,上下线动画,消息列表,消息互动,还有很多实用的小轮子列如aop日志,分布式锁注解,频控注解,ip解析归属地等,持续更新中。。。
+抹茶聊天是一个IM项目,通过netty实现和前端的websocket连接。内含微信扫描登录,成员列表,消息列表,消息互动,丰富的消息类型,还有很多实用的小轮子列如aop日志,分布式锁注解,频控注解,ip解析归属地等,持续更新中。。。
+
+
+
+
### 项目演示
@@ -31,7 +35,9 @@ MallChat的后端项目,是一个既能购物又能即时聊天的电商系统
- 前端项目地址:[https://github.com/Evansy/MallChatWeb](https://github.com/Evansy/MallChatWeb)
- 项目演示地址:[https://mallchat.cn](https://mallchat.cn) (记住抹茶.cn,下次工作摸鱼可直接打开)
-
+
+
+
### 技术选型
@@ -52,6 +58,7 @@ MallChat的后端项目,是一个既能购物又能即时聊天的电商系统
| Hutool | Java工具类库 | https://github.com/looly/hutool |
| Swagger-UI | API文档生成工具 | https://github.com/swagger-api/swagger-ui |
| Hibernate-validator | 接口校验框架 | [hibernate.org/validator/](hibernate.org/validator/) |
+| minio | 自建对象存储 | https://github.com/minio/minio |
#### 前端技术
@@ -67,7 +74,9 @@ MallChat的后端项目,是一个既能购物又能即时聊天的电商系统
更多有趣功能在持续更新中。。。
-
+
+
+
## star 趋势图
@@ -78,6 +87,37 @@ MallChat的后端项目,是一个既能购物又能即时聊天的电商系统
+
| 用户 | +贡献模块 | +
|---|---|
| 前端 图片,语音,文件类型消息 | +|
| 前端 撤回消息 | +|
| 前端 消息点赞 | +|
| DFA敏感词检测 | +|
| OpenAI聊天机器人 | +|
| ac自动机敏感词检测 | +
sjWgTBC#^^vBUT92U*&N9FGSs8TMWA}!>-PI90J!z)$cZL5Wkry9d zbsV0e-QEv~Bd9>QzCyoqVpxBU5n`ebM88c9qZ|m1#mAO#@@8bKLdol;iZ4^a&z4it zeN{t~$j-!}gFpBYFajyjD~ (bKVcDVOb2~V4d0mX`15}^N!p2sd-UdZIQv9+CE39e$6?d zWYD{kCMYu%kdpNN3&53Dwy>ba8f+q=O;7NLIp0)SIKPR2vX^RWkF2Q4{@n0ijpN^- zea0V$N5kNd{gngj4b~l?{}&8LDC;r&<(=m?D@jR6VJzEAiQpTe!%f>uv?nW e>L3bKWivoTsKSO=Da=K8k6tLWINI(kxG zJ}*(tlPjAW!pD5jBTFqd_wPIeJIqlGyzEGLV2pdCOZxgN?cpcTw8h1>-tl_GYZe=G z6C ArPg4r6j{o|JMtMOX|vxdM$ej9-{7d?$gIeG1FvXgeh(QNc%=4X23C#NA5;iqQ z+l%;s$5c`XXjF=&d8$WCH>LO6 R>19bHz*~8^> zu<}5?M>4B&^-bg_ou1@PjBB;o0>q!4P5IjYmj5ptRV2|Yl0r8(HN~Pbf}{v@Ahwye z_ttoBPY?;<##co4sjTDs`G`ND^>3P9s(H(0^{wv{1YAD*(=v#M1AM~Xy7kX&5P0j^ zq$=rmwl-s#B^7dbS<$Q1h+9+)e|yc4>4M Ef+@l6(%S@PeV=>9I(P!9R4=tL$*|K2v48y%N-BT*zH}>q7Is $?wspEyO-y2N(6Ja-%0Q#=c zBi-Ipzh|$fhv%p6fjW`L1I5;h!*r`%oRh~emg41@+<$Bn`r}|AO-)o(t Yt_&13v!wHSy(2^FtPy`gnMxLZPMlo{x_R({raLE~EDEi}Q%NW2ohu zAj)c!MMD1OJI?uaI=;H^YX~E>jO8=BEI;1m{;RD}K~R5a^VZUNukhUK!2cEi*LjT} zM52w37g&DtT#w-UT@kFHqn%IB53Cy!3sZZ#6NyB0Y}ULv@(V%+iicD9grPZguQ)L3 zW6X_~(wd0^5jaLT;QFx4bRMPWVd5}7!sRHfnZDk8TdqFmc}0_ 9 i-q^okQAGdB?NHM51Oz5Qz zsl|Q$@{{G|lc=)GF5q9vOl|b7JrytG!S%W@m1@rH-t=7;rtcq!-_S)}+L2@*6}b2@ z0lZ68gsAxh>Uh-l5vnw919QjF^E0cgR!qGT$Kt#f{Il?bSRsoa6s|^O$3pbT2u~uA z9Sih2V&|m7FQRK!ydjxxX$kL-PsO_XZuzblvLnmCIH; tJTcbPAFR277gzu%CzcZ*)-|?oT zvr@4nX7$sJmJJtrSkXg^t5ZdCe?soWJc(pea&^|&nPQ?3#qQFntMp;p76Wmq$9fzg zfMri!KSMeiH TF9c@}RldSy9MnoFIEpg5v_)aDCI!7e z6G;^nT(J-kit_UNeir{wW8ab*lKDu-l$6toR)7aq!6lMSYeCW?CC%d(__<*r-kOPk zEtHu`yaTE}NW4^4jXT^M*y-hMceP !CU9LL^SKqAMruB5S@{>0^4Qc>3-7SSSyJ(5i0z+3%UG<9^kz z7}W7}Wp4@5dB_Ah_pg1+E?)TpPuXfed5*#c(DoJtL05pav#YL5cXfFny-*!!CQBsJ z+8&tQ%GnKr4{xT<>)?I@ll~n_GkH)RJ5Rt`8nLgtEuKB8{!j@LQX^~YcLt>78ZU7o zRCC;_qK0sJRI3@7HfM=0dfANPFg5c+L?f#R)+cdfj3%`pv6X+rpC5w^!n^#(0eim^ zMEcr0Z$g>bclmU`Q_lXVjtS>N&`W7YsO5|HF#T= FP9<0|X#0>R z#Q32--&J&Mbv)nuA)_d&CtD(@ -?HMzbaa(fhF45#AhXX< zEPc+#SHY$ZLBc-Ti>|8@t}h6td~-kXEop3}_!U^yY*HzHAfP|Y$}qpCJTxg>H?087 zs@Tw8;fQ6;U%WWAJ_wmD6XaPLS@iMI?lv1I(dh$q_=WjBZs0s!dD%l1 zPuqH8+MyWh?vIFjF%Ywp04;AgjctGKMqY2O4I1&fUu-Ck!c(-}0r!y*FHC~2UD_Da zG!#W87>mx0_+#^^zr!+-x99j`6 zWXHWZ{$NustwhKXBgv#iKpB^`d+H8xc)I$m%7t=bD9S=n5v-N~7hySM)66#x-v7EK zd0_glsKj1lP0cWf{0S=r9IAds3Bj|t_R_TDXNHh32zdILBqj KjfPeZR2Ai@s0RaY9Q?38y$X$fOUcdu #ntR7?}r?Caf~d_ z>N{+oD_<^XZ|AAR!b$IXegK``E`ogh?K@Xh-en2{l}?sdTXxEK72^j}(5^TbL_d~Y z!IT4p%50&tmC;x;mZ{U?#xm_@>oK{ ;HdXU8+A9b-K65bv$OjAXUP4P+$Hi13J0NL zt3NrLM1KMT0`|dXa8MU7F_ZkcOKkx!UjTt=>R*FCCB4p^)cE~UCKFdvj4>4#dSI%C z&S(zUN!{ge%>V|layLaCsCNb0DU!{*h;(L&R0n8`+imS9*}0ZknL;}SU2U}cqRWW1 zRyuwThZo7w59j85jKagT-I3(MEdHICE~)P1u7bp)Xup*&+jG3WHn7GNvB)~{)lU0E zQ&E)(W$({SEJb|@tW-M39W(0qviPjn&z?zkTKa^RsnQ?71u9wbqN48j2U&JIx9&er zHsuNmDT?g4P23k%@JXdy>@aql5O(rSV&fCKve47{+N^oFf|{YJ3E?s66=1ishF>mh z|7i>8#f$ZmKxB&`4Al`J%1-$*CQLTMfToeHs{88D0a+)==SDr#c0q!;vx_ToucG}A z261$~y&p^{iIHe05YtZH@^|f!%26$h>8aek>HhtRv1CRImt9h@yCy+A{)VWVEgR9E zqB*D-F^ec|>^4)VwbF}^$dkUQ+WdV5iNVmk0{R8q403Zmmie&JZ>KL(6XqXX1h<0Z zSAX=+KS|VGYKS{sSr`z|s0VH@$msJ5{(>W T93}<6P580JXU+lV05 suj;)jOaA5A`?n*Bx=09UoKO--e0 zAt9<6P45Y?N2O{ib0|Olq;=CMMH>Lvn?<(N5j-iV@AM;1s)&RkM8zMJvE;j0m22yn znt5=axKP10{N9|oBF0Rfs97N{8y)`m9wL5s-&1zGV}q`FMZ2xcy )seX72esH`p3-gW7A3+Qw^km%lH`_eNS&Bf{QQbNDIIUeAJv>;R) zYHN+F{F7AHNa7RU(D_aQ^&w?!=EWw!6HdBO^2{k?6VuCu!TWb|3X1t38GoQ*@>~e& z(p@-G%#XwplX*FLpA2HS(#*`h#3QmkW-6; $go9?hli;jL-i#%*9hK7yIcvna!#%o9@IW~ct6?4#*JUm0J%duma2m6BX z8N{nsY>{14zPHqoL)7~}Q2(fg+h<&aaL`!N$0x5i_*&}XWqTe=Gjs|N)%At=e+8?p z3AbryV(lZrXTe Mz5{ z7DPDOCS@S09q~%!UBz)xZjB|D3Tj*!$~7f*Z+h>(Ar^Lz)SPq-CP2m&i|_Z#H(s~a zz6C5;|C;^JvH6iEbUhDD7F$6ujcEB>?q;tlTJH+LcV0fahF{;4rpg#P2>yQGP_TN- zSq-EqI?a7!RXZmVo)b15DnF={y-uX5B*qvu28A3}oS{Z;g8ZIpmS7DXk0kKks>3f& zF-`fvQC6B^M`ztbQRsT|+R-0p*SF4gU=7o2&Fa+e^mX~Vd(iXU>GP8V%EJ?^qp;el z04yv~wp@AAv-W4!t^IcF)L}bcW45SFBE9KE0So3nbKe9{N9_>9CZe<{dwXpo0QTMWn9|at2k|zJL zXDSWL&o5_17e0Jtr}|kk`zB))4aKRNnuq`A(!&R{ T>*%kni?F6PHxkHa7xY!;Z!s>K8S~F{!$!ui|O$Y9T4-0VNJ|A&A znE(Z>Tg##kd4(!@Dk-U=c4maPO#~(fYYZF|sTn(O!m$B#Z_y_oe>xX*_5>NT&{VIM z4#DauK%nr^&yoSeOb(T-eZ!+@*y0p6OpFe0l>@U9D3vLOW;OwJiEUuF^Tz)Yf%d>8 zAtiqAnf+ZF-*9acFGPy(BbEZzjKv 64Ii_gZ^?$KH8zRAMSMMW zbG&3480sU#YxwN)mb`4+Llw9;4tRP9sUX}qz*g`PuW9!AX3?#8)cW{o)_)>ochd#t zMT>=1Q Q$8MFIKRs*-VlBfKqb>GRQ;XD6~mO&;zjr+Nfig%u}zE%RB&@gwJinOa>vWn`kmx;jizvg@*}7>Lg4UEW}K{X zf(YDTl}GvIX9AX}lQRARijkaL*zb?@DIZugjC~$CMV9e`<}^p*zZ|8AV1{61Z*1jT zr?p?#+5ho7O1QolvA4MP_@<4+mM~1zanslF=RTXi?ELy-zfmqu1r>5Aa5&y6W8|1m zc&1t96v&_Xliej2Yw6q4AS5ttStOExV|mu+@u=fT2Kd u6c(dWnljU_$TRf07$m}6>10loRI^v{XZkj> zTqPiR*o|G=<15O!x2jrJaDmQx=2SvwBvuB2-rhFeSkg(0h%PEi`^|;k^4s&;f2Y C#0?oCziqoO~hW z{Z5|R1yj@fK|v=fT9Yb0b5vu*`txJEBqNPY)<4~@?M?TN2`<5Aj@5 r(8=ZhK_5C_Mfu`wfKsdtOz z3UZgu)azqOCSHKIK4r8Q95g(gNv!5T!DB{;>bh>@0F>*wB+WF!Z9~)GvU~!w<~?q8 z_5T%f!qOFAF^kF{&IrvZC0B(thr5iHX!bs07lirEp#6%}_9HG}n$vfqk%Zy5!`d)s zM9cl|3jO+L84zn4$x4nG0c-tZ96P^z=wFIDz6tL2EA=4JW7J(JY=S7f6s>YQ(Yake z%#Wuhz}M`Gqmq@99_eT+|K-5WpkC^30c#J*sch7(InA9|dXDd&rugYD0CciNldfj{ zxHR>{#-8V)lxD-o_Ahs9UEh%N{BBik-A|X*{9`hkjfG}DVv>vj!(~bZo3sJz0Ys0z zQP1+zqrH&%254r9&h5r*AlyU}i+Vo~AM>JcVb>r#ROQ%@b1FnL?p~p$dz>7@sgG7K z+}$^Rsymt(Si)Ox`m)5!N^4SYAbgEFoC6T{_CmGrwM--mIUkjBS!G=8I|U=-4?$H% zl%7pL4^Bn(zt9Q`XZse%7smci;*m9!%-a?F9qIe-qF>pEsb?#Sr_xJVvgrH4#g+lZ z43%USt@_}Z$WLizF4a~JHFmd)_r)$2T&CK;e2}77>p+rKP7b-v9dM@nJXH$5VEs!A z&4C;lY0LYRG~2Fk=}fa{wm2mI*lBH{RY9XGYcy%TTbicXYKM{LzY$)$1vkt-4R7zM zdB_%N<`5rQ+)u{%%DArWEYD9%BB&=E^7=h&m$8OV!E(oMOXuwBVx}<2_#D?gcY!`< zJ=uSbo*&o!pt0nnyPkx$*s>*@_sHj*Q-6V42uA6TuawomQ)I8} )?*s{VCo7P3ya5ced~`v?Fcc zN_uI}#R`#!G)P(c>yeQ07JG__-}~3EUw` }d(R0<%Y~E_luHBKlv8)t z9%B&Ijkh^wUrsA-ulb13wXQr$*QS0BzP-`eW>81$T}p}D-3yM%r_17hd2Lp!X2w=Q zAK0#STbjy~8tYGe&1i3S^x(-=>13lPz(S@w2Iq*otH5;ky_Jt5KDKzLdh27Uv5BL_ z8B#!({5vw>s?CX1OthhiEm _W z;ME;UsoDe+3f}&?hBUN~gvIY^wYj3!=y=T>xPHo+60UKGsy>}m=Wf!j0R<}4_e3hw z7tl_l(G65^nidmLWjL9W1u0L;EM706HUyAnu11_LS5%Yj5(^Kmk3ZzRbrH!ufxfk* z%{Hy2^T&Gr#p`lQ15Z7}DT@;OjFLsk-?{?1T}iOD=PsWkYa;NUqlCZsmCunR-Ta9~ z9qul%_0{_=%RCoFj}MseIa6t=+5DjEb)?PqK7=WQOdk~O;gWE(P+9cJ|3s~danz}> zjWK-jR!Ppe=HuiUnKZ{dMb||M<>G# gTN5F@`3e%52hjW|Q)8~qH!3}a|ze>`^MsybI3eutX z+)gITRtl$tQ;+*gUAuwz9*})$#QNjkKtqPzC@5XlT>o+O?r7HP_>j1l`(EGn!`aES z_hUcvIH_L$rVwhQt1m~gf_*!VrdC5}=1~$h&PGH_)Je$kd8JG1*y<9l2FY$nW_*4k zL^7Ak<-k(z5=JpUloeKfy(5qkpL74vS8kTTOQ^DCDV`ILLw@agv%qI)Zx$AxSQkw- z&Yi@onF;_H1=mIAw#9?pE_nZ|k=%OMyjA{v=ue|(<26Pj&T8Aky~sS1-~AjEWoV)a z=LzK33Gzdr5;9D4cJpi5aQTq9LU?xH;CIheo@KNUOx9i!(_)u8SLKrtd2Gye=2#I% zrJ_~)C;Ju^w+I);^1Gx&vaD8_^Ze;4JhJrD80;HuqAWju%WP3lg1=draQMmtJC`?B z^3VJx{fLXTVQ!@=%e13xS373mFH0#uZGI~@_qkV>qDiUJm+mL+B6w_?nS~}_y@`9Z zdhll$U}s7XH8-iLw`O0yKUx%+=)OpjE=^Gxp1e9~b+%wyZ{r<>+x*YxQgOV`E->o4 zhfB;|r`Eo8T@JHP#bZ@9)OJr!1uR_%V%Qq=E(Sir(=n-m1rvHP6a_#2!395JWT!P~ zY%24s{-E?YQ+joWcq-?$bObsjA642+p2bBRAT *tfsB*z8<>Go;|Jca_ zRYN}a{ige3|2K#O>lkWiwggSqnOJX>(%8$UGDk$hu`cm5*` DE@gDEBxmAgu#kl5lE4A9v8OoJcP} z7EKORFg)-7;~X%^`b=MCX7H)Yig8HYGcP@gVzxiDT8c%im9dh2u4k$Dtfw;^rQEEb zQGvC8Qj_fH+<<&^EGsz9reK#wg@Y~Xx>#%#vx<1BV2{0{DRM0de(or{f4Hw^vHEum zQ+iU37s%`yvOe@X_g<^R=f@h3PHKa<0GBO8svzKHW(4;{hdU0Q0`ca_5zS54yu$f) zl%B3&UHEH?HeLR NnJXx+ z*OZ-$=wy=StGTG6&B9lfMRJ$t)S$^|F-hyUB%?#sTzLya33S)g2`$U9#`f}mqJ+Ad zAKjN*Hg-26;}dbp>$!OsHH~bAUlK9M9@`Rgb;J)y|J`d9%7T^r{i3Ct;%x-y!ky8q zpX@4BV1AWAQ;GH^&MB5VY~ak``St0;hWgL1ddX*!#}CUln<3L^qXv~|8mC{Vd!L`K zuit8rofILFs#~~!IyuR_gfXdSGbE}c{0d|D`KEa4ZB{qxkyixte$1II3ap)rx?_CB z;E0lHVy@^-JG|HG)}i>y9FL3`{R)|Dnx EqTr%KK_X%>?)KJfai%W3z62h0I<4_H1QHF*19vB0u#oEX zG_{RrwNz$ZJ&s+1O3WOTP;0DYrDISj$;kt1^E5Bwwwwp>WYyH^ExXn}97cP28dJ)L zO*)%USGDHH4TioM1D?U8{>QNpGm^Lmr+<5E&ud6&IEfNM@R^6PXFMVGw=`w{?aS1W z!w*~?w`2CRrX7zbr^s(7pS*slDk{;3(=rLQe5nDMi+W_QKR>|^?`cnHo-aAZd@*|@ zVK6sm!Zf&)ZiR!B|9EWP@hwnP#^S37Xx2K|PJ=3ytw!%8my_x p^!qW4!;hOiN~P8LUAY?D35H$y^1?uLAhAhR8pbI!6d z44JCAi;|&*QGa=h1yv3EL_UVcr^6gfj*yXDZTC9YqI8$)Gt_pAoFxQm3aOK>Onq&N zPyh}RghWIaf6i;D25cCMu(QaQ9>_xL<|u}=vz>tySWNP?=rEez9$X!4pVG)H$12Vi z9L=hfU+UUbT!b-wH!RqY11UXeL>E&_PIZ$hw%qTKRD@cd9r#h$Fa+CK=h~TxHDyKn zJ>7bn#op*xqhMGRtCKs6>>TDKryqi?EYI{zTN;5aL(1e5Xp7345BR{>etm(^e$_9% z*2*@T2xQ=GE=&f7AT@b7(tu6~OnN>eEze)FmGL5pm?OQ)%tUqrQuGdm;k#jq5fdW= zohSz G{!hCvzKjLDRedUJYDO?DuL#L~(m>|m`MBiFcwS&YJ|q{zEBo4* zcr-PMI4HhKIBU*K6->=;ErSTPsyWE^Vfe*9qcKo!T9YC~7xmPHz1ZT*{Fh&RtVZW% zDG0sQ#RzBJ!;(nkVd=eH#!`Pyv_t`qe4)*u2^JQ%bYu)UcXtdpO|Tw~6KFPXoVDH& z{Fj^ZVKTAR+l-=65*KI%Q@%!LGCV5wV6>?)(>j%l1H2B6#vrF64_@iz4c`J3jf{Na zn2G5g{78@8Z7CO-!yu4~4rI_;SC=(3OaM3Cc;)^ZB!8PK#PGXUJY+J!-5|#thf1#* z64k~IUER2;O4*h?J(Df%c&s=Vl$8sF Pgh^5|8pH}s;A`h>kcC4;Q~(qhJDv)yTKia>}~-=*8kgg`^qwHAj(x&1F&1py)+ zThqr0-1_6SzF<9_15Gw5Tac3(tioI!M5x`2m^#@Sih!!_cyS}W=6=g=;P?2UVih0U zC(Gbrx9&Yotl2k$=j!w{fyiC4Zvy?yGaXSQ^%ngj1!L%Or6K#PN7}HrG$ZTjrJq@* z0$Zi$g!*s2;`Wb3ZLP3wvmhn{3vu@5qFH5OkjWIWd6b ir;+eLyFSj!hvRnMD#9A4~dPU7|N7ib4UU zOm2c=ST`GA61AY<3&5UNAH9@QemLJlhMI)yud^J575P88RufB4i_DCTU!ZD7EU@v) zqL;3C+X>lc=?xt1xquXz_Pi=cHnx6W*=W~&uMQ9U@L>-=SCmlqWKT5Z8?|Np?FXU6 zus_`FJY?4AZ4HJS^BX;!gzzxRH+muY$7>5cPi2pcN46$Pl0sFR`agmYu&@avtW4hU zDaFo!&0?|N!~b;Tql&S(g-m#k08J_v2Thf|5rq#r+?v+6PW11A!y0?FjGZEa^Qo$k zHYrzSjvTPYcNzoi!fbpo!;ckrF>~NM ?Yun0z%8+fzt@bY5iCHpPXh=As6W-R|-tnxd!E)uS zKM*JVAGXdiERJs5)=3}`JOP3SLU4Dt1b3%#cXzko?(PZh4vo9JdjrAUU2o;P`|NY> zzUK!|(+|I>s#$BUF~@k9!~DafeR1tSijlO0R%bkldv_Dk@?Wv0_8*^r5PWIvh{^U* zDkOcOHps8psnYosrW_GvA_IG<_( i{Y+?5j9v=X{hQ3(h3jvH}`XM#-) z9h#{v6;isHm1KGfMSzbNH0QFOd1+Jvj!NTa#YVQujZ?kR_!bv6^UD -=oSoYGDyz+pC3Ds~$8&@rtJUw9zFr4zFomahI!3o |BcdfPniAPve8FWB247syYNknn?jl!(o{tC1q0&*huEFIL$ewu8nSH z|L0^bq(p`?k>Rwk^HZMh(6#e=e>-%4OS1q8ykQEeimKE4iz7VA#Kr3~obZ_U-4c;c z=Pd5*kFv|%^7VsHZfmUY)BbDb_{$<8A;YrW6vIh$%1{JfzG(K47_8096ctX*LfqFb z)++^5jmALWFIZTzS^a&+t6Ha+Sf1{!jJ?sQ;f?n0G+9DA+owJ$jT|r!+P!DP`ZkRC zB9)DA8Fn6slMjm&paKraeG+2*ZH^H8H}$QhHgmaCNsXrzGbII7@hqpORe6n3sg@{% zZNRzCPK0T&IE^kg@9FTgdYhHO7h|(^7Fyg&z?`q^g{3roP2AX+iH7MA2m_H2@doar z)ik&mKxH7^A8D~9J(o1GxBL#;1&o8|6Yyh41nUDfe6Zl#8sow&Br2|CC2jHGEVQ<^ zOz6i)G)#0!H&OCwMg@vcB;Yn~Pj-%o2LGaA3EWnCe{@o6B;!oNByrLX^Sb))`FF0r zQv90^ld#~2E$`td;JHg; $*%2n)Ga6ZF&z1DusyLoQ7p=*EQ zyQ00j6Q>~{A!m+xz0XpAi$;Quniib{BjWXP=`B}qJ-M{A=`WI3{Nq=GAMU9de#xUc zV7PjwIc+QX;;_;v;p{h62N;VFUTD|gK`Yo@3r&_$O_C{Edt=9$iomruoZiuOBoI&I zvi{?FSaV70-2ig-)~-5f0}LX?XW{h_cPphjK)EUSN4fc{a_EulvYl*f)qjdS!rqza zB&4;_; )hCZloVlskrB*qPhpbLl)pj zx9;6Ots7kG1|--vsF8mLN!nC30NpApPSoO^chCG_?7q<86R-Y{pZCIxzXlNo%*b5{CcSB6Ws^I&_8KwPxYLI zd5FoJ?`KxP5E}0;$l=^;ruRqJ`?#53BIf3}Mf>l~w$aPHvWPiZHIeekJCl;{!kgzP z9;s7ZsAQ+6nY3$Ahcoa=D&? BSd&$vq-3@VEgv>8MOM>Q-FCAMxdbj z9$JZ_GQ%uUk6;v*v3clbcNGJkNOCg*lA$XQpeisGhqo`DHZ5sWvdn8Pk3J%o*#Toz zx!xnv9;uIw=9u3vHAZ+`PT|~?7H_5{f$bgFIFYSY#s-%15S_+zsChDCw*-sf G`Joo>ounN?eRvgzyGrl%Y{bKHnW~nf@znvNJB> zb_3D<3|Re;3^gS+FwEyIryb6xSn4Vml~U&( _)SXW;ilW`-z;l^5 zgx69hFQ-HXqGgIn%Ucnca&nv_S;D-u#DxI?zi5fGWKB99H8Q1o`nxRs6Ptm81#!3d zax|Dz?bajP+s%LIM@F ;#B@;xZ$NBF@5tev-gc@ZwMKRL=fn9Lk8ZaEE=>8k zmY*9Bw4vsl F_PPBP7=5OcA({~R7o;7%DLgvdYH>dXN@E}Yb2)oV~PbmPy z3EyD)I~`O;4WLncvXVZC=fi%xO6=Yov$ZWA8ihOPbt2fv_37Z?dqWr$S~tI_Z6%q~ zt?SgN)Ic2r2#RX)CUA=#H*VWRIz50wZYR-SWqHHYG^8L0iPmXHB@I`vf=foaua6x! zMaP=+?IWDg!m_)Wmq?V~f9@lh>pwltt_PzEH(t$YpTNaEDcxw?je2))y*$nv9?U)O zdlTlL%$YxSxC#oAT<-F{s(zWFq%Q9uy}0sRrjSH?@h|cA*{L#>gCR`Vw-MH+Q=6%f zKEI?Vl__g#eePG19URIiyom}HpVZ(xkb6f3Oc!S@c@e~IL=JiIF^w^`uiBna!o7{S z-Co%v&tKVLj1@fjOT%ZY66iPS(5#-QeMt2~?5lL;< Tk>VH&=_GV+ zt{gI$jg<45oYfLJNo40oxG~0Q4A+)ewK&=`tu>dr=EqC7t~ZAPn1)fClO36|v*pG@ z$2SlQ%T#*S_{x-?5qj=fghclWdwu9V)8*m{pWo#p$kt<5Pk7F`%G?v>Z+fxicT}r7 zh`zEgV~?Kii97x5>Z)sgI_N8#%s0m&RJ4@XL{X<;y1baTl3^cyfo|F9_#z#Fz&ALt z+R%tLEwvgB<>jze(cAi8aib^KfdSfWw)V;A&KVXGJccD nC4lq;MM4BPD@s~nhPyco@DN 9Rm>OS2Oy(68WVO%}J8NE;!j!dA z>=b(FK9J5G*N_g6T0LB3bua;emT0uQ<{sDP9J$;La@`+t(rPJu42Okjw9!Kt&sy%? z_Y<(tnj4;|zL%7YBpm8anR#Pv$NvPtI*fiL0ne6jG>R>+m7r@g>fye)sv=g16DzT5 za!fWCCdXVKfNfE&f7ohFj<&KEk54(lOG!gBv-AV!kyzC?*{|zFrsV{1lElWve3FI{ zUcgOTr|(3B -Lswe&&XRJuZJK~WGOGq>own5jkjO)zD}Zpb7ihqZyAO6Q^9KM zN(~k;6~khGliy?+PvM2 NK^%p(Zno`S^>@h-V=;44?a8s&h z0P(0tx?!v~r6_siDx{?Q%0lQHe KKqwK%2Nlm9>s(Z@KB ttQ2BwGaJ`C~J&P6rddWr=2lU>$iJ@Z3El%$4_w|xlV4h|2RFdR8ExWIDc!wEO5 zk9-Z*keffP2Uk3}tXA#T5I@=CTJqy4? 7ozzyR2D)MN`@S z<|kLvSuc{1BzcnURY&-;eT#T;N^u2#+P{A0U0~mOa(J8T1`sT4_pg={oOtj4$b1O9 z+jIAqA2h1{!s)?ZGoBGjD*adqK5_0|qWOPTQ20 z7UQhQ5f)oBC)cGV zX+wg1&QGI=m9x*$)$}v-&%dfW#=6jPb8P+9B)|4``C~~4@Y7t+z*E^KJ{asJlI+hJ zy0CBV>J-6%EF!MXYwLSPyAV;R>@^$@HAkgv7}&lo^{0#lGQzkYn5M^yE6Mqu^n C+4xfr=XNiwR zU6(S7M%jPC&wV)1dTfZ@*!|&K!4;!L+vDDN=;i+&=+g!56{beQXDNK*JH#XX2ph{u z4cL=WSvsS2^wE6FO5vOwI+Wl_7gGN0n}h__ooFOWb@UDhI`dN7)KqsZjtO0Ix#88) z3ja?Y+FiCSqE=y`aD1hh7>b4qn%4^z7N;xKPevT-lvaGe71BX^Susp4|L2P8Y*U-x zrnk%xBuBTghx78s2IFb3pRczU41Ia$t$RW`a0)$K+kPUTi`k}dxxkCisT-oGG_Iqg z6M&;8m;Y|+;8u>ir8a48A6QGlk*05Cvd)%=6KOSt1vX2Y9}EpJOCFJt+TEM530_Sc zAsNFj7*hb1r-~rzC7EH5C#Qd*3I@yLT6HBn`~y8>&zdNTcDMJ}i9PHmq!%A_8TBFi z>?+1Nq5()u;*g$^lEJiE!VleS%;Tp1u_kU#+|a)PR%L~^R85qN3(Dh}N;Mp 7XmNC7p~J)08UD^h=0vA& zppRmVT)uhbgLI^_*6$mcg1$`}lZYqgVetX({5LVNP+UBoh>`d=Rk3r$&pQffX;S%7 zY Ch4{d52MMZ{JwrZxz?R&)CyFV1Yn)Dx(=oCM~Z6RzS$ zOAG$UCM~%96>P1&Bdt ;$ZeF_ic9ZPVa7D{+VCBu3ubgt*rJFw@>X{Zk%)B7SXRnmkR37~U5x`q+OX+s6 zw=tRL97C$m-H!iew}N-Zz}7Q0@ ONS;*TTJNZ3odn!1nMl6x^VO7Lx z*wLoC{Ka|LDJRlEC%j={ }@JVIyTD4JNTKR%I_qZ<-Q3 zAkE+Na*@*gv*Ly^mNpok3PiHVVzf2BdrBa*N+eEIRc0BQ&oOxq!jsN}6&UqDVJqy& zPc=k`4>ApwBnuf0I>c6Aq%1Q;l_*P}Z{&5i+&mF#HL!OTO*f6ZJ3!HCEREmqI@y>k zn?)j) {%+2Zl@t mTr*9KQbtW>yKWC_cfykl{UFq6$I zaBkzY9LqsuAG1so*{ $)bA2T %tvs{=G7`1{pBl6+wt!g59ig;W{m}g)Xq!i7F78wX##nNtj>WUj7TI$ zTd#&Js%9AWmf|pFWUC$A@rbhwwC20jgxv;L4}aW#XB*wyH>c^#Bg+M_uGd#MtSBQ} zON*lxsys FzWSI)ZBM6^e`NUmOb&_?qoGJTw-jMN<^U-QjqkLz9e>f{g$2#hNqNsvcZX!VS6} z9QI?YU?XXfTQdJ*TzUa)Z{6o;# _O;CG5gA|MvE{nXdB(E#VP$xlOEM$hBp!80ZVAw0Pt?k>GH!NrD0{-C zNpfq0GLS`!P%q0)TMDcmk5Aj83S|6^+Q)~xfxO6}Je&fBR7yStErW8+T5J5FoatXF zc}~N-01%C5+r$;d+W*^%(BYGCQ_qTgv@+y#EO3O2y|FOhHfEvLR~(DSm{EGhOb}I6 zgik6Q$ey|iU%G&W`_aUz7^D&cX8t-QA4NV~MXbIbXR0e$+zW^@sCxzxV0opUE_6OF z+`6vN5-WF1CbShAz;kIRzL~25avb|rmjCl$gZ(cxXH9W*BT|*x#F~_cB{TktnDL^f z&@A f{9@$-u5O&9q>@NfKH8>m7^qX02%v{jQ6i87|H-(ECkz}JWu{*VL-@8QT zD{7u!ex>M$!-8B2LQpDvzj~uul!nZECOX)o*;$4U*0B%|uSPo<6QNp0d|+YdSR25i zLsLkXlCrI4?4LAx7de;TpqBc_(8{MGAVE#H7qW!I#wGH aZg;NRGIElcOQmafjYqJae&8y|VS6i5`fKl=l zK(m&yb}$a!w$|0N!x|=qnM}cyR{M$eppD gpHE{7i%Tg0x+$gvnUI7 4pQpmm=5G()4X-4t-idc_cNGvYsYo zaFxZLy)7q*sTuQfuqfsvi=~oI*g}CYpF4dRS_Bxi^OH(NXXd+o-~OOF;Qj4hcBr6 ze1=?HbOE7gvbdc;VohNPa5weDoJ;hx%K@q(RZr8sOn55XS#c$gi_JQu0yV=$)J>mF z?%eH8*@xqV|616^ll89dHxWxU8tpV8Ak)9WjgnaqsC4Dm<0I2{x&8w=phPKvm5OU} zjnE *R_>PdN_+mD( zBJYgM{kZTzuYY{Gfz`DS;W!y{2Y)lI`0hVNg2%)Du`1Z;7@Dpz-kdHB`h4j=`m#8* z-zt!xttYa2@2~AZxDpkcYM>a5$%#J{W3UEH_aU{aGRpd*r z1{v8}h${8`lIl3DjPmamm)1>9%a^lAR_EXmd^0RnXSg$1c%*7U228DA6Z6FysWZ63 z@-Ed(&5MaxIn%eo1sUP1i&7UwcVkILG%JI7fyIICyO -hpLr z#gGGg7O_5=So{S0e9Fu>YEV_t$vHGOHVpNPj630O+D~*(Q~i@I31?s#P*Rq$<9x;b z|7BPWQt$ek`N?wd> 0tPJcxo zOICj`l|~_5>}N*}&stdA(>z33$^->ovBwr^mKlZ`*ZQ3Yt^ko2$Ix)Dx{=J`YQte5 zFf<29OS({0L%&L WkA_+On9%{*q=QMtc$~@qQ*#%YCwa2uY@7mcJ5E>)XZtrZ50^a4! zLuK$~&29Nb$?e*D(%K_T``!9-%WK`Ch5BUYZN=$sD}Zy^Zv5f6oMv2avw!DSU$Jjw zt4!p&&tO0-9D_>m!%6rZwrQ2YK0Xr@+DxUm8R(m7)4X^ ROU1NL(+|!9vw9Kf@ZM!d=nB6`rzxD^Tv~J_+ehc9i*SMV-)P z*I9y#TBfg0bnRPzT|?K6@;t=EPjhSSX9J3kZprT8>Az46NB2BS{H46Vl8{o;Bx|iB zU^o(SJ+1@K9s>i!l{$?gFT0a2CC9&eUgxrA1v@hz922>vVY>EnSs!eI_Pu2Ve2U*` zuw@@FRb3}K#BEe!Pud=#>MG J znNo6~!_(Qga$?NCiPl_{FfxQqnO+(wGRymwA5a~rDo9o!yC&N`JU?cC`DCBY*BTU; z )vhFzZ!q9R8MsRRe&En&ts&^++tR9Trf7d)%5)^Wu&U zg(9<1 on?$P6_ zNQ#-rVw>JWzYJ`y%R+~^27mq%AJgH<_>-K^XCWmizoyZaNLpXtO_oP)={N*?_Uh6^ z8k+ai6_UD+_MaHEcFYn!lhkfl=E@|8@OF}Jp0VLbB%iZyM1+fitBA roph3PG z$AvV~Ijxjgkp~_a%zt^E$TgJJfN =3mVa9x_u`nuQeX?6NjmutL KavO5&%f9a2}u86tj}mi*agp;%f3=w)Wx&0LBh&BVC_rzuk~^_{~2$=Hkrsh zivB`Z$52_FCu~C?m<=~9Xgg_=4c{*yfR{EOtx^e!YV!jt%S;*D*F`(-bC7-r<0I-I zhMU1*VxDSp?8!lJh2LkZrd?^$Kr^M!Y?p8@D#;}+)T1V8puW^{)g}U}&rJk6A&QuN zlS*6xosr0iwRQ5TSyE0Qobx6E_M%2r$?_7To2U28b s(aodt?iQzQ>ZGyb-IcIM*YjDlmWvBhD-E8$ULr1z zHcuX|#1S&0g{YY~GE?t(1`uzE7v}?JPzs>M&+L_f74zOLdgoX=w-MVG?XQSbT^2r2 z&+v7)GgxsRPEZwh(~ut7n8y?EDx!*&xvxu5WPVN0_ftJEior?Q&@+f^ErLVdX}UBp z{r$fd;9^i&GnLB)Ip8Ux8?z!T)ofS&G9kZIy=`uDIog+lm2E~?0R`Wzn;j`{xD8-X zpNE*Ej^!ex;m|)N6gR%ak#~L~IYPy|8T6Y#!BwHil6O2@I7#W+*nCGNo&dB5T8VVp z(r!E5&!_j}-4jFa0qS$;Zcq|EvoSmr(?!uBa+l2r7E3Lv4tFMy0N*H!2(D*Tq*^de zRgd1?lGKv@Sl<`8kcPWy#NtD4O~z?1u0pSmYB_yjS~j2$WWK*3 y4XlnCYR$8{5EGxx>L>N z!SgcB74G%`^WFMtXLEw(dAe_WG>I)UE_U*$4ycZ?GyT3R4)W8e17kq%$`g`3V<4`d zJ#b-@Gtr;H4LRR=Scp5cmQnk~h3_=CpsuEGY4pR(j8oy#-gd$h#3i8)V1#R@{x2@_ za`#va=okM0%@gjd8L`@-Csa0YM_;ZA_=-+nm)Bk*CxV-)B);(4iEGZ!wXK(L=frmm zPx;gx)G~-G6sK_?#nX3l-Igp RdbN+>;se{0$@im^ouGHMoYwkUe&IfDfa>c2T}aeUL8jLyMMTKZQ8oI3_tpN_E>|smVPV!W(rTmQ-z^!;%p3C0E9b zup~R9)HEYk%9QALZAwopOz6Rq=m-rVJ7pltA;^C7;5}_R-$-2=nalO{WsAopVudE( z@N66`d$lDGENkgEChF)~9qrfz)1SUAqSy9h-SZjf+9 k|vOVB9e3*aoFvYyv> WmM+lV4OV4~<@)^9oyq# 8UT7Qq$YW)?e}D7^d*kk8G#$b_5PR^=$SA1FMvakoPP=nmLjMEnBvJ2F zv;nR_HVxo?xB8yH2z`N !oPGh@6A$2V-wp@?SS2g+q1Q7{&20cPC30NXtW|U}5H7W6F!@1cW zL!p-x1H-ws-)}jIGQ=ihwi-B?Ci@c*$q+6)Ey%CH-+JefozvhJRFj!H7qHX~!$tf1 zMi7}G=ElZ!qxN^q|6QWi068Q7Cq+ei=YtdgC6DqdK2b0g4~TGolrFMp;dviD6+aO; zWmNC5dXghqk>md@9wW`hyO$yl^&dO^VM4w?alAO$?ad>xctYgl5V<&)*G4*y_~e0m z#mW DY|obr<*ej!Pz62EKH} z>=-o9XQ5CISN1%5sBxtmrGET(W9s!Vodqc`%&AS%b`{8=6f<`x%mn?DMgb(C99ZE6 z_w|olw^{2~lV~l~MM*^4gpy%rqys}(6>tDs5`dLk(o}+3`UmGwMVRzkXrzMc*oX#~ zf+Z!O Fp1w*&uk~yp_W4pPds^z); ztzwmXyo4@u^PWk>#cJFs(qc_e+~jMB4{y(-YwWMMjYC(e%8kt*;=i)2Qs}UKUV6Be zKb1Y&rkGiNPmJK@n0r89z>zyL5pK(%m^2bz;NgO)sdB@Ln(v?J_$c7%3AsE^KENjn zXX|iiAtc?5NY*hZ)c-a05Qz`_ALQD$ h-Bhrgn70Ea%LdIb>UdZN-?4bn4xTN}(w zm(^ye)B{*51!eEcn?x`noVd>ws5@re@ulpk1zVF4=75t#AlvS^W+;QCo;b2G(S%=q zjI%Y`&7~rz{zF0-r-0QW*LzerAM6kp&z2CPfJ081K0uWuedd=GdHyo|$WhatW#13F z=!T`$M{<*Gquv7@?3AQA-64WD-wvJAd+(9x#|90p8 z<%^-lUh+ Mc4+ z<#|^ao#z6S7XZeQo2M5k`;}b_a8jbslO&ZN=V!ph!?nK5_W=sC@FY3M05BoT%ndJ( zav)=tGyZI#Uy3eA@-Rp7z3b^Sfk(spmZu9`Fchn}`}qSEm@kaKXowMKWM7@z#k~ _}BS1^&0K{Q@b{*oLX~BPO zLG7L &^v9Ii$9YW;8 zWzstu6|H3?7P#%Egy?bagJ7EG!SASIr0dOego=tcbS!)e>PW_#cCDH$GaUG8#iuqG z+T7ksa2=SIQDt-UC1Ouk@1GVLUaor>vCPLLD2qDSAu|l#6C0t+Yj7saaoC%hndRmH zOnHe%iV92O8p(O*18T 6lmrNtkM;aVGvVQ`_LhW(kJ%GX-DE|q1@ zHV_J2FK0_uTwa*z(z(X&a~|1S^wAi6+U^#XH}sADD*R~P-poN$;T?alw m!xEC{K*% z3f{0z<$k@hQv3(bz$Ql+x2Ac{TQ9z-u>bTUDdxj@Pawvw3^O7fz >6*MwuV &F`)=C z&TjrZ*f$<)kguO3Qhn_*HHt`XQ%6EKgu4v)u#k$gp~vu6* @{HYTa}7Fc^9=-SLg6iggOjp=aG~b#LcI~8Ip*#9u}M@~T|}fjMemPo z-NT<@bu?D>PVC9jU)iYRFD5=-XyTDO)(|c7X8{?Ac+NE0bt?h?Ru
1dG?$x|*YP3BTF6XYeh7`Gnswh3<+lbteiw@(5u;;ZJia=AcORdvy zDF{<0P5tA=NrrYGsbA*EA62R?Mvo~>;^_s4(=(S36J*0six-+t$^Q|SJ>zeHvCMcb z#kCm$;8}7c$muVyy$FQ?RX{HOP%YHl4tVyLNCxHj8^q^B|FFAwb($^CR1_C2tZa}+ z>bas->6 6y zZ}m)qD M5LZ*jp&+Lv zAt~@*h<}GVec@O^#$*mcsJnJ-O6$>hNTSuX8%3NNHWQ^NA}VVM$Q7%B8!RQ|ZVp`8 z*OatU69lP#dHV?tU8;QRs&RUy#Wqn{t8IXaPIF`X5VO&Co4O$C$nbP7!vDcdH=hr` z=KKMS-yhM 5>!PN5$eTqY2O`Z?!3BacJ%X@kES117l8I$-e~bcE z__&1Uy{RAE+`{MO@DpT1fAfR+pk^CT2>Oeo)Yc|9|34sH0)Y0JSr dAGJR#yXZ^LN+kxEVN-vO~6` zh%0nrn@|kb72$p>N|&^nuZ3QXeA^kZR4%CljQk}~^|v>T%8HVyoI 7Knz>U;5GkT{KULv4?oj5Lc zrHn_v!=|y)>KdG4+~BW_-taW i1`0sv%ibSKT?vBYUaA zYx!@TxS6f8T4xfTW&K>W&^q1y(Nlg3ewM;Dp29MINJ(5}b8NF=I&YY+u>TTpZ72Sw zAtKISc?L`Vexg}&K1*J*uJr`|&}dzpgoFz&IrKUY^KRrR8#5NWr_M=`kJsthyZB7S zRyZ7=?{B8%er#Dc6e>>$h#H@Voc|h%k-zZ%a513#8}!bxVyo19_Vg5?NT`V4_XmpF zsrKOmVH^8Dwd(^# Hv%W;$Lde)}(`>Rya6?L}exwMNinp5Qld zaIITehb5Ke;i$lYnMvpPvkV|n#poG=_B_|u0Oe$D4#ye+!J yh!LI}IP5N}L}iAmCZZ7&Q@VM;41 zE7P@F#(PM-Vrq1PN!fNJmMSH!v18p=*j-PP_4U3mAZ5K`$a7^-NZpA8=DlTMbgj=4 zE|;U2_kC TMH^tO{a-h6=95&b`jC){vH-OhzRvA5pu !#xf%;V^yJE6Lm>oenNTwtG|=yFc;< zs%%i2O!bK;-*WL+ah6zs$B-azxh+TamVDXO#kAtFHr~@ab)WepPm$YoX8fMqXnt&a zrq2^^fnnr@$K2IQjEUw)y+sCUUsLG!dN6TKYpeg_AKI eM zG{ojKySu#f2y1cIL`XqhVySUt)fRpP!jWQEmxN2R3D77gdXRKD+iDWg{ EBbp0M_)SleLae$@pfzKLbD`TE*mTOuBFuND(&PEr%+$iP)cxKad_$6d?RF zw077$?+J?Ej|5d zzX#<0d&Y7t4v8v+9Id$r>vMtab4y~sph4NNP4=%7wEMm=>7QSmk#x|#v1Y@3(#ZJW zP*2vg8vDT v=SE* zMs Yed+@fwe5MP+!i)v&l9vl)asP*7XxmOS!NEWpNeR|&;2W;6K z9Y5C?gZEwrXn(o5(d;W6ic*vjR=Ck}OfR2HP!kfj#$N2aC1s)cU2I9x%krfGmMm6I zwr^7Z(e?3ozQO7ET}9i&J51X2DUQ*X=Vmbpsosf>4@6M >L)IcV?hG?YApO}gWKzs~LW%x;EAX0h8T7-W90T| ?i znb&Z=B!`<#>W--V#0T+o<@QhIaT#ls17|re94B^zE0uzr|Jt?J#(u5oA2Vsoh3?KT zT#N0_Uql{KO_1yjv=v~~apF|Cm=YkZpP5A(iZ(yMVd#fU$n}Ays3pa~V6w$ETz3Vi z(unwuA?Wl`>-QkM_+LROyeU<0nU##DcyoUCg}O8ueV$t6PC4N~0^~dqO(h!hIZK1y zB}WUaRq5N%w`T5%)6CvTNS08wBe*&*T|de-8~e=X$Il|>QO++e4>{_Md6Oc`H@6Xp zj+QEeSv>6rBci@COeBRzzhQjmF^B?3%ry}N94033>lu7)Tfj~k?qMxscVr3N;rzO{ zLbUl?&FZno76Q4AB%f}^pgEg2Hcb2)8wtyiS)0ZU${#I2>?+G Tjyo?0)*daTL5<|0TK@hGA5?yTAtB;IH3BO5vR(5AApmlwN24upUvS$1xT)u|e;A z=`^EgpwF;zR{oZ58B)bYw4{+m9A=xVx*wMvXJRQ>n!zF0L;%cSS?`h$y?$cheALm8 z05@W pH*)R~G?C@QrgrmUP7U|R#0HoF zllQNK;QR}@{M)MFd)`C_YuzuGoUC#Mwigv7th{mFk6>+YETzU-4TvAhnh1C6JKs(A zde>wHbz$} %`Jv-^^KxKq3oA79=3R7Gp=g= z+}2`hjK02LTO5OHxsd^<8mgi0kK7ER7i47iMKwKBUH_5{k}))gtkIEouo6@nJee=v zDF5HFeB3rVc_n2LF_!8a4eo3J>e;TcEM94!77OTOR+%;#@T~bkZiIhc2nDGC*G^P4 zJ)7}2&7 fAZm_urEEOxB@oZumHpBx>;qk=K=n<(@ zeW}wDg}X!Iw569T%d2Pjv}G_4thKw3No#k=bBih|*;%C8!y&nmL5d6xI^1O5*j~Xt zC83Gt7hAw6-D7sstaYOmQQk-3+(&9QMKU+ws302rM1`D(kd?2?o}pqz<~8cG9oif3 z?iBy|F>`!7@*{m|q5T#3>yn-#IXZj*|8LoUe}ujk#LCxx$~k|<3@Oz^Q09(!)qYo( z6{qOLHQ37)@Ff?6M(|s{fr0X~d1Gz3o?7Ddvr_(r_Uja*#4E}*mDfwH)6L}*5sK~p zWPih1PmYGi1+NvJx^%|;kIYX3 d)&tnE&x7{CF?k`T6 ze9j1`?M4VzC+jb9uvmwh!cx+l5slam=sOd!8Pe)nFlGEo!i *F&U+IaF}Jzc!Zy-wSaklJ$tbnwcSl znvRZUvyz1!lse#4$5Jrk%{*u_t5q?(>6_eenM7Y6{QRNh%lA!X@N+-q;`T3Q1_xKJ zUpJ(*tL{|JC#zlOqvq@l?46yCXclQ$xkdDT%voYa{HT}H2;oxYK<*Rz3)E(8 &Z-8s3b7T>mg&C*r7*vT?5ef2e~ zQDmmx@@N5v!!lHQ!>!y2r+cKtsdtA2fk#KL^Xg6)ZpG#L=B~-f0Z~P6YHm1x?9?S3 zNx`2P8a!G$=^(LUzL2i(!FEy7HQV{!b`!_;6PR|BB+L&P@#-5ci`nsq ew=ovpTDP3VDJU2krPKZQ`)cVm^H;bAk3l zZ2#e{PvJ}e=?M&BH44IAYDLnonCsxGFNYyV>ynw9XUk?2}pT948TMUWY|ptkVQ7)X)n_ z$RSI)Vgt|ORBD>Egfz}De05=5Eh$$-8>8wboUR&moOG73bB7n(#xH;~!|_W_cTW-8 z*I;-d4hklvh?hUrPq4s`IEi$VSxjau*laorZF03vLrn0n=AY8%6Rtgt&+787(J?f! zi4T+E>qU^s+?*A$+C6%(V%=^2=9_Sbg{kXJ+08>#i-B3wLLU|x`>mL1+GIrX_e5~P z(BZGS@ZV!Ck)*cO2hX&{Pn-#a1lxb;u>*yhL~`hlqAXyUr&LBy7H2;>NtWsKUy+-` za23&s5-H%Np;rWTh2yc7LHe#%Fx&$3iI(5hT_aEOF^`l(xQKicB5>KNOb?yh`Z4yB z6CIq$1Q6W!vsQiB>im5l-h!y{jqG;6lrFg83aDEfKb@J@ufCwO@j1naXnQ0*W;XT^ zjkk~Zjq~ fmi|kgTnr# zDyiqm1=l`8(;iA=FU52rI2|1qId)TD>^d2`=Pg153o3KxcC@*kvT_T%iL`GjRW+TV zY tZVHUo1xs9*(&04G{Z5*XCJfrGAmwr;Vr;w1?i}X zTJ5(t#$Vr8aK2nB;#! )P6#D-@zYh z#*kPOqtt}98j5$S1)pPHl!c`_w>-n12v0p#J)(sl=VV!7vd@BFsW1{dY}C#(uzi zWIVpkF~6Y3{W16CwU)F$bwPV6OPv#`p0&uM)4c3rQqzo?t~+?vZFZ64t6bx-)>+$) z#-|$*K>XnWA?kbv3T$_ b~tdzC1v(L$q1zMCuFjBwlWU6YNy^g}^##jYT zQ(A5cGN^+5sA35A-cbYNEPwxbrnL{tt29#PD|SuIJaLKilR-I1w<)+;aGXn|6e|D8 zmOjeOD9xxgdpUt>{#I9!5yr(}(Aj?PXJBlMny-% 8n;030=}TJ Z@6$Af%BmT2d9zeC%F zu>!8#wER-9`0@GaaC4THs>J9l+N_MQM( SF{qwj$}c#@#8 N@z1~}MED&$AXuf*Jreh23GZam8I$4KW$1rSy)`ehaE5=R0kiiyHjAql{c zBWjHk=g!C??L#ju2ZY?iqsH#?F`}1pj4*55Hfw#>CP>bfkdm+ lktWG=Lw0Yxj^BR-a` |rIDN&lUiR-9T2C1n+OF|kIs!wZc$P zj)n=mTaJFD*ge`T*#C5KOZE;LbW@)Vlt z<#DK5>!E6DrPJ{FmCyfHtzv}Pz)LHQ@{JyCg**7y_(ou4pM3Gk8wu+~5@8OtizKR1 z<@4(w95C~VX1c+j29eKo4gD0+^u~yzvMJ2_s@#wep}~<#3y_6Wc7f-&l(sXq!wB}! z+Y+x;RX{;i;NR8ied%* 7vlQ#i)Wq!EsDtA*cgMzc4=`~z>Gflsg|B2(s;MLLX1~pz zayHL)$`?d?82D1}hahMTS|a=|=-1Bs=xz3PUZ;mfea({xL(;kmtD+Z}2r^_WKiK|b zG=BIVK1?UFGOQh!v$bf2Z5$(TeIBm3p#vxE1frucPRG=sM8JFKLEf)X`=e%uWIv&H zO2fNj_Y9DD@B{YQaGEC`2=(LP^q=@3UtIMQcvCr-Z^z!#7-XRBe0=~C#d_fNVQ0*2 z9dth9Wrl cg=$mD}Rc%TE88$+RW($hhB0K{wm9Fn$q6E zW^L{{B4&PHRV$@>D}(MO58E%8d9vDa^)%l98i0!5yo=f?e-|$pH=GZIlG%=> o^(?N2QA_5 z*ii;V@q4!XHm9b<@M*jM>Bs}4?N>P7hy1baj2wF6wbHv+a`+n=a4IQ`osU>|l+-hk zS2v|904ybkl5o`H@7`0_N64^JJ2{Y)6#lYu2_VsIYTM2SOL^#GY&s)n gQ;6^%|E$?yYTG{T5HUiP}AM?yOR(sBzort$y|D^ZVKsC2sq|I*;UIXA!>IKc>Bx z%Y8lHwPDi!p&?0{;Eie#@2mPsvGc8MTE8=8@se$HTGn@;P0=D}lVrjAB-4)yz8ZX` zR8568w(H}PqO`tpRf%M3`OL2i2MWd Ahx>)%Z{>V= zm0V;VtqXnT;&RGwc@x&qWjrvU-LL*K3DBTScwI0&v=V6__38hBH~(L0mUpLb+7=wi z2@GY^$X%N%Vb~nJcs9Mw{K?)VPPOA@E}D7F>h}a4DK$5Bn?}Zy<4MDraUf#cp?L@Y z<_AiNb!k$0dTHY-z}mnR;!i#om_(;tu-NQJm#OQ;FY$5YOMPwDY;{l9h9eZ ez&?y9UEZoupOzS}}ieJ^y1?* BhzgX^P!pp1pK2$g(F;hbg48CQCme- }`iazFypOT};rwDlVJt zUx@w?2~tiH3H6*n)>Or1oH36Bf=T1 `>M7CgszT#e)ye@1> zCD7p6LTbaw0}an ena`s44kaFq=XjH4?DXmj-%!0O z@Ps(Qp^4>0m!t&z&=TTH@ )Sm~ik*xuRLhim*Hb+J`mUBS*K5-K` z)UW2x3-)`6_g_$wGKXNn&}3e2p{vUOHPmV~rF+pO+((N7JV&d+B1f~XM9yNR8`RZl z$3co({fuunSUQ~)b7o2j{p{-t67&h?Llkl|=L`Q;r2KZgl{F%C0}oe8*h4EoydFWd z=xL323s>izH$&Zd)AU_(yP_fj+|SRomloBXRo_dY^s4 =irlSI+yl#% zHOV1_kKl&QxK6yf5lH-}4^ *PX%CBhGm(=tnG}> 50^fS0C{! jDJ& z2o9`In}sm*)tRN~>d}Ls0v8Zl0SzHvE9gB+fx>|{gM 4+4MEobAGY$ar*NYi_xK2G#uR$FafVqkYE%%JHO=Vtn_5bPZ}9!dbgQ$Y?6GjYNx z;alBAhn-|Dat%-4RdJO`avK8J0v@rUf>T2{FMR49_)QE{JQwRX#48Ja`AB(4$4vjN zT(F{=u*JGiko30iQMK}{;B&S@#q7)uvN7_4|C1g3f6Hg&j^yPT6@Ac+PmV;;7x ;f3+{n&sq8kCK|J!pQe(%!|6W^EwZUS;sWNAO3cqkgc(Z zM_(q`BCFB1`vay2QtiQXdkR!EK=W=O51f9vXY9!W+Mqpa9xCl wXRu?3g3&1Qq$=~fT+A1_ z?1QJl{(7`IPJv$pSfP#jZ@0v0`DT8%O5<$TS0}!#hR~9bOko?ghmk{r3c>tygMYUe zkqk`pUIUt|E6n=UVuBx0s;Vd|PK`IN_n+-&jO8sv|H|1a)QKum@%p$HUGhd6$_P(t zj?bmllVmZC>FNNz&?z&Kjd)E2^A>#9 X7eS6lpN$h97r5BC*tiv`z{fInK zo3=-6Kc(4hniX 97C{cXdL^}+bq9!Op!}bD z@c$Fg{}W zF1x@2!XupS{?CEV@e8B|%p+4>D*)QhJVxp;p>iUYulya* xmOAa16nLc#Wx{K0ha_(a_v7UB(fVSFr$@BeNvb+$gNZYu11C-Q_(S`} z6S4ee6Fngm+$Y!DhevyaX6rMD9mBXTZG)U6Qpg4mCteeR&WIUwS9k=%!x=x;tmilB zOWC(&cQ~lW+&IL7p^0_ |sOI8=n!rodVl8B+w~6nwv-5_BKru_j&; z9d->3ZBJ^p%R{T~P-k~S&2hMIMw7>$7{s2Tj}T*ik0DiEbB&3swDEQnxED~xAKovt z^CvMW7a0|)PdSKihRyp&qfNZ{>n{Us33F|Sj!O)JCa#sfrQDicCEuFe{oQsc+1o!Y z#f9aamWTXyjP>(v&Z!;6q1yVUvYvr_J|QVPwmaBQeQfcvhrHfY#2Fj)JC;8E>UzH# z5|aE&-ozT`h}zl|Cl$xbD1H^O?8ZTL*CflS$jW>GQJDIzC ~fpxAJ( zST|mu$mwV#|DA@&u-RSW#y9Je8VFKNnVE+}?bB>Cmwq)yX&)@;xBlaD?kgDs%j& N31a8LP!bykWH>3|m`tP6ip&*5JBeEXmPy*dvY8ETJzYrt0_SU50oV8bf2d zUOY57G*n}ENN+0w%n$I-nI=2M=RPQ?@ylopCF*Th9K0%CR|ATxK|m}{BF>vAo}eL# z!`3dvj=)U#ihnxZh%^$aP6O^mtVesTMS87 ?&ug9w^^gdVq;n0onig6E77_uZ)G}4tx7aRvHqVU3#mGUJ@ADSlH=rR z5|AQ_2cFz48jH8o+V&XT@R-2B3nJ}xd|vUdTPnvzeb=v`pgPvc04LMTC^kH;fj_T# z#>w*iqnvuyk0xcfB(rkHyG^F>?v#reCC&urFFj4w&o~i*!40kM8kj}ojYsAVJ++mq zKQ!bOji|3RL*FG&wWnjW`kqJ?WQyyalVT@(R_)IQxgm6fm$yD;`B?o-17u~n5HpBr zkBTt4 >pfElDpbZGE#e*P%`IvNi|L17Cc4c zIa=+XynCa268Vm=)gp^PmiAqY8j5FKpobd-HHcNRPFc>Qb4JL-%rdHGRn*Pyu?r!D z4QW3Y2aCrA x5JdGVqAnzjT~rz2d;b zMb@_#I#G+6CIKru*G}j)R=nd$GPh@?;9mh&0kp; vxH}rFX)Sn)hU-z{jbqA=`!D94hK3b`_ }qO7lauzxP4=g~W1!yg zw^ok$jmU9e=fF9o23xbaDAqA<#b?r>&qCk5+7s>d+l}TQ$ulgE3v`qP`3HHC9i)}> z3gJ4KQiR-ikV;hKkCVw3ZDFY`4B*SSm6cLVTP)**dg+WzN{lGW=FK@N6`0h=BQjV< zOA5zgNWCUmHU31onU?0D|KhJdjE2a%0$BJHsLgKjQ+yoMsaPFYD(ZA^he{tYkS>HB zKg=n>^>XW8{t3%A9?D4f2@PdKGnmMZ?4F-hEdMoCLxfY(fL->Jl^}%W!UJfW2o}4~ zmi^La@BcM{t6A;ZO@e8^CH8uM$rsmp!U4|?N-wa>SwEWFo_pw@fOXsx6%%Gzd++NS z-h^^gIuz$MQloN}{IghxlezDOZTxYBijx|`%@H1A&5=}^>7rH+)z!>qmv}GTaczp3 z5-W$pOOWnkYnLClFC!+3SKUO9XqJDt9m84wizth&iA32 }4nWoo_7l@|+Fkn?XESUi?`N;$3=!IiiG52a5WBjyI?| zG&&~H9~t35E&^LWYTu`wYm2x({#4w{W+2V0aCpSkRz5w^;rnEcWr&MmMJezzF6T7H zVyMC>eZh@F;P$|3>zAw=o%c8NeO%4vmR-~FS*GO4uHE9vBnyG$jUeub tmeYMUR^(PC*9OaNm0i31|bTP_0V8n7yO|I@7;S) z*;iJw7vE7tx{}mIFJ$Hm2b+vyA*hR2v@5NlOf+_BXfp+i#5kSYIPAUl^vo5N?O)95 zCc$T~VygT`KwA{kRc {JHKs1V?EDy!*KK z(`FNwK1Ut=@&%4E1smsY@-Vp$OxkRI3bWV)MW;$+n@RjJmP9EEjQNs}UAG)9&;}uE zLxoWp3Ju@9a+-s?k>J8BtsLFsQ)Ii(&SJ;g{1cbSqPWcJW51p8cIPDkHH={yXBA4l%7KN(<6qz{;4KvC!MysK1jMqKKv^V z;90vEBsBAfksz1KR{rpL@Mp5K4ZHEQTtyRKEx9VK3NzJgD%m8SSn=GbmmOgP-(IKF zXLD7`#EulQ^ZlhQL;mD^lZ#@0;H3XmW}y)^`pX+DSu2 1wvRJ9~tb|h6DFaoi9s!GH^$?cjXu;(c1`RBOW&wYXm z9Y81RmBl?^GL{2 1p|aqM#{FdwtA8`-s?B$>3AwQ8OrXO5!_Eh04dF<3hCs|^3W z^c{%p5m*Vhs`62(4*r~9Fp)*QnvQHqJycYrK~|S&)F3B!U~5bU+#E`2S{?a?jMJba z@RbCdt14*ku~l%}nV09poS2g0A!QpAUfrcSks61kyDv>hiZi|%(AE>pN=~>;Lj+Sh zXo-t>LRjmH0Sm8q=M)fjP!quxU3bL@a($rzB|KH<-%HXYuHSHaF_bvjN|8A)ZKUWW z8GVfH!zW^}Qq&()7Quh%!FFEERKxPIWJIQXvv59^t3XUCGK#5_9EN2u^*JUgiU!VA z9kXY&cs5_sf(7ktKYi9A@*sF%3jYU$SW@nkwmmG>iMR!A9iK~0_8QA$>IwL@AZTY` z2|yxdbxo}SMqkv%9%fmYM7*D>gAP&*CR6-5BA;&ak&GZ=`!W&aNct_n8d MTBYgK4NFflkBHc8b=C!fRYgP~K>T{YgQ&sQbq2+EX`}fw5-aFUtK1zn%0s z)J}7OwVr$8=jqO#hNS5I)}+t3hjwR2Rxqh+(o563tXs32w3b}Il+Q*D{H>l}E)s|` zd~cBKKi-t*Wn|?us^v12Xv@Z>NaJ+r%zh<9Yr;pAgZkCI^yB1;TvT3arKb&ER688Z zdBvBwG^L*~`}wmXlr3sx$ K_xF_W+6 zgwhVlCu|jtl4<$^@grtT<#Wh2|J`eOh$WlEh~!wt1wW2c`1D4}_E+4 L9ea=tRnQ$55hW#p0T*~tIWcb07arqdi(NGh z(&E0l6B4bV12=(Rm7ig2mCXd?rcao^WnW<$(-zhA )qKYZO{qJMUHQ5kz$U`YJ;MF+o6K5oru=bm|~!hGd4$E6N3?Z`VHptGgv;< zkSUg2lgpX^f>j{rokUIaEZbXQXwU2(QXq@8(TW3XCL40 H#f8sF%9KTkd(zTsw%O#OC9PDNAO+0daC v@I02l5Fu8txb=g|}}N*HY|cWmwH!kqQOKCJTDSXXt$}w3S91G*Ox|5QN3j zSAHVZDC{bz9)yf u2iBM)6eb=s-w@jaxC%eUv9WDAzBJ(@btF*v_Cb% ={ND=6~uqnZzoTDftd3t!9{vA{Z|lUg~E)nPbjiJZN=K$}F63NUPm zirkDob02$Om36S$wq`w4?Xx5(L0&?I1{D;w=jejd#9Q>nMI<#%KS{};Z+A9usKrC6 z(q{Vyr`HEDjVVoSm;6CH7F%(W0~t(qY0KxlaOrEJl9fBttSUXx;~rIv--ZM9;63Ul z35y =YVeGVja=2*8xB(- z6REE;sZ(`wOU3tb9}n!`EaHSp+R>uh&2<+3DE@=!bJekR_Vd=;(ILEV%TKv+_Z?)A zS7_BbQjj7AO7FuEPva-`IWX!&w|c~k{P$bKvLSs(E?oK0q>N-{2*71SO1XUlbuxeW zR zp49tMEqFc=LX~jX)7wr>)1)s3@J!q?*gRZK02|K@K>jBt^a1w*AjwmFPWb+JCoG6z zrQkTEWo#+Th&}_33!IEf$*irvS_D%+>wG#O1u|?Sz{(W9u*UxBzs~tX#dDP_)_n)? zamkv4RgAu^yT`wE(Cyb$_z(~4+4#|L*YscgJYFw!A9o6lCu%vcbHo6rl89VfoJcf7 zI744D#XeR(t=HGG+y{KI 5U;K9f9 zo9vv(wKSGS6Cy457*cRMrVYRR2{{Sk8Eg-2{sX(0blI~R>cuMo&rpxjhGo*){3u9i zj^wANp+@i0+9D$B3k$bNl$0#&Ei;-g=$jSns8(FVBZfry>fLdjE|x|x?Ja35x34Eu z;~;-R7`%7Jy|Vn*=q}zLk+StrNq}#_8j@$vjR@&25oh>A+1WZ%lOI3pd?=n}vNqHw zfQv?$)+` |*ow8fNSsb20T&vg#!A)Ch7WBwx0vuNmQ+#wh8dwV{O$MTwwLdF7FQ<*>HH!Q znZs^t5nkRKQ<_cZ5!>lfu35-?Hp*q+c<7i|q>~YH0LdmG!4OB)Wr3$_xs(9-G9Xof zr2?fpf=$gNofDqlnJVC&_Q&4ZY~<$c`HQ1Ikbf>#u5gH_BY1tXQ^?BRIk58eKRh^x z#IV`IV(U){nTi<|37gRcvvi6f5}}OS^~v)Ia%bL&6>X7^!7vqPmMRgbFNz%2V@wX4 z9n%N0xX#8ML?d3SDPpkfVxqgq3vRn_)?y7z6@_WypC3g{v0M*&)QwLVEAG|cKt1Yt zh3dbapOzcw3;p${M!^xK>Hu>oY_WUBsaMg>pn@P}b1 &h=XRuLyu@$5F$lg)O@d5Nf1d}ZQW<8 z>ZHOb2Es)YM_Eci`S+<+>Yb1iYd=&}uwz169wG*&glMg0a#&%ep o-bx)D_IsEps{fMzNoTQ%1!ak5 zQ6>7cu;}=Zt? q+5!FdhJa$=*p}g-o_n6a!L9Yn+UuTuprk*OpG#YC8ym=S=teynrmya2MB$M# zii`%G*ShcIZ<4qqC+i-D`mc+Z5 zJ;Q l^5vutEGPf#ve?_3YYD;RKpoaaeQ8UT z^`fcqw+DE6Z|g-zZx|}+$~GxAt^~k6>FdL&z3!jUNrJ|?WKl|w?={i7XxEA9>%xg+ zbC66~Tbq+(qmVsr&A|LVcZ`|QV>_9Q=I*0^#E4H==SU07PY1r`u}+0v%y zqa&=tI@e3zf3D~>FgVI=in3J?bmW+jlzO@(nYx~ARSF+PYL|jc2i=c#nuFPDgmRD` zCtCHxP9D@QBANc9jz< c%H6o-}T zsX}HL#Xw;jJ_Untdh6WUrhjo}R7j$pchP9_O{@Qs#fifA;dKXA27;@rtuKbletEfY zr>}RiM#Mps&ri2Ip9YE$ueGf5nsMVDJ3BFUfYdgAiZkR2KfQvfttV;4@Vqm=D@Ob_ zs_stL$zFJ(!M&*}F-0#8OA3s9MUS8HHM15;e=u@#0*pwlAHQ&OO7!-(lIGNIi#Ei$ zr>9sd&ZO5a`Rp~p>d>NCfGF2?a-8&Dbbl!Y;ejl lw%Iwk7u zj2kEFrPgp~umqK4!Bv)hkrS41tJEZ`maG8h^o3!z^QJ7pfu`&ZgWb{zmMM>So2CU> z@E1ampP%PJV2L7_>inpE@~sI7cOBv!a$s$UwHSBw*DoXpW12JCSnEBPio>`~3e0x* zliK0P` j-ZdgnT^T9SA_D3@KLLH zo=v R zq!JeO3AwWCn#giFzA4JIto(fu1)jSfYm}N>`>qpAL)@0EN^|l4>4o>Jfh?`w%{M42 z&4}6B4?v?m_mAA$o0e?1t!l%ljYcJQG9&2x%r{Far!RwM4YR^#7%lTS)mXfq9M1;@ z_31BCeOkq)7-K+ROojktnU#yAtkAfj@In}{2{Gm@m73X4^i(qWsZ}f+d&{g@NlW-# z7Sdrhyzkq*X<9jWT17vSxM`c6<#Hz4C@<}Gpd?5c?`hO#SXe<&+M&0TT21)kiDj6y za#+zY2NJG6E>#@$N}8~|=-`t !vK WI9j%dfb=EkXryLWO4)KRMthrP^dRPvY zE`3<^1Z&^ftZg#xkY?1c9w{g8wnm=1bi^U!eKd*uiUyjMlf*PrkL~V1S0%Dslt1?q zYYYS!!7+J$-e12&PJD4(-vzK? zJ=h}JxAe9Tp>D7aGzZB4j*dR?T02(qhP2!hJ0%_4edaQ!**B=L+k(TvUd{~9lRP2l z-Q*p!G9kUXpX{Fnc18kp(XR&PkHwKGBVYUtL=ervH-Bpw^)uyuu4(U*c}Lv!)H>$M zn$FrfRjz(>B<8 Nz4RV#iHdt2dJ;n5F^-HY?LUiSj8Sz-_S8w^S`om zsIx2;u=?>(ZeG-5ho|fRhpjU*>F>M#=TYm_?xN2lv@_WWRKCWuzkjFF<3q#MZ}HiU zPCW%H&m@n{8lnbPL9Agd`cq4Ciq2G1h-Z^C(_>RYJv)*0X||M{@qcN69k6DjQL#bH zG) 4=-bv1H0_vd;Pk zXr@~_HBY6+?^XWn?K^Qz-$lvIDWApi;~}-jLGv`& qIwZxcr*i6glNBFf-H=BHmFp z>C=IT4%b<>cRN;) =5xDWqSr|S5{Z9OZ4FlB4j_Sz<` zhznHo3MRjvgd@VByVDA_IQme7R28B(O?_xfs60-eJXMGYOMNNTs^@& E6GO^gE9d?)$=Q*0Vwe%hPo>)^ z`k0{*8PmC}UXz0Kx=d=R(BZ!U1iY_&zuA})20&%XN9j+r>^ek+JZ_}K+Y;eRqxLD+ z2g&?WAHoJ(0F)8oe1f+b3LU&KvGkKn$P#&v63vIy4Tl83B`v-3nB>}#7U0Grw^Nj@ zuSbg+2py#XFCJsP2PN#GHk$#$)gh1W6X!oXGZG{r8l2r+O5Nl165~kOYtS#6cAs$c zrA)5&FreRU!$D{@bO~ (dDx4qEFk9u|rb7#zii1V=f1A ziQvFp_v{Z%BJZpg(c@zIRBA6$2-v1R7_~+bl~#6>qeOeALD>%IZco1oW@iyee5LDy zt41Y;NbALC{J3He=cpO$qS;oRShp+!mBMxiQky+lIk$|Cz>qoU=SSw5fg =QMq^-~pP%g< zQh8nJ=3E)|s5%pHvXjJjsZ1xE5oJ+2((na9P6cf;;J(KAxoQ33E)A;eLj Isd4;l;3vbaKfE#qYIL4z^MW3f3r(T{4I$RiSqtjcjHZE-Oi^r*p z)5CyTc6^1818#_^R@rhi#t6~!+>_qUF(wM5OQa4!ErDVU&$NF+mf8Cno);+(?>G3d zR04P%Qml+NtfTyZ-(vw4HKkKngO60IB^y%DF3JGoTlB|7!=X=McwZc7p&fT-S2Qv7 zvI$gqYf b}o<3Dg(b^wUg#HVp0hZ&I#di6bv0-ue0Zb0O#rwoSt%qpFh?9*|SY%D*&2 zC8HuNTXc{via+4bI7@3-C%$1FSJ%e $o>sbH zFwY2bntqK3XjWZZnZOJ?vKy9VUaFKm4;^>yb@E V*fkRz-J{hGDSd z9&f?c_p#nz*9Pa`o_r8q18zqMOlM~z%>#sl5I)Jt8(JpXgCEWC*6)A9K$Rus4bk&! zjMTfkI~Ypy^Bu;F14RKY;t2ue!G2qFe}J1&Y_;R+>!eIg{+3e>U1!mOjd5_S