summaryrefslogtreecommitdiffstats
path: root/src/packet_crypt.c
blob: 50b818933291ab2a3bf949ca7f1c425128eac29d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
/*
 * crypt.c - blowfish-cbc code
 *
 * This file is part of the SSH Library
 *
 * Copyright (c) 2003 by Aris Adamantiadis
 *
 * The SSH Library is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation; either version 2.1 of the License, or (at your
 * option) any later version.
 *
 * The SSH Library is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
 * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
 * License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with the SSH Library; see the file COPYING.  If not, write to
 * the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
 * MA 02111-1307, USA.
 */

#include "config.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

#ifndef _WIN32
#include <netinet/in.h>
#include <arpa/inet.h>
#endif

#ifdef OPENSSL_CRYPTO
#include <openssl/blowfish.h>
#include <openssl/evp.h>
#include <openssl/hmac.h>
#endif

#include "libssh/priv.h"
#include "libssh/session.h"
#include "libssh/wrapper.h"
#include "libssh/crypto.h"
#include "libssh/buffer.h"

uint32_t packet_decrypt_len(ssh_session session, char *crypted){
  uint32_t decrypted;

  if (session->current_crypto) {
    if (packet_decrypt(session, crypted,
          session->current_crypto->in_cipher->blocksize) < 0) {
      return 0;
    }
  }
  memcpy(&decrypted,crypted,sizeof(decrypted));
  return ntohl(decrypted);
}

int packet_decrypt(ssh_session session, void *data,uint32_t len) {
  struct ssh_cipher_struct *crypto = session->current_crypto->in_cipher;
  char *out = NULL;
  if(len % session->current_crypto->in_cipher->blocksize != 0){
    ssh_set_error(session, SSH_FATAL, "Cryptographic functions must be set on at least one blocksize (received %d)",len);
    return SSH_ERROR;
  }
  out = malloc(len);
  if (out == NULL) {
    return -1;
  }

  if (crypto->set_decrypt_key(crypto, session->current_crypto->decryptkey,
        session->current_crypto->decryptIV) < 0) {
    SAFE_FREE(out);
    return -1;
  }
  crypto->cbc_decrypt(crypto,data,out,len);

  memcpy(data,out,len);
  memset(out,0,len);

  SAFE_FREE(out);
  return 0;
}

unsigned char *packet_encrypt(ssh_session session, void *data, uint32_t len) {
  struct ssh_cipher_struct *crypto = NULL;
  HMACCTX ctx = NULL;
  char *out = NULL;
  unsigned int finallen;
  uint32_t seq;

  if (!session->current_crypto) {
    return NULL; /* nothing to do here */
  }
  if(len % session->current_crypto->in_cipher->blocksize != 0){
      ssh_set_error(session, SSH_FATAL, "Cryptographic functions must be set on at least one blocksize (received %d)",len);
      return NULL;
  }
  out = malloc(len);
  if (out == NULL) {
    return NULL;
  }

  seq = ntohl(session->send_seq);
  crypto = session->current_crypto->out_cipher;

  if (crypto->set_encrypt_key(crypto, session->current_crypto->encryptkey,
      session->current_crypto->encryptIV) < 0) {
    SAFE_FREE(out);
    return NULL;
  }

  if (session->version == 2) {
    ctx = hmac_init(session->current_crypto->encryptMAC,20,SSH_HMAC_SHA1);
    if (ctx == NULL) {
      SAFE_FREE(out);
      return NULL;
    }
    hmac_update(ctx,(unsigned char *)&seq,sizeof(uint32_t));
    hmac_update(ctx,data,len);
    hmac_final(ctx,session->current_crypto->hmacbuf,&finallen);
#ifdef DEBUG_CRYPTO
    ssh_print_hexa("mac: ",data,len);
    if (finallen != 20) {
      printf("Final len is %d\n",finallen);
    }
    ssh_print_hexa("Packet hmac", session->current_crypto->hmacbuf, 20);
#endif
  }

  crypto->cbc_encrypt(crypto, data, out, len);

  memcpy(data, out, len);
  memset(out, 0, len);
  SAFE_FREE(out);

  if (session->version == 2) {
    return session->current_crypto->hmacbuf;
  }

  return NULL;
}

/**
 * @internal
 *
 * @brief Verify the hmac of a packet
 *
 * @param  session      The session to use.
 * @param  buffer       The buffer to verify the hmac from.
 * @param  mac          The mac to compare with the hmac.
 *
 * @return              0 if hmac and mac are equal, < 0 if not or an error
 *                      occurred.
 */
int packet_hmac_verify(ssh_session session, ssh_buffer buffer,
    unsigned char *mac) {
  unsigned char hmacbuf[EVP_MAX_MD_SIZE] = {0};
  HMACCTX ctx;
  unsigned int len;
  uint32_t seq;

  ctx = hmac_init(session->current_crypto->decryptMAC, 20, SSH_HMAC_SHA1);
  if (ctx == NULL) {
    return -1;
  }

  seq = htonl(session->recv_seq);

  hmac_update(ctx, (unsigned char *) &seq, sizeof(uint32_t));
  hmac_update(ctx, buffer_get_rest(buffer), buffer_get_rest_len(buffer));
  hmac_final(ctx, hmacbuf, &len);

#ifdef DEBUG_CRYPTO
  ssh_print_hexa("received mac",mac,len);
  ssh_print_hexa("Computed mac",hmacbuf,len);
  ssh_print_hexa("seq",(unsigned char *)&seq,sizeof(uint32_t));
#endif
  if (memcmp(mac, hmacbuf, len) == 0) {
    return 0;
  }

  return -1;
}

/* vim: set ts=2 sw=2 et cindent: */
tmQ:y<])&]S5=4̨zĈ|HSD72V.)J=w |.El 0^tKngB19t |[!=_+&S\exd^>J-E|6ڜWa/ Rʾ-n2+ܽJK*#x,.k?v A~i 7iB~#g*ٸ/'ЬY uM'H>|͆aqs0ft]¯E\}*G=o~]Pxa| ){o .& hS2-vY*ʺpȕ~|B5"Y?AkB 7+CR |`Us#;OJ$y?ȶYFKKp~T"TAD5O8evd)7Y+5]P<>-hhBq!M:Um }$YL~hBb:R;焩 Y,c O }׌Hnh` T4^Z9O^xlhƘeڒPV X@ra qULSt[MR׺/kgqd쫙Hufh0b}gEPWP6P7(6~Ij̳zY{'2V:8-z,Έ\2>Lp;5]uieJ,ľ6/vnAK VPK]ؕfxFP OK8reR$x<"ogwM x?Ѽ/^洫~>):ĕaR }XSVLlsk5 e6V;jAK`RRL; Gd|L1EZsp6͎<f Mhħ]ؕs.tj9=6{"b6T63lG(prqeX ^*S ]wW [۵FYDIHQ쾫JBZ *kºԁ =|^?Xِ88.<2Տ7fjbݜ攺='@/rNtԻA1gϔN:klyh1*^-ηyA,Pb/r8 "'B;8 XC,1xgR_22ZzÔ-d{OKS,bdyU!~7|~\u?<OuS(VnsU)%_QX(QCSl q6k ^{lSM\o X6:̀bJY1ё93hj{tԞ];*0wl9ppL4yqZǠXz'"4 JQ ATaL͔BҺhP7LKJqlaΙ]t/9^LwEF3nK%Zć[H(J" _ oa`@Y,b]x h_j/PNiM(Hݢ# N$+kZ`2h)T~#^O]Fm\?_&'IJDUt3Za/e~)Q^9G*Z{g:"*]C-Z}إoXPhjh(i*#EȱE~覎aة3YÞqjz4汉 ע+FC꿥5fbH4ǜt;_/?0LSWရ`+Y-v3#:2q洱d&^r.%i ׿&|UtL9nykVcv20ԟz^E_d-SUhK>rUȪq 0s.0)Qj*W0G,'H?:~;HpQoFG|vh4< ݨ|6JIb(:O<&)y"lX5GLcTeY{WՏ)o{yVJA[ȗ/s2Q2_THS Rj0~ͱ,1i˱# }$> u?SzeHvvܵm%DXwTί„_H"K"q_ 8')*N;CJمA~*8SacJjG}ʃ|Jv$K)Ȟn)w~BWάc_*Ti^-cm`!ivJxvZ=*8ɪˆ@VNz At pɭ}jF}Wnr#A^ro\Cn[i(70v[a|XsddGqa!3}P=\Qo~ 9JrpA,e AӼ/)5ΓÂY\X͢{)}Pu\ &ʜĒ}+4(P V,F4:9߂(-:>N+, OI]! 9GĢU8莨ذH-Ozi{;%%Ąfbdp[M e.YDJLاmr@=\7gP|vmAe>$u|bzi %8 ݸmB,̢c֔M&"ԝ6^DsW&M`kli1i  .1Iw.2*IAM@tV;ބcfPW >2X\,? " Biy(R.[EDw\;r8 &ܙga XK<|ϏY/w SoKɣ Ry_ (f`(>9MU7@;X%'y=V lqRnncul5QEe&T;ԝ cKʸMB2/xI.]E3nAOԻ ,]N`HFO@8 *^wYMbm=[-/+֠yΤ?R/zbu)2e)]h~gm7C -6A-9HN 9Hԟx\ hu;X(T|e_gMv". uZs_A0|AM kʅ4} e떑*fS!Vz:ۤMr͖Sc1K;w黑*~?r uAC0?FD?tЃg|/:kMP޺v뼝@Tu[$\@AdٺZlM>qE| s%װiXHa9~VFƔ%`o>mFz9LG9Bz9޼M<'N2r8?"X ihl )/*kU#iELw' cT$"4AYWd/6sq|kW7U{ٚ/BPP9j൧圤50'75ڊ޳Nr-M;55RW;Li({{~'gnh=3ep;JڷLJavv"X|./Mt7ODm7|.".?j \9ݽן0ms 78iaNz Q^cSz Ow-&xTcr0ɽ;">Y`X/n)Nsy=| YV[-oSf#G9[u1+(`Dҥ/ęKya N#LÈ?D%LYםŜ:w!Qamܑ9ǘ݊UA$T)Kz|1wxh=TiOq"ZDœ /V@FcBwEPCj|ǚTWZn'8LG[ 5OSJcI6 &U P %  ,1Pȅ 'Ǡx+\yBRϽW6NLA+VIr> S1ۉ@\#cP) gus|,--,MN3OqD=-?;z^含aj}H(z3gD" = j]U&×LAܥ?[ySdL쮕SêԠ(૭WE +ݛ&6,/q&m>^t %ȷUr1>26k9D?`~kVeAw}:a\q(k>-ЉDod5=-]]DL&K ǯXOߌMHr&@!s' 8Spl8b)M{/=MMcmyxI~@gf24s;84i6`ŐT:>+43>n)9tſ}>góhpbF}{:x0#,V߇GqXF))ƚg^ɧ1oJ*}tSr|k`\hQޯ9Q5Kh >eҕD 8tE%r2bd2Pe ibDL;~U^NZz [= b!BffޭБU`TP^vϻ"딻m$Ké~H?ְo}h+'t;wO0 (s>l@\.^jDXCf*ܩ2;ﷻ ?ČM&,pBo랭.y{pHeg=}Ė_ Թ'z5LWgs^nߛ¡F|LbX25S™<æ Qv pDq2̜Ȩ0eecҔo\A3ΊFnSnllHd,wI2C2>Mգ~9kzIv?b`~(6cBb޲ Y fO-Ϭ$.mb3)% t+^ԫV3/R=i!U v]ǹZ%4Okhb9eER­/VYWtǨ3TQ4|W&BCJo [!&W)9KCWx8KENgT%+kk5!{ns 3QtZvQRٵjLqe⒮6ѽLڄ_k ܙC,j8cXkƾ6z3bkݖ:Nj# W-,;(ז Jnk4f0[nLv[ )73^ B} \q,,4ڻk& AN\$eA;ɒaܸϚ nGi榣iend™Eр"vFr*Rm6`QJOB&<4WT8\,{"sc``'bݥnNJAeyRv2ȉgt|fbɮi־4&\8aB4-cґռY~VZu^?ka8C2{gH'yU_pȹ2_QCP Bit^ʶ% ծ2+5(m~EbZ.>_OJH9W@|*;aKr1mpM23in Ym $V`䀢ER͗HMjϽ^",U:m.%߾yh(6~Y ֹ.RIl-A}T11)Qa-qgcQBS[ܳ(?KK0B,'f}>T)ّ |OD49tW0g~G!bhݸ)iR',88_w;:O\;>}I;~NX!<~ӣVȞ` ߒmA1(k,zFXڑuEZlDy87oXhs/G3(d\zwx!p R$@3wW+7Q$IDB+akZC"QoVF\b2vu; 8F>6>K٥ jO?YjP,OJ_svu ϊ N]:.lEP)(sȪQ+d+ 3GG܃Zv3#A~1T/٢u '2x"=eչL *TGޤy`}tO^p˝(gѭ:K庌P!C$X#'/gY Ϋ 5p3bc~FQ{%ZB7TM^p[2#&0FQ$XeeAӂ4wl|"W~ ""Sa]ĸdԹ])46xstCR1?׮U&h;iyh5 AeB0Fuk]`1Pf˲p MM`Kb؍VDl;)I}sN/»e 6^ Aōnkيfo5?0+ xA9e T?0jzO wntMz1Z/=iJnf>RasA=OpW)SԭA3`6WZDjZ8A8Vz"|LeHO2aqKm㋲j:.dyB7^_„Br3nݗI2GVǫ?{M w 8M(NditZyxoro!&?` -\"&>{%pwO U?'LJ~dtD!{vp07J&CɣSfrUQ G)xbLlx laf=| !\SħfQ?51=a[p!s8yLrrUaoL)U{>g,/uMl6:QYnJG.;ɢ_t0#d&`hc1Ia ZkX ?w7ӒPx]kYKӍ&2J^Lx.eo~8MG Efp%>F~!@Hh~Zn0n[V"jOҫP󌳱>Ё[8H)y>KO5wxf(Gm'3"X)@y>qMh2̧Qjd4HD56s)`qVjҙ䎾_ oFa p poM51\\JD6@†uvsoφYyL߾j _cq˷iljBd s0hSL|U6Qaf"\5&ҸYû  _,fO&th:c%\6F+jj>\ĪN? _h}dOCC6;&{Ұ]G̽?9&4Eq0ʠM 6ʶeҔPﮪDp=gfKnŨ@!L}`3ahiH}?Q_ n7d붫$Orzc@c,ۧWV+\VG."Or5xȶ'<EĦmh^w6?>[.T8UjjK!)K5g TYltH}Kޞjfxz+ZdJQ#<5zK2:0!E-6Ne}m19;)1 Ѥk4 ^೫/M81t<v,\j[Mr!6`) jJ2+}oA7NM$[E55К?t픸V +R;@:Z PBt^{-hcfQ4rn#j|)gNE<^D"n z3dM7#  UЗ^q"۸NvoѠeGc7 .Gq_JDMzLTUtg^gya{})nH!ÈO*IxJë14`DoYQ aSy5V'hTYRFbޮpQ aTn8[e࢔OB([4̲+A-V(Ft-f1s3Ccj j `w@VP-i6};kzT(3_x qP@ BȚS#M"…pIfdꣁ,cOH CxJ=?˂TT9 v|-c2zٻȊqw 傞1$ذ[9%14Fp&,Դ}+θA,RRl {f{̲2rxE)?-ڠMtkEmovз6o䗈3{88[zEvpNC/3s< K5S$&J5ȣJ|i?aX+JkW'H;+83Kq07=扑*@S Q?@n4+4oژ;b8C(␷-UĄC`EQm HӬֽq/]*Z1l"Vmu3Ny2&E|t%ۉO҈:O8GimO @ o P'r,Ma REE6WvpBV,iSO;m!l9Z.guGPًrzyemv'ݐj0Rkl9&n 2mZ]bN˲p&=ZQ5~@?.l d|']AcP$Jwz#%:2Iϙw2+>Vu֥\d5N`/oz F1m0U̼ΛTJma[o mcQUWR^5줯Co/+]l#5 Z6BfET8b+9>e{gZ+LQ:4UA%x 5t4 1 ?тȘ0&Ӿ+ݔ{چ>^Gdܪǿ{I1ɩچƊF d-T)q=;YƈX[t mTCv3_(*>5URLgr\SC-۵0*J5vd]q`ߛgAUDbR|w[TppΕϧi,Z,]i̫ jC k`2"dDIl85-.hȣ+T﷞OeIh'\և_}]IA (ɠeFPRLMC1:}7^#ek"ʁ!ތb†[S'My옆] 6_>0nF(gAl+T<ܪ'4igc5i4^d[mCe*Ɨ+J2$ o.SiXWQ!-1f||'gOTnq K3v 4Cc:f8<$GiPZsX'24^*HB|YJDr':UٮA%%OGނc?/*_C -n]S9 UAğ&ii |k8a}e'5 AIHiV˿P+gž^CwejcF0e;۳fc5r:T |쩝Z[汀PΜ06IW*>y?Ц۳F_W%biR 1,v_ 2v"'b1 j:ܠ& iFʅUgIPx*\ݼR)f(uš=NcGTET*s$feUuZPf8(>Z& w6NVD|Ƴ]K` %5 D_$A\4&G5@{&8@*j&S9u$%(lQ##^ j_L\i_GkvȀ߀Z-+-m&}ogu0·%-91\O{iFu9U @Š%#uひY8Y'SuPq+Wu hZ܉{x{Rg(1l$]0wR7.L7kdq.ޛZԶ8B8+eyCn ?PxWq WEPGŠad|]i@HQ„?!BH66,H e`GjФjr)w0ú1[,;2P?՟PYCX2(- fB'7-ضsI=My k?9C!9Klo( ycK;eDJu#@ 08xXoeE_u w.rG<neߊsmW'+.Ϝ߽Dir't<Kc.s?ojF}8Q22PTFXnGmY a]L?6ul $ܩ3匀-0)To$U1ʦ#Vδ=KEW,uȔSlMYS(9d C\:vFhuTFr BVp -5li{T*^TZ|ԓ6-6ZEZ-3ޯsd W ԪS5U JF]nwtB>xDo&A-7V.WwH o<3l!bkJS @e^߮K4B<5h\ԐrnVsƪX^L$)yp.$_'~35Gg<1OFvs?Py9Q|a"7C/P|HccmE|P3﬜ī,7PԌ#%áeTG`)[y1*wACڇ/2^1E(G2X^w6[S ;[Zph:Ú 3 >ԭf mH9!!8D|Y|>)bvsGr%Ǘ-%w*=h-I"].T,t•ƅG:K4A1= 5mDw9oଞ'رqH8݂N&]01$ /I嚓EYD"`ʎaAmS|g(~<@O-) *eKzr-F=qPџf'O4yD{^h?= x#NA术aPi .D/(>$JrhtjdWe]gq%0l!rз g!(@nSl4EvTFaF nã4?aD uÄ&qk9x ѦtJT,jy4  p$|~bQŸ^R2̰Vă,2AYp\t_I<.mf5eQb+tɤiyj(a0ًV,7v8 !tQI2I3L4W@4aB迲&=`N !8>861#n*W,YN e%'P}j}VˮQ?\A1{DWb54\5ʅ+ ^~^Ѭ˜7-rX7~5HMKNĤSQ'bVO9Mù8Y2#i}b¼<2ndC JJP9c=ڕq@z..^do~<`]nԦ`}luER&7JI}H]Z7}Mrep-j/|uZSK[s"% 3\էlQhGa$‰F+ .h$(˴2}\`%]RL {ݻDe$ opw6mسMaB9xש4F:*6$r?]BT(nSq\ȼ%DsK=-/(nu|@IPwSx'K6ST ^ϋz(hwXx"* ߠD~):l>L|S'S|wjaju6poeJD+pMR^l\|l:)Wzf<73Ez8\ H\ :ywd >چכq3=@)yqɞ!S J$IgE67<%jE[R߰͡=0cK{Y(Q܆(M=Qi^-u\V)h#X='y ݨyjǼG>&p,ŀ&$pp&}t:n?8P$\.m⢓oBy >!NA$x-oW8.컱|iڿ?+2&➻s|ٛ˪n\H*^li I-߿aQN?G0"ODAkşd˯2)¹ ~EyQCC<~$^|7XBnZ;& <=y$'ţ 3u6RV~C:alJ C E9"QQ)W!cjI`S4 WX+9!gK :ctB=,%nQ`tXӭM>/oDUBRvf,Ә)Qh)DG)(E60"@.Û ?|rc!1X6ZC«TNƮ/B27`П.S 'TohళZ\ F B֜n=iBm\2&U#RcOCa*^ AQx%τx xu4? iEV8䓤 jB,[偔Ta]5JNLG(lT KHl~m!ںqظRqI񳁵MCRy_z:Y%vǙ[aVuJӞ,IHL*:4 x`?&jׅ|\vh _je7S? |,p7SI)վj,b/ ʥ1B < ,$:"M{M,uC,e~# \I)DzBoxo33j꿚Ӧ!J _kWprQC$KEⰤG*+E^?zyRAS~_9` q?J, Rxt1}׏`!I}T7Oۘk鵛y<Ϯ&}urK4+joKc&&CV8с9u«̕΋F%(ރ㯩jDoLE{9?bdccFK4YCVzAr1XDZ쎪3!*챔CC $D`NZr.!UBRLZ., ʁ%dH, 0ރf{rr%v;dyb'5 MArA* u Sm_^3 0ʽ5.4w1i"\[WζBH;zYћ.[:ܢ\H{7&}m@or2ߗ?E[) "I(kk / V*2ׇd"*w\8gL ug~(+̢ajY7" ļmY̨D'jQI5옒 k=)79$S|[8[Av)Ѝlk˸{+'C `F'HIpǓIܝZ>dt:pT3l$T AY:IgNڧǸ!Iai\ƫ8"n . dv( ,"B{ŔG.^.(by]\, 2L "sw]o1p[жfb8$}?r6V2:5 !nmi W,ygD!kr oY#y):qab%Fw[S'`^E*A4TY·R~1sc!L::p!%ES CU_Fb0\D$f mO&(F^1aVTf.ϯD]K-E H&8.'n%=B+WMaqsEEjrHZ0;ɲrC("N?uib B#82nuچ|m 1ǿ[e;N+qgE{'XbzVa{.fo׻'5  %؈Ku;T2S"-@3\Uaϝ|ASm&2 KuymhݷsaF<7~E?>^F 32<\?˪6qN5i_P3%oX#P?}34V`).{(ѻFE^hQ dXP+v8;w}ܵ)0~')')9n\:HA<=`S`i7ZtZ%cN[v+e6zqە9E =ZA L34r-R{K6dOɸ"&Mܼ@j XcdJD5da?7ZmSS[C_6NT-ʛ1#yU]Qg¸skZx;:1\m  ],V;t|SrI 4K×{BӰ 0a?HC{ԅT6\ћT8ír m(d1m, P$|xbD)BymiZ%@RN!y/)lE^jjQ <}8vṕ9Tɗ܈›$i31* fĽ/yZ_6LZJ[[|HA77CzO)R%&l x4 f~uIA2Z1 z}ĕ$URW3B,W+]TQ'&NSEKPnԱЭ1i{|!1,A 5[t=#aD 9861ccyޤM!s-՛Yp¹y]N)|"es+KcO^7x%/hTr{P b)tϺ}Eto&f<9\JMw펇orxmsCO"/2L/dCQmQ&T>JK‚hN,< .|jSSүmCveSoS%sH"'a&9AN)Nq6@[ 6!ҷS1YչJU#SIr3Wp  {l@\y^>0懾'\ |ͤduA & ysIPLD KI'eYoi(cnJP^3X6f4`[x=^CGY_FǃK5g?Ux|m1CH E΂3 =FFn^eE6uv'`QKD=]n$٫A.Q*AJ b|e \PŚb5|ugDr=][LbMG\KFhsu(6>a-cX2B˦5&_}d <6 s ]`;$ /dQ@?M)z\.=PJgޱ"H~5_n̤9xPadYINmaK[ c>C1 _Ie#I57a,G7x¬G%4krcb߰  F)M f$gʼnvgzF6,H.bR h  /~`fRtj oi(Jd8&k]n621%i[5HfkA}#PtgÆk E NHǔI۟/ *M쎥o-̶~JUooŚYzv(r (2×AN &Q. mC' qE#\_am9=Zu++uٞaroG<BQCU9(al}6/VQSPf TpJ҇s:+ NF nmyĈ7r:>y:!#/ޯt'9QR1~kᮘ )@II,(faQE!,ewDY$LzG ͍*123cH³DBqp!i22؝ɭS07?E[)-XL莀r+/Ɓ;d9` ǣ!AфjN/QUV(4uG3f\13mXS@Jk/[m$é[SIl0E™RH .<帡bn:.JC"||u BbYBf`t{+G5edn2{E 4+X*v\?>vs熮(`) Èt=qB-%~u#DVe:5:I ;:;T'~f2 \gE,G?A\v؂p:KX 1rW§\%F(uEqqx7Ku2:zұq"q:3 @|w)kd%ёctU ~G/V}$RFyJx]R.%C@Jdv~AAڠE7µ 2VAMcOh`.4e-("}O/Nki s9}|iNXlq$tm ȅ=85z4fe9İ9H&[BkwA_Viu%0ս v(3I1&=U)*V[=h_Qj!]"9]UOKᵐACNv+ x m32X|w,%p 8YGV >3ъLl|E!xy $duCX֯ٲPS% )@C!yg‹;գ5Y`e--w9(II#une&M>I0a]0л]# %>\5ZߣKZ ;OLLf%Oߝ.f[&W]Os0RAx?wuX[f/!p<@&R 2a Vc q.L ZN'BuvwMgQYGP&P*E_DƋ>Bb)˨ Q ~u){:W+rPUVR*<H\߿d{6BM5r Dn?kkVXb˰)'`o~}T<϶:7K8 +v4t/q&WLP"sH>j[ dhh$d9 gD 9mݣgUkZ{ S}]H–󴪢w9d]"(,7Q 4 B"W洵+x0g’"m]@@'j0F&D( aȻ"X;T2g{˖Oް嵉K7  g=L?6T.)U 6Q-v"uھT dA n -ə|n=,m} ^{'rVLJx$tcOplpK-nmc7Jem"5AN͝q ,Ưog#WY=.f)RZl0/B;~Ƴߵd:>CKf]'JɧBkN uc2酹yљ"?ZgwB{ݷQ);8DHtF ]Yt"+^c/B.K֩›Jڬ[T [liѕ3')>E&hZ2 n|!`N,mYЫJanȐh[s@ޫwKS# 5mђ{~/kǞk Tq_/ì?g !! v]!" F?Zd]fy肽PH]_؊<ḍ&t!A^X0g_yAρ*EYOjD#$TGpIX#KIz"ys3hgޓ,'m7=%w&fb?BF6.MW'ςʏ9tlgTC=* t7!@stͷz` =iYOJT!:봨+[(ѻ"cK m~x!Ek;L$1Cޜ\ !jǧkqٹ<{?l4a6I4Az%',e^zl\}l]C4|Vի )me܋fbqeAfObҭEXN0İjYXu;,5@ )+S1@s% )P czF0kGlHoRs_;5u>E?h0$bh5aϟuլ0|wkFDѭFpjW!xkqaBB}"NfdYRoaЯ )Hfo.c1cbn0 CmThznץ tME5ZȾr'2TUTE~y"~'*9HMFnVlB˃chȭ&hJˀ'3Q'-OH8\\vĄ᤿Gt$k!|peZ:y y%3>ο:_YhYO݃Dd=pucWҠDNui 7afyY$z!IsBh#13\t+kxWm@l3khpq] Ϋů-17\1qVh¿ġݿ.&nRw+( ]K Yڿ~o!"*c U9]DDJLQDfJ%cQ/Y럘3@x+D#7iv$԰3t)dTC;W G TQ0ԛ? KLZ?S{ozmkjdiU~ 2Wgmx]P!侲+Ph%e9/B<3z(M{rՂVza[3.D0zrko֟4gT zâ$gA+Aܰ^ѷ햮#4;7tF0r;R%*`*SBb- iAIF5:a~+_쭝8z0r\[ 9bE㪻@/됾DCNqaQl.Y1c:k|qѳ6Kt2[XWc$,k9y,U~L܂C2=ffGhok,W]4{_3eX F'ABJqeie@fohsm |3[ngƠ9^3OX]) c ٔς#6Ų ܰ& at>Y曱)P2^#UI3}de5kG % # qo#, ]@5$&\lfm? s$Liys㪽g+cxAbT^mjT}%|^`Hr*ϡg, (8MkgÞ3FBGx Bw̄h'_=N6G"j֠oL&PBtX)Ie >dЯ\nxԌG8VD~S2-w?S^mlgR^~Y0Ohɣi#+k" 2 v?Am s/[emQ҂z۱XU ,+΅>zvLzhiK'Q)ͲPݵ&l(\-[oKe3t5s/=#}0!*2ށsL JJn0[MiX\u3yDTQ0l:t $ cp ڹut1a`;U?i\VĎ˸8QY 2\8RrAe=-b\kG ~8Fy;@$氧3{$JFx3Ģq>$k?U AVzd|֐VO vI㡖k5S7D$6X 'zn"Ҹ9X tCTO$k}=l }۫0dU%b\ҕɱRܞ>AH5bfe`nS#`RSٓTᚎc42SrkUj8]5QymEҕ#0nOh @?hN2_ ,ucNlcl&¸ՂD-'̧"tJ;'l5{Jp5Ӹשli"o1oekp3 Hqt˼'ŒG6mF>~o6f+iU*rഷ"9/PУh _YI2 ߶D"<&5b]OzD _]CnS ssjve:BvQO_6Α˯}1GaxQfQ5ݍ>+@p4f>m2Mß+N,FZ}eAi5XfblnAacKWjvmsſirY#:c'[52V+geU:NyʾDK+`vo]rڄ$)S+`K<6N/riyH :&ƕN9 42sðBi,6S^ȼtd}Eg-iTjr֐6=T.ijWFp9^~ meA*YMU|xyb[bݼ=h@z5&>y /VF߳mDPRrzzrHCqR Yʯ6d#<`6OEaI"ϷYv!Ăvt}opwvvZC|{ݬ'$qZ!Urϱ +mpjpN@4M1:= 3$}u8>zyqL Ge^\@eC{\ㆤ!cQw%EH{?V2ázw.bZ[%/Ox ]`9Yې,VamANPyˆ?k6z %BPg&UJ.\IPkqEq+LCN\B;)QćO:έmm4g+C+}19Iֶt\Q|V#④u?T 紑bl8}@e)ߖ*a.Ld=㕐QKpD97l2H âZ3l?B'H\YF$0iiO2oi1&#wYpmBQ); A ?U|[@uS̄SD珓qZ!octenjG) E_P3%TߋD8%Y t qH̘e `<>rBL)[$CҞXCmnKy㉐+~e0`) *΃P .=n2H\0^ja/OIJ*Kw^t4OH:8(̀z+GD[4<88*EO-j_'D6a/7D,|i=B *nips$Mm,ڵ]Ed;hPj#9Q+ qwGQbn 83K$~jFlbQQkFXfD2+b02Fd #m&Ű0eZ4fIh"Pt;dŔbΠ @ ]ke즼󆊑5՛Vӛ[ɝD!hSOXŧ0="#loH1'O8phyԴd2k(nkUq2fqO׬"\ʩT;]\ : 1:ˎKRVpOÄЭ 3 g"cQg y|v0辶Frir/&ﷅ;=QX`B6-AsBS?:@B"/yٚAw0[,|cS؅mz؇3ML#iO}}DY <1x:UUM/,?te>b[i*ʻCyN ^'fgճꍫVZ_ 8"Ar(O/au~[vlM8Jb(sTLhVy76LCrTڳ{sp89 kTkd,b-;"X[Sj>t#4LjmE4ι1|Jk %1ͻ*B\ md돱/3z*R(*P2NԘ#~#.N9 [A]l]:[ rD*"۠ %yVudHH^Dl脾N;5'Kg,}J R]+{:|k`5Ri̩G|~RW;'jZ<5ձL<+>8#Sf㿀"J_MҢlߑi!A殑~>iS-t˪[C&8,Lu~蝮7j"Uٮ^wNVՌ~#1[Ֆta.D%k&#4=$i"w/ iJWY_zD7v]+Y,oh5d qwE ڴ1;{Z=R<4vЫ]մ)UG'qЦ1;`؄F9&Pp2PgA4=8:6N6:MD`ML&=G7+Nʁ*{KAߎ"|=gd,w{$bHt[ P O!!5M$\:ҘQO/Y-"r̡\MF6M{c9dkF3dhf/%T>ܫ^-?">1Zn{z$Vq?sA+95c"Z2U&yL}] iVf 61F^c@ Ff8kyrK#鸑zT'*}RͽKNhpmEvG&92 SbKxߏ,^dHdq^(&&E~u}o#/k.4l1q"#$!Y.$d2^?2Qdf%> I(fwXKҝzJ-j`_O݉A wP^6mɍaN2/AFk텟p:L_̨Č~6ȩ^1Et&&2#jo >B{Adڼ2FG[\YԴOuk]2Tzsݎ"-()@`F~ʼn̩z&yQ_sw:4L`hCdurkzAWKOզ1w]6x$Уx W MٞK}.d(oGE x`#*=wZ.D;߁(;;β?֭S&~ZD* t(XnݑTL)Aꅒ_34xM1h67EK2 m;^ׯw*X_%˥ũ]}T֍2Ăϫ j]&JDe ӈUKΎELLD}b7FM~!fdeK2/tϭWm#kY4y飻mnu}* zq]ґn%֬09Krõ2NPՋZ)hj8vF A&BCiZNxK+cjShpCEG!E:EA7Q(0b΄'áʬ,''sN@wMSZK2(EXR\F9ohK_USUA;Y)X~eoBN ( in j9Q*eUA~NJzj6q($vJ{͚[E ^'^oWVViE+g$R c,N\!Ov|{q{3BI (b ڨp.qHigBgk\Wqq/ӎp1=/BE9.*̘!ĪWVڑ]5p{wY: yġ!Xf[ \eyb䌨〱 Ҳ%0s*;b:fj@4<|JE\e.î DݐRC%~rVƣ:$-:Lq>@ZvYBxAp 5kE%5ts~Kc!LmM5, T=[#ư4L6;k?C2'`jt,2V] ͩ,ceH!{`KmhI䓥w"L(x>`&P&m iOj9^׭d(FHn7]BGf R?C77&w>3s榞fW U.A=&HcYz'62,ƷQA`;S*/PC_|v|(|"ՄV̟7݅2u1]04¹S Ӡ%:J22E#Ro[N_ГХ⇁]'Lm,Hԁ'r0j%,s3BSi}[6#l?KYr|8N'Xn'/hEkml:V "ϻ7E-{h>:d)2L6͚S ;//dh ur(s-,KUM#ڹ^tBCG\ӂu/)Η;M+<.er_sĐ[q (e#T0xң^@6 t'! > K*{uґav{UFKl3ӭvԱ':f\)1o)gYVHލ==?jރ>6FL+? MFkjwPjz@9]P4"+5mPH- b0dYWHPEU֖^ݱnk>ȝW#KXbn=Pe^1Fx+ <^:ٷww ś;C{>@G#SiRwOc$/;ȋ14cʬhǠ,R gi#G5iȱ"%/'dxBR-pUN$`2TW4е+jdn?AR[\sYbk!wrƚ5_W&zѬ͓FJOuE E&LCs R, G 1Øjl$vz[dH2E^RA@;gO M>֩p;WȖ=@va8J[f=AJɘ%#m57QnWN+(ah vR;J_~B ~F],ط6C) 4فǾ I#{9g.sߚ%}&Fޝv/<Դs|hoLD´, O~K/\M$?_ !G5C$*=nc`xmD/Mrc#tѹ/X3^ m9iP.~VF,_&71nm!o8X;ȊgSN S3f)5he0Xfټ +/iQr*dyvٽuehU֫o%4d~O-*ǧsCfK( #Rt,J8/r tbU?.SSP~~>]y4 ^zkJe]p[9y7gZ%xyɺ!l@ϵ$Q]h?qjlPnK4~v2cQrs*LoQۖ ?ϲf'JUNtB#fõ/1KH_괵Ynyu!u6L$ XI^4+G"m;n/ǚ[*gXd581~!):nK3o3: Ǥ[g5L:W,mڈXCy\}:Wu[4Maۓ;ayuXNݿyv]^()Tw &CLjijp01 QxzK]L,4LYThhRܿ6z6;PH;cEcY)BOT{2;t`#Jqi7ԙw!g~%AP\7?JrH\珝0w^X&8۠OkDv"݀&BcQGWisWf/= 1f,{rE7}³0Q@Q~;U} NlJf[- o-V芀S?l |H(PFh{'kUfsURU:ke!7B0ڎ-3o.]%& T<4(z:??saY #2ڡnSJLI* mY4 aP}p!*YN HNrF%Ftw=.i_)ˋvSBuw;lScnjpR^a(K)E7Ҝƨ8V4} @Թp2zqI,o}tY7+=vV./[5b)z)U[bOFL8@J6<05R0[oBנU ~<6?وfS-NjZddF!dTu0㋛M86c CB(V' 1)ӄh& N<V*KЕ1yR=AGCy[+ZItI`$-t8x9[`(~+qDI<$%#w|~hQN]b nP'Oތ/Ø;#ZgI|$ߨ͙pl[iȼ2²nLHueK/ˡ\koHtZ]<'VLþ^]s8c<;ߕ7GPZ8=&iMZԣh!ݞ7t*5[BP }{ȕ57$I- H}kG Sl { L>ym(5Ϟ`bP胐w.e ;\agG^1遤bB!R[c4(gh3 OX<9VDF ,R,%z̍3|=3)U0r+d~Lknɜx`Ohtwc8izG[!~-1b bS)2 7%ea]0DLp$ǀ{\p`1'㹶3n5phus i8IsEo>M 旺WLp9()C3˗\YߖL{$QU E:IJrG p=J,X3\"p0!b*EaUpRtLfA,5~ 3 L|866W2ԕJJZJ.pkA5-!NCxΠ@ 3 P7S $/5$ӭpI//ǙAC;(q<iAg!jȐϗ(x欑ib&]3Q:vx?c.5C}JrO6M{pL)7pJߓl[C6ૅjA `)k!N"),s̙LE~@p#9cfqV#  PzN606SIR+y\CJ71>["fC͹ 1bzBw.ʓ3wcgukWKr\3|G01p"h X_ҠK~d??#}x!,#^z!D-ure%JHob]+>enIhIzՐD!;*r؈qn #iKXvge(0sk=i@%Q-wX!TmaR|0 zd(fB;t(rPF\1f 'LIw@ڟt;Y02ۗKF (:,P**~E&UO;I rb/Z|jQlO5eT%a]]K9ij q#1;ϕ3IEUOA6R Cgl8 q;V2nm+K<{0ϟ=[-,MQ|g}i+ISg& 27*pbǬКv&kNSmҖSu3C'yEcgygB<:ڪ+v{)]R ]Ї(0 myPv]ǕM?o* & 1 #fg?_ʾwu~E'7؊k<^^PzѐZެ M~\PU_PdC̒| kV͢4mXy̯hɲju{}5au`{u"A"7L>I{ov rMF rlԽgL$grj ŪOF5"aA'mf ^Z$܌iƻw (COFL+z< _kT\ABw[?ix8CQVaVI龜Fw=~pJٜ@xT"1HSZoY-C/V&whnNqM9;' CY tjl0ʒtv4&Ly:ϖ";/6+;o D%& # ڸ)­k'+ùȡ4( J_:MYnjBJmm(O xuD'j"חY F;}uA UbEb[Ԛ ËF6(rMq*d@[<)8w1I{bt2I7^}7֊oI?JqNzg9$QfhU阐w‡#B*FI'V펕C0l|#ӓvlo(2(Md"2r%(xy͌/N[#A扒41ưu l e{ 7Sͫ),squ_ŀÃcp3nx6v*`֍Z]:F  WZYxlsG̘lyAibs5M !.7N}Uq17hyvP"zls vJ-9%b@[) ܺB#qa-۳ԕYùq@r%ǖ8PsU&/Y4Zer&̞pT~ysޤHԜR7n~3o!FS| (9{JGH漕)6;ZWWK+1ԉzBvZ1:% :4zvWze(EwD8Q Id !==<7a(M%4n [YZR}皗e#xjmF/NcfG$3 aHAq'W4єut|1^+V3;4I1)a5ˇz/'s WrJzdEz9,alZ"BKԡn^@_h?(^ n6%IwEP9H#QaOb֪[4,T.Cf5v)gP&xagtrMEa!Viys;Z\V{۾BNFw+"uk՜Ud]c{hz:{R㚬2N וz.!u4ѮzSg=h nh9)F{nemN^h' .ѧ~"*4> :䷩Xk[#oӞ$4pE~+Ԡ44\!2^B7 .m@k9Sn>#e&pW%"`_hJx뭡Th{5XS|1"TJxSkcڣxABB3Uι5e>AeסpT?v 8h_"wpqu s)q`|g\pS4.s@YMU6|`/|[T^wv Wqqi;3O 4 )*yT|uK%vp}`P$ P4C.~In)pA. EluKLm؈!5`΍'GDgOSqT1QUAb smE!8ؖf;S|Ԑ;slMkҦSV`>V6dV//f'OD*eHxƠJmHb *2wF>Xl4C+Qd'BlBdqV'vHÐגg5l-cW?$Vq=JZ"jbno~ҍy@hC0QZ |G( 2*6p%=Tw>Q˦ XDžtr oH?qĐ={t(Vr>U(A4T;cg ĚD/VR߅)fq/׭}` !^g}t詠j)F`Le|P1Im!R!],k9a1ޅkb Zt_u]0 .'}T6j1 $M\d#IihwAWY(@h_/sģ-c}kLQ{d/:g.Gɞ " ;%A!ްr)QlVDRHl".yH)#~dpV2./q傘jg+ǖ l<]7#< _݃#]?#nL YgfBÃv Hx+ϱhz5=P= _f9;oio'p!HxSYK0Н:xsr/_*gm烸v4zNgКA6_dq[ϡЌj̬?:^oO%YJYd!sH" @bRf vw~&& tՓ`W#M+_vW-HeP0/,9ajQ8 ]4IifCH^G,%-™-;/D}4y7TfE_d'*pSUVK=4O::\u20Ҿ eC+ zG#=WήiPb~rǠ UBO#Cm I׼ -x0#l[ZyY7lc~aω[ q4R$KGX nWdZۄruBVkFc*l^rfӠu?`WʑWE=}sN{f}2 na #=̳{N܉NU7]~Dy>jI5M?=7h"|FARL}ˆM_<'ڃcZJQFpj\3ьWtdOC<ςo nE&ghfeYW^@B겨kaG}cX#~[jɶ'᠘Fـ řiԶ*%holdjsXlkd4G]ͮ Ѕ%˔=:qC7n y]OȼAR,#Tlh%3' )MR9fD%/z7P5;CR~}_,w.چ6n?!.|3D+)JLeeGlI[;Ma]m$6Q8Pư?1KL }'0'4ވ4%6W䟢m&^,J,`iOɅvP~1|v `.Ls}Gr|x)X7{Hmv8}:b<2͜M|({ Gor+ Z?hoHyRTA@T@7GB#W<*f ߛ?= WecNQdR@6?fӏ&UktFw~u/ 'OSrb1ּ9 ;~[^Kؖ+O/DP̅!tlBQ5A]j5zJ bMa U`'OaMq<qnrNm.{?py:doijt+_Q D/r?m2nbkP,ƆM.[xũ= WTL\JK YlU@~lOtIjG#+dlčS% z\fݰhTޱzUS|0@G?C1/t݃gvlIGN^܎p^iի ŞPTL(Lq0F{Q942I<6M߁WU)3lUc bq/vBT:A{͠^跀t'tVjfsoy5a ] V B*$|P#smެ,pGz܍Fk0`p<̒NvzC*Y<}JlDo%gzg-lQ$Fe5j)N$G9T߸'1 I4rUC/9Ix 7& mI}+l=Y&竒j_dhdFWJ`n)Nځ\PtSOod]9l%C̥ٞpdTf}:TVL\#?(ZQ-TO-X:n,lMFք:ٵNm;8AoO 6䎽{BdK %ϙm>Lz4.A;Nh$J {xU (I%-&յ!5XP]+>:[V2^'BVѸHB‰,of QnHs%idɸ!U©%uX5%Zuy䞇 yVx|,bL V"P`>kvhmih_U1)KjTU43Yo72t^yN6M0ړ*Y(%Ps n6CܹB)2D"lXYҩ _Pv#y2g *I]TfIht⃎88^x`L3YhyQy -Lp!B}T6tlS!l"f?-ٕ!$k0rM `kaqQ#KߟQ&]UC93|gѯI] av: p rgK|YkA6|r J~)T?n ,Yap㌉]Bm|SW?k5]%{l*ˈ2vu m* 6>)t$'w5l3n.7t9v"|-A01KjKܷjGsog1LEO5ZEMgdFR2 ZH}I|n L ¼zνמW@s\G6HjPŅq,~x)*^:t$5yR~D&<ᇀZ?iϟFɻTTqi 8Tzx_l!xXDzIQg3AU\z‚<3b F(:du1oƖ>SȊ|)Spb"WŹ_,SaQT9ޤxmK'Rdx8:s=udG-P+뮶̌AN} `tHbu@ºT\@M;b+ʐjڂL#Q09 Vd5s9*$0[CcyR㬭OVJWk#1H!Uؚ&tT׼XdCQSh{}+7S9b#$.q -u:OL SvcA@U ]s8%;=xF]Ds>r- MU李@'Y8|gL1`Vf44qL<V R(*&`hpno\>{4L[nr/^ PKȽ @w8 fSќx,P]{gd31F4w]`:#&g%zge5 "-h' AcOZ01xކ"N+snd1pjFO#6QaղYLPW࠴,hK EEFm[ Jڙ(q4rL[P &/660:7U10p>wn`Ft Q|v{Iճ"h~c֗?d OiV64me'*=wH4IU:rjԭt7ؔw_j/f!-ZCsW+,9JepR3tNs4VZp}w*+,f3h-zP7 "%)M*&+e^ /ddL' MjX=hYiNunDiiǬt!b}#*;ו^̆''Gb8r+cGbd|v%,&|L;!>Ƶ- eptV\ɪzO"#}>Fq?b#J̀ ٜ-jv ow_3F?|S &'8"=m'M| _x^<ϑFϣ ,1F$W*L;O' #Q+Q \!{ QO~u@od-v SίsgLCAtj7XB"k}qKx ycGvgy̜n=feDz種BsTXZZ븿Ù&tY $A1[}s@OnYkmBﲹeyN0VG4(u߿߁đ@s.2K4_*۹HşZr @|VxxP?;ƻQ/`fFSW)%{Cp~0Ɓ쏡st;ߐk1;7ٜ2ht _^|bN!1@=R Qs!kIɦ$w_Ahc1_S$[ |s4$޾W ~GFDM蔪5Y-ηl'Y\"UOu{hll>"˖ bk_!zh%yd!\nY$ KIElh][r Wy ֣/?\Z.@#L/db`Fș<΂rnU/X`kT> {nyZ_,(/[H,`C㓘'.@ }_aa#+GcZQdl0 \"Z jLϝJaQ6+a╹ӒldJ~B -oVG-{h}w{.Txm%  X1Lr&T>iQQe k03䬐M_1U3[@> |,KƹR+$4Lau9"Se^\)UMzByL&`_JFt5tm:{aoѾ+-\Vc!;׾w"^m|ERzc7 -%@ gs# "@c+b5KIҗ|95^; qVGR:vZk|S햅1J \,R=Oa&%$e3d|V]CHuT~@lE{kﰤ%'UZH*%EMɜPχ4zR[y9IdI b!eS^1JqL VGUC$ @Vʅ9 kiPN42V'0n fc똖yKj]n%_OЎFv^tIL`yOڗ'vg%$ϥپ~+k4/2VT c|M='bP[s_pt9D[\~('fQv nOCXeta|k #7^UkM)[!\lJ28<$Dx \0{;.4t7{qZԼ.(:l,ΖAOl\ºBv WΤ!!-GmID`1uDZ?C8ٗ-L"Q d¸E$ `&#oע(E _Up{4"y!{4lV^X>QnZ%8WV&!v.!ޚTkPubRH#SmP뀔1-VIrKFBUo9AClXqh[AOʬftaYƑ;(PQf&9M4Qo ԉաkcB˞/@S/ m-o\<ٷdPr#! rOwjk"U1cHg;|ݬs@QqQ@xb09A"X,Fʿ @Y F `Gv]?sm~QF]5{}M^=핹+gᖜMVrE\++ǣik>(S%kC9;ړyzMZ[Q= :"Ǭd,Z|@ndӰ-Hɏ/` oiۅ:ke-GRܛAx&Ҏ]c.,fvm/ŗ*,AC@7-@xS+T*r _"d9 /ӟl{̖>@SNy{t ˶)薗?(X&a_l[F8 :DP߲ eh71 yG ߨ#K,Tim )(߷(NAEzPwcr͝6-I7Ju̶h;?ߢ._L;?80z[_ ׫.!$B˒50^xW&I?cvDiZM-HQ٨J*QU /V῅uLϠ=bĜ./sZ`Djm5IILd gW QRۥ5_IJ$*mi՘uwZwU {\fTt~NW4L5xU]"?\xG;H͓͢vևi0~n$+A,+밠 s 1&w[;ryL9@5(=8qX3ĉx!B=V5om\iTMM[һ 2^;%Æu _ݷ9t+YlCs*is;ףۦe8\Z^1/OݬeB Ii09I uD!33:RF\\bOǖM cP65wt&,zfXUО^1AB(j朙ȊP}%ft(3H EhƬki<ͷlvSܷ`!) ack'B탫vJ#z5nՋ8jgj:GFZ}L@b$)-NmVՈ^qnm*=NAqiX +AwE}V吮bmX㎥ǡfV=WѺ|u#g1DTf_ i\JhPGzYkt <*TйGܢŪhУ֑#b=I~u)Zy0MxgM(%it ,1U|-U,1RCB7;uIãwWar}7ns"(tIY X̷s(Zv? ݈?AB-k %@V xTXSUSX'ㆳԴs.1jyl+pt#(O}X`\z> +S*4?QNډOli=YxFwGˆ=ĕE2+0qz?fLqp~n. Ip0NW?gT f\8va}jn-ZK|Z2zi]1v|l>amgBZ;2VS,¥Kvg=2¨ ](ovP،aGYz&0Psan~q[@)+[ue 9H`{.ՀoL|W%,qQwX HFPF 3ehlnjz@(Ná2B=ǠGgFkAAsߔ7|tɵ|԰}p V[>O@f  Hhb&bZ3oWs|ij0Y!71:r 7| gAb'KAՇ[0a۩1T﹄/uĨw Ye#V)IQ@?oͱNf1WNi*7}paizm3@BBBˋr'9LSͫ2 ? ;YJ+5Mfy9=h X-~kbd@MOE!qbjng602ވv7NqM1Y ʚMÄiPE it $@kK*{E^ CMT•e;exI,Sf$dV U"2G(f^-H)NSeyhP-q X>̻\X=: Tۄ9s#*׹OY<g ^V`*HBG$~1W QH=VU`Ks2RīrJ?H46,4i c{x{#̢A]>wl9AI2Yv.1&K%1va/WRn6n[-z Y8hX,YM;(ªx]]S\IJ^p}j]h&1eϡFpoO_Q`LZ|%>3?9\Sx܅gߋOg߄3+$آjKN]6 4S <&h̪{<}BaӋ7t4lsSv\MG^7 !|dl/?9tC!y9Gf%劍!}| 7D. b8aCnl?>Uٯ.fnBh|cx *_=>i@L6AaE,^.U0S*$mV9)lb+bjJu|t ejgu$U t?0돇^:CZQz?twc:Ʊ X 0uԚ/_qt4D:Tr 1 VGkTL >P >p>W~1̿;wmvaT2XCAx$Fg)Tyq| -Cr>"t*<6c:K0O^42kT9.HZ℞!:фW~I#AV#΢q-gDtQ%[%? n#vcki:$MM4+QوZ3LɨH>$`|$z`"~h+ECJ/0}PM̡9|>"SuvKcb˜P=~I9B7:бr3uCİAn 94ef2FgoF ڪ^{)G  z1]qyw hJbf@o}(q%A/fZOV91*_`aba J|݊A*la,L+>`֙g[p64lqnS䂝ēpgZdi =Wb )?Y #6<%6{ޘE`FNt$n+EPYvX3 w5+?%dyFѡ#dTOWŊT8%[-߱ϣN.I Whf4ThoAF:2 q#`NP,v@ );I׸1͋4$eHIƍhU[=aUܺ 1](F&N cWƮɕRV{#ٙMX, !he ~3οn["&̈́@ߓo1N4x\<ςJֲͳtm.ЁtM=P4vkaw:HM$} :#I<^AxI_ѫ¡ॱ,i>e8svO *UVb =q/pբȗgF чϞ31a-,jB3wA}Fe@I3+v-R h^̴O,Qy.ۃDc#k7%l `BdYdN0jyaqgxN[KP/ W*fڑX3QެG%5L܅`GK^!d< -E? |[҆j3J[2S~雮#u?YMrgKL;Qy.O,RtIՊ{+G9Fe)MD5kQ펇 sx-2SV@ؽ2*z|GbeO}Z2XEwVvll?[|1Y\H:^K GBOt 5-LwDJp8DעTmT;C]HE.ENsX)OxcB6>z'l檣fc1LH @@~ct1~1ǯmdI~[=$)L}Fc2Շ{QyG`&?2+)N )rd < *T>DOD/,ӆy_o{paFsF')jdETxi<%cNxf@6zbכ;|?2x9 p8mB j`J+^YT\!ń uَRǃ)! ~&MW<ߎ:㲎qwdYν^+ivat|cx9t_щJ&9NL%QJlZ--+Օ̏yϼv:zVrZ6 [?"`mtI45U$7O+IVxh.!A:Cqs`OVͥz uQoMVy$Ši"zo$UOܖOJ*N ̎LU=]IVD9=j!J%zͣu_|s 9kuorlem=W}*)tORgmriZdvBi Vwl-= 5^d3 uO,[s>v0RJ.8~ ~njmh>D="M4T{"Ԅ>xZW r!t6Ta\)yT `4`F"\ύnն*3 K<Ql FĀK-̞u554@NidI~~*cb'ozׁ0ꗚpDݠʧwM;HPTЍ96N]@ٽ~l>9*2+2p/@4He&;6s kXT ֯-^ =BEv j^~,7+F6| =&C(G>S6\LͿx|\]fx2:腗?"p z Y\}J0 xbvk\-P4nOԗJ.3>d_9w>0;ǞfojŜo׍6nz_~Z0զ_f߇+ýbH[n".sޫ/ y2+.oqQDSʃҍꎷZA]QN67!Iqֈ@*nD.aװk`6ֵpӅ1Eש7M_"eaa5ƌr$V*YD_CS X(>$_%+F7Yk>kN 支MKՆnoL=ۊ=gE rDLϴfޔ%Gg;l˒saǴ+gF{G4DX8p8!h8mml.Tv6&7늿 Od?Y+,u%}retʩYWPU!L)x+^wP$@3-n^ * 5Д:}GC #(RʟB0uo3 ljuW=A Yw%lg 7938+aA vMDo bdDdɬk6XRu4̴ j}a e*b[!2"@=8b>n" v3S'} pEF5Is8B471T> |rB>w . k+DBBL*5@`)W{^;nyíx)Y[QL"9'qh,nCr%-~'5qYm|l@,'^,2e l McI)͋°rvUtP]Eig,_AMy]O͚B+4ʏt:lWbE@̕e/pz:5DsST\5eɐnθ~PY4%jD<;"A{l[\rE<٭>kJ2/xּr2-M A10Z=EHueII;(ӂأ>E;ycJ}b㼠9Bi}m-|K+.N cR,?>adifZ!/Wy}׫J iDk \6!("=p mBӌPw=U0>LzXZ*L+R9 I$%V&bhA4ccY TO2տ䈼i1Wm,i M { /6mE/Xy+z0蹚`@K[rڭ1-AaReP:|$?Ohx$2ck;h 63b65'4|60Nf 撦mz%EJYcPIjjIp u=M|T'"n |b4`K~O0EI$XN(*ԈW?Hr+*McڨQ9AL$,j}nu޶| 3pCg P0Ra=Tx&r@[4\V_gUh`f9"/0[:uq>/8 ,=pG4WON=rrh 2Wa;B#6A)do(\o##zCϏ%M4w kKP^H0רy5H+mA񲉪!;?Jl٪+d"Jh3>+uM:mjk|=1QMl  L:~6zU)YwA2E;M {a쓓/Ȯ"(&u$ )pI24Y2œEy.A&X+D얶hoDM8ʵH Qb-OXUgnmU  w$\kЈ7cK@<13skB-M#G맚!aW +܀ &%>킽RtwFKQ$} j^ lJ<J6? \pۘ&4n|]ޜHթweD̆x~ j8mKMxzDK뚮j9.RF{n9IgcL OqVאVeATsC.[@zDl^B8dI2trP Ma zڎy7h0j"mT XԎx+{j8ʠB?]bKKTt} ZméƧtQ] "OuO}bKm.l@ b*7zJ&wn~u\aOb1ѾG'̏Ƽ(1J(WVtQt5W1aj>oFE4GEtSI!'dEK]j nkP~+кMV_qx h8 CtnyʨR!xDqOx/)Ku.f)wfLq<2&G6C`h;U0>0q0Zجп~ h )qJN\6 ݪЄ5D佚fvVDPŋ[{Xw:;:P<yz$7g*l8UF tt|vh [r%';WjxK4B-D@ڝnWke0quCP\:U%s8mlzmK'BAuc_P[lp':bsrǺ>܋2'ym&"u%sR}C7 `T{q'ȁ1 3zu ʓlke6cIOZ(X}&v>W=!1IvZ Zh<Ěg \un F쇗W t6aaT/>MՙXޯRܽ,4E 7 }4KVoψLv[vnbn""\sYTPD0HH>:; q)x~ygihbm2 :k jG(/w@. gD>}&R3├3'GrbQ7 IOՠ_5e ncuDZ@dlXpX۸v~C ]X'HaUB;7a1s#M;dv/.r_3B40lr]WrL >wI T1>\.|HFɜʤҠz1*jn.P3i e!cpɕEan'p.VX8!)=Ag)Q']&!(yXzy$N-ȴO "Ɓo/Vɟ$T]0Q~JGS4R0؇x,R=m<ä,w8-Fm4]XbVapu>UBކ_%^8M6tň HmSh3ZRA4=&vn̄Zb}} (oU@lS oe er/[_h\[ '4lBAos^r1M6Bőr۟a6 /PDRpKPᆺ}v ,2DñT%_'GΆU3'uP`cZ/y%-L,u]'COiXmv[>v+D%|Mv?(/8ͫExqH>}9, "SaEdjU_F|UTc Z S,+yo[3Q}KadT"bB9^e\Rp7XsAYȣ jp{Nbb5z&͡;F "&4-gy2xT΂zj?Kzۥlۑ]`IUMo ՐN\-Go†{B3'F~0zU_Է`Lb7cVki7?j2QT5˝F'~h{Oi7v+/tU+*(;DߖR`^/ɯBaf,hU=1JqTrr^o_Psg+G&q[fV>6%@=hH9eҝ X„tEԣbjk@cij򦃞T-I+U>H󨪀!oJi*U^gQ5a@%_3}9(pl]P:g$fI-χm3]:m Jz>4d5lY?lo#vmr e9kJ^t V{ӱy5"G3n;S2iq񞔷q.nHq:bLN)Z=%#wm& pBҍO|Kf)~9JɄ|L!!R.w$`_]&Jpjը9A_f5ES*1?Y-@G0Q>o+vrSsxڿ.eUG? boEg1;[qI`(b˜#_>uA"@M4-A2L>(\h&C0*)+ؙNsXdj$_CŃZi7XDINBB!t)1d%q8AFrZ$ǛM9fAY&S~_iJ2/;Jֹr(u*٩枒/Om0GkE9|cc $DIA7gfZ͢yptDuFa%Z&mWBnlV{| Sl`nz 3'-r#+%Șwy@v^ m(e*V 3%L ZrTwքvLH|MRRzd=MWscި6_xu|E%``G%'gI'GG6֠wk&[xRN1zYG0tI3A2i"/OEe)UN%'@ۆ~$KX:6u;\ T 9q@fFs6-&܏kj/s}WB=7(ٞ 6J~H6 &T:Ҙ"`KosnIh(5dzb7Sm/7 [\CJwFxB;q_R@A9ynK_FH(1N񪊊B?[蘓7}q/N NJ8RQy#R4(R˙Y _,ɫ+8pڹVxu?J8(Jqhl\67w;gS{pEmпrGQPg[PmxpԴ$Z+`iqV9c3w;uf0Y`O6cEĺScPR,ϥ{)O8a/Y,F5xt%6w+B.Hvo WCcEPN˂ 3 ci[Cn f eҳd@gavWU4FcZ^@ڣ8<#|zKáUp)^b1HLpŭGMN+4*c>B6(KoNr<ʧ|(yƯ#%7D 䅠Mu-B$/k85b3*L*[9yy+ M ZSB<\4OiA_]gi׎(꘠xQ׍taĵXCV}h 5FX#wO/ ;*=3FrvJ |ohr(56i}m7(Gⶃ6OfQ| 3}Pf,;EZ-|&WnkkV`2e!7be:+cvt[sSTgU/& jWG>g^kVCht`W3X/%UgջOc4^ߺzDqe#~1M&"RUJ>ױ@~Y.),:5J~Rеw~Ч k46!dwA퇇xR\0RIKVZ^-HҾkMU_M?zU|m$+lMI,V; +.?SZ,w.<~LKY];9&0c>H>ې&KVdN&b7*JTPJ;!\j4 l^o^F`s^؅C -%m]7:uZ(K Zw[WfxE> ._J3l`}A5N%Q̒C}Ɵr+Ylc4)^;X"rjKr&P *3+*ǧPO;Ҳ3%0ԫRdu.aێK-|ywxTc8=d꣚hR[=L|uF*s3RN4>aN%&]J;@(e>+O5doq /TI<Õ,/eSiy~C>gLrՍ(i$~8 T=tO^-p>/,Sp?kCAC~>sBNejiZEO3̙jŧe}>28R~^@4Q)(jmMp&IEBB" NJvX8a?3 #%5G_P8w*-ߤ64R T©dtEL#NkTc]B6xϬ֭>_ _[Q,v'/FisĴ: QO5AɞokjL,v; MdR^+]v5.ѝi<ފ )=#{lZ{[ӼkT&2{#u٬DI i&F=Lɿ.Yt vU/lSo9(6{7 ./Ͳ~tY5'p4gNXkU4Ҷ6X=pJUQmRT8:Ni^+B)rkAP9~Oq 4WG1-wS3uh0+d-A?Emjs8;>A=AۢQmDXu%:sagoe`< #9O&x4a@O )FSp}U")^-S]AgCoq` B/rш܄ Ͻ}.ïn䳪SGi-zqX) 3qX|y%3J AQ (|RCQ/ b?3$Alח!VÂS2eջjo3ՎaNl7~7FB[!f@bgg6|ܨ@)v+WxI =f 肎N]"_dGJǷU8C?-*^0QIΥ :2BZA ݅OPzrWŜ2܏; C+!{AwClb9Zd7Ggՙ  ]m##0;~/ ,&\'ey}zo-i=&%>oIm@{x,&(=;E<vIpxsˎV5\6V$8|B Yۄ}` G2vAe_}5MA5XdG])DSyCtcJʺjv3" Y_sK)~6Smkn6cSSٵĪLxKk3Vi 8~fLy#=JVml*5M4w nH*vQK]{8C3kZT'g֍T wR;QCL8Nxj>9rË`Ίbi Y-Nh$R96%ҋ`@gom]:I+ Ez<.oi؞aW4K15ȳ,j:O~sL+g;r~dO$GoDůbtꪓT2Mau  f6䈬/}ʔ"׉bAJx@__ y,qA5 Gvow㢠d(MPR1i[`g5tٱ#6\l쓆7d OAo`KӮ-6(=\LcOXP Jzc|WՖw#9iV[_ ĉOG71u"AV߶. n5zN;A!sեCfkH1/ z6_hr UA7(C(z莑O9U`q2]O:P4ʯ 5ǑLb4BUJǪ24ԏ:36/9I0 ChOckbR;RꙐ6=ʏ&fJ+3KݎSeF*J3N JsbvI!T/,['xNsg`O}'3(8oBs"ph-P7QVIŔwL&)t-h95c Ļu *l!5Bp-rrv'kO%9 ۍ>qI3"=/(1UB꜑"O&6l [LMafH;[x%J)E?91OKGG^P-%$<=gxv@ܢXk)?bq4[GE+ ԗ3NIWVXl6wNup/YZRX>,\2:3m1]JӋ .WrvHD)aԎIdM_e+Usu# ;;3CyhKyL+ XT{5zf=sa7QU Kou [Iu,moO\[F@)++o>z6ho[Q,, ̴QN}؉cvo瀰+3 k!P$ |oU0 XGulA-R-riעsC T+Ҟ,w?<3zUXZ6S\W8ŎD<WǑ'%:vwy -:ޕ+=]Wj?2k) GoEv+7-ζlMMF| O :UrOH/GG{PN6 bI𱜚2E-#P [4L.i<N"7%>j.;DMIk**]gqc\jp-Ag"k]ݑvRNb%\܍R*I!Xd9'μ[/g+qA'NCUXp*g*/=*Y+ov3ʱ +V ,H1#ojMTFC'I,6;BbKC_TO}FyifeHڈ 1Y29_oK>@?{C%XQ1jY3"]ndj]AǙ0N!\sZp.8ǀJ>y+VcP[$ ?厡)jfv8[{R]g* 'T9-KTo8Ddh 8*"Xc=ZU2m$y6%#Ao]EiֲE ?-K^BQsKri5wuCmmik'I.=X繧<~ }ڎؖ:͙X:%*)Y[ XS\ 4sZtfFЋ~ZL Mto;l6Mmgko\ $AVGyZB;G'|mY-U^/˪1xQ3C_uv | 2nQ,S=-(oWȽYWyC^BWy2z_Ŕgi[;+UF>_?*4H/%c?֍|y;𹏹_a_E;sÖC7C Vqb{hAJ9pbW*Qd)6My&K ;>I\S6+<F,EsR`b}$$iRVwܮ\ֶ A@M|Na@H|A0xQFGG1=ws^'xs R|;5YPG.RTS$XN SKm!ɡs]RÂY˴yoֆe^8++9nixa1ޑbBW!lRFePϢHɫuȃ"Y`w̿Kj}qhnӓWdڴ ShhU%3\EU"1x E$J +g@,!%ږJm{{PF#<&cm*!jMOС2¯qY9w*$Lt ,#ZKZ%lH >Jbx8Hn84 eϦ4{RFo[n2˰s-Q>s_.VK[H˴4&; 5yX$>,^gɤFK>?V) h%$ M#QL,65򂍊]b bp[L H%/hC/Z3߭"6 %)\¶,jտun+RDMl.3xHCoL&*p/b5bNY oLjϳ[IiF$e;%L,@C?]EpUG)y@73Qp8NngGB@JCʢ Pُ<[a0oUdyYi|bCXb{'Rq'+ Z&eM@¿jN!_JH L"pש:Ǿ~ж1m"*:T)x|g{SI4 ~b1î(NO ڝ Wʼn#K}hf0 j[wxg24cHZ'h! GRn[XbJ"ZU$Ptns @=d?O>zzO#0a6e69ʃJmC?_Ue5R)$)i<3?Tnᗶq =? ?Cx\QhJjzhЉ%;sāKFexUiҔi$,Es[fzE } Ŗ|d @4`ų#N^A1MڳNY%~;ߴ6=Q5dYGCp!$;6ٮdO\w4j[,!ӧE9p٪QQK/"aXWuɲ x !Fr=_IJV'e G# UA͹\E8-~&@QVFxaAP1hSPxt2 W_Ïpf Ys#ʣSfZaFWM'`xMr7O>waW[F& c %[AX)-ǐktP@D|Or>KIuޱz:gvLa&Bpf!l< #'Y"JU5[46Djп{sh]#7FH'8 퍏}RyUi`'*%@79Z:&pCUov kk# p-\!hs*r}И0(iE'v}$ȯUa{;ϽSo058z b~p~BRp`2}>Bv)94,Wg鋕]Ⱥ@wG3@]2Nbd) Cl,`#4 )f dC)Nw^a>nq@S 龬!\EHG-;Cì<1NwjbU@l=^e"ũ?fg=q%U5:4YUC|uDu@+J<*"ۭ, (tj}d=,Gi;Me7&חJC|)q=jd|\=ewxm})B#M\FL!h(TaU(ȫ>\w;ԑ&x}i {\82gZEFE `1OQ*~w0=<0k+ltjMV:s.F=]L,]h*,TT99*Mz&kw= mp&}zEHf 2jy,`kynRHEѠL4k^mk T mKn>C~4m٥13h{MhvyRwD 4f7]2L Өen@i5]]Rweah.I`˜`rs e0J_>+l.)<ʯTej'%m q gyDKxH `AK߬B<KPl P˃^C4pTNpϳAHe9\ޜHrt҉9ed^֮LF0#t/_yTa4?K*QRD7U'B LmQO;*1&i`#,ɒWf9m>I0z&uʴLsBz]ҧK >R&T6\kI$!ʗew,Ц5)`<*Mx/qUmP~e,y/m×蘊R.Q㕯` 2Q=%}sa}Ph U1>fWMGVsz泎*-y(rYDitTar9A`!K jS͆)"/xx/gnN]_ұgI-n\t5ay&|h"F'_jcV;?YY:^5zF%k'Z9bW:Ւ*I3h'TM &6̛**߻:XگoԂNW@_p"h^j]v kv2*kt!2|~Q|c:`3t&W"% /ܸ֠(c"j,(=8|EݴɾG麃+-)>ZD&1ib@gaK`Fna%\K=9D'8WFr+V xh%nwQ,Cͣ?ɲ6} eܯ_şB`-dadWBLT{[;jFON83p㋋ hBtn(="%٥ +JOz_!ROD_F(9' 6`iMn38V0|3` j5Y~O:;ez=ʛ.,kE;mșqM^s˫lR!1w)w|Sg~Nf?est?Jp*Db4k$\P7N.ӥF7_\st-5ugoa.(ڰ:4>vEćo"B)yɊ҅^UZ) ͬ"D3~|N?RҌzNƪZ>v^]Y`3G\g|Bov5FVʔ۵0ɸ f :Ke d u>'!Y"z$6w'[0Ƴ"s& EtdGa/⤟ :8\25#{75膄J㬜*#A!,@"7ԯV?RKKYB4@xS8!A)J, {LMx}8ߵbۍ&мmkGta#+I;fCEԗx؁FzgG9*gcWi/,B8K80)SaLwAl&/f(.emZdmPG" w6=N9Y4bv/D YQhIYL]b:뿆fQRLZ.Lͣ~8uņBG{a@0|).FS@`1^gg`]>zח~C]2ns;ډAawW5 hݤ'$ O]VHF! M ms͐ TI€z n 㲅i0䕊!XXjqc+I_Q9h{ȟ6}^-X/Qd 9 *CΤ(Y,:T{ѫ [FcDkv T a66+90bW:EZJ5}61e` \bmpP2-"95.}[&7HKbwPBN^ qRk'X>OȧpX6$|O$r2kX%o* Ich}N,,?M 5x}~Jl*0I?߫dHrX3Y PwwsZ2Qs?CfI@O;* 15qXL*HQ#6H/'̾̑ 2R\<ޑA5U.n(hxC23ўQHaV0]l4~w0i9" 9sC,snd<`y ;7$;kC J{P5O{NۧL\z:kR$z ige)=tD'(cgb:_bvה>߮:X~[]"N9 jRoF0lko,g*#?$ަ2fDh2!_]^ OJFkfQPNڟאy}>$jmB\?IRpvl-ìmm)2!z:J~Jn#Ҁ+mW 5^"2>k=87bۛ/m(nXpSOuNխJIl-};gYl UzDxocEBb_M< 6?T%5í(бJ A{~9+m!bͮ6ZkؚDn˾i0_`5^h- PWVaag S!|n8j]'ï]сJ`{mbB3bfpKϘM-tCVu=3*K9APnY~m 2Xgf3H:cϛ"*_HEs9k]okī-Ǝ[xޫ|Zk.եo'ࠈj7~izay'*J0y}ܮmF`s(N4^%?Aҍ1+*zGodoc?<kX ^gF_nFg 8f%Eh{?\VOHំY\e_|<û.=#4!YtU*!Hpge"sc. 4M]tNQG PLWPtMB1{ ~X6 |@`XkzKs%L䭢A@z^3o KdsѣtGKnh2?ZFhx釫`x"1*v׉^1kc}}}slX;Q(puH%JEq@HزG LwMN(4iM8w0`a5g/|w DzԓͶ 6(4J輠Lᶡ՟O >.4AO"he<t66+e-xC.^K}Ms<2@Z'l|xͯ|0Ӭc]_*\ZE)=p չXKIR`RY\~](ƃKa*g=ldޭd <%:C H㴥`XmVut$Sc#)S)%\Q)A*1lދMR j~91^IW_VŊn&ǶPE \:$P?o?fR~}pE74σO'I_m]@s)5Q ۊTA^hlww%%[{*30IꍙiLU~m +j|?}ӽ!||T8kcqN>Wo%׷(2 TN1|:ňVMj1Fxkq"o\33 2 lҊh p[5FT{ WȐdLD*]}XQ(a$:a#J B8.~Gw(ϊ:GN\lNXal3R-=d,a7#AC!TA号\;KRe?mf>ju&|W/X/-.eW.Tv35=ţ'Ƨ 괬:u[+Iˑ=G?0]Nݯ<&K,p.N);)Eg01ŧ'.bh"ܷ;0~,$[f[Z3${/ൗR plag᭺@3w?깟@Ȱ3fxc >`bȞBAܭ5U6D _߱~aͯN&_UL w17msƧng.M ܄k͖K^\fQ:O7e)rxmD;X1֊ێ?xـH᷵|߿ |]LAT9%M)3C/3+f}w dg>/u9* &[L]2' k~TwUP6gAry p, cyf"rhPz+P( ͘*^nmg(" @˚uME`3n8M޵(2#0* d:# L\8S7.ӔJ9F@Viq6{d~]חxk>IZ@^dƙvEVNl !Wi Om}1abw:<>}"e Q34¼ciF~0d63e+6B )^!aP'Oy%ZB8C8 ԁm&NaO8p_N(uoį&Q7 LIKpyP2:]ʘ ɴ=[G9>RZ,Cg;:@S5P/W. Rj$酟9S;WPɗJ&qǫ;N.q&8(nŎa3IrTbTkkl"%K'r-w{Cغdƀ$rcUd{0y+ܳ-e2H䴏?;. k<<|FBY1ij{{oјٓQk o/3Rag\3W@^u:9II__ר&=@W3 sRy\OgmToGo ^ps}/QH]ixI'8~!k &S{(O4ʼn<l(avV&`ֽN\Ԗs[Fuʆeb" w#j$}Ezi #;*03B7xWC<* opBm<(CŖޢ3jj5sDZ  j>y7ދ#+8lx҂ 2-5* Ӹږ1U(]gQGw"L3 fpbNPr/S(W 厌0pn d!3s!L^B뮤,^p0o{=Rl.eaA~hDz9wׇ3Idh˹(sS9}7>vy_!{esߊ';'$q=d[EV.klaH7I^ݤk Svs!`kM8NF-(!YAСiءLexqC4͎c,_~̿EL|\"@\{A"0y2YUs|5WN iXl֣ /G7uCbYa:IcJۼCIet)x :{iVϻEobƒoT+G7@ FW9CeGlET?xF@0p.KJbtzضmb)z诓0ŬG rсPZ&6gƚa}ɌS)-~ H0WPYkNnđG[RYi"ƙU{&M{_sa|Ŝʌ ㌏:3D?ڷ|ev ͝ 8F;]HqR.Jmyܝ(%qm7")x0?Y O$Wp4r52@+& ^ p0}K "jh )J-qIw?xn-):o#~$rMqg2X(Cx j2:wɒn~%]Ǽyk"q&Kg qCJ[!䛙C޾Rp /1;I/cu!Lxϱ M(l,l<=ێ\n:R7EuH4špsX.SZ㐬2 S=_5I x4=w-Qe()2Ί<1#OkK .,[a SCt>':ز_|J@0aZwyE@Pa5OZPAdM% `Q5)[ksg,R@Wmr*1v*cS e\mkPVq|tYz&wu82qK3 )iƶ-M͜ĉwɘ0N6)v2jTaW3g 1 wǙZUB(ӛrz$MIMgr2OlH3Ӆ~Ts V6 Կ$mu`_/('LzmuR9M'{GBk*ꜤV㇮V}/Y.rGSgM"& v}@0\۸SJPnPH)MϪlwYJgc޴Rd9b԰g#>oL C<*(Ua劽sbjx)66pMt[<9cpDr~NCeQ`bF-0 e2xٖvt{F{nu@tOrͽtxWyzZ῔Gi"ݠvzJT?d1( |JVB 6XJ~\XC+`5o>rՏ63W