From cc2dd099615ce7ffe7c0d1ac6bcc515b19ec88bc Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Tue, 26 Nov 2024 13:53:53 +0900 Subject: [PATCH 01/18] =?UTF-8?q?feat:=20oauthlogin=20=EC=9C=A0=ED=8B=B8?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web/src/api/auth.ts | 9 +++++++-- apps/web/src/hooks/api/auth.ts | 8 +------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/apps/web/src/api/auth.ts b/apps/web/src/api/auth.ts index 7fc75798..482b6352 100644 --- a/apps/web/src/api/auth.ts +++ b/apps/web/src/api/auth.ts @@ -1,4 +1,5 @@ import axiosInstance from '@/api/axios'; +import { ENV } from '@/constants/env'; type SignUpDto = { username: string; @@ -23,8 +24,12 @@ const signOut = async () => { await axiosInstance.post('/auth/logout'); }; -const oauthLogin = async (provider: 'google' | 'github') => { - await axiosInstance.get(`/auth/${provider}/login`); +const oauthLogin = () => { + const handleOauthLogin = (provider: 'google' | 'github') => { + window.location.href = `${ENV.API_URL}/auth/${provider}/login`; + }; + + return { handleOauthLogin }; }; export { logIn, signUp, oauthLogin, signOut }; diff --git a/apps/web/src/hooks/api/auth.ts b/apps/web/src/hooks/api/auth.ts index e4d46346..12fa5ab5 100644 --- a/apps/web/src/hooks/api/auth.ts +++ b/apps/web/src/hooks/api/auth.ts @@ -1,7 +1,7 @@ import { useMutation } from '@tanstack/react-query'; import { useNavigate } from '@tanstack/react-router'; -import { logIn, signUp, oauthLogin, signOut } from '@/api/auth'; +import { logIn, signUp, signOut } from '@/api/auth'; export const useLogIn = () => { const navigate = useNavigate(); @@ -35,9 +35,3 @@ export const useSignOut = () => { }, }); }; - -export const useOauthLogin = () => { - return useMutation({ - mutationFn: (provider: 'google' | 'github') => oauthLogin(provider), - }); -}; From cb6691324e7302eb52128d783b625d6f127a95f0 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Tue, 26 Nov 2024 13:54:19 +0900 Subject: [PATCH 02/18] =?UTF-8?q?feat:=20OAuth=20=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EC=9D=B8=20=EB=B2=84=ED=8A=BC=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web/src/components/auth/OAuthLogin.tsx | 45 +++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 apps/web/src/components/auth/OAuthLogin.tsx diff --git a/apps/web/src/components/auth/OAuthLogin.tsx b/apps/web/src/components/auth/OAuthLogin.tsx new file mode 100644 index 00000000..6fdf1b9f --- /dev/null +++ b/apps/web/src/components/auth/OAuthLogin.tsx @@ -0,0 +1,45 @@ +import { cva } from 'class-variance-authority'; + +import { oauthLogin } from '@/api/auth'; +import GithubIc from '@/assets/icons/github.svg?react'; +import GoogleIc from '@/assets/icons/google.svg?react'; + +const oauthButton = cva('flex w-96 justify-center gap-3 rounded-lg py-4 shadow-normal', { + variants: { + type: { + github: 'bg-black text-white', + google: 'border border-main bg-white text-alt', + }, + }, + defaultVariants: { + type: 'github', + }, +}); + +const OAUTH_LABEL = { + github: 'Github', + google: 'Google', +} as const; + +type OAuthType = keyof typeof OAUTH_LABEL; + +interface OAuthLoginProps { + type: OAuthType; +} + +function OAuthLogin({ type }: OAuthLoginProps) { + const { handleOauthLogin } = oauthLogin(); + + const onLoginBtnClick = (type: OAuthType) => { + handleOauthLogin(type); + }; + + return ( + + ); +} + +export default OAuthLogin; From f1e77cb13d7f39fb0606eb18cf3cf8c58efdfff5 Mon Sep 17 00:00:00 2001 From: Eunseo Sim <55528304+simeunseo@users.noreply.github.com> Date: Tue, 26 Nov 2024 13:54:34 +0900 Subject: [PATCH 03/18] =?UTF-8?q?feat:=20=EB=A1=9C=EA=B7=B8=EC=9D=B8=20?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web/src/components/auth/index.tsx | 22 ++++++++++++++++++++++ apps/web/src/routes/auth/oauth.tsx | 13 ++++--------- 2 files changed, 26 insertions(+), 9 deletions(-) create mode 100644 apps/web/src/components/auth/index.tsx diff --git a/apps/web/src/components/auth/index.tsx b/apps/web/src/components/auth/index.tsx new file mode 100644 index 00000000..bfd2eba0 --- /dev/null +++ b/apps/web/src/components/auth/index.tsx @@ -0,0 +1,22 @@ +import TicleCharacterBadge from '@/assets/images/ticle-character-badge.png'; +import TicleLogo from '@/assets/ticle.svg?react'; + +import OAuthLogin from './OAuthLogin'; + +function Auth() { + return ( +
x6IfO|P&6Q$1jiAzo>{S}gmMKT z7l870%RTnQ_(b(nAoTA$FEss)z~%0NDN|FlgMovnXdb9M6O)K~=0tu5yF63SE6KSt z{F;UnUIg&+B?3g-S^C>e%<75HR@Jaw=hFM1y#ZKX+3N;SeTA+DP(PDy&x(3?&jZmg zu9(ECT9|6p+n;7wRWNjm8c5Tyy&D(YbZP_5#ES?%lPgl9pn?Xqt(%htz^kK&UoBk? z3<6;K`B(bf&2aDE_tO$E19oayr>Q!)E-dkv-)B|uOJAr4_@)-#0IaXzbpxpWl-FSZ zr48J%AO$5qT7_!x*4khbcy>nd5Ejg>`_ZsrwxwV!XR~q9#HfxLK#XBcE-&>$fhKB~ zyUO<&w&vBg0C3G#28)Ae&Y<3@aOHlOsDfN@XbM~!0?mD+j&xD<=l$fJAo3K4C;sRL zV0|U88$k6Zyu1y{1JrWa)H4B>20%sl+q<#e$Mtsgsx!3N*ogp>f0m0oP@*3E{HUFQ zUHROBQH@5#lHvJO4``6^oj&E&&ImM-fvvqdU<(9~+&rr_BYO@t8W=fXnPpu~z4Wkk z7-&g68T`z7i=zigs_wEKE31V!0P9bG-2kdD^O^;y^jD@AFrGp4DH9#6pUPE3#xeM*j?X(2oV%~l$dF66g*;{i8&;i zQwRHHGCDni0A~a1biNpTvq$wTuLrA07RjlHErki7v<}3^_3V=gu#92-N_zJ H;2lzt)O}W z6ZI}~Dolw{iPWoB1~S~MXAU6L5FJny9e}Wtd`qu`b!9fz5qLH;1EI5aswv1C_~djB zlWZ%XQ4fSNVYGugAMd$8sz&z)SU=ww);Zj`u6f-6s%u<+qGkf9QyoAl`v|HYOr}OQ zmeG&)1t4imthYzCOR-E;Ndo5A+i}1^gB(*eC2eu)L(h<0I{a@-jD^*1oZyxad8RBQ zav&y$=Nv`9I;x2E)NEoLhrY+;-c&*5tYRF8 ;0NDYH=~0vqGt1PLLPu*94D%mf|R~@ zbECkBqkty(y*~xCF#_5InEZP$T{CfLxK4n5+Gj7XLW(DfpN#SN_U6^Mnb0So=B641 zuxcz$iI|Hg*z63*5Wcy*&Hz|^?!tzPZvtLJU}YZcOFUQOw1#uIVZS=`x&c%(S5fmA zKbLNQJkK6~_^sfRH`hj;fTdi1L=G^Jfv_hS<1mRe)|CI+dNi{;Igk?8gZ4czErc*l zovaso?D0&AV%h?u5+)?xfXGPX5^yAha_IeDvt23R^gsuDo-t-y*d8>XYVjlvOfU~q z;8B#b`1^EHOotC6`jM~(HR^j7)&ndqT>yUn-``LNuXWu3s_y#Rf0chawWtqoBsK5s zBSp=#iI-52nF=&V<{@C@uV9-J0q3x5fLHmZ?5ndW!KsAemh2q@%R>ir@HvRr4EU(g z-RGR=z{#tEP&ZLXfr oIqt#sbtcD~i(%bmFMsC 5vzqtjch+4EIwSei z4&=V`8h{ZnQkEt1*Noykf+lQ9gPy2fUX6q@ITtV;?yqNqo{_9mQ6~V?-UU$T!$)^{ z8(06aXG9*|7*lrSRjEFF_%tc;tT&2@JtL#Wa5;cjOn+17JezXid0?cOeA5JEyLfi5 zBpvXx;AfsHUw#EQMhEq}0aP#+mF!Qa9(}y7%M&}4Q=#-%sEmK-e*yHyaAgBUbqr{w zLZ?ivIP;8#oA>lI3aAOlu`!u-Am!CY4;I3>;BmpF3kVFwL$9e{E}cGpa~gnx=Rhi4 z4xv0)VV*ttdjmn5JX_L??a?G5gjw~my(15p?VXPFB@okcCWQU2%Jc~|;Lq+_RI^}} zpP&1pP8iL5y#MS+et|xMZ}IC}8mK&ry5|Al{)g*<2+E#37<4SkF{Hpw%I6VqbYpIk zWmMzpw<);5;(?1>zK7S{b9moDkq1QXNB&^(3W$jS!p+wbKQ5jr+rgSN!Be9K9HJt5 zH~vA~lI3-cO$rjc8nm6^oFv_%P9lO45Y#ww@dSYC-GFQlESc9eqh1C;QqXGw4ugfg zI;dckRYKfgSKqoo^`W2SA5Xde=uTo$S N=$-Zb2)~?>)esY z{Q#Pp9=?VesP7HDEa}30ynW00Tmv|&=C!&|z+(ZiHtOe8VmMosrNh8l(<*7nhf;jz z6NO!!!?&>Q>RS$|%DkwpGPC?c%A%Ig(J){N2tc$S<*TV@_RgzJ-YD+xVFK=f%>$HU zVag{sj`SUx7I_Zf;%!eecB>wELQ*_>tYK|%p9z6w9IookfFCerX7ZL0-A-7G+;&Q> zgrhUqY1;4u(*Z)xY34qF;?QZR Bcu~9j>ZCd@QV>)7Npj>|8lR1N@g(yu<~BQy9#t x=N9B{#f*?seXSW=O Vn zKlRu1RPb%L}m1D36ZgQJ5|qg z0x kst1i@*qs+M?shvTv~+L#I%SIty2{v{pf&mO@lBDYiy8Qx`QKvnem%jNU~YVByt-J-M*_HD^=u?|b{wBy5`9xUVv(wo^k;eLaY| zG E$s-q@+7g;B&wpb8k=8|V>PQp{FlHMyKRL1hQz z)%`rnnr 454(KgmC{v55~q^fvIByW=!~qK-*( zWdj$L`x$ku-n7T58m5d$*$^i4t>)ed16#|Y^rugYJrWtnhV&_ebD#%jtcS~%2RL|u z^I`Us2JlQ})<92FL%QXGtl^28Omi)f46M4a<$L(1>R-!BaNGO!=^!O)=7u6rdNpz` ztTn(B+^uszQ3WN889?osR=z|P%#%a&o>%*O-+WugeA56`Gn)V0_7QyW?e7JSod}F* z7EnCv=~W>0 `Z>mv FaTA14ys~cO5WWV z
;+X-ZIR>;AOlI5#b&?$Oax5a)ngYPpckCEe5PY~WaY+00K*e#i ztYn?6q;!9<9yGjKHW&7U5zTyq3&(wH$v`l`d$;UHN*#mh^A^F+fm3r&F3-9IN5Se6 zK7k?Gt-cA2?BDP}C6hSM+>5h$->Ahh`L_*88<0lFva4aoS3Gq+U04J}UnnqUaI!yoo`BI#VqmRFzKA?<;V*XYABz+Dn z3l4N#T=6|w1(cCLcQ5&ql2>dTBH-nt=s)xEGT-VPz6nMIzoCIjKq?u{&p!0lDwLzG zPwSaXu;I)BhzBtsGMfH3gxLV0J8pgML}Cu_Vwk0|dN6AMRo}A%AQ*^DcKGyh9Rg5B zw=69G-6Kz*-txXz{d!m;=ZC^;=?6kskaDbkqH()=oMT~e`T!6Z2jaW1L7rzdZV|Bp zSB_`s_e?iX^?(xCq-R{goy!9})=^BK^P_1I*5z2Blp8!#!_4=*ZOj)wizmO)!Ri|p zsAT%V{cpzE`ycL9w6Ot +VVIVNh`^607a{hSEZO?oHC_)?g)KKr-YJltg z1hxiPdJKiCJL-(*{@di@$y3-`# k|nTK3$5QJ;s_OP2X#&OIqueFINl_=W_k z22#JASk$R}mYxTcz
js33#CgDj#1TS5pb|Db9cNNxYW8 z>I2`1VD$|LR02|uy%VRBT}s(g&WN7)f(BgCfDVBOQ48Tzr*(h^`7}oR795iTCc7*I zRzwn~rDAGack$Q*CTf>-%ROM}tLi7rzf$7F2q)2?2O Kh8EGDs~4{Bj!EJ9Y9F zV8TXNm%4;GQ6jY7Zqx)f08~(=+R_p~0kn&6ddiFjY>W=>hdcY30$F=k0}W{izeE%D zauP@Tw?EEZfu-4HCUdrYK0Irgusx4j6rK%804K5$6veHmB_??xPmDO(K*0epp!LG2 zAKdqRdHa*ZnLmqa=9r0v;=*wN8RAj)BKc~D?qO;?ui19F5x@Q1tU>8ibQkjJe@Q_S zH2p4MZmMXyeeEUSlfRAE_E+CnVD$|HR2if;5=g!4J8|mhNvPqxeP$incWkNqwOQ#+ zl$@W+u3UIEP@8tpSegPHV5%m;PG(`37Qn)HU^#bkO=M6U{lb6K3`gK;`7@AnPW7(Z z-hzs37?v7ye(#l2>ZV6H0Mc@B?%8A|f>_IwfP-&!gpOfx1O^dYm45Lj;OGSs0l=nH z6lgLTv eh@+i+TO1Avq8lSt}x@KQgY_DGOw2n9MvEp>J V|g=xSU;yr+QHLDk9DNjuoweVg31UTIL9=PhW z-%*sTE{9 fXC5NWrs#CdlkhbIGsA zCgcDnBWN7i6r9RsV8nr`wHp)SF{(`-?E3jj1|aPlbzme+%S~-ibyL#ffr^aTzyVeL z)&UbbrUPdmg1D!c7eqh{mr9m^&m2IxG a zlS)lJO?Q_rfPeQlaQ+(stlrQ-mFG!qY!oJSR+q$hree?KYJgFNC)%piPseP+bOUFM zFN|%XuCd8($K-sN@z?nYfC)q}MNAif$%)EDQx+yHMZhSzQ`M{t9(G_Az|LJRE@gX! z4u~RfDPR`&WWeGbDc(7E@@;@y`|NxPfKHfH6T=?iCV*&wr-=~u(E*SEiLo!A4x0b< zfOCjDJ+qJINA0GdV)sEE?8ENC5M4ZTEUc6_#pirodc82KbNl;m?0HsiSfG;0oNs$C z&fa XDybP`?|4GK2Ei1e$@)78GZfj~yVHI}z$~t=WSrGAQ$-;^qwY z3bLJT2;3R#%QrSKQh@NlB%ntMw2l zxSJLx*a2JnUhPi3TIRDzfd%=b2jF1tgd7GO>}8+e!OyeDz 70IYA>xyKB!sLIEr>LVkD)Tx8+8;O)?xD?|dOJ=m&xM$}^KZ=Y8FmM9{0)&IS z??%ShjPCHDJOKcLpN8NN&w->(CxB*G07v|`uwlTVEX)C+<*x&`pfXxoN^ST!2lH3s za!YYqSoG`{%hZK)*u^{FhzCaucq3k8opD~~NtwXc#$(LMz(8h_qY8HiW?rqy?1cm* zGBAym?RWqw?i)zS$QF+)2YwyEiJ#`LsEuO_--D}jH<>BV !Q+%1+~xvSCX{Da+A=S}9X*<;56L>D!1gmF0*Pr{C2o<-7i^RtI!29;9~% z7!Ovw(r;r5V=Q7iR$7~Yza=^cIzm~a&j&_VC)`x>(d>|HV5`$j)UG%h6Rgp=@DS_3 z?`pxWp2t@1U0wMB59ZiDS $QAb8Rxd13Bf~e#o4^Lzbx{9gI!C!!LASeRsQJxkKplqj1`;u7HveX@X>k=2V8+w zAvQ|enUby79&K(_&yLFT=qF*KV`pydo;G~Mv;u2K|KjMK7XVU$Au<8z8IrLpat+yj z*`>#;X5Otb3u*Z9K$(4M2>G9pGB_O^T*m&vg#=VrQm?$1dg+5Q96k)JU4N>CBm^1d z7s=a3Vlu~gbK?Xy7CR}XMdJb$YfHDz6ji+TD~7CKi?T9mcS>wn{YX7z7S+m+8(3-B z@Kn(*Z6{Pgai}lj{Ik~XWI|_aZY6D*DYXF-@@lWP+2(ezZ|vGhxu>o=oqumTty>mL zMk1JbzcLVDrT`eD%+L8efrEWK{={eTbLsWpz#Hfyyn(K~>D`+i#fQ&649`MlH@|a0 z)g-t*y50$xpOmR86~p(&+G} 3v QsyaX&>!O;^VjvXIy^cZmb*aF8+ zEOB&a0~;F)EEZX$$CAv01IFIoJ}zHAz=iX>c>TfwE?y*Detn6{7mx4~H`CVUEeYJV znm$sc&X6(MQk;;M&m`qQu_3D;$&OQf!gH&^U{7*kbq4G9wR_)%51$^Fc6s)yqd#t| z0h&L+bUuz@n(jFpmQw{a-WGR7^&yS~`grmwH&1>3jkWpS8wRNI_Q9v`z( i zKo3BJ15r&^EwssQpyWmq#Wpr{;3{cN#&vq}**DI%#%~Cq%5$Z*xA5`zesAiqHxwvL zMPp1Dmi!T^+fq3!f*f~60M8h@Cv3|D8sM20hqTmh{cru@shWq@_JeUAn&!fk*aJrd zETKLgtipQ*G;+W!00vF7`t9aVsVX1^bx;86C2Ssl4sUvJ3wPgh47c5O4BJ~v42xPI z**?XMqUHZbSAZFH#Xy+tP-8Q+6${tc5_Paj|F3ZI(mtMj_A;LOVgjw_k6}67l~lu< zu)szI7qtq<(Y+pk{6(Z}!GLEvugZg0*z`{PmEx57VuZPc!)i2V4@?dm6etb>yE$g$ zSdh69FgeT(BFH&6`fZMF4KZz;OpN%Qe+#;JF&Wq20CTLq?m(4C_;!xqm*4pvIJ l!N)u_+I|@m+y|O=XM> zt$i>4sAGA4u9W;!5MvhH*q1Ro8y5Mr2-Y=4bj5qLfAA`nN1nkWk8R??hfm?w)5j8X zs);QHPW@J?Tt*t0&8p0 vyb<;DqG z49mczx@ig#s2U&)QmWm=NpTZE%6%IIn4}c_d@K(F^*MqA6a?%LRk!|6amukCBI{rj z{A3hR(%OL${Ch;;frVcjyLnT_p3JS~--qXx-Q*K)@*Jznm%skg7QX&K^;h|c_r4!z zkDbKYxl)cXg=Z&tfiZR81ju^UH1Q*0dodSagb%|5nL4cht~~<211$j_jaS@wh>>TC zVG%k2MM$rJS`}1_zk*V8XJJ(E*k4@)ZM=Xx@4Jl0-+c>iz4chKISnCE#+b$eG@0X- zk-rR7qYXXQ`w YYU;Tr9VX1|}#& zR%Fxzh~`fcODeYkxMo#E0}St007>KX;8cD)HI5?7QUHSkAeRmWyq;MpkV)ElxBi`_ zqb6yXOkW7;(=vjEH5kw;n3bhAAHyg1FC?(~I!;?y;OlrLkovhaB>F?Qo+*zqq#A&x zeDTbqJ8E6o4WeH-U}}s*>{}roNE4Dk5SdkL@X=5%X%bODU`*0}1E^7R>(~r&XBeMh zP?9eeHywzEUveW`E#p4_#fiu#w*+Q@*xi4XH;#Uh-u)d*y!*XpaPuuku`Kqd+6{}O zWcRD26C9+!mHc_I8AoGH9N)Dm3Q)4A5>``NDk#OXnGEu$PHiQi9I%^=_piK~0CYT_ zzHKxhQIrUyysd0m^Jt2r2x$N;MHUUh@B;=q%0>b7J0KYFIJFN}mueiJ01iUr6IBt7 z`LHwL)0|sPiiSsI43k_eetVpjtq9sKOz~IzY^HIJ#R6wuei_@p`Kh1%7x+3|gs;<; zjpt|IjF04L2!OGoo+WW)89KryuiX42KZW5?Taz?s4VP6_)A!|51I5w8RhVJ{ug+-C zwtHr9)6k*XnLH44oVPS#KOW55dx(vRC*X+&RG $VvC499>K+^m3wvaJ?vvmzegXg4 z*UPy6bpfhumpXA0AAisH;8f2Fq>Zy XCBI`sh8}>rv@jcs zQ{nG- M8p@4hVowJL%7(@^`*G|N%t{Rnh}ac+e;*6CGAWroZ2(wp zS*v8fdgi&y_{=BsX~6gL*7EkG)+ks3osnE_8?dO005m{UdzvRgcf{2Um^H!Ivah_& zz(B(^0OFppbSj>>^{fcgjVdZwK> m)l=|7J+NuZb|Zm6C>ttsqE=Txn_tA6 z-#+3U?>d8%C$_7ar=G_GP^$t`V+Eo%&6{U3)-xtSS7yMbDL6OsJ^zfO(!nb1P1S6@ zNEtOuZeDodDn9+G6<&Vs9&9eoq|wJEf*qY;lHD?`#&Ku_bQoX}90PL#D`f~Xv}@QJ zhJlqIO~g9;kjB|>1JgWqV5Y#+yKw-cdts4Hi t&qug#_oQ!aKycz+EBs_Gs@9z&!Rypn31=K z$?SCxaxQ$8*(QHHVTLvsMow-OqzV>t&7WsXBS#=($dVQtRa>Dvmxr> ;yK0Am zf<~UWNy{hku5Vx9eShX2oNyqO!6@6E_V)IYyZvN;s%*-Gi CT2AR3_wQt+ zQ#%!Fi`p4+>|| i7&AfF`t_`C1G_SS~lq;g2v z{ IH~3mY@5IjWn%WPe+m3nY^PUOWFH zUcaz~#c(8l53}nd9#S?pRkrDwjG98TbMg#J>r_gVyKFOcS(Nrjm>{vRForTYEdsSs zp|u5y9)0-AxLR>ads4=Rz|t7N?52R-J2-cBDNd{=c4^fd?i@)S%0Axr=$#+_y<}Yf zLwt=c!q@1^cBzx6@XN_Ab+*}v!v5yklOQk;Lx0bTc-kwma|2^7)9{@?-($MCb&+z{ z N+8w`$w|(1gGMt~q&eqb@tj47F_xCh|#yWiWYs|{+fZ$rP zch`>u){(yw;^ gzEWufvdcPz~7fA&GWrR8Vz2xTdoiqLU;Z;OhQ)9_bZq?p&l}C$8f3=>=}T z<2a5SNdma2CX_N-b}%M;!U3Lt?h>ARb|05640$3r9(imF-|?LfU^_7rZMZ3L1u2<6 zz)m-Hg_~P*owAU?Lt3xFvid2r)Env#%>YvWhH7)lifNmR#n~`2ic%|uW0jM4U!cXH zi{Ub8ojkRf)K urRUZT@y_VK2Nk0o$A zh9h|qa1zi01c^} @qMt$!~7M2kDWY%t?iAnKCkV`l)mrdV1K_bpBnWT z(47Pz8ZdbV6~K(+$ezC!xB5;%imTy%b +@bbJacswKQrF 4r0ItGFo z<%Kzkz;kDyHwE1J83JPx#-dXe^h9QRkKnIU=TMoDgf-8Y5E# >DShlTiGHH>B}PGR_j?6%S G+fUn9!IH AX`&V6AwsgXype>E?RKAqy(;8IXffme=1el8Una18;!gUYCBT4<5Nt8D#| zSq>oNnc+tpg_R+IVmzA5?Xb` >ZQ*^K6>kgXTJI>;8$JsJDOC! z`yR$AFQBmL1Fc12e#s1ALKi#lD)`p%i=PNE; =+K}u ?aU=n8@$%uBjv-P@?A1f_L3 zhSK~U9PEeL;;eF20jkVbQoW%AGB$&t3)DV$zc~#u#Xeq@1r>Wy`pZ)yvbv|nLbP1u zIaT>4xh>F{w}WXE%bAxXNNCgYg Z;7VPyTPebsIM)RWeV1_~Xx>!^ #E5>o7COEaLELSY=HkWS0d=Zr&nLFr;cvqr>{*peA~3jEUKby0vYsLUKi$+wjmd z;ZT DEs*d{QQND*B!-sA< zt>96G90mmNWuZ!-SPB#@>gx_*`jNZlM!=#r1P3^vs8N6wZz90CneSlrLktH}qeBcf zP@;Y&Ijb8@x2C_!Pz9+59;>8^?XI50gO6Rr`@ZWm9(?$gvd>d?SVrjJN|B-JQ&p$N zvJ;e#huYzAjUYf|C4)g`FdXJF)owC_)MBxOKV1Q?fZ^Y2W4G`lJrH+2LUjc~q$;LV zLa6H|Z6xkezU1BunlQ1t!>UYI81+3XLoh>92Fer1HgNlG$%aNR(Tgu#N|<>nxpTAN zWAVvdQ2T;Amaar`RO-26o@Y!jt!*$n5tP+H-HLrz?V-+{xq*@ZugY;_LLof8hf8nt zXBqcp(ER7V?C1%cz3;?_&! f1N%e2N{ zKh2*YQ?-VEw9Ux_`(v|eIOT=kmbg!g0HT{arQf87gN4T)v;vF5lvQci^}XOiWovq$ z8O|;a=n1_0&n)nkx8IhG &KF9+1(rJkO~ {U}KL|fNk$0&0T?X&So`gzI}nWxlVZ- D*YT-O>|n`{V7YOmWM*j8ZBA8kMJ}Mh zy}A@^Ttg(hjUfqRv+ZMmiOs0|3 7A+=!*%(gVa*wV_Q#s%^z+Hz z`Rb~GUp3Y5 7WyDDHZF_Qz96KJ )r7QB zN;za>uz?dR8{#hU;-MrkZv{MzSa1^TW^Ym^ ?I1#80S@RpxC*%T zRr8(Gnj7ZpOM0UfuM*HKN|5=!Eb(z*V{NTg0t^2b>z?oBHpfAO>1VA4W?TII zXOE=EtN6?(KbJa>hY~36piPL9Q2mIU3VgY7Hb ThM2RKQc`UoKl1{{+4Y z*H=aL%PQXkkKx0oZqYr;^Q8>LcXHu9ChV!bgjWG|-*dKMVw+CjRl6y`F{EJ#Y;d6E z(nwV8LcT_ALz|FVGhXIdtyWi3m+>UO=esxQZSTCJY_AfRv?Ntc zXNoiY94BKamcYPL+&kI-Nw#H?t5EpVtuHs0fG63$4w`^ZKFnP{2mu-L-gpv(2U}w! zt?Tw`AS|2$TB|lgeMBr5jokGltc0?>9vhe!*Ml^q8vpU*$riS}m_`S8!K)Lgoh_T` zFWAFKk_kAiQrL_3bu%iWWsw{3siEE->mJ<8KNO3B;y(ev!0f_s31pY{pxyyG8VP^7 zu #MSa=FDCAnKO6Sd&iiVt*ytcR{Wp4M9^K2 zpy73=ZPZ{~JmR-J`;kGnO_Dd9_rTbCin>=^j(K#lG)9~d@RA)ETHNv<{4y9>G@T 7Rd*5>Dmmg^}=N)EJ%!1Z+;G}=&XKCJw&Ft_X{9}aQzZTRR{ z;}n~(I8fyS8XkNM_j#H~uHd@D>181RM(b_LCpqc|t`gN7Yvt>`1FK0#?%#(-A(iYJ zk>BH~H5ArH=b0YsIz%<*i(G>>Z`2wu%ND)+ ^Q1#p zV!$1AB^B^KY~w@t3SVDQpvngH`ya)JH+LFp^CUC*l3t^>ID&MD(*9xvN #b_=qV$2gUS9`_&VgMCE!33U^tq7N2hXGw(pbqm7z 2;CU8i!bJ$6Vj;{+j=USFR|~03%NVFmn}B0tW?!jGb+Y=p(MAL}mrHCe zYS}E)eg4aC7Q+xhtCRT5au3=-gB07Tn>O*-+kmSFpHHKa2bu-fNuh1krO(oAxKjnS zGc~kjX=mEGw`8$rQXIiVe#`tUOTH(tlT966Hf5@gs+QrfTt^H5$EwE8RMT8>$N26( zi&J?p4PU|QD+W|;I>HC@z>=>(_7w=NRFe${MKi#pI` s{Mo4l1{&m`|dy0=10|*Q#Xs- z2YX|hll9Di1fVhy(V{Y<5=LPh^)IV)b!o{)on20TzEQRJ4+@UHuq;d3QsJ#X-7ouh z?qW$Vik+#%6Qc-@$!YIBMXFL-(_7S3*i`MRx(*4TmUWV LR+tB8S zEll+k@Ky<>FbOu7RA#z&+_8;YZhr~8tCxs%+nCs{7}Mh7X)(#k) $kW7di9HUrtYGM`O{?gF^_UfC(fv&td-*)S!Jm>_?SmIy-DbJ+H#nwcxvZu<3 z7K6)ME|XFoQT_EQaY%h;X2amXs>=^oJ**5ma0AHnm-lji)0 G K= A=&8Hx{Cs^2x#SzvkX?5ja4 ^eoy$SFCO0lZ1$b`>( z@5j&NGx^wBmZzy@(0iOQ!1=51AryOBPg9=TdOGJP^c2p$g^Lc9pp7AbQx8%c8(WE& zg{mXGmjqVBdkHLS2X*f#E;~wAgZRO?mkhF(F>F19x4!e{WT;o2nqX0)_O~ZmzPD zr6w#ikL$Wv8A(~craKIfWkfp#(s ?|+K8Jm z9~sS)>}KBu*yV(rqVGd1SQgE>l!Y>wTn#*n^pCpaQuB~Imprjlc8(af7dU&C@Z2+h zj4OLcYW4B-ZAl~LQOP0Ibh_9#i@F )zG7r^!A}ZZZRXZ 4 zg8kKN*xS3rt8qnQA58F9i?4K3jn)#(hGZHkv3)TaAqPgS?+^?UfNBI(s)<`)q~SsU zgq=B0KdM9jFIr#btDZDoOS24OOpgMC1HI<% I0ljeaFW($ zL~*Rl31AbBMmSdEZZeWzz-o9d0n#4beLATNcOAv))2DIb#11yMnvG>aZ9}=N=GiDz z0f`Y>2sDrzk~dWEuZUg3h$3M0m#C&uw w micNuAqUy@KsyFXO&9EphifM{wI6$BLnRL#GF@ zsx 0?!R#>cOOP)6KfUdRaGB`e;?v>i$Hyd?9xyteb#9qvWZ|WkFCwkQV*Vd za2H42pfDTY8Lwa3!z(ZE;-wb`y!b-u!4K}_&E?IsTx>NaM1p;+ENW2J(r;m0zmWlk zFdM1^x1?w9_1gsl{lenvf9S#@M~7xM((}(bP&r~tzR9M4WTr?-gSyExZT|hQ #o)XmkJ} zU?BvrZU9HI=kpiy+$+6$#-bV3@4{XXz*79811|p)?k9 JuCR zC&VkjOyu%1zzpimL6?;BHrLTeMo-$vDx7Y_uyPf{(2y8%?vNHs#^&}mZaTGzd+u7{ z`4_I>+2=k_FFlt=3it0wZf<5ubb8=HY(FIs+0TlN3CRw?LZ y%Ja~z|?b}b`EpNLGr*7IQBT=;nB6sRASsu8m7cz8dJ6b{+ zLt#{7?WM%n8!x^#IJ9oC{5Qab;n|r8vb8whlXihm?mL{Hq=P4}4!_9opt}(exA#Ih zygL~+R09q>V@Z$L)&k&DDx-IGLhYid=*^{X8=$~Agvm&Q&+XvkiA|iob%CSDFXQUo zD|G47K?13x39Obxs!wWalwlE>(Odc~Jx9=GN#bnGnKWCG4F#Ncn5)~#G w73ZZqG)}FUs7Y~>jLxN+tBmsfUoR5 zM<;K64)6P}TayjyWHO2`wDy#Vux;8_ {snEeIQ2sN4YeFm(4*~kn<3f_&Knc$WW z#r|>-8eiD;G3GnM`{b^Fvo1|M1<-3;G}ptFAf!=Y4M>YK178iRNn~qrkVZ90rVom0 zCvsq1W|B^F@!0$3d8l>0wMDq+o}FZ;T;a(lpT_4u`x-5;KERusC#g) mit;4IEivao>-!(Z z2h;68#-HH&6EUjBrarjL`?`(j*Vl!`!!4b%0i9tO+q@FFw6S!fc76Q$g_vQ;yN6AQ z;Et7PI6mAs4M8bwbK}CUa6GQ|Xm>nEZ+i41KJWwgBsK2@HaF_#ZFQD+jiPMblJ`hz zEBwc{`=(4LoI^zpB_J=wm_E3Yn_lD?g$QO%(@;hYOLsX?qvWlX3EGpe6`F}c3KLGq zuXXWtyoqV|-S5N?0Te&A@2+tXDI3%-ynQ4ErFl^GPr8LpCy5getsG0oHMVVLT8!-W zEcU}~`S6L;w``_Suw=tJ{~}$vyxGnrB+Y{`DsNPGERy_@U9H@FjmaSq%7w_48g(V; z{05wbV_Fk-?UQOiMCP&jn^6KvaqjHk>>b;GvTb1gL=!&W^ay?`v#GJ$N+K{SO(D#F z+S=F1T{c`B>U(yPX)oJ84z_~g{vDiiK(#G23e63yBr;=n^^auRmfZUGS668dPvG(Q zt?>TuyRVGmNri|hqZq@>jt6$qaNQA;XTiyUfE%#0{#oJKH2L)sPm@l+029gV^_C%h z2Z(O0!YRVm)n5&4ChfCnnRl~B i^b@Ut2@_h-OrCwj0sESjxDH-8X=@I&Xa(@4 zPiu7%51f#4V#sc%`MI#K+%e@7bq?&X3;~tWR`MS0w{79u-aFvbt)Io^-E+B(uxsD4 z87 63%-oYsdv|dgAt&4 z+NRhfybh0zU3Bdm1Wau1mIURGh?hyLwikPRr}M>Db&o6AHl}rsXp=v2?C28jc*hoQ zzw1lb+kdJosnU+pA5d)roKh$(vx BOdF#k5W~Yix>IvPnRsB~au@uK*BIFb;6k zowYyDj3P;CA4Wre=C1H%1H4?(wXQ?q`(+OrS=shuwTlBhiFbW_0;$Ju!}iv)&5EwM z$g|Efd(!>AF(TNZU<{%D^<29C4MBaWm#BT$Vi)pDJ_dqg08rzrZ~67eDYv^qsGW5n z#jzrTxO8vloUH@6?mMl??ix>M1z=Bf2s3jmPHTXtdXTxagCcyf3s8BilwzpuCvP1+ zYR9E =I3GD9Xm?CiAiH}>{e zxvjE6-S-fFSKuY SI*ku{_QH;-NT%5d z`vkZ<#?*Edn1U0BwrhpY+OAaK#E%1}))KwM!S_t?NWu-o 3EJ`Dr}%PT;NY zxV;=%wHU1NXSM0zU{%-@k1Nes$c(5HZJpcD7R2T)NtTPcpjH+Qm%p|PfXs+qx3 V=~F814F_)#4x+4gm;=77~WhLjD3SuOD31BBDJeF?j}FD77Gg`Hx- zvobW9u NeHt>J5U&G;Uhs!RS{9ZUZqO q1AOCW90sXRo zDxu*AZ@Q&MCcTkQq!dV_m*GA89T3pbOJ^zKkh>sj`kkeHz$(qif !fjbpi1>%CZ+gI3%keh)O|iQSe4xP@5M9 zw ^Jo=Ue zHg=xC!TuGNgEF`^BsnOe+veKZG`hC$J7amxp>%ixXkOw-n~`ZkE*u||0A2@fLH^x$ zAvan5!vk;s@>tcE1yuJwh@Wcdp$_S-tk^(kf~ M`av@+f{ecyXoGx5TcsbC-tey=czQTJLz`cQZ-etEVj5IO=1LY#7-$ENFow?W?%@=U0D{%N*J)lNY7v1)q+v-aE-0qTZ`ZJ#k& zVV?rY^Q|6xYqD?B7ie{`$Ig1_rzTh%ZdvD=R3>}&$QAo=1D^WL*^5 U1ERQ^g_k8 G0hFCiDI&%H!>K n=n0ejQ(n1ilxss9Gl~ z6(eqQ1IcV^#V_E&Hxur;?^Nkk2h;d$UKB?39HW9%+uUv#rhw9QJJ&&-RG>)H?OJWj zRq!% HHO>yXdW7KX@q~H$*a47B&%7a=C&5ww9@F jJ85M9)(a zG;OA;g#;7n5TzCip=(BF!a*Mf5Sx7f7`8u5T6q^nb4Q*g8<6QPzv4z45$YLxCvUk} zPKC*PZ+kXXC-;prKq2a0HH-& hbKd{DYeo)en!c&G!@!lh=ZS+BGr2g)0a G9_^tTytsO|lrP~Q@ zL(th#OPhJ_T(TYM1J@(K%MCMZw*-6dC!x{UZG7Lihh`_6Ff9=W;;skany3Rjk2gKM zg`00VQZvy8gv*4!gSwY_wD{MCUu{xL?OEMNxIWrm$y?JGRXx;sJLC*#;-^ *jN3WFboh(e@YcDf`PcgK`oIyvp{!DY*q+(}5p^fjjXDBbc2y-~ zvlu5qh0(-(AX?q4r>TOYPNtOxEp5Jz7Pk&F)pb6*;>?+iq`f?Yz18b7y@xfAEPbo> zYi#C>wZ=P@%XUvDcKTgBDIS{)q7Mtu;+TLHH+2(G3; o=lr-(*6Gf*QI)vs1>csC|2ZOLO}@7 zQ+WKm71%RnD6Un7D(tvv5!^8Q-k z&PDa*hEYW=3`AVxnlQbY+qsw1j-_{28(ton#o)JescoQc-@E`k6U)CeQ^M@jR#5>Z zf1%NFnX+)uj-!_}Zf+3nzULs>s$ODI8x1`sQ-NZREt-kOqse7uY2=e12t{wc8Dn_~ z)AQfFY&Lcm)J=AFXD_om$)tqqxULCQc@}8`s EC?;yTCESrkWqWzE9&B>uI~ZyZ=(2jE0jZx2xTt&0#7-{HxJ2<+4#u zSXs8i1@wxGuv-6u&@?)bf))aT>UcPVnz`n_ufZoi?BnDyR2xiO;cI;&xHG}EtF~Km z9m2JIMBme{z!#M_hWp8%Qta|8>oW&Y_at;pS5?D@<)Ehp)egkMlX&V)>uIT~g;Zv% z%M5ktB`e#?e(O3=8#&G=-rRQE0-HNe(Q5x{+tS(<@l4UH+_j48HI())D9t2Z{lFDz zvbcq7a%Er%>a*-qX6Xtfc+y1Lzqj0m`>)5Seodfy>>c>2oudvE+OMO4zOtmt37v-n z3<~p=q%6GryTJOX{z5HFDcig(1E&t`G)-M=@@bQ_<_0lrp2x$F-ct6H@>{dyVdZu> zgX<>5CbdvNLr^R1*E20CFi|PRZ~$>PJMz^feDcMApG6s;YuM2IOnBS@2G7TM=yhG} ziVtyrEx-Of&qQzOrbE&z^*@m9PS-ravnm0up&h|xPAC9idlecpx5kRRb46!15Mw%f z (NNF5u347TDh2 zEW4Nsvst+X#u`7>P5&1 &TsrSJQH`KyWWzfBs zj_=f|O&mXYp{yv#@YI^H01xW~cAs 5?K3c+yJ)hta6DUz~8EyF~y*X+a~Vjs?YM0=XtqFy`9Fb@;-3cf*H-f33vuj62`Z ztZu?4Pm{Rk;%R8Zh6?27UU^^*lY`x_#1pqfZgtO 1;u8Ckkj_=f0CuBlWoyn;WH95EsoRJwEg( zejJBfhXPgJlA%wr7CKv|UHzFOL~v=c=<})+wdU9|YYq?)oe|tS%3@{b7! Yx5(16f&T<+}n!Q3nE|l`&d&n zi %Y;O{7iO5aM+VCouoMvPLZiq-KkYyPz lu4i`P5^0uhvTXP$j-NBj-l56*~tOgs36B$$@1z{xn4Um zEH+LOF9*uZ(T&G|hQHw=n-q%10el{Q3Wr>4fhwzgM`g5+;~z7^^Z-~Mr+uRH;}KR6 zS%6OZi16$(r%Y%X7x%qJAOBdHo`sE_0&)~z((cO9=XlsNeTa8Usidqv=R?;sV zNX>y2+vt$^bq-p>Bz=s2TinBC{V*Zr_0Bjx%s|dHfNvVcHJwPhLiV|1oUF9EKF%fl z`k^`&HO+eQLt*k;) qd}n2K=Xro+|0 zwLo?BM5AJUia>p~1W?F8DVMJ9*oUEjLrNLRGpH7>hk(#FMjJZyWv?S1=&IVq$!=yq z(7*HR)wr7sdW|VT2|XHI)x_jc9~# 2B0>HO2$}pwt2C)LMWZ_p z;qJ5R)xWhswY`nM=o3x0md~ZqCAKAp5jsWb1^RV$Iub#K#01||S=|MS3j~@ }W z=V>fk`%
+i%-xDxGx@wsu(}re-h=*xFsWp=EH|sFOhRpMce3X$DsXt4^AD zF2uR_eMXG~m`dqQ4l`lm5HO;d_{iN)yt5|dTGwP*g2F0K<2)ouwAN+!G71S?N%=&T zpUR#ZSe4(Z5|ZnnE1q~&&-zxgg|!l<_`P;u)NG#>VIV-}1TKfOxtRxdf=cQ}tKEca zRIP!!`BjWK9l*h?xFI*AooA}kSc=P9U;Q0kduAoGaBSqUy%!IIg-hE<@E5S=ngy!7 zwr}Sc?o+fy03-Oqa2ZqVBtuMuj%aWQ3qakqH-TNT3t2+whTt7!( 8+fXw`LSX6(>gFJ_5)g3#>-sZqE z5qQ+%5j&K{*Ufv=_CwROz~TwWP@<@Hw34`5{K=l426tA~WghusmafgJlT98PAaH9| z4S74$2tzw)jj0 U+hV^#XXmA9d4=n&cT z-LRK3!Sqw0>kV8cMffE?hJlhGzGr(41U);`1hW8E3|IB|e0tk*VJxSf*Gb(lHtD8! za`}-O>%|9zs&j(MO)v*Cv$vnC6R*PsF4j3|MNRzm!O)iv2+)@PWw^hV6CzOOw1@xc z{^eacQD15_F>oK2lBst>n4zwc-5QFg Llp-@Tr%kzgNp>K$Y)11S|M2q9)A)}cpP!{Z3shS> zc-(=9gDe;bAeMq}6apNiPyn6UFJMK8g+oFI>Tk7uQ|x?=K7(CBz-89bMdnT43&3*g z%SzkJzXvodY#9tw7of!(@~eWwID~OHk0J;>=X7?g$omd)&pmMnX$`yRTlgfz>qI1; zcYA$+TN{X3gMm(C>cZmrkoa&Y(jbYioi5k=sUhgFvLGm+P30j#*u>woWAY7xUC?>i zPPUciT|3y@c|r#rk{accCb=NZW>{AnK+nkwJNciqn$A!7t8r=cj+l^tr`X>L ClW`%D3nn|NfGnmff zf>xfFV(lDjuT(aXr7@4FU= 1 zo4GfK#|B(4R$bfQ93aLtJ9(e@;~DpB%R=6BA4>0hrbKu~N{v*2uTdT{s;6_NBJGR8 zwR^E;$y}Vs1g(= s!Sp^>22X!UU*J-Gc9B(Qi#flO$Popb7R9Dd7^*K@s3VWfa!L zl0Tbg;d3sa$6Z*=jpCw)bT=dJSH+Z&NjJ_G%5L!-bhfgf2U* z(pdq~)!Uk=EK0x3hSz!u6N0JEMAqnikKV#8fL0`Q)zm$kOEpP9+VNWTJ@<0K2%u3- zg{`QZN(Q!PndYE$g%QV^+8qH?)o`}Sc+qOMFqP%@F5ln(h;GuU*953GwvwZkiH-vH zI)k)IYtcMCJ=wR{rv6XzAarpet_GI&47V2!PugBf=1e#UAS(q_hNF?Fbvf~+Yq&HQ zR{IOaQ}*7tE{A9hpIxfz#KIBt9O^olj$W1(0%0;AM8Dd Q{I;?R}) zNri`^)0(jAzw_>Vo%LWf4Wkd5qZ4Uxoqn|*ikw>K5}{T|asXQzk)2wt@5zuQzgceO z_I|afev%v=9J1A3+AyW96TAJV(2-Uz*CL;my-5*s;9D)3I_V+!RQV_Ofq@8Z?w?NN z%C)tH??rb_fNHtG_X^UwvNoePB7m@U1U-n=PJ%4s%(GBu7daW`sjC1S4D`jvGmOml zKAt6V-8hI34lX3Uco*9{8!)Cje<_uQwc)8FIX} wy5Iy7k!-enAYU7Y><>m6AQ%T@X^oJjOsI6jU3E%z@c z;gW0N(k_nH+3CoWlBrR9CdZt*q)6~`$Zm1vcSHt^ctqI{fMN90k~(rRk^f#|rI0vG zH4Dvsu9KHZq6w%bcB%kW**>*(q(j;!Pm)2*C9aci0fVNe`VPo1V(f=JgBl6yz=y4g zDBBymjqIrdRe8^?7i#G#%w{~m?!j|7aof{)|M%aM8pN`6LyDDTi3|;vVVj`YE6W2a zYbuil^Q`98ex2Q1HuE2K26AbV1FgY?t~H0o=z)zU!mDXU7X;6=Y8)=S>p%0C;kawX z&e?bk@CX;JGe8>*sQ%*KPg28t=rde>latU0KkGrKGADv-9$onDR|kiU5tnHzBFznE zZauw)yYIb#s|SCK{nh0rhawu*09;#_=4 MimUi)%>{O>R7Ww1`pgMMQ8SOJ &)7{p&}g>c zP*S6vP|+N3V{ID8*fk#kD6aO(%xmaibs2m7dEEc#tMvUpawpz&|1COsq!OV~59?%1 z`3eEolyOh}>yHP#YpHqH0Vu6tn4M|?r*2*|fxRRtj=MK}9pPZ!O()B>QAMNimvyM* z8i0|O?%*Rd6z|s7k@&`HjZb4xLyQZDUHNbyM!du~g-+$Le6doQW|Wdw*h(tSqi;Tf z2OfG3 Q-!9lHoEIq#Ny7nKONBLUTqTj($H#?h7>^1{xxgh>r`ZkoH` z=nzr3{cgO&KZmxmvsrXQ$&(~F#4Gjcn=m=|a8XOy`*y&VKt*SlDf5SrbMC+}idf4q zdF{Z#xp-NPBkd 4K= zB9Plnem8ctbR8HFeDuN^a@VJgESlLC DVWuKID@NDn245ujz>j-I$#e-s+SkmU)XVSgBwZMZ9ZsW~wxroi9 zpP}8o7r<>KFm&*v%C5yVQ)n&<_1(Q=_7*5hIIpSx_403FSW+7RwokoQRjMSJjDz~O z^bZNlA7_txhQ!igc}nQ()pKNZEB>-uSx^iF8&U|f<&I_V8a29dEDRoFdP-7!&muE( z>qnA?u)F^%ZykG*{>=Mt#)A)^PWHIANVM_fvVZkzWyfN9v1h3#o(l6C*_OFsHr^}G z2;EG)u-Y{S#t@+@`t2^B6`S==yj$+yxSEVN-q&oeHy;CE`@O%NjIze}+_Ne# zHLgxI8=ZT&4oa_{Kg=ar+{|EeKE!n8dT?=jkjw;xJg8F_zH{4*D0icqn*;8>X9Gu$ zT*aq8`59cf^dM~ycP7^ZhoujQCnu{-$Y~Y>RG5^I4g;boM*Ow!Izk8~Z lGd~1EWT_L%djfY%I-g)Q|6eR zSH>D#s9B)HkY%P|ykB)wGJthzQh&*!?fEcc7coiQ1Y{7N4WwKt$q2148|U82h_yYI zcGv`APKDICc_yta_B7V_G7l@i+CNy8wz%rpe4V2;;MQBV@V2)xjvW6S_V!;cX4;lU zKfQo8?3M~|B5BDW^kf5b?a;{}oJtr $a`L~f5fRS*lYe4o{%NcD zbAL5aEe9GB07)Wz!d(K`k~>l5h$2d>fUq(qc1%md#JWoidtUwwG^e7|4Ci}$uky~R zbNIjy+>SRrcuP|CsGTSRWm2o8>aFsqoa>26qRB{~_o2#5XxIrM_Xs7eSipr< =#acn6GiXV?V~Q2jN2|q3zPq!J6TgHt4%oh}1H5(Y zDaPXUKi?>OcN(qU1h9t*eYHhec~<=AN#`)vpp+Gl(}o(0hjdaW1@97o8<84)2a=do zIYTm=AEeW?eX??pH{Y_vTi?FI){##au;S77Rd?&?;bhY=$;->M_$Tt;veK7=G<^?9 z!Qk$kmS@%aDawB<1{MuXiY2f6d-gNNsuZZMTuR2P2r7Qk)^u{#Oop^gSZ0hdS%GO| z3zX7Ht05OS_*(;FBB!Myt;5PQPiTMtb>2Sp6n)S4pTRx%o~p+p36P}HTcyTukpAqH z83Bjd$nv_pJjZIIJ2iRT)z7c0Ku>@hmz}7NTJ!c?9=m;B3*hMqyKMw9Z$pxIo-8e) z9eBBFLN?Yg3{bmk(o(1Po%K+{v$u0Dc+Gd3^%EWUMNaEN;rLz8(<}elzV{;3V;eBx z8MYVIzL+ktEDK*<->n)zme$m4R!r6$^0KX=O!(~$LX{nlsU9<6t-{Wtl?vT_Y71|9 z%K?VX&m=b&OIvSFthVdekPUe8q~zFvF>^O^C*OFD{Bu`at-X6Z(7rxoPs&lg6Xp(& z!Rgy@pWG`@r4jV^^CUR)%xi3v+{qpLQA0NL)Q-dg;O5@$>pzptyZkSNaXS(<8k=i# zOiD#3!}%_F`9=D+?>dFM?>=5wlpaW&mm;sKs;6hXx006aTC!5TNYK7ae`OKrgh6!| zxva4bmnh>w?4|wG2X4Kz_V}pCTh M z@pZkU{waX*6d>k L&jEojx$yCStB-*pF%g9KE2nepdCa7#cn%{Sk&namh_SPfsG)xj00T(Cv% zI{lbrsO*XyN}n2!s_W3Ei{XGjj^w6z|5mk^9 zyFzACbyUxK-kQJ)P+85Zr_2l>irHT;z|dM&Ke^oxCP?)&8#y0g3nd#^!51z&VQCel zEf8cWYAWXFK^KDqUh1HTFh}g-<@3r;UpTxBrlC#U2G-&yy-x6qCut%9cDTF*psHa~ zd)9+Ro2{X`b5l^bJp*B93ub2}mU;_PwJwWpM5)V wDRdqe!jF6J3694)22Z#^|tcIkq;>* zg40sT6-M*ns#_qc;IbINbO5cCkEwn(>NnsW&Zgwsv`*1!vM|ZG{C1$G8JC`%$TG?k zsZsaxP2aP{Q#01?LW5x!PP*SaxInkx^*Y}C*u4p)2Ec7fRkxaTJ1076&jpn$yB^WL zE~l8@lj}mHTN=?O_AzvFrc}hpvHH1d&?*o$bLH^Mp@Qe43{?&lL`zts?n+ry*~AoO zXUdwkwtX_y6{FOpo&3!;ap*cgssopauYM_lm= Q_%fX)oELD$iw>Odcj1 z+pu+UV>Z*(Dx=6jW%#HQL^l>=(iRqY?X_oc@#Wij7;YwNQZN0A?`J8>n~ma;4N^(+ zUD3vj5uEnmg;%5X#i24hkdtXk7dwp6G8t-m&Pp%^sQ%9%;>UBHHqY$$F-FLv?L98& zp}Arye(g!v(@DR;k=dp!a9{b>AS6Q_xQFz_XRe#{uf{zZho|t~?>vK>Za%6zcjmYb znlP)?k=X$ZO5+~N-suz*#@(~ONPftmmHjV;ger#|rIygSXH_*)7nyp|B{ny<%2vi0 zY<4R*!Og-qjLF@&Y)o;p*xmN_cd@^}SEgLlBg+?v`z=|elFwQvh=*P5D_>h**Vi#j znuYCnq3xv!R-V$b`^Da6+`G(Uu?`@2E?Zk$*xt(9N^jJLmkOCixWgM{U-S)(n`wkC zmEG>{F0Nj^lFDkooHSE%FjT })fDEdo z)5+FmMro@%+hfui7WnN~KSu|vw_%fZSWaI;G?~_-vncCK88=d|WWr~;RT;cwvdZ~1 zV}Kao$z^~VR+ndIqcYY e}6EHeGL6&pgEM^^@8XLI!JpCE=q#{T#c&OXAp^RAmpFD1rvIrZ2SWOju^ z1*9r I$(WcV z&=r@2?W;Q0ZJWF0-S}|j+8>IYssh!q6SzOSak~;2uwW7aTAL*w0e5z+_6|UB>oM69 z=he8H(DLXHM9lxU_D`5gS9`x2ui(h>^LWQQ?`Y?!S+6w8vDzKd=4(+7Ul=B#N4cbl zKM@FFYyw!Oi2GiV!M>Yf`{IM$NCv~5V@EJ-G%!H}CB>HdF0-Z!=U>Asuf2-bUq4?O z@OJWh^7wI_ICiuMVA2gz54%xVaF5U>=RNJ#!~YwHM(rUsk=y%?VpBRYTn0$zFbl~g9LmonKovV&Vr zo+{;%511`rRn*}sEx8nO$FN1!ZZurJoIvYpVPGW|S(7PsO2)z``E_igWgX6J1}#mY zDcaLEiqSGXv>BMI)?TU25|%l2xx=joMJ(F3)`Yw7+Q3UMK8^jWr&F~bBTbOR-SAHO zRQRQZaM24OAuuYdr=i1Fg12o2B|$W+uAkB=s` JRV-pZa}#@r&p1(km}vKiOP%c6M;)_B-& 3N8g6`z4v`Md)FNW#B;a Q_EhdMt zI*1#!6kA$KSKj@z(xF<1$Br#==8j!F`MKw5xjc%w=`>9x6mzUEXtPmSk;^w_PVFC6 z1V?DUA+;RNw~#8UQ8v7EQ<8>ilB2-^qkPMbukO}0f7O^iv^i8JYvkIDTJhQUY?!u3 z!34C#N@Q}pd%IN>Z*Jk5s;@&q>@I@lSXxKZf=ZR~K5ZSjjECNQOIg3Cn|3y}ub?JX zJC@b~4b?a~t8A}BCaB jArMPd#CO+wO+$3T9C|{sMw5QGj~v6vn{UOiwMa(s z1AO{ZpTs}?XTMm= UKM*b(NXs9e3P?@BaPw<41n*&*MAZ^B!yr&Y+z~ zdeeW4% lu0hvG9{suk&L2RPh18pM1^gczgG6A>S8qLkc6H7%O@I*G&+XX z+FfH+Lt}<$Z1D6ggr~psJjR2&lVN?E92ibWT}+dGbKnBE?8Ts#8v7w@pFS(hnA;07 z7qEsUwkme`+=2@7pUjPAc6tG-l+RP6b@FD8XpG2#jvp1AWY@``%B`r1#J2Vi26|e8 z?vET*_S0fCb;NNZTT`m&;NT)|zx$vV(8<+6Q3+)2p2L CgyfwZuL{Slw} Z!-P{mg3BT2PK~(RLe! zvV!> Oj% z|HTV0JU goV zb&3GhVcbbiY(+6!3ffM1T^Tu!#_dV4u(16_9hr@!5;C zTx=II=#$X_h}Mj70I;sflV N~*UcZdiF)KRQ%2lUW7|nKrH!ot-elq9 z&F`Ok=2`seumAt?um1Hf;rIUFcS}P(a^z@XgcmNnhW@&o48#BSH-0VIakg>hwljFg zqYst1hoPPd%?FuPWz{DMCz~AvlCDt2hX9c)gSC(~_mcV0U?-7K-q>-8Q@7ljK&mPO z&piDM{@E}6|L{L0@SX#y{>r0!xlE2Fb@0rYGkEJG4?D4`tgYIwhBC^!vAJ2MGvo=E z+ 9~ giVOu1f z`qTUKtKpw~luvDJfP1@;$W}{$WK_%)f%$0o^ g>?`!)QFfBiq>{Kd=F@Vdw&oI`2Uc^EvihVqwpj~Ll1TDr|iZ!sy1`S&yB z<=%iX&!GCaYU|Dh<|U3No7C2^o$~D<^{~J7v5zI-{-5#eb5ECd4?p}ce&HAXd;E)k z@h|a#5ByooUAud`__rVXRs71Y{c;+JcwHqZcUgmiRb4)n+06F#W>FJMn%m6vvF+Mg zDR!G=yN)rjHC>U^br-pR#V;gX-ce&{tJSLQD9g$)PMxIG7GBAmt9oypyEeb+@UD=E z8oV(okC@slG(5z ZA!bn`VU#26hj*3`$01at9;8-6!M{@!^MkrYZrJ2K0s0# z6Dwka-Y~SN?t!qopXAdU;yW+!Dt-VWO}rT7$tHWM-`3t&tE-8XTulsP0dH(8C*6*6 z@6y!Rl++ukMEHbTqpc?-TZT%AqtUx?jE+)K>pG-FDD($O5E8iT9NomVu9seT0iXH9 zPvH+f`Fn*G+ MvFRRlw4GOOI<{HP0H_UrNLF&Q=1eMQA|%{qEHjp7_G&aPHg}@cawUmiO6U zzO@wr?zY=*$GYpuC!fF{f9`Xo;bx<8W|DPg^H6|E*RzEsJh%ofahElYT`a5&{NzP- z+XZUX?Z6&wtSzyro#V$!S;_Un^UvdtKL1BW#kDf927Ttt?TJ~;cLF)TUwGp4_|nr) zC&Tj|loi1-I8gyJSZ%Zw0kZ5$S2eI1T${m$eL1vmL$fvIzp@yarr@nAr7tHKLl-SU z^erjZakOPq`95Rwkt3_TSXq(?^%6^+2nJWqF02U~xg&s0j+Kl!S`(5^R;kVCyIo6X2)CG3{i2?)4{sECs?A}LRA*CI`nJab5x1nU9Lnz&KSNn#p7 zX&sQP6x!!o?>MRrS?HUL{AhhN`c{VJhxH&8t}#X)0InftiNU#( -3BN`oI3a7WTRB%1kqtX{84BI0UKJL0A>p z4jP-wwya9Q${Si4nCaog4!V(am^^n)rozZPsoItdv}oEhLV>(>obpPVUM|g*1IFxZ zYddcfbAkN;1qWCOz=1B=n06!Ti)iXilPB%V6$Sga=j7i7=Fk3BH^T}ihg976N!aqM z_XH(z+ u z1Z2lN90F8qU4#IdG%67?S=4HP*Hi+MevegvRnS>7OJ$OxoY35QGyU^dF?=Tnd%Js* znF7H7;eYto@z?&^U&DX$pZqO++qb<3&pr1He(9I~6~6SPr|@_F&VLocShb}hGD111 z9j0zpSA}hCY4&TI;Cdg+2WviBNzbHPD^q_QC^5J8;TTAf0yg$8C7OhKI}J7rjd@Bu zdBW?#{wl=z|NMV^6nEc!7tY*qC;s#Q{Qp$m{q?{8AK^ED^WWi-M;;4q^QdQD>sQln zoevE*$*8J;l~rwSESs7yTf~g6@wYkzxwRq{(ig(srF}3OXgR4>;o?x_{xaJu;8hk? z*|pp_X%_kZ;vDMLawi8!3^nC+U8)@>s 5=T<& z^Xfuo3%~FSzkq-65B@%0e);9nQ-9zC-(9}_@DKk`NOK0e (XoIMYGyM#+d3~!K>b)!1&^gX^;aJKd*S(K z_4zOV<-dgYz3;vF(I5Sh;BI?+JC(`tIz@q8m)|-#k^5Q~b=-bQgKiaMJ+X97+|G$) z*W?;+^b*qY4%hgFUqS({yU4Xod*zChgSVqc@|2gW*4er!s)rDekV2k>9fJjP4-yb{ z(ZcdUJB^BE)ZfCAIaOhy8UcRfG0Xp{Tt}z6JX)KLC2NjsR8Q+lkr7&N8UVXQ%a$$e zech44Wse i+OZ-R3*e#&erfx@txjKjw@spX$$WQ=Nt&4n=4EM62!UgCCK)-^&8 ziV{*h2C8p(tc9_$xuJmM8CCln?(<~D+iyRUglh+vE?vajl^Mq0`dj}ge(cA76o2o( z`TOD9u`)aRzB)-}Ou|;y2)0Ru3#v2s!8%$YQ j7(|ItrK=@cw>VH>jDH4v|70b6PWQRpb2NS^!=^p}#^?f6Mj^ zW}wllcEI4i?GR@BPic>=ZYXtXd9%lrD`7;FmnM)c~L >CDVFFZad_gvEEMt(|v{{4IzGwpv*v@ z119H0uQPX^#zPOiISJNXIPCfd|KRTx=J3z|**^{MA9?suJod;VW&WQWXd&T?N->o5 zc|&mn-I{TT=#(8N+EygmvS4{ucH+8EJ?OD{s_N4U-YBj49z<2D;pVwadAEOYCS`T| z9k=6cZ+RPTJAE4tyPkaV9RB`)^Y?J&%4L0*=a#+ov3KBs`|d6FCz)?VvV9JT$~V;Y zf7C_*m-V?yXHCyIS{d0GzqOTeV95TyveL5k^=gcHmQJGlwX&qHT!Cibmp5?2 u;3T#e>#2*(Y`(7<}N^$;#3L0tU zN~dC_NU@|~y}Tkcj3F0x!tCr3mN$Lp(+32>9&{!+!qvaa_eYK$!F%5QUcC1`-;SrB z`BE6^y4H2_#3}sH_x~{7bl*LdB{AtP4%JLjM?rnBQdtd$%E G ziw7P^UEPCue;gO1x1 t+piKZEt@RKk$7&f~TH-3cvBO zUn{EKwXQq~^ap?7NAY7n_(N&bs%^?9t4gIsR?}V?2Sz)0tO%g1#-UZrl~4Zx_J8$X z;l%6b(@5MV#&drN{_}qYeAm4|-zEF}<$n?gEdSlFVfcfO1DCGiQeqXCQaDFb`e=I_ zzRRzM$u^l{v4LTYI`NKoz7;?6LqCS+pMMU&_1nL3%`(aP&1&?I{NP`}_kPEBBxY47 z$=1eQ=Tp_q_o#r;SeR97c(QG9g=~{xb`$` Wc&1h@^IxEftlN1sgvdeZVzA!x?&0X?-YiA2Tl#JwgL%eJ_|98Lj8*A-V z`8tsd@IUfHe*yo8zxlt%y?5PilTwLvsn5`WzT#Bw)-3O=`&Xs!`3R>Zq!<72_py2Y zg?f@t3UA2U%e?R`#$+o3n}}-5gT4ms?P25TCqW0h$yC3O1t)g)g->JamG@%v&U;!# z*Rsj!srv$;?PyxV^lT&l9zDK;zxWeBR@AAybHs1`_HW|i#S7C;1}IC7vI_j8sZ9QZ zzx ~fl{336hlJHS16iHJPd`+52H+6 g ARudEBB>CzfzwfSbj+e*Xt zred^$XdPaxO433<1f pAF{^J@7Do_y>O!Kk=h~9{1dJruOEo2QCb| zwI)pwNlRh157j9Q2`F;;W+s+r@?X4&t#rScJ}mP>*)+UQS1)4UcaPdLi{4(t9g=Fc z*u8=wv7SZV5;(nETuq?0yKAhVwb1;tK;3?27_6K{UG~>ax17XZ{>i_D(@Bkc^q1dK zW}H9y#dElH`C?fbw3SrU+iyFA#~ytf-v8Yn!1sON12}W~7SvOFs*R}xxoGe>qLo2a ziHq__q~+o%uK==vnSGar-r8&{XA1Xf^CZXiy tF0(ADXnVw@R2FZ0d`A}?-I6FEj?!LpXQ zg05#dwSZcYasXzLYaMK3*u4~pVgMJ0W_fR;e-cpfJ9?DP6Y_R=Z+EYzM|avBW=p>% z(HOH sdJu1a>`^>$_P#RnJa4~C6tUATX(gs>7mylAjmXPfDQSc <{7WJ$Kc; zsKyEgBiB4~>waqy$)sK>AC<|LPO{a#+!=DX6Wgwh`8HsT9 k@9#lO2Z zVt0Rm?M0W8M*q5gg~(-4>_zP4k*yD@5mN}KPiAF8UjADVIz~n<+p_OpmH$D*RZv~+ zCq|V%oMan-kogqCaw1sOJ2~XRYH!r?soS}rZivMOZe%58r6!0u!j(VAj;O^^(>&_l z>rzzJP5HQ_S6)6}RD)q*{*@J>b{}%Qx+=td`*4WM8bOWDjG-pnkb?1DMhMn5C&fQ5 z`*vq{!+=@9(k_TyxE4g27j;J(p1 uhY)9nGkYbd8s}iLtDnc^Vsk{7LM;<(=T|BbL|J z4d*m$zVHm_Q@@Ad%5G(6ISF|VS5i;6jvT4+Hwv7i9GYa5$*69COj>?lKBY`j#ouw~ znPh`HgFp9YKTygf8^^P;ynwBo>6d{!$2c~MQAW~6qZ~xm7|9t?gsGqnYl|co{i5yR zE;2|~|I$b~fK2}#m}B^XcF!>QiZac1#;o+`;>8sX_EIOXGxT62oq2t9vIJ*`@?bR# zt~=&3ak~ M(5C3?x76zfZW`DkK!{eR8<5q9IAEuW1J(_* zC5;;6*Y$vabwD99n%R|{6afPH=?c5-nj)nKY~s1+E~UnK08hPb7CIEFrNMR`L5)G! zj~2dzd*)Ekq8^mSHL}xXt;?{CI-uaXE%JE4YgyGyo3!o^7D;~20-lY+J6judP7t6< zKE)*HL)HAq(#hPWDcJfp`Cez+rgzCMwv&eQ`Q$0L2YLd6i|4_={V@!m_;;XmUjV0_ z+(8K}mtXum=->T17Ee8yp7(T2`yhes=Dmsaojh5=Depwu;vN>HhsBQjE9=!}%1Eos zv6kFTZzUGEoz%W%TbS%^kMdu=M%dCBt0Qgv(j0RTr+||zHQ;Oi*4NZSbf=0)-q}2?q%Ob!V z{8nkGf0>5polIEpE@6F}w|XU;t080?W9zx3p^FYKR1}E1xND` h-s5SBHVy% O76z9J+&c~nt{r-OV~My677c*_FM0GX 6&gmIKP7(HdJwLyBs1fK-Ge0jn+_ ~v;rD2e;hDIe|>Lt5Eti4cDr{?Br#n}C@TI>n@ z3)h#Ejaad-bmJHL%&rY ag) zW;kW01D}#+`^-bi$NA|my`BuH?Zg>W>)c{ks{SwAnPl4qk1OpyCJAmiv4$g`s-)${ z;K9m-W}IxKr|#UKUw+uTyjwT!hcSdTjYabBp%zvx9MGIXe#A)Lm xsW5EDln))J2AGsq|1zM{jo{}S|ery z8|y7u7Z?w1e?(~)wd<#L%zG^pDNEUcrOe_Y1FcocOF8$?NqW-<8pe^vYxUAegfMCW zWm?loy80BM%=R(a*iZo0Mki}JGP}Bbd4-FYHdCIrN`%z62-YUf+C&T>qFl?nPWAK8 zP9xK#_bej-AvNY|9kY;HjC1l&^&k=h4R59 9$cNkUQTpN&mvQCtp0b{z{^f%^J<%Cu35OZK!rx58f}i3-2;C34Ki>)Z z3ah8ow8@sOhO$bNSyf;L9HZ6n$>TcUj8(xMI* )!FgsH&X`O$`)# zR;l!S-r%v5d7&MSe%}w`AQ{jv?Ht3wxF}#%+?44eq)9Ax>NHfIO!2sM+nw0{zz<^i zmbU;I^fopcFdCC1MF-2%!PNv*`v;hm6RgU}y{P41Z`h404rC>z!naYP6Ubjy6Ei~2t7JGwioJ)x?gS}+cl8IFrc6Qef~l!ul=O J~l!!i6-1f4Vvt+71B; ztPa!=%2gG~`!5YfDlKWQPzZwe>P#4Xs6{P+)^jTYlFlo_Ao$X3WQii|T}tA+ore6E zhu9|A7lMD5M7GKr&7sHqLP~s4YJANI(tvUpbfY+BSF%mB_F`>r)#f(nc(So22DJ5O zzYnXVzFqmlPht7eD_HJb#UdHZhjtd;iWkXfzKQ)4$ANp#V*Bmyz$$@UK3=4BATV2) z%_gZvN#EX9`4H7K>Nsp1ZyiOO{0T%=O@@%!q)6&eK&ILmY9k$}{uYcC1Z1yb)so7K zp7--MIioLEQA7y7hpKF?oe79C-yOalb?#2Pm&O&?bbDX50=M;Xb6xDK%F0Y;GMK&o zdS1JDYX*FUdM9e+JI29Q|9H?UF4_U16}Q=%Li49U _yO%78s(TpK+zx}) z7`s}lr_Ks y3(I) zOi;2l0NUaf`H1=B%RDt4n`iC>zWuwfx_k*-j+a_B6&qzC4ianH+TKY<^KG!IcFy)S zNL;Z3$fI%!Z144C154p7wwDG@u=0_kiOP(6kqQ|aZa`J0RkTw>YU9d#b+vD0`*RM$ z2UL*QyK=dzeJw&cCJP+8dP%u!AFR?w6b-f7;JyAsG^zjG>8;AX_A7V`iVS#&yBxs9 zODnwk%2u*Zov5J^IaF{RKkHGB)sW7X?C7N>G0LxIOR_ZBuHM?*B^;><7+8f|O88Y) zr~Y$%%QT4bYHB+-H4mBzK|1CzDkwdf5gT^p&(`T{8m?u#syF1?qlQ;fNGg+YP8U>0 z8_v|y-WYD7XTEqI&p-D%?!M O&QJ)(OXzE!3<~ihu8X7QoGNMqNO5*9J-A8msXe 4*@U9~s&5!oeb#a(HE# zc(za$Rhg7afHy7($;x1xhy53IawfL6u#ml>S`SqQ4cf1 h-6tuJG-!e+0@ zR<(QnHEb_$4%?=b@@h%exlpa;*Iuux`E^WG`k>aB+VY2b99HXuMqhx*1h>0~-Nfb$ zB3xG=#kYo9Mhu`b 6fOz%7N&fv$Jm0n` z;aYlm)3fDfJ<42q>)f6WR`CSou3^oht4{-3H!_X_7uF7?!GqPU`q7q=B_SD$Uwy62 zs|r!cy4RT)Ejb(#r?!=npAi!bsJ)i;LNa%%*`sV2hI~RTYWT{u9BC_V4MF8mgQ?&A zUiCwps7UL8O7i6HSIJg&aN+gXH{?7Cc8^hI6b39!!AZLUssjEPqAl<9e(L*|E+!4x z4N;Tj$Hi2xft)D$gs`*@e F!+q2wbkyO zc}7{I8`ta6OnFBG`y> Ff^y!-a-kxkuq%aJMSz!!Tj+^DCcOCk1>GwsJIVWl z=Tl!W_(`B#=f;eE!-|>pcWNY-#*QZNfEy9A2CJY{4`ixHF|@U8jd85fsMg*q=izMK znhXx7F|`)r1uP`k?YzmcuxnZpc;&53^5--fTI@uHQQ3C6!ltxBgHT$1)Yn6J7a9|h za(D>_4W#5(R 36?OGc)Uy?KFT9F_i Q(xV{O-ttpVYb%YRPUmS*5j~N zqwP{#Rs$^BuB@$$#P;^3XAW@r^?OtMKS~~q#F^f+>pn$17(F?Zs)4Ic1BW)?#=a?H z5~meR|DLRvH2wy9W2ZUgEBBwT2^zWtX}ytkuv*OW&LeDbE^0fha}_zAL#vkY0Fw?$ zsrCL&d+z3Z`t}87dr2eN!nk)Qe)qSZOTElK%wSnr)n?gfUy89-{=sTbkBsV&N+B)V zvjztOQjukLI9C`VEf{hFnup&vlfgV0%@-LcQ~b11cVm!^ sfp}3lt0qr+ct+r+~ za#ViDS=hG@G5oNoT+lpa=2wKbu$iXv5$OVCHEaj^gsv P ?)revGCgYtQm=tL6^_I+pXNHDY2O?Br*fY5i} zo#aj<10kF&1)m6eVGOE$Xr>RD!^{V}N%cz(U*pcc=MWBvl!97+Yw--7L^t6L^qUl5 zIH-Hl$wLdqk}Ep!7~->b9n61la+R!ADa6giP58oR7yQH*UaQ7ZX~ell+}tWmqE={4 zW!`V*pcvb`g=OfVJw#VCth=xZtt2_QB=^7>n3heYDnpPp-oj)uSS_Fvr1CtO*I&ba zRs-`;yhCL@p@|W;IyNU}2T}k9j3JdgW?M&ovr&$p3X?2LK+Qgdsh&-k1E~(siRP*# zxRw?i!si(e8Z>wQvvGVZYbAGIdj Qw<@?W~5<*^F8zaDWB&Y9O@%fXeU= z%E7QJxanOb{JI>-KrY)v_V*cI_ FP7S@2t*Sap)pms0e<| ;HyJ;7zf zxhE|INg^6Bx 4tyXX_Y^BT^dztSqCmUM1Z8>!LN zBePn6R!S&=RWi2c6I<9%n-_%EthAV%tpU2j;3zpl5&XfdmZ3W+Uh}(UUSVviUOo&o zjc)C~{0jI=-TtHmueoJiS13ZLyFbF*i0Ux5p}lPXs-5!!Hj8mku#(9{K8M{8VioiB zoo{-ImaQ5^m83Nw)!)-Jz98(WoL9+ywEOBSxSEf=x_Y_P-v~birGnCGRqJzf d(jhH|jS5Z;jA#@aQVqLQz-m-R zSI0y|^=lJ4Ge{M?se_WHhh>neWnjXYJFlm{G$u309m#-xGr3t()lH|3G`vG6f_)u} zHmNfy*jq5BwdJdAR{lk;gQ<#e&482?ku@3lm=`AGl?tzE`IDlpM^*-=^sU`6LVPVM zK^E3dU1i%91o>B`c**(KUZkS10;cb@ommK7IQeg5c@i%@dm8`d*PcqlwtEKW;4-gj zb8Fk3q}!4>X0Y0KY9Inf&{CE^#ZO5L6~nGfleX>%j=6B_t?KtNS*t?9r_spq(gp0j z@GMrZyqo}cueL~HO;cr8tzY#!R};!;W*sG3m3bwr{jo49wL|qrY?&|RY(}w4*FV)a zY(N`6IFO>cBqwnE=64p9d?S$e9Q~CI@A63Ch1YQD#piHv{^g|dU(KtSYu-@>U#Cip zVy6;t$oH#KzI&Hm$K{t^D4;jyvjE#3zNNV>@*$=ht(+xKtzp+HC~1>2RSReiV_dbx z*-hnxH2!8r(6&?ob(ME0mB!GnTy7bp^jLSQom>v*`4{)`#OH5H8pNA2OKwwbYr=g8 zE^^b7>Pi}c9jR+*)iJ|06<14`!3O3KPuQG5Tocd %&3ZkfvGyz|o3 zLyO!|y^;iG7i G-{-kv zxv^(emPbD(*d(eocFAj?x6>MHUwGOgHJ?C0<8aG|xP^_fF^mNP3Q|_$tl_b^Z5@Uf zK{G&I*-J+6^RHsq+$i(B@?PsjJwtQLb?cj~Qmyt9b54HtuU;*7s4~ZHtiUdlMTtF! zuBqXcK4G&pY;r|d8@c%qa2cxItVv0psW0}6{BA$9J~zitO1myATDpc!D#0(mvX9UH z;T8|$0|`s>`c{es=Z#-FT 4Dg-+63OZTxEgH;XZuwcm5bBPCSG6eA~U{=p_M>MO$Z=zFqgB)`YoEvny z-zbz@Al^_?+DxJPl601)Tm^h&SCSHGXo^7H@^{oOaO4VDI#DsJZ3h>zx^htw8#0e3 z{T__fI9uAHZsk3|j+^N~hP*&vEkIeZ&b{OAg9oY3hcpBSUVa{nzbC0~$&U}u0hGik z4T)ugy;4>Q;Kxf~tQtTyDaiL35c1^7v4QzYPQsC$J<$dmYQ2=A$!@7G!}8mUz_&q? z^uRg-kTPhSjXqlA=PI!WqnK+Y|0oHOQ WJ@YoTBGb1L9PJ^ zK$3NWtU{!*AR-o{PM*{!^*IYr>|M#D2cynyV=XZSwIat5{1n*gi_zkg4ouZNZVgC= zO2;y*9Bs3|w*PQpSIS-;n35~&Qc|fsU^qzc7YY=zR?M3R>WueQxgT0t8N)9 W z_SDiIb!#G7!qgW v5VWMqzy=jLZ!QC?#I+38c+o(KT^>|{(5wrnDV%AM$@S#&^6Pl@=n1PM>1^9( zg~o2&h=4L9J2eI&ct)>^d65tbsmXVMLw?s;jW@QXKnF@8G>~fTQ;dePp lkZnn)OM#~1YMpJ@@Bm`Ly z>V`iI9SoH%a+@!;Zng@s0%fgTYR|rox$i| e4p)5iw#8pW~uMCdnidK$JpJ?9qdj8 z&xV_=ssw0i0;!S7A@)n6X1V%Tb|iAwgH|hU!wBbH`$kPbs9aGo;KEXdM$TObv;~#Q z>D= e1){Stc>Yb}IGK*i? 0O?bSwk$0eQlEY{Pv5T1Sd zg_N{AvEZE=C7Il}Tne)xpexD&vJbjt*%1=*0OKwXG(JQJU|k8Kk-Jt+WF9*Jlui1e z*wq}q_7bqXbh*u=(pI8Eu7p7&t@a=4>`FCEiiu_aUQ{(|h>R#}qa|EbzK#~M13(%H zQ#R%bPC&iRIOb%id=0nX^E%%4j y|k};Y5H^S5@)<~vx4on*YN7o!ZhCv(=`q0%)a&6(r4IzfjF>b|h7nTnH zxA^>|Q|1^+0IxYFre)af)wz2Ijmo}{tSoDE048BY(Bw%`u()9 %8 zp>)J=LnmReEMm^myAIMdwYbP_7D}k*06~#Tk#4_z6EB=Oj~AbPfj1WSqRP2xTrGyM zbEg$l0|LvdF)%C3FbYqk8^_w|_bx M<-am*cg|9R-I8k7ACyN zYI`;fjLp8-fmLlU)Rk+!hE_#7K@^rQQSn7!%95SsMjP;H6CWr~y%})-{lM1IbF{y@ zr2S^|O1?G7J-Nacd1M$6AsW){Uv{QgAuzy1&V3O&ERONZz1X8;Q&ah;HZ3U+VE@EV z&}(9TIme=t)>zmF-gS W*n1NrfKDnxJjJKA_K-SrnV>qX)utA!plBg4jd`~nVRQYe4L)p z+&1@qGHm%Wdd3PX6*iv% BTpUAkUOMk&R9C>>S+XZ0clH)`kS^CF{ Yo5$jR%+YgT5oU* z-L=_~W7AshzA7ES`8tvGlv(K`bZMWfpL|tj<(EBCSxbJ`9SdykJeP>w6`v^CNk}_% zxODm#U6Oou$}f8`sUIftFIW*H^7G>%4Pq+(6kaww4Dw%A&WMfcH8>Bg&(q&_u_oL` z1bpT!zD6k(aL7Q=3v!n__8Ds7>DnScF-?1oKG))p^T5o&2dj&?``!V!oIci$f+E*= zL_o+1Li612gRP~e#(Kc^S9?zgW}s0uMclvw qNc&t=fV9V9BJm=x3slN zBIjP0ql_HNR)JeF&X GlRhiL4}B|j9Wj26mN z1`65i<7zS$F-M>%Y1xiZt?&s!%9bKURHbwVFhU0uX~nN5f?=?OKC8Z_s$Xey60Qe7 zpC(P1*sDlE%OWeaG*WI<2Y4B0?mAK?c=`r2@)&9_%!SjRnnc-(Bjf=_<%M