From 794ebf59ce7b53bcce69372eddf17f05404d3acb Mon Sep 17 00:00:00 2001 From: D <3066417822@qq.com> Date: Sat, 2 Mar 2024 17:36:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 31 +++++++++-- doc/image/code-edit.png | Bin 0 -> 180320 bytes doc/image/code-show.png | Bin 0 -> 170060 bytes doc/image/form-edit.png | Bin 0 -> 166287 bytes doc/image/online-mb-code.png | Bin 0 -> 149041 bytes doc/image/online-mb-edit.png | Bin 0 -> 185794 bytes doc/image/online-mb-list.png | Bin 0 -> 149588 bytes .../mapper/online/OnlineMbMapper.xml | 48 +++++++++++++----- 8 files changed, 61 insertions(+), 18 deletions(-) create mode 100644 doc/image/code-edit.png create mode 100644 doc/image/code-show.png create mode 100644 doc/image/form-edit.png create mode 100644 doc/image/online-mb-code.png create mode 100644 doc/image/online-mb-edit.png create mode 100644 doc/image/online-mb-list.png diff --git a/README.md b/README.md index d6f261f..5977e48 100644 --- a/README.md +++ b/README.md @@ -34,6 +34,12 @@ ## 本项目与原项目的区别 +### 核心 + +**模块化架构设计,支持各个模块的快速安拆,对第三方认证、第三方支付模块设计了基础的规范和基础模块。** + +### 细节 + 1. 改用SpringBoot3+java17的更新的技术栈 2. 升级了代码生成器(配合本项目的vue3版本才可用) 3. 改用最新版本的SpringSecurity安全框架,以及采用最新的lambda 表达式的配置方式 @@ -45,6 +51,8 @@ 9. Excel中roundingMode方法BigDecimal.ROUND_HALF_EVEN改成RoundingMode.HALF_EVEN,用枚举代替常量 10. ReflectUtils中isAccessible在java9中被弃用,建议通过canAccess(null)来代替 + + ## 模块介绍(简单开发必看) * 最简单的开发就是删除所有的可移除模块,按需添加模块。 @@ -125,6 +133,25 @@ com.ruoyi ## 演示图 +### 新加功能和增强功能演示 + +
![]() |
+ ![]() |
+
![]() |
+ ![]() |
+
![]() |
+ ![]() |
+
![]() |
@@ -159,7 +186,3 @@ com.ruoyi
![]() |
2HtbUG3AnmZuJ|`XlzeK6p7G>Ej&d+ti9pctf2wG zaqU}^n>v}DYBh~-BwSNB9@WvDOKNpuRrHLRBH@K@ave89zUa0&+^s0Od%D6jj#<4*xym8b$Si&GS&rL zlf8&J$kU!@OyMoXnp3rl^>_8%y#5iaHo+2JOMF<;AxC$;_R4EjBqpeZ5xv!yAfQnd zyiUBe;o%{;;y@D?+xO;L? Q}2y fZonm>T9F@#l{yhMPM(+^V>u! g9hmf*g5#vq5eBgH6r0SS`WwDzJGL7G{ $?HV zekd$edB12~T|iT=QvRuGM;BQ%g|_n&(a&zIXZ46#sX+-;dqd}?Lj{Zo $24B`H3#010zNU8mUQ#3 z 2t{&V!uw-R@ zp2a02__`7VEOo6ItKiMzS*K^?qjW4}Y^Jjz8Wfhkw?}BDI)M zH&b^Y&nvDu8-~aAS0BJ|zp76U2>YVk5q7sDmcpM)m?n6GkeN2uH8_S-;{^As7wfpo zMTcfj_u|*S? -L5gf~r?fT3YoDF@WEAL{YRso|}yO2{Iq zU8iZ!95UCwh}nKO+qn?uUT7d1@Z<;$-Is!kSw5wQvuU*SD?S;*oyr3;mdQ`)6}eHn z%v_hkO+}@01cXx1-vfe9zTZs*%v)GtXNP|yEXtiG_b)l9oet)h5N~)dQuHgNZ_l;{ z%O1|tc7re`$b>NL1s}pr7{grsBc1B*>XEEkTwd|r?Q2>uut=+F!5gg5e0WWsk47}b zunl#d%z2$}MQ;izjl&Xb=7MV{coAv=nbdLF6EIlqb@qU%utCpDD79amdq&!d<6ixc z@i(>EiA9gN5tZ2>O;XpXNJ&O?^pz(g)9vhBp$MkG*U;Ohvp4*@wXwN}ogZZ;{+2Dp zE2^^=q2w{lw5Us2HN}{qXH%rdaOcI_WZyG$6hze<-IZ+ST4Y*KCM0ts>pg;mEgMT~ zeKe ztcSJet)-&d&(B $61H1r=B8X~jQsA_sGl zz(Epd<1U$C#{=t8%QBvTDoDXo@g=C4e)35i)8%zscKUlF2iC|QRf3?mvzbkp+aC*Q z1;teKw(hCGPQRE(a2ib^Lw}@*lw#pJ+!GFXaDr}1I-D$?5Es&q;sd{Ee@_ZkX-Wc> zbCmgC(%Hk63WZwO=F5I3E^cD=NUO?tk}tw9hs5jjni11_iX;^+k@-;XQAdp-d3`Id zCU{nGD;9@yg{_|Jap^xh9=?TV#k^AWc{>S_eMhNb0`)S$UU? VaBo^Q`j zK3dYz50ZY%n^GTvc=uskcEy&7&^%eNRCll tT& zz9E0l-SGk5Ke(*cXgBg$OOWXr5@cb6jf~4Q@cGz-TlUg#7&OJTZD>H1uXbsbIkB04 zDN{O2rI~AFUDfW10HH5C(pO0EtbP9=B vo-hb~`1^W|M!DPN;mu4}%I8QK_)thhBEDdOoVTK@o1FJj z=iN!iU^I@Lg|v{G%qsq|3zqJw>0rdEjE5fOSuGZ*jAKwUhgOi#+Z!%C8nBfLV1&o2 zxCD~Wj6~*_@?M?&*9eu=%R!@xj3z6c0u$@i$O9hiJsr1L&Q{Yj++s~~55sM}`a3!5 z4#SutI}fwZy@sUnw8nWR(%Ohbl5umceu=3?EFRxGSScB*kr`dSz=~Oi$kdKkS+)BR zHXE+7;n*%8A3U=rTjnIam^4Vka{EvpmO1+#Y;A4*dEUskVo1xmZK(#J7-orkVz?T6 zTsCL+t5lb)Y8f|8?|8!U^8E_itBH}zCM_~QoBEzX_eO%#6?_e(aXtVyX;Lg4HrvHw zT?V5ov*=Ei+!pgtXT{2>SQjA%<9^}Bm)Xqn461OcX1RnEZgeU0@KvI#i4mk= XmS!2(QPdjWh_N-5aZe(_Uve@37BBw{RZ1J zUCqw`3}Q|(t_$`?$bmWcW5B=Bh1q8eHQeKUSeL^jtnt+)8;$-PMBkM4YFGO=vY%ER zMEa5Exyi-%gu&@Lz`+uO7-o>S%iyb}G g(Tg8V= zUEISnH*XRHMQ`9Wb(Nddw|{A=v|`p|rmMt*RHC4h9WsR2d)G+e9uA+JR|C5*9@A2U zi-j$4Y(DFT>YLsM?Ox|+qq2|N$-j*d{TgZ*M-2|Eb5fQ4xh7Z8f^vUyA2rhJ^b+Jv z$1y|2VwyD=aS5XD$GchFXC8c$Fn6EfW_`URZzi;y*I6rB*JM4Y{*sP~A9e9fyn-rv z7k|&OP@svh02g@_ONaHw#O^DhpWbw@&BRQc9oQ<#E7ks`p88XuDLlbmRx#J9jw{Z8 zt15f=YItJ5fNa-8!Y369ygLq*G9QFaki8~f>c2Z3Rwjs`mJ}rPhc`05XhnUKs-0i3 z!4cVklzpMI2WnbqR&XhI{Ob4=1NWP)+* F^wlQ(vPT2x5&eh{tE_n4n< zKP9F(5-#e#D@G0_Zqx1+L;DxCcSb2VAjXV)ar7C>bG!8I>_gIBWyD)aaCydC2vdJ2 zR|7ql1_H1Yv1Cyd&nM}mGxj$P>>SBgC^j;CENH2PVcBN^O%;Dst6LDO3`u=QmjtG; zAbup^j`Sbu8Jd%IV$V{>6;9IMd8Z%nIHl*_(eV>rtDow{Y~*?|PyVNddd$k6oopH> zs^6^-Q_Q|RZ31O@z_a`7 ?c*Bu=^O0e&P#F9&`fOjtGlSuQLum}Id zEUX&sJGv*Il!XB|ku#kFhBMGY8vS*ie_R4(NNc&*_IG(YL9ype J#uwc@}agf5+DK(wl3`)emIl zl(B8+sHW$2Mml%toLUF_8{;*Z)g~Hf>|~SFY>a#KV*|K 0~tC*CTijfNs%aQ>etelj3v4qQ{W_?HTd-Fx)mrwQRzVl=KKlUHEy{#;jUd)~B zbKN{Y`B&mb8vU`91_!esnfw8=I=xoPOqFAq^Ds7BzLiAy(A&3Qh~hPAmv-KNE=t2c zg?+^+#_F&+Acl9iHfU0xO_u6sHK?wh^4BZpzN3A~2XBuP1&o^$bbYWc^J*{RD9mJP zNOnJ&uGG)+&&@T3ot`GmU8^1S@(vC}G&E t6QCE^>$5JUmcvUl`AjV*mEahJ4xv!M@JwbE zpQiVZC)f{-R&caF87oi3|4 jYw3m-1q%LkK2^$JUBio>tVxJ zki)k`lgjg`w&DE< r)eQ){v>W{q;!adD4w2IO;d`S-76iD;GsWW}Ni)<28(^ST49{cwhrsXkHx% zMnBT!CK82U_s)@bm<-n$ExfK^5>VccQC9agAHHZ`5cWmD7JLl$l8}FSD@w<}h#%R@ zU4SggFm;3aJcOE_Wg}PPCY4%~%*)~x8iQEBVd)W3m!)0?o*KPjVJENfJ)PPXpa5)N zs~!@coN1&(p7tCCSV!~P9JrB+dsr*#?AN1VmnwlNntUG_N 6kbI14phYQq)S(FwK# zTiN{P&Ni!6LTyHPmVzoFr*je}KWtGePf|lg<@E6(?r7Fvqrr%?(Bj=__eSZr5$SwY zMJbKE9NmO0rql|U?Px$VTG{H t??xL;oC5@sWg%YgeLNuK_yICBds4A zJZTBfKSwh=e(3+)$&1s4+wauoLFW0m`h^WGc`M`bg`E)}wWY^M=;R3s?5F*^RPDgr z@pw3*|fY}k0r{St}c9p9$Uz-#vQ|^!!lv@e6oqd_AgPzKG6%HmzZWnIM>9LiuA2yTAQ9I z;5Y+=LJ6kKTH~m @^`Q^t4RO|_gCN1a9}ZYW8*J{48PM?5J#fZ%lCd6^kZ!rLXRNN+s^#5| zj2hOtw5yU@CR8cF377Xay5#6;4R^w;0rp4ZevJRLt-`_bu}*gjdInE-sydlED2EBQ zCgwj;FXbqlp6&&HrX2-?_MdqfOCV=c$Zz-`l7$?NE4q5gHR;kbFd|^IUlBn4Nk2cs zi+jEuvYi8pIQxn5)Do@`^$Ym6SEc|cF6r?W`E^2Q9LZr=ot0oglt4e#ehpq+DiH$D zg}s(d3XzuuW4JUON>-Ozm}Ooz)n;o&9KHz%*_fjDPLH8~i%}YCEPEZw2CEg*F1ZqH zviUN(#gyC}`B3lvZyT(uf5(>{^&9cWU&&YF?MCoE!9tcEs6~zfOv@@9)7Z6h=HQib z&~w%Q{(4m$RU(QI{fAi0M2jT>_(KTuxM+k^6Q`!v+u1C*iA2{37>`#3hvuOz$&Ga4 zozM53#o<02I>W5}q39C>uP~W4PnJULsia&h*OWORo&XXOErj=>5SfmR1)ctAL up^-c5C1N2Q~A5lg$QWVj)ZX#AVvbbZV}~8cV) ^3Yal($g&rG)dCWt(O+q+BOVjPqkpwRZe0U6 z@`sFG9op*znH&YoL{?E=GckB1;us^`ui+ewa0hzm3H|tr6rV(i3yh|D4GgmkDTXNl zTdO$o467LC9vJfsMhe09<|_`gW9I^!VvaHdhuYvPEpgMWZ-%d=RZrU*xc+q9k0_aE z0spencYXK#AFagbMQPc3yg3G%Ld3lc?(|C!uz!eue%CUMUUx5F3cF|&`ON%&b>9p% z_K*o|>5scV84z*R7A4!^8*$Zy#8m6=<@A7$NTou@(OmtNmt{fgMZeakOfv<2p2Ujc zBaN4+v hK*6Y*C5_g`Y)7XG-zLFI|VXru)9vV&=U7KHyAfnG>(*Gl?=+1(>^RNC@y17Y z#1k#14O4&Ynl-^V>cg0sK{N&2wx|ms#}ABX((z<3aa_|0AetAeH2XD`Y8$DqG`a zV2@-UO#QC+npPh S`HT8Swq^WbRd zglL(l5G^;^7Nb&_mGLJayj;~#o}<1t4v$EXsELl7=)X?mUzz3qC%edzMyv@?aS{|` zMoFjNxM=$rgfL8~cIf_q?&m-w6Ew>5Y2hh~xo8+xD}n`GE+TNddcE0dPq6Py)rH5! zu(77=wM;GLvVg?0poHBZ dpDaV`IYRgr?jFTRZ))8dhG$=S2%Se2; z{jrx$Y=tUya&1rrTPDEbwOUAK+_q)ZO9|1JH|tV)RXET4Ad 113>G4ye@cF8NoN?@d3{f%LeD=%Xzjcffmbd0_S*l00&!N?yO*~N zVq;j5$bl@dk+&Gq7OhOLHx1%a_dpqSPH^1Lz|f5pY32CgRT!OW{7W3e^gY`!WC@A_ z 2v*=>B~_CB9PF x$!vBIn*}+Um (2;0CheRVwz=?@MQf6MWdO7)L@xcgxbYMuV1~@gH z YY7a`8=H=`pf7Sp2yFW0uI=oP@%^4*}Ud#+W{;U~+=OmkQPVBWzM!($! z{M2M5ReWB!c`)_~!S*HUB0a|vF+D6Xyh<5U(jrgdbrf79!@( UlqnXC}Z8De!Fp*7MLK z{6q8L-VIR&T+grJ^`lBKdAYpox=65Htr{HevBJ0OL$8Po0VJ3b$bL4JUw9+RYwjPP z@I3T>MB_t|Y(A~vU7uuGZc*aD0fFMEGl74Ir0~aPHkADD0oZcCEz &b7*u>Z{qC2=tRe8m6HOZjJj-W2~3wc(*Ik&_nAnDn(KSfFqLx)`Nk z#YyMxiT{eH2dE{P>mE@C{{?l}-hx*z6C)jqFfmJswSwY!+}s5=%Fn4F|NrTgbLLMg z6ORG3AbDN;BQ7%m>95k)$3O4gSPt!;>%vgsq=sGmk~dKxqt7$Lr^pT}NF*xwUdSNE zfE1||oW+uh whW@F7LkmbHc^EMIv`p%(9+WeI#b zaC}7MXBla=*J{(#bW xVpGD{XdwxL4Fs6E^>Z$7N0!OSvv)v%YDOPM+N^M zJ-h~Dej60{pC(`my}kVmEW*IjqmhvjX%7zp7gyIp%^=spXLkty!%K4KE(qXOVTFZ> zsRPzsJWz4YDqIzV&nv<;QpP6S-3<8zq}j})%Pis5qhll=>zeuo5i{6u7SR5uS5_My zz~=(pOcPhK5AtL8B=O1>SM?ZN-Mj@K pahE47A?QE}zmInw_53=1O}S5!YjCnf^?xMz?5z zEDBix9`VSz;jsPesrrw(2FNpPDElJafA%T~5Ij;}zizSLqUpa9Do(xc==kxouUqCH zT)ZeOB%!LAeAyIw(RBF D8X8c(|heKV|EsY$Dh<_f&Rf{foe_fI@M|h zmFZkteXL+%O+$=DM_K;Kw1}&S^ZUGRGo(UoyUf%#QU}l1TkBZd4qq~3o4R7_F^t%f zHLJ>R8_}ySYV+n$gA{t5{tR`0S3X9XxXACjQC1c4P5H);hsQI1ay0w@nGRzrNbRHs ztRmF5K=orGIseUs{J($905I$?Rou(o{QE5!F-q)@ro%~bS@YR`RC2vqtI1~{pP&xl zKY~cBBp-ezCr-PGtt=+!*0INr^YQdN#~x1?4cT<20Cgs|P!b+r*?;v xmG+W%k%Rg(% 17 z Q>&il-q)c5p}+gM6u6q$UFLq z%6_iQDpI*ew3xWtL-RzBGt@U0Y;>=hiM@jwKP7sItL#2jd3JHacPk(VvH2`Y>eCOG zNq@N{4gJS>(iQQb4;b6Y^Jw-gTAlFEAzNV>@sRY?tY^x3^ZX~JwQD0c-0=0>TSK^G z5R)xGyu4(!O#r-2&2#C))0(=VCE%0xAqM|5hr6AU#3R)3R%!JVT9#hK5uZsCCj5Z& zc?6vgz+8W(16<3!uJ&@`tGDW#F~asO4M6iNgGD$O^+FIsnjIAZrl`A*j-2|ydc^D4 zk!d=S$U-@YJOiUR1Nedq>zZUubEDO{Ytw5)Z5A &Pwgy**Bo5U)oe}t zw{wm#^_jeRJtYu8_o}L%Cdc=(XYdIRu@& 1vG?bBQd z4LDO+qqkjiI^LpfE{;-FNQWt3&KWme47~6}nZ 7~~gs Ju;k0|n=%ux{Jy-rd{e9Y%Ggc%#^=HlJvAXje7mlJ0p= #CVUxe8C$(BO(N!s;}j&sVc?+onv#(mn7=?@6t#8M30(n% zJWJ s;^L9nnd1tVY}WXG%)o&u3r4;xo1ac|NWP% z2@FS7q~%sCP?;2D-U~pWQX|x+Kpj3>P?9CK MIOyLx|rX5bN|`Qnb9X zB`q`stSWlqU9Wa`Bvg@`BgTpKn5A$;%Ti&bjgkv|$r )GB|zIvr-${-C9dBv4-VP_1ULJApDYkir#+l^I`hwM&{Ig13iU_v1$G>*{F zAOH7XLbYgUF{~UaBCHae$5bGF1!*gV8xzRM1+5qLSZ{0Po^+mXY;9%=5?5gHac&ce zVy0H_0FV!NI%QQNvbR}!!|s!lp_-aTQ#{ULBgwtKX_)gxuX53+i24)G)*Rjn*S}Xh zZ)NJ8#5A f4U&Ojvn5!x@4@v$mTtKQ-h2w>hr1un?)5|*Yrd)m3Mv-8=hW{@tSTKKq5GoSq4ziIjIj;aWdYwUri4bz z8;p!lx2uluK>SkgCc@t5(-s>4bn|op5#&s`R6r@im0^{wiwO>Z!L_q-l_C7>=WzI& zBpTe;=IU^#TZ5l+ivaQyGMQPNR)EkseKI1Yv5UM7cn8SL&CU#QF6GqP9#oI1_u3Hb z%@KUzo_nnrbtMz5cW!3~lwz$v8*&}n#4B%=s&ex%<}}dKL+PRKB?*)`@i m6V*LOEaBs%KXpSCcfgE=NJo9%GzW0#Fq=DfE(an%^(M zO`{6Nnmh>4=o~WxG;K481F0pol)w#fRd-jpD3PDQ&M|_)X?W}8ZES`FCgCJq(SvxI z!O4wE4 qQvsHWMG@q3z$MqYUv!!%?iD7sE-_IVBwy4nl8_uE!T zzR?y|Sd<;CEKUGIK3Rs@RNL24CO>{zS+a%RqBRh&*s&;Fi5;EzNnXiGSjf4v9wMAg zvFKG_9LOhX_Wt7V@vVt dva_Dx;A(C@>}2_{gS zJP7*OAJUF22ArF01eCqtlg>8kf#LeLim=nNyB}+}H>_tQEejyz=)EFzLfUK?H0u@V zYJX@RbBC_DJ{G-1VcP6eVFwQ3!$DL7r6x}jXCE0{t8tbrRCKeglde;{UQy#QZd2ZK z|F`X+ac;VYf6sgu62q&f0FbiylAk?hGsl}j>=nyv$|0$CPGvmn;s54c0un$*>wHwd z ;CuHm(W@8p3Ez?Xmj71@Pk|&)qr@JpPQnk zURBv;I&kV{n~8ql&pOP4?%g~|o8^9A^F25pl2JxsBlganm4$@TYq+{S_3QO@yW2(J zNK;47u$N!3xbEFSn}K*o1Nn;G69$lsnJsYjB0FRit+uPaS8xde5as-!X8S926G~D0 z%r*Doq4n;Dwd!789Ke{2ZavDmo$|!`BpWjKy3MVLAz_>h%tTO29`b<~qi}wvYkp!0 zvF_7?ul1!wZ;GW5AZ}|6$(8}IQIjcT&Q4k{gTcf+V>Bm@BUlRd*$$J3!*;qfnL3SW z_KrZ~v$xWE-&rJ(jix*Uw{T{~V{V}F MafAFX@6d> S9peflfLxB}kjdg i!#$hJ^vGt=~ zzJOZdfTi~Ira{3mwimNgjLB{Z2sd#9q--8}^ktgx8RA<(nL0f0oe3T^^9jF`e){Gb ze1CdyuM9PQ=)5Gw4S>l}V5)kn&JBi~e$@|im7{nD`Q>mVdT39|@lX-!%W1>s%kjhb zsz&2Z&|g=G8Ax+Xbp}o1+2qk*a!0_hkwPp##+8V#b%PrCcH_I!si(intg`?5h-3*r zIE;K&zrmbsO^s 5k zT)(7$sbL)WuF!Km=??mYT!y?oS$7u9ZG*bh`=N8A66ynI4|xtXN)0XeO*D?{XbD9$ zOa`|MLYJVTrC~ZF1;H )L_1TluHX$FP+b4Dc|CaDwqA@l=UTF{-Pdn$^`7J z?AsnKd-pIoJ+5H~q;)>+mpqW nzFMdqxnB( qDx3f(rDC bi9Kw6_$|Fbpz-p%`>P(JlUyj#)UFdOc(rzRa8 z9d(w}rQkiAiMrx&mQW{bd#6rn-U#Dc9kR~E#!ktO=|OEfxag8r_M#bf2qkrGqlbs> z``n*q(4E~}mzv`JtXgbI_oCWsjy=?=>|tKgvLV( (b~S-7*q69c?Fo8TFTJ(> zSo;vA-cNc?p1k@ck6BgE{uaPbKQqi}DhAURuw6rSbC*_i^Eb{g|AD1_M-$_r>Z8J| zy4A{-*oN{+tRo_Q?{&SjtZb{*0cq7g9;x-9zT&6M;6`@X+$n&cTu^VZG=CaBlsSQ4 z=)!^N=kGtfQwk*@kE&2_N1|E@aDPkcA681tJ`ze@!xvyZOf{Wl(`Weqv4;Z^zdq*U zR3n=UPfp}K!~pGEH|Z-H6Za+*8!vquIsd0k)6g2wV){%uy$($QsCpJoO|h9(oIX$c zDgS|gMk4#mCshL<>Hqt5{hxd4_;iG72 CZrus|zqe|e{c!dHs_N~emWc{2a#1^DN7|MnbL8-M3R(pFDv`2WC&0?z%d z=vvEO6Zr$p93MQRdKa&7owvwC6XoL?=fJ<0FDMe8eR(*|>RDO#C8o=xb V-j|C1(?Xh3QU6(H+oRX`8qHxk za8+a<*tx!1lO>dsLL75?L33LPE-jma@N{>o2Nei w)eHM@dFgOH!P)9Z;#?HTBo Qk&~KW6=%Z$z1>t5k8FK?})- z2ur|Yxcjs_r;OI`JAdhF83Ex+=K??91AH=AAin)+SO|Q_Eu)3LSD~Wk6I>Jdt|z)~ z6rL&)pFiy-GO<$$XrFbUzN4U|KaL|o9As0Pd G)<39#RL|88 zkaA8UHJ5s|Ra&v&; ;`*XwliB<>Gjq{*lu*KT#j-ig^)9^u+l45^<;8{;I z(Xi0G p~bW^hM;Y4A?sz%JN6_@zQYpkk6)Hp zt+@Dx&(CLs#${=!m7#R^NWWlNK*Be&LK2arpUxAlOtjIjEZZf~RQcx#^Z3cRYXw 4wAI3X)LEbrUgdgnG8VwpBy b-tSsMwnj3XD|M z#+g+*DcJsnw C9L)Jf nAt^5oA%t^1V?UX8NZmf`O;hB>U46Uhy^s|aP> z?X<@eJfJ{}@^LG!jSt!#o0h>%$z)>kTpaPcBO*-S&W;QosyZ;qN>rsr8%Zbq#`xB} zb)0P@r6=pxzkF_Pe*W6$Rwsd5jPS|`q58@4NwWW28Cd_yoJ3!>y|BisT|ULn7JSi3 z&gf7P36+mIMl#dkCKcoC=hrdXwK|XQpzqn~bbRFWjzd`jeF1OY+Ptsy*4d3u3SB3L zCseGy*}gJLBjkhx4P`x&-J51#8x`U7O9st_J3e#|^eNKM3tVUrcFt~6@;^U^>*`LN zr5SOjXEHc2+;a@wx8(HD0Wf*CYH%oZCpbT{-LU6v5vswhz`|K}mX!(mp7Ujwtt1)I zed`3r1v<=M3BtsSW|4@DWl#ICn%ICwUB0T3+OFAwqE`}r9o$fk90@_4qOO41^>UMq z(u#)h&cZA@1B^**z!QeNF*}*ADT|Q?ESFbFTGD*w*@f%FX`!4?0wTz?*pWbUOPJEQ zxOG PMlRa5Rz%J+piojs|W#IitnO!%M2|H+y{BEj~1IP__sES z;VCiO9QhNkTqMMb2jl9^(i|^}ET$q28OZJm<(rJq_W~RFKk+U_gke(k^N~}zVplx} zT^I9i-~`SlG{fgxHh~BRM7Y;os4GcbTl@!oD2uQkY~kBgExQRtHzey4 +>wDk?|s9Yb)R 3gBOAHXU)13yuk6J|{hRPc@yR0Yqj_gV~BBDoHfjXMz5>iP;t*kq!) zemgl_HJ?fm3AzU>3qe{D)Lib9R7nh+kJ$^iIxn>)lPp!umxM3Qf^8?98I!uP9ZtK( zV&8plFOO7tMIO~X>0DJ=4A_igz$qq@p4@NsY69*IFxzz~ER)qv3^B~d;V=Y}fq9X# zx9UwykmI^$9#y&e-XN=~S5hcRAwoo5UEl9ofsn@$3sadJn>P5?k47kFbx?Mp;PW}| z6Mn)cTNuI4AV8d)Rs_Tw@Fv+)K-)Aoatu%~#B9@fG6-S=_ _1^bU>IN3;Kl|n@r@i5)lM(qQPNS|f1Ule`+wyKbHCSnk{Hy68O`Wa$ zTf{ppxfkTu%ZMqEPHf<}LRhy@e*56+Cq$vjX6?WZ!QCNTLQFNMR1jcN*1>$0G;T nd&0qr8Sm@zeR#Q29h zXbA<#QKYcM!t2gcr~I0aS;OK#(uB@E$>T2+*lnUJI8r9l=|zQI-3B^aCpXhGbs20g zHFL$!;d z9;K9ktA2kS5GtH|*F!aGJSY8<-9RaIH7EMpdJEMcEC#ms-V#%Ld5Y$SPsqB7n&J90 zB!P4QzkpdUayigddDaI4s=GQ WY8! r`TDP}p4?Mou4w1ZN573bC w&jvlBQiX3}V-+=3nT$wzm$f z3@S z8usQ!sM9Fu71g3*9Tx5fjzx_T!Ul8_YG8VoqHN;0S3XqQAS^?YC4El|#66n+wA R*C|!~A3vr-u3Ckkd z@=m`Jvf_-S>rhCrAdSI+wL^hSs^Ty*Kz#`CGY@~%d~Zw$J_DZVc=kTUWkL}?%VuC< zJp+(N0g7ZJe^#`=G^2r-`^-7_@M2Y6f30ld0eK90sxH%gKB}ZT-J*&X@Kz_M0lo^% zbo0hM(H^06^1HUI%E}wa2D;*NGrN*r%V&>t?=PoMF~X-bQDJ$=qTv8eU~)!zPi=fI zq&g+I7ew4taJOZt8xFDp>?ExRX|?T16@*;gsV2o#?dCEY>5(dy$GiJISoEoIZAy_( z#9%9%0c_bfrD1TnW=Mj6QzT$nSDHAcBznFKP5}$7Y*pL8uO1sL+Zqy6n71j$+Kn1c z?S-^0R|Z7QRoA}7whRGb79U{6 kZhbb0Fqh^HxkRM1vFyN8Cim<(kSZEAfz?xL&zh{9Ue(nsVNc}t*P7WQC z`VCx>i&AB89SZv ALPIgt1(u0H@S6DN*l2TwRRba2kqmb#JmeD35ZZvrNrdQy}hLs2D3lUOcbbBa{x zoKQYs?BwB?2+iGdOLPYA`S|dZ(q+NhItH``m6r~3h5z$WRH7CiQ_(BJ_`$B_P07+? z?wZ%sNFS8c{ZE_cEa=w^?BtP2t&e?v=TK5=*ts!hgD0Hf?RXA3y?p0tc&9bl+;o6H z$`9uaAxAV-Ne{Qhaznj9FCMxcs71d+uU?&V)K+;;z;>f9XAq bsPs@T z6 &G zhY~Dw qnRGM zR$U;A`ySAEe?76@%Z=+gDDohG@*8`(D$me+eRab&0ZX4K+{X$Gb%qo09Ln}ld@>Z1 zh@J*7H#dc1*+bc;5pXoyfm)2v@^aOOwCnAGRbDi7`AOW!<8@=yGnhyc2 cmjo@2&^Ih9I1lOhkX%dO xkk_e5KXb*ZYEr H`nw!?}0Pw8FOx z2$HUxuFhNe%|fdk74Mz=4_6<@SZYPUUMH`QO)_-OW%%ra(}xSX?r(ItqaxYi4-Y hKRizUjfm&=Uui#F+Mj7?{YH#USXKUgx#FL8@ErCxaxV>Yw6Hn! zJT&w-e cO=;4Itz^FZ|OZw4JdxsSlJa?x=duJXrQWPan?x 1?WOoE~meu@$?k|7SNVBQ_&@LJ3cCPFFCOZ}w zKXd!v?(Uy^KX-ATMm%DS0)H0O{r;{bv+^s4HY8Dxcm6kx46m&ozVwmM|0|lZ%1-gf zDuaL}Y3F k&s^X5KDe(ByC#0H70_s=O1I-9YCvx21O)bP z8hfClQVRzvgVU<{ID<8yK4Ik$zr#EPg_)Y(+kQPHl~(CN8rKDX1X?@11Qu=*kO z^ZUeK%@^+Q47PCWK0G0$yU<$2Cq3c{bMAC*(B*W|-*9R!eU3@nyq@f!N3K&gA}@(b z&V1T1imLe0cWTzlw%S9w6)&j0@I7LhC3f}X0d@=Q2yk>Fm0xYD&PHS);< z!&3r`u9VhW9=ivB@*xoid@5Yh ss}FF{Hhz8$(q%TV!_c l=s2Yu~-O_&g~c3J*=instO1y-(xVs1k3mRia!)v{}3TXk|3e zCg5paMUMNAwIbb5iEmI+9>uO7xFIeP*$}r6g|*DS`#ZSX*#2`^U({{F`3~g^yVS?$ zEk&Evu4rCp`d*Ah-n%%?CuWo<(f#Bw^qUAsX*v?A#j>e=`u!7$1&A$F=wEI5KSk&& zb{`Ps_0tB5?^lta+~FKb2ni9(=n|c56aaZ?p8R^Sr9-UcOsLc4v$~&vu U zJ^rgqE@-%5H_1N{6p-v-Fq6)u6hM1J+Fd+xL{#=$;Kz&4jUnA y(57+BGK9(pjsLvUl~tcdeN! zjKO?zMav)qgud4V&v)Q@9vwhh-I9R`XV^2?;N_xn_I+;s?blp>0f6$|W#pILOtXA} za(cntQZs;I+G9e)MOw@)_>f{xR*HY3gIqhbt*(IDA5Ccb+&)bY!SeWR&$&uqFh2E( z5YZa%6QOg#23pCto`C>))HY|c31`KW;cK`h#{PFw-t1D>q7QcYS_Xd~#lFwbyS?>{ zkak%!m=06l6Z9pEM?`G(tjRiRzg$T)lP|x9^8VWP?H|1WB}8w3)O@FL_0J*l@GrMW zw}`R9kdl1-UWFL}T3K>`n1A8==4&4qV1oH i= zn!k5cMB;j=li|D!Tcc4=HP$*rTB>}}k>7|&x=e=|FgChf^7v-UEw$+Xs;@Ae+pn+4 zVqHtCxbyPbA7Cjk68Z-f@v=m113m r|8DlTYp6Y` zcX8EQglF)(D#^1xc#nol<>B*oQokzqYBlYcPVZ9gBZ)RqQ%e&9HpBm`fLxWwbu$)B z%a*SjMBCy7?&qCawIrvKU~V2i|Hcx$-;RGOK~>+es`Im>jU!K|Que~ieMacA(wn!a zXxe3J^+h r2=b zLe<|WviPVrR{g2R1YS^lXpYJjOTTcq4iEv1a+@5gk=!rBy&LIqD{FVmwKPii#|>2z z2tFXt!1)68JkZeN7r4I+uf3AA6UsHPV+e<97Xh 4O*#bbaNe(FeW;f%AebcA_tsWDbWm7j&4)orFgvX7)LZu`uKpa? z`ikX@5&~j*EANBso+zvUf8VZA-`9!?OrzdplEF=Ds5WbpLOG;^^J}Zodg%(*cuR%F zsIvk-hzNsGwA+(7RSxK1V7A)^r?XobpWnbz-TnHkanO@lhq1 aH9JCjFroxj+? zgUrcNT1-s&2*M?VS`YhGdo1^)AAn}sSWHp%zRY88QGFH+Q(nbdsf(()7xiPewhQht zL_2^iZX5VLD83u(P1Uhq5-J7-)1@vBowh~Ir)1VP7)_GJ2==dw)5YytdU#sCzxw|=ML1Tsc(ispm_7p9DgZm7ZpW2ze zBo1@JnmJ^)xRQZ=tJ|rL<(7yd0z+VcVQOueJ zv&6-fTc>ddj};0NPM-Bs%NcFxAD*pL+Sv}CNsLcl55BSZHIh@ISr@q~gX_*+z%2C2 z#Yw1?XtVfg@7i69smG4=gX~z^GveReRXu6EXoFn%wpv3=hw(%? qoSre$3Y#ds~Pp{IgPy| dd0HO|)U*lE~YR8b|RQDleQ|IS^E| zU9;0qXk^9o6Uw-gTxeS6hIk771uL6XwEn6#-&dLHqFM{T=kz;zXg5{7kpV(mo|Me2 zFV8YYqV$~yQ`(7Sf0l~H&H%77)YX#vviMxE?0#o~h<1Ox#wxG-lG8Rd1Q7YIeQoSI z6} ^ENudswZ7xeM3k4g4Cb$C3iR8vk7m z^23q7) Q%Awtx7KG$UA5mTEuAX}%)8}==SAuwmQyfQeD_6z9A>>;`Ixv2e48rjveF1^(v zWpPArL^W<==|;3zx*W|cpx+uy*U qQeMLm`pxBd36lfwNRO~JN8#|2jxZXDR1W# zjftVDiulw7*tp8t2WX&wdF7Iuk>y|p`t0(f2)KB)27?~+hEU3z_I?0t%a)~>khVMf zY7XHT2pdkW6nBC;siw|6D2Ln%@X)?wka({0HuIGjl<<90Nw8zYL+PG0n16I#uNl9V(qlx Achb#dBk37o)RWUT9#izw2e^JU`Ej6&^f8z zoRm$lmMwvuo2O2~73Ypz3@W<=_-qU0060r;1*5p;A34?Nkb>8PF3Sq|RDY!CZjX_+ z!))-mq*SK75gYMUZ_U0t_*`kKheH)vd8yuCd0gu|BYJQS>AXLHbUt)W%RE+0zIY&O zoSGn|CxE8%%!>(D&4q;{>8^ubxv1eSs=CdPz+au$c%)Z1I-e|#2!J`1dLppAUTIj@ ze0LN4ScV(wVJ25<0N~D@s73zc-NEo?+1~!FHgG#J#eWD;kvq(;$b>2UDaEox95O2D z;@d3CX=_564A_gWT4lXQuMiaNcQ<^}*1%k&=s_#8jAiuROmN!0Y*25$e9Z0>TFgQc z2%q%Y3~EN`0tODznTeL(AmzaJ9GHA=+cvWg{a}Qu>ukyP#!5^gWkQ{9PI}fzx_-+! zFHa M$OPjs*Rf)V0Vs7@_pg`W$=>Qiofzk&`*ujb8^j# zJa7J)Km2QAQUCE2H3)cDZ>-wi77Tw7_buQ8Dk#cQb*lPlF@RtbVw *(S4fVm3ZHXF%uD4c z^-ksLFB7J!Lki6Z@kyTXPeu}q3av(ckK#xs1Vt}btbKo*Y-q03qW3ox#iHP;4cwp_ zG@_c;Ti4+sj-e#ra?*FuNdxq+9g{lC3})On?&6J#x!-oZao^O5KxL2F(vCTs6e^tK z-=y~yb)MWpb1GC@_btate#W&jUb*w6`@hOu)MB8#b_9eqiYLIM+#mopCNQ@IdLQ!6 z2KcV9b`2cHmwe&Z7t**^N$^Q0MaVldN`lFV1ls$Y5_Px|NZY3_c+Aa}@U~I)V41~J zfx-Ra=4-LJ%>+HApZFoe!QyL9WIHP) @43`zsa$Tll~>8={pafyxDT7 zpK$6Rp5b&&O3Ye&a33guPN^;kbM9_?d(|!MILFJ=q0j*B3TUXAWNY=vQjjajJc& z)1uKt+}%sv$`@51R`clHPfVH*(jBaLWrfAQu?O1|uB2O-m3Qp?YrFCPLn`p+exsZ0 zV1>Da$ nZc Y(`twvc z+~9u+io!ogxDuN^tA lIzk50BAL#MBojs|G*jjcd-Hx6+ZvGn` zbqig+a0sjRGb8-}k!QZ6-b?$+Yy62AaxaJ|;h=Y|Mb~>f+#ng8`_cHc6lnof1R0F7 zq~krieNX74FR}f5;_~>OpsL@h#_u^jow-MLLkGLC-#~kd%zlLjvR5K?IcY>$mg&|+ zlCwk0pJ4EJsTu$#=&Q=IoyH%dhLQTzi^h(H7W`?cTcH-z5BFLAUbH`?b`vwi>-RP) zDw2=!;KI+p7KM^b=%i0%INq9Y26#{>@PztaV@H0LQ|mMxo&0wuTJJ#b@hP@zqm2%! zCH>bU>s{bfAO0;Ka3hyl#vqj}Onn-gJmp~?kN!k!LW9e$ksU7I{g3sX-$Obr*}UiW zXJPuwu=FXp?ZecGz>oV=Y3K8u*PNlK$-F>=|F7F)3{Tx%#j+_oPqv<>ZtCX$!lo*y zoARbk%`ztMmzZ%Q)e@@ck`sPqF;2sGx_%m!|7V21nzBD=b8eN&YpbLb^?C1fY>tHO zvGOgQQ1Hjvg1?7@{xGU^E*5Cl#RRRRByjy4-*xbZc66$b22<($zs#~wMSef10x7B= z?7A9kkUCh~1F79M>)_6C)9E(B$^SiJQ|(t}K5k7xxsCF6Pjnmb@}P@so14A&cK7DL zykOcU4%)&j%LEr(B)tcsq@Mm~EY4tbbYi=h5~b%@O+bbht8_hny1WEKju~A*LbOev z%%@{^_MEC7;ml6EnwnC^AJs1F&!x|KtBS0qrtt~d76!rpGjeON>7p5hIjw}1-KcY2 zYYnYbZ83Gg_3(hc@VHxafasydQr@*!u4ey7<6$&FJD&lKvh%Z#bE&t3yWl@GP;=#> zs `=ZcR3olj6guDh ~np5=N%FrH2D12<25T42(n%REWq%70qQWToE+Si;S;sc^=KQ%>= z7u;80D+L5M-c;tKKB!k0spo)T8(#ZzBMmA(PIvyrtGc^+W(mIizE4u(B{9Y!)+Kj} zN$8^5++#C!0J!zsqhPsf@q{i}qE&6yt|iR~1&!jJugi)|C~%eR`fc30` zi+yjOtIQO`O$ZX}YK;rdYWd-tmR&!qR)Xa-?g;Iv s9dh(Ho5h!iJa)hK)=*e5vJYQ>~+SB}WKom=Onb6WWVLFCbR_D7vy z-v;cPjWolpStHn9h8`t#lrs=w$L(e=L}%W2qQs1L(^+T}z06iPlXhX|ij %8K&9 zBHgm6`DFMpS*zJVAfQ%gd82SL&4??W-y~u$u->v{R(W#zMqI)N(A|`|y^|{n_P+gt zKDYF2n*vmK(ymDmPL^IN2q<|7?u!FaP`kl!)Pg&xJD14WH%pX@t1-%sbC;RVno@pB z(e7J`StWs1YaM3&7^*mm=B95f4SU^!nSUguG!kZ)=i-YBCAwA$owrh7#4E=&j)F&W z`9(M%AVVdWa5nIt_T~-bzdjCn=ev9y_|R7Xj$hh~-hdho%^JB5W1UyX&Ez+C-3t(v zRw=+?)o fDUhci`KosYMid^PAE(V{qLi;|iO`!9LHQH5BD9LHaAF#GSV8EX{u+ zO@&Je436c(^Ie5@_oC92DE)DNId6|FRD=W *(eh*HQ%rEYcA7+qi0BOO4G0QL7Y-93r+|ME**ta&ugk2%v z(mI9xT3xAB^Z1zLW?-%-3EAlz4c2vn2f>S-8e~&{xXKJ2_qvXyHot_`ua9L&3V;kv zU9G2=UOb&qOUX-}@duO>g-rW@*^GOARXplkOCR2Uzr2Tc@QvV}S@BOVs1)Xu` `j;?SHE(O~SK2R&K zx* )6|6Y3U8oO=pA$t^OP}?#ap_KWTCZ@7 zX66~~{^IK~xYIHW$WA?NV{U5q$;X`Xtqm4nS+xl!sEHs=l=ZEc(HycLcG%;XbK1wZ zv`htEu+r@;6}wo_X0!+?Vz|5nWL`|SJewW<$lX= %B&ulT^q5y0URvq+G7c}1`f~dm=zRY-?l}Ylz~%@4Th8QylgI;?V`T* zPc6&)SH{Hb%Ecw_*~g!DMl0gQd+55M{udGKSVf9PUYl*JahFaUuqwn{2no;6TZu=w z%?9==U9Q~vYsu670bMY9VeRF8&92??wk6jEUzO3|s)?1s3vsD`jUjc#6TV22Zxt(y zP}(|Crlunq;gulXYa)_~OMY8-Ocj}GzNH3l(qLXmJMz1x9HAQ=2we40QYU541)I|a z?{Z%3r0H1)7RuG#J!bO2>%xv@H>ZZT6>CI_qixCRZ8BN9t_-I%uk@7oQZDIXiQIe^ zMgq1V^fqlM Go3zyD(ymxC(4@X5)Ky)T{^c1WJuWZDf0H!ZRwk4g%RlP** VEvV7)#7TGnZ<@Vh>8`u~B-j;TYq!E_BVe|7kE~!- z>vhtp18~m{ &%2M~eMQPVAawlRb=y$|M9oG%3$I^4Tzif>0vkizT z;R4;g{Q2xalWK`26SMXvl4 WxebM9-K~$@O(XtJFQ2=e8_NcbB7C zeQV;H;sz`rbRT{D%j-;Z(k0C9*`oj{i-KlVf-f~i#l6RD3-m_Rjkc6?253~u*J~Q- z`(;t4yZTjft}w&eb$jgD#nSN-4FVtaMl-KXWbmgUYk@tA^rbIMQI7p{3(Kc;*U@}3 z+fgDxyA5)A#Js)i7ql}8{X-I5cianFU&d6;3 mr3#|{DI0( z_^&%@rU (vuK$ zG2SiWL-d}#dQJH=$kse0l>fa{aDPzrqM1eM79>k6Y-Q2R6r6L+YyE?<-E-aXIZr~3 zHPdYQ5&^;Sqo&LfX3IY)Tz&=P*7sIwN4+MZ-|I(4p_q8ZEQ8l-wNb?Iu!%!RpOn-< zF2_Pe(b`|C;|OrI!u-yWV4shLPbQPL&rLoKTZdSL0dluc7~A$3OvKEtq4?-vj+*?c zN?* 5LB+HWt~BsMJ>FesBY?d=J@mpm^2EIr=RI{B5$g* zF9{~q283i2)JGC>^e%O&8Mn6HEr)CJZ{BmRS`jcWnwtpz+ywYF0VZ4vOm9hbncaM5 zw~3Za=G^V@y-${9V;whzlq*(!dx^K+e8sb-uaH@ryGfB ^(f9qrpnb9FvQy1J2&hAd&-B)7L*1U|LohTctGjn7!Wrg(EZ?&c8(X)tN5F zYHSx%5EE 8TCPA>hiFa9f z(=*RJB9*fe>Ob|DQtfxw^lYL_%m96uY?Dv>@CmO+MT$ML-dPovnvDzjvgBI~!+q1K zt7ibqo@~}ggF?OOi*IS>E@tdh>szZh3c5d#x_<`!k6r-4+3w_S>AfT}>nJfzm82Ow zhmb!N#C@3x7%L6)eQ@XHPdqXr*ir>kur2J%G~nD502q(N?ZS@Y?BCBSG`yN0FJ9i0 zhovihyVOA{N3yTrjM|l(0NamBpLVW%&v0$!t-N1V#Q@-?_G(~X52!j0g><_0J*35W zrTLUN&3@&;KF9bP_0>0V4x6sW$R)+TF{^>|f1^ehbYx^(av83$P&o_jSSzmG->rOB ziQW8+-&wcKzF);VAy>Z*Xwz=WPwlGP?Lp1}P3(C2Wo2LTaaBb{{cJO}SrYISHLO)! z{voGZsC?phZ*;qAXs43g2q@j^F)b!Cx2eD)w? KTuIu~5UO5D1~G{FO{G6Ss)zNwtkwm;JrmvM~#Du{8JU$=i<;(Mg;s6>lVq)xN; zo?j26JgQ2Tyz85?ux$02#GlL3sO-~zi{x^f@GP1--bo`!S{%%0+k|tz=8mX-nP|F4 zlMLtUWY>2qXe-ofQRs0+w#g;F_#dpjWmw!zlP?@XfCLQ=!4fpM`v7-v3+@`+b&$am z+}&kxcXtTx?hsrC8yp7baG&?t-Sh6A-F@Eo+E4!vGktY;RrRl=tGW<3@hU|i$MAM{ z^$-y=-`AK)lnrptY+X0vibQ=A#Vr&S(8Di2?+Ip9*!0$qwiw@G&9*-Oc4TeKP07lr zb9} c(SG_(4eT>s(~PnVi{CHQ!PDm}3&hT_La#;$2fO;JEbcU=$>SJtvn@GOC%r zS36p+Fyg!owbq}oRk<6Yk6F-h)?U)&zp))z8~hF2v24AWpAT?xA9ak^xF+=cO}~ZI z0r@Hxn^vCj@et#!$fI9WE6 z $zV^E~IG0z}F!ux?MzXJb@7=D+#3 zej?;T`o78p4pX`5%L*KIJq{gAJluPS`dW2xCy fF zhSXeJR7~C`{q#$v$aU~d(1z6a$ij|~N~Ci (AWJU9J7d&~T9vpq>;m zhSeF6cwRrrEh+A$kKP<`>hdpSeeWZJuJNc@tAtoE8q0wh=ojwMT%rVJ^g~fA=G% |E@m!kvxP SGg($Mf&PiuaNqw)eR_M(7+O;sFh-lly8#=LJ#*?zaw&d^u0D0}@qFoVa zTKF(GiElWWWIm}mAy?}$v%HnCXr`hmWS;1u9au0G2~pwJYg{Q(r|UM`ymgsu UWW;GE&HVN(zJEPT$D0OdDyRox)2WBpZl;C-4B>*un-TTq&=0Mpq_^p?3i zo-iDv7jvhs6#kyH0Kx8N%j%|WrMX9-~iB4AcGFK^Q18>OYGD0i; zN-){vL~1SeM39#Ft}U$otPEJdUH(qQj2FEWqL43b8D+J=Uoe+->9tXZ$8qU;#CEkz z)M~bR?MeNZoo1ZzZejsy%eeorOnh9Xpqg*tX3#>;Z=UJUnIk!o{MYgwQ`O!PcEe&Fw~+rKokD5OX+t6Ywz74u5LB z5`lH~Vr+c`$-RtUyu!uzu;zYg8@f`JX5dA%$Bo79L-AkDb}D=V1dG>oxjDjV!-unu z*YmxrtwA>q$7Ei%Frm7$bdQ&$)^bh9v6uFfE(@T(g_ir$YPR4u?{90Z_osXona7-t zb8Gl03;DcZEh={f*B(XvzNAR5v}BJ@f-u22f8qjrm-ajBEz+;fFv!@missesJ1nh^ z_-C?AS+wNDeq0y)jfnO`AxPcl+QS;jv>P$Rvx1T7L@&7!<3^dsBdD5W{nebbD%4_f z&Gdl}2oFW0qb;39e;LXs5EIr6aJj2IeI8^qylq|$PEABZ7=L}+61naof}#afF@BiC z(YRc<74rIM9~x@ig2l}J;Ch=?I@tTs!2Y>3e_18z_ch7P(6A1Ddv$kn+xKc@?v-z@ zC--M2w8KRF0-ZueJgw#VvZtiK>Nk&jQh&3TYlGYuPAl$Lh|*6)F5_F>(pGDymzDVK z*;WnJ!3qQAA#ZhN!UEb?apw{AFUOw78V(jYQ%*R_y`ZkHK`@^`U`1gX>RXHs{&qk+ zP=N&ggN`8i{EO~H2l(cflc^^+zw?fheu`0m$#|7VLB;W_M}34L-mt^AvYn0i;BPjg z9eLMAKV}BC&HeW9$y6g|Sk7JUopj+T!AnikFSD{wS7=eUKAwxsqZ1pVE9qwZq$Fyc zD-o^Dvi(TA%U6*z%j@YIM%P%|4qgq5C%a$kD)+6m$ y9+;#er8@x}Q zMo;w#hY(wh<}K%hIYgaL Z=qYhhf0%5_pX3T* zqK!exiiImc`3+wCif>ff^eU!a7|H95;~##4TRcq5Ef_yN3mHh5 vXIITN z&`s;|#K9R Zx} zL{sl1MPJ_y{Sl<~J>gx3+ov8*Pdu$($m^@+7koexO&3z7nz26zHI)VpE{$4|ybC;k zfV~IOWs+%vP$e0$YA>50;Em?Z1djTm?sRHm{2pq@Yn l};AUY^^c`=F+_)dB>(3&2?NH$7{8a&e-W>6X23O zIeRZy(^`iH9mEFp|6#rIMpt$xrawbPbH#XLJzJq?#_ys}Z>|sp@yN;_C2TBXZ2NQ4 zlzmD&;R%?Dj962Wn6YhDOTwr1>FJ-mjvRgQDWC$1w8H#RY8n2HH=Eas(^aDj;=IOW zc=nx^j9$y|(Tz29U(3AZisjleRh6QQ>duZMIuNajMph=RVpbVp#||C9wrl)P3*`%d zfW2)7yQ0Fd!H -t!{S z!NB3G)8jh)i-&JVJ)h-D&m~$jWS=idc+?9$X9PU=`R7ln^V {RSy#B=^^=cQ zUVVz1alxUQV}GWGIg2OJ&g;=rz)OAUbXA2&W-Tzbc%_E1@uKa%{h|HWFNp3n_fokD zMR@yK$H3ZAR)Mns+Pcy}VJlS6c$BYA!_s+S)pfM2l2>y()Lrfb-A6z5sbv|vMyou{ z>db~|nw{BZHnqObeNT-4t8=9?fr*J+)lp}@T5Z(5@4=n}mO)=`QL#tQ;loz&@Io3M z$n=43y5LFou+uuT&a8#uq}5aS^ |!@ns<`r0zG%qCp@}OEahJAOw)6gd+X$vn964+#O aRmm*M zg@$;OHaWC<`c+kP*EYeXp_9H$5BE>puMYtB7mwZ7$hp<9YE!mOzz5ywvcCdwTUB50 zT}*<~-CMbfir;}ZPpb^BGx>Aa3gy%*m?L=bo?dEU4Z4atN6Y(nQb%OR5MKRp9 _UCB7Bs{&aA)m)w1^)6F^Ye2orj#Fpt)Ty(rN@ z< DrnWcv{n>z#+9cqi|C5Tj9WFbLYW{PF1Jb-*k=W%JVKB=% z%Wm_jfewUZ%3w|wz5GRk`fVGa&*JM&57E%dXYzX4IzXE#GB`vq-F7*mq{j<%n}y^- zS6cmCN*az%ERyfv`dpw4)oyG=+6J=s8^>9_xz#f%M>Z>T{LUl1OqvuTt1hX%xqSN@ zfde`l_t#tz-(o Szx_S8?q9&JrFSSm|Sj}h?LI4 z4{H`-;X2eYE!g-%|2($?v*n KE_DYMb}Xkv_E!u(+$eo6zC_13f^?E)bFWBGrCuEcZ&dfl5Ly|MxB! zLB!d%>#lo5e{2d^i@urY62)SWGwp}z(xJ5V9-TF?I@o}wL$Y8vGs_hh7iTygX0!bx zH8WHL?ZZZv5(?Em>`_U VkcPjKnmR@B`iPuMsi&{Am2H#E~7z2uA^}ZlVsG1g9R{d^cB>h?-we|%hO2E z;1jyR%ldP^k~k)iST9+;_X|6IPW^iD&SrX4x;M+uo66&Wgd-PH5ttt>Dro`$ie^ss zN#uo>JwKXZyxc @xyI8YCTbz{hI@{r2os!N zK&ea@31d87510kzlSQ!utOjmsvl*-+ |fRJzX$Z~Dg8Kn`fStqj}#hHk{l&gFt z9@ EJVJ(xS?Q&CUA5_Bcvbt?>v_?6ZXMKN1}I=|4V?>DSvgjIb$ z9nEU-*$)YrLwl{eHG?U!)r=20tExm e6iGQ=GS#StkO-V@oyE?nZiRDGK*vWv5ZEv)OrnPMOI^xW>R7 zch^EiQ$+2_*=ckb6qUkK?6L$n8Doa9;_E(|kQs%@-SeSWwyIWA02J=R!lQLP fuPz77S}^!?2)t2gLC;Y49+5&77if(0*HCqH8IuyN&w`QOiv=rS0{4C} zQeI*K`f{1*qtFK^^8@sIZSXYB=jX%wa|N2F(*}o)q>smD*6R!=@CPQ#fq+n0SW4;m z;7Ie&pjc+rFesLyXs-wrNKmYC(VY&W8?zGTd${|yzjdVwqCgY7po9 $-2u?$!+A58?Om#-*K=(r3%S`$P3hfGK!$tMB7e&(?AK&>@G}g{?9M% zvyvFrq~^ibO1 Kc-#H7jPcBLqjoBmoi?X@%Yi zQB+7H>34>(I5r@xG^U_9Qc16oBym@H(;U#4R7Z`&yY~{i4t5htVP@sfrwTt!aT&?2 zVF4g4sgs!emQ~jq2v=!Ol@0pGVr?kNZC+iD=?YWSqk>(bs71ilv`em|QDU$RbEaWc zBT7a)jD^9~!&vU2AkA-igvkMa&=6b!2~%5@w%rT8#r(@ZF#-)p2!y?c%f4IHs{H zC}bAqDt?=5IY<|6-JR7-{>wcPt;ye57JT##R&S7iKczM2Q9E!IUDh? 0| z?_-New{tJSJ54`4s~^^hzg}xW{jljL!ex&K9p-GB*qYyHCeV}8ovNNlJS_RsDy2e7 z+lYV~(_4N~L1v+w^x3>}oTVXH&Y2i(>XEkPb|Pl8>W*fbfwZUkTfhPdq{)=yo`f`} zXGsl3!Z%VCk-cy3IbCfrjO?@I9mZMg@mNZzv8Ruq_fg+-kDf@1IA|K`l1%&5w>Dvj zmlG$O!_9H#b$~0EA4mA&AjNjyX^oJk9!aN;x}QO2HwGDHkx2^8m4zxi$6aY&<_R~w zR|H8zBIiu;a5^wec4D=49Mge_$r83`_ID5VeA6r=fHRK?K;I8xYH_F5YK-rUfkC0D z$R>T6@d0%c?$? d1Oe%+70hnm5A#; bP^n_!PjtoU6=?H@$wn z#r~nbpnI^h>v%`t3S(8IQ|rl2HgGJ`G$u+Tte^to)WI)Q* CNnEjP}5*^y{zm1=<};Md+Mg#8fXHEwkK<%|2IsI&uMv!oJ_F`HdT6EL)*HNWq*f zc8|J{NNe2%)KDx{Qmzahm#U~hk&zhLns^H;T>N_~y_eF**o@$m1sEn^0cu@+*^;Uk zE`Au8{2o000$z+NSvIOr5m3Sae*#yN9Rg} *xSQxTYgE~IVA1B zvSJU7p_LtvA|g#bwXyBNRo4bQ{CL00tt`Nm#IZ(-!e%-UG`Zw8fg}D3P&hPxmSrzF zBeGA%v+}rebgagKPheq~y1SnEvWWU!jcuO@4;KH15`Jv^i8-Ojemnx8+wVS35}jx7 zIxx^7f8`^FS-$=xDcJ3m7tM`bYj8;edqn$pJ0;i^ZIhL+9BoEXA9cgVU6KzeX^k+q z=@t-}Aa}V8R>U`@>g}9kR^1lJ^p5iSedzUubr>zzQ*2acJa?lR@0~oOuj+}6lqCbN zz0-K9GiL#2{`Ry?a3QuUG{n*3vvY1aBFljRXPGDXnsGn;n{AQ~QC{8n? zNru!J&gP+G_xLLL7k(~}q{0h6S b&a I#wu^X285uUG zzksxIl(f=zJ^~o+0852^43Ja1szYZL75^s}b44UGRC(7V{MKz)xyMR0vG&iM+=> +pCc(MYT{i zY=d)citg=^Zqj3C2|0^ooM=6j@Pt2bXQB~=<)fqja5P26I7KD!H5+4fTIUdHKIpTp zK08Yneo0|MO+~>kkZ5I?K%#Q0Z)#Zlmt24mkSz5rrRr}*<=f}}_ZA>e4qd0z_H{q; z%{ipjsXq_z<4n;tG|jp09FhI#Mr}Cf=UfeEb>g>~D!+O!_!g4lgY1Af0HGo=Wykk^ zw4`9uHDL+L=&xHb7qVJsS7q8Rt?~667VaQh8yVP{N|@tgPRf4#mxQr>7qO@s5lqv; zK3Zq(oc28b%8Z_1t^Lh2b0e|@53+>7l$#s&0Na$fnCIe}u0go3Vf@as6u`&)hdgJG z*5f*Ht)DBCKLsMt=$EK 037ps(-FUg@t>+Uq#d^9fYVfVQiw?zG=rvwQ|PKk4RUoR!5n z ThXz*J6jBeVGM1Nb}ko6YM#O4Gv#8+1jin z?1`JDC~S!wywQ{H{Y&6<`e%9l!<4%XGJ9MPT|x?OpW-bQ%A|ZsOdKV1-6BJc l5&aBtbv^FumF zP-rQre~eS(lp@k5VeTBuQo20ak&p(nScTRvMJLnZ9#fp*lwX3ub@kgTd_dbHRR!m( zdk9#uGmmh2wWDq}hj&rT1?tGOxla|o@KYC_ }M1D_NoCnh|z#Wdy 6KT(Wr$(*3}VgZE)&w_6uj>kUM>u@nu(6Z;-|^4Xm>-19bzF>FP%Up~~k zw(7K6$}rCRG>Po$hilu`57tK{vh1Ag$*!28C@11)?3yIenOj!2l@#C^i4{?#Lu09e z)p}rjTM6~Gh(~l*31-z);51$j4*UgGenh+OkV6uU#%#EOv5y0_814${7K@Zy*<}^V zMinIuZ8yf92jvWFdpH1~l?SqIsf`|CcC5|$g+Lhhi4khr0M>Y#)@0E#K9UcKuX+E` z{+T1$Nxxcx@))>i9&q`m07TyWZURS^*d=yAIA*XOfp+4=NLzd_89`R4DJUoo7XFnJ z>*h3t7Nm6}#W~L_{71{=fC?m?tXxm$gY=1+A8%UYp&gGx9G?R7xWSu&7qBwvx%D=7 z;l%LjIXY%ucss7EM_J5UL+AI^4uSYRDl-d8=iw7=7B-;1vO@kr{H_KK|+}-y}%r0;M>p!%1 zWs>@!1woTn6ycF8D1%Dt19!5I$6*mQHYDI$xvrfa#JaWFFKT@v)r1M!H`}*kt@|7Z znC**BdZNe{l}`K>ji&dQBc^z*8Ubq+-&Tv^I2Um4&SUkGnV;^$BY$sV0Zc|ME|eoI zl=qlkJ-gxem&N^w L5jQCZxB7@ODMNLW`m=(91+RoWHW&6kc7jgLt-*PwV&gdV6Lh zH|rqbD-X(%Wc?c%g&@A=lta$qBZtJ5^7Ur~b#2R;J=uoCeU5uRA}eM5j|<6{G!Rn4 zu;s$jO;EYjX#4lDM;BurP8j+2aYW#yD8ukqY0u5t9nQ|^%HWg{w^zUL=SH!5bwP7` zSn$DX=+ut7%Bz-AWE@Bpi>oy}c-LV1X?P)OQj-SWf*)1uzLojM#j@0_4Qr3|ft L|fwkRXPeqG3=W$%pJhQUs%pCWytw=`k$fDA#h@)(PwB_Gl^ zeua8iGBT9fcfUu*C32yBy$Mh^b|g)ptT}gr1E@u|D9w~X0h67G>*_L=pkJqyDme$I zs0fZl-h3(UNj YQ%EUI?t1`*EcHFh>anjTob%@o $$al>oM=yF8jf~<-gX1fnoBCv7 zFm7}^qqNNa%cX&m5TREppZ7nH4f9%s+(sS&h*-K8Z7o=Zy`=X+jX{t-L=~x)pD?Sc z`r@&V?xWGrexSk`1BpK1uwZ=i00;1DEXmPU=c7qU;cq}Ti}6-Ck~ekg#|+nHuCv(= z4z7MXG{`Hy050GAt!9{)RH~jfd9T<~TzMgO0k;w*g2y7z7J+%#Lmh$?k2y&}kbx~P z7F44z;0S{v;vp45a&sB*C9Jesz#zyc&i;4A^}{6S28_A9xVcGdu#uVoX_#VCDe>;R zSyMcviwmyFlJ5s{zJ|YW;Td#z@?VcqOx}ysEIzc}X^BK>8i!B?Jo`xnTGrQsVWrr( zFiLwsuw7DJ{r)_yG-j)B&pmPQ+-#3ji>j>lJy?RIDfza}^c4$|zu1_BuV?kf(6I+d zmIPC6J`9APC6NN(*T!xu-cyGtux#N`pxN