aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/captcha/plugins/phpbb_recaptcha_plugin.php
blob: 0b0270f568e0746fdcdb8d5eb24d0b79fc488985 (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
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
<?php
/**
*
* @package VC
* @version $Id$
* @copyright (c) 2006, 2008 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
if (!defined('IN_PHPBB'))
{
	exit;
}

if (!class_exists('phpbb_default_captcha'))
{
	// we need the classic captcha code for tracking solutions and attempts
	include($phpbb_root_path . 'includes/captcha/plugins/captcha_abstract.' . $phpEx);
}

/**
* @package VC
*/
class phpbb_recaptcha extends phpbb_default_captcha
{
	var $recaptcha_server = 'http://www.google.com/recaptcha/api';
	var $recaptcha_server_secure = 'https://www.google.com/recaptcha/api'; // class constants :(

	// We are opening a socket to port 80 of this host and send
	// the POST request asking for verification to the path specified here.
	var $recaptcha_verify_server = 'www.google.com';
	var $recaptcha_verify_path = '/recaptcha/api/verify';

	var $challenge;
	var $response;

	// PHP4 Constructor
	function phpbb_recaptcha()
	{
		$this->recaptcha_server = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? $this->recaptcha_server_secure : $this->recaptcha_server;
	}

	function init($type)
	{
		global $config, $db, $user;

		$user->add_lang('captcha_recaptcha');
		parent::init($type);
		$this->challenge = request_var('recaptcha_challenge_field', '');
		$this->response = request_var('recaptcha_response_field', '');
	}

	function &get_instance()
	{
		$instance =& new phpbb_recaptcha();
		return $instance;
	}

	function is_available()
	{
		global $config, $user;
		$user->add_lang('captcha_recaptcha');
		return (isset($config['recaptcha_pubkey']) && !empty($config['recaptcha_pubkey']));
	}

	/**
	*  API function
	*/
	function has_config()
	{
		return true;
	}

	function get_name()
	{
		return 'CAPTCHA_RECAPTCHA';
	}

	function get_class_name()
	{
		return 'phpbb_recaptcha';
	}

	function acp_page($id, &$module)
	{
		global $config, $db, $template, $user;

		$captcha_vars = array(
			'recaptcha_pubkey'				=> 'RECAPTCHA_PUBKEY',
			'recaptcha_privkey'				=> 'RECAPTCHA_PRIVKEY',
		);

		$module->tpl_name = 'captcha_recaptcha_acp';
		$module->page_title = 'ACP_VC_SETTINGS';
		$form_key = 'acp_captcha';
		add_form_key($form_key);

		$submit = request_var('submit', '');

		if ($submit && check_form_key($form_key))
		{
			$captcha_vars = array_keys($captcha_vars);
			foreach ($captcha_vars as $captcha_var)
			{
				$value = request_var($captcha_var, '');
				if ($value)
				{
					set_config($captcha_var, $value);
				}
			}

			add_log('admin', 'LOG_CONFIG_VISUAL');
			trigger_error($user->lang['CONFIG_UPDATED'] . adm_back_link($module->u_action));
		}
		else if ($submit)
		{
			trigger_error($user->lang['FORM_INVALID'] . adm_back_link($module->u_action));
		}
		else
		{
			foreach ($captcha_vars as $captcha_var => $template_var)
			{
				$var = (isset($_REQUEST[$captcha_var])) ? request_var($captcha_var, '') : ((isset($config[$captcha_var])) ? $config[$captcha_var] : '');
				$template->assign_var($template_var, $var);
			}

			$template->assign_vars(array(
				'CAPTCHA_PREVIEW'	=> $this->get_demo_template($id),
				'CAPTCHA_NAME'		=> $this->get_class_name(),
				'U_ACTION'			=> $module->u_action,
			));

		}
	}

	// not needed
	function execute_demo()
	{
	}

	// not needed
	function execute()
	{
	}

	function get_template()
	{
		global $config, $user, $template;

		if ($this->is_solved())
		{
			return false;
		}
		else
		{
			$explain = $user->lang(($this->type != CONFIRM_POST) ? 'CONFIRM_EXPLAIN' : 'POST_CONFIRM_EXPLAIN', '<a href="mailto:' . htmlspecialchars($config['board_contact']) . '">', '</a>');

			$template->assign_vars(array(
				'RECAPTCHA_SERVER'			=> $this->recaptcha_server,
				'RECAPTCHA_PUBKEY'			=> isset($config['recaptcha_pubkey']) ? $config['recaptcha_pubkey'] : '',
				'RECAPTCHA_ERRORGET'		=> '',
				'S_RECAPTCHA_AVAILABLE'		=> $this->is_available(),
				'S_CONFIRM_CODE'			=> true,
				'S_TYPE'					=> $this->type,
				'L_CONFIRM_EXPLAIN'			=> $explain,
			));

			return 'captcha_recaptcha.html';
		}
	}

	function get_demo_template($id)
	{
		return $this->get_template();
	}

	function get_hidden_fields()
	{
		$hidden_fields = array();

		// this is required for posting.php - otherwise we would forget about the captcha being already solved
		if ($this->solved)
		{
			$hidden_fields['confirm_code'] = $this->code;
		}
		$hidden_fields['confirm_id'] = $this->confirm_id;
		return $hidden_fields;
	}

	function uninstall()
	{
		$this->garbage_collect(0);
	}

	function install()
	{
		return;
	}

	function validate()
	{
		if (!parent::validate())
		{
			return false;
		}
		else
		{
			return $this->recaptcha_check_answer();
		}
	}

// Code from here on is based on recaptchalib.php
/*
 * This is a PHP library that handles calling reCAPTCHA.
 *	- Documentation and latest version
 *		  http://recaptcha.net/plugins/php/
 *	- Get a reCAPTCHA API Key
 *		  http://recaptcha.net/api/getkey
 *	- Discussion group
 *		  http://groups.google.com/group/recaptcha
 *
 * Copyright (c) 2007 reCAPTCHA -- http://recaptcha.net
 * AUTHORS:
 *   Mike Crawford
 *   Ben Maurer
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */

	/**
	* Submits an HTTP POST to a reCAPTCHA server
	* @param string $host
	* @param string $path
	* @param array $data
	* @param int port
	* @return array response
	*/
	function _recaptcha_http_post($host, $path, $data, $port = 80)
	{
		$req = $this->_recaptcha_qsencode ($data);

		$http_request  = "POST $path HTTP/1.0\r\n";
		$http_request .= "Host: $host\r\n";
		$http_request .= "Content-Type: application/x-www-form-urlencoded;\r\n";
		$http_request .= "Content-Length: " . strlen($req) . "\r\n";
		$http_request .= "User-Agent: reCAPTCHA/PHP/phpBB\r\n";
		$http_request .= "\r\n";
		$http_request .= $req;

		$response = '';
		if (false == ($fs = @fsockopen($host, $port, $errno, $errstr, 10)))
		{
			trigger_error('Could not open socket', E_USER_ERROR);
		}

		fwrite($fs, $http_request);

		while (!feof($fs))
		{
			// One TCP-IP packet
			$response .= fgets($fs, 1160);
		}
		fclose($fs);
		$response = explode("\r\n\r\n", $response, 2);

		return $response;
	}

	/**
	* Calls an HTTP POST function to verify if the user's guess was correct
	* @param array $extra_params an array of extra variables to post to the server
	* @return ReCaptchaResponse
	*/
	function recaptcha_check_answer($extra_params = array())
	{
		global $config, $user;

		//discard spam submissions
		if ($this->challenge == null || strlen($this->challenge) == 0 || $this->response == null || strlen($this->response) == 0)
		{
			return $user->lang['RECAPTCHA_INCORRECT'];
		}

		$response = $this->_recaptcha_http_post($this->recaptcha_verify_server, $this->recaptcha_verify_path,
			array(
				'privatekey'	=> $config['recaptcha_privkey'],
				'remoteip'		=> $user->ip,
				'challenge'		=> $this->challenge,
				'response'		=> $this->response
			) + $extra_params
		);

		$answers = explode("\n", $response[1]);

		if (trim($answers[0]) === 'true')
		{
			$this->solved = true;
			return false;
		}
		else
		{
			return $user->lang['RECAPTCHA_INCORRECT'];
		}
	}

	/**
	* Encodes the given data into a query string format
	* @param $data - array of string elements to be encoded
	* @return string - encoded request
	*/
	function _recaptcha_qsencode($data)
	{
		$req = '';
		foreach ($data as $key => $value)
		{
			$req .= $key . '=' . urlencode(stripslashes($value)) . '&';
		}

		// Cut the last '&'
		$req = substr($req, 0, strlen($req) - 1);
		return $req;
	}
}

?>
Aؼ !13=Mv 1ؒkaSOpPle\ qp!=ysatFy9~AX=g:`Y¬WM[hIf[ #"Pڝ"[p!Fw6WfCǣakȧ}JwlE- Ls]zYpI 1SoMNd&mf,}rSA:#;T>FD+:ٰ=xy1G1dƆ`Sc*ېQx2wOG[/#dxlNNGVp'RP:C*wL%d9j'޺q%9S 8}73C;+UB3`0t<z >p˚13Y'FmUy|D1<9D]+Dǡr Na! b >xq# 1w B8{t`'(dD̓}{}( ӽ,6G31 )@.+{)xWK⇪yjVX+Ӊ[bzu =\`w-F|$d7Oqds[5nP)*8⌑լxmFqZ'T7ڢLDX qp cM(| C!.Оlu MKaJقZ8\LM~kl=11i#"8 `k#_"%u*d+3ŋ8NNae= @XtP;@8eQV>?m\o*@p: (|躍9@,.^]QÙkϺb.c#z0xB]I8gM֞\(n)okNMxZ(cxx'*% 4_NOr2(7g0җ@ ڌOdFq>{IqymzMN`$_Hˌ/8 Z%A0Gfs^=+Qv$_f5*o•$MOond)~E3@"(pN=QqSL: o8 YxEGnV xQ'Z&d"xP(uE){M24AzꍯcK[ uZ9r*,^l\K._a W!yՆ}0o!B"F"axEW-ɊA[wB~ mm TKcp9Ḯ:5fWir1 4 ҿNOcyކz4XTBs57mEA7P W׷i9lfΊЁi{ӘmUc2N~!A~EK3^yxzn53^w?AT?a&^z P z9j"K#f:n+L.7~Y9lt:.dv"Llٮ>.HfCt<}}| rih+ugFBXj4Ȃ- oPdM:R#L&&8cCUφSˈ'[q1 acͅR-]Yo푡&lKZ+7hN'_TqUc}⒫0ycUVΜ^1;@hzUID T(j(jяc,*{a獰6?Iђ aUvWtBfZ `P,aÀK^g qn }ok|4{ɋԄ94on RT9/j3 A$OVpECu,MBaM|i3GovH@G D(KeGVW(]՘-+8{(3mCnPjzC@q{o'K)jXt1<'b ]9&/ |h1f!LoR"! +f"'ۄ H=SADM0}Gs4Sq} +)9jP U}h0a(qR$J=o6K|p[g-_-2B5U9!]&J0gZ<'8I~/=|!kU Z7 {Kco1~T d gކ/icꀽ𭖥H]aE;Xym,k콌qC,{dv(vleHijŪ~޳dy;͹B ):MƎu+]&ɺrT`l}J-ꬥ'7 -u%LpOGbd̓}P҆~YBHGM)2BF{?(Wg+<_-qchEfw͠ZvvbNB^5W1J^|hn!Y-PɥeH8_KqUiub|%m1._vf˸Ab8Ϥ@(if2s^Q\[ڽ^G⪨.VshFw<6huFȓōCt/Un5@p'v`NV P gRZ\AԊ2}m5rFM GHm~T.Z)|ڭ8} ։F n( \@]K\X6A/'h|%96YWMb0Li;yPx͗qzzͣ?M'Wp&4.ɶL¯ Tv֤4䬵e G >mFsBy  E_ \{hog W 9%ғy06t挱UVoV axz&ub%`|yؑf,Fq5ԁdOa})?o0])[,82dDMpLo! oޠ))&OR]2ߔNUHEJ\n&1*W+I:ƎL9;ԍ!']/VL֨̑Df0/PRwҵL|?&( B]Qp˻=nH#Ju>N3j<IXו8_gW|&jM(d!@&,x(vv7]HޗTuNX4Wײd$~!6xnAK:]Ow1#=A5mat#!@1uc ˜S'n@FYTmLa|)tshy#'L9,'W)QE@B|.Z X"#["2d2ŀMMUwNId֋uV%fgJQG K0VBܥ&ɡ6Ilp{lPp\ZI4_YC$tR߸| )zf.VH[Ygt*}44׻79{Yi./` fzu"H8bE_WC% .Y\uH?~qt_)GN֝jsho0SB 1ZDd3^B|wh障%M!a^qoe~q SU\PX0)ՋݱUa%1+r~ְoWY ᐵ'ݑ#x|bFJ+*QƠi]Rw.g^P{sT@Lg$??5:@;R&_3$}0wςⲈCPsX>{"WaVlk˃;b -QE'#ţ*@qҵY {ꝙBuR(~ NŖ-F_GOý-5DPct!Д#Îf&yxCѨؾ`te:~C">;֛^-8⩋᫒YˇK}&d{ 9ds؎*mn}KܰVA9R\?@+#7Hgh)89kڋ/?o7ERhLt T)(">ʂ5s\Wt%aI)qĥ <̫]S_SPF>l@ijI:譛bq/3[=;/OEYHzvTx!e2w ~יǣu'ÊzS5#` \!-cqCg܇;(q-7`+zY./fSA_#Mq6f!j%lcw~Onx2 '-z'j2GD@^®K_^B +i@+(ʍyH\vJEo֛Gtڍ2" F^I6 < 3DMXfy~QgE#5v\ٮG)*Mv:lZs$F5J٫  t_fe5l6Krෑ痁9BU)[9^ MD&ˤaBk 7Uc`` }24Oebբ+@-HoΣbǗ iO{le$UmH&m-.=OsFv.r`l{9Pq>7.=Df=Q3X^'T۟<'Bt E$AeR} ϊ@'hc;qW[48]7Pk<%OuU@N%(T,gs,? W?sOG7rS<'t("ɻ~Ma5mrp9uF7OT2zT46"QU ejwn/o! F~hf^MWƸA+abni|0Su; E @髌 {jj#7wC\JvT|y͸W#6b2وf<ɱIHķ6ElȠK.:x;ۂVgf5 Snj1/J8xLcB=NV$Y2=5O0x$ ݗz{}]ZA|ŸW )0 *ղ@NCF͜*sN(ꊹ^inҡXd$N0}jWYc寘=.,:U{] kц!ExT7V `}@ SP.J zrT|ep<˵QEģl uЕ;N\/,ֳa[\ҽPMeIalb"wzluXR)M8fÊ/Jf0 (:h,8^yu !JeAH6Ȓt-<+BYGX\{(b;~hte5{j(9}1b'SwWF#'Sx^lԭ']:\DEOV 'c[ @BY}mj9{H%;(zJ@lA~̃h:$D.E=ltfobv%PpԆh䋼;Vּ~p'l7V:`_bw$#2o/3#:2>tݷ9A&+@onŗa>X2_7 &K@gLځ pHxXqJCg7EysBֵLCCPVs{ќd!}S99 q YeSr6a}mL3^bc@VLlGTC##WRQ.M UwP}V) rfhncEQ*9+H$a smd`LJ'rMuMZ+u)t6,e)Pb%jI!݆A^w 5ÄE"\1m\eJY;At$5aNe2}#GsN㟂ara0$@ @| {`5/ I}O-ݼ Qq,=|o>%~Dd1:[9""1WЕu iHl: ej!ߔ\}+4v!pB|9Hߣ%g"qP jʧk)`T͸ei];xda|dNIdqifKU?k6D) >ArDtz46]a#\,l(2#n}"`Kм&C({6+@=4oĤ<(h@.Ъ .>w4P- f-vpipGkF ¨ D'Ћdr5?F-F5iwa<,2Z[,hgNmHWJ⚇QL.@K'ƨM&sEYd(MHZŝMg2$\3kO!.܄]u֔l7(M6eu~@I?D(B ITgtq;WXHt{$gǩp6d)sr o-P\6y%f* TOuvB)d[WS7ވyA־-d7-h<:(v12=LS$^t -XdyA=̱Noj>s>&RlII vFx- xG=BFQ|"j{*!g,_E-թAR>R-L3Y郅A2>E_ ]!: dA>\o,`>ݸG\@ኈ{A f}2 WroI,y^*:gV p /LF3j5ŕEO& 8^?3x.,-< y ;MbQC7^:Fr9VPwah+듓=<4qXj[uPm "^9벃W;y{ofẝNbpyGO滬f$ h#l^fQU6=;9Ȧ,/ ~G"m^27"H ~ B"p\m h*ۓJp.tb^-?#̹[ ^`&2}hO0- /rrHuм^BWv( ƞF`(A8M#9gu 8yaj@)7<ۡb~:5B~TlMuEO$'fD1;s9m=5*pr:@jrn)ƨZ"ޭĝ/G{B& ^..B~fQ|79:_)E=.MꫡA: 9/lo?݈AZCRE$DV_w{*܄Yf1 |Ma5PUhpҷ~w?3Cxۏ%SS(_06s5Kvx銔@\A9Otc"Z$J q y O20r  4~mfHlPEN-!@X+kJECпOeøگ 9Lӝk ŅoT?{cR2wxdt2]U+"_.sNn3;s.)Q}C+vj֤=R(\YVZʴs|d#4_h tHOVP]0uZ@fQx+cNlr3@18Pݒ/%>MzK憖L IO MW: 1h7=(E]w10W߻H*=Pcs#l<볭㒠@ i\t 8HtӚ=f[iDx X)n[?UO߮y}3xLa-2[.H"{v;샗IL<}\(c zƉZTQ垼p83"x;+MJ ZeU3"33csNy~m҉8\/>%{levg}uК{2$vMε2AlqVbjI[?咘׺.G"9zhJ-HS}8YfH;}%sX`Yh?Z1x?jyY!)- &ks|]yD~njR A9$kuKf\NF);EN,v/rykVM,zl,eO/AZ,@Ʒ[6 S pǐzޒN(rz;Pn2= /:iyPI>Lg*Vk 2%'rDZY3|IS?2-$(7Cr q̶,jn2#B\~ۇ`w2zCqH(_*WH6۠-gZ}t27c"-B(w<DԜ Z\gˠ43N=,|D2 h$_JTa )jEX'i4gH8$VnM6j{<7)Au8u&^\"8I(lT#}P9^PsTiP+ͨ `_ed/|D+޶#>L  6Y w30(VZ@l"qv4`kiL}XЄ IANMayN6䎡${M/8|C ǐ`n z-y=>qf)|^Ԑ+Õs!Ouc[?S}^\-טNRsA%ՒxFUʑyۢ@IѰ.@j8FL&WN?se SMv ;G7U@5Ȫ)ĭ‘RM.5 4VV"0+Ys_̉рLz a,tihA5;̈́_۔?uH+u背ylĆxK.Xi.Ԡl IhO\/jw@Z(= ;OLh賹|>noN?cʦpJ-|t!ovX "&wZ$qNT2PՂ,Wh(A!=΢u/eu.~F|Q+)& 2ewtb$BWI r(;ˡϧG $hTpC؆Ub(BXKiV\Y,b:g=h*ܜYD=j_f޹q b=?ov zx!P2'ɵ7k~;< hAh{T]Z#` I<_@8(Xn6ݫt+jdK r_Bc=pZջ|$}Lُ<]楛΂҆P%tn%)4ky֕|qǠВu/>WM"`yQ>mйNYÂ6=~!b[9޷gDLy,S1A"/Ԩbs+ hX<Ñ4{{Z UI߲:FO*x> ºRM&#cs !UTHdjR {ҏ:H ŵsue瘇B)<=jL/}dA]j}ys1(w1Dp]R v_0c{98>y(]Yʹ`QjR޾8,9h $wFuS@b܀]8Q?H ad,՚4ǯ#o|~^< } G}!8ưB4Bs^QO5VNr%B6Wۃ|dV9aor_%qIKY&fZ;W 5 @Y.{7gTب#ݞI)hNXm3u4@d-~󥔌Q`*T# ;Q/1:;1Z[_R!A๞'ȟl[h\rNឦ}CL'G~!P){?@P*n)IM,2*&:[hᐛz$H9|p6,YRE{Sأ4*Y.N=;q;|8RJ4O@[lV-q=86O5zDxh$rڍ}粫ch 14CIa Y^̢Sn&ɿBCfyt9XMi|s9)5H''O\I2IqDG9U9אa̠|z2B$!(<%4 ֪JdV]y%NUFp[UeY#Ǥ+RR_Cxd1-؁eONb^z lwݹz}i :+Nx$.*c(bRc (sw'4S^elюQ=4|_LnK014خLT "|P|]a3^8(# &{ 70p9vdr4lĜ&7Zk>4!:/>].LlVdJTO)zɶtċ34@c=:q`;3SmGh `+C\z[G:}И c *L%?U8y+21߯?c"?%\<OIW7"<%7Qݝ?5Ea"Qֹ*`HJq_&Vѿ[1/߿OAu-:}c.Q 3)Ű<9I)kܱL @CU;K oSq /XKQXDsL$rҪ ){T+AwH&x\dQz t:kSNQklT v8T1"YX_uһ-y:blpV<_muecp\Tݕ(};/ZF.9fNA,qs>I2͌TˡHgƇa?czBs%Q)6)O*n3ht&Ӭ0DZkOVIrXn:/c2BiL{AL,bYkԐDl܉ei5Y)`Q+1|3*a*lā `%(@M+?˜.Rʗ5'x;&䪿APR:d U<0gwe?"-w6| Wuk, uZD$< i^%M\t`J>—# #fӜtNçq;2Zi mpat `E%b1bT$4  h_ J`uP[~Vאj| 2sŪ)*9(;T>) +]/%!=k29PKS?dJk 9CZt%ҚVY~4Jw\eKY~ qN}MͶTFF#bb#iqsiٍ*Y)3Z!(gP8qV]2)O]5~Bja+]VGߵ^)|E'#/-~S,V˪!ǕzU,Jyh"l>7io\r5U .mҘJgĢmL$'`=,~L5=]`=Rvmz eoP]ο(ġrA:$sI,K~Kڳ0NȘHY[W oX3s̞V n‡]1B^;O0e<_([8'ג&z]0I@j}5mf;SFq)Zt^BӼ/>\4mk30%\.YtVk2۫v;V&|?<&Fң[}O_ñtQҚQt"P@m.p>)=k ߺ$I*}-6[]i ~z*snam93p[$1ƗQ*29^2Is6YIg!gW^M`D6?tnKe|G ,BJf1ɥVr~?[ⱷ*@ 9A x+R&r P`k *'"J'.ǜ{y c,oDsȉOR"tR,f-'k/,7]i5̗ FtTxbg']Jیuehhe]978;?A[.LErGȶ{8v9ӀI^Ntݧիe|c`R'ݣ`ļ?18-tt?A^D]J|E& ԬE&ڝI@Y# +f^kY ZhO4b쮍'p.OD6a˲aw ʦfmodm˶0&lNTSvs~ͬh.fN*! +>"6;A,F8q%Ys[Cbځu |۸MҽdiO@`kO/i:]~Y,j^ɝWb46CM;1HN4) ρʹ 7o؜J&)дꚋZcww ]y#&G>[ z/Aj`pJ!`=!SQ'xMX[&[m[Cw{w)};%km(;󉸧g|b*lHoԙ$WUR3'78r_Z4,V3."Ĩ5E#]`8AP-hDl$ à]{HVL0Ti(*}}bx,NqYMO2/:X =!֏ g[SQ(SvD tEV '/rByE@60[@݋@܏I[ɖ4,tSbǗR1r?dž_(2]ҽ7}I  YroAVALCul y{nUyI~ !Hq>ԍI z8V;[Cgu A+X>{Pilz٭(hUH D,Fuc1!T7"VXL"к&WLXSLhHi$ ?|LqGN1B`)6o$a eyĘ^o`3jRM O%o1|;`EںJ"t{LЛv?+}i>pop+$푸=B:*kZ]ܼnAݧ()f1bȈFlPEfuJ*,; x.a=o6zc/.K KL"96fƭLpP}<;=kJquWVr$YFqp P,,Q^hh 5(nY,_5wL`jg jԤVEw̫ӝk"X+cwQǢF` l { ?w+ԪWd+ ET~h67epY.g ɕ9Y//*DŽWm5b&tKK 2Q2_}uGDfR.f6E_15"4y+a3rbo-bPj.Ëv8Us$`G&VgiՉ54p/$ܢjb8M|<O1ɧ` [VsA9^XI[w Qa-%E6 $2Sa#+no,Qxb$/y7 Bpk)l{9NuUbN_ v%c괢N0B} }UXZ}xL_9|;uLPp6 sg /I9[#+w4Eӝ4OPL1ZqU12J,# (<6-[|39Pm# "^+ 3H:y[{'G3Pl ~[f*K0Ҿ y$62 l8TZLy1[*cCq̬HEXͩYjyb),(ju4HI4}/Q0ddW$.b_6 N-Ĥwd.pT6om0D<Y/n1Lmd|8S4R@H+&_ {m;(S]>p9! :P09sP"Z :1~=(׹xٜX}2\/מF]IoTif`x=kf6_,iQ\[9lô}.60$LV?P ݕs[ D`xyBl9mHBgҽO7ĀÊBE/Ht[ @\W R|U9bBTMNdbRZC0cm}^TCkoy9RR 2= Zc ER%zi`][eukŨ~O zb %k,pQ b̻ ˔@s}hRc/(m/=u=i$p !MUg5f8h>&n 2)j㼼3qSCeTk9ip~Ռ NoՄ J@X v PN>J&X,O|]VRK[V.?ϭy?ipZьK[^Iodr&~]xD$.# '6_$S5Wyӈ&E8*T.+xb#23G?j*Gڻס@ubV0̚`5]㶰Fl/Qd7r>^ #6VOuGeYa01c~azV[V<)_ofz8Pܐu'֎j3c/cWڀIBM f^T%SP@2#rd2 \RحA; yk"t٢B`fuB2YJn؎#ܼKTo$Qi 96iC?V'uj\R{qLUS~Rtƹؤ7h 58kRkRzr97@Ù ^ܓ|5L4tsӵuXۄ(o #iG>FDeT9`v0@XYHt;@f~sJ 0eBp!}d'e/Ϻ`j9V`=h5H![#e ?rg`[s@kd֔cM#vKjZ>.;F}նDɝIIr"iTK8IQ kOUkKC_l>.K ߿^zfҦR`L_zjfm>&2.Yߣ lwW&?Yum~QTI ^{ Yҗ-ܤ[+z~\gOo:r{p;3J/Z|-lk&+m&=CI -Zf&)0>#=B9,Ph}H]ejWd{R83"q$Kft>$RTشzi \cefKt=r dW+3-8gEjKM~n촯wĒޢ9$}J vZ&h*0Yz(ZyO#&ZAJٕw:ܓG_v ( 4>/L^ބTKhGu!I) ; HÚiH-Ec.Џ'c2~_]rQዼGeTM*(aRW[,~l@@'*z<51H%#ZA J&sgi[حn.qǧ`9O14o6EWVTdWK(څb79s(kqB 󝬴~o?#WJ+!g,,ND0Ӳ¨$tr$hPD̹#b ^hnR[3}TеL=}LaAO"j=њb8O}5a <-󭁒fgtc;tO,G5 .XE lU0ןuO(ly9EΨŐieRcDbEJm ƫ巨y*2!>{f."f۳|>H7XFyS(m~=u520e SZzw$NnX?\UNCB}vZxJxnjdl?Br$j\H\*Ǥ腴Ӫi.3Xvi`dw](bNN eQn댦obyD 8ĝf|K]'=01Nɋ@B{\92,Ԏ6q9k<Gwpdu^o$s#c6g@Q㍌A~m\jk,!~]]aK|$?:@ej]sn=QLUyt@M᪋`WIdAgp#-y3R9YPo<"!-:s$+!C A/$\S>725EcoJbHvrYl(V} JUs]Y$!4A{v[# gu#Qc1\/ᱪ<>%c w'mق{ kj;y{Z8mW7 M`OuVD?(R W¶|7FDғ}r޿TX&+[5D[_sm*bczYlkj;3bp7g`[<T&pK1O˷ͫn9׽yK~a Ce[~g63>E1> '*9opN!?FPn4~(0׾5oKJ tV4#WĠho/JBڭa%ג94KC?F!ѹ2]o{B{x^Gܽ)7WJ);RǧZ:*8$pK3r1yWR @`/c 3V݉B _KLw+TnAgڹa;L;Li'(nICi_A[sV-X}#ǧәj׮)F/5dykn#M0MyX,تdgU^l j0D!wԣHWS7cYWk=O_9>v<0q^9/@ @eG|.Y W>Estijh &rqōv;yn,OkL(ݻ ]@j.p僢au).*ПQ_ zDgf Ql$cqؽw'nj"`0`Q^zsxd`]] Qv,#.`\`{dnATI]-"ւ9(ٚ P26hmT.NJtNcxʡuf [z[IR3θH,퐋BiŁՕ@`Rr?cl%'Y鴶sg#8@Qjfg:L yB8(pe&[mZ*2 S~:YCe-)Gx4 u}lI.{xdZ5T+ɠ q#2AT&0zmWCyG,sIi"Ii;ZGXZi>Z8&w@q n-#ԍS9՞~l7B6A&GߦC%jxBC"f\$Ud C5[Vpg ^ds\AYuyJ@}ŗcn;#~`DC[:Gbw7rc' 5z!lؚxzVLIrEO|t`j"3Bõ+R{!x_c]Sݶ"C T 5#+/s˸^l뇑oagCc%;w?#NQ#"eI:$^w=3}¢ W 7TL*rC[0O7̽׻ˁc8@\79Γ>RM|B?<$65q^N]vBvIn#>zS^2Ix<5a5iOԅ%H49\ҒtፓxZ5VKΉ5г ާ+O)}12 ,a _JŎ tسd{eqD.O/c[%>ꑆ#l8X- )eݐRoG9:pQpLcq)(~K5ZՅя`k4ӊuUjf8*nvΠWw" KV6NTbnDGꎺ]jodRM~betz6m[Ƙ%؊ȌLJ 9%q9 hoFH`ܿab= *= F" xiNi{w]=73p*yI IV+P%n'\J8.-ԀM慄x40^U*EMB 9*k׷"ǃ>>`Î33'*G1[2TٻD?^ aEua:!ܗ 9u aͨP&D+J!d .%+̴@+eCpY'\Tj&!8CI3N6eunw{^ JhվM3gM˩!Fu=s [쯨?6unq&&ʖgcx[n !(x?1s, 4q7+Jxhv>pIkk !a.FQs,i'R*qyCBs1M [537AnVF^bO`%`&YX^yEI%VAp?uK3R53rz -53 ujPn֬g3/zNff(3V}Qe&  x8IdȬykXRv180oa˜+-N+,/5$8bs5ݞp&bVj +`th5 ^ɩ~GŻ={܉7$=UHk٩Ek&/ɿbIꝲRoݮݬ"pt^8s6eKƯTwxbnjfݔ'>}K7TơRt/GaaM;.6 033pv נGˣ粑hZ}pϭ]4Px6؛>ZQ+fd<9Vȟ[Y(@BAl5L7_$/bD_yI;O\m S{κ\꫞'o Ԣs%WۍL3z +]JD/1 PX՛=>T%д} Q"U>AKE~53Ћy0#1 {+:f栘Q&0ZUIzYnAҴ:VΚ-7_UeT›ӹ~Au[\]A@Ssv5)]:}T>`Ԭrl^jk8F'lƯg8#εb2K{iYm{8W!7?GoB]!y LěċfQǰj,uHr5u=&\vx@63ߔ6g7TMept;ݒYwI7彪b$PoWId{W"n@&}-۪[G ly9IAyPen&0*2K (x_G$V׮R>'!FԿ VVӜ5H~|av0)ܺ 0(Ά]_bzRI s#,~RgIqx/԰0 P uoMi3jWQJ}wVV+6h^5a -U?uVCB. /A?5i/CIV GA M @΋M:5`c7T1p8W3 '4yYbȸU1?.D5 Y$Ri:FYSMI6əVN%ooEjݙ %Ykm;̚{[0"t A0Fz80j]P;Y2Vaca >z+bh"/hj9ȼ\@(N9"n5T_8o_sX]Dke /~ڶƇ?.rm5Pn*}G E5e)iؙ$;`# xIx{,aNj87_a߲Z;9zdŰٯGޗ=H"Oړ/Uw۵CSZ Byy$yskD ;@ TS;2a:ʬX+F|93Z>,5XPoVŢk|Tx˙ɼl^5.=!F]o'X05A5sQNJ(^]FIӽ1W9il4e$3lH_a֞$dڸ\үߴz7Rɭp㕁EWRCno|{+ոg&kR\SԷPCEչD" ҿ-='>/>1 m'էϷ#(Vɚ[b1F)SL]5R:HOT^ IȺ&ڿ)>kEkOV~~ qb ɤ0= 3e-CBy8(m}Jc?*5 U("ϵMUKZm)2v]&{`Ti㺧8~ѣ0 M= NXwh'HVt:5?7U 8+ 0B8sp v-}6&$SgR3@(' dT6 jW8q۫JÕw^NɊ\ɝ<8{\Ǣxb3Ieso eAѕ?Df;F.P=jؠ"71TUw?@p( fN՞3 {O΂)|Ɍ?#y魖I컥MYZ:sokĭ bOX^-Y?qDZ0m͊_҅ 6: F'zr{DNV_d,u$'* ~+Gb`Y5;h8z d8(Xb ΅O= tXY1 B,Rrf*efL0cNV9ZR/MI I WMVBH{d"s0;Z6rԥ]fmˤ}<80 \81= Ipܺ\RAyF|P3ls'tI({|ru-!cA/᫜}{Bi{,F"5מˏ!6u@kxh!M'A's*oʜ_zn w!J.G #ʵREp=6l@bl͍D>5MQIHQm^O>B+ U-0Qc/DqOdtzBYsπ%?Hhv1p@O ^˝vvi@;CuxP~FigȭiBsx`іEt6wæbu"J$$yŖgVt8h%-2W#%@͈YnDCvFԺ=|O"^l'[4sAPg"=:x[ ArXcю\S=v>{v f¨:~ >b'H|33YxCV~Qk] +>5;{0$\dm#%v\vQ!(Mdl[ؾqV峩7c9v>]5Q} Ma-񋈧*`сq d(!XYNj@/v ƴ6+uя"/K|&CԧCvk+} Ua~O(i|S?;,~Z{ObfvP[!D'L6aG,\H\ DWV8 $.\mep-}g'{?(Pf&q_1GlT^,fg:JA6;Jg:1v]dS@t2|k[U%Jۄ<2oO^h7s+ZC.LЖXZJqP'D4إq ̸ u\ uҳS" 9!}2,TMa=9^J}(JE/t{SqPrUt+%tdTIٔDyc!trR%̎I3P hknAuɏc~0?B'Lъ e?_2v .sN+N>7V t@RpuŒN=t;¦v ]`uFbஔʧ"uX\V_8@AֻJ|DK0@\ -~ay=wMKQfDt~qd"+ߚCr2,-o_HO=nH#Iu<99fn{,a lĩ9eK55/Za0dH42@M0c0P|ǁRCtۦ䭵(lNK-[e#)ì`ۢ'괲OOْ̮YIɔ5V{XgRh헼t vz/s8?fQr!^ 'n(QpURKs8I緁yX2횑_ 19>+ |6W*^SsΓ !s!n,|뷗e${7xAQ&n[,M҆)V\[J$RYpuhYN&~s;ZBT6`LODC%,tCiG5:E(s:WZR-20ʯ*K34HVAE?dy1\e0" H\eݠ$@V;LxčuE8?W Hzsk4)E__)X R+~ԘaMm1Ԁ) ȓQd C m1atzV+3kIwz*W>~*D qSb"*Ǹ7\1C}E-e]}.O!.lU۳ELNWqh}*""x@$=<d4CgblŠ38Y$4fa j -7045X{<+R\<:_/Q/6 0S*gIFTZԱ53](f>DJ)b5![ 2D`^M}dbBFȶ x_뭤ey\'Ȣ6%tmCz÷>E3hO>sbAݾD>s7^fd.P*ijQ^]P&ʒ5g`2IE!Bx%0LɬŅ :xh@;=fQ+㔇1"+#e8SRF p{"B#>G&*"6Nw6nO% z=*󹸀 VߤGH. .Z|QV{s?.}&l{u+fc;F h&+t zB$2 >2NLɹBUk 4;¨KffS{2E {LkgՁ@Gx vq sn}8m<ӈP+\6y*|nup<桼q/prNqC_(QX?6UھO,-@P21fRl:!e5/9ݗ<;hjKKij>v_-yQ1x(מ{~Ec?;b<\̮^fTVUzks9sKKf=p - }P(/*`J5gxX(r*0@$KT2/G&( Ԏ\K@0DH.]p56>_ɊC!"UIy+C ,-&?I^Ӗy SBn EkVΚ9`rN5FW͈U |n5Z_>gL4>դ7dX'! 6CA)TJL&IڛOo:ҩ0$ c(t6ӠKJ^:%IKAωZiKz'ܽG\v~ӯ/<Ȁ=D%-sLM5 NǟHPm+O0d4Qɤ#YVC5,][6B_?EXF rfp]A7٢7-kÐ \ezdaFbj̄Yv?^1~z-jQ_g+ <&ڈ 6YF6 z`0ˤ%1 &EOB"Mi A b.d.rW'r`{h1Yw7cևG@&v*~qeL$]O$\쮳hȫZL_}`i.BJ_]?0 &\nfviYn3;gF'd*XѸ%!5!%urbFA eղ }kӆ}J V2)$g]fz <$If2.oȨW9֦Z&3 rr<$q#&(_ vᶞh6ɥƦiYK'|m{qVZ,u[P/ÈRb,.C0l$y!-c󳈻fvuy$gheUť@QuK6pw ǓLX?VM;ćj!vNb!S{4&Aݘ7&SNmCՑr)_B}[QlSFA_-e-^(gn 6%?5Y7gңW7f.thR뙅X4xqKXXLwʱLԔ`)L1=.^;ۢxm,Fz]*앢:l]wg ][Ԫ:h.bʱ%P ɬ.)[]G^*"80 #MIP{ J[7G5Ug26m?VJNr)*c#xC`sA|BDBY TKK/Uϵ%m:DۃSžVڊId,ь9ӄתa44vKwg| _v'w64>@AB󕢃/ax4Cu­ )*j Ͱy @GS)wP.’h`D׼9.*ÃMZYdm3I2:,+WR6۩p<\^NX7 5XfVRQQ((xbRA!c b%~ !L I BH-T((b)ǁ G%U'-*:/ʢCDK/'N@@p^B4{J;g${7#ׯ 9098g|l5/I@ZPG'-+VٟPUcm'7W;DrOTw_o1FV_GC\R<{hwFs4||Jd2khĎǏ"]M~=r;z$خ-# E['J,Cz!ZyPVH OG heYLPy;8ՅՏjgfZ.idBn ۭs1%T6pk+n_j/ :!3n7T[0%)y/]A "4ߍA,qA@.!D",sף 1r5Jec!4*q%FH>X\8ԇ)Sp?Hbk)]';\\HjUzp~'H5jp}5`jiT&'JUbM .`* Xh߻T3z!Cg~DR10Cz vCj rtS}yh͍= SEeT4N< 3ϛC4V HsqT࿋]b>uXADUkg1t.}rYڶăR)8q%E R죷 e)pЁ zAj\6I]!=Dd]fSdɫ6hG3xqAs[^]АgF+AGRmx9rhEXeNQel*,Dp%( Ę=HZy7﫴V_w>ϼVt? m-=%00o.K<Ӭ6LQ\ *^UK F h PJ0xEi>|ө֦2T5׭)|WZ4-" |S  X9)QEIwBF!S{7ӗ[ME\tI`4^i~ !8]:; F"}0lN3cПA'/xRP@")4эlRwGSHFAIPy7R ;:;LP&9 -Fv-i7+HI<' Eu}ȭioPg{;k#`Lp8! hPRҧ6xw ]ᰡuWYRɋ@tCn"3c>;FK-QƜ:uaZBEʉ}ap˻6ideLg׆jn& P:r#gd{دK ) rރ]q_~{9VxD)HfxI,(s}ӈJJ9^.Sd0cS˾\ܷik?Y:o$nh݆uk%}™#ivR&QNa$=0\Dd…w1f- VJW>HYj+1 LCB5'J|'0J_3.%>R']&%7>ejPYPlpF@ո:4=Wup1m7Y/΅_eoa |{ޣƌ(Nъ@1~Y I N2I=RzsC9J4dHLu8~I$ǒ?y2?\&GJK8N٠r<Oˣk?RY\7z j+YFJɲtp56 HM1܊-˖H i\^W:](wk vE_i7!*8Ow؟-eLzЎJsNOdthC۸_,"xi/A&d+.7*asE~+(QF6̮H9 q*n{Df[!9gձ1ihmNh hSN!I=&|s>&~H++_|Ψ!SΣԪQR6,nSb7 e?)S82/HBP(d1>BTJtԚB3yE&A Rػ RČD0R_# TT$oQ RTƘBVN&Tg!HVVWzʉ٩!a%,T-mGRXT+sRDhʽ &xb?xC;,%Bb&vN?Xoxĭ}mv'z"?cچ9Oe'K=L5!SCnƇ[*҄D$ b㱭rġeVH -QnQ2̫VL$}\(ZS٥J=Gw.iM fb;BӀV}.iX0mkR{F+"N.m~BhϽХ У8W}BL'3)P0fw) Hh_ ^E옉'={kl+LQ,3|)P%8WU[rqm[43e3Ir+5ΪBL%[?Pg:&l* ~pL "3q_qE_Bޣr)ې5+Ѕ,g~:G HM:},mԷY,&q㦱"AISʴXJip b aֶ^b&{|i[*oMxFұ~S-u]Uaa>l/Z'/5b:5^;>1%xpZL k_L:zj'< c`PLl9J_5ƒٔx ,A!?l|4;wcFlU\zƧxN PI9ڼ`WGr1(j﮶;FTU,W*9eYg^ѿX)WA<(֗J+Քb9!D^\Њ2TSc&:7bvvUק!P8RoVq.-Ͱ]*`aR]d=>yHh^bYMhy`Y%p 6RٔIF]hul{H=`7aFwJv?h98G셤 raO#$>a浡ӓȖ;(rGͩ.RՏd~/e1ko$I㪻2 &{[ƥ(>XZM".LfaIA3Jhp3 c-~}8rcEe)qiwVH?n5@J s*QCJSFEDQmԯ.Қ(qů?{p (\i*LU<2Z f$2TSR*醿#w?LO>-4hMչ hJrBq^"/-q/zd]Qμ!OI4#p2 -("}9I;JBVNpCU$zաI-38誤}U);eSE g*8ǨzL#hsf{kF]F҉4l͊/ľfDG='廡*^pC];P\|YFU@Ҙ|i6Ⱦ8 2-RδuMw^68n|Мg3RD_2N~iο*k 4EwbnnkW2MR}Wߊy+X_Lh$OꊛQa9` }{շ)pqDŽG[(:Y<=w82BJB~YZ=ˤ`z%ː?t$.Y\Yn1H,j<0`qrn(zV'7W.ަ&0~~gmEi62ꁏPte;3ˮ`kVDœ$ÖKQ\Cߋ`QSc7ic!?b'ɚME]Y Jhw$nxMzCrץ8gdoDa/g EEzZV#K GEGٙ1 ˳~*+΢32{+a/JVlOS/^q>% Ok<+Ex4MsS- mDc.eDWkэR(; `լ an(sam3r  I|VuE&]˭zs?&'ht(6'4X'Ep i_~֌!.Q̭xhl據z1D.[6qP$]phDd)eF ^X  z VK|HXq+51bS98 _7p6 'u&qK L5F{71q.=#XX 7q[*;UlGB`>HF00#>$3ʼnpᡐXd!I__jd uIInK3Wi;1+_ʎ=VC^WUhŻFw@1+Zd&SbRЏmsL?yԑ9KeFQ7rX<~!7wwS ηWDZV~ a6V ϳ%D_mᒵ$?(KQ{DջSBZEH@od'n&`FRbE3Im*Ó a,tȘU>kdER'l_;&GSj2g )$I?Cy\6J]; kl݂Z(ZYk35S@l|1ϚRyVwF'?Q13[;k3 e){es`ݯB\,|>4z)pdGwK5iaԻ@ۢjIDg@~Y#Wwl6ذy倁E̚kÔGz2ha-*i:#jG@HqL,. joty P(Cz-60fh+AC.v4pqoqȿj~+=R7Wí 5;Jv}M/1)ǯ/SLz">B3lN^/*d֗$rې:2–F8yhOF!QA6,-27?I yP$iljI,`+.rƞ3=~C o23QY(ejk}K!q22Jib(,[!|oP 슘qW ʾoQuLۛU1.v/8RB_8t.Uxer.1 4j)vzI+Ɍ@%DkzC- 65&c;Y}j hl<O ܥRc)n†yF/t鮢*F-=$g=иV]L{[Fb5i D|7a-UATGB*|5q&DKްXfq@bLv}x<6f.cBI4߿[GoqcQB3nQ#yA^l]7UPh׼vGmKq~wXDDي]} k9P q8rLkiF^TJ8fEߧ}w[!KC72ktyRJMACs5)UӶh!E3Kl]pwIDx|OB5hA'2L&[jE׵$7ILN#6 Nl=ڻv<Кif/@u7֛|V)A3r~It L+7 ~ //4P4`d}iaLXA0iKyи+xDBӚHkӐE5z rg|r@R juB.t}h,Ȫ:y>5lKpʭ=3[Fs >}խHhٶ[am a-cI|]nj{(`|1o.,cpCqTsY;ڴ?q`!uzT\KDJ*TWi=ʣ+tc>vS>VoLC.2.PnL #r+ @C/$:s:ɷ0SɮO;IycFqxB}J-W΁@VHY֏s2}oTͥQU~_PV7%0>ulN' dkcs_c$x\+A!E=aCմCΠ|wvuuRb(Ƞ@حWK⤽ t .M`LHpcOn#:&+2R11hT @v:/Gf> Uf\crͧnrT|-2}L>޶ccڈeH.RuPL8Su]Gv#*uU[w!%{+V]]oQ{3 'xY%C39'䬓KFC6}"QA6jq%d;FCG" ؝ER[y1hA5 NC|aJ^i$-Qiq}hYy#vzy35&{SxiuMHGEM#"ֶsj ӂ@3q9ʞvvU܎sXʞOJ ^#79_g1">QZۼp~.>y^?4~ QWAzQ9Y-ˤ{"z`^"RFRg'bl+0͕/ ג`XR]𾰤"$W{ x;/r$C"wjM7|#Yk:13A>"z)g#O+7Yxt(Z^3Oįms0o f]ϤЩ { o-l^B/6Y3 ^DŽ@ @MAlr //&B镬X=dNyB)0"'?Zj8ŒĤ.P-)p6Hw ZlS9)$ݼ"Gųs{Z,0seٸZ--~VB;co@ g< eW'&kIf|-^V/.B[Gt ]" YOHHP=]@SF;es"p,/Wݽ#E~%sćOݮa]oe'Px؞I+w"LT >%G*}oQC.T+Z0ND1p`̶vF/2*nzb˗bī KHDam?Qٹh1Q3ݤ d\Xւ#"MԄ0sd=ʔT_JQ(Dg$mxt>hn͖qyӿmv9f`\Sx_zpqk_"\8t{#K}<WX)vUCz)iqooj.-{E0sr, _:a2\ו 7Aq 3J>>3IdA}X"pn XW.oʴD Vh9"ӕ@LK <SZ_T,}gW45y(O!_#`Ƙ 3=e3{T +Ə&?=wXĞY a Pu@lQ!cL` Nz&|sqP]f֩~ncQ.wUZ@x{$ K{OAaX0#L0|[T.P1sO܏y/r#J4vcjL]}Rz@c3YC!0ne5v+;V% ]:Mh@c J'1m=gLqxfEmAT0'[Ø#<,Rc^6W (ueˁưr?21o\YE/Ov"k ?j$|9йXғFj%c)oMƳ%(`{i!>%!󸗅Ω$cR[щO(O4Rb5B$6Ð{S囬],1$_dvQhU$hV$ JlWiYXJMOf͆v$H:kT@dH>lOq^}W.tJf,1Fi,c֬xzz ݰ?VXV9R!kE4Ïgd8ϖx{!ƾ6D3;|tTsWxsu+S_?>`JF2 C~$4)R<utxptU{5 3fWh?HK@AY>z 00]` swҎGLJ![bMyT~\ ]mS:ZbΧR@ ^"\:&Dí-WvArDoj%^I ~x2 nx U¤\85 E'gߗ`頬fc`v=&ܛw*U"KI&jF+.'H) v6.e\q]K (4MM׿bʝA2+. y֬xiK5]cSN0h9rLڔcE7?ثੴ6a(۔Y y-'OK d_pRb}o,iW,9Xzi {`VJm8|;{|F58B'*sN:"?p,SF-pW Z&Lr*l!Zٸ %^dxFopnVUu"WJ": B7ZƺX7m%o{ H4I&rI^4;TX6`pc,NNFAG.ܓRow(]peAO\Q(1vMмJY;i(?2?0=׭vI>/ @{g|N>L'o,xa6ڥrUAST.8? vP'. g=&$71Sm)H߹h<׆mfCS{5?t.;U ԘhBHy$AϲtйTK h_uA 0pXQXD"*%rFpU='YPı Vl7~:Œ!vs=>>7M3'+=Av * ŔS$jP\=ĢXdXSxEv17vH`;:Ī@ l*p$BNGSq ? .is%BըG)$ ? [$jۖ?E$ơw;mlj⨘r^^FC,';/ 0v^$?ky9_Gs,U?tRh1#VpRՑ"1)Y. fCז1b|Űqxث:%rORUrՁu7Hp\T><11ʹ~7lwX o}8G߃r8jIAH(QAѾ8!IIjXSFu2kVX?m Q!lQ$=lV9Xk~` YiXO &COh6x䥒^*m h*28Zy::Ye`?Ue51Wwu\pCpۀ۬q-~MMam!E~ A_vy?"{[sR1'Xx82*5Uٯ#EfpE >/yb!QZȫV4i.ࡺ|øA'8T"m?3ba4\.bp:3%\<£"nE*9Y%/9_/®QE1#6d{"xCc ]54Asn>3~1'K%ٹcNcvV*&٤IݜG܂2FM8 ۇyG7(4;-Z,'$LG n1 b,a !TĂ vvW0k:UnuGj.,.ڼgϺ=xAB{e{H9ȼ dSoçfX.O}.'WTU^]'o-he伮w!h\C-~\'#W<UM T](=$ܔA30ɏ"ptDIq0ʖے\S]VNR"EgwF umvO}qDw K=DΔ%\*#gJ'&@d$ #_ifZ`>q/Q[Ex:Wn̊-Ð Xx\c-ڮF7漍!Q˪4B:iYR] Fum[ƏIK0+7u-$KZR]QJ%KKxԇU(1 9d KKUu("ow 7->8nDlqhGd4 >bH\w3"N`L*g5K8_$HaA`9w%;zT ^KwST;cYzhi1PeBMLRZ%(\7xoN5ALW;tqKNʰ9xR h`.Tv }AZ.)!Z;ԾE.x 9 МhWQ 9Cկn=˳E'>~ϜA"߈[No6 sPQrzΑ`[3=fn7DpNku!sUo',׉ {l|h>c Zek4 W!N)B|_}a ҹWWAdL9&53]- 2ζlr{̡,2:,KKcp$v'= }HҊ@&]m'w(qb}2dEY5jv@ٟ襝n|]1ᩡWN0̟4r'A馚JS]*ץKF4׌R\"p cd˛߆Zma0~2\e?n\G ZpԻmedaq{VQjѬ#,bcDe rs*wEWA~ 2ts5w?GOJX2D e;oȔR HWXWFr>KwՕ1V&BB=p# u⼮3BBLPēVI95y|h[Xvj!Cn!*-GL;c͒?DylGP)HPIX90tOFg7?=ZQu ?v»_KV:̝`(%g/Y;'jgRHuB%PISCq(C[aSV[a,Kn?_~mt#XĆY$:P!"oi?*\CCBݏ £>5B$7##]H`m,ԞD#`3#icl ʁ/5,a=m1?6de^oIP=J_" 1Ηv=, uګ[B(i۠2B7x 2`zFkt\'8 $Pٖo7SwYQ25 pe8.?:4ƥo('x~AKSHE^a J!:ʽE;Кl.mu[nf;xN*,NkVP 9Xû~{Y6xKr~\o' DG#/ƑմU=pg漶[,x?+,C HP_jz^+4q&|гG.I]o{pB^'|lF0R>)hj,vkl1Cܞ[&''w6L6&ƶ8Tct+fuNP 6{qp|樶$OQ^IӬ(SI"pu*CE>k=<_Vxf^DžQR!:}nx.3|SpZB*ƹ~>3AFb=&+~YmL?{nZrvڏgRCٱ3ON&kpMx@` J9ˉdl>/j.ھ::EkNtcaOfAΌ7MӊiZOpAiM'zirR䑀jIa@3jKyt"E{D1UCBMT>#  8:ΜG#R' Q:(ZbʄKi ˴AKE 4\!njVj(Y<ˤAS Sh(M# Id{`vfV0&L}bbTF-K0%M!cV`+|?AJ/-ugrؐ";ZY3Droby]Q>EtZKr,OEbVuD+mK8#پZTJˡ[݁C[+IZ0[dIr8- hXl\h@Nx1#/͘J.i'N+O/QŇwP kFMQ:_đaij+/>~TUnUXopbT]#<( $@uXsXCp\Lz7ޣ"W=5" (O2EB=Y'WWK;-y<%+')F*6t t!3]='>Hy6Są4(W %!w_?cr&2NLFW=>Iq@V͙6y(6P؇ǻ=j-ҖaP R%/R˶K@ZeD#UU]QϒO3t 1p 1(0?FUO^۽|d=F|O ԉ2əaTs72af؂6h~&U7p j:TAJ0H :?HmƖĢ <f-0[/89wKWX_?TK]- cQZ>UO]LO h6iqb5Ѯ2,J 3sqT /*u ]bIu .WBE"q{9ac.%PgJYA8b%`5WWCgz6sMo_ںjOݎ"ټrt!>2xBȫb ZšS? biǪB8ЖBoghO\#HxOvgpT5]0C@*YYB4P(y'O,=.gBg'(ʽRrOW>b죋Yq%`_@Fd=x> :۔{EKCc~)', 9P*խQMD,|_f\ոspvƍJ*rjr+ifFN@&O<}C|a,dI3P#1\n {|Jt#e]t‡)ߘ3%Y$L;3G|}1(XWιP2RvLųm%|.kx!Tcv-LM ~RJqpukյ(OS njd[~@#ctvffų_$<45(@5|86+G(M(ƺȱ|< p;ư5ct5 j4\Zg 'UHPOBW4}q4,5exOgi#-f3Dn1!|K'ZHdg@Ѿ B:,ypZ^+ EEqpuyHYhۧIl:=1 XB@i`6-o6F8kw:]ū#SX%||QZ[;hYeuЫzC84zoN",8b6 7܆\TR"K 45C(}׫VJQ0.fh<̵| n=q A%fkHҙXy?(0[/}$V@1uFNR/,&f_  ×6!mr (GflHD\Y/@h# F[!#)cʅI#J^SsɒȎAe*I`xK-g^}~(,elU;4+&q~o=˸iJ 8 dPg;Yω& D |̶1}>V duU %$ eֲ9N"mmnlo@ld 낦UգSx[͋m苝t`j?o|)i '<(A-ivܵ}(5fEc8RjQB9yyr4O;^T^**4@kK4d'Ic)Jl/WA]z0.`3\ r8h, }Y!݅: لƵm"r`8?T;=J} 6mdLEݬPGd<:Ei%0|_c:j%Ce+?-~  'zX>miV̾s"g03F_Ϋ dӼs{}s !ELF}kI֯C&)ZRc'J>9N]>YR=,㣫dD(De%5# Hvv oX`\]obB B3xb[1y/|nܨ 'MsFcicWIڀ."{jЌ'+A #ZY&K/Rzȷuŏ bgDnJH l%|S?<ңTNFݤhw.ZXdME=Nݐ]uͥy#ӟ#i2/_HxfeqAϩ, bv?*^ 1NvKKUq $5{ 5Q c)?{Ey|@8؛} %arModG6loډoeC0^y?x Zt#:f{L`70\0᮰ɖDpP!Шo*ʇruzb-7#~FjЙ]) !´3GBOM1OKi .\xcq1A,K]tM_UYSd-‰ҩ|okG h]{3 .:5w:.֤^ҥ2U~%캯>~Ъ׬8qLćz$]@r׉oÌqe|Œ ebNY !bBN+G*RR"&S8UfAĶJesLx#oBgYajnisWԛW>2"uEO'3`;&Ǻthڅ#Xu4 `6pc_ Q^˖90M rm֐g+[豽\%g$+ϽZ&b6Jx[@`DT E@Q!BL!&3:l^^eXecy\mZ H^NAgOK=| ѰC?kYK$ЃZʂ-Rmc# `!W(ҀpT#D%57,NuNIUƐ)!a˻NhYӕ-MՒD? ISɃ#4p,!gIH)ͤzc`G:.XQ+YW54e;t0/ SRr^_a|imi$Y9*0gQ,&W%bAfAjSJi̓efSM"ĥK[Ej]J6xmq[yE͋Wϝr91H~9 8j:}y"X'l]ҷ\sqbL&eŋ.E[UҴ+6:ā[Y~5Ǔ ?ZY}xVy#6(PHi΁w/UR5ϰ 3vrV*(6zVsͳ֛* Q5X٬/߿bxJEޛHfJGtL4YCrD,n*RIW&hEK@Ç. {ѩD j虵I!v{&pi7(HeG77Ȳ$r7:݆}G(Kz1Ǝ BF$2~Z7 y 3B@Mw3WT_jxoO maʛXEv'_%tt҂1Ovv3%ur8ΫɕX98Or:b`4[I'ĀJu7"7r%Mn5V=c&$f`"ei?=%QvH὇2ŸIkyoaW+m6W 4Q)JRN5~(0T0'ALeGE:.pNiauϵSկ5儿 5R1yKmwVL9P_A)%[i@| a ő$єx\'~5Qݖ:mD  < P%lKn$4?SU5$$|p;fbSdI;[kKZ"DfZCqC#c1E:){7{R֬ x7OhFeb1o\ZXht "lznF-+zUm˜$,ItQ%>N!?1_{LIS$b ySyP1a 6ttwjD  ;aЃ&\p"~m!ʮcpe||GH."˒ÓƝ?*d,K"@@]1ۉ2և  }EsI Tbrƨ1Êԅi[ja Gz*'"-³(y,Ț I-^^p̮o5Bn.4"+a[<c+ Ҡ A.d"]#+tH1ztj[K> jYQX|r+2|~ki+F$hHx| 6L QػuӨN}<-K̂2(rWŜd_ qlGF~Cj;ӢiioY 'R#* ߘhZEnj%>.tMDZJ`MM/GXL\WqA>ֳmvtj#'O ɋգ%9>KT ,biEhz_Zp 'fs"dDLY/.~7﯐Lq@s?R ]NN6$>5I;tvShP)@j!F!CjI2pa2D B?.%KlKc`ִ5+@2ceKd8HTUs|Z>W*J}m0Mƅ}_F̎)vUf{[\̂G1hN7֧CJjo:U`n+ex:{pB>g@޶#1VQ3;m2wlOxXޑaGO$'lx͂i)&]l]JYlj`i v}~o_BkDv.6Rs0SC Ii~lBsQP;Ҽf¾J`D YIa"*8]Nq|%&59ItGCIė.tjDpaA!'RtNulT,x>Sh({;HƦ9z e׼eĠ*/IKeh/:פ,v#QS_JOo ?Bf#]ƥOF' pARà x X,(g#_ƅMF>9{E,\lAvsV3,`!PEUkJ6,g .Ra z;$"ڗ 3[pl/7(]5'?l;Z,lG[h%Q `bİ V+Bk_C ܩ|i3[#׆H"Waߗ0\*2!Pgf$ Uzb6wil$]S*"R"NI DPH^폇b Few}=qK閈#oWņ[BV"ؔ[ .(i[93v|>W{}owrB3M gPٟ>ObS`)ADŽ<*t)[rjHZLUn(l#_ʇs`Мj &n$=iUqw*uʶb;nI8{YiiG/Q=^z`fY9ɫRĻi3/ukjKc/@'Fh>-JѨ{)߅Y|P4BY˲j} &/\u&y `IqVJFnua'\^fcU=^y6tdžj4?֢{F*mT6;%Bm9U+ @l+o&n}NBk:1d ~,KVwH4v:F*cŒ<09W/)%8YԿ32x:K%(O2j5RfSAutwD^9U+ oF)ENAoKAX-2Y,&oeZg;,>|a:9;>%uEL?X`CzIClnz( #GYND_|ek`,x49j3sydJ/W7WvLCVQH&;lL0=@9*n@pL6?n&^;$nǺk.ᙉ9 9<~]Ių v]@3xp!_][=7/Z_kpOdzULyԩQ!TaIjL 9hDz t8P9Thyo6X8<`y"G҂RS9,%)׼)_V3AeK3Ca&QYu #:S-nq{z L!jckpȶB><_լYT7Y7νrIC)T9>< .[_(DVfMJ$@ۮP E=lW]>Y_ B.ΘJP34~>#O4Wq#\}[~tZODpهI+=&juLaTx"7OEtxc`#"4ms ">JiM^ҸE})ࠜ #Bgb:DA\y PO觇[N5"$z5X"4Ԍt%.PCEU=poMyw@A{~qk#( Ӡ5d()YtHB+X|&sV_ (g!BNW,%.}WD@aq~wX'|:Kn"66SuZ~ruAj0+PHNxdB͵|$V 9P^|sz)"ku|H8hW 7Mi5c\쟍{o%`<e^epڰg߬!>#R+,pf'X=JW)j xrx[}au܍ Ff~VvEzq6E5(IŇ|F:-,:Xـ2T jU9np(t%}LCNqjfl)DwNGރN5te̻eXP)m-,]cI9{{p^#F P,CQ413ZH9;寧Rm˰[X AnS`NBEpi^oڞD%UOj_9-ۚ:CD< ~lS3V2 </D>ᛚ>i߹~woW߾Ɂk$Ohuzw$!'U<jp!,8dn|dpOP%:$ɺ8E[-"Rwn#g%ڱ9Yejꔳ"Sq ݟ8o&J2>2$={ QzI =rq+#qך˱[9 _?2(~>:`)o B-™0eThXn=U)G:3:NXn&wY2 Ipܡ) 1[ >ufh6-9*) jt5'oBVmƙ&Ujg=1a:lXT5UA9/0ՃpI#~bW} 9Rd!CK}Km2Zz)7fCԊCn&rd4'V >yc9;(TaGS5G9Wao}D^T/ټ33ȉ]z׸aP,hј:v'ߘg8$~~X^`ˈQU$ـT!@ A-Kmy٣UZ9 ~[WP68%@rRN^KAt9l[#9*|ѽeM"H1^:x~E XY@CҖ G@[g8 VCj)LO}qY)nO֞Į.X;(2Z8Ichy9Nk qB.Ee[=dwRt*Ju#:~s@7 25ʋ.Wũ~:b0[c=\Nt[Avy`X)Di1(͂4ku8Kc$ݲS7oa'.!Ȼ8=C0Kw#zڧ o$i İiJ%슿E-ѡy&]ԧyqSt>?%WTGI.ߊyXiLVpf0{wҪ$>}\ ':z8(}c>N#q& "^=Ol,vA&i W pb,3/s2>-pRC%^|RB%wNZ@:}fXݮjyaW/,{&R5NEb__&f'|hqDE_ZXJҲXWWKML8/*]!cO]Ma0ϮxИLGޔ)~+^U?'AۘΕJ~TݭJPh(g*axiˊkt|8SSŲJ˧!#avSL8iW^!*·~LOFN*ӼHx?:;6hXxE 5"p2aРOrmJQ>[ 1;>+h؜cT|c!.ol{^XoLPp˓ZZH.)6+ +cڣ!ͣD"Y.^7ݍfjǛ!|x Hۥ1[ qLa-k)W hgҝZ\0Mڝ)r% // (vfU*zvO|)2 :a`z6m׆S=K: oc6s#OH][ȁ4{ȃDqx"9ZEG4dVmrq (Ӥ?m䎽aٺcBMöK$C1繏#x,MD4@P- _(%9 jגoFTܣHYd"SճDXDLI9^xz `_i`RKV)J)C59$۶sh^1SM3|fmFǂEOɢww%i 7< ?/ f}ᡦuAeP817\"SK7,u1T$Wl w&oClȬJvcwyXhz|2eѾ K3ֹ3.r3HbY0R\#7<üR'6NRJ0y "9n\TC*P Ju dY\Svhsgm^pҞFh*/+{U-!:FTӠC['Afk#y/'cwD>îD/ʌz߾AFUnݖ\1WZK>B{,zQvD(\4ߕT>%qCՍЛa*xm#lKV?6">1;É>9X0|jZ>Ԕ~x}KMVgi9|4 sG9 /,.6QF!.B>9ɣxH?DFNP'_gB?6afU:ǧ|p!ɮ OuG ;=l ѴD$V?Ez3!6E{]رGcĄ@P$Φ8uK_jɴ5i,&!,H]cAH 67]T>>Pvm+3ɄO/ Ӎ< ȦCdbF{f~?f6N~.OYi0Yn*TMg2΅Y эqZgS (^rv/z9IS)DHzoaNQ5īvgb0g2R%.(1J3EE+i/u[\.^%)3 !&I5ZԾ0>kDcaU]t_j01BO7KxZ^ G̱hp-9tsGtU@Lu_$y4go#-ɸNȑb99-A_̤5A2"ʦz>ka qZhe+*`B0(k1ez.p`Qz?"?p ;3T¬>!]fDK/l$Ȥ2t/2n'2 L$85V*iS 1z[,@FeNvpmCz U&I,HRf$|uF@ l2XzO͋MݨL.@]=%jXwƧkޮuh4-MRZSis|`'®%MՀ_c'}ұ;Ў^A[D?v/F6_m~~ ol{oA۽.؍" JN+º#3.Έʪ׫yӐR%7()N-[)P1a3H39Yգ0%@kĹ`0>䭋Wti` >23SA8&n܈(]+4%$šL٨?ݏK Y9~u0l8z:}EoQ*/Kǿ[8B{.tҢΰcR!1va,PsA5LW@x9kZܝdߊ_~4#az=@5?* !^P3A'oqk4,5u_%RDb&m> jh"F?Y&!9ƃ/ԇ2 34{˟ ;tؠG%^> u"pT>?_*VXۋpSE.asI'!S㟄O6Bo'z C`7H#˩-N/sۜ3IzM?7/ O:ZsRG1jcAқ_sI6#(-m?> l=kX=r:3>|hpuQœo\2rr0L\G*0$o0^!<ǸLc PiBxXR&zGm\U2B;Ddc8vS"oi. {,`{y(tadjn]qd,/X[>MȈ/M:h䐋K/':2}WhP?yT p[[OFCBӇ.豜Bg1ke}SbJ{} {81¤qK#*IE.lC#:l♾!%_}j첖`<[RR_E.+'ܪϜKAWadMO#օf5%HOl\;y~֘~_k%*C^e=&${0m$,2LiM|uِ|=̈m*Czr)L)ĕ7ګͱu+uIs)Ts~FVo٨I'wS-KQQҏt6c=XR,$" wr*P&Hjb"q OD] β\E N~u#;/a##u:?W}F#fW~FRCmm෉a,V5l]-{ʒ5ΠRpG KPMހšlA?-g`ڡW0qb*"f,6!Rq4;ԁۗUeFYEIZ}[gGAL` h.S@oX?𬁂ɤģbS0W s٫ MB3W'y bU"?iqH2(;eDŅv[Y7g^[w <xi/RS1akO?mtb /p`D+ ܻa[{Ԝ9`V>_n e׀9`j wY!nNf n^WCv`L\Nsx:tL'b=w1,N-쟑lOR>n1F΢:܍XJd4 .h_̴Ѕ}(MlNTXkkq+iXwCpt4|A:,ZD/}4ү +r$]ldn-L@{B.*3S: d pI|MIGb^Tvg `%C7P~ofe~qw]CkpnduD$%ܴ\p~K9o$W妇YKM&:N[$BAr,"zkMbSI ucj=vw֙qS.lHﭟ&Ҧa&Q2{h"|Vb FL\f {_6_UKQQp9}op$y-**J$P &LHZd2x_Y7 4@5U[q":_hXXKǥMcOM]R"7)~CA[ꠝz~C6GDfLI64Ox澪+2\P>=`ϳG5-ư@(K|Ɍ~" :O?iSkrH.: b|R,sum, (ォw*Qd8e)@m Oi s3 E!dL@6qktX ^ [s|(7F }ӡ'VmZ@x 079CK?e_6^>h{E(dEb"93m{ 43I &fbήW(?w޿O@9+s6;hɺuc_IMR!{ވ ,|2e~)WDP<{[.L\ՓVh SGe|4X&2nd+whR'mrl^xA.Ixnx5"ʱoPemZ їθ&$ܟhxjH..?6$ۅbi}eyйSVԈ5[ZcT/QgÃER1A.0%|tWuб2uSx+d6piFh}n ouԞɍAHDd ~0bgB[fe1oKSm. Ż/8oFtR-j frQ2FrOA|YFVl}^AH4ǏԺdW*t P)3Z'utJcpNj[glɢ:ɝ Y{/ c`oA SH[o2oOG_y#"~5wLΚ9 Mwz|:-L}~DdC:]5 -J蜼=r1|)~6BobMMk_ .k>P58pM@lyw*|2-Ėv QT7zYwoC%agssF$_; {e(RxYKAsЫ" gfȁ9ob3~ U^BY96I\lp33LeKWI>&Iͺ\k=].mp> eˁBLݠߓ*[ MH5@y|Va{:uR˛#i TWQc`Эm8c<'Q0HgI{/ !6ET_11MM¶Z%*ҩt,A$@3Eqogut3.?/Z5{]îYEvRL XWgW9<_& ]h"2ҥף o# .jkA2z9Rw0qyNM^}n_eZ egqk w[UʯdIL$*=ƫ+cX!+Q'%4IGjH\ՃO 2f:4WIGሖc3fA?_bEb?mzf]1㰂rĥNp4Ѭqqv]DV旬vfa-X\s$`ZfZ-rl4؆S݂0~#į048i|t GEInD _Qb75f'Vw /{Yė8˕a 60p7MKcajpzWu, m Iz]@ns79 RMVX wF|}i@d4X88g2X NO}t#$3P}*f,v#K]+J1pZV8Jrgɼ `JrdhpR\V~.8m}1zr4mxMJf3]2 v}ȸ!Wy=B־O['^xߟiroo&(i*DO֕wKa: v.\q-]iEM5},i4SxsU~18: K/NlYjL)fpWGxzCd+&eK' *)Znd4p^"Jt'fxs ^ كf"xZr[M|bBɫG,;"[Bmp0cY CY󃍿fوe9۟d"򔈺CYH9t Z\`mTv7:ZHU"*ESRdx@Kwv=efk}w>TfU-e(.Yrnr.RS3VSM#1E-GؐGqX[NEHM)G]Suf s#Gv "&I?eŭ‹163n}x'lC汔KJO) ӥRDƅ0ZϩLɷnG[Sփe[Q0qiUqm,Ԕz1[$iT Dtp;seL3 A Yt~:F-2*h%_f\Wli.2BR~޳V|i*$܈B/[/p勛/|,Lvڻ|K9 ѬK u,. $Dz{NSmn55d_H #JM]m o$-5LmJG)X0Rѝ0sVDkX Q [*I!p9oaX8>e7MKʫpKwx>+&RD5luCR |3+Jqtǂ&JI B W76{"JRЫ@z+{ƥ9I8oS[y#.$B/ KNB.ڧ~DJ.^ #fmnY^ʶwN .d1vC30(o/}x|Hff3X䲣ЙЋlWai}r`KV)Z@a67P|(!F!Ƶ~&giIl|.|c$.Ȩ^6x%s5@3V'|zF9S!N*%fMptfllP paRh^AuzlxZ nvdbLUbBD]6 oƯ4ظ`39lBц6.¤ҷV tNȕ;YÑb5?&48!&e>=H]I'ψ$es=bN4V3Nrw P}`cȀ*Ul*<&+GxT/{sNۻ)!ayJVziجt~:賄Lʍ}^sAЂ]_G_Ure dfc|ߚ?SbN|9pe8-Qnͦ[,)%bY&s1U2יjhc& g9@h!w vԌ{Z'\|lg. #'W C#8Ipf9uǩB^P b%gx^!16#@PA7 -{4"q3R !;ms_LJnf"I}V8z4{G}RnR};IXƐVF(Dm٘2\SI,#/ Z3 )zF Uz>+@^;fJ:̥̄^5 )0R`U?m3~˜U8륺^ 7 @xT P섁%l, \ƁFvi7˞Xh7`"DCDZ$wK !VlRmmmX&TAPS\N",Ÿ(,T5xpR]56l>ѹl_m'pn SGJf_$Aji|B+ 8k렷Ӄnǹy\eΕbkda)A_*ZZsdTsM#1憣^v$qFz4@ネ-{?51vXb{݆LgKxS %,~@] .|"v )0&j8|Uf kH (F} g-B8ut63(sxf]}h.jAYԡ16bDT!-NN 65_ƃ_V[r1Hw`P'2b0Mv,5S uE5p]l$OOۖn9EWpp?.:p|r5¸Jk* BIuAC7•˲ .3ukC1mu?G8V"?-ձO0q[۩c`7HHb DbH}Ž 0rѧ͙sc]顫Uyr43%b-pmG,9<a\ā47s̛V7 6L9WaQK_yX3{!-Qd8h.k׉d!C .d"ʹ^X}?MM`Y{l2D7vim <+ (;x?v3byYu ߖPU1`$Q^J}qa,-N~ b p9h0٥WVm8pZuWIvGGwew9CΟz[qqG߁óIO sbۨxF˿_ȼ+CB܂/Q,=$nݏhIO.!)9M Ȭ!zٳZ%qʋMtT@ŋ K!'Az`KG*wrF(dNirB1"d^$æ0ϑ%_Z쇊 *%wxkN?sbCSH&f!Q'6 $\JH͕>izVdhA|(3. /̫HKѡw$ [6VLÝfxUP/ERK$T&w&R^GZR}WI8ٹW)&KԲڗld~Ò I8ͯW1*# s$>%pLAC|sQXefcXi*}86"֒Ycme1c ozx:#j v!Wzo#,kB2Q&sﭯ;Z7p+!i+3DŌ D&̠3RWS(i@W:O_8 6,v޳ TWn֒_MͬaAЁlvF]"7-54Q,|l}i:ܐX8Ace 8*.KMÆu&520H=އnp4ǥ4d;K/^aͯUö/b eB03Gx55ƁD70ud s*REWXVn]I.F Mۼ|>QqH'fS=ߌ=0~mĴDY%dr#:EeK) jP^4KQx6Tev7kCl|qm"=2a/5jhK֊ϟ3FqTL*'ʽ=S'F6xVnfxcYLj@Nm?m507$+ yHT@X\Аe3%0|hFyM+CNL =,5Y;XқnL;NK\6QlCۡˣ04d7gI|/b5\ ų]d4@O8pCmN ~ L =wY ݻ dds)cAARPz4 A'u12e 3(!N,n>:Zn'(QI YTԯ`3PUQc7$u$B=/C&5m3Cr!\7F$Ri;[TaK âp^f-I|e/\8"R6v }?5\qfj9 ѨX%r?>5?7q d44HUnƹNNhWlQ>LNF;qwPI÷ Dp7l@G/tUɿXBK/9CO֓b~{*~t@oZs jnoUԄ$'O#>rmuxp(KmXUquȺ#pJF[ t5bXJZ7~MQL*͌8P\ҋP*ʤq Fh`a2س%hr" ȥ)瑉.K*,z+nB½dc~UOFQp 6&I7GeaeEN J=erssnE%X=l$/U)rY]sd5tn _Rl=td=$[pRCs(VtVASw:|sLLmXU2,]qv򭏩\†RE(64h2E zv7SʘygRQ>^G)L߻Or_'ttd} ^ٻtvxH˾v5?";hIHnr< Hi(~F1۪}Λeݍ1#|~V[0uOz V)}QQ|hN"yZ}~Ed7oz .Mi6)3^ˁ:"6:Z,Jw Pxǧ."r|ݾ|uJ8_nr< 4+][}@ǜ"BUOa],So8я$L]? Vh_dSd;RUţ': [(SO֕GOpJ͝qI$QpFc92l/Lp&ɦ2 *ܑ^m(U %lܷ3^BE^TptZ,c>U>OaZ\ڇ#0k D[-=rT6x zK~>L}@?]9UE2>+zKMtQV>L O1B6`JMloJxeIImlX[&Z6'a7]@å=A׹ܹ5Z:?C`NLrn%nc[nw}\ b"E\$m C <>SfZj?}cCn}KjiSm:<&X/ L^@>ȳ;֢zPnNZ|udy*jL f ",LxQ^;L hoM7-L+$VmDVKW1YwةBCSSEt` T14%9S6i>7`]=O_zەCbPZ}TP _ʞUm_C`<Avi06$=A#᛺+O=ɢ.䈾~TXhe:t۶rrᕍR4ڣTY4fͧl6-΍cjgS@Giux26{0&Ni!ocgݕNV[yu>|ȕE߯y I!G\HM[ff:hSAj1uzgI\b#L,ۥNOx:Y\XѪ)V; xتEY !TǮzQ s9#i{sFAxC +Q>$AタbfV*g#^ Jz0sAoǠ~xHF-42*w?<A4)RIvN#Zg( 5]o0 KwGVd scS  Y2VeE<: #g3 ҽʵ`i DvYD\ާyp)Fz %\ _Éb Fu{¢׉.Ώ҈4S5j_1#0pb@]fKjpw<\PZ|el-I  @g/tQw4zl`-A[QÛhRUM|3.V:x.4 8uyJEMQWf/Q Y{zi˜N&-wtIv'1᭕k>]D\AOjrHO[[o^ ͽZq6{PN QȃR0mL!hN̒Cݡa]Kl{F-2+` ֓8eU.?11  9p\ (bŠW/@Kj=G_._ \[)f\ۿKCq^,5.E_-X`8ޞ:jիzR']Y6ZjM-ó0moVܜC뀾Zz0W @c]K t gLQH O.)G29! \ /J48 Kq? Rڢ.dW{o:T>?NQ$`Qڊ3_]z7EqUi7~;@%R1SͶeckCp]9{QS+B,CkV?16 wVqw4v /w.0Cjozb1V73)a0/ISJrСيbN}c(IdN]=3eBpRt@ANemS@X:B}W9v]RLe6\ux0l/_!2L}tgJj7g*ICbAs@dz|lOeY .Wg Np})w| {:Lt$JDPE5;hFd|T1+o2}ĮuVuZxZէU!AK?X~šlgAk&OA`b؊֫O5Fi4hbb!ٰa0L'wf3{ 8\2,PB1{uWad/|fDчU[^z78PL vd* 9=0qg0(L**@XtZ#'! ftSKF;0}/4(*hVC?Nm,L 'c&B R%MRƉjsT܍%VZ\ Ƕ%-%FnsZaY<RaůOr6kރ~H4NSs0MiD({KNCUX 0e97^Up'_Pݶxf?=[Pcuy.rNi?6cJ?a*v8%gUfiJrN%y3Ѯywʹ\oW[cd/V6%#M~7E.R\5O}&7ְn蓰g+ i Ns1^YC~qY9O Y^ZfN(bCb񭒏M+2u(6t]~ʓ) ZZnIW  &W`zB_Ā'= }iqc)1/huiplJ,>D2b :.]+di-Ͻ׾3&׵LWadLD^hP0w-:U{ވ,/hexYYtKjN#ţ PbOuzN~OoFK7%v#؏`/lG뿍n'̱UI%f IH]LJ*dZp-8R0⫽ ΑؒdOy[(v,wJ)Z ⴦f րH,s \/i!>=7|(Zl"s#SfB;KHHy˸ƬGܜRB1" (OW@C -i%*9ݼ8{ #Q۔U80HRhO0L;cJ4d:s^58|aU@Bi9:xϔ.L1h#^hKe&&d8xĘ /TKzV10aDY7t3v$ (a&PDضRzRO@,r ><ۘĦ#8Ʋ+g>|u^AL ۥ U~ K*kɦ1H&65uHȈ8k> RmEwhvWD`}::.u5ha|]00:`D g ?RJѐ.`CxL(xJ E;3{Fv_[nF!q͸ ?G+݃^3e Zr5b}re-Sh{ \HOMtP.{2LNp$s_Mܾ$ig`MMw( + 3Z@Ⱥ`rXj"(\WVuD%،[o4~ p)H:b6q[x>%sk_=<%hy:׼=I Ֆc-<4䚾w Q/^F&OjvJz~e]sKqn R`ihC.ʼn7C7սWa?|WIܒw;O'8[;G8 )V){u9@n\r ip2u`de~3GѠ52*N=QDC1J66 k?1Tyԁ8-hy~R!{qgA 0MIZ#h^?*B-4پ@ g5j@ ]>1xn:?1qA96uٌ֜Īu"j62(}oXvc3DEA(5dꉽ Q$uɡ@ ֖q%W1_ݸ+fw #.~W&AL32SYSܤk L2 ڼI.Di DHR@_U fS *: _br]6 WQ&Oi{$pQ_fchݲVzWp?mDP1y8 556%656)K4ihIdM .HϿI72}>ݝ/Q5?!БTm='nK63m>a:0I[N½"(n^U@έE gHW) jRzN0bQftAa,C.gB'\x9}a{QL;Y"0K!*axT6-qidxP oe*7`:Sgt,%:#=3{kLcgm5t^2maˠ)kin>hwoyiޘZA]W=t2;^>aaL~2vCmE^d gKTRk{ tِUѝL&u,PER,Sfp￟*Aՠ)'[bNqC uA80h.hzr݈9?ݔR\.>|WlԤ-TM}֒居a[%@- p il  kze +"p&"oj! t&u^}h =gM(2[ V:V};"Ne5Y3$h,6d=6Հ.;uǤ谂cϠ40:AKSv [.;Dl'8 vi=JHbEMG2$3lo)8ӇhB6"Z -6Xԥ_,x= Q E™ĠmnA',@Rd_dLh LVT5weUjKŀM+(Gl)trb(2緯^]Tmdˆg> d=nL%CNzl\mA RHBƕa,?8;'a&hd9Rj4*ݳ606ˏjТڴwhv l'M˱hyq@& O t'n_SI|=eMO$5vmnHy?lƵ<.,&tMҶZ\6xC 8e&GQ7hYvL)yT|f˜rFqѹ\o$ [N1V9 &CtkPBYYfɆ@Xb1ݳX"=Keqz~ÐwFήE4.7,dSRО{̏9xKϙiDsI{R3#-ִgRf0ˉ* #`mqQAH]׃0 ߹a܍c쏸D"/uC%~RIXQy'w6*&{דxr΁WS57JnmLyYv$*Ԟz j#m[G˚loEU/tiLHՌ\эSOMLiZ$9s عy Fg0b 3lH_~qiq'H@Ք()iMIXɳVB]4Z!?_[wJ(|3`K6kz CjxGnjIӿr*${twT;.q%Gz԰Ձ'!iw8&͏&ROt@՝ZT k7.)É'\B1P=!C[]* Y:_}/XeuSMiT3L]iK/W%P4,H ;.'^Z.sGVxFTRɒ/w jQ[+g"m⚨_$qY縮9ddw12-(3.h+z 6ˑ6KMp,]&i35C3*cGg+N!hSS~BG0o:Y^1"'̈́y1ȬT!D~npt4"T]铞_a_=2>PUby 2<)#rdRDܲ;M/ ЎE|D!{M)ckAruƺcTR$xDžl+EAy'\i1[*W|X)'UOp0Vו/\,l );ʵ^a3նR(Vjz\,޻m:5EW*BOS+MdӅ\ۂkYb|Y̸cl8 X[l#2zֽҹh7/*u&|a>Ņ)||R*,|"N}mn::""+HWynqzjs 饩s<.F bɫڒ޾LW_L-{*v> OCCu2xiRh@+R/IsE};WhwxGzC-f^<7޶~x?2EjV#H,ˁ%*8%i$!WA[m s)JܟF)Kt4ֱnp$DE z Հx#$IQI<йҦ~bS_%U.{@)zJޕ.Öd:w ]fI┝DLklǝnrE(g4]OOR<|]Sf0QR܈ e犮sܒ: p?^GXTG9S]r^c)%H3D 7T[)~UCX4+><9G<غJ i@,^zarP#q L(\\왙8q$T2,3B-Q\crqQƽ H5H3mJg-z0 VL|l]`ֳԁaFT.#mH_Dkk# TQK91T&oage.0>ٲ:.L;麑^:4AqPhGǜh 8FDvEвs" nzCp2 o>xphݴ~E,ќ}^y7q 1m+|ϊ`ϛ֐d6%%ěIvoP$pu怔l/w޵E3H{,J :b 'm2ajIoˠݫ:z>Betr ę%ݛ3B-?^Lu@S+.wBIl$;FeXM&*7e L7v]JquoGsnH47G/w|!FÑ7R5Nif!uuB1zխWȱg}:׫LVDlFpER[sR .xkO!K Sӭlx(,l9mfa7aWEapZX+I7ﮟWD>(:BPۆ;aӗ=ԮEmoڨRf9 "#&Lȶ#L;[VbJytb?pa<wziu:؋eRVZḟ9 >5B3Wޜ(y}HLFS*b|)uGyqi&*.5V *]GDxZ@߶`u5v/V 'ㄇuWpH+hV-"׸Fdc*X(Q ݨROq[ؤK7Uq o~7fak;)^չF꫚&bQ@#zcW9N.;W%.,!;" Ir+ IjgǛI1ҕN\vtK#A]w,PQɸ{(lawǥef8hgT,&4*7J*+F-1ෙy2⸹kg` vÓ6/f?L12r+뙁w Z׃`A3dq:r g>[ ODmJ9e.HPɗd^^yg6e tv.Z%<x)<$UUҾˎk?u(?ט}elIybd.m`,2# }{q Ӏ@L=:ѧZfXPo.NhJBvC3mmD* OǪQ[_,>[y=uOvBzNH񄳮:[^&e~?@x̸](240[#pmE.DȄs3)mr׷.1EI?в $!rn!> pv^?8 WkPEF8o EQս;8 Y !qfzF"ѩbFN$s'!г30=)Tϵ2Ho-=(fpS"vķ}ҍy2"U򪊨ϫdfsbs;mUS{dcti=l0WH՛Ғ66 0EK۾w ?k4sLAHEOىLӓ[qxe#F7:2aE^7U OȣSQE[1Y<(mZ>Z*?s;>+ُ=(j Ƕ ~~~#Tf^߻2τtIK}xf -HmK[?[~klvV,lr2#1WWGV- ,^eX+?vN3Uu vn!\}Ԯ',9A^.A s~Jo4m| -A?A8L*G(i|Q,hJ& 0~aQSܕ.4lW͝v+9oƾ5^8xKILC!RD]}C7:P A}? I%I VZ@:зP`y˥9gmUĄITm}U(2c=OsCЄ؍haR@|3T[rf󅀄ԗGz+^ WA娖?-? [X?Nj'sr ͖K= ?@|%̥L\0n2%Ũ_?<`d Tj}oX-56AyWoFXr f(: 6؃ YHOME8*JAi8z]6r.HWjr,GjUK&yg>^a>mȗtyE $qlnSRt%7X)#0b˭ Īh{F?18p`FPt|Tk%p/uPA!k~p X!aDŽ, g\Ef-/ ,'=)f^XXq%  ` I{ }+Tlޟѿ<Tɍe//⹵k{8 ʖ( _4Axdhx -V5v>ynD]aBKI;,kvX]-Xo@s4Բ?hM_E?-hPwE\+ 8KԚ^ DYӹiSs 5zR-0g$ m/Qd^^$5PӧkVq2 2T[H3+RTqR~;-G^[%|D"x@ "r 7 oKo|cq m-'Nǩzj,A Psf޸0 U^}=8DX. v>Y7XfOQv8-/SzUu= rk)[cB  j"iIC+i<~maWh&у#X-4 yÐ7fuG?Wɵ~8w/_A˴'y!3yţ?4/L4C1{IYVg wfGU6#hh6,hynO]F7 L#DKh{x=ݜ$kh}l%m9ZThli7F$XH1=Z =ߡ-'Q/Fz?{Xg*`1zjDܡfy+ ]ڞaʰ (qpQZUR1we>zBnn`&3%W6ǧ; jCb6'DR5-CxT1^nRI7ᝇv^GN] @ ʉ RV_oW̹D vu}n|g#7;΀s-C@XqC*jT%:t\iԤ8GR}oQN- -[9 uX<ɧ1Wm[GHaM-,` 6nWk8;4^#׏cQD'#F-L9jዓY ,lIЧ)p/wQ)?r-yCZ1|'<A jʺSźNj,Œ1{ZR$، OȜ:6Xy +s= o!F"?pܓ5T_|uhS%bçXtC| @iǩŭs .&'@+d󵴿R5Fl^d= j%;(x o! NK?ެX U8qPD9szk/k1ે4R%GpSbV Q BgJ[ (rz$!N^b 6}.l )2`-]B>&]wAP*g[xBbV3iVm_|e'%*'Bat $b4k6_<-f}̓OK1C=O+g)Wv&͏"(<څI* 79e}EJџ[@q7u<]i!K JjϏLԕcw59