From 45ec06c89763e6632aa13d65fb40fe5c344c3dca Mon Sep 17 00:00:00 2001
From: cuteLittleDevil <792192820@qq.com>
Date: Wed, 16 Oct 2024 19:45:15 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E4=BD=8D=E7=BD=AE?=
=?UTF-8?q?=E9=99=84=E5=8A=A0=E4=BF=A1=E6=81=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 14 +-
example/simulator/README.md | 18 ++-
example/simulator/testdata/tx.png | Bin 0 -> 272344 bytes
shared/consts/event.go | 10 --
shared/consts/jt808_command.go | 166 +++++++++++++++--------
shared/consts/jt808_location_addition.go | 73 ++++++++++
6 files changed, 203 insertions(+), 78 deletions(-)
create mode 100644 example/simulator/testdata/tx.png
delete mode 100644 shared/consts/event.go
create mode 100644 shared/consts/jt808_location_addition.go
diff --git a/README.md b/README.md
index 5498857..1cfdd8c 100644
--- a/README.md
+++ b/README.md
@@ -1,12 +1,12 @@
# go-jt808
- 本项目已更好支持二次开发为目标 可通过各种自定义事件去完成相应功能 常见案例如下
-1. 存储经纬度 [详情点击](./example/simulator/server/main.go)
+1. 存储经纬度 [代码参考](./example/simulator/server/main.go)
``` txt
jt808服务端 模拟器 消息队列 数据库都运行在2核4G腾讯云服务器
测试每秒保存5000条的情况 约5.5小时保存了近1亿的经纬度
```
-2. 协议解析 [详情点击](./example/simulator/protocol/main.go)
+2. 协议解析 [代码参考](./example/protocol/main.go)
``` txt
使用自定义模拟器 可以轻松生成测试用的报文
生成的报文 可解析成详情描述
@@ -71,9 +71,11 @@ func main() {
### 连接数测试
[详情点击](./example/simulator/README.md#online)
-| 服务端版本 | 客户端 | 并发数 | 服务器配置 | jt808服务使用资源情况 |
-| :---: | :-------: | :--: | :------: | :-------------- |
-| v0.3.0 | 10w+ go模拟器 | 10w+ | 10核32G | 20%cpu 1.4G内存 |
+- 2台云服务器各开5w+客户端 总计10w+
+
+| 服务端版本 | 场景 | 并发数 | 服务器配置 | 服务器使用资源情况 | 描述 |
+| :---: | :-------: | :--: | :------: | :-------------- | :----------------------------: |
+| v0.3.0 | 连接数测试 | 10w+ | 2核4G | 120%+cpu 1.7G内存 | 10.0.16.5上开启服务端和模拟器
10.0.16.14机器上开启模拟器 |
+5$DV93={BNrwZVw_!4j^sZgP);^= zvCHG%-#jtA_3Z#xy7bu4)8Qu0x87F41=ErPxM~9iS3IO+#msqXt;UJ3c!hC4v+F|Z zd#(xfj-;j*;Nj(0CTe~Vc)n$mVzlT^NAj1_5%d^OQ+i*|cOlupR=053&kkzrSW*Bt z^Tifu9IcjB+5#y`gZ304U)Fg_alMYJ);<_i#Uq;k>}W!F!|bx52gRS{UuS_OdA(M- z`N^)oS;+l4*={pr(A5%y_WuY2C+Nx~tGPBhm#^=_;okb@K61EqBA-wrU=#8QfCOo7 zEH8gBA!h%JM6dTiD;nIBdG1tRtw=&-=me{S18I;y@aHR9coa3eZB37e$-#z;&_Saig08bq&M#m)D9&j&K5On`Y71!cB*b+I8PN%e!QuisCsTUB#~fNhVXIGlsTR^ za}pZ8twv6D_g@t{=uueH7D_T*%HI=l^eftq&aK&_P# !&b zV(3yQ-H kp$#49QISp1 zM$^NdVYkPulHQrvP>g3 8z4J^w|W$5xDD#+QQ!Zw;@;g&Fh7@4+2k9$NIbS;Y}A-g zNt-OmI}`%Tu0=eZPzeo{{g8Z~qe@{=1Q%f|FU$6wa4;E7sWSVP^w+{~g!KA7VGa`j z8*5lo40BcU49xvmzt>KOvJze!M);uX=>-}+UF4ZFDLL#%XAYI_{_9!()=p{bRsqSl z9wVoZM~*)`?KEtvB`VYyR9O3)QlJ$>Y~3t=NV-{kETgN7pK&gqDv H+pp(@2UF32=p?dek+$}^L2J HD|+nP&feak^z!lpP#!006nIv9!gs&lq_o>U6W|J`jDs# v47boL2A?8ejbKIf3Q2KR$1E#KG zi{$gK!No&G@Wq~g9K 4HLoe#!`d zikv-@lhtO8(l5r&mS;K+MW^9UN+fadY^I$++nCAIL;=Ya$;IrD3*0&*7s&69ze)=q z*>j98mooj#5769|)&Ld67Hj9hX~2f}vGEA155f*Q<1!%b>qqgta@NE<(&^H3z8H zQX4Q)u?m^we?s4!${X+dOi)|(GXbixAxzgT!f Pp+tzeBqJ4&^P 6l^gM+HTL$HgW*qp5nMj_IyPP5kR$5G<);K zZjb2K@gj}PkLRbeml|1}ZDIIp^OMds>cz4bM|0RjO_{ssE0=uBUGX92-s93 GOUM+Xg5J(eCk5w(OqnFj$q*2|Ra2w^{&62OBH7X=weH9*^q7X9Ag% wt33lvQgf^X zwx~FcqExcS|B^iZcDUR}AOplt=Mtb_@H#Fr6JI8UPp#=yoRp?5BCf=Pl*el$Rc$yv zgKF>}xOGt&pYv{!N#}@F0=<)4VF1Mx3fyd5`tsqnnfCw^C#-1`$vxKf<3|K#FVS_a zGo^j+p2uSZuUn1nZ8u$;Ho)UYQS4dYuj+i$%Cy+*)2XE$2|^N3&LL^@<;CfJcO?pk zmMblTN=z8Q$MtEy*&gD2*6upD N_z9ThfLC0=n_wZ9cQ;02uSWU-u*Bea(Rxu67&S{U K zH|*^W`ilRQsH_qd;4ZM*`DqYP*!=JaSQPb6*~4Bl25SWuXgz z*n$+^-6_dWJN>BarmXRK;->f~uA)oE!1d>)UraFxlY@(=>ouB%G;+cnbFq>Ys&vz5 z`(Pwc0Sd(wIi6e`w$AqJU5XNF9p|&o)}1wlv)yuj4ESN7Pbz$!M)*_yh<+&ngj4Lt zmuvj%gQ*D0Di}e&-uc0#8>MdmWl1J0A?b2~^eWc3t@!V~TKkw#aN95xH5h)4l& z#lyhF=kd5f3w!yLcqG*_E?$6dzMZ<~VjtjW$#K7XCAX}ZLe4y1Y<@aKvPy3a)(A>J zFm|aMflrwC7P7nsWk1L{M9JU>n3pXDA6&2PBTvEw2z!g-6%@qAijlNgZyUaypXsG% zUlmGLIprXus?yM9=n%vfuIuh3W$x2@KQ2-#O6|&rijC jCrFOno-3oD3BWpg!_64U*X~ igpAkK3Dc!D(OiYkO`pIl^|Ikl6J;gVSPNbXKV z>x_fV&7SW}65jSx4~G}%`Bj5?;6wPSS6K8ZDr48!g;}F0!&3$IBy8-lL`uC&UAYsY z7h3@%>+bLQ0x$*B@dD@hhOs)ccbJOp)rU0n%*3tq=Owo)Z{{2(!kC!@3GY!oe9!Xw z`oHsGkPqJFQKzh@(xnPFY -Gq3M(geUH#t(&?YF zQti2wRMVZ|Q8YDx8qJ%uKc)B?FNnxf_|^$Cu6q8kW2Z{MVyRs&AUNbKk Fn##^B3^oMlb3IKQeg!Zj!$bjzx zz4`_4X2KXf3Llz>G7JXNSj5~@A#+{jKszUq4Zy9LY`+ycSF{{VtPdzLsh6x;d)7LY zKsN|^l?*cGlP*UpgZ0?~#k{Tt;O12ti`>RHO?tgm>!AE_d &FA>+wnrc6O2JTN2nfv;V49R^)2)7TR z`Zu8q8kbFc0?U@z-A>tyM|YWXh=s|%9PMUb(&OE}^&8MGFGaXRfR0C>FQEBT^?&+7 z1VdUVn{X@>f6EHoOoOiKW(#_JuX_?5jxX%H0x)bUSMNH@mmk`dXCI4{K}2uqrwrCS zGKTa>9P(O(GUGmY_BWc5b4qabG!>}D5jvrvn`OLWIj0YDh)MQja9s>cY)lNXG_2CJ zV|H@c_hE0Jg@Yh$KMah)pet2yIh#PI@4Ja~q65n9_!|wqR#I8uP|14Y@lY87?XCTv zr Qgrrg}$Nl)9;_64UJ)w1;K|6$R)zvWNt{Ydle(GMr~tY$ZHNy4466 zfp(3xdmFp#ao0MqZ$YTDrp%h~@OfdG)#5z0r0zO}P(~JeUz8@Gi3A}w5R Zt#d3D3XL+T&bFVg*{ zUNK%Pd0r-1gc>{c{HlSuK5>^>%bT7Y%+Ctwtkx;SUr|R(395Xg8X2WliB?M7gd8f) zc`+iT6XpGz{2|Ax?uxL+#gDH ed9+ zr6M)uBd@Qp>;`aSN^DPS(%#YILF3yFQHL$a=UvsZzU$-8Bl-s96xJr3^G9=WeH-%) zDe_2ro9iz6RR9|!4xE0oa^mrYlzsj)o~NQy)E9NpY2mFJhF3$HvMsJ DQ>E&$yv8ryv)-|^@EUgBqUFK76g)^CR6=lA0?g|yTp+tt=)xlrfWY~NyLo)qJ3 zdlE*vDqlt?tg;PPGKLmPQa~qD+QJEH6T-}aIm`j^oWCj40%cV1cSG7~40xo>rYSWt z#HzKjb(XUX58vy9vsLSqh{AlS`@g+Wq|lKrN-%4>nH}L9pPy|@I?k07uvx?lrV(H^ z(j+8V4t&!2>*MTt2w5PB9(xXeo%4u3zx@ N*E(OGomOfz_HMUmS;txK-m2U zh vNs^LTU_4$sNb9d9Yd`w0}| zGeN&4VmCb&_E_X{?&1aTr;0zLYZ-g|^GlW}3`qaSHMcglF5*JY9$dFM-yiE^1Qem) z7YGY{agBW*>3vi4Y??ZV`)9&kW%`~BY6Or@w5p;L&K@9%WY718p0gTCAMR=d!M^jn z&a1eb;FH*&>YIFb=MhUt_NsAZ@cxB PQii4lUZP>S =MyxROPS%Whdk#w%#0UqP_Lfgy;>fCyM;3FuWP+J%3dOHZYR?!4^ zL0~(gZ4HkRldjj~a71v# sb$~C>VAw3|VI$N-f+AeuaDf zqG`3X?2C>x&?kE8Zt8IQN~l-tK`W^-pn;#==aA3oyV-AkD8t#ND7svdPlI2Z5XE}_ z#+j}CJb>6w=sXF#`Z=ruHzf!ZYHeP>oE!boC>!lFJ%GSf<*m~zWV$hdmOGt{VU(5- z?*)n!=~fhXsC*bM*)6e^{KQo}+~IM?@*|Moq-Fc1#h70gKBW{@Y!RJ3bQXyBxFlZ! z;_*jy>R~R*IdjYHTzHDFfg Hx@#U_K+>N~y2mmOZ4l2$@yMxneGXYDGL)z2K?a zFQU&!&g#8Cyi$=R_v?~BSxX=`B^UJS?9x5yv5$QETo0=xQV>Hmc1gz5dWi+ksIID+ zsaj-3*2b#Qo9w60UFztYV5Nq8=3}QuTSlz1pL#JgXO`Te#6pb;k`uf|% zaPs`iZ|pMh#KgrR(nBMG6YS92^W55Ps;f0DvN1v8gDWS~W8jj5r6+gspi!V^OE=L@ zHl`O#sYV`3GaaeXCTbA>obJNt-b&_vg}bDdOHk9e?llDUZ)8K}2=5^Rnp@7adOOMn zU+3wl0ct0iPnLc!;ui*T;dwAQdx6*_j$(24**?&=95v9cus3Cx16m~A{HyRfj@n$` z7S^#;t#ykjVBF$s9BQ{$lAkFuoPK_sN5$Ol0Bg4-N@sl60?-1l^~^sViAhXA2>(7k zvbTk0*u5pHgJL%UL6ho{9R-hx4YPL}6Up9vygsR2wP|~>iAx<4S!u6)F|6KN&&k~> zsw} P6v^NqbfXu_t1jRPr?} z=)n{d*SmOek>qqKD+M&Bw~kMTvM+?4Lvj&7whtn4AACni$l1kNiG!<9bE=QGE_NbU zNz9Lw8#xRQPh0=E$<%DW_!=cNtORt$Mk_t1^$g)o*(19CH8+x0hhjf9qaW#XD*SC= z%mU1wL!-QqGeDMmMO*|yAXPZ#XI?(GuLK8o+5~-^pKq6p6xIJ7hUgy3$Ae83E%|Xd z*_I@P4=r$vs5wb*4SSIe8Ra0eARUuaSTFJY`>*+N@mS;>pMo^BOjr&2T=p4b66udr z0w}o!Soh82Ci7PT?tz03HJ|@5a;n#7uqQsS3zasgvD*z;v@DZSskBoLSd t@YL2+Jja-f!9M9S$W2{#* z=UCMPO$(UxE^I*q-;tyPw27BbhEfwD2gu|w&fg#*!^hlX!NR3X(1DM;&aWAKNy^9# zFOi=o04?N6({P+-&4br%?;hsR1!u1pPGKgrM`QZB*t1Q?l4WY7(_9-DQl!K{o!ahS zM@`%^9~+BQq&-@R)Re85OWptUeb2BcAa8-{aff!E;;TnaYoSh+Eh4(0SCka*O+RZH zkI2bRv>TjoS2VCVJN;gRTuwx4r}Ecy3w{a)`bT!axQXu3&x#z}Nn1tP@eSyw0%n>Q zh51a|x3!rF2AEoNU$%O@={Bx7kvXq6-h3bVZ}@~mVEY^oG2aLtN!sPm5Fu5JWopq; zrU;gPok$HXBjQT^s@#V;1N$HfLiaz>?5?L}Wo54z ~UeI1^SHl|bW9%w1cA}*CC z#nUHQmaYMmEn?lC1QFtbx@51Jtgz+A=yenI0L@CEA^CZr(vI^)YP=Lzq5{v8X9eoa zZL*4${EVv@*{qKj5NG5bJrkI+9#BFfY}p#CJ~QYSDsxSSGY8Za5;;7RMUJM-bE>O2 zB$F8OsO41~uzO~u6Z&EA;%>Gq8!&@xArY4Q1IK0hKBQnrq+pm9!c&7>kf=qYX6(hx zoH1akWy`7g&-cjL3N#snY{tsq!!p>nVmzuyvCddjF4L~f`7^tLFSd5QEM *rN1pDMHeL$2nujwaf6;jsN-XA5e6Vb5TY3wI(!8`Fbz4(XzaFKc_K zdNS}M f#5x=knL}u{#T4}WbAJII%(>}S z!*<$cyX~3auo|GX|?U`=m)QZnaq+4WW1UCQ)E}Xa3&`Jqs{vj-7)@pkA-Pv})}` zrG)83io1f}zL|N72ckD&KG&tkYGKk)V$XcXMh9s-I#E|sM*5sU?eyc-4Ij;7T2j28 zoBdu?(qkim>U{=h-vqn%%jF%?CSJZ3`%sW(bsP-K%&NhXC3u#v3O!er6PECemmgXG zeqZZVs0%T(NeE0Y^c~oF0JvCTKVu+a{b8a;A1SW|DBxPgK;Y<^T(A#Ly08P3a}3-g zktJj2p~GZ+oOBqZ7AZl1yvcEmqRIuz>$c 9ikW1!SYj`ppM*VsKU3p%>r~DZTTm{_fFDHu0A{T-_&*kNevu>V?KqV-X}; zn~APkhzZBC_0qBmGE3<88PFLfqX=>{0FP3BskZ8j#3AjO*LM#+sRqWMzy=lH#l@xT z+Cvjk5|BVwxdv!@zLW@I?jIvLqN9#c7pkEJYFSrGT}s*mfPZ`mrT|FpJlypa`A4ng z$gS71XU~tq(j5z5(;L&w|BB|P2xKU9zSqU$t^$RgPR>>c9h!WR0wig(JwXlF^#_f? zK~Bl|ssR?cPH`0qGGd?;6StO;?j2LnOrXzcW7zWa%aDd7Z+C?lpcQ-3(bO7;!tVT_ zp_Ja!YFOmlF*tp~<*-0#hS{6W3&nL&&!M5%lb**{alR{5SIxx1b@+6rb2aK>h5FxF zPFpz$R3qkdS+Nv?>>Gg(s~`eGR|6D(uw(KYIF3vYV O=y$!JbB`r+*B-=ouNHgj!VznE7-F@zdd|QlLij9512S9*DI)d+(PT z3PY3}Rv%tl@y}vYU-i!l#|a7zm7&|&|9+WgarYXP)->YA@6SYtk?0d1V+Q@~2))qI zOr|aW2XYj^FVna_ r`8O4t_fD8n>McS93oTDL#_8s9B1?%kWVD=r TO1l^@e{M#p zxK5 0hBy=W%?e}3^%tN}9lvBIc%IEaiJy6%{~@KmQ1K98JO39e1f4>VOj zskXB>enhjR&Hd0}=uIg2Mt{w%ma+M>;awlX>xS-cT^a|9vjtnEF?=<0#9>*?%$M;l zG $9fYB4J z7?2QPWGm5dg7Rw%Gb>w|nZk_)E?hkQjAI3n1lpB#>w7Cb6@Bx*a&AkZ!$lhgFnBP1 zL2kr8;ines011Z>wjP1lL OmyM6 #R^{9L4%tb}Hmp-c0ebzSAg?k >HET16A*lNusSx$kZ0XJkneJam z?|;v67XRL_yb)*XYgqM?ejA|@Gk?O@@6!`ry@#WOi|0%20xdSv>|GzDe5gur?au!* zW(%Y4uX#MJy2_|e{puETPFnVXTGhaLK3)&67^v^MPitkMMGw!&%WPo2K*G *Vi9592icj+6&&sZQ$1_X*cFx3bA_tYF{!h5Igv)xK(b$81qXJYJ1CQ~J0! zKf6Un5cn&KedmY3h|8Be7>C8VV*xo7!l4DKObY36legFaW=X -oyF>M&-f21JWF&5P+IN!I z-Q-LE(Iv=x1TNYpE{gM)5)?&y~Cc=IN;fl;a#o$oc-)brT`5cZQ3+g vsy785WD_msjQ zx^FWO1f;j=sPfW)kqtj1>2~C~a};8q6L#8@`u8x3Z8prUg73W-3i 9e^wxaaN$-j%K_fX1SE`}&W{$=kvfqBm{% zFFHDiwLhSm8n+VD4>t$%rT=|&Axr}gQCFA+=@NJAt1jhfbgjAEpAw*;cpuS~(yUQE zDkLkO=*?eBL;N`1q?gm>f3f$~QB`gGzp!aRKqUnM1CUPX*r-T{ba$tc(xswwcPTAh zn-2BR-E5FhL|VG*&2@h7cs%DG@4Msu_1+kF42J_@%U*k~xxVu|KQ-+$UZc!hF |Xo?8hCBlgQPK4^{yBznIE759{qkHP(b{Nsi z?uFjFA&TSXa`5eIx?b9`#0fNljf+x*zVIYp3>?YTZp+oUtVSwqMeeRNJi^V{cTGCn zB%KA5v3r9qsb(#0GFsM0tY^ EkFvfvsPUH{T=SZau$)( zLT{h2+0$>lA6Llq#-_KyI&e*Gx77FU!o|kLS@Vz`1d4sTQo=c6 gRyqI9ir18Temoz)6=Q6!~!uaFQLtUHH} zS1F3l(aWbKAeD@U+Iey65=)mJ;S!a4Pez`In1Ai{5bS#)@;9-}E-egz>^KGHT2Fk_ zP_0(|9!bf2VnlXpX04-+gnt*^TT=*o`_{C0FGU&B7wD 8jJ1a(gZGa0unV~3gMA|*)%dGj+ pIj$uq-96_mCSF*gVFaVQ-+ZrYN&6JTIk*lhddBJf_dudjRZBUaTK>Cw>Z z?v*x;XpnYeQG1r!Nou+4hn?ICjEkF#d(fUMPNMmn`f68Q%?6NTIF~aLR}F`gIle0h z^`1L1wel3zq7pjyFKsMt)O}aj*u6)a^U4U9bKvrG7D2j4ByZ?g5x<3+U5lq>*<;C# zKTH8Ck qHRQV_?1KvY>@C2Vl=`phL`+?tYvKR&V6DWP3f=L$J>`%{RTg8uB(sm#INRG>+v6 z>-zDa^;D>2^Oqo|B+Z3SR4G~4ErP*q8&3smJ#WHmKt}ErJd(S#r`7j(F&8EOE%Iia z;Xr7>+YslX5hWAp2UY~$o>9YkZ1o(29@2i6>yp*8-X6NV=-4BlGhlyXjI`06W^+3w z_nFI9-q||PGy>nu=O(3tckauYZ>A-3DaGAiS}*~0CT%*n>pi#4L}}@|@AqWW%vd-J z!!x*)S3yc$Jg>F`HWBFL=%=*cJp1QN `34@I0Qk1Q*#3NT`ku7Q*nTI 5=6!`@`9?g)BN~qvx-T%od(!uc$*wM+KsTeWA75fw377G zi-4Ai|A>E-kNAzxfEX4AmZy-NFv@2BXuqGx1Hf$C?$1+S@G0M^iW>-zHoIa$nXjs{ zd;4A*26eT H zE=DEY?$^thDi`(TdAeW=|IB%MRIYMuuT;`FJlda&84j=2Q%yYrQaYPw_N`Z 3}w{y*ZdqHC` +oJ5pOWicyi9v?@la*?FUHE?_jIkBy1i(i@UBx&XHDQ zwjVde;n^sSoMeb^6d`R&rTetpSaeX+CicXa{!uL>s&Fn>t_Lx7aN3||X{ 183bo9CDQ=OD1hTxHwT1k)Cyik9$1P|zI@e$B8lEdNnvp^0) z$J}2+ZBzGpJX{uIa49=E{%s|2_q^ &>2YTW>rHlJ^t}y$!_eX0DK3CKxdb zo419OUmsLeDxKn@iuE0KwFNd?(26G5$K__h)?lKwc#!0h?)A#Y85gcyo#_J4VUnP= zmXTQbhMXO7_n5X=G8Ka%g5a? Aye}4mnNNr6?@q2~h{YhPE)eCJzG!Zm35?+}H>Gt2~ zwcTsGlDJ3n*o5g3#JD5z#TQ$P;$m#lb@EfLek;dR -EQ0#w6GV?)0w;KBxeyM;j@ zq&{W!DBr^W%EpmzplHQiKR&(|y0*PH<};0TZ{hY>*b`I5`k0q&02_ha8`n=41{1=C z>awG_*WSxa1^HqiR-|XX7=5BRj7L;c3OY%(dmF@p+EKac_-$e|AdP}PW1$Kkl+7n8 z&&K>kYf=u>b)Jeh^}KP?N)?x(IL;ErC%&VIFb(!5yZFZ2yw&S}7C<1PL2q64mKt(c zx>^*Uk)LP{S)l^?m1C-7Gm={H5?-k)_S)$P{V%OWOJ1-`gagv7li$U?iG(+l=f;4V zb4Tj&_1HC=52_pCQMd1B*k64WfOb4_*W(_0OP?-QReXHDjl5?`xG6Bjq3O)3*(Hqc zqqz@Z4yo^e8pl|_H>Mr!;W(85WOFgLU>Ed)OXp%YSJZTJr#tFa6TrR<3J@u?;F1kz zpCr>JuSjw!@&ftj2R0o3u}Ze+CKHGPZop-6%w!`ilAWt&EG5RC0n)qy`OCYlCLRIS zQZ_PCQn?&!0O1fj1uE>9Etq>=05 G3CIP9$C2eZzEPH;_p%ORb2}<`S&M`S9`7(jaawcqh4CHT41P(7imy+ zv@dW#7UbZ&LsqQxKnEr!Y>f!`lC#>W@rj>83Lgja>ILW=FeU0(n;bl?6 }@PfioVVpbSsxA%S5IM(R2D z9;hTzfjimQENT&I5lyY5neP6sC51nLIV`QVOP!)g`k{~z88G1zIp>J%K6pLnd+YwM zj2QzS=#@sRS7n$Z8vzA}oU(6Dg&a!5&qpyxbs}(pe%5|Y(ksGOcy(V4wpH @a)f3S7|cB%#UbL#S{tQnQ# 1uw?o0?{nsDWW5%G4KdH2y`?E zfq08!M${8A6VZrwA<-?qj4{8;@quq#8weUnB76q`Xu<^fmNdWBM85Z^!?jt`MVQ!m zY#2C%cO%|T_L~~Fg)DDz4Ui_#7Fm@7>80j9 }f_4FaE85{6)`v7VYbg9)uW5?Nq~Or}k22 z!kX}@0&4!Tzy%&c7*>d+Xs?II0_u7om;3J0eXX4yE`=QE%E1S&lR#PYIXE1={#U^D zCw(*+6du%MvPB7GcmP_@MKK&DR{Ik6CbLSKNT}dgrCPPv@fbtmxblDI7DvUdjD?Hh z;Y%KkDVN9bS2<$%#bJp(_?0W*FCP g{A7nEAr5cnWHE2e18Ib^0^Y{+A(Pyix-IwPWcB z-=hyKCEVv}>_)+UX&KV#Kgh2Pf@_K+Yrnm|RsouEXYvIg7Ksd{78QX+(EfHE5jT+l z-cMoy6ppS9t;LuK66gM}2SNBDTnr|yilA6}b8|P}j`)oM8%2UR%b^gfHU- 8<@W^(P0Wd%UUm-MMRL7D z6Cl=tt-8GbK_W5wbH6`(L^C58B%QB-jBH5baN)7mBm3N 5|GCFFJn^5iEAsb6A3iws+1j4;4dk!uzG zX|{kNy&0~cE`}0Kuh2)L@400&EXUjX4T#w{l{7h*|BrSD6c|?+3M%+ZSmMu_-gw_& zAVUlZ3F>b=X+cGn8h(swrxf+}j0h*=cpL2fwIfo@jOU$3?K`h{`73|F>Yrv5yyTie zu%DhpAL !iimP>!T zS}*^W7zSm|MofH4G8n2-KvdrvbBR^@3c;_PLm+%k1Qk%5Uf(GH^xW+-z<|cbj;w#J zg7ktr1vIkdQqgp#W(An4>x;?uO(M=sc$i@BwDjDcOKU&BCcjYF+%Pl5AiR4Th%9~Y zXqHR0SsOPw{14HKe&-SyhYU|H1W6zLRPY91e*B9mT$MvzDB_kN3`5Km@s1m0U%5t} zesb(*Q5x-Z1+%73;CE*iNa1^`(43s=I{cemYOy~$kwxj)Hm*wn_4R)kt^rYOLYe{5 zbA^zrKPLMw8LH#45AZa;Xb1kPt^t$$M>#wD41y-VKidOdu=+3^8j5qIn4GH#DyEj7 zFN$Bz*5KbN6}YzpY&hU|vt8KY{aIWq<9%nLIpa &g?l~4*E zSOf@U4{1^m{%Bgxo7NbxqFeBPh!-#zqhU7~ 6!Vlg*Wqtp=0-)UKsZg{umVQ zJEi-R)>z3uj7uK>VqDtghk4i_B*~%? ^smDPrUHyA;15}VEMg7kJB)E zZ3AhEfyGegJhg*bWmODR0CRfS)RB*QymAWU_A4)YA6;}<9(x8dPd29 zYN$i_Kd$qScLULxVDS6T4e>~S{A`!V4+zBQoX)_wn*+D2$z4|`ClerhFygTq$zu() z9cz-o`X5(VhAC`5&6~GU*L3L<%Yor#Vv~&ZOGHisD=rvgq<{$en->ZN=9LVJgV)K$ z$E6=XgHPdjZg|Wxttrd jSh OG+ EL65<=$>G@C`p)t#F)x1vEvAybeSB+C) z`D)lk#Y)YH{wPStEQ;%HQynqqTGVx6HEm}dj@{Gb{&r6116I&-(etfvq^5alY%1^o zA#0w_mmkdfH0KXP_CtX7RlnE=1d#iFeDf)-$5tz8MZR(_&!|F|hF1t!gX;ktRRNfE zGl;U@2b! MI58Usqt0ObbTbK`pzmf(?(fgIt}0-KnqY-_F;MUv?yZfWi7XZh zrnW9lbC=2IVogSAmV2vIV|^BQ8K2B5g81sNYmxqxA9i*==R(PUsZqyPwtBVWcz$Bb zbc4E~z`mDi?CHC(ZVfk&&XMqau5l)+ie01Sc2nCg##4tQ&189^RmxZO8^7~;zgMgl z9X`>g5e dTEdFF_bwinU%XguU?v+m&kD2c z>1jJ=5I`U`>koyp;^iA+*SxIf1-whL>pZD!b=oF;XWfa4+;KL|$G_<2p(l-!jR} zI!KDzyT-_JzPvV{J&;SC+$DWZ7Uk^iQa*Xn;Fw~RRIaKWz3OAb>_y%7o6XsYo %un?csfQFq zH{z|vs|>F$cJA)$alQDOzcaA4u60M7LSkiNsDRpQY -B;#j9_kTqpf_c}f*7)$JV z >TC?I)DmbnKMVj zjOkymoAbvlhv>rPIZePxR)FLi4hl{a$!)UG=iq_!A)5z|(Yge0Kr;8p^Do4#1?!(0 zk*4CDANBi~{q7a>X14SwkCqo;NCtfZa6S+(Z9=%^($@~ivmfn(eM032JikoZ-bV|` zR1<)+8Cp2Ile>IHf-+JUe6RE15K@J2o(6el6cVSn$^%8F0G~u-ll=o_%-Ssbkxu zI^Z^&-u_(?sgZOu! H>v(K~98+RWg0lZlbWy>T^-X&B3#3ErwdDwMy4|0OhSWl|>qR{wN(gKjk@ik7y z&UB&a)8k;mb)U}{Rnb4MkUf;>V}hG+>aImPDiJjFlG6t!DA2_-BlcXZ7H#Fs`xJce zN@O~1@tQ;(M>MD81H(oIZn({O*U{+?)qE{|eFNPkrN(FPOaCAUJ#n&$#t>UqxKeVf zwrZz#&z{pKY-_70r|?2!JkMuU+0AoJBd6|IUHVLaePZaONkyGeFn#3W_GnHX0djI{ z;dw~A`Fe Q_tSsFQ2J8{wH7}59DN >!s5 zgj=muH=o(^fV=JSRBtTA+wtw a)b>pP?DZm)R^Bx6ab?ko9fEWO$|gog`kK8ee!ahL>D zDZqUzp6DQ>6=?<{5!8xOtmB$5WL*wUqzkBQDhD6kRFs@oj!42tPkq`(jwI2xdCbRC z p=hV$c{X#Zmpz=mrJ{-;hgaeUa+^rt!TyD)G}IUG=BQk)D7?kXq)zbRrbf z`?};)RIC?OylQp)WWG(9ceFOx9yS)4&=K&X!ahj-)X^q9M*n)J;w$yDc7lT5M{d%& zSkvAvDafe@cB5VwWg=twq8q<$?U&gm_JymO3b#~y&)4l`eyZkji){Sr{>mO-qN2JX zv1zSg-q=mTf6v 62mPwDfN@5-(qoEc8(GHo{EnNf^@oR1_XNTy#T~9r9@_Mj z1#}#5Unq1k=ckG`fec=xww~(Z1+`V?*YI5T$NEvZZABvMr}H~3C)8O^;_Y{@7liVH zIhcqxe$E?}8^%(rgglb5Zx{)rovrRXt 9Mk `cYzkvuZd& ~HCjZ_9{7WxU)|Cm6Ct7R4T)-1g}2_}b;APggCX8h#>&>@JopZd$u;<3)^&+q<^< zMdVA}TI`+h{zhHY$Egwt96tI0BCr7sRIfR_YcP{MVzsbBKF2ik9@9ww=4l&mQzRbj zRVs@^mK|`KLt>A32x~?Hkx*nO(o%|x4yX+|3gW&2AC)~>Cb?~SCmm9~`FNB)Sf7ix zYUMq^w(VEez!T)f=favt48p|T*#Hya OqrC&hG?5}2uwRs}_Ike%MJ`;z0K zl>RP%WU-afTo{b#%feVN4E 3YJo2{0 z%l<0Zjy#Cmi6Q62-o1_rSf&6RY{I3gYAURs9uA8*UzPx-z*i|xv|g&qGtoK JTe+1;Fq zgEz;@nj5C`g(8ItdpFx7ok$doFPQciYNM8wF7%h@cPbsX+T&7b_tu@&)Gyjvj+q4z z$J>jxUQ=bN>eSNt7olHW@M2>}#%31VI*tcwgd9VeT2;?1be_)Ajk__q#fk5~FKrcV zd(^(uuH>p`eqk>dLPo}BoVfDwz<2||T(6v0wDZ?4SagFjCpA4N3XT;*hx=4*gN~zE z<)8X^pE9mC8sN(dKKj($wp6k>#B{{bZd=HPY!&ESo7hJlq=zTO?`3<3RGgKJ#M4%A zrLN=~uX>&?ew>V77^^<#-Pfx)x0SUjF_vL1cA#tDKt5^@n %5_Sm#oYPb>O1W{CBWCuZi9i<5!u{vE43MQU57hBkBhSRF}dLI zJo%)<=~`Jk)tJ!NDjW?%%YCkXA+8bE8Mnok6%s{gEb%N@jZyyOUlm`+KZ)m3m)E4_ z->wqy 356TG=+lB1E+Qy;x8j`kU zAIJS86LJBp_-ltdl6vbG1ZXY_PpXfXzV5u=ULl^-KhCVjkW3)!B4WLdK zK#YpIi>`VVWo6IWBAg%lqHJubN%beKe}#{~V@EiIP)<77Xafa9>V4mY;$T%Yn?hU7 zbI_mhY6DHp&c-#C3Q?dBsH3~2GrYJCQdaRDybus*Advisn3{d3*WR0pZ(}q^cUFDB z@vCS!6nlXH*lyq(VbIAUVYspc<#A8CVi<1L$jvGk6$v45LXXh=^zICd!_b{pj=$ZL zXxv8TG*-HW>s{I#Y*Tb+Aks+=T*8<5oSdGpKXhZ&vugYluqdyO+w}7GhjM6-W9u!} zv)M;mt=V*S ~El z4{K$>%h_h;rI@jCu}5Ip+XpHu#|Y2_VR+f*c#07ey*_iUT08l2alUb}y)}v;w^%Va zPAlD7byU`tyJ PGBvY&`}##BFZBGxIsw1-td< z@8T- DeRiSjK8EMBG8xovaSS_zLQNV^-1C(=Kc}b&0LTPaurRi`F~t)HMh} zUb_1pE483VQ+GV!0f8{L3b>==g(S@8jDY8Exk3YPd7trb68omnD@V#{S&nq#z9lO} zf6U1Zr1s`3ff4}Sjw;ee{R>+=1rM#cn1e6pT0%+0pK=hBVtVq#r)Bm)n=I?muMIhN z??0Al)qdAI)LrRRHDoTbLw+sr6tY^Ud2V+qj*;Lw_T}R|$x4iEfn*fvTDG))p4O<> zzE|{%7?!xKkL&G=6c$}KkgIFRbr28mr>q8v!p#A(h|904Pw!gwc{IGj+fHbqKHm)N z@h>sLs }$(lj0)4D(hqajJt00-(!N6X9iij}G#8zsG9dcK*f5z?@7c|9hKvlW zA?FLy=0kBiDlE~;`4j0`fQ?8 )^7P_h}hF|G)7!tzS_s}aF zP=3i|1D?qJRm%rl>)46D-?s;A;f0#f`P@&x{3fsk@f|jMqv`~l8!et+BPAT%bOS77 zC*x3S4?)^SXSX LKiizE)9f}~Z;;<; z1XeVrSCzNgz}{qTG~0A$KKq%X{B0U6ciW@$6p1x>{0A&E%l)&7GUEzJa73U3&g1~B zWhaqA#;T>@Fks5#Q-Q$DExw?zTw2dgW%E4&v`yx^xbYUTe%v&4;IDSO2INAPmw2sP z8)_V%YH2xi(iSB^E~P|_-x%g>z+%+vOk{Qg<~
W`Vf)03cMYJW?tA;E%ZH>xIqlNzP3|9ECE7R{m-EUq!O&_;cAKyT+oV+ zO?cNV0Ag1D6*7hpb+|S*Buj7;)jwNN-!a{DG%R`of;UZ)UN1-YHpJV2e4l<*E&sDu zx5JjM-pQaXfNa5@`WE*#y}sUf_#!)APvGPWX){??`K)QYF6Wf>baGdx2her9J 3 zz(7#Bh6~u@KEL)mfCL4dEJqIwtzuC tzh-mFMQY%$qOmx%}sF!Da_Gsg=E-BRFG$8Md>s*WLw|DOLYsj>G0kzwL z^C4XK a6D6t zlpA23d{dY~ee!)I4xJ}cTg*x8$|BgdsMfgXfG#9)cAK928v(l6W0(yGd+_-@zwNKM z+KdD24zWAAO>t6jXx<}vkCDKNPGQDx#d8Kc`iX*y3%=Zo-9kG((F98JF8odqoJAuD z2>A*~=QU*#E%!lW&EdI)DJp-Gr&2wm)JZ8+Rt+EJ$32;`sp$Q{x9}>GOMf1GZ|Z?M zLfV%Ru&1uN2iL>n+~OJ$ydYlr8H6I31G3krba)>PQCMZxGbyWl1Im5wJE;TmwfmY! zpf5}AX4n;lISgo8Iq#wLx*%xKY+2^i@02!CEKHVvqzrMNWk|@0{mr9+*s4N48A>lt zPt^YkzqnYN#!6roul4;b@*M5eEwQ(EI{D2zuVUaZ!lH=KiLN|+J9iIN9Tn#m*{diF zoG7-a;)h~)q%cv56(2^1P%Jz_c+tvb*2Yx7LR|9Nk%SQCM^{&+*6sy0QTPsgp{_ z#H#D@r;_fBoTeZCMz0jn0#fwj;^xo#`5izS2;=x_KX#%OK7c v`ADn5ERZ?8e(v%_ytj2(QE6gKqm|q>xG>=HK7LBX&1~D zJxcPf5B er<60aJ|YLH5hj3 zZier_{>46o@z&IPH&W-oQ?gp&rJn`4RKZEZP>Qo;RRc)1952$7&y0G0$p>~hPqq=< zxo)?jM^Mja6fMVNndoc)dLuTAR%u$Y1>nkIFav9rS~AOGWUK*T>*d?UWwt?)uSoz) zr*b@|344Y(%SYhS5KzTbzWMM)ACUZMB)_fyRC@cP8i)a-l6+4`NmFtJp61D|vLRl< z_jiaGsg}Rp+91iCzPw%gdFR2K@>pqPLqv`zcq6H3Y!ez|vE0^!XSqh1)^3cYZu;Ub zD0Lo*hA+vj((jDJL UI1Ek##?i~wxuixq}|Pg zIVeOac;{$|Y0g|puY?a9hIUIERhR$a0h&(y7dJ1E4#5%!B6?$_d<}SuIh;@p9~-b^ zxQi^}?yZG4y`eMv=$Ya+dc?s(-6kL$oV&2&7NTsV6|(q|TYjNI92J8|5&jQ<8C=Cx zEOQ&vG|z6zBJanIol~jP0dbyC+OU3K5?F+~x5#c9_;$H5Y8RM-h&kqBpfWI;59MX8 zAaoj1asZ-J+1L^j-aHa5o#?7LP!Mc7l-NPSzACBhae~PFZNU!!tvDm1Z26#~CH`WP zAvZ;7z=4PHeS-W;jP4Gi4s8lZ34TKqhg0(FdsOt;U3xxWR-s#bzTUk+iFAWnBbwMV zoY#;1c62|`@NerN0C&!F8Q(X+@emxnpav!Q$OWKjux>=%u4^}N&wb&H0}lp>PJ2x3 z5=YVKCb++ne&%Je6>F#*>7TP2^af+m{D@;fXk8@@oTf`vT{reor>`R@oVgiXX>2cK z`Hq}< ?Zg1DEpy$9KXr9aD?iZEo0?!F-) zR#p&p)=KwIUB>sl@6#XI$1i8G6<*l~S(3H RhA6EGVc%7_=pDK|{cTdY-T75M8rO*`+eI%((>Bc@;H^c8UU0@5mvc%hwesJu0 z0m2{C%r<}qrxirWrLbuUe)njIGwqS}1Oy(%(1wI7I~qoY2MOo GGbgQqvLnf&jX zTzPdLk>bKN` ) zUaAI)iB!ZZM=o#o?hHc-5T0sN^XTY=WQr`1zn=f~ci1EYlopy;oazj~tiYF}d4+G7 zt3Nqh9tP6CWg;5F9SXB!g9%(pkOsZL;gTdgH{N{iTn2iF*j0T1>b72DDpVBt?(}@D z|MAk>jFS5p#wwiKY3oezmV;;dZ!>+)fhlP4F~;%HV!FN%;AR*Ot-#`Jap_?-20E6a zKqvM!iaVR80QzI$q9Dvd0JUBF8sa57$wOREH4AzVxbw&92E9n W{ z3|E3tU=ajLPX?U#xi%@Qv4is&9$oJK1W21!C{ZjY(jTy*1a=A31Ze=(9vOEK(ld=! zHL6^W=t`F~mcvBVvXbEO_sj;eftWJ|uEuE;)H(&4L%(8Ti#@6IDYw^gd4ooR-&*Gr zsE2Rh`=Byz+5uCEQ%2U#Miyrn9vRfLb<<0UgCv+@Es^j29X(wAIs>s11@{pl7KXhJ zWk4Us=^0)fb>nQO X`UoT<5o()c~R; z864s0WNW}Dk)NC_k9c2BY3|80fvI^}D^|*_@zw-=9Z3eRADicA+(!Ht{et5u0EH|| zk=Re}Xc-vaif7_~+j5sU!6rt8Ej{jESDoKiB6b^ekoeH(?{uazq!@V!zTOkyVN`)) z5FL&|fz}G+x?krtW-Lgb^5lNvH&J~Hkc-*sb2jc18x8T~MmdRQjMT$jiE7hXf!<4R z0=t$~EFO!sB9_ySK*Sj9;=*m&+y&YfBI)Bm+v@4Eeh8r6$58ic31qPcKI51Y4_9p% zW49eZ2vJTThiLlZ;U) *BA_ev2l-|l!b3=f`o`2gclurE3Kqi&|< zoqt?&;C_Zoo1F^Y<$PaW-Bt>20~*1}pk0I0q+?7hMn9*|k z=`JQF^sj gW#x6P0eymOI z?*VJTpi@(p!wCp4Ro_aUJ*7)6nHQ3TtEFjvgIef1%+ey@gkxq=7{5p4--%6VOz}7e zcu|RHNWu#~f|^uDGbL9AnNv+$1&a2jEWKt!S5^1;p7rec8Q^sRDsJ7#4}(N 5PPCF4K!Z{T~G;=XvOyC<@f^J=D0WV+=ceY)qiUa)x3MZ?>s@%zHp z^0MAC1z3oacSC!uRscj&5d;I6@<2RI qfbJc`s9fRHu4vcag# z`__036%!I(iy6q&zc~0LA+jA=$w!WUt0sH&xT#%xIV9B0#PoCceFUC=^CSxt#bdQ_ z0k%2C3ydajZU%IN1zVL>LM;TF%=i{LyBcVSxYO+fcqR-29FQ)L%m9_HmuT4`PyrOl z*`xg7JGFK|Bt(qq-uRA+3sux)XYRW6z!lx_5nX!C@RoWonfXi==4xv9AMR81k*4r6 zU&70QD~wBn#%&`tt@$;Qo!VT_*;}?duuQ)Hi{+6g)qG3>$@~#}XtEdz<}bVE*BFqx z>kHV7$i#*X@_IDM91G?~dDgEZthJWK3VHxd`VKlLL`mFA<@vX%n-wUrD$XoSmXD>c z`!H$%Q9#K(bga_Q8!i(!F^D7NXc(2ZZLd9f0(1eS;D`k^ky@9Om~pVQL8w~XdsJpe zu&fgAqAD=;W8=@&ZhErZmhe3vy3Oa?)!-6<_UxsXX;z+c$8fN+X2;2KMgYFF7{e&u zb?4Q^;q5ctf@eMP2f}IAA-zxgG_O#?#hnC~4;&e^5PpUH0+-z+BvWmLpEE3@UFG z*?Setou-q*p7w#vc>g&VXXTU7*F$|Lym6t1&L^_wCy#+ZJ{$r1KJ$$6f(d&(9NAzL z!8UDS3D|6hXG>K?p@0sPn-}&F7az?-iNy#Txd6>coOhHx^OmmqgI(!{F=YLLqfe>Y zsaH9u5>brY@r>Q^c1#mVhKC36U{ADu(JOP~4%BUdGbE&AH&xz7w57-OLmk_cLj9ti zl~{Tg0kB7i1zBrJUL|4&F0ralZJ_hr@NaI~-vdsC99vP)HMBy &yBO>b(TT(CMM#p-m%J!!M(1vF?b_W* x&*_&w$~&bxHXk^}KK5v|YHHnI1P15}Nk0sy#R0~=j5C(HuTMzGicw)7SpwiH zUlwPVjD)Dw+TAF98VJb3gU%DEK7v1 p4ufb)*4Z)u#=3yiE>q%n&(Ob7jl9Ji!;wduN zKmNyt{BJ#y-(yw-- ReqQc>yP$vkCyjxx?*`g0c1eGEzcycARG9Ic_&&q0s^QOX z0R7s(UD-eXv(2}K$as$bn27ktqDdFo0+q-wGaef(X<#o_83-)B)f#4rra_5jNtRdF z2YY{c3A^eBI{iUgq*HSowBVi_r+Nw?vA35wsD_O@cFD{W!oxklgrizbH2ZTj$-cp$ zV)zuu=18v5%iHh`boRh(2treLk|leWl%gp6@qs2+`qBT7cMHuMli;TSt@?QqRfE zukUEI{c@VKd!pkJl8KbOkofVE5Hdf|T=Cvm1=!&9YQi|sSaP$(Em!$o`^C_KF8*N) zir-B`*W5p*O-l#KGXQu8r;TW|0vXll>TC8;H)i7> Pna!fFYTob35XaZ8(jURzp&9{&_PteT@%@6Y8tW9yic# zjD>w69nbyoO4&<(P&~A)OAtd+d(u@Q_-j+pATj(@DgN?1@$%t2^>q*2HNNZoxIqRr zmt^masw@w5+!`o^I#EkC<|&(6wc&n&)k3w3Za2ZT(g*zCU;UzW&wx9ka$$2 3G-lF&h67MBCJEUC;1rUqKjy;SfxGM=voH&X zKxh*_ACe})@qaNBG{8n}=o)nHUoZqGcyfktg 7ayKPe!KX?OOcDCk~PI z13r*U=!D8(z(>{afxSsEbcB*{Bxuvh6ZoDQm4RM{_}|YlOl-XL@ej9uyzir!-?7E8 zgGdP~21tI+4V`dj1mwbOJOBW?vZo`Y@r!zDz>FQT>K3&{+8^H@18PCI^Y*fndc@Bi z=O?fQ+exqQ7Up99 *S|(;xC{5 z$MXff0rYGCm<9jlYJFk<{k33}|2qi(9}a>+(BM8L*lczV?#FnF{8=l0{S}@@3my!O z&I#?;FZuIX!SnHZ94}@7WTX`5D^zd(lSedw*#Of|4Aa&1Kl=SIKsWi|&3BPsl(N4( z&SWO2Xy};apQeAg(EfShciD+RtB&`g?nLD;rRJZDg+T-cXk|>ExaR%`<)TFq8vv6; zE8ms>a& igOs(ix)5YFf{EDCQhKtM2^hx4}Nl|umhXlx#U!`>KfaL&g-IQM1fs4;G; z@ZpEQ-j{)GP$>!7xTDh+DOT4H0^chBpMU}$qi%5Gn$jl_=dpa4n_v`V1VB61yn$7h z+T)diV1N=J5-f8Pl`wiwW)7O{Hg4I52fYEhNS@G&5)d{~`iUS`96E8912peB&G|V= z?^4FUcR*^WFMv~12!_Big(*t}D*`f?Zb9BdRV(i=*U~KzdBenHs<4Iw=*aTj6uw-D zK+$#c1}ZO|r$7>xV+-XOv;y` X(t00v%dPw_dmRR(I^4#&N;Xoo4cumLKaBtv zf_m72>+?0#--+fkYyA_gGLS(^0w_%T;oe4YbLAEnxUg?cLJ6f(XH>aYPk_XBsY;~X z8_0 {t6ALq}74%h8{v~_?C(^8cab>O(V1fsBFf*TGR zH`e+1GIVNtBLSVz1Z|OVoA8vrH|)rxp-)yimPN8`f>6K;Pgtr8+vdOn0%DL Xa0M6n3{G2|h `6pr}#AQFO63N6P(xQ>Bf_n %+@V)kr`VDrG*!?cS|{D{fI9z-ZqG4`U_wu%z;ofW3I~&SlQk9!SRnffwrO1 zMjl|?^K=nN@0}NxgUPukkmfWP2&M1nXBnP8pgvX{lp;k3cSC&(9NSoHNFg*QV?b0V zQUmzfdBcwp8Lz>^+-#UcKtxsyYY0F3Fj4rBm$C;sLN^$QN}7>xm$8O`_)xzuH;SJC z{jRynqe)FVwa>VARl80E$|+#n7QO X5eittGdS5#xeV} z{l RAbupba7o|jHSHvRNN%Jocfw7yjMz-$vsCWWbRX~8w-g8W&yUBObLe}|=>0KH z@$fDVS~NuNUssDdOW1~3fD=b! P4(2F-{ClrOu0fI{Ac%51iIE`R=#Hi6aLo z{e#{vERjvWm#mUYQNAP>Za3#>2wL*{`s0fz^ucN1?sDJET7j-LF{ht*))T{P2=LAy zS|RheUU!>Aj{(x^&7Ma^F%fh)>lf&tu8)jP!dFpY!0M(|a+K06c;o j0-R8$=oB?m-)V;F?C`K<&pg)$EH7Qs9~)>nQBes* zPfKI5&%~T>U?gD=-1-b;5LO8?zG5m?8^B$X&*b|OL% Th9hE;E^Anl?%tZZlY-A+wozj;(=;`*w{cgU$>%9F@ z8V^9naCxKoS=^_kQ=kjbBcv?-aEa-eE&*BKPy198m}fs-GR #W*3B5l5uh3lbSPyCi>Wcf+TxCmg|&buO(>4~sR4Fhg09Iz*povndRdaEl-qn_CS zx4`LvNDgHCy3D&~>@N6G{+PeOE}Ur5tyLs4*$v&v*^MgtyTGNhnCSfmtqHm!--5wm zq5hT1l{%rESmTPyug=|qa(pVADJ|#-7?pyJo z 04^Omd_Xi@hBgSOgp(=KcO5wS~t0!2-aC^-R@Lw@|(sFVyx&A0GDBjoE;B` zF&<7Wuh7ogg@8_G1Vaq%;qXq{X9;Y}!xb3%JBFx^WA=zkXG?K3{^(0}zRi9%Txszi z-;?qITMb3sRjUK+!w`qm#fm-;#-@kW^-bMB?c>?w(DP0qHZ)npw2spYh&qz`N|MD& z`3^pJ^qGS>i!Hn2anrefuwN`SXc+T>uZJN~-Dy_0DGW1#Cm)7hBVWqae-yB_QWsvv z*m5SfqWEP;Sc~#Bhfh{t>KNIFtDn_jMEHX37#OlmwY@ak1*XZAkWQe7 U9!-54PDuxh op zftT<|{lIeU)q35!aB%fW(^0Q|+%R-js((hJm7%WIDR92d%mOKHmpDF%+VyYAl;=$F zgkt%jy!E)LXCN+yq8y9e7#!SdDN?k0d(Wr#zG;@-xw+^GvP)@0 +s( ni@adjb;I zmPY399`~%D4S(Nw;E%n8AM=vy>1?P+pwnIz2*co2p&V?XEB_q16+Bz&_SwVBq-tIS z9C!J)l)7#&YpDAzoF0bONV*MT5s84@#D0jiQ?m0U;=XG$WVgD$m^KMA0-|PS2RHqL zl)q<=IzR0+f3asN+3rAsQFoJYy3Rr2g(LfAhG!R1Z#YVRqkq6f9F}sioWx;oK;9n7 zR^g)HnztpgpwsW-c5#&kZs^6STG0=3IGE(-z4i6fKXN=_28VJPCvAvgJgSG^!?p8C zXS=-q#oN`VnuBtj3!Xt;a!LQX$U$xYXz>vw;yb-1uaDd{)m4W=2{?Pbr%zWZfx@^+ z2+0+W3tLXC!FE!rdA0eGhLtY0u)7?r4UU&!ulDk=zZkWb4H!k>US;T>m(gO5Cy+`d zVL7Y4yYM3T&dv@Vnx`fd9-=Hx8XLLh7;u?KlBH-~f}qHU #+BBg{NDAFliZn~9{mQImUI#fbHKt{UDA(R#v@;%Od-@4t`bM0&0>s{;l z@T_%za4mFjX3pb0&f{OduoYjD__LZw+Sc7snipf27&wH{@8Vi`0F`w0XVYJB@cIB) z9OpE~$&b~mZbL#P*zbV^h%qAmEGHx}ySCHl%A??dwDP9a0;YzmX3{54GjE~@F{`kh z-p6g;(A|MN-R$VaXyjM|93jjrgui_=;==q}-rt#nktjHYTx_8<{vf=5JLA|cL9dk< z{prpq1$!&O#gl7}X#s~tUr>J6kYfkHPA{1jE*}7+P^uh&MykwW0h=e-LRxsZuW%{z zXwGhDvkaDdGdE=|N;Dz_a=t3}@bZ-Z$I`b|SU`IZgjV3f;p&jOgPfh**q7WP~L8 zWFrVL`|Gu5+dVUEb9I+?XO^c@A0Fmylb{^FI@zDjU63BL>7C-VJgY%!+#Nx^J_U51 zT>Ym^QUqTz9Hk34s%4vr+-~+Qp4jEam`rJCW$R_92ETQGNqXZmMxbAlqmT8gQnSJ! zPK_4Zq@LFe%PCZ*O*EUOTFlh(aa^~Sct~3wraLL3JDMu&mUdM}A(R8^`2;O0lAJ25 z2`aaW->rkODi7QFw};Z4Mzt9IsO5pcJ`8BQH*u+)iuEwCC!%SV0Zy;%qH)c7@4e!L zE6Y;OWq1`~!iD897_06a;66EsIm1oSQ6O~&kj`T-N5IMwuGwSr#)!|)%Z=@sYOvcH z@8{gx{SsP3-j5nCXGB7_k><@mMsAs!EcWt|&Vpq5zR?o!y5xm?R}Gq0 bdf@JaiDmN z!gX(9J8n%l3Kl#cnY4|xA(2+ZgWs3F_w;L)|Jj;7Eepe9)40t`TiL?TNw&`!#mTX- z1-kD`^+YF_o-9zUPHh3$V}tFTFQfNe$gT@KiTfOSC5H01okjkL2k})B{%FO1m)QSM z&MpAsfTnos<=|2M#sPEdagk5X*3D M2Tep_miS&ammO8 `3uY=xA7_Q{O@eBLa5C zP!6gL@`~4^Q#3Fx9n9e|&G`)c2sjRM3-*4d{p1c&Uh&--YkYRCJVccQfkVpDL5szN zG94|`V26G*?}%skNE*84EXt)?iuY61<)vP=2&Wc=(|knBK$ujFtI)kRmUk(Uq>QvW zV|#B&JP`NqVw1|xzoVr{fPklwjHfF~mRlIoMJ-#wykFk*ME{_N^F6~p)bTu8Efl2_ zFuepY!pI=}A5fWi-=z8iK$Ln{0uoVD^+&|z^~-$Zf#S +KHYque=C#rcI6C#^!TFz-}R^5)$IX4k1nNsDIXN z*6{4((~d)#9wH`u84Yxk)#TMdCQWe~(>=pXMy4sc2t5|GNS!$OwexsVB<_s|Y1_H% zv!jT&>qpNu0uE+D9`f8i%C>e`Z`BH4n&B9pSI*i?8oZ&p&}nYEF8&(~IIxljaqT)$ zP@TW>vUX+ _qs@N)D+HI}vjw4E(3DOku1KHH?$=-_b#m_A9G?+*N6v?M}=T9|q1@RB+ty9{Y zA4-YhUbsqmPJ{?JFu-=+o{4;ies;h#E^qxoet(HQ-Mbh$N89H6qN$Pt6DQ%2kU#Sw z!!iRqYK{F{sP)u^{!QXepP29fzW&|k3npgYx?TdrV7B4cfR&QB<0tWZCqyJGL!}+b z(JL1?L_S{mgX|1YC9XWb!2r2CF9!!Fq6HY(99zbet~yl{p{(u9U#u`nFuc9FWG=6; z0BkuI_bek?oO0qyP5`=^>+S*wf_eO=eK)wbbHh|?Kvp1XOlNVWMlI?cRXqTQzRGUI z)j52Y@Tj4!}00ixkr}lP7@8te3ZMuc}*a0!@>Q0#bHYV00^dvc*BwuNZb#IK;#2 zd%98&tUhiZU};zOw?IIJkhF`ou>)f9<3M-b;HYc{WT$9*+D=UXWDDZLC7ti-16n8L zVk_BChn(};XnWqFueW^Qtr?Uh3YFyyPf^10pK=TjW=XW*B15i+OktRt`m7dec1hew zS>49T?7Q?`x4$aZps+#OL|WkT)(t1DLg{=%_wW`0e3BY%D&z4i3&)Ih(m5YlY;l?h zkE}PhmHAUI$n8k7x2}%$iyRphOb^IREv?#k_v`=Fpfan&+oBgSirtyyu2^}=!r}Ma zh4-}~^OZJW^g3?q-r%o<^XRNulCpp$(G__j)eIUky>l3Tg^InS21(4VyE_=CKADU7 zHJ72Cv$mf+YY~ptjZhrTa9vF~cfWdz`#^WXI-7J7m}v_Ju3QR0qwAk}hYN8nH!JdC z5QXHtrbDJE#pz{Ih|`j8XGXULO58*U =kY|GIt^4Bjo}&t&FPAsLxaE>*eCco zKp6_>^v=Zl5KmzQ&Q$oe7HIM7=^LH{FG_(7*PH4W`enARFA;c=x0Kle&5Uin+ChgA z)hynFyyI($I^;Ys$dLLy)ytI8jkricW9+4P`?6l*%Q4@FZt<$8Ey%h6id`Q5iThji zYZ&DYPI Zw06g<(IX`YazdI;9k<+G3c?dYQrs+UFZTYqs z;4R+nm {)SZ>k*DVn`@MzAMFMP;#9NFg}t_VcWhJdv?bmma`A(T!6H z7_cdQhpKuNmzZ7gEbGEy*=Fsi2~p{isTXhk(lZlZUT2H^=T*R%RfMa*Qpp{&L99FX zv!Np}6?8CY8OAc&CCipk;F8AJ8I9>m04>dyN1}0&E==v%+IVeqKo(B *hUaUvU!#*@~$)D);7EO*?)09-bD3o#nHa%c!13YGPBB z<|>FJ4J7!U(4fZty$mJrTaieZj}aY!cZq2({rEoV6#Y1shuT-^jon)K3FXoOBj&~f zifm>wf6wHM;U5<@n6lFqVWfyQ2kl0}QdP7EXi&9K4Sn-igWb)!g*ozZlea^J@Dkp| zP%Mft!qjx7)dd#(15H*=mj~q0o<1VoBywB$M4>E*fUeKoaAJ|LS0-at#+_PkdQnWR z`n1OpFE`O~jzx%O1aK;>{F>KN!EpRSR}Q#PFx@grf|7gnxAK%2EdlbXn*{_`g39A} zqb26^vP|z)bzD&l*UL5CJW;}+IMn6(s{IVDYMV?z5X^{It~#B}orJo8&0)(Tj0Bv= zFOLPAzs`3vCO)L&HJw|K4KuD*C4lpx`N;-EbJo4Sw_U`K!oc*~V+4GpVjZbVPXG#< z2O_HM#YNFT6<37cS6rB(P*GedXUzu63M+odr!#jb%M!iq56DVi&cq_RA15s~xd7j6 zz6q^;0Qsx=q&H3YnrHmNq0W_6l8e|qvAGlU7&nXcVs@9sRnun|oZPxAQC+4Pv;B*D z6lZy6C ?kk2Fy>if@9L%RjX|G#emOsoOP!dG!VSdBe89B zlNb>A@>!9SK=gP<$FT4B-a(WyrXLv@VVkd bt_ zgp+2p)Wq?GY2mS>Cl1NV*XB5@94Cjyai2m?zG9%7ne*~e@b*ds|2|ba2X>J5N6n{M z>{E@`-eVl#*7Noqi#1R&DRY^M&=$S9p^1{=uOtSaKbVPN1Gl~-p6;qy0HP@Zi+U(X zG UR@-RWC+NU zHh0? y`=m7Hts_LNzH;VIR*txW90Ga==Ea!0xEJ=A-G16NqO_$Dj@#!v0 zmR%1Rj4Uq%U|lM*Zx~$+Ym25yXWY?|jMYU|+q%8*IbHJ*o(n=j{no+`NM6f?BJ07O z)d$CPj1;BVh|dR98a31}N$BGJw>8O*(Xm% CU;3S?f@=s44IpFkKBn z#Rbr|yx(e`2dw$WV#-Ez+THdtdSoq1K0tMgH<=mdag(WM#>cbws8BV=^itfR4xMj* ze8c`dgH WijV>K&*X7%TC{RC|<1){dzQCzbDa&}eDgZG7IgT~t#d zc-2fS2rFe^=fu4xr&goa8jF;=%$pfYTygYHb}MYyJK1wu%`I)pBHWv!kCi0K_Enjj zBXw*p=7R_1VRmtD3F|n4Fwc<}DFb|)Axv2tbuj!rO{Pt~Z2!B|EjBbvd~Ks&A>D!- zfn8QbWd+aDBLrIl&e!x?BMghpqn>;G_+Y{_D7XU(ghIcLUF(b(6cy9aP{B@9#yjF5 zpg&!CUmH%XB1(B}$hK?I>b>&CrcPR$Jk=nBm`8OhAxs6!az^iT!aq8@#v@+FTAWRA zK>p`Pm^Hxoqo%s9m!0n$_KxeJ&4Fv8jMw?&tOIOj?Rm`(A }ESEHMv1TDK6o8%CYXF`ahYc(c7swa0);AO@${RfPmOYt06R9hG@@g69@gesRm zX w0~s#&8}sjY?QQyQdgJ(GamOn@Baf4(yd9`{-|H>DXlmVcC-pGA#Rj`Yn`?d< zePbz|=zOo3k6E7B7ad*VTlFj}J1B3>TCBK-^CTVee1Z2Wm)ePI{@w~ PEA2Y1m# zxv*<#2j5jLU;~qVD)cVknc9e| U=unz#C><%KzSjGXDWKJ2)d=J z+h7Dj-y)Cw(QYsA7XScqwq{^AF3I?`l8Yk-H7?#BI;qGs;JMi8Qxt_hmrAflO^GpR zCr1F*UvVAaiVi6j<%t6*Vb4gl+ug4)1cpqhpLw?diS`4x$?if@w|&U=IV+)4MVO4@ zG5>RnKzGgsi;R|#8lF6g`w43b+y#PpnzcZ~fkV9k=rr`WPND^X#9!)$dy*RsPDmPt z^*K7ID|Q>A@~d+$;o*;gBLDV&ECA^jh^-an-tdBBFD@niK=;&OfMC>`aXr2{+vvVV zhl?@isn3-t|L-=Yw@}JPb1u~u5TDuLkDd?is#A3L$03M+#+@4`Av| IwL|)$Fsn0tEiVennpa%I~ zw)T6tk5a+hNc%i|{h+!iJ@(k>yQ?%+`8hhnga}Mcitp@WY+&lV_~7uFLeGHN@=dNY z-01blsiKwtx6o5V@)cb(zKvj4FEt; =TMoh>+k;pkSn2?Gw;|5Q+jT%K SwUC(8=^h_SjwWE_=L=SF>Ggi|F5sFFQCZ;eJL9KU)xfyX$ z{m|#121CXsP7)cI+Q+V0WAnWz8m7V6(Pw0Qi5oR1eFPL!Q`7^!kYWLRH+PfIXra=+ zHuk#@z5Tm$h$?1`rBw-;l%T3_H&h&A4)W!G#iXJ*3%ND_j#Ao-8nr-EPR9D!zK*W6 z>m`6ZZPnKS`($KtTZ>=1&*GKYl>_D-OM!EiR0sCW-L!ywtKQ}HFVVZ#ek9!1P~kqh zc%!?TdT<(Jnr-h+SlOrQm_d5gw*;m=;R|+pVko6~aiQZJbt9#g^nuCewJ$4V 5>_d7Lkxw99^VYvP`x0&ZaZ}chU`P^Ua{kFRj)G$L zi0thW>;s|I%mCS7%GOzQ^QY5WZ#o)W8B@;{ui=Qa&rOvYfI7F_tR&~CPBYMcnqbvM z$&SYn&>!=AbYj3HW<)?aTV0gOhP-<-u=X)iyLg5R9A(g-k3JpoF%hCGpQJ?1Ch8e+ zxP9+NXY302e<{^MYrdS}fKl$SF8h6jXm&{!{?jXz0<$fP_=Fb%v4|yJbB6LyU}3>N zVg$ymn00@wp$)usBN?joYVU^QpBL%o1W9O&xp6vPF0|w$HBYYzEg95Fj->RpP?{A! zF$)v2sJRq{lK=Wt*_w>oE{$IF^dfQ?Mxh7ws*bj`jgt~SxP5ll6`2C|UCRq8R}8eA z#ROEb3&4{elcnNAdDEoQDp(IynA&kyW1#?dnppw}6|dgAOh86-D*($lyQT*p8ZstP z%+>5{a&~yyN;7^fAKwL%2k7*q{_o^RHmC|i^b|@e*}hvSElaa7GPvn-YsLsO`Y6gp zj?I2e7qy+T%i3}>_K6^I|D+?9x@yuEaJSGbrwpxt=|DRojK~hOkeBLqz~8~1sNb*$ zU4ae&vPha)1ZsX(+a0`qm6nc6VSj9A{{|ggd4@rufSu8`x$Q1ksU5fndKq~LjExuD zN;o>$xL@v&f7W6X2y@Qj^^4q*%=%{TdJ};|*&9bAq$=cRJ{i^J+m^Da73hxL;KZAk zak^JanDz8gK$jTNx4Kq4?d;ou-FtnfQ+m;|<2*l@)1|Eg_MoXN^DaTO=I$%}9gLup zlriFiqdI9C8B3?{*$Y{UhS2n&MU|F~k1HuR4GW@N3>sKuE8T_ZZr%Q<-a!#uR1Tci z3RfGr&cii*SZZ@v%SE|Yb4)j^IPW04mU^{SMoMJEB97VbDcAAo-nuDzFbWvE 9}`z{l$!@uvMO?p z2re(EA${T`7~}%adf4(|M-((*3wX;R2nv@;P1-^_#fo#FuM5LRtnw03Lotp1-UoJ% z^j2=20ueZ;)MgNgDEB14l*Ks(@}k{P6(yFLiqBm9Y8ej=q(VOJ8)o#2$FE >BPV@tTri@PqkKuCq8;t9&pmeRmueK=V6| z1%HpS=&XN{zxC-y+%B=%j!6z(^3NR{i88t(+C^<_-N{iHLWkjYo%?umsJGJBh%x5) zUwp5tKrE9U&>CdT_L2K(BE!Nqk52Y$*#~0~KbmJ|y_wPO6Ep*{(aY$2OY5KGf(}GB zoi@^_>Ea^AXI^0t`R5EZzv}RJyE*kF(u^|*lLZmEEVii>fDz4E8ZEqIr#<^#QatEx z9b2Dwnp>UbRM}3J4PoG;GC95=g}_QK5~8V+gEy1H^D`bMYa3Z#cSG0fFkz=YmPM}U zZY8N_MwV|LpVFqGuv-DZqi|*7@vVM?g6Vm1$7h{COCSO)Csh`wouBsW0$MSfBT(}j zVL$?5Vy&Ca!}2ZEiUFE#^=El$3)f+y>}&Xm5x2N&b=MwWYoMFMeSeWHeem@mH~^Ac zrkq)yzN50LBC5H2c-a?VuJ(<5fd7$AO6R9Iv6v7Vbp{9*gyZj5=D6} z!A++=0wM2K7;?=-rrMiX*Kfq`d3I96Dw?28@}%LNuggX_(VmI#^qUM35$vL(&Gpmd zTT9WryQ@*i@3y9sEY!>bl&`t_&xgH3<1eP}y51uglNyZ&t%u123F;(%ZY{gHk+oEz ziI)Hn+{W1ihQzKl`+%)D^m&J;41iR=TpX010}cI5Bh01Uk36zQn;Hbte~64fcplP+ zY5SBn|GRvv-hom>nI@26>j20vt$rhr>O}(6SAMsScT`^haH%5OQmVL%)tr~I;KwPD z3{CLMhV*tjcpAUyK<1L_{;xj)QAN Fcnna06 zjDcvTz=odlmK>&wm&~S{qLz8}>z^+E)~NvaHZwdev|#aFnQG!lSguOjT)^kO$1!K9 zcap;ps0HT_(z040TaYA!@gRiRV{SF`l@ -YRw2@kh#wJ)R(Y-wuEC1)fQgqupCqXrq9 zSnmS^rq4E&KwY)b0L&PXt}SMl6{c1EgK9QnvpHHGfiZt(u_-q!cO@i0bs~$BD9ygX z`p6sf5QdWV8?I)TJ_WidRfM=>9*fbDkRD*Z;y1U!bLl{o3-DML>HB)9k~XaG3F!~C z03)$C(`Yx-mPz9$uajBtwt d&d zsdy(T0ef4Qd;|fgrY`ozV@?8E( >W`LHDlC9}+(f32+#0@7#Bj82MPJxqrUC zv`Zbk%3r1txoSOzWYn4!zCkz5L ^ZTr> zm|E)I^j8Wuzd_a*l6jie@a-Mh2h`g4ZIdJ0!Ghf#Og2d1elwP1*+JW@U8yLoc28IA z4SQbgytyo&9D@g9jkX6AXWDvYl@2knP~ud`e4f%Np))h+l_DEV$I(5$4|bmRK5`d` zkiQ-Sni$C7@`)U=^0E0=NN^zk&bp&871SK 1y;hhKqM!Rl{$K4DEj>7AbVuUZSBzK11|Rh zKl31(&5cC@tlBZ%Ubs&3-+&-cl KTukcgPA>%{j{J%z zDOT%_?~d&UQ<;pp{(!iqt4%4NxjIBJG2B3?2t#ATzo^G{*Gg;!ARr={7(mWBl~rnp zzbA#}R)H#TM6i_UgA&suJnXRSfNrkAZ-_Bm(-OicTN6rMEoe~a=0E%6m0 zGR0Ctsto(mVJE0`4he1RiR_QNly@g2&*ug8=H7}0bd!;%^-cc;F0(KU;4z1Q7KN>q z-{xHOv*9EMwe }2|iQ;m|POlDB9<%V3xITBj@hBm}ro2```o; zX#*CA7}JrdDd-SKHb@Owpxr~u?@dmJ{0U33P!HhMJW<%kXt Q# zC%Uay*M$eRscxU&zH*wis@99@@{o$MERq~3?D9~HWky=0- W8^h>x7!^EVdoZ(sTEXJoEwTOVe#sYWC9iroVF?^D`;V7-uXA;7HZ!KETA zT q`OyHd`jjffV1L8PtgB{75eSa z{@eQzCba=+v&V4=oJov8{4nC*3WI ?>NtYdso1cgSTb)f9Gv) zEC04j+CU@N80;tR4rpS&0FpgUsM0kDv^Gv?N?~60aVDC>_b18{a!!kYaJ-ZofN#sO z0pjoicqBPSfQ-925V ^P`Kv28byCTC1zt6n*i#k0}>2t0!jRGWixbk zLmJr&kX1w_2>lcQu&17S5GsB0(gUP15fECj7O1+DoSdMfHQO;c%U%byW9ApJ{=>(% z4MJL3dli97zpk3FxD7~drw3sHxw1Fr;1362z?(u6N*zE(Q;S5x5omK#fQ9kR>gv8> z8`+1+2o!N6!RWVn!0q1O51HR?yV(}@%qOaw9>=ble|?wt@{n>dC$K>YHjm&aU 6FS>29|9nCMnMqT?Fcp%TC^j$)#PRxm{-;I} zz;)iVB=-Q`T$46ZWPk1rKr~U=6#=RY=J5)Y#s6t@$nk<}8f?X7_(gW+djJE)yHC5R zF&eZq;;#>Y0Pj{E3E4>10Vz&olcvuCS*;9iE$0pGznu!dU5J@7B*bvp{YlBs %z|gAZ5OkJx`#`8&HGp_J&Uf8dAsR|MW3c71QA-0+gS XdxwLMKYx;3HrK_bqE-8)xR0fHxjD8xf_s4IK zUeJiz-{S{Kf)Ll{({_rLJ;~coT(O#^wxoPO39a*0secuyPT3xPyEDt{c5FqP^&E_} zczx|nff1WI& 4Uo25hd6^##eDP2Ob@6Aoj3H0qll1OR6Iv{HNH- z*89k7Nd`HiO)b|!0>y(f8B+ytA5`G!)08NqANoE9saooi-Z2ia5C?$z2+-avzQHLe z1#lh_fH%V%4eUYJ{w#hQ?^TBb>l>SGV4GW#u8u>TIH=tnwV%)H%fT>m>7o_TaH7EX zySsIz8$a2oAcpM>;0iP=PSr)Hzt~I%QyLYG0ggii)c9=vx=aQ+pDlom>vc4Z{_~-a z0P=0kOli{q5IxAbm3zNE^TJ8UvY-<<$_ot3jwff&-ZU7XJ(!NmTTq8~0F{DFn%uDY zV|E!EArC;6enVS#(=gJ(s)}2UUXtDlB+lDygL2GoAmA%h+hf`2yPLOS &SzZc!3mLa>1E-=<2Ile`#jhbzoX0?aDjYwQNMwx3uGF1X{kjP#{)vE6 zR_9qN1-u% >*0WG)@p3X`TQ7Qk7fH$SHJb T6cN~d?hmC*}tWE2EZlMQni*cxE3m;=>9yY8lEy;GnVTy^R4tbDaK z!@|D)`u(NSwCM_KIk)fifGHLMP?=RCVgYPHn5fDIZ{y*C`-P({ueM3)+FD8`EsRWq zM^jw5W-p3NIlf;2p>f@Y0>!C?pCXf;=lEX*E|lao!bGPW< >E~f)*AHI-wHYa-C5g*{K>z>NI*&b0dLSK69WUkoX@&enbTi~ z>~=W%DdP##ouk{^^`Pf8`o^(2mv2-@ z+9eQL(F>)fr;m|nH^HLxYmqYKaGz0-_|! md~p63k7np^OP(&PV`dw}b|`%1x*rIlv&4CYWJ z_2D=qg4-nd@pa6hXb0d5gp(Mb009-p?A}i6=+os*U3bAP&n{*HRK?R-T|-X*ZB9IX z@CUx=jDJQ`MPub`$kP>1N1*8= `VcnFJS^= zmQJs$ls|UuwjnEflq@BtQ6E{9NSuJ~C _1y?r}??_70(go$Js#E3_DLYZLRqVpQ4=V{B_3f3_NGlx_yZKMX{ z8XzYOm><{?wH|ix?w5qcP!vC4ZVQy{fG0j2_M5dZ3@yjuY2F)h#tbri^qDUBfPHn_ z)0C`DwjSg)-pxEG8qsqYMu!YfrkoUJp4{N5)rasxT_QzW5}=0@@$vex=Fo!%a;Cc% zkhvskyC9vYnX*?K2*sLqXep;Itcp+gu3NQ#NBPN2*|Pg|gU_2?)qWqE23%&ofB|9D zbI{(*d$}IuW7u`fI~aYSCi;q4*9;&5=4s#m2>BLA9&+!lvdn;Y(2n%^u5>dDdnW)> zK$D~fWHjf+ih0iIuM8ktzn$vdoqH}j16C6r7tTZ0CgdD-$N?zjGh;BSzE7YxPmRFo z(#r+<=X$~GM}Uv<`Ek5Z><0S+?KJ4H5)58btsW2`)rV2DL=uns^jA~j99@1L8QAhi zdd1I7Ey^6zFG0SiOI>6<&$J!0U9L1gKgkF#nK%3ikTc1uf7hJk`-+2?7rg_?nlg(q z6(HY9IjE@joHh-@rFAYNb>i@&9y4z}fl__8=iFr#vI^QYA_Y5PZSyVo J}pOBJ(_LLv_ce;dMx(q<8#|Wl8-wcy!@Rltx1v;Hay; z!ff{>0Yu?9`l49aw(>96LmTjw;qA($>dYwt_M16Sbz|v>k!XX>Ei|c7_TDl3_|x0O z*te5Lbx5IQv{cDrBv+L({(ktX?t{AxKW_&1OL;) 7=*u>LiX2lpyV0YcT zoY?2%zB?CS5W+m|C+|o+88+bEqSm+wPFrRqE{Yz1v`}JEh3;k`scSjSGMN8HeJ*$p zp@~N8%k1Yh8tFktO3fSa-%L*q{Li0AaBXfUlF?~rhqw95`lt4}{v~hJwnAA4(wbhs z{yM|KZy}f*%(FoF>PL9HIs?lrI$p(w!6>2+FwuQqp?)urqueovN|Eng?0k;(t64>U zYJKv2O^R0{#*QR=vP?c$Vt2JA`_BCFF(lSXdB6Ej^;LF<+Dp4R`67#8s&eJ&gzPnf z){87D+3qjTv%1d=W0DeU-0ki>a%14`vuM`qeJdC{8YWfDL3Um3(L;*lV&F!M=yik7 zJu0UwkL8TaU)7b}q1|cepVj2L)gfK{+4H<#`ut>gxVH<9%I8_fPJHp;Y4+vvjG^+= z&X$E{&oeZt@ReYW!jry%P+(?Z+PfiR-t6P&-w7FRI}2CA4SwC0^lH43oU*DOxOx`* z^n^SgW}wOEiS(W`c1AFcO7(L$v;u=iHI73XHX{ESHv;4Yhn(m4`5SWXR~lXzg6u5K zy*d8jmM3WGr%II{Ha#nTN_he>oc2h|7o_cWPM2)!9j^#33O~?pFslS3HlY3jnu}3C zmzPf!XQf(Db?RPZ7n;uqt?Mwc)cZk9bmy>g7i650KMs^>2LMgF%l2=;I~7c$w SDyXNO0 S1hJiVY`!k}nQB$szo)5r@ zv=>fl;n<{Gi`{=Ix`9glJHg E*Kg1%8M@BXT3r(l}<^PM*4P`YQ7Ss+qGM2k!m zt(MfVMEk{|GqavJ47%o@XUXW}LhcHxll@m4xLCEs;M$L5`~d4tL^o{cf={XJC?0^} zDSu?3C>?eynu}n WGenA+osHAn z&472k+D!3+1M+kTVZwr8uY}}I=2x8R9lQnY8j1(R*={0P#5%2`I5Q|?E0Pt&;0FW@ z`|#xR6E9l}P-xk6B8t6Eq!{WDg_|!LB;D7Kfao7_0>?_d6v-0BwShC`0KHNmNF6KG zcfHOGI0e|HjI6agHtq}E9LYLaVq4~Fc=$-Ko3IKHDhd<@T#XTC?I1HUZ1k9!#xuV1 z;bD#YyvX$(BgaoUjx+0fQl?iLshuL_3-a4 `DBsr-ZKF+iLnKn5> z9j=Y%T6Bvj>%ddp<_9!wlP)V*)MY^qxRb+^Kb9!Y4rzaG0uT*K$j6pz!7%_<(R$|P z#asOX0-a_5u$?J61uMXDEbmZT+O4B>WDDoDt_AVm)IW&O{8aCK;KmbxCeW0@gc#b$ zhf6@XLOt<(*!S|5td}!B<^lFx&FwALG$nE$ $n&Y_ CUYkFjLnj{`+NU=Wa=EWs4*0yoA`15_6@%d!V{RR?yGohZUg%*1=abLl+*dcobY z+JpooYSw7OETR4sIa8aMvHb|nhj{Df>jJ?Wnvk%u(9EcGKamo>n{GWdrUE20ezZX{ zt>Bok+%Uc&(i<%==q_+$s@#$q*1g@4S0FcZ zzzEnC&0nDmx7gYDRsGjBVczR;;sHrh36S-X!c3?W7qUOjETqEkM`;Jph)$zqv-8P| ziTxq2C_q?qTe)5>0Am?2=y|$H;*vpErP`I%@&*mT1Q7`nUUom{8%-Mx_+ZhOT34kx zP~4OYvjqf?=1jYe0fj?n!}$zGn#q&|ZmY&hQvn(fOvHg{j13lc3PZ3OgU_2u?(!KV z)P?H#zz<${+bEuV1!yMB2u{~YEooW+&3BGT0vYQB(43JzUGD7zs>B^@r4^Y$4r2N` z^Xhz*tB1Sqj-&Cnnn>`z*wefk%{)20DBB}w0V$>Xno!|=V2;DEfH_03Zj))A!B5Hw z?hOPHmNajU(#hx$TJw+-XvIPuj2q{=jriz`pJ&m}9O>8dU`&+)4X?6R^T<$N{m75h z*%JB7sgB__uO9lI?dX0^Hg-3ZQQZcQ;;ZcZ`?Ya)b3jqtDzypN_XxXUX&Jv6wlETY zhA$a}Wo`)f-<54$uSv>Fv^EXKFEKa=lBe9tiJ4UQa%!blCvI}ryozd_iu#@ov1C9Q znO4Q&+F+bqK}9X?=YwX59! 8%#A5_3%e!NVB0)IhQHMMWQ{PPVkACc0Jf(Z@!%!ai@te#W;)bEu zYF>f%O%EHKe7mzaXv}#48A6C7$Ylr3uOTYxWU|y;-Hv;OTsLO7B_DQlJL^by{F!8{ zy}IBhp~~>2_wzpA!?Dhx-do&@>-aAy>v(EzFQk4DUh_Xg`P1q#-yPKSKSBycyNrWo z^Lz-}S2Aqi389Psz7o}idk0ydUDzVB?1S?RNZ9+Z{#y8dxg$@x5bLsMIe*G6mkSq1 z&09&AQ}H&e 8a}bK}t1lEho#oqGi1&?0dsE zmlJMxzJC)6^%!Mr&Xp}RIz9k(X(KLB%vgKV5u6%7w|X%$s4Egr6Nvwequ`O>-PDoe z2SiK(^PrcfHhp~wSG!$yxf`M<>~B}ifnGoyJbyP)`N=7OXHe$(#lFJ98_Jfphh5>q zBFiR-IFVFs!{@dwe%%C0o`_q#%{5HlMYx}_rImSlcQyq}%CI(V7QMcjFJepy`6hP& zMfFURw}JFdixblmyopb+v$d!%kC7~&><+|!&Oz#R)a>-%j;&@kihS;O0^AYRUdX=& z(}6S{K3o~m^7LLTr@UF%w8wz!;t`2vKooBJF?+fwx^Jt#jMG)H%`G&F_g<*SX1d2h zcr#@_ECYYjLz4^}sX@~}$`F$^KqNyFj}vNx$W+O$K!shQaeK`wM-u3yEk@k=;~65z zy^-|3ZxAepGjNPSuE7pch!_%QYT#g|UX9> MHElcBUr*PiN50@=pV|K}2$2Q9Blu}Nc)_8)E_aOF}{u@$9lEkY3+ILrGeJ_wQ zh;_vzFk%FXVpDX9uZF+jEUPIUaU&e@HX|VmuKYzSIo)&xf+KekwGP?}n$7Qc3)!+f zaGA+*MgJt4Za>J+WC#7sJfn@g2hvBrts#Cb8fn>S9?6~5d0{6O1LNpv;W05Rr2De$ z%k>y&vWzuev+mB$7k8l6QhH{>sBC>6?cl>|7hwY%#SOwRq7Y!Z2QpWVm4XJk&3s^q z!tJ}iW6xIrP$+9T%?!i`HpDdccs^mOCs0eaX8p&5RJFMVr8&A_jG`&_)}(mJ{42q2 zgjH8a_DBs?#m*k@2ibq?wTqGhYK4lkHfw@9e~S=5+jW7Y@Ylc?u~2u7PRbeyX*$Pb zUF67vG ;dhy^Ypxn#)nGh+Yj`^ z1X2_$HABxyR|dQb9*=(fF%LD7fdNm2Ga0~$+v6|5*=nfg?;QfS0(MI$=0^NYeSwBS z)r>xFY)ysNl&d?FtLA26rrve^L*PR96yps1tL%J^kXbyI{Dp(HFc~WHs_;QcEm4B5 z7Z*mBM^W}0U3SqtfnV#>6-RgX#{X##%Uwq-<5?d_AGQ-ydg91VV}1f??qY!uPu&=# zQK~a2Hz{<7Zqp#}*Yt{yR8;7Kd&1dWiAb)&xfYzJ I|ZG+0*=9u z0E~v7>>T0DhyD$Hj}GelfsEI34&?IQ>!gIsGg$s-69Zk1{!!td0dKOPoyLu;&qc~c z9yYiz8SBZ WMeW=clT|f0#!d*IiX$`Dp2tz@L16#?>NibKXCL z`sVVruTT7;|Hyjnz~ }Q zPpf{q BZ#T`(`$M?PhE2~Ca!go?Kpz&S zOdeEWEt=5n;GZ74fL6M0elA-&{5=hh5nhyi{KH=>`LAQuHYWUUVDddYA_Z7&c~!!e zTq*n(iZ{SOc+q+Scn797*w28bYl$T!?d1icbqQ*jaC!$x;hI;Klcsm*ikg{x`h(RM zC<7GtByrcj1p+7R&!j*BtKUqh`+|2s>!O f6B&ZFxqG4 zBkib%9iP~a8Rb2@in`Wppq4JizwLQTi)yn`FZ=}W(p@mmbjkNJj4=xZ8VC{>+(}(2 ztikI0Y`A2VdX>xzX1QF6LeK|YUvSw1(t;igdf1`VR#(+ E zfEb|Kf&ooM<2T`#W!-j0?QG5XK+M6IOelzL(HxnYMA_$hCq{boOuuC(@$t>QqDp{V z&>whlpE?GrJH=yd4k3G<1uqX|+Dt;|S{;~=BA)=xmd|(XupY5}!9r{MO{%9J#9fun zXUlvT@v|Qjn4-L>wxS9(s1~swZk ch@AQEbeH@O0+^5bmnGHf;>Qg%hA6y;1cQt6bXJ8SMOtc0ArvAu_LU(~)*U^s` zjFaE(ZWzo;LMEn2sIYyk54pK)Oy~AI;@<^>PG0}mw+3Gl6b1;k#i