From 68493b2eb2b268528dbbec9ec88899e7b75bc1b9 Mon Sep 17 00:00:00 2001
From: Harshit Saini <149406032+Harshit457@users.noreply.github.com>
Date: Sat, 15 Feb 2025 11:53:44 +0530
Subject: [PATCH] real time chat app added (#1081)
* real time chat app added
* real-time-chat-app added
* real-time-chat-app added
---
src/app/(category)/README.md | 7 +
.../(projects)/real-time-chat-app/README.md | 80 +
.../real-time-chat-app/images/getmessage.png | Bin 0 -> 89517 bytes
.../real-time-chat-app/images/login.png | Bin 0 -> 78247 bytes
.../real-time-chat-app/images/sendmessage.png | Bin 0 -> 91313 bytes
.../real-time-chat-app/images/signup.png | Bin 0 -> 79892 bytes
.../real-time-chat-app/package-lock.json | 1669 +++++++++++++++++
.../real-time-chat-app/package.json | 29 +
.../real-time-chat-app/screenshot.webp | Bin 0 -> 27902 bytes
.../src/controllers/auth.controller.js | 118 ++
.../src/controllers/message.controller.js | 70 +
.../real-time-chat-app/src/index.js | 42 +
.../real-time-chat-app/src/lib/cloudinary.js | 13 +
.../real-time-chat-app/src/lib/db.js | 10 +
.../real-time-chat-app/src/lib/socket.js | 37 +
.../real-time-chat-app/src/lib/utils.js | 16 +
.../src/middleware/auth.middleware.js | 31 +
.../src/models/message.model.js | 27 +
.../src/models/user.model.js | 29 +
.../src/routes/auth.route.js | 15 +
.../src/routes/message.route.js | 12 +
.../real-time-chat-app/src/seeds/user.seed.js | 115 ++
src/database/data.json | 15 +
23 files changed, 2335 insertions(+)
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/README.md
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/images/getmessage.png
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/images/login.png
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/images/sendmessage.png
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/images/signup.png
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/package-lock.json
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/package.json
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/screenshot.webp
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/controllers/auth.controller.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/controllers/message.controller.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/index.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/lib/cloudinary.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/lib/db.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/lib/socket.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/lib/utils.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/middleware/auth.middleware.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/models/message.model.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/models/user.model.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/routes/auth.route.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/routes/message.route.js
create mode 100644 src/app/(category)/node/(projects)/real-time-chat-app/src/seeds/user.seed.js
diff --git a/src/app/(category)/README.md b/src/app/(category)/README.md
index a9526e42..b60c739a 100644
--- a/src/app/(category)/README.md
+++ b/src/app/(category)/README.md
@@ -541,6 +541,13 @@
| [User Registration System](./src/app/(category)/node/(projects)/user-registration-system) | [Youtube Video Downloader](./src/app/(category)/node/(projects)/youtube-video-downloader) | [med-brain](./src/app/(category)/node/(projects)/med-brain) | |
+#### :zap: Row 6
+
+| |
+| :--: |
+| [Real Time Chat App](./src/app/(category)/node/(projects)/real-time-chat-app) | |
+
+
diff --git a/src/app/(category)/node/(projects)/real-time-chat-app/README.md b/src/app/(category)/node/(projects)/real-time-chat-app/README.md
new file mode 100644
index 00000000..e0d1d039
--- /dev/null
+++ b/src/app/(category)/node/(projects)/real-time-chat-app/README.md
@@ -0,0 +1,80 @@
+
t#DPku1HVOV$0iU67UrJ(&%j_g2BlJR}rTtfT?6>vb5A<)@ zMuVPAR&ERghI6aqJDpHl&|UYddL7sWEZ=p-+u4I0k6ok_-|5pTM@ zQ!ga_u223eEkDxmKi)3=>VP6+y`v5^-@nhECS`BZZLSLVRVdoR+`nHF{}O-To!H{c zKKMNUHd*sRNYKjUo<$zio%UaEx7Pan{QME5-}G-jD&R&JyuP}EOc~_Bk?u4cfC_oe zSF&T8oNdzM*S?RJJ}x;@yaT8^|DW&97lMG$ji0w@#WHs{J$@%Vzr~x4k2)79>#9Xe zO*z#*_Gz1CGor$xV~29V&4_%pzHZWgz)0ycANn1L*A;sFq8UHU^dpsH>yBPHIJ}vE zj*IDnWSs4C8+JWAj}{oWUTPIFG<%f5_4ecLCK!Bk2M)S;uHEA%PQ-|dyvS8+>(-{$ zr0Vx#^LtbwC?E0_r|zTp2Q3`l_ozkYS#N~>{4>Wemt9%b_k?O4|6oTsbRR^5>|I>y z )89TH`VOWV1+g8wzJlNw`>GaO#e@O*1cTbO-pm?T3nL(r!m7&Ucn56^h)yzmYD zQVRp)mt_X~zZ(vd`;&f_je%kr=jkgQ2|F#$4js~k;8%EI&(V8QMQ@nV&axj@Ac31B zwO !NNhwc4oJTUa0wNInbEDY*I$-fi3*q6kH z-8osHg<3^l(Fb_YAg#TCoadULHI($Xg*x8_bGzN#;)iAkZ!&*cimY4Q)ZEe9PriPn z`Rn@e>hLVOBhO^{=O;FFr)jx+SXfwGKA{jh2S(fP1$#9Jw`uQ%#^F3K^0Vy{FV}1% zx~y2;vPpuQ(*HGa>U`?;GQH4Ufu=V(3VPBs2abq|f85*v9OV6cFic&6lPF6LgJQ2G zPIjE5F5{e#yvCFL$`pp<4d`bqzl=g#b1e9nP?AbL|9pJ?79tsNew@vsJ}h_3;Kn58 z8XHX8-35IfanA-!X?!4zCHzF X#O_oP}*YyjP(QANvEOeNgT>B z+Y^h&hG__oJHTJ_uy^z;*$Y;nq%NKrwANOM3t65x-R$)|t3)UmhQ~SIxzNc2`V2O^#r z8q5aJL4)BVnYAOAN>5P+k$fQb%VkN|T#iv<${eO%nxTh3F>&wtwC;feeU|(6FZW() z9y(Cw1r+n`Iy4En|M E`jmCM=tgFJ$=MAG1wF6WWT8Ch|90{5 zNWYTz_#eFV-6|w|H_u*6gG;7)#mnqMMxoQr_VYjWp2BiTe^-1!bUUg;^%@&%z?o~9 zPJ#Vpf`e83{V84i69z~1=SDEG;N`h=!sxRvzuK=ZSRi+HP^S&IpuMy&lMyyqE|#N= zl}k_YehxxVIR$E7t{?Lm?(dKj^bD}f}V7CgXV4Q`sN~^3@|)mKKNWZ z(T+)4Pl>Q0Ix9GW$MnE6K$plT LoZPcDhD0z V?t>{I<32?Eelsq9nQWCFx}V zU&y!S$T-%TgclFQ0)6^kHZE`JhYvWF8~HB;&HFC(kMyi5w<0FBmFnHC@-@FSpS2Yk z|1xQFMkR(#67nZ`@fwb@zha1m%oTA0SXJwtb0*vJn@qC!_pCKMjF7G~d7+zyKpTAI z;$6|Yt_8l`Bg&+ob+m+M27kp3Xq({Gr-d##0wP;qHq }*X{`2eBtm@dI5_i;0PR A9B3U_9g$lO9^{=CK{9Mvg)1A(026ec5%%M@m6)3Oy`|uP^z7h%;Fi zDLqM`VxKwHTYzqJbbVoQ@x;GzpBJ5XiD-`O%Nd`plCng+x+j5j-RAY)@acIHVfnsn zLfCFj)O+i}hTE2?hX?0kwPw*0$!Ss;+~}ZoU_Twoqssw*s(*X;@Ljwpz=O7 &k>E=x02X*5Dc<6$$dHRLVX(FndVVK_Zx(8xO~#T*Iy)Adz= QtGoFq?(ANsqB95-qDzhLS^L% zh&dNi`bp`TzfpAuLiUmEFYL2_PWrvD#u7Zj>px!bJ}S-d8~hs2n!Xw1@_x+X&u{`u zI`l4}UI>L(K6K%4pU5L6sN27K3-fz~enW)?08VOTBp6h{^HGXv=;#)C?a8*OEzwD@ zzV{mduD=5%Af=_CFzifu{|KM#gLx%-X?kvsa_t+uZ$tA>pT+|kc>w@`?i~Ni8S{n( znE*9XPZBpAN_om=$86BjQuZkCT^nuUnx-!}p&OG4ZzJEIiYC)BbUYRG4 Fk^)z6|A45eV1$(CZT) z4Z)@Gz$~C~n=6%lwoSuDeK5ThjZNFPaGapHBYk0VIZ@Fac8oUd;N{opZUIwAJnnsc zPf~sy`e@yWN(sAmv-7Uh|LEUz8%63c{s+RW_~W+QtK_9er6Xt#us_6iPDKNMmuPDE zXrtew?cyZfF9
cXGd9 zIf{Qdui(&BkG&DRW#DUeVMm05Dr_>PfSOZmcao=CR9!=UKiA38y6afCGd@XZyBg)v z_mV_P6o2E1GS7SA!_VVIq^-00=}OQvbm8N}eIN3>^4Sv|X^IJszJMCQlbFRiyP|rd zD7~&Yd)mn_E^G7yh1nSaW48Y4%DxV{*)U+~CkhiR#km;Weu2!ac=*d@pMF_=JbtIo zoyz;9TW`>%&!ra^MLqSW)0%2}l=M_?sF(Y5Aolo~-Lt?YUUfh!g$ogHMoE8;w7s?` z>{t*uS^V14y_CJiMWlq!Lkr>xB0%?ij88hv7hp*{ENF|_?qn0E^TiW?>wVQ9B4Ucn zCxZQ5CzZaKqAfn3_rFWw%piFm!-Khi9R6ZzT3Q)*7ecZl$mnut9Id8o=R4ab9f|8& z2oj+p2eRQ>0cjJlzw&^g26E51mLmlD87)1*3XS~!TAng6Ji%+%=?lK<@M!-M0%NNm zK)M#thSu;-%x;$Jz6 (}WsAIqdQ!C~2_ zCNs}UKk IZ@ebi5^qBVK|FzP8 z9sB-I+TZ}hNgPrWI}SSq{rdqfX!vSmk3=V<<$A-z<%Ot!?_i@rErgfT|4SXr ;{SL3|Br@888VxVbNuKPdrPA|q%N$|9w*2FweO#Dvj9@WtJ?n?t+BM+ zVC-;vtmt$$I+Tq4zw!BhV>tf3=?j{S|0>U4$Nx`i ;5 Va9w>r> zf``k~
Vh1Bf2wc&={v;(eQ=g0Kr$dU|?XrcqSSD>)XDca;Xf6JMcD$P2jG;s372C zKgw1z1_=Qsr(-c9;@BzN4oF;%&(3~Fpi q}|4)o-jbr2o&CcPH_bb^?eiyu^% zzSY07jf{*SdxU0x?>6mrHcDZb!McVEyb!9%`nS?oV-0urM@`_J|6gnh1T^$tT{DaD z)A(>86WjP8GW8?4CT9-rML4RiAH>hg^z{AZGMwe%l GPlq zl40kYeMtyN$P8oQxg5962oT)8hFg^Ts>^RY96LBuBtFqVy_Qda?M}q;{^J{8-E#P~ zJZ~5>vw23zKNHE4JUBQA=$n|B@ce>=Gz?-3I)}VcTUuInw6~toZM)9d-uQ?+Iml(w z{a-G+rf|FJUl#{FX6@b$db#+`xw)=1H~Y5dFLKNz+3){nIIy`=X|+o~|Iu! e{sIqNc;Y^FE_AXh;#@qxLF6bStfIs>jMb(5L)%Z+ghr)F8Hp5RtPbNS-6;iV zoE>i9rB{@g7!y!2W^^3mnF?9H 6?wf>Az>_a4*ra&yC_RxX3d zH2x^}@- WR@(cNILqEJD4YK|)4O%+aWti?=gmh@4n6g<_~P zEw>DWT217|1xvU?kj^R3GWhv|6PK{`z;}7C*!D4>R&_}AIO6nCt|5oGb3*;OK2h~c zR8%s5MJroUFtu)xRuN;YbnTGcQVrRS-jsfD>3z&*nrFcV-fE;2#2I_(Il?C7u@P8y zgp4po!52tKrm&%Y*6z_1>4lROtgKvmVq|Ntq-SXvX~JV!%%`E)%>G_>P |l!cNP)R-xjmo~%B>08^n z&}6&2(8*q4KM3w)jX|1m&d7qrY07Hhd>(|2{bMvf=}f!p*k>ZCHMe?m$1>mPKZJZa zf1dAi1)`92{0ghYaQ_tF%Xs#Hf~IB!|NC{EMxzM~xm>nIDkABpCVXFbxOw%5p1PiB zf{(}H$Lp~=BRg{r6ntOIrl5(H<3dTQmEhMWwqLUPt}*_sW{9-V!|88ww&-?v|B4J7wG7cU iMtL5{EBN8zsPBFAco%WC!Ke7DB=<9&ufMfbduq zzq6Y1>z*!>j$-kF@?PwsHVbdC#ly*^^Pd0<(Inj#GHJ}+Tj(O>P$w?Dp4BX`Bp_N; z;5un=hOy77U$4RfpL)jmq@i6Pi@aqX&}peKpZX##VxGg&1985Ol;Ff8s9o7QWTx2b zA`KOBX%g`B1m}bRQS9Y@dXKlZU)b-mkJOu&&4)4Q=tmlHZ691<-7H)}MO+?61(rl) zvP-j()1(y56qV9BD;j4NTmuUoJo F{ zFfCVu0eQWF7Ydtnu8r&oG&Ckf=q3ueFJk_hrBcX+qe7l8eD_NDU!!4e-Xl=IuJ?R8 zNsLU!#KCP5l^CZH6BP}?j!ei%4;xj3`?ae)@zg0gC|x$t%k9z06>xu%jv2Z9+vInZ zPzD7FJv6>gW8v nGw}M{l20T>E~`UKKoTzSMW2O(1NpNGn1X0gN3@V3#)rZS(SNn zn;6a50&_={sAIA0o6QY8%`o`@rR_1l!h8##)0-X^MJ`{*bNU}uq#)iWs7_30+BR|d zYg^m3L%z68diCuw@Ty_1;-jV)SF!$5W6BoF@JONLm-y@- 0!E*VwZp8^z=v$`TB#+4Xfy@y3SP*;IfX42n|H*)a^u zYBF*eoLE%O00? pp{wZ_n-Ff_|6?SAY2$LY7ivm1zZCk>QDD3b5+(YVHX1EaK%@ zaIoh;E8y%%uR}j}=9o5@(E|AOqV1bYyf_yYIOCg@zs2S;LenouZ_}elVgZz}Y>#3; z-{ Lbl2-9uGVc|N-J zzPVL$3H)uky;tkpGS_=_4OqU_wv)6 DZarPiwWNkcFWI^(G1WAX>i|$KWJ>(v>rG;TFt_9f82&l zU=$rXt`$wu_ko5#rEodrjw|o;0aHAfj{0`od0Gofjlgk6n(rNH)(2$_yiGb$X;v5T z_EIO42>TG7Jo{E?e${V)(_Ta`thfKBR<{+}+34K%Fi0XVyVdI3l39DG*@CW({X=1W z!Gi%N HFhNH`qy=$cVCU-Cj Re zZWXqJ=f!uLn3 J{Oo(B9XmpYw=a5q)Lx*tx=3cZr7S1nlzJ0L0) zGGVr+wgu+kqDM)Y*u}1EvGj(|(J7R;MI(o0P3KfQq(vKBQ8{r386HNKR!nw}ty Iu8r$S3hJz8QT{FB5jS~>)s5cm&eJ;S+5W@Bt-F%` z!NzHV#HG|Ly~`6flt@z6?e6;&Zp=|_eY z!>ZoHbsT;9jYZatVM7(MypKq_w}qS7n#;n1RrQuqz^iqWZzrG1Zi2F28NYM%LHSeb zLc#hQ#rs=J6J14kf<$H$jM!ZX3AxrgTRu}6JhXF{RIqXn6)`b5a>UAJoR@XLN>KB+ z6v#obj4u=YC(RZb^Ed2v*2fg(oIkxQZN#Nnmi3|%*TtCAu_GdrDSLF8l@^A)INj7T zzM vBP6mHJBavoDh5&^tqHyb2cHDWY~&$ zZj_mqocVM~aLki%i(Knx?M(2XTYkk+F1B`TTef+q=*_|Qc_|C;4#$bXPK?R1hb_9d zcIo27pQ$+6ghY^5#}iED;nl4zZHj!a(;`gRu3b5^zM|!ael|+_MU!qhQxCH%OL7M1 zeDddzZ_^KQ)-$tb$xb{J{|Q*=GVzu>UofrRcta`B`TZ?-h_28pbDyV$!x1*))Zy|5 zo1UKB?=$qb-~6>1+%{EMTku#BppiK|u+2I}v(06*qJIW;HQdExXS@=o@}k9(EYNRf zm@mBKO$q>`Vid5zP1V6E9h-fMK`F zdQ6;3^-0AoMKgh3{IJ7nG1tIvcaXrZM3-4jC|TMz5~FnU*WJ`P>(!F-@=F!gi*@>T zsh%epasxTt; % 3W{!WhU!g6=V z?3dhh;-tfY)q1Rwk}O4fe%4ko656c=CpBL++gF!%Kk6wa@Ui<+*f>*DfJ6zN?6-@O zjs4<3vamsemf|*+h-&E8Vo3vm^}*KFbZno$qevv=MQCT&FWHF*PD+>Cs(N9k`kyUu zo)p82${CWQ{GzdEDF;xi7v?v9lat0oVS?s(damLx&M&s7n)g5ypEGM&$4y=wm2Xz{ zL8}!??Zy6GNV#=PyJU5EGjp2i(Fpvys!(#$rnlfz}=Pp7`1>Jh05D^VjzI zhDB#iVBaV95;TuB*WTL5?2M2J$Xlj^pM{EklhM#&$6BfSwTOKhMNf-4vk0?YT99p2 zMi-f!5(&*+b2%Gl+v9R=#iW^_X9FL?s*1;>fNldT;iPV0Dnq;LJU1oOFT8FL9nmN3 zw}a`d1RVNm70t!xP(W{`xu(VbvbOA+4XwO`wkUa4kYKQTY%fkmGpew%km~@;UrbTf zg6o q^YZ~ x8Tm~0U4K-te+bGcS11|N zEe(y}WWCI@O2E)}3u()#Pj9KpXVjwtyG9P^xsh`zgtuj6f<0q~W}0#gTnPG)t QfaDiqS2q2Rqs-$i;=GUW_W$EhEk<$K62Mj9CLv?1@jj$ zQW#Z+>c#&0h2DBS$hcMWaj}tRpYMStS0gtt9cE)@ujhdO*W6Q`fq0hY^h$Wp$z6K9 zq-V3wsqGnDcC=+}xYJJ>nJnD!pi4XPF6 ClSWT`am;D2lupo$ uiV0$Osvl8qmdN+dZYq7@3$586A~sfg+=U0&q!b1kPgt=lgTZE*sm6 zPxUHl^RBy!ae8R+WUnYMP$I{JE%4B+YIGvz*O^q%%!wORe8Fj}WWt;!;3j0I1JGDe z)k;l@+N-|;q89TzD`0BmsEy_&v-7+O&}sDpMgLfNib6&L$NhsB4&RRMb)PHxoLv~x zK7};l4@P8Ib(oIG>PA?-0WUB~kJA;46QG1`8ur0!(p=1GhHuC~mbEAJR4P7erPxZW z{8{nz4=p3HJ6Q!YgM1DPQ0E(#VSuQs&UuwCcvV&vk%J1JhQ8{weEj{d6BlcweUhhM zQ7ZxrB2MiajBg}$n_oUOY znOMuP}x|-c0P{5AX_Ta3YK#3 zSkx@NWHfklrjADmG+w*|guA5WlV84=;Yf+Qy0S4PHYr%Dq*3V}1v$11p6$XWACwxE zG&F?I;BX6YCrL_`KSc$St6!k@1VyqU!tK&nlqYXzuZk^9S~E&3F5@+vEiQCv`Y52g z5QI$M3Kb8QLskMAD4M#UE#-SB%S6eEXvb|KaH|e@8p;cGNZbJj>wi=*>Zj324k8_R zN2XmeJIm1!hRAB9BNqxk$Ioi_ZmwUdvC^@_-*~NKVx?EPHGOU|UBPExc-|lIP^y&+ z_K;S|(n^l~#l(5>&0?C{S~&fEDYVL_+=o(5M9dH?vMDK{tpQ*5WOqARGLqiq;z!Tj z1kf|5@V-K3VXu(&glmD6o!=;WHDu58V;OUufBk z=u*VM-GRnik@>Z=9+BSrAR;anJ1QK$M>{oM=)Q3-$2nLrtslJn{yyQ+$|XsEI4cfU zTT!p3&s|JL&72j)cy{O?i=o&W6kDhv$QTIn@gd`z%~~SJol5t069Cz{er-Mwv|Rv{ zhLfnSuIJ|L48LN~ByFroo@i`NXcYULt6q;RJ1H?fm1b_z;o|PF%*%Z>e<$MxilJ}8 zlT}p;Y}HAyak3Il4?5TpyS%>AVym%6k#Q+c&|fl!wZNQsrG0C~Ic##SR zTyJ6f=JrwCZkx73qUNK?emPP;2k+u?p%`qk*Y7X4H1#O^=XyvuBlF~CWb5o1rulPC z*SZi#h^&~wEPAO|78w?E|4e5U_q0>~S3pFBgv_5s4_{>LpvPpHYNa)53O!)!lNfy~ z*qySUqS?=e7MNPZm`b7OE_o@9W{8^TJT-}_;}OWJ`kD^pt`jvPX4Z}_3{!sW)056q zE_O&oMda}CNYO?JHRibljykkXerFS%Ex}c|(U%5 fmOKf|JTK|YyQ>($D!(on)nHQOwdcwazZt*nd;Z%?h`&P6_+aq+pMD1uU z+PygQ1usvz#_o%Tabkk$_+ip=p>va)6WO}a)o1KSo(LfsM=r;utn)I?B@KBD^)-dz z<}R=T9&X5pljpR8G4CoT{nHw|&AKIM*aa6U8)>Q5Yox;EK%F9SM`0>8^m`w4uWy;L zjdxG+%e_6VXq?pQ*gfT{Q8Fh_NSyRmOpf(pfzKz|5gC2p)UzlCKWJ5t8f0AD-@luG z{jU}&$~zrR4uZCaJmXz-9N{}%0G%5VXub3XsHf@%FOrlQUN-GjG5s~8@_rX>WyWr| zJ~VVS;?jTYLzi!wcMncS;CbB_8B3v=K|>fEHvjqg&bw^sY`(~a$ZiB;d29z Sz4 (PO^Ws8)hqk$Wp5jP>QyqxQB8{SPxH&rW@`-Xr%4HcVE)l%cCxB zYS{z^((qcctK)F$A|(^LY!dIMR63~sNh~F#;X;ISHjv)b4LbW>M{-&+QEp=qxM3MU z%LFA!4cpKv5PL?rnlm_ySFA?vK8Ce#E!y+aDm5kD(z9?l@B(FPuE|hY_f2 ((}uIw#ob#t=)jyi!Tnv$>Lyj7Bgftw?~&=!Gk9 zqkD|n&2IzIMK%XF%nA9sDo_0l*T$Hp=P#Tcb$t^;ZQ^pPG4G2F8Ymulp# )KeCzRm6)5oGMOZCHz?%XRQA7BM-+c77FgbThEcO~M@Zqub~wJ0 zB%Dq!8H+t%_A-Jkr640BFGQu~c1;H`&-aC|$rCbcW4gL~Bh~cB;;}CGE*(Sq5P{HD zP`kgt!_QM8k}ki3($uq*!}5O SXM-}wc@|m%80CKrJ5s8T?I$q~3ojten`dkP^mstG1-Fl(aJvIFB z0sg=PQO^t4gNEohR>xnRz146YpVHO_&UE nn)u)7IsuVufodRcx6@L@PQyi1)B_>b-5n>nN4+ zr(=&bbp|Ch01gK}#-I5Wpx&w+RD~TnHeAs2aLng5fAEeLW8~EV5q_RF#IW96a#_KB z%}Niv9k;$!-T2%}hGYhd4v;;6k6&_{v4B{oMK62r=yedJ6Uf@QC} 5GF2|gEzUzr7|+~JUcmS>>O+UBr2$Wx1d_^XZe$e zEBo$+lZ>v#or!YjewLaauNQk)!}3=wEKB&I{ =3Y=c?@F~~H9dnuQZ}gI1;r&RpZor>M zl8LKkn)cLeQ_4&8^YA8zZ1<1DVhGV22*S OsZC|+Bs4mGa-7k+D70FQa0P-^Xyd+P)9~!H4=a2FnW(bIiLROw2682j3 zI=pJ(M2F=f-emu0Ki!SktkBtd2P%jOz2h2b{)C6g2OZ;Oh?E|zxuq4Zi5fEu2?Zf9 z`Z_?B&Uc7;f3aRA6}uxs@s-JgExLJ9FdefGvuRz~$|7cY#SuISw6926uGwH1ze&Tg zdL@RWRZ}C838DXx=@)@U=x`(cfY68e{M9xr*BD`4So8P0o^eCb@xbqBCBxX)ndN9E zDb>TT5)_#yK5>tubu9 wR-af`Hf)Vdj1QLRATT{AjYgp&G`Je zW%_NW7Tm_h=J7AewnDjVw@Ux5Qq$^~J|}dX`ckvaHb*a%|A}_n`}ow!p|auSthr8N zAY!YpR-Zukjt6&;{&;Cu#1xXx=gjc!+4(e#<8h%&b;p6%SFyv>NwX+HPZd)As1Yg* z`Key4tf;bb*?T&ZiUy|2YE(f-Cp1$PgaoW8#1P} ko%^4X~?Qc9u4vlmf_ zL;Ht9X=;8Dixq(~EK_{8Vt(t)@&!;y(V9nR1|_KE8BA@Evg%I=51e#h^uf(1>T*w6 z`GHr+M1n3%4-XH@$yjDj`AQ#l-%VR~Wr1KKLA)TxrY=LVC-Q3D7WAy~$ZE=pCEha{ zM(W!n`6%g8#U{@H#6XTy>WOD{jLZqM*wf;La>Y{`y1IU=jn8utp`+kU(4}?2yQ$L# zR#!1qH&|Gv!~{i!SXs{wz1y`^PX^_BXWpv|@8om ^g3XZoqsGN7q((xPAw+-D zT!T@+H_ZeHc?{&)|As~^DNd4Ok%BvNvMwQ?6$hEP*R3HtMa_oKRKA?GKk__%p<^SF zGO6DM$9nR()YBl;g6&3T)(MY;;;8CHr* X7TAx_0K2+8!nWj+P$QCxv`)Y+295O1sRLzyd zYg#JtZ*@L%4sT8v{RIBLi|58Mx@n5f%naGB9LJ|({oWayw@+59uq445$E?cTtf4hS z2tBpL_0X{Syw|C>Hh 2ZK_`N!ppu+B~xe_R|>Ua{3zg8F;V }Rf=h1k3Iaq1mLmK@p^zuor 8jz#GdDx ze|TQMTPE*WZbLH?4g6M<1+4%5!;bdy29DIm3b&E0#vBMj@vVfDt_kye@kaDxyC+ a#39g$<07dS#NfO&zO@&C)9bUb-_&GBJfTG1U_#rHy~FNVr~njOq&9 zSIat9f?gNCllUG|q^vAl27H5*U=CHH$wjSd%?vB3>d}OxGCE8|IBP~p32A9zrDjff zwa|{s5Xx1`H3}*$Vq{d~TSRA {VpNk-kHfCOl_d{^{H_YIeJ7~ZNnIodS~=o8#1X`w(XXtgFh=RD(r5$tle zro5D5I;Io-1v}?Jt~TO>9s3%P4NMsREa}Cm5T4>usar8Oj8Zx&z0leTyme(>?c;%$ zThMd{PuwjotKsrpfYivHQ7<)?zaBhV?$U&J&s8BTYuD0!nSaWt2Y-5^jyI@KU*dFX zl#I=@#p%o~#;XEqEX@&q815MN+>M=k;+3w>zCv{TA+n)@epd4CJ!xzZc_&(OsZoEy zDO;_Yt0fTNnC9PKuk&!MiD6k&InPYNw;65wTia#<>-rJuxqj$VuiKEXkHh>!ad5z^ z+a`J=VIMc7iOHV6!Kf*|AcAfKxerB7w%2`2o}SL(hn%;A$C)|#y(fg8q7j=roOz~P zF}(t %a%-W4a=~g71 zUBFRTJ0x &$W!F1l1V(o!3!p?(d2wKu;m*zuABAix#B6_mKZkF(o83Mr z56kdXdCE}3V5*qoNbJG$!Vt9Y-onmq$;0}U8ut3S(q`$_BDykQs0d0aTd!4`A8$@E zD-7$zIy_Q7bV9G7%p+3Bx_ZFf-oO#&M2+mH)(1+VQm2=ilxMgqjM{u38f4q9@1JL4 zTGx5?4qk~m3dtj6%YdF Kpf{AY8lwX=(l#}y9 z_{b1|@j46^BkhMARe#rQ!?e5#8Dq4q#CE>B=^e+835h^`p3g5t7hMb!L$OsG#YXwT zy2JVxSSvRx&wOlo+o4f -QAmf$EFlTD*Ly|gDwt5JjRm59S>pO;eQng zrQctFxLLHzFquwhKeRZStL62)D&cco7rL1<0lL*4F14mYdPyAqy{GEe7|8u}V{XB? zZrYDox5L9wC@2_|8m}7I70k++L`zXn&TmduT!;p5Bu}R}?Eh*V!3=xaKg$zjCs#^W zCN1@=jzr?ayym##LY>k|6Eqvp;+Oy{g{O-kCm`zGg%XcIS)FnGi5IXK^aCf4LWp4W zfuhjVfUjQaFKCYwtFXBE&^`WbR&U$wO8F({P&ZT?K94Pt`DkVYJd-tXxfVT^*)1 zxN2ro69G1p#V^IH;~pYk=&sUhdGIz|3)uqu*VPQCM?1{Fx{3ylrhMs08z5}>VVk#4 zt(BAY=GnW6`Qq|9NqY2}ss3Mz4?X_>A`k_5W@cvQT5c(*q(I?#_Mj)d6R2Ie!BZ#; za?#z~Cimx>kAA>J2;&P>8qT>pw7}5MpGNuX*ddyc9>~*GEM&5r2jab`G3qv~*Ezr6 z%{c_)PR-X@uz6lt@)Dsur~ez9w4^icxWDN4zicM7eYuW!>&aqPbE{IF^Y889;Sbyp zQj^!^01FxhhQ(@4a~2y7Ef*~RuiZg@iB09gj4BkX!ez3U%SNwvhne(*qd)Av|F3s& zaw7AuF}6iR(y###0Mhl^8HCoBr8ku1B0Wl|P5Wm$^Y0h39)$XgjEO-Z5^(+8PQqoC z=$o4JH<}vfGRXfQDs}Hkrb3?IQ^ih&<@2%ENoYt|SdQDRsf-7CkVqDvlO*bY_ML($ zgUHZ6NBX-+Aqz49K+SJ!TV^E3EuZ;zSk;0;>U|cV?fB9cLmXKk6`O9N$=xm JJsk^f1JGn4K72mXW{6#>;hH~w#s^8X3x{(s7%|KIn)zfLlj0qR1bOadAX z4s7`hLS(OT^1mD-5Ik52au!g+VEzop^2EZ1Rq_$-{?p5t3GDh`+B7bQ-rTtUYG}xZ zG+zko!cmOo;dWCoF+Hd8uj_qJC2md}qN1Tu%#Knnkj%@=>&)C}!Nhz)k)lwU;B%xH zg@w)d!Kr0|`hwq0^PI)!x{rKlDb*1nh6mOSjSqVTK*;eKEPIgoQj^12dbJM@F>&Q7 zG_jz&QcejH+2lvv<6xVRf9;GJJ3>x6Y6Id1;C0$TvIXwbK#~u0nf(4n;N0UKyUnRD z9QHJOI&10ZJ8$`EkKxz=!^k@WXt^=F_(Sf$3`kLt+F?a)962^JF~zPhu&@ff<_wTw zv%0k>Er~>YiE?~y@Pop(I2y43bsZDXQz@M97w2q1i1AcjhkWgY_JmE_?uiT>);@=j zgiVJ2`<|x75e$L~QMgQMi%Uq@W0)=frFqg4?ceQ_8bd2ltrp|(qIcqh0f)f^w%wdP zZ;|&5QC=s3bB8tw8XaFogm-6)@4p%#r YTOnJI1B)tAzx=Cm} zI_mnOOy|zr+CL3W&g$vk_7kMitA*qda=wBHi2m6ItI!~9xWLY6)*;&xBxAcXoy|Yv z=d -W#N2N3#?Tna9O)O`&qIM{vY_fjA+veYp6gnwMOz1v%e_rD!K`5y=!unffZ zyXz)pb=VO9gFw HeiM=2Tg zQAP$Hq7^bxI4?pLm=%h(@I8a}ecHr53$lPPR_)7PG4Ndf?GTM2J(J+mS@)kV9}-av z8&z2S)Sq=6=CC(z^ee}@aK7ii;t=Q)*oKfH)!m6(J0b*%oSdAj${v9bk|en)b+3@` zj`RHoZHWQ79HW>t R4ycb<^ z7aV$UNInG?wkg>PW5JM`8p2P6=~~9$qE;o^I|)kH=W)d=n!$lc4bXqC>Wj|$g7a}= zlXH1|^QgXPbGG>Ez9{^Hpb;h}rnz5V6SS@F{9aFAJJ;<~O>l8wMmc|BtL1rU;!ln! zpXQ_GWJYD5gU08?sc8Gks-IrIhfM#tM8^aU5%KgC6;m>i>$EGdEQaiqK|ep_?<-5; zS`&I#u2x(~Lgr&{@m%wUpL0Wt@=IiG8m&D|kYy*mSonmCk+`ClhvwDe!2+qf4UE+@ zXc;kAzuw|W4U=Lhx4JTERO*Ffmk-J6eY A?vR zo7qkYhLPBOMwCzpnIL%-kx)@m0r#`F{+juDg3MlsWis`kTS!e!{=pU&VD6y!pzG2O z>cuH2vVL3+%_cmokH*a{+kFIv(#JN;yO1Ee+q8{)3z3BCU;l7!L>==Xsu<5i;FQ(7 zE;}Sr1JL(;dv~Bk(?iy!zEq&ceOmTW|K~0j!w+}N+1(;?nfjn6{3;E!kf`qjCVHNh z;_})G?O-+`cWaA3O~-lrJz?z6Q>o1>REnDY7S$U4&{K)r`{Ic^r-eB=9C!WuF{=z; ze&k{Uq<-1DsL%#{4)ZlgltL7O;%ZM;Lhi=iF6(;V{V&g2PCJGT%-3Idvb$hB-H8nJ zUEm~RIV{lJR%2UQif)Ni*kpFJ;}6WzckOo(+BkvvKPcU1=(lddGpWpQjMa^3z7L;Y zCX)n7%V8484m&VmeTX-*=bXvCE%i3LtoOCiK+Ht`q1Ej8V=*oyU)Bk>C*RP9d1vux zPPgW*T=JHoNdh+fytVQgBq+?%UG{^mW;%t!dJu!ruasbPfU|;L?i9iE@Z$pEz4TB1 z39wMhc%pPLU%Jv}BaB8!e!dDoUp0`Tt|u-gRT?o}kPzv*Tq>&<$I#})d+sPhne3RR z7z=rpmr-vUfnOt^Zm3NUUu?FIhId<}CA(D4a+bbO;>&O?s2A6QqSHEYuC4Mn&{1i@ zP-1CPog`p?I+1rS^V U0;>=p~6O~rhu1A fY}Td@&DW(^vJ8)aO{N9zl9`JvGoazt`#DAZV?Pizwfq|3%tgg`1r>m zxBB{WyQ8%Vx=5-vJXvbqNqyD3@^|X^rnZ!k5FW7! V2I2gBNuLADzp )truN6)*Kv}IQY<4G8A8@9#{NQNNi-lAt@d$vs3+!unP*Y{Hp!* z9PsfmR$J8O`C1F|+RQ2!^b=MQ;`z1&a7vonD^;fUWNgeB$)U1aO{;3}<)w^tkTUD* zE!iVmzp;Gs{f;bOf8A!MQ)of)VKU&LReVOnOb>#o42qeRzl-+_it_vx=hR&~iZZVm zYqG;1`^c}rtu>=_Y$kM5S~QWF*Ur5XPH=lWphOzdgGYEYLp_k9{rx+-g-u6#(xuYU zv{XlPtka5~rq|IWF3R%pk1^{Y#r}f!2U*Eazc7>d45R=q1{N)g4L9{1R$rzNr_eSl zBy3`lCr<0rjVv=fj~7<4n(ybn9Z;9)X_Q)PsI#&EEK_fZlGH6ruR3J? e2JcE)mIS-jT~A+f+P?G3+wWea^SI$%)O>cRRP{jgsh zkxq1 ;1E>m92ny7??bL(1j8W6 5!8p)19oPB!&(;cpqk6Tkixq}5@#tf4Cyevem#TR_8sauYoi|J{I=T9)pcRRej| zS8C&_<$Nuxv=+z8IlTA^82-Ks2K0DKU#y )Cz&pOkizWhnUsi{t*X)=1w?)2w{e zoh(%z6H;xexHyTa59{L5Xj~4ahnyQU3Jl}vc?ycoJ+Oh`9CdIxpoO@erBd9=i1^~6 zWOXjnu|nTa%tl#|-C3Lm4tqq-XdW-1=es-A;t@$FN4%~|n7TtHq| KXa*FGNa(1?#U=CM;uJV`0WUSE|J1T=K7X >PNP^yD;yn<$9E2XY7{T z9O`Ju!XF@*j3*W>L@ofU#;Da3E@q3Om8D0MOt?v70_g^U8-2XVqg;J1U)NkE|BPB* zcC0H7yC3zr4DMqKE8W*;t^H#*-4Alo1yy@}%n)8Ks5e)W4zuUMT*rL^H0vU}vE9oF zRibeaTU0BI-}4Zy)`LOLI c!;L)g_dB^wUrp+#0ym4S$c82S<7JqOs=Mx z1aW)?yz#AllJwsEfqFhzt57#R IFEXiIo-C- z-;nrbz4mRK^#bEmLVUUYE{#;)#}POwCWNis;eE58RAQzW7)KI%LtmPku^S2jSU}%0 zA_CZqvI5rq^hIjocq0_f>w)fEFCiW-=XU_X9|Zt)0*d2|TF00Q252Wo`t@)HF(a98 ze2NIN2zr;|dmcO3(+4?P7P~SAK<6zBnvPkuZ`7V%1+2T&_wYB+rZ=}!2LpKGv*t!I zPlY1J@Z4nx-!gOH3+ytVbOi|EXFaio6I>+8jRy%hwK3x$;UY6J zIAa{s5~hO|UmGK%GM{<0or7pRdLeFg4;9MvM(ONLrZ&g;1!wUxY+EU5hOhPICUzVo zB*iJ4AFZ>#)MyjUg=o~{H?Zz<{W BTowa4WA` zSlh+q1P8osHe!|h*$xj)z~G&V*{{$Chz})@j$>*|+k#`-qa?<|nw{R2%VhCkMyt&? zBc7pgOs(M@;*2o4vUNq|mSbh5RN&gpuc#uVUkTpXGWIPbPV$&1=~Pa^=bl0M@+Drk z7I9>8*5vx&dTzEA5nGQ?E%eHL%t JIopoPT8AUAI4Dwu`-lw{_4=(z8#&0u1@Buegl2DGg;$7Ou{JWGjg_AKgg=$!- zhl*n ERXxR9O^3#fGt5o55zZ9Xu`#4!h}jg)Hcsh{bK2 ziEZ)Y)@%C#4eO4o-)5M7^5rYr7MxcLZJjoyvcSrv;1Tt~QOnmdAJ36{$C@r0px zN!d8i&=2FIB%0-xETDY({0%*PNLC_qB<7&?#DgHRuEzUb7HfYdh0I4X7)7TU+7Rxy zj#0|<=^^e$mvZd)VFafZt2n*+H^seHf@k#H#18Q|oPg0!wTEgIgZ&pH$Ti}$WUBok zGN#xP~(0j z*JZn<%dpB(D8A))mSKkm`y>c}U?SyXf+2GSzpIYK#U*+v+8E~4g7_%|kJB=MMjR@7 zNiMn2X}$F|Urg4l*xSs=`ygz73jq&K!GfM11JOZyD1zpf3elpcA_MhS& Qexld0sG|N$p=}&ST)6@ m@0bxt(*5r(0*z_*tfKI&?C^B%IV92k9l+I0(M#@ns5y z>`2FIxCke00qcvg5>074=$qRgW4TRSbU2Ta_y(?UY`C>eCTlu$B3mV#(AZcIe_Shw z7bC}g(KJBRQO?@*$SzkM4HBy#DGJp|G-v9{ 7J6RCnV7MlYb5XCqPXbD)v)TmxAoSx*qta0{TSExN)s*G+t`2L;^- zxLpl43zw_Z7UMN1+u{;2DCzXlXWGU -rK*`|Lf^*fGW4MFM&ZY!vX$7h)n|sC z7exV-{mJ!IhsEoi?)S9otEWhloz_GmG5I+!*x(Wm+%^Xc`**ovxv|7q;VhPu0T%F# za{luY`mg5(wzE^FBx$!+)aUL0HOV&KY5t5jig=XYkXe<~ERiTB(uQ>lx@lUB3p^b8 zs$ `eJ#6{zV{!;5)Yl9P=h3dDkI;{Z>>8EZ3u0 {(OMc?Q@TUeRwpXYY3a9Md z6t?bfsm?wctpp9DFPqHuLfdqsvgg?;jUp}~(uxX_R<3MR36duAZ0wkk%BR1`X?nvm z=eF0)aO7U0>S5;_UhXC-qTmD M4Nof)DIm}vse`xT%7EfQzt=y*BfW04+PTsgy^uLwj zPLeg>Z4iS!mU&eXBp9#r#=0)jBA)TmB@5@+H;CZY*^agVY`&0^P^tGLal;o z9F$>YqmVz@%Hq&Ny1MI?T-yghyATVwXBbOY_lARuBP^;S)7+X?6gUX4E6AgM8+-~v z-zpd Kfv~A1qK_keB31n}+!2_r7=#FI{9T*oLwBv27bItvTz2qKtYsb5{7rNYs zU_}N#?29(4vHq?m@)B;cIqoh@vNe#%GBpC6vJ^#wArk@w?Q=1~*^v+@qcA3MEDOMU zR%(AinTEou8lGx5mDVC}OU|hMVJ}=!{{zVLE6nNZ-_vj&4_B&7j|DJuHIR8^r8WED z&v+3nr>!W|ir!E;zJBZ=>#NnbAdEoXtkZieUrius`;%JAM%HS*p-Y|MF@V>6iNBN1 zdEW1>TT;V1v2*SNm`SU6SG5oJ6K&+(0-d*Lf5}*G0}%doHHUxt5asD2<#C!@=6)P9 zodvPie1=P<9v3w8&h=e(csNog1>j%+^cw*9e?U-|!`ZyL%Z=&&AI<9PTo#gVpe5gS zvUhDXD;Ep*81QJW6W`|j6c|FfmWTfR#|?hHjPzCakB~l`!(w!=1wTc;=KhoYHJJ R%IX)t%ix_{V^wmE9&IDLlD@ut#tL22LNq>u zWT^aEuK9>2J7paG1>IPUU~(e~a&C3(wI{!6y{Mwu6aDyT4Dp`}f?ik*rQauejCedd z4ziOqf=Bl7ha jE{bfd#Z?#|B3bB-1w7x`ed1z~?C>^>M z&|>jnXDBsMplEo(l=0w@TW?eBMPZ&iEGinrhVk}4ID*|;q9p>h!d!pl&m`N}N}*4i z>2r&>jf#1KL$8u4c*qF3P0VbYJve@$o8fDhBpcYJ@=QKB=OU#=aIjiTI9BL36GiTb zlM5^AEmok+jhwvf&W!$97~6x$eDPH-U%pMOE=R&~`+Qq%b;AgwIw=qSjL?b5FyrQk zpT@hi7ZHViC%a>F_w?$5nuc!9$<)EY@Nv;$Ob|MZ-&63nO@(z@@!3lCHKHmUH_?sv zsZwFks7PY=sD*MCc7)9 ;89tT!Y{4ZCNuv0ZZ*Amp$BERNO{S^N;k!wid5-bi)stEXjfiF zqi|P6{4!JVvZVPh(K-5FS+o$3j>JGhxReTK7h`3KZg%)|)aNZ6&D=8VHeX*Mx}@*l zDUpl@vpW~(wDw~c7LrzZ>4iyVfsR<_#gx=+IJcEw-%w!2*;3)%$m_o&AY=eKb`YpI z$IYp)e%I;xu>T?I?NkvKm88x(pp4DSN^_sgMeDPx+ecaWk;vK3NmzpotM54PvV|;7 zC~fR#tChoeiPPpo=*mmZ7c>{l59bLr9jo})+6M7TH3Yp>a)MxIxVNMi5h1k`=DDyE zlL{(w(fXLfD7b}jV$zMb%nK>_d_zZDtfM(p8<1FiI-YqJWu1YKHla$UGK43SZ}!gs z%1$^ O+ZPSUO!8 zafykhC=(B%2~0X|3gMbIpCW1w?w!-DK~2)c_AyZj_femx)casPw$wBT3lD0+upU;f z9sApYIp{kif{Ab_-1${K9ESL14f40_)trd1jxlW+GYTC$75xM*ZE|D7l1AF^tON rd=7OjIChVog$SdE{!?IuZO{#>#9E21+mt;vdM=#0SlTCTceKDC$MYDGY6z4 zD12;PiF>*F3{zNTa#6hMZx8$XfIwLtD;CB@y(G>6rzE6jw~uUiKA7MVG|$(_0hy4b z077T>9JW8c|L|IioA>$)SFz1v%MB$RE9yw#Y6#?#*(rn1KSDC>d)7EarSFwn2?PIb z1P`4R>F47u7WZZWH)L(PuGIOh*I{L&^XD^TU %?zN!DQ(uVbS*CgQQJ4 zGCU;MIC+RF;i$mJZtP!lV7%FB36a}0-e%I`rhSzOZ &-{fC(F^3Vo`w z*5+$6^K!hP9%QUJT#*k|nQTc_$?UJ6wD8h;p-VNlbkNfDex?$q$25^r(HucuGKNpl zM!S{`^+2hnnPjwv3acz+=)g1s%n}}2mxu9ASll)G7hN{0`}DjZg-M*z5tVV>@3?h{ zUcHR5f{8sw)DnR6oBc VQB^8)nV zY+9WTaq*0n*-lW>gM55RTHDMXzHrAC)a~m>?%!6#@8xtt$~G7aX)JPcy)h>RFN(`e zOaOEmxJ?U@{GsL3KybB00ATOq;(q<;ut`;N%Zkge>V*=B9-do@>9?Lo7q;f<&cb)^ zF*3t6!B%+^{$1fFA=Bw=w5FvklFJg&+Y^`EhL3IB*>^=KgXURco}G~BEg@my!X-V` z{IvH8;k2p)zSYR(k~(-$;$EpZGlPBlS6Q79GekaK9uo${!MAB8kPwEAbvZR3R24~G z8R@b_IuPVsO#gL>bel-vDpOxoRae?quR3XsRdKTv26-+Ak)Y-rl#?D1XfBUG5~MU6 z3mbRo%%q;%ON||evwK?e*l1L5uD@i?XVX)WRVaQ-!y38l$M4%+5SD?!6%4idbPb$5 kk=r|D#r2ujOWddzS{AVtsU1P#108cR+g7mmR~=uQ)39@7b; aec6lt>U=?|xg!ohkXg3)F}a(XRU~t+({|^B z1|c)ewr#K(^tF8?Vd{(N6RkEv8a;fCcdvctDjAvuV}(5~gP~8qG{v@|GdiP%UDUGyTOhdk$lk?rMLSfE)Dr zVk0&8q|U!;ahd#yikGUl_dZTAUz^V6r;+bEPW`AkU{Eozz7&f=b)>Cg;G@P@n2Jlp zT8K0J8Vdq8D<`AJX|&E%Gch7*lp`DQll_=BGm+8fB8o>;YU-VP;jGWpxqV3X{2k99 zE}0G(`@=&|ZKl$}A!t(AIWbhoG;3AIWC7|b>oGiryx!useUkvB)`MY4E)iuX{CQ1> z8cKl%?bD$}p({LQ>Ga?Z5(}arn?p@91 S0jJ%F*XAa$YX7c5tEjL7J3WkqJQij>nV z0%pbfT-k!qP_T^6G(MzP$P6T1sxLT2>A396HYpIFZVBF29I89GVqFbLDSrp5WTjL+ zfezfa$}WGp)WzE9I$YaUF^Pg=p$?eu-zgOfZu}f+Xz=|2kVm$Kp!IR8y2xI0-kS^a zt?xqMQKr2(L!hcGgfA;W59Zkdl|oex$Ug=Kuhvhd-&nB^-(+f(EdJ0XbxN4NHgh6L zMpZiReOR!TP^of=+UDrg&I*$_Q7jYO{d-nBC1>nxC1U+O0#Qsvqkbe$JNJS&Bw@x) zvV9xFzG*;wr{sCq>apZ~_V9kGeQV*w13l{JsoWYrfjmQBhMBPECDlurfo@RK9qUrH z0SwOy+dD+Pul&rIevgpYtP~!A1mO>Zg<7U~4TCD^4^hL95DD;5f?Pz5L0p(%*bGR( zT?uA|$s3!r-2`XJN91HQ4L%F8Ed^EC&j23 zYJ}Qal<73oVn_Js=#cs lIpTcf-A@B)fe$z+QUQ~J=EiiPvC%=iCrL4AGeIAb 8oPB+i z)D`Z?Mjy_Y_DXi>h X sn$Ma9XWyc>(CrC_N?B&ZfTc<#3_!a1cQ%XLtJ@ z=NeaM<7MvZ;XK)$n!)qLW5L1XDp+Bp5qM_R;mMt8{r5~r=Q-Ex^}0`WdiB#@1MAba z*XA(XExb%L6mhWYSFcmb;ip(daz)M-zd1pO7akIc6ZMa{DXiOHCfs zEy#mu#rqs~N$9uxY5hSPGs7z%0n3tSw5Oc_iC@LL@};5R!fho#(`TE0MM~4e-PRZ9 z|13?2O-0-7NijV1LY6_R*G6-*nPobfhqh|**hu!C*62pPZIdUkH#gui;dV&uZw8}? z60s!njb!){mO;nGIO=4*+JT8jh|52|KT*`b$Nr#@SZL~XnzTfF>tClmU5!8R;e)to zH%4I#PwJ2c1wxsIkuZIHJrySQPdVjMI{mCzDmiM6KJz>0?jL@dI$3{FX%pK!-(fS8 z2v1XkxeQ2STWGJ2l)VZ3d>+wMUJp5%9xP-JB2Qm7=PL0wbDy4P&i^ur zR?X3Dmxg>8I;$H@fg0f?trKaw1vG>DySf`tSMR{zDaBf9Gw 3;}{8@P1fK y=rLcqwEDmcrbFG~VyFqYY0V0&Q zZ{Mbxh(8N>-BjFv`xhK(X&H|P{>!lX63sgc0OglM#ojg(I(K+LP~7*($Yx~m-hB<9 z{`^(QODwvFq3Cm3;Pc~c2K95@$z!zV7`{_fmE{3%>~qc1-+1CZr2bT2iE;s}?~{97 zaEaaL_Wyi*A{ZXi5K ~hE&kRG`zWkBHbX$wItZLe(bd)E95Og4`}hAR zE)F3ni)G*+WZ+~Cytpy%Vg4=d{ b*{Qvsm_`l$T zqpEKLX+M9o_viD>dmCbCEFH)9Ni%9 $8)F^;}C4VEM*U;RW#}Nkt*?+^yvQHPg_ODn@;?9{JwKvam+90STCfbot z1ep=;XAx59gjd48@$D#H!;_uw-)H;7i_${$?gIQH>@GEDOGn%lKE5zF=@Pz}b$DaU zP48&kKvBCxUxvFb3xkF}F6MFLF@1$5@ji0sS-3G8nkui=OVJxGGG0%RLtFWYGiJBv zBYxE!0zSVwAgJ4dj(5$g8mcbmZ|kr=m>MW m{Y!&uu@d`k1LPvj(F?p=ny+)?1w&Oq;RUY23s9j4=n7hBYJbRwR z3`X1B2y7TyGod$h#K2+6j1E8f-3=0|HWBj>@~#%zEHWG)?B-oMaqYVTj%HhD{e^Z< z%oss2%E+;u%qqQ2Z&Mrf_I)F@%J|7^>QFL(RL|*@dx>@Vn`#T<*?Gnf^HRb?zpk4z zy@M|+M&7^&eIgOtWK^SnxSH>;?S=1fAp9%o;rjMP<(wCQ9V1yNG_iEYnILn}Z9UoH z;B>%#INb~jS>vwN%-wljFgRlqcPX2RZuRH8YS4cFUQb1c`_)9qUR7XsiTAa-nw>YY zz%T|7Ix42C(k;5T-_8Xt14hFe(;(YVXn`kXBYM01OtO=k*G{1?(=U>B_YMDR9Z8OS zD`q22#yhd^FxS=^#@n*^jx|L;;UPR7oo-f;l2c51=N25Pm}D0f(c+8KW!=W^oNrHP z8Y27Xqm%JivLj&rf*#gwKP@CAR`^@UuDefL35`g2KRX8N{+#R6(o^R1{S9T!h^~K> zsJcGy4wDzw(9ZRp+MY|65Sah3O0D?}1_XgAI~%~oD8tMB1O?~px1q5py-je4_IjVv z`Bo*i?)ZpWzMS2ktZw$0p#eY(nFbxr1;k+}#FJt}*~fGSZ72e 2u`Q?n0@1JzqXLvS~!b_&Gd1 z1dmTE>v(SUN%*Fb@Ukg+)oHI81d6F-MonJv4)7$^?XRC&iCSj5(HGKbnFSvjdVZzU zzuCVqI*M%sI`2PvJM8OARv$QmEqq+Sr4{A7_X{qJ-p?{GZpQX7=@Sp%_^ReWco7{w zem$f4KD;wmd -g%NZsteMh-9s``NZ0?;&4*TB-fXB|2rU{LfklFDwBcB7BJ#benN zRCV4@k~CWqfwXoDA(Zto{l7Z00|P@9n!adtmKacUP&p_(RzE!?h{Xr}(eIjDq11S2 zm^13vo_32K2Vr;RZTUJ$T?eAUj)O&Wf95L+*Tn~gwr7lml@)}sY2-%Z)NCo_0$Z*j z&pn;fXFS(vZAo7j-w#}^Pe%r?R6LgD+9ZM6ksN2^OeW(F8^I4 FZy z7_2IYb2_e+?hnpUooq+?kAjeJ@3oHrIu;i)#;5mct68x}OX0`lm#lV CT|`HAr=WB)y?uv8Q33{tgoUhJ#^1abNs@lFUX0?hx*R& zkfU6A3fqY5hR^hI%D&o>52bD~Y8t5ycbDvg?o86cX$)qT<)Yp +yz^q_bHehM{e&3ru-&TwF(~Y+K39XA4)|j zSypnv45vgUJa;TTw77=JVqup VW;N4E|ECciM=JXof?ko*9`ZKbQ<{q3T@`CQXA6^_bv<751E+qtx8gqG2X-J7 zj&fK@!DqcCw_PZ};{i@Rwpf%xDSC8hE50-n+fd?oJ^>)(v?D#-bc>K$nngSID410% zQ-PNW=eiMl=3S&(GsCH*pyO|dA6inqiZ8aH0cW&{m)Au$S_=zYA@#ig%jvt*L{cSX zG4zO>O^H5! vRn#Czt6>t{mSK$K504(J z7W45-+CA2BKVxcDc_O%R8|~Z3qzW$o`BA-*mVdG4iyrRH=S$x#E@1}2L+4y;%Z_Qd zb7>t$z=4yLL5@9I_34|FoRzG;ua
Oyc)y860$42o16}-$1)qN${6<|`mTTt1V hZ%;>bHwwH?zFB|KCojuyPNYCi02v^$hA(J zLY~6%-w--SakD$86bVJ;a#nFkf| a{8dDSe5^Toi% zASHIP&!nSPGO^5a3R29Qt&wb@BEwtVz}k&e_1Z;5xBPwfGwY;r(D>b@pt@VxXby8v zUou%w5mO)ISWrk@7Q}8^oO46KSgHN|i$7+$dm+opi~q*x@vyHIhIlb~6%_td`8Zwf zGgnr0NG8qFnfh!`U>rnnektfuahcOQ6+$?Hfff0yH(RKiRzkkRcBa8J+d{vjuX8QU zeGjTYLYIVQv(pTf{7ITi-(50hxo+U`-uA7yNN~t`Unk+6H@xIiR~Q;`O-nf_+rx;5 zMqGYURS(*n=>`BZ)|xw-2j9fN)VoQv?*bZaBdsM5Q`Vy!(l}-CCWaF;H(EJ*0kY|b zS<}L<-9fxMo1xtq2NS~E!ruFE%6QMcwRm+D@7z|naBfy#YZ>Mk6}Wu9O?861_!k)Q z0vYort>^Jn>SSw#KOo&KI5ruN*S@ok&oY$o=@f)8E9CUX@UxuS@o{YgeC8|B5H%KK zbZzb|*H~s!Nqz4}pX7`KC6!eK@qV&yCQT^?UCwcx$PGCh01lJ8)1&a)rJrvU84bcA zK&9t#rpUc0qZb{KRN0J+gh9*Y+2t}+xG!Dr=E79nvIoaD^EGNFvd^#8 sJx0w?~fWaP1Ls1Z#D(4wZeLev-eb!|~Ebymqne(vzP0%F|$? z=ldZlHbkX s#~M*_)s#7n z9s3YYigbO;eE;|efg7f~Ju~c(I<8_z #wwuhWx5}^f0qffO$+Q(G^JID`t-D6)->db6wM`Bw0x63a}fC& ztF$tc^$XbxwagB*N#pTEbT=@nsq8VwHAc1qKBFOU0kmL--IDaMT^kI=NM1ro+mtN% zDEW|*MzDE$BLz;wJ6;4I9_{t4Ad7U>iO}D^23?JIR?MriT^PbxIfqpf&rLwoH2Iq& zaK-oC!qWizndpUErWPYjIZgGlx0JrKSh*eyzoQY<7nBTu*dyVP;-`%t`{T3R>o4rv z+pzVZi Qa6XDDIIvEM$dJ=U}rj2dC$iEW?Mh@Gq)`6!OG#B)0bDeT!Wj$xf&LV?@1Bl%W +Q(NV-P*g?hGdID?3s$F_FE;$^xzMmo#K$$zvgLzV>^(|-cf^F1 zu#@*dErt0$eT9x0(mex)VIA1mN&CkX9_#+Du?xE<%a`{uB4Yn7m@^7!7Wi-& zyjfqpA%1ws`~1RA^kQ&N0}wrP9=tvp610_E4yaxAd|v>a$@|jRzNU5PwG&KIwERPW z&jr+op7UJ#zL=Pr_xv#0zT{LED!z{TZ62sBmW_WWOE`3NOurxBOE@OEs^bOM^Jb~& z(#02QSH^99LW-0t%+BOwOW|lm>uC0o@lB`dX081>rTfMp(U#yNW3n`JC`nBH_0#%A zGpJfbKndhR`pKBI|2D@5Ls9U1C|r^J5hdxi1P&|W6b; ; zRR8(dQsD1>5|u8gvabmvB!Mu~rB&73M9#fj@{h;;! p8EB5|yol#*?AP&4mR_?G~@^C}T8BHu~+ zMLG~gR=*{W+CSURhp0w#vol*##Skx*>y%`Sx)KRH;~m=;H?e>p8-h;At;}8@YjW@+ za(z$Kaugri))X3Y9hYOTs#Sc?y2fhje_*b|51q|*mG-HB&RL{n @ea5hSbubThy*PmL~eQZN!d3XK#Ltp z@q;hz7b~0kiamhQO&-h@?5`Gf>vcjtul$$khgDoJl0`<7--vhO%moh_4Wnv@Lk-r$ zgUS0=BM3D>LF3qq_BN9$Z%bXi`(+tGru`1}N-<5{xnCs!<9s~G38da{6`9h?L02R_ zC+V8XI!_e7phcm9?d4{W9ogg}^DA8Moy4|&{gzDXeWld-*2UdPSiBwuRGkSLdI_jy zOm~vFBL_F&W0cq(qn|`391hxAHCl&Sq3Ker44i?~Ijm-kWzcJk&6}r&=9J%qCt #Z7>Rx(NF~|;h}`k!c&4OkzSL?0%zs@8iuvVUWzipVTvAol=XzPprtfkhaUXl3 zbax4^F?mIgLd=PzRur1RRyrCRhybTmi*pt&RR}xk`(cN@Ixo=iU%=l8)gkA^ em&$l=wctAAS}yi`)l%XD@g2gJ@KupWLWpc4-Un( z6u+QzgGXe^`?KqtCEjszADzCj-a7$vLWyVI>&DfB$_B5yBh>cpbrFD6m~V;EhXt@; zRM3}|z)d^2aVQ4KWp7%*sxN+Lit5eGkbjO7uNOj&X?Mi!(0PH&cF7V5jwuX+V~yXe z>#p*|<;J1C{dL-(eY{QgJQ#cS)OS0 {2 $(Mq#GY z=2pc(Il*R!A@4wqiSfNFz~zhL_U!Rotq;S^6}Xv`43E4s%hGx&0L)#{9XZw>-gsn! zhAlFc*_ol}@Tro8bxv+Fm1LgdEDh5_t%cxZWwxNt7%Qf0;&x;tZ`WTe`_ZCIyqx$w zqTFoT_m-YMiqD?HJkmwGuye%vJA>iQL+gOw)sk%-7!J+N;gPQSpoL?oz?9#?aA(q^ z3DS{l{r`i#_l#<4YuklYRBV7KMY@WLfPnN~6aneIg)UM+`)+l_o`{_udIe??gdh zBP5}QP7s6uAw&p0Bz$o{d%y1) _jQ4UXIH*8 z+uw2N=xdOyX+Id&$&9afJIu@AmbDyAlf_DFu_WBscIKL2=IaV$p1mmd`z3AeR>y7} zX#x}Qv0cY)zg59)p_^*1WxMS+o%|mSY;GR=HL*hg-M0z#To`~Q^I!AGGH8?>Oq;oS z2XuBlH~f2yko{@S&pY6x6WV;(5bXW!yg@XZt@lu$+$qW{XKXo+B%giYlIu|xz`Qb2 zi$;;)s_^4`5j-J-JJs3bUxp+}3O%LH#MuYw&RANEu%DQ_O4(M#>a&Zg5USpXDgCuv zUwMQ`@(N_7M`pq&&72i->z$S(ZwP}3+PG|n_{R$*-gDo^4SwrQeBHQ>*awp`kM4?4 zsQc=vhx2wXU*zTsxuqH~U3V4%;m51}cAFQepioBay>u$rT9_&99*(jvO_0K?eCVRG zFWerW(pN=n6|d4|_)p-L>XJ6+x@Zi0c@B0y@_NeDfr-TRxS(@%JQ@4984{>dhx?1| zLAIs84%A IAJ)S9JdS36W13Ss=JuVa!SQx9rodOW8HSFDrsh-~ zdto1 %BE?jtU#L**ar5gV&JUlZ3z=?%Ow$4zASa2HjaBT Ef#?q&UQc= _q6dYeb6eQe4d2GE zu#3@;8;Cp&)Sy170On42be&i0hrgKZap_mSRI*S~Y`a+Pbup;e^^TeCi_h(m+9TL& zS8^lY^NtIzy`*XmTzDrFk;L sZWioU Cbi| zECLJL$-BdmL#4R~vm4glrJ1{mL2EeB?j`~I JN3t)TEMovuNNqqN>;ME7j>TVh5tS6+%xfc z(VzAcZbzcD*}~VY6nvLXGHiM#yw$#ta+Ifq_C;1`zt6LLn4aFa1G2pykQ3X#&lC7F zaZM-B^_XGBvH#vdjnK~oJ!-NZ OGFH4QDy+_d zj$PiLwl7`jJU9@tR~;d94$S*XH+1j%&x=UhoLcmWnpK_A@zuko9nyrlrRYxV_OARc zkq*2kA#;Uh4*j;ze!=PYpbe{+u+W(7XBq80!ba*%!r(^Mgp7gm2M{bE!hOgC5al zcT0;yZ(mGXJZ 1!_4m0Sh3z`?o{ zhZoZNgw3c{>q$Hr3W= B`j!CvKZ+dOYHMtm~;-I4f i~Pw)us zYXaBxA3zr-%3ErMcm|^G-(QS8*p+u={Y1-7A}M5dV+7~PlhUpGvc6CEt3 @EiVyz)$2&4C7ZsCx}T*%Ut_%fnSdm6?=(x z!gm&o-ksHmtlfsNf|l!erq(QQzD{-3 z&T5d$%gi$?drtdGbX;$jjd0ET!%$vUlK~yKpw+;UG69`})p7517UmBf-G0>1IUsLB zp9FOvnn4xg Rc+=a&Hq62ZqER?I6^!eYW+?LLWGSj?S LCcW1pi z517}#b7qHl-au%z(R@ql72Yh(5*GO$fq3iLOWsuc+4!A9Vd3rV)R{ZMD-3bn#}eZ2 z?t8V)MoE%|X34WF8A{AbdU`jr7ZkzWg*4ac=(vvVC1H3UzrO$cKf==aV?5bd;tBJ+ zn;SEaj$e@4=Rfe=mAZ2thjX-@l(kvgL6qmcIp~$zB7YZDBy3DyzQk?DQ5Gi2{rKW- z +yzkVWnj%SW`BTAdr z?V1Nsn>7M*2GKX2Sc#CGji8sL{yE%Tw7zv*JU!?gEs#M=Oj1-K CU9AdhAx}+-CQL~sH|DSM#KhE`bshVeBncsS^ zy)BX&C)kBs(*%(DZJeJmHVZ^w%+{W6m7||Ab@-Y>;gx&%;1SIb(+hicnUPWY=&wro zz1C4 j6otl# zuePFpe@p)-qUFEJ|4$On|0`e8Cz~4-3s(eoKe}H?U 2KX!F4CpGr|7spfDkH5R& zKjPFB5~ELC;>Zp}sJPe*x8v{sebu%9Ewm!ze~qm8Ka_3l!yf`oC-@X|HYFE=La|2S z4fNie;ElT@e1Sr$#s%J^r{z*`L#S*|?0lmH%lPG7tq`J6KK(6$nH?#?saSZumiw0@ zd)^6+UtFSU*}m#UDTNnHW%ySUAehop9UZ)_hI7g)kb|P~T3##5!NKu|Y=2!pXOZ zrORO>vqk=Gy@-MT?xcXx3y43oT9mxk1YJdv5#*U{z}B5V1W&M5D@q2e6!=7pOc7K_ z_cf%9a*-HC|^(H8toem8+zV2P<^qc zF8!g0j;ydF=EI$?LsQ3ZDY^>4C>pj%N;b$kHsOZPf;Siy5D>82aKPTWx!-_PSb^F7 zT|vQ1z()~1=bV)3+o>{IULD1|e2HsWss{7xG ?4YY4a5oh99MEBAf{|FdA>{Ni<@r+unr*8?+Y@QGh1MeA9{Yy-YNTC~r+WYrOH%-(n-URzCd^M+YY{9~k` zYP`7)*}otGJ;{BI*L)+IuHmb->6_DfDo5#0Wd|0_1tdIqh8=71JMS9(Dfu!*s@lIo z0a&!0WY=JtUpo4vwdXhbX Hv*H=CZh{M5){Ox3X{ZHt7Lx>p=q zwCYyOjUi3i+Y(VHt`;uD;%!5K#jK@)D4a=0ldlX_?DcJI#NY;vrizi?1UfhmYw5Lf zc7ZPXs1@D5+m7&WC1*pXq>%)LTFG-_;%7w(iX0Wq2yP4Yx_z{MP7tJk)~VX>vP3EW z b;s`wy08XE~6d$5NZ 2U*=utx$;o4DWRghEPLG%(zo~@x(xB;T5&cfg%RhRXVaE-0C z8{J>yZO8=ylP-1&dHulSsE)m#yE}-LlLpvf)DYCv4_)zb$T$c`h2Y)@KmY7x>eqqH z5tjA xF#zy zqeiu{f7qr-V5XyS=mgr}Ib+f2NWO#3P!$QxL1Udx(~kj%b^$X^3;P8qft-Q|m|(iY zW)7PByXIB_$Uug91-&xZBGf()H$M1T>5}yhhYFe)hor5$TIIAkRwZXg*tm~ %`Kkt@3T{oFfbor7%yFX@|dqr$%3O_3T;u43;@s_FJv7{>75;sNflulOcY@ zGQySi`>9<&aHhV*ig57C!Ic~`^mL;CU1}-Qm*cG2IQ8w?=;a#%afzm(2C)V?KjA-) zG5}v}9pApQAiI_y2kxX7hF=Z;p-l{5Ua2+SWd}$Wx$@MoTLDzsiR<>S!A!Z}8WTrGevj|$UEQIfEAJ6uFEcxIYKK`0qEF!fiK$Q& z3m`qUHah%vW6;9 N)cbP1UgqRMD7khxoL_nzy;4KxX?6K4s=cHQx?4ldT%@iQ(#dGJp?#)1J zw@92wceHG-{Z4)>-slRgtY$&W<}G4Cj%alucA|%+OeJ5uyY{OEADyT4S3-z;Z6jwo zjArLX%faF>HfTUTi%v3o++`t1KU&rA(oW5Qj=$fS>@$O#qNNU|rhR$P)H}a3}sx zH;uO?xUd*8JBAVh#bdT5U-Twv$)bWD(s0%MM8U(%F8Nl}1}} $mnB-VqcBkbiTw@pHFq`Z4-xXk5|PIyNj7T~2D)nWp!CmxO`w4Yem^Tbrg z9m}SvQ&Y-dNI!zk&^^*-=vOzGM+wr@dP9nFEk%BQb~^oS_XwYLQ9H~xi%3BJ*22UR z2CSQb8Hj_!nx{I(5GT5ZQgf?;7P69ZwnK4p*9{}_>Qooc#M`d$XWWImz-hcgmuKJ4 z$YTqlC}7-mSPZUHmp1VO+lutDgGBL_0{26$kx{`pV^ih3zD8w{{O8(aN5n$3 z|0wj+n8TMIpQW`BJ-U4o6gS`2gRs%ofPwmuHu>3m{u)Rx9ok8|83C(YK7l|->0K>Z zG&*+-r*mnNM$wd}iLU6Ew8jQk<^1GfmCdf70H8q?h j?yH)9FPp!ppgB|lEXz1lEomS zO$+3xl`27fV0t$4ijn# ^&zQNOtYmzAdrg$GaC9BL=->rF~wck?uR{C8%_7bMr==67naac=4wL_+xJm%P= zw7O3Zt0ZdUO C#K3QIO^_t&hMhm>C$6tQ#bv9Lx)H6TH z=-$4?Jxtw*ar)+nRYGM7_3?KMhFk?@&j6X6-JX|YWX)DCGGX}KJw6+x0?BY1 z{s&-8yH_4U;kjB75rd+SHZ7)*) ayJZE+zA! zN5CU3Oh=YxZxj>IH!S;Pz#QTUKl4zo=dWH_RPm1)d#+|a^sY(!i}m2CqSLArmN3;^ z9MT>5A~P^!FTKMfEpiQsYO=4EHeAJ|Zy%HCT@EOjRC6glwf5QxW5{6G{^H^>2Xsf% zW^6AU<%7==bezd0QI!N?t*6=()F>M2X=1+4Gr-4A4L;Pe;!V4-bza z)JZ>)p6(kWu;3CgujJ)wPwQamsxQ_@4O=E=xx*1GW*-Y49`XPax>!v}b4l%wt%PU< zM(VR7fu#-e!DZm@{e!3j=XlX!4w`nlB)x?YVQa!voc@b`%lM48npt;^y`z#4mlGu? zuxQfAEFWO*BN6Hz?Q|;>HZ-+aeKCIBv$Vn7v1%5<;B4=a4R%o9kV1)^$pbSalcZ)@ zF**9X$J&oQ0j|xD`rJ^jff?2-Pp)6>o=YH<# b>TmAd4;4Sbf$-5A9cW7!AVlr_U!oP$)Y{b9MD_3#JSz|W7>76K}qCSAm zD6UnQ{uM$&b@y#fz`*wA))zK4t)@;1kX5-AZ}kpMC??HJEy`(c)n>png!A0FeAh)* z1kvwz+c7G)qp5?Q%+Un%|2W$u>x|PRjm)Nr5H$nKaa|3Qb;@-*p{Icyi`f;aQ@REN zi#Zd!Lo`3E4h(Z>Agc5$9(sC%3SiRgtsE&b&HK1k%>o=0Tnw2nt!;+r?<*M8!YYPZ z?B&JNO(BI}FJeia+wL6H>=UCcP;hf+nsMhD)us58m-JS{K&zr!pR#goyafY_$K9 z$Nv7BuF *+t+iip=cOO|H!P@K{A&1<1`R2CIGJn)EZ>EDp>i1B$& z?Rv7z67YemHvRh*_uSAVd5TBglwYzCX0R4yt)hV%3$|xWg8`B}>lb;tvpn)T%)?`D zi}`x=Hm(a($CD#dB3Y(r*DISWSCW>+1AW8Qb;PE$gk+ zV11xlGOp{_4KxbQ%eN}^_?o; zYLGO*>VyM$Cfm}ccoqlF6a_W;Tp$8Z?~k{`0o_itMq1mh@N!-^iB!kOn%)|}Q7jvh zmfi;rz1|wxj&z?Qd3XgU8V$6d#3Mju+!O3fz2b-$lIwBJ7F{v}b7e&KUZ!$$MlUq@ zHCPwxfpBfm3h8kqz%JRZB*SLS(H#rLEH0Nc?#Sw{GEZK7_zO9OTc~!J 1HZ?FAKWW9 zA-B$KoH~-P*QrZ*?puN3ni<~qs4gKfuWUn^JJ~|U-E- =-j0yE7BBeaN`oT`kXWus2- zW+#~pcS}I`tH^{=OOW#NG6kQkNj3=DHQ4nF3HQyM-lXK}?_x~N5T(e5wGeSv^MC lExlp%0wEGFIzC;UbX~OC{jbL gXdbq;&3q;6{JF2vzZ)M(K;OzjJU`A}V#0ne<63{w z?dzkkOZ(pM3z@Vl&!I(3(YR((8AO6$N77JFf#}M3={?!K+p9w9#q)|f6Lm<_O)WAz z$Iw1|*+t7uC+QE%4t$7d0pxo}HRI$RbilObV8OA>&fqg-xB1Su`W+w1^&?^6bctzY zJV%pd+1DZM!Hx?Ya5;4ReL+DQR;esh*1da+v;1UX=vzS3ZqX-Dxc?UkhxmmHYDARt zkG1Ujx4B^}xKt(csxp^PEmNm^((Mrc)C;#SyT&5xT%Seyd$siYK4|iUGXz`rOZ#O? zsFJvSQY7qSv-Oj^oa0h6-eO*$i-+V(o6<5o$RaDV0^c`XXT2Uqu31oTIH29py9{u2 zdhHc#$1!JvBb41xf}?8}x`Dqj-{SaTSfcnYP p3v|Qa*(B~Nrg#_%!c`JHmJXV;AjK;Oo4x$j~qm=w_dNw zrS~>tCd~XpC$?k%Y?YVLB&_&6W^gst2+H2@GKG1v1mV-B3vB)cP!zrN1F*s&w9tUN za>Gw%tlAE60^LOF|G?uk62>%acq}MlN#=QSs#ooYSHd!-#lF>?$-o1 ?!t@7@^lCG*7jZKSAv#v-qXg`aWV8ViOdIGBA&8!nPEx4-u8p2NO@@cA@56pZ7 zOq#O=aLnN5lN4l)LOz*FclTOw%&g86-Zpi@g>oLH(v<;UhIa0cFT3o!6weJAynD4p zqrNajC7FTNBFvdHJDyS)tuXom^(JX(1 v|>^tbx&H9}s$e@YUnC#FOJROQR{9B*tCpF8oI8A(0pk4$Bbn(o~hN|Hr z6{;v0LRRtUQ(=v3w(3iV)XgKONA@u$bGbQCQcImHP+?_i&VSx=KT>r(KfJ+Z!!Yly zEezngiuoZHR&DUS+`l!sDqE$*JKWu-IVQ97e7IVeM^o)9s9tHVTU?|<9&~G~KFcK@ zctI0gJ|y6u U(ysJAx(W~SuDab7yE)CAR2W&)RQ5tmjy zL~&QsZNX^1HD%ZCeMEQRr01!nfK7vrg#txFEX^?!y8tvs!>aNkvmq9xNE3iZwrZTV zQP}K_l4J=F&e{ydQd~r^VYU)D&!E9aTU0Z{%{laW_O*JHi>gV&^OetH^O*{R-oku{ z*(bV?8h;M-$%lz2KzCn&QlhS&<+D^2{4WC?=j_jsSz7`+!hPnmTc^+Vhn`Q~e@<29 z%$UiCEZj`0F&ppRRA~~_bk!ao)13@WFd%!FR{IZ20{I=H?ju5y44K}{){i$iYPVzX zr)C2 T-zFY+*OaGW81u~XH(wE(U)E?V`GK} zRm3W$m)E9hjhU7j>nK&v?l+Pb&SG>jBhPTJ81HzHEWSN7^=p3nOY}HT3hMDgwga5d zEkP}X3O5_L+}=}Usfoc0)eX62%NrI7+2p>QzH#mx;+uMoK#-x+)|>`otyOVvX^9t+ zf3m-<_t*GwhD_%%bZl E>1LP39pYaM8GSZhv>Z)cEr!1;3BWyx<-g9vjrZ~x1i9#@uUp3Th_H8-7I24!g z!VjB6noMe~O}iQMHFpVw$x>}Lj6QC**}dv5^-xRlu7z#BD^?RNpgCY!<+0{tn`hDH zO4T%6{Y#~Gy(EL1!AUSj$D(j%yg&HIyNSYXh^Y;Y?Afwbjnj3Scti85xeZnWyV(Fj z1x>p{aH=!O%k4t#t}+{4|}b?&d@x&)%6`}JhQ9YSda zGRuT%Pki~{yK~2iP{0R;m6*NTAtzn;9U#E~o@&aTaM_|jebk&zo>7Oc_3nIa;xCnu z)shTWdY)Aeo$=2z<6<7$Yr8yso2{I!72U8V;=yE)Yq3%Op+Sm4ES~?>YvfY$%`b ziz#ZdnIfhd2NgeB(GSuQ9X*;+^gyE6L%=9+jK&vE2P3Jrt<=bwsF||)(^tSrZ7&UU z&@lTpZ#+GhqG@hkd8KaQbfJ?ooSz_80V&^YkZ@f+b;&%X(v>dssm?I+mQb1S?sv%e zD*Z^cw@XoKDq(8tn4l>;p3UUs{&v?_(*lqu6wa-6Ju7fxvGG-%zkw#PDtCgVgA0v+ z>{s3PV(*OiLH#B|1UY+kSA=mb-36_V^90wQ>iGO>h+VgD_UYprF89zTE2#j_YV02x z3`IIGZ%J7NDcO+yBLIzV4|AlUp|>TtL 5vgxZ;Q*hM&A7p>^pE) z?Q+DclwV}4GFo$_|At#jqyjl{^u%@l1@>6FvL+V&(7lWJI*0M*s!!Aa(Z;Y~;|I^C z#(NtU;DWR>4%X$U_`d(o;CyvVCr<%N5i*-+F=*hgY3-@WIGQxYOh4y_TLM^%(#N )=r#rM9#Ks7_JAsS8rvRaoLV`WB 6rW&l{&F>}B{2zSCmfr# zXyfe@89eD93e+}BN~#@ceN7X0-6#P=w`C{nJ&sH0mFwLcX#7%j2Vr(STJD4E$^bjP za5ubeU?^D%dfT*_-zDH`ga%f7R}7w~2p5G?hTA}MS?ZKhcNmayW$vlakfpmV&gBGMm`FB-CLCoro0R17awio$Bt-&GlQ%M3LgUBy-Cwc>$d|_)L&f*g**05H$r*et z+3~txnvs`&)Yh~3x<~Ted!*OqatQn@ok2UJ?IjSknt5YR*SB#rId4PJP?X4HHg_1W zz;UI$s^GwG4LYb7z9IC=WA(?tXh1NlVMs}2Rc$0-T=A)?%OTxpdNOZjn{#|+?mK!^ zz ?*6UXQva((Npb?` f^lo_{8i&=I&x{WKEyCe_N+8P z(Yicg?bgue1sM;|``sfIO+!Xr!!ow9ti|ip=(+)15MDNx{B8fhp_oS$gN+vNsxm(1 z2b0zym2T&8k382;SBGwI5h;76n9_#l)g v 93UebTb&Pdtm9qrRex+ zji!nAlVlknswxc7XqiRe7V}y((8gk<=Ot ?rv!tM{b?Q=o0_Qm zB=EPTt^1Ugzyt#*K(z|pxT;ZM#>$PhyynJXYeBu$n^X8TjFdCP`kMSuU@V!k*{Gcb z-S91SF;~q$(XA*Lukk@W7U#F2M-ktzy_SahPd%0|Q}T|vdTqFJI@p-vImp$98-%^v za1$)sdxyx}V`nrQSGf07lZEjtpEgx+wt7A~JhLq{Q|`m27yPBRexXle-Fca7Rf`50 zuG|GND@~94CIWRvPyJDt-?EQ=TkEZ6%8uE(u-f%y7j;hW2xN+=bKkOm?Q}1!dgVi^ zXY*QCMl)~j)R$7+skHKtO(x8trrLO7Hdhd3=>%ex4~=9>M-ophktGL<_}5)&fmUn^ zkc4V&kGIzl m(BBuCSy%wGkz#0EU57)9Ami0$Qpws4%?sdOM`AN@D=JP+&hRcvvi88-;bv5X$ zb!yK%IsTe2y9LDGFW0P|wW6 P+K4BcOOHOP1&vD*!0aqp; zKD@*i3JNgy+!UYLF nv_qd(dX6bzIm_BZ_qffE~*I<9sHCDvrm44^Kuv*U#g*t|MbU-I#8Zbocp zchfb6nlG3PQ5$N-1HXf*O@ju-gZH#Ga51n1F}*fo|E$hhR4*LWZ8n`EDb-5~e6(_V zCZlOJ2qn!)S7^;D=Oyunu7#*n9f)6yjfvrf#yFG36KmVnSUVcO9^mG1KQSJ8YudS` z4$>3^iub2b=V{g=St>`e9Wv!g1=aqlU{!RF@wc6%OgbTD^Vs2Zl-FSR#*6JiY| z*s*rUB{z!l^g{5bwhZFhS4m;vQO<$J(#kx)l6gf_w(GZY@COM@S}*m!^|!G~cHNux zF!e-d6U77VyI-k38IeVaE$*K%sJK}!TbgVMJ8g?NRKQAM9`c@GRNA8#k9n$kcq@Ym zO)@-sF-ckr3mdE+G`m>5CB?I#x%=)-n@gr}U!!JID!#2M<@U6VVX7;c6FUje@mF zSCl;K9rG{c76O9un#v81^rm*8ih7j!E*Wq@UC-mMlZx1gJ=|khPz)@(c8h1DB(VDU z2ysFC<>Qh5wv~y$K2$md^CgUqY?O8r{Pu;+pz-2OepR1k=NKCnhpls}qUi~H?Olt* zqa!0v1hRztTpr>EWO8M!$5S2DNo64G-ppna0b}ym^NX(Ub{=%{SeSLyO&4wc^x4%* zY~q2teweP|Kt5QFz 93rcZCvlx z_?WQb$PFNg2B&D^%LFS<%eBeh;2u`rd6+5T5dt@5fo2q_tcHnVT=K;Q__TW>;DBan zRl_a+u}lOCo0XJ$h^&~4NLK)7mkP{OFSqJvb}t2Yy%wN~LCi22+Q61g_{F@RAIlt} z+!vE0*Gs3S9x>K-s}plOb=#2IrrQy~y}tSw8JD#2-?PO@*eG7S`nXGenKHZRV)sMz zWQ;Q7kNj-wirclBQ^amk2$2b51Ip`Gj}kGF;SS2Sh9n&*1Zy+iYjojVXvxG-=EKa- zHXHoFyuPiLWZ3>>8b8Fq4)UWRF&Vpn30Z5tMl=}m3(aVv+Z#3l+5kTv2(p*1xb$vK z@z3$p9}JFNo+FxrpfDt9#hDSKHF2Jh%MV$N ?~+aj1bE9;UxOWVW~hjSxqTX%+n1B(q$)CHdPgs8ETg@ot%1*k7N!uJtPWa zsahmMi3;IlE CVF(~aAfS>D2*)MutYrN7|s|9#Tu&?v5t}=9}5?nNiQP$ z5ozmTte@}Lxx1krcV*Ju$`iBn4nO{3)>7iLzQKsrC0%Py&e9DdSy4I1QDPgSO1o8gjJc9GC_Q9B0tc(ZGRz^Vc4t)q7|**zcnZB=+a;@cb*b}@T^_=S?{BAtJh9V z?p)>LdEMngCX!pmpZx9W? $b@|-6axUGM9Fn22jtN(cX6ZhQm3*r8X|+AN zj6mF_^l$#mb+9V^;lkbVoPiA?^my7(m_dQ%z_H2_W$8MS`~o@I9;nKz)Az$X7#6AJ zd8(r M |>X10ag4|$|5SPn?MBmDx#=b^YW{GV>fZ==NTr30E= zOTK dQFYnmc*m~a)3h}p;^5#JDg99GjE@ulV>PwfT5C5r6 z{;^0?I&xn%7r^pR{NHn&e;M-gGfPqZ^I6Y^S#L>B>x|HItIKvF_xN}c@${dslnlMY zFCrefah41z+Ehp?244QRzcZ6dxugy|Y>-lRgf18WdxH`|^LG&w*H-jetTz*qBY=7w z|2gTrEExTn)uQ=yuI-=7pL4Dh%-5m%_jcMW;gp@lzspy~zwPnwW7C`eRZGj!`w|id z)xI`4vVkaOo6w(ft}^|n$Xg2`ZG`*?Bsx3aMj(*lnEbma2^1C<`YnAuPmwq7XE9JD zuT|jYTBay!%Gql0xl8o_-t~>em25WJ|7w|Y|5sV@|M9Qs|NO!KvFA7cx6V=jWBmVP z{QqP8=l%z-o@*_%TnatebHV(Jj`AP p8X* i6Tj_$ zQJL%W{|z?+>Dkyos5YBQhoRJKw6rFAdLO}D|J*|`;E}C_gP7LPTKhZrf8#BSl>f$d z9L$DGmNmuyE)~x0|Gh5x`}ba#{`<237YO+5zgH+KAAq%86gc?rvq#QR_~e)8DL(M; z{r$K8#dk_nF6eHO%55n_gMZQP|96A Swi3%t;5<|HUxH7*cy8<73! zf{sn$@0D;@kjPh-Yv)p$Jki!_3GCjS;+~EFApa(ri5fGaaw68KO7tB(p&{+BTu$oh z4WDxNI#Gsmf*$`M-+WaSs1Ek!T$1Z(;d{}G-NSy;^UY>FfD|d^b4$xA>NI~hm|hVH zmsnN4?}DMPyzN(CazC-rpYuF(4P{ko Ia(A&LBU%-H`l)ZC{T_{PD?A}kPTR; z(E6e>M4hr>O74QCpIQGra!N%_ZBF(PB@xYayfnW1WRsuLd%80-Gkk(;2Fibu6X3ZC z?*kSbC$>I|3QX)**<$Fu>^5f_%C=iqXy3nkH=U@PD_3D$WioS!? 2w5lNdE{clG94F+SNQ<8cBi&RCUCo&B0C_Hn5pO+ z7g{Iw^}bj4$BXZIMa=k~xW4;XYDMjTG|1TgtKqGT|1gV5%27>hdsSDgg4BJ%LTC2# zy`YWy+&;efpFOIv$AP0h#3+O%zyaY0A >B{sT@ zKLYVMe0_8N0G@qGGF*((dzsz6I31ZoJ+=!@mgQR0a$ZYH#GviBbP8WAr1A4@ @`0stJM46sNBhw|^kRtb|G(*Yk(k zJQGJ@BduSwLtcBgi+(rdSrFbY+hnd&t5vKw%gQdGDS>k 1BOE7f