aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB
diff options
context:
space:
mode:
authorMarc Alexander <admin@m-a-styles.de>2019-08-09 22:51:51 +0200
committerMarc Alexander <admin@m-a-styles.de>2019-08-09 22:51:51 +0200
commit0a5599697fb9d52f067ac1846492641cf1adc05a (patch)
tree459bbcee81da80c617b81b05c7d4c351f6632ac1 /phpBB
parentf41c51d1ecc36bc6e5dffc70ad7a5ed50d4ec7ea (diff)
downloadforums-0a5599697fb9d52f067ac1846492641cf1adc05a.tar
forums-0a5599697fb9d52f067ac1846492641cf1adc05a.tar.gz
forums-0a5599697fb9d52f067ac1846492641cf1adc05a.tar.bz2
forums-0a5599697fb9d52f067ac1846492641cf1adc05a.tar.xz
forums-0a5599697fb9d52f067ac1846492641cf1adc05a.zip
[ticket/11327] Split up into forgot password and reset password
PHPBB3-11327
Diffstat (limited to 'phpBB')
-rw-r--r--phpBB/config/default/container/services_ucp.yml1
-rw-r--r--phpBB/config/default/routing/ucp.yml6
-rw-r--r--phpBB/includes/functions.php2
-rw-r--r--phpBB/phpbb/ucp/controller/reset_password.php158
-rw-r--r--phpBB/ucp.php2
5 files changed, 161 insertions, 8 deletions
diff --git a/phpBB/config/default/container/services_ucp.yml b/phpBB/config/default/container/services_ucp.yml
index 615a5698c4..923f35033c 100644
--- a/phpBB/config/default/container/services_ucp.yml
+++ b/phpBB/config/default/container/services_ucp.yml
@@ -11,5 +11,6 @@ services:
- '@request'
- '@template'
- '@user'
+ - '%tables%'
- '%core.root_path%'
- '%core.php_ext%'
diff --git a/phpBB/config/default/routing/ucp.yml b/phpBB/config/default/routing/ucp.yml
index be97f597a0..06bd7c3a58 100644
--- a/phpBB/config/default/routing/ucp.yml
+++ b/phpBB/config/default/routing/ucp.yml
@@ -1,3 +1,7 @@
phpbb_ucp_reset_password_controller:
path: /reset_password
- defaults: { _controller: phpbb.ucp.controller.reset_password:handle }
+ defaults: { _controller: phpbb.ucp.controller.reset_password:reset }
+
+phpbb_ucp_forgot_password_controller:
+ path: /forgot_password
+ defaults: { _controller: phpbb.ucp.controller.reset_password:request }
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php
index 5ac26b450e..e8f8b0ff46 100644
--- a/phpBB/includes/functions.php
+++ b/phpBB/includes/functions.php
@@ -2526,7 +2526,7 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa
'LOGIN_ERROR' => $err,
'LOGIN_EXPLAIN' => $l_explain,
- 'U_SEND_PASSWORD' => ($config['email_enable']) ? $controller_helper->route('phpbb_ucp_reset_password_controller') : '',
+ 'U_SEND_PASSWORD' => ($config['email_enable']) ? $controller_helper->route('phpbb_ucp_forgot_password_controller') : '',
'U_RESEND_ACTIVATION' => ($config['require_activation'] == USER_ACTIVATION_SELF && $config['email_enable']) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=resend_act') : '',
'U_TERMS_USE' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=terms'),
'U_PRIVACY' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=privacy'),
diff --git a/phpBB/phpbb/ucp/controller/reset_password.php b/phpBB/phpbb/ucp/controller/reset_password.php
index 55397b1c0e..57fef00f79 100644
--- a/phpBB/phpbb/ucp/controller/reset_password.php
+++ b/phpBB/phpbb/ucp/controller/reset_password.php
@@ -56,6 +56,9 @@ class reset_password
/** @var user */
protected $user;
+ /** @var array phpBB DB table names */
+ protected $tables;
+
/** @var string phpBB root path */
protected $root_path;
@@ -74,12 +77,13 @@ class reset_password
* @param request_interface $request
* @param template $template
* @param user $user
+ * @param array $tables
* @param $root_path
* @param $php_ext
*/
public function __construct(config $config, driver_interface $db, dispatcher $dispatcher, helper $helper,
language $language, manager $passwords_manager, request_interface $request,
- template $template, user $user, $root_path, $php_ext)
+ template $template, user $user, $tables, $root_path, $php_ext)
{
$this->config = $config;
$this->db = $db;
@@ -94,12 +98,154 @@ class reset_password
$this->php_ext = $php_ext;
}
+ public function request()
+ {
+ $this->language->add_lang('ucp');
+
+ if (!$this->config['allow_password_reset'])
+ {
+ trigger_error($this->language->lang('UCP_PASSWORD_RESET_DISABLED', '<a href="mailto:' . htmlspecialchars($this->config['board_contact']) . '">', '</a>'));
+ }
+
+ $submit = $this->request->is_set_post('submit');
+ $username = $this->request->variable('username', '', true);
+ $email = strtolower($this->request->variable('email', ''));
+
+ add_form_key('ucp_remind');
+
+ if ($submit)
+ {
+ if (!check_form_key('ucp_remind'))
+ {
+ trigger_error('FORM_INVALID');
+ }
+
+ if (empty($email))
+ {
+ trigger_error('NO_EMAIL_USER');
+ }
+
+ $sql_array = array(
+ 'SELECT' => 'user_id, username, user_permissions, user_email, user_jabber, user_notify_type, user_type,'
+ . ' user_lang, user_inactive_reason, reset_token, reset_token_expiration',
+ 'FROM' => array(USERS_TABLE => 'u'),
+ 'WHERE' => "user_email_hash = '" . $this->db->sql_escape(phpbb_email_hash($email)) . "'" .
+ (!empty($username) ? " AND username_clean = '" . $this->db->sql_escape(utf8_clean_string($username)) . "'" : ''),
+ );
+
+ /**
+ * Change SQL query for fetching user data
+ *
+ * @event core.ucp_remind_modify_select_sql
+ * @var string email User's email from the form
+ * @var string username User's username from the form
+ * @var array sql_array Fully assembled SQL query with keys SELECT, FROM, WHERE
+ * @since 3.1.11-RC1
+ */
+ $vars = array(
+ 'email',
+ 'username',
+ 'sql_array',
+ );
+ extract($this->dispatcher->trigger_event('core.ucp_remind_modify_select_sql', compact($vars)));
+
+ $sql = $this->db->sql_build_query('SELECT', $sql_array);
+ $result = $this->db->sql_query_limit($sql, 2); // don't waste resources on more rows than we need
+ $rowset = $this->db->sql_fetchrowset($result);
+
+ if (count($rowset) > 1)
+ {
+ $this->db->sql_freeresult($result);
+
+ $this->template->assign_vars(array(
+ 'USERNAME_REQUIRED' => true,
+ 'EMAIL' => $email,
+ ));
+ }
+ else
+ {
+ $message = $this->language->lang('PASSWORD_UPDATED_IF_EXISTED') . '<br /><br />' . $this->language->lang('RETURN_INDEX', '<a href="' . append_sid("{$this->root_path}index.{$this->php_ext}") . '">', '</a>');
+
+ $user_row = empty($rowset) ? [] : $rowset[0];
+ $this->db->sql_freeresult($result);
+
+ if (!$user_row)
+ {
+ trigger_error($message);
+ }
+
+ if ($user_row['user_type'] == USER_IGNORE || $user_row['user_type'] == USER_INACTIVE)
+ {
+ trigger_error($message);
+ }
+
+ // Do not create multiple valid reset tokens
+ if (!empty($user_row['reset_token']) && (int) $user_row['reset_token_expiration'] <= (time() + $this->config['reset_token_lifetime']))
+ {
+ trigger_error($message);
+ }
+
+ // Check users permissions
+ $auth2 = new \phpbb\auth\auth();
+ $auth2->acl($user_row);
+
+ if (!$auth2->acl_get('u_chgpasswd'))
+ {
+ trigger_error($message);
+ }
+
+ $server_url = generate_board_url();
+
+ // Generate reset token
+ $reset_token = gen_rand_string_friendly(32);
+
+ $sql_ary = array(
+ 'reset_token' => $reset_token,
+ 'reset_token_expiration' => time() + $this->config['reset_token_lifetime'],
+ );
+
+ $sql = 'UPDATE ' . $this->tables['users'] . '
+ SET ' . $this->db->sql_build_array('UPDATE', $sql_ary) . '
+ WHERE user_id = ' . $user_row['user_id'];
+ $this->db->sql_query($sql);
+
+ include_once($this->root_path . 'includes/functions_messenger.' . $this->php_ext);
+
+ /** @var \messenger $messenger */
+ $messenger = new \messenger(false);
+
+ $messenger->template('user_activate_passwd', $user_row['user_lang']);
+
+ $messenger->set_addresses($user_row);
+
+ $messenger->anti_abuse_headers($this->config, $this->user);
+
+ $messenger->assign_vars(array(
+ 'USERNAME' => htmlspecialchars_decode($user_row['username']),
+ 'U_ACTIVATE' => $this->helper->route('phpbb_ucp_reset_password_controller')
+ ));
+
+ $messenger->send($user_row['user_notify_type']);
+
+ trigger_error($message);
+ }
+ }
+
+ $this->template->assign_vars(array(
+ 'USERNAME' => $username,
+ 'EMAIL' => $email,
+ 'S_PROFILE_ACTION' => $this->helper->route('phpbb_ucp_forgot_password_controller'),
+ ));
+
+ return $this->helper->render('ucp_remind.html', $this->language->lang('UCP_REMIND'));
+ }
+
/**
* Handle controller requests
*
* @return \Symfony\Component\HttpFoundation\Response
*/
- public function handle()
+ public function reset()
{
$this->language->add_lang('ucp');
@@ -108,9 +254,11 @@ class reset_password
trigger_error($this->language->lang('UCP_PASSWORD_RESET_DISABLED', '<a href="mailto:' . htmlspecialchars($this->config['board_contact']) . '">', '</a>'));
}
+ $submit = $this->request->is_set_post('submit');
$username = $this->request->variable('username', '', true);
$email = strtolower($this->request->variable('email', ''));
- $submit = (isset($_POST['submit'])) ? true : false;
+ $key = $this->request->variable('key', '');
+ $user_id = $this->request->variable('user_id', 0);
add_form_key('ucp_remind');
@@ -232,8 +380,8 @@ class reset_password
$this->template->assign_vars(array(
'USERNAME' => $username,
'EMAIL' => $email,
- 'S_PROFILE_ACTION' => append_sid($this->root_path . 'ucp.' . $this->php_ext, 'mode=sendpassword'))
- );
+ 'S_PROFILE_ACTION' => $this->helper->route('phpbb_ucp_reset_password_controller'),
+ ));
return $this->helper->render('ucp_remind.html', $this->language->lang('UCP_REMIND'));
}
diff --git a/phpBB/ucp.php b/phpBB/ucp.php
index 34a6c6bb99..0992e3ef90 100644
--- a/phpBB/ucp.php
+++ b/phpBB/ucp.php
@@ -66,7 +66,7 @@ switch ($mode)
/** @var \phpbb\controller\helper $controller_helper */
$controller_helper = $phpbb_container->get('controller.helper');
- redirect($controller_helper->route('phpbb_ucp_reset_password_controller'));
+ redirect($controller_helper->route('phpbb_ucp_forgot_password_controller'));
break;
case 'register':
˿zB-T SO|Pؾ GQSt53s,23&X ]?>P,/dyw{uq.15/26۪ tBcƲz_d*_PR!'V^,M6l!m4&'uɡZaM .ܽpHKK kkp/ow1kܒVț5~7xI`wX !P`P/S#z}t4B*,eV{ c'}д՗F|{4È6Z āLuJF߮]oME$_ HW nNxЅ9KE CyO8oLاGʟTJ.1GD|7u5H nymWChcZtMhLnl#2ƪ׎(MUQZs ZQ%l2dOHߩكxԜB)+[kf e'QNlQUd`X@DR鷕6Ŷ5bH$S?y$3㦖$o@;gB؆ʁ\v:V1GŲBd<]whOPԆޢVP@gP3) uDž^HЉdžSMxKJ ^c^b<4`(%=uKFݨ TKguQdX<oU쀍E2/tRNz&Y \VRTWR#@Z" Di IkEEp^R27\颰̞ߒm7`9mIU0܉!gÉm٭)?ܚep\%z0O)SV@%OCV*묏|dV'x N sּ6hJU&!>bCkK7cau  R \GcĢ᪜#F,+-Չ5`hФYv|qH $]C$WErD#V* Le3&O7KxU!J}ӏC.'[HSILJx(x+8Bv,uԭy-. l'Z5)d$uLYT nFX\7YE|$($$q pzِ2z.sBK72t๫=4fC*LߙpNɏt[E&P|)OA>kCl2wX)*̯g^hB]<؋,xk K.  ?ؠX(hwKQmu=QeQg8f,ءfv8R62JE=kKxԋKU0OE{|og';A 6mT8~LFڅ;@Uc)k>?G/Rz ;MQPb { Us(\Q!Id=A+sf#p`vyVT/N>cL$)"r_4j9F P1Ҟ*flv&z!bJ~dU.@-[: dOIC}ޥd&C*3魫ݝg YY!%OvB=/+,"Zn*>^!1?CCga\M,n|;z@ʾ!;zvȇ`ˀު,ޙZ;D   \QLMex9y4!$m\B"riO9P ]znPH9 [֖K8 ;7afjLN][+^{q<>Oʏ tx?۸:A|r!NL׃R {Xą%lqPB1;c3] m_,Ug}ʃEsn&-C[V%wj0 b Ff)pQd2(r5,]x$mT*<˘;ߢyEܠ&jGA! #vO͂a;ꏆFGYICUgɱ [RVIim|2^np筃s4,;l_IV&ajT.=.Cfc&bG 5]ggASQkM4ȕ1:tLôd}ϋؐw>wڻ \t.a>1S&f4Io .3ȼ^}TR!Q5CLk,gS7ս:N̹ꂌ\L1[D/̗FZjCiVV#1 cΘ8^;Y2#ЦŽMH\h6-{ OP´ ȳ0ٯ9b.*1U }.Z*:@Y;q fQpK3Ob-`jjis¸7Pi PetHeuer*>ϦsACdz`'B4 {uߚHg4O?gtPKSPB{:=qXG6cf/0`} 6 R4 9;iYB+)OV#_ ?,p#5?n4hu==Q݋O=u]@2a (42"'#Q ݦ!2WʺdN !?WDG/ViKX.zs9ݸE,٘ܶ)W 땨Zk }QT,1=͊g89^Ȓ: {~,T'#!X6<;tX%gNXBqSR_?(a ,s^q`e0ElyqPex 8 I8Q!_} [BAև3]h6ncN>+˨֨#oޭqVVME7bI^'u+C{IL%{15/,0c۫1ϯN֓ec$ X8ne~"Z^ݎ`3oy/(z '2}0(ZƊ"(oYnۥ DdZaSwEcCH]drTHQotXVo )sq/,GSH Emo b6^#bԜ/9l , cfsGIV8p&US冶CB#^,.o+SY+sV;^ZQ|2:50"l+QK\L^'0)*0ry2J0w_ozڻVXoSiۇBt6<+&Tfde0u 1䝚 =(oޛr"A0v)ܜW߲??CfLvpzѻ{}i.+ 0+YN$m^KF`WjFN-0U2׮DNvsp\6q)EeWOd!_VUE᰾F?nkN 7\ӊGX)W1_pihyAs\:qp8~(Mqf؝-ٰh) ]0~3:ɣ ){ OWyN=B|7 A֟>„LkZ@z/3<*Rfܮ'-@f>6crQ bt[}9*XblA+>"m\3ݥh à)+TJwE5w~[>#\\(Q0nP7sqR)\@ ܶ5AĄj+lcI4$Ij( *j a/;".&- aTsTZֻ%HM[]Ki< .UJS1S&!a<6zl 8?gX>c0[/ L"(=Pc뇋!kÊH{Ux1^Au9ݘNx p7W |W$m&W }:07G/]6ejl2|ӿYdMJ`#$L:Ur5dsGR@?~ϔbXo ד~sEA,yhm!?W5!d&j%ҏ j XT0͙`F"E3dkP{oP#Y>vf|׉ 8D_ZJss3'ʴiO'Sőp5KR-sLJ`2j@Sil:ny~ 1GN%OF)cl`Z T4?|:nC[zCOurjБۊ'&ϔJ+R j hzZ }~w{*>+ʜ2@™;Šl?W:/+E ]cn Љ8j>lΦCOF&82+R={nueWl=ԣYDE <Ű!`3٠M>FTYQ) 􈬪laE9C`=f@-;Z#DGOXKGmop:?1ouz?BmUҝ+C9_]קul)7bLLn.4dNCvp,bB\SGԭ):̈-([(UZX#֋ɼ3p̸6DmN<7@J]ŦVAp#^JD@ҢicJT尛J o(lf hKWHLkkq68xH9'(~$Yd9xh"EuՍ-5px]V x$R"6Td HAv\RGP\t!,"`\/$)UF3@%HD̻^Z^=1a]%XG(@k$);JRJW о;<E=?9f9Ud> $)2q~{_HzidI:rsp_yQ XRpZ1 e>#ff:HrrZh3mt"Z{3޾nil+@Xz̘ 7kGv"V/ǘZ5<YO$ FsֈZK8 fI@w qQ&,0I֟FJ+{DHl - iIhb]x ҴE8:}i@5 !m66Yps,l2n+`DT~AZXK`PDI-TF1L?fip;^2K 7 |9L tMo|Cs0|*ADi/"^hx:(ݞ5(6`U # Rm.}\XT+XRiSHޱc4P|M,Fl`mgsOk+.[S=C/]SɉzCMCt ]^}xH@ |#!ȿpM_zwM$+MPhCG+jPpB*0%Ư6)GJ1ѹgrb֒TQk)!uK@&"\v^Ǝ: 9nHiMnL`_FdýA:aa{JOEFqMU Gߵ]꽹v@]aT [N$슫:x:w`LFN1in)p(c5s/<8-#=]6& %3#[G E5 )`-0IN ,dU^:mQW@_>.i^4G7eyȜ:O} WM! ȑ .E%ӱ9?'[so=5u@“j&GZlGe^vpf0,%cJgq`ygr*nX=ܲ(>q@ xԞB#_0?,TZňeMyr8z.7UM}@G{yj;J oĦLDL]$9?. E!M,퀹DnWu|p|Q ge2GDvS?Yw-SG>( J.Pۆp;5UL[I(Eseބxv[^];Ū#@6`XZx2o7A>tύO6:ZN~YorpF){#6HJN !Uлw _nImv3 ?ڴVllQ3 BwxYk]b/sƴY=1-Μ4o]{} ]atazNw>nwW҄[/~̇3X#fFr3l󱪌k u=.g|\>@$ݓh=C#H0e}Cp"vRg_EǗy0--~icR3q0ʉNb8>krN%NEwFO"yT j]lû]߼5ay*/Q ?д ".p_ .x@f P'G/<|-2+WFE}\9/p|urp_N3>:1o)  j)*acCN35f[3i 唗KsF Z՝S$)xjh0`: ,qA Z1fl(.SXg)r, i:mO$fLHFXeD=lc5FQdekUī3j'D _FSqzt8N 7"^6+1dž/Ʋsַ;A\QP!%GE86%feҠ!r{w֣B[* ; 7mVp SAlw t]Wg0@MOv+ٍI&U а{x6ʨ7vaupƹ)9emT{^ Kp$ݻ;NWT:oSd]ep5~ׇD4ww j`B'ݐt"~:wj]94L{?l{IIRW[_uA<@kBA!扪W Gdri2j~~)F80̩ѧӊiuP%hC5=k䝜-I~OC:/a Y J e!7 ސ'Ъ5zc\"gWF4SOrI&3p-Z]ye%+㙪Π0m_n+ @F0dל' l`0ؽq7_ijZq}}iG',@Fb@b?p]B d=3J7fv~7}6;%\CfBpÖ޽n<YBJZtoV=\,skc>P6b\.8ZE:QG 匮'n3, ^OиZvk=\w#Zc/.obilTd"b9J^8OTӌ'HIkX~60a$bQb&-?_9մ֭ȥZGNQLJ\̜5뽦7 㹳g _J*W&'4*&C1bż~ jM.Yu ϳ!.ÔUtZSԖ,h:(9#}Y}55`Ygc-;Zț@кycLT)tp9w d]1͜_\40^< ݳ5-Ǯ&bSg_;V#7-_ڐ!AC0qHL zaKp`[/bǺ '`jmﷰ.y-izChU(J]/k[u=>ѝruNpk,sPvc$q-\ ӥO\"MMáA n4Q`4$}LKbOﲥ\<݀r۳€h8p児?5 w=</æQZFn! L4{"s5l+com8߅-FkWƂ^#!I>4K>Hz>GR\j&W9#FіM#`wfSl5LTpՒQQy\mb:x;?%&]'HW^ރ4 HLBt_ -)2|b*4:K+>1 453Z'K}Z֣M ^_{iuo "WD8KH Rud9Q`yM׀hZ?TŽ=:l! id )S)7 .'&r`%Jto=.|>e([voQ.>G5;!_xO)mNcՎB X}PR7vQ0O b!+^!̚67㸼":ػ%Np6Gao /v&<0KyNQN HpAz2'+7|u 54XX2Ʀrj!Os-ڞڇ^$}9Y%ӤҦ>E71e$Bp0ݖVE\%nNb[/S̙/.$V?P>~ɧAE  MR 緪ٯ^`&g<4e]maVݤ9`%OӀzL wy+ o~"S-DeΧ|dA"9i J1"7*6r<O^Exh??U㙟h$C̀bci`B~t%3buQ'R<\N}oWH32 W{@jbbEsQi\~DEmħg:Qh,J+wdJx 킉<T4闕.Kp`KzjF}͝YS- }HUbЎOO,ɠ0O/(_2zǾlC,"yj L ǣ  7U/-A[Fd w ᮆ#kf?k 'dLq (|Q8,mۢ\Rw7^3X61>#[Y|hˋ}䚞J-\k@xq:=:!/uT51g`C"7Ƅ/5mVj!Ҹߔ+wa[8{_"a_:ahl8*ѕNTO|>*ӔˠŬ.qhKO 06 #~y{PxD-2i} ,f e֬L{& Ϛ3lq_ڰ'=!ү;B*[}/uMt#FD̚eBJMYGQEAb#L9->UZ" O%98ՂҾm% º"x0eF.Ӊf8e[؆"@:mAe'ct&$٧ iͥBPG+18)zЭJ%4Z1ameU{zX n hχN8MRkGMb G WtV%]fOwtتrb,ij ^sj7J2E{%HyX!O-~S<}EIqzдeۼD+aI~` H|<>R-:0Ўb=J }*sRn?ea=-r Rw>BaG]e0Tzy/O2͞?X71\:]"(δˆ 0V qG;>ˤIQCd3E2͎FЫʔG2N:>=* !""sh.qxR%I?;j-GVNDQm,ҿ3/F --z]-CLfK׎TNo7p-LګvgI?^MGH!&:Oq)ў\\S2^Ϫӯ4G4APH8Vt%_iTi QBph۩%wb k$F7`ZZFkTu dl3g .q<-`zмU7P~
%+ V'sh17 oLCؿ@|WHQ-F婣2"DW.Ik$L@ʫٜ<~ " XGrO- .VN{%q\j,JMkymM9{m.S,̲ 9Јob({QIhE>0Ѣ U^@47 Qsqʕ݃0R1`K+!MZS&߄{My Nh_A5z4owfAfJv>o5Oh\Ri[E(P2p^ٽ76|t2V^Ns[ϧp|Vb>Bn0!&1'svtᲕ~NN/׆άԋFWHRT")[ݸ2۰*"e!*ƥkBpv& nډ 8L4lS\ + @A!Lo")('*6 8Āihe@╱;#3S?{Ÿy/AQp2)%ݖV[fM>ʿip5$ U'BG$'waAL:= t=YՊ%#V&|Uq*ydC8h@4 Ε"A;?C)XU'?|K[']U_5ׅͮu# djc?OU/?8^O#6*gBZRf(Ӌ5A?6 ʼɜR|C sjLm~B)I^~;`*{xWQ-+9ՙJ-Db-NK6b뇏S՞Uw/]WdYV[AwFg#ud5f9:L-<-Wlxv~uDLg {2V؂Ü<qPR ;O?MlBҗ?RWk=H~^座셗B_uM z((Ɉ&ybsjt&m?g~ySj%%Cxĵ"*:$6bjN+8AoC+"b\oއ)!M*??xr rdt~RNbr/VfiաKQhb!H|Z.9e>'cY_ )!K`q(9bomA?]X ~+ЈJD ٜ}pPTK*qc?3 jJ%$kLI3-7PLɵf\12fxn;OhpC+DC*cInz` zb4I36;ߡ?M"5캡z[ 0&=W&=x4wF+|#y?eaVuy^-[Ɵ~@j ="Oߦ D+pqv'JɄH {`8dux*->Pdߦ-N{00Fdn6؝c4`cY!>m0T4Đr|)@\٠0@2]+Y$f :pO=h'=:>'ZOQ" (O.J-3nQJ?dzWRfsj`h{*4{GtDZhWQ<%sSn d7elVjL\G L?PCTJ Hΐ².tڳв/<8ʾЄXu> گ u·F~R((o ՂySX"ɵy$yzҲYX&g+,3AK2=Sb}a{Q'H|3C3lsdEi}$K0b cNBS:9΋^&+2SprP.5 *SJJpAl!:vvI5V"Rjw঻}wG:6vTyhW0 L<1=c΁ m"DlɿuR|?Lᅫ1 p \#6_8ҩ[_YV){ؓu!^7LXt/ 38ȲYa `E DwVzLT _4%66 iKo6iE=~8) ޅoiEºUUJ)Uz:u-N- DlAqğ3=t Lf168uFeh_Y49֤} S])` ^v,"ok]\FڄcM}wPC 1rH@@sX"ʔ*J$:/:gJ}q||i[zÓy$焼'Q.ws|Giw,x2N8,׆BZgߏ㘕8cR%= c~j]Ad ZG*ߟ)Q~pJfдBrI0D̩_ 6Liwj( <OtvGGs>Ox0X#rqTD=!E o7y"_rh=Sz$+4V#l[e(?hr]HZxv"1t"e .&?<$(2EѮ HpIu_̧J 8l]RN,Ge%N56eAπ:CM  _*𚋭1jYS|tHvL1q4<4BfGQ$BCJ[U*gfIy66,c$8 ЬOvU-E'?Ƙb!T:eƹV0rf_Y$S<,!h޸PU +wD5EBaH)iLhcV#N=A*kOHu`JX?# 8*a g%{l!$(X3B(`GiT П뎔>iL7-*`=5\m𿖀?sdéMug GʛS4n5V[iVa 6B}ynK `*?AZ«DƢ5k%Wp1p8> %irzIAJ+OrЛ'H+|8-3PYM 'Б i */0iq\micYmi(=e6xEoց` y_=;2('ܰ+\ c`T"5`nw@s'~9L\0sNѕS BTۡ!]Z&C52{YS_>=Cc'!եٖcK_mE uv81y~}*Gn671)@%hY'_czЍ6H;\SoD(``C‡金?(INtNfzPդ1="3ؠH&]1)u{czJW\l>ユt}f0jDNRzǘ~eN>vWgƓ+.XR|jpu% <$hFcwZܨ$E^P8"4PMƲ2$eٶȟ1?' h# (OoP)?--?ʏӡl fV6~7 <$2F 6v%^iypOj9|7#`15u4owx"*ܕYj3bpBǔԾwfBCO0~(DU0@K`v&k@C,ּF'Reazq9@lDzžmd-+}cXNU])GWrgӝTS"k]J }Xh )PrFL%'+憳S-b0"{QlJo%v>D;{+,f6x o[Pߤ綥U >XWOqRd+ 3])z?őp cWՄ:F,˒k: ]N~QUcbmgcA oy$gp+D az]肾@ x^r}έ]_Ҡ_NvtmdSJM*KÂY+?!֚C3p4ӶrӤU9B"ҭ"<&ϛ >*0'o=-گ' ?'r%gEX<ƥV%+T(:(95hL^ ~ڷR 5I(1Gl|7 |`HWnW#S^Y6P״-sm@+\ݕL.bqD_qof ŖcMJçwWDzcg3[n,d~u~w4WhI'n` Xuwi l'bG\;Rm8}x;ZE"7,\SGe%2~ű+K#b{ -ڷ/( > j!fM$Yy'MVvN[5}%_jo;ȿ(yb_b wJxnS\|t, Fwet7WgSpYF)#Ei[K% QgG|A1I eqo^?442m%@hfb;󍤸&{=ZgZzLX\DhJ[CkYw#vҁ#e}; etw1ĎУ(ԂX:Wp}8 G2;HmލEњS"@{ o]:{agXy}طM׭t^Dzn ^^W,A4x  r\|{Fڪj˅tWN% 9@۫۳N :m KA_[dPwtidy UxGv_8ufј 8ݽ$N_vodA|L:Ih<*۩T,ۏ%8#9,\5ʑ%_ec::dJ>AgVDnLg4kJ³ς{nz{o#]=QݏV &ca5`3i,t _G)D 85mĖo,j;6"o`w^t~t\3m/HL0n Cm젏5wKZK]Jh8/ m +zC<Jv:,k 8QT"iQ ꄓaU‰2c ʟ#ݮ/=Jn3J}l8{4~;@gvڶ8kgɋ)uhn@jz[>בּfkU1w"J<>FP#Uxt'z\lcrWG8Y*xiw֊?/ B[#oi`|Kpt|Rj1g! ' j=?.x^[u<\äMaLI;ۖR)o6k?jFy5dXϪv7zH8*ĈⴧGLیdvv`P4UeO[c׊n-CR+t ʖYXCs*S8P(% ЮҲw9ۡd{& .}127luo$GZ! 1GuU{SCB(hǯ`',{ƽbRJԾh"<#^&d i<qv^%zAʱ7ʋ*"+x<j(:ɞܢ-_:M滧fBAX}0Lq(IK[/¹F4."b_T ul*Nof' zѮk_(,huke|M(} C߻nj Ѥ|yn(n2_dqYWO=I_R~ޑ9'Ŧ}'΂huӺ"u; uRS[rE`~An:!o2[RWc0Ws ͹& dcȣˮ0N o7 (6Ğfɤj>'6.ǣa_ AƩ0O2=ycƍǖꤔ ˝־}𳽎6uۄ_'8O^)_Cɍ7\zg*oq\=d_ZV>&~%*t'LLFrk7;:3X?aͮ6X\ Y1O^ d2RunѣDOB5:fϔ~ #N~Tw䐵~-j|#5ծ@Z"+cju]sac@Xˊ4e8ÀH 3QKpG$[Ƞ4SYBFcgDpqx [Bn`<1Գo:pV<>u%h0K0zuW=1=c "Oˌ'+:S561 @pYTޑ nĶg=$52sB4Ρ^Ga!++c= F\7b'X;jh=gy3k[:Ar,ɊrJTZⴺ`NSk?$wXZ`h>hn5|4pЮ O3Uo# }Ӟzn86i[tcoˋh;-:Bx@3kL D@[38,X|>W55Oԕz3iČsfnU)X̉R` ?;dX| +-NFĎ+Id`,Hssl?`BBViB}lC7l~^ƦV2}Cf M-REIDG]4xr'T0^ èy[aAt4X{{A8aUbx4VJWx9tzi5U3tX\5:ύ\JG5p㣧j*Do~4㻼Vh[Xx As!@3Xk(-{~FvC΀8<VH8 U.S*UOiy1:ך.ݓ{'e wy JJi u@h4|.2R ӭH jNp{El~Oa^[ $޴'olrfj%g邵Noq;$,Dj6oha^鮸دUJ"2~\9[x 17͕9IkX'yc3O+Mp3S!^}+#MLqx4ҕ7&Q) qam,ᨐIL?@{fa#  RPF/"Bs>"g'5:b:/KM C71s=ɣM,:ʷTq՟_<-*,jDf]S!jXt4{+`:8?7 h@3wĂ[qPp^t_y"9ZD [)]h(IѦħ ُM+? a 10|Bvp9-Zf]'91Femu{ւz͢N6{d˫m$FY (ɬ腰h?P.5W=3:YNr!4wȦ {]|9lm-lXNdczcV d`Rbx||L| ?yjTL!x/̓dap<0[.,RyB'l!D(? 5,jL7db 5ǻ dP8ݞ埈3(e"S-3`MفJ<"uAd=;ʢTX7Rvy~fD~zP5?hڐ7zA2_Dm-$M)u9GwjiW4LV0ADtM*&M&;gX!DO3^۶@Jzq">ۦ›j1V2֨7 u^jNR ,. \nFGMv:v.gƊju L`a.'̨5.,DI9kK?yj&Ƈ~ W-rFCDsJn:D{BP *-k8 E'pE6up25j;JעoSW[AB)i4%wb菲DndG6P9ϴi(C?j>hsYxuG3K7bb~Q^S#N,lks)sem vie=³_47֒KHQZ 뫁lΙ\ vғ o!!cƧ1:BP='~XRX%/>c|bZL'![56oFb, $@۝3EukO|jm9>HK ] a񦧬_\.@`Nʻe"eo&q Csq?7xqgL8ȿӮ zgPSS##yPbr6s&"z~ﮙ }lB&ܭ(StQ0f<(MaU[*6Z:Tʭf 7'4}GF2pD^.cìG6ꔞӄ_) `ZpP}v t| Ur:(emjXU*+V2xr|P_XAXv6y< nQx|y38 aC[ F-O5X E~"O Up8—DAz#w 8zMnS8\XUd1'zwj*V* j"Hk5))uQKY Ppf_ o5.UWoQv\;~>ВEFep~hćythLF&$ۅ@t"qAb_G_]ʑ=] ׭f89ێ (T\GxGd͛yQ,PcnP3fbd,pua $d?hˡYj_c[3I=%MS/t([ ?'j5'| 3*5'y><7{g#Ss;Oˊ;)+~W4 UI{6I= Cc%3W0OweYl 4k+cqUI_JZ >dxIbk "Xo-ݼHgˊC3j\ݞ\u 7op2Ȥ 2BĶ7ٶ,N,ѧAO zKko]_L``o| U!zQAPj^B(mX+St4 lU8C__|IU[fs >y5w[~xRJpOcBycˌ&<:N8oX2=ABJmM74zt8 %۫ `M_nV@ L7dB:gOb<=\|; |xn40?Wޔ(e}4=;~,i' ;AoK_@qFHVHt^~9ԧlqs3|VΘ3{[^|a:TZj澴&1Ӗ>I( TxTz7J7XX@5W_14TnRW[gU.&K!1 SP=Tʷ\SNCȁʛCڏr]^MvL\MZNAk{Fk @n3 OV"[~rkkhF#,.ն]Π^7au«7e9sul%dLgRʓ,ku=5% ؀2o{~'Ϳ_誊|LM/?KЄf36 J~-zkq$7487Q/ƶgG=@ uvlrwQS^U]6,"Jz+g?bеSqctxA٭cM̾XufMhVa_%X)aPEOC /sdL+r@X ,J=F @r\Ռ]vױC0Z1}Jew3I 0f76Uf|} 4+`(Dk9 )My%4ÿ) lǁp0fsTL&@({KUiNƄ*ujw-kn^W=Pg 7SN5}\j:o^ڻ)3>K9 [82qFvk;EK<8{#{V< מWU\LR A5u+Wp)L..7:Pq-9=.չbXO?REgʪsxU,r 0,6qV 5*5Lo&$G?j̢k.(,,4ptq_(dpUmGm!@ С-%ĉS*m1B­g oi9.ˣ1jd?i7$4>@#GD۳ɐ\j9jXZ8ig'\ZѼ?AD{N%UIfz_K.d>524|/!Y٬T,VxdbGBRcgcf d[JY^&TtHTT$fa$N6:^:pA8܍֐ #YKq'ӢdT’m*X3mncԉWQ™JcOqiB5Jy9I 9[ &O\vS} wUYdGݍ[+ڟwUl_.枠 ?F%7K`x#5!y>[nC+G96KrhͲSk_\aêܛ_ FB{5}.Xv%ˋky8Jq/'ό 3]#rsO?vI6%m?6|7YC9u߲^y&Q!&!=tq1!C^%Ǵ-prl_nP3zi-D w ^ lOt=\Jm2e d@U=8}0Qޑs"0 +6?of`8|-x=n lr4q\ P![-y d (wR_Y fYں{ޭ^+C"_fR`BpyQxsyEY%5i4*!! qՄ1r  OS3 q,X6$c:̼eƒ`0jDsq1ygb-3b/c _!>]~.\`sFő~H-(y%*"S覩n͢04uQ'la$1@yGe?'GDuJ`ȖggxLXl67 `B?yw )}GR\WxE5[Y_0S9\i؍dC# dZTF vzTN0a5~ARޅ=KWr۠^RmCkR {fI^Nl, SACʝ1K,hyVR);8VSB JO)*щ(Ω9܅7q}hxMp{ ;ふ[*^(zObQ _A]6vR0I;Bk`Y=s?1*{v <4_h) Pncҡ:~ra6EwAc5<K˟=E!}9{X5 A Q:b6ȥM vV:9xY}. #%eڭ`Sw,:.1H2jgSoSR49zͨʭ,I=87_nQ P myZg証)J|ys^p1WG+dU5ej^t>lXR"-/S ~pknrVHOAE ȓޔfO߶p&A nJ|[7 *,*"/XXsh̚i!J6s땹_K16l/=*W,A)`Gբgm\u?&N'G_1׶:Q;{ūDT\'q.5Uõv@ɘcMڝ(HtکbGdR) SGؚ c QwL TqI]Y~Wcf?!duBS1ü:2M+d}#7qQ5e<X68; phdptޚd . jʯRfcyE[N;&%a( yl4UšpP׊Ow$7txUM\%ګ~SYs_yL„&OiOA`칂&]*T}q- kh̠s| k*h WۖnllufaǶ%߸gYP+75o .&F=܊侴1JXDb#a |MI(q~"lZ?+ݨ-Z5/(?$l_`Hdo8OL\tnNUaK_@⦼xQ>b-T J,9;: >O{Yd K 7fGLI.&7͂XNL*+MRHZ~6g%A xjc}r<|DM[]ZSKA1/ ɏf&;UuzghƝr@e [njD )%e8$0pC %.D-iպ@ :{̸kB%N( 8GN=O{ n3C>+|`WXCnY}R c>d;tKc>R KPQy!eSSU@8 "(2ZTNzc*@k-xp݈ G=Å)x4 5gayo30\@ "U3ۼ,= ĩꞘw`)&agEY mCNq]PU O{ɏhUK."j:?-j?SUڰ2l-@mHg2#t*Ljiu3`=$fwY'2mJU$ٕ:x5At/4֐ĦdrN)l˲̆hqi͉M5ҵ׈^.@!]y Z@r^ddݽSsL8,_vm-`&pԙJ9󟁌 }vJV~(pr ))3mn,&D85ҷYq,\}AvY_LR\0Lvq` iͿo݋Z-Φ9=Ƴ<MN8h([uwK+^XaNx˰Kc2$_z䣃 2jAnR9g|8b 8 bb8wTSǩѮIVɆש&1s+rZ"pƉ"?v0!^5͸>,S<^pdwcã*\{rJ\ J6eV'eSW@ kߣ;[A 6-)+YS2t{{'a&şnv[`$v hA^+JBoqk4I+2twk|shtz0KS,zggӳ&8>!S9gH6R,{لćLC Z&L ͞?m &t*8u:Es\3X 4_LZά11'SAkT\Z3~ %)%9 [.e1+5%yqOpc-?xuoATgv0g}ae)70Cg?l`~<^N#E &F<+z> ޓ6R|Ͳr\zǻK IL5Rہ|3Oe?,᫭#׳x΅>X#޶hǻ"Zl4iB1 j|<ۖ*ʲ0@q0Y(F)9H%cS"p;d-k7>bepqVpjU―j݉W U0h4 )wIu=3p3|Ap52cਨ$!!i^ 䡦#ܘ]L+WIyϬ[PcHM~Թhj ??`(-%ևo y&-8I7KBy3ʳ 9JU/vhÄUmUӶ[%{0=({O%zRk~Gh]Q.&} =8X vɶ`{5):&оO]81v tњh3[QNݙp;ف^~uLb[6ɅVΨ^]ldrIO]~a,'=( S 7BŽ>a?Zzk?:k֠ Â3?wJaLf 5AcFԴ.[`rq$bmŸ1aգZ0PyvQCvh>hzĄi[%P҆ww?C]c tf!B1݊x}{OSVm7|rEߝ@iEZھuˍX8 JF=tVPia"Nox볼^|>;;)&?xVnKbu~+[$oFɘh>M'V(\5':aІ۲Q* )d,jڨu|x:3&y=%dBժs~X@)_$arL#RqqUY)&JZ,{J];&E?5yIf[4 ]U]?"O/?t1N3&dÒUC^^ђI7Po~X␟f$"iiy"7/vΆ+>==kkq};s)#v mΦzx7ĉ`cpPBȭ\(V Oj4q[]>P2 tqTm!I֗U!J̚8Ձs/b|F7I9d a""Qb'ĸSg%f.Ge9"Є=~MRK ۆ{^0[2G!cqN3} l#,G=wn~4h[3*FpSgx~Lc-fBc54v 1iTM< oqV %U2dQ E^!4 >7cA[f)n,rn98M#q5X:<\~ΌPv.cvӕ2q2$Xr^I ez;Kl'ݤG;c&@dZ܀ ȕh3cZ4E =ifO+Gv7uDJ"D@|tP ghN- K1Ş T$2<~@sHtoG̀RQå鱫QŒ>JfCiqv$-fۉj7=*=LQ j@T50T'*^ZKkWWs y P,xXAi( E؆K 9$Or7j P!86t̠lւ(>[:>{K/+ Vp@U<8*0xR򻲜'Z B]蔜ăHioVCh%NS=B!8^P?Ts[3U[KZngl@+o,J.Ti&'#]AoVxvYMu kYxF f&)TZ!& 1?Yzgھq?)%5bᐢ/<@#%qc/\3ܨq~ϫ7Ieqm~9M!]KeMrIWEߏ#/!s;( ~I#Tw hRp)aaZ1AsqB*r Vw5p&ci߁i;\{ֽg*=WIL:nX/Ւ{b?|T3P%2m-wq"tب)(#>;$6/anSy}D$p)Tś\F>dj&q@4`Vjh`zc.=]s 1}{snru=KDyGX󗶵 ~ț[/!^fap_\ _/?1  ̞ڀu72碟_<; ~%uM!J9|j/-AO֑hH? .<5pS{11*r`ߡ Lj/ʤ} I u R8eՇL[3(MΡ[5̷*\XZ,5OۂGVMQI"t+Sj9*$Vf,,aBJw!̮@2]}1V_O4W&##ƖIcX F[C`ߴ;,ͺ7E\LV)Q([A463RmNOG 1p^!{5)m5 &~:La'aH篕RXkv"S7/F9hT‰Möy*A(NPYя$bm-/R(5k,ANװNA '{BZiml… hK+ W:,Ҙ/G6bvXU$,7LV i> yf 2Zn [4哜OhY<$Ļ!}sb0jz;QVt7?]#5̒N#7R[‰:g\]Z%:jFOלeq&RC.%gXS˼&]$vфr@f~ﵘ%)hh5"J J 93҄4ix {SF_cz GXN,=yIjǢ xU Ʈijw# |^ 6<;,Ea2Χ^%BxzۀGn . ?yB7R>9tu$l_!z,ǵ&OYAO1KPvh-ygˁuR/B4J D>6ٝoD 'hylwDS٘bLM7ш y3 Cm'*Aw?hTϴiӔh x (4xJcCA9u4_uYN)ϏdAhA9ƞk<[dp.D#8y{p[|] Mms+ZYv 1#TGڻ> 9sƗ20@rmin'8Aa$ݝ l;7$sW-S|njzy@-z<$r4`f칰[xr5SE~چ䖫8``w40IKFU]Ye܇{9vTe\|h2u_˨jmopޜ:co_<+zmcAQJM;꧂v|;Pmî>6?2kJyi8O*x5CAOڷ7Ӹ}2wW ҡNiNV{і1;5@U\puNh\ޘY߶(+B&_J _#"iAAyzwܾB_/Tt }l][ڶu}>?\? '0$e%T}% \d\[^H%¡#@^}s"6#-!zp#l)eT|w1-W哊;qe$?3G堁V[w_InN޸7ǀYa,B0`N;בo2罁fk7=]v9l W9"v@A/(Z=~iAJ_━|W">2Չ[e)C3SaXï?WK:ȁS{!Nt+n;n%`F'E`4l_v9t*4bqx|Q0vGcU5lgrVrBffQs@4bzkyf _o9v1`Kt}DcOVI R]H(MD@Gl{_1ň/#VVI;Y)^9EߏS To>,n( }cBo?45큛D i*=AD8@Ugh|2' N V@*-NDcxWÀ׈фk7ө{h.q\\C=DugpH;H"'uiOmw$SY!c.Dʯ!4,j\ӊ@vXL?+IYnP5o^ø4̛=9Ԕ40SFsox<9äcL.D~1ZkAYɤ2CK)a 6 {SLӟ$`nmvts"-tDz;&o6g-B7}%2&^X'P]haugY7X}1k=ӱDN .o t!; !˖'mÔFg7`0 42Nn9Uj忐$EgT=Jy%zk+w/P4?£y?&XqB}eoZ{^Jp4d.BJ@:3qe>U*/?񭋆ohJ5ƾ(u}cb@[ *&-_ 뙮YjӤRw-!6p?u1>wMA0YD4H[Ra_hb>1eڸ[4C8~=b 0% 9w&Jw HT?`P:-]پVpq ϰvPLO%.Q6WC @O;HVkdH'E cOl){_483kFfp'+g!an|g2VG 5hjXp,64揵 ~2 ɹ}/Fg]$Gdş=/iD:ˉ`?̕#7 W}Gە͛ŎI ,]1gvE$lO4-++FR|?@H7~ЎZ/XAb!mCFc4pRw`O&RJ?6Vq{H%7G|E+4 &zF3S{xJ֯,Z|BnޙLp4FapPBM坊@U؊D`7:[E/9DI0]ah< ?zUЌ`Na8ȋ0X+8;j@jPtȤ>MѨ<4q=|ڛh_SVMބDG!g@XApfo@HlG(Ex,QQ0Z\Լ:N+/fO\8q]% 2}?  @oϜ4.5&lr_YA+N$⢂pq'_DžB@NRx XUsIKŝ|Uz,oL-ς~Gx!r=/1ݨ>Z `|^yM{jtW@eRA"FN %"/h o&=һHjX~l8g~4sYիG*&:0/uߙrcd.2Cxi0iBZ~:g؂ yM{ׅZ, ]nY,P+MئpwrAn7Ό J^=Ϥ|!mDAwGcU+Y1y<$#@֑i~^#NjŸ_J 4X'>ѧZsfKw=P9eKUpp&Ch#75DI)x^V-[Zb.z]G.5E)R)yzY䙎;i K0C_D@U0meňvenm|M= 2a‡u #g;q9v}uPh eSM _% }+ohn)󮷟3N0#+O%oЊh[̍h>S0uLrrΛr (d2˛:2"K74}m큨7.f,GM|ݜ{F3*m>͗4Hk#DSRl\]Ο5R?=Ou1 L/3o,-DZ~%ڄ^ة tY(THLtnL Lq~kb[MP 4KtwO‹YwȫGkX#𙴟I|0CRN 2YeW-Iaކz|DŽN0` IHTUpTvO=?{a;u͝t)AӅ[gE]ZbIjpa'"AӀLLnߝO=H>_1 '6t>HyZKBvj\9+=J˲OPgt3&jg┌HXXv"F 36Z Юhu<)dž'\#V[ Iآ x>@gn3imхk$lΜ .'.qK2wZD L#.Yle] (k|stߐ_RۡĽo s٢1uQo-Ec7[XZb|Yr4WO,hk&<}2 mu[3ڮْ>S'XT;N^-Uޘm~s$ )ɐб`b,=WREC38^%\drk.m0VmXB|Ӱ!zXs QQ@Z, Va bLcJdj@`U(Y8<2UB;r'F$Si/%!O<k|iJq]ƼV@mtXM`fsH:deC%J@<7iH+a2Y+A2ף~.Tq}cIP.5+PPq GEO <+o1Pvv?uoy^DGb~(%+668`>N &C}qrrJ:{>G U7wr3hxj )T<_G煐xpN\rġҝZ9֖xԢ Uٛ׈gL~ " l_ }Ѵ`mw).baq<{JycޚP^1yegsZy1qNSo 2\#7 eL W$6j97Z `^ ZWR+M1Fׂempnԭ匧.f]Ei=EnysR+C#'`ʷ&zzT.>/{ʠbw-%L۹*vHL0VV/[;-p[AywƢX,5+Gxͻ-F_ӓ[5iw *5sbu!/p//ۆӜ#EʎUwn)d Ls$Wfh²"۹y7&&-kdZC=^>YM+4DΪ _!AH Unq϶ocLb'|'Ijrh).2П.?6D@c@ŸPf"mG, RPp<^[Z@9+6c:}kK2#T,줷a9"vMd@ٖuKafU%UQBg3Ͳ_oӤ6*`{#ڝˍ{EZ߲,bȹ >O>miRmPË)\#D]L$F2u( 哃'O ?`][=\2axZ'ϒ<i\hyX Yحwe1+UWag,נf}jpJv9* rCi/$j3*2:|cqKm֫ܙ\gm&ήA\.rhS^o-{֌:{+K ƃ,b3 0iR7PTvVs]DrUeZ%m%L2EMbbϩ /oѨ#{w/%?3QLHιv9$M! sT™E04.L>TnUlp`xu@W2٧vRz'{7L68q(SQulX)R/w|]r|l h|Z4fCD10s+4^6`";YTnXܬd#-@8'F"\S)R&U&`운)^ xƁZU*> ߚ{Bo\Q8ZyEcќ,܎kV/.~ǾVV`F3T˞Xn%b'Η)í80߹TޱS8HjG1ON SR),"}\q*bfaIj=F.gt(|MCffL>ee2/Oy3Ex- kt˟~>ji1A2 _G(y}']\o n w XHoH_WJ8 6<򐼘M(AժB5"O˲.gSFdqƈsio}S<`v򄙾EK -.P+gI<0bXD5$)OkO4QbQu+Kx\;G2`8ghcS%x+S6h zHt>ϓӐFK/Th&$))9&L2-MLg M>L S_:^V˿fpTTfCWQ5}vEhѪrk Ј>"|hn+#mPSZ ܧq]҄"jHs!a vw4a`%TDNu[K þ;&o/,^C$ Hj GV=Diqd@If3v!~-}*dF+p%uYfơjxKi!7gkn-嬕 kqFsVM@J=`UrmOaOə_QtoR:+5AD#g^x$bxwL&m>#|>V.OgYn|*gVޱhBF}yV|0ϰ}*ч'A&sH5Sx'DED2E:,NU#ݗwuHnkq6ث. AIzC[߉Ϯ ykV5]{qB˅ߜwHM&DX_)]͝pN_ش2 NR4U^Q{2ۡ wSɋ=! ,V>mq(+^B^Ԓ>,zf1LB81{kMy 83b"h᤽]#E⏜u fCl6o3  'J#U~ZЙ0>ez KFt 6Ϫȵ4p\7j'`*`^~ڊ=\QdT~ d%xcMC4=8cxxeB$ã6=]YضY/̭O&5?!:K;xt40z-Uwr:y 6Џñ"pJ(X Md2JMT?tg3Hk ,v=?&c#r4z_,ӠA2|[!/BC%L)}ULv͊Nԧ;649(@+ʇ# 9%E5B,P,NC9͔=E} T=mtUduOPg" t.AlL3uӶf0v }l5c\eȤ)tہI Xۋ5@2~sY߽\:ڇpzԴK/Psn("Z 8߫`?P؎JC@s<[MUָDD3eu]-<5}{?aѩUD3gu^{U wJ(=`/bhN /Cš2b{N V縲-enm2"&R̓f~W: ^tPAm(e'nT$xI,@7 (;YVl͹5ڥ?0k7#N ;a6 Zۅe<՝=BpW}:Attbe_7)MDBE?}d[[Jbem+Jp! 71m,9ٝS ۞FJpƤ#}(fe;ij1ƻVr8ij4kV[ $lqIl! Vx[^PYt>'un^G@gG$"|h1G<wTqWDm7/[r3X4Ůq]^+CnC'tRX3)ǻ B cGF|6 r&j;u'aM\^JԚ/srpu^]r~%_8 ML[nωӽj(jF.GZHx&E3ʹi C5-=~& ҕ93!c̮| 7HߋҮSE`^ێI݅lOv t,-)d k=}AO}ј;@-Os(o75yPU}6UN30%v}tRAPۤzlqdBk!ΡL.T间v10mD2 $yJWrK~9I<aT߈L[)^N] <)F#5pʥ M#quewB(|uS5K_ A~EGMwdl/( S{*2KMG!H GE%vM&L#y@yNl& ".OD_>`Ԝ@oܫcO:MOFV>yY.Bֶܦ#KWMc|sbrLA>fqЭ|os:3@ߩ^2jO^y띈aŷTWC0Y Ȁ9Sk+[6omS\keB:-べI"Ɓ-3R @Aմ$E[IKeѠs0N)aayCɏHO}ZZAS* O*?YT""cy?޷'HVc:$OAkBn9-זL2k]\RUUqCR"N ֫oЫ^^Ж|'.oeF(j1 `䞳b?aͫDhc>}YXp ZTj{S(1*Qi[=ٓ0KH0nUxhƊizR^{t<-⎰pek߹~cq$e@!.^勲&/Ϡ&Gbkc=bd{: D>LIMNӰ 3Z؁`Ox4>hlI|(Ap lĹF"+:!:h7ԱR!20 \Xԋdq*n~#rK}f=pD8$= B a CsXF4K&[F?##h~6A8}ҽ3Q1'_R:޹Hx8 Mn/ѵO!HEv/UGhmF9da}Y40&~]g4Sf{Y}6hz-O)p7pki-G\ &n9ujТZ+v+xyN.myumc[5#r(,>9: %9V>Ėe~:|lEwOz/QXWVsX^HK(S?>@x e"{?Wǽ&J:I9m3\&R,|U%R^8!v[ŽBG.$e@⨱칄j;xd&`S+ugY(8=Եڟ>+OLO7WϨ G:^EiR| Xl7S7xozf*cvҥh.Wx> tιnL9=L.2 % @]k8e+\j~a^j8\}*X܃=0mHCe&B,{pޞ}Uu0}3]GIR7Ka>\e3Y)լ?ҠxO0:7|; ߹@a|]U#\.Eoւ3?T:4~jFbkm[<:hDO\[ Sa0~3BnK/ꌓŦN({!TE J~.[m72s/c6UtZpBHʿ>t2)`*zw& fZVSng\4 OV4I2u%ן$Ƹ$s!ȷH4 z^h<՞3YH1lxiZa(HbI1`G&qH{.qd2+@܈{Ɛ/t'K}y*ʼnf\W0*۲X=>7I oSǦI-?BGGt~dO Y9>Xgf#f\Zu`12[FVg,w [R.lWm+͙Cm`26&kwҺ4 nP=yglXsp []= >2ՐĬ dlXHYLR-r5֯/W/`qc7X&uL@y kO[_%C0;sW xw#}},7*tNj*(N*./v/u(RI!F|X!QFC׬r}n9=3݋*hyY4A ő{6NG78leHã6 #jwmJfT.`qC^[6\kƕyZ38Yy 9bU_dzO,< U47ώ0u1["!y_#T +آ_v/؛u$`;* N1BjeU ƭ،M=6*B_xT{.sY%SuZɞsrX[CL]EO$'`%(JVEXeOCfH Bn%\/ @7D2W>1"J0R&]gyzϫu<%X!ݡ5 mqgmN)j1۵%Lpb/׹,>F"-AbD4%DޅS#y|b>n -e7u v]GȫHr;.=fE'33o"HP:ʃe+1EUz{.[]NtB #^&.d$~E7JISjQHPOD'mG4+Ư/D 0K8\ɼ_a=(^IzE@ɏpC'G 7o={ĦA[Swj&K6w(wN y\D[:T/)]A ķD6ᯍ*+߱)xmw'vWrcfz  OP.hd׽ԭ2?&?aJf@`թxOZ-PVЪ2N۞LHe_R\;THfjN;?NpjŎt!VlrG@䰀^r1q~w7R*`GC\X1/I?W"Фw3;28$mZv*l]~yjXPKk -HV/?rdvFQb> ҫ }sSlWE]BiNq'fnZ+ #;9/33j{ɓM4WYC{V$Rdܽ_v8KwWeT3D.M'vw!{e`=V!SGQQ*>-Vʏ-\SDnr.=K9L_ĴyÝk;7 4 J xm%ٱ'T O}u5<Œ*~ ~ ܰ+_tnGRZ?Dz)( ߟE5N|tj;]8glbY߀jvhs9pv^#'g"'%jݿkNi!5oh:_ޙ],ćxrrd'<'ֳ%q*5IJx ^iP6'H[tdBX֏ BqSHDi,1}v6/(}3]DIp޻|hx("ȧq%HߍYt1dHn\#-=@jq=0{QGH[D8O@:wĆru0K`pPAEרӊOGƯAkķ9Oڱ\j;<86S]g#ݻ;>Z]o,,ٻ&$͒rzfJ*=7W&{Qw.%#ˤ-"vo lTzfe$zKB~" L딦N{ߔ-5?[#֭q%,GTUoqֿvjK4._ >8 B%]CCjۉ!V>'ؾgyM_*` BP!¸L8'_?ۤgwWc_lnmJ)Ųt-޼Qf]3Q*qcPx 9|ڣ|HH &q=J(M1 5ݲDxfE?Uqv+f=>W#gԭm=';)"!_fOL@NՌD9B[Q9{sd!~\l0zD!}Uo;@#PF1gKU2tǘQa1r)w(=ŖnĐމOybJH:58'$\񪰚=[&$VT-j*7~OP[fͅ`hDfHrzb%B RPg~1O 1p~XԽ1ˑ> ˠ\g!pUJ pgYK| ^.TLy7\4ARY]Sd%0'3tcidoAnT!_ƥXH Ydo@ O'Z|Y҉*^Ŗ4b"JLz2t0vʃz<:l> 2$ck pN%X)A{t:)I/84&x1att~4m5vN`K56Dic@OYj@L)YHjp7S~e_|䭺1.M2_I hҿYьNޣj$nnm5z;6|P\Kb8'+OOQ4Ozf N7(Ҍ•tt RJg$E`kDʔiO+V㕠YdPejn 8;-g#?UަV$7 lYc/zLtq|Y>؃ZW';Zk)<:ktTW3Y})c "dmQ.p( VEи[atBI۠xWRGf~ઔ[)2[+xZ)M|?T՗NIaQ+ J^+Le߶ʘZ56=;5ic{h]Zٝh)ZSu奱t[t*nc;P$6sQZJŬY|T bJqy[pfxBcq6Zͼ2z }h[@k^B%!۸DeLy x?-њG=~$$婮 ϻh!i;UE[4``83RQ`\GM^EKKj]q7+p,q˔|;E~% r$k(+W.:z6J 92`6;9|5@{ŠeM:'rQoXg:xu-ϏZ$j&)/|t9l2Uz; ߴc!X=m v$[D|OR{jenf m싃2U*H"&plC}ju)M9=5s:X$JHAPūg.IZ xG!r/zB#!Y ƎT[F{ |)FGp@"շiO,HpH"H;$e@uHs?#L~$z)£XsҽKj lؑmUxG=N~gˉVo٭F?Q ӑBuDԁܭnrn3XnL]j&>UdqRvfAEavB4JLj1;F,?2M[/Fyoդ铞`8UE_m_?9,i~l4SiZ-?/,^ jG2u$١Z3H.StÐIG9{~? Ae:J1&̴^kR$CQ.q~C IP`)#MqjzI9&3vttaph9)3*Re>7]8_הg92ؿƦţ>Oq*6 fB/ zMk_K&PPNS.ESxvbڙLW7!k׻c0M9uL}[Jonڤg\cz{W Y:"RW 0XQ ~P}N0dLb e^YԕU&u$:a=u\p y#iO\cW;@$"B3ͅDUI@lq^yv5a75uLR5|儑O;glbh]%sL-< ͡}Gw2pswÁVs=lq=8wmn\# HUFϹWC QR9f2)B$ T)"`I}d1=hHNX @5wf9yLwp.t,?&iv~To=œx;`pzcӇ$.Z`H]H튼>`9:&f |V?-~MkyG~.BUSOGpWU|~8;uGz~)=t)Te9O㯙.qx.vy `*'S4̥fy NMKOA%rr:h"IātȉFHЭuT!gcםҲj`١IV2dMF!E([FY(|Lic)z-S2ѫLzR[ٚD񎹻9{Z{>4%rA2`ʧ6IAKX{+ZRNs=X `=61'B` x7\fn%!oC0˜Ix92ik% =PL2~aJ YW%W?v aPjRlj9"|WhR$ VqטHoEtu4QtL{[fd2π\.۱z?Q]WG(/ *`&l@ܮ^g${k>jL) )3m % FAU wS[.'DHcgYy6۟/fI ̜[[X:dz7H3W&AZ͙]W Ǥ*Aw) cJ3!vz T';DA=hX1qAMӁboa\E1Jĭxx% :'.%wJg|OeFf~0Y"a [Flp X-e؎W9q-DX4&tB@ |wzuګh{]wd=9 8mwjʈFD;G CǰA(3b||>yNs$F-/X뼏@t ~G6? Oo$Lɤ"^!>`A)8mXAOvȇ<#ki؋ato6B?# KT>E o l\}1DlZ[*!4*׭c+YLN4i Ajwx0MiO udSesWGY8Y36*zGRbM ϺgN})\H 3Pnq3'd RK;I/@^]:3$,Ҝ 1w?|U> &mqX𩇷kb|RГћ .?qX+>/F4M{~W6Y"cwsOy r"P3Rψ=5|ZdƲ5i2+A ӗGrĸFcF"e.* f[FѤ.'#z+xn$>5Y3$8 /#x Q҇FYKph[>sN; }ϒA5|W+i76`ў\ޙѺ8RRG:P_ލbq] !+~1bq>7X:tQYΧ KcY.UUC$B #R|aQ|v8O=9Ob@f~ݓ{u@./e%K/E*[Xu8l4wt“0"˨uW=K`*evkS#^i'LaW971viLN^7RX|l)f@V@?SZ'䙰ʢH|S4: @9I>E34McV3tCTḎ0@ wCI-*7-bN=^FEjqf=od j={H]/i*Y$< ]=erxV3v #BAMڮh1^. Z"Y 2J$vrg49 MBwlNd\B m^xYvHGW_k疗;$8ѵcalP#!+fH'O& U 8_})YC'ھSzĚ+%+LPgo׉jԍ","&Teq!.r `0=ֽ Z pQ"Ynԅv&%!) (n^['t9NsժdCnQxi'%p4gJ.xV7s}VONKaBPD&oRWy߂ù}FgRf2{.e&:nc&!K&b X9xAںz SKʘÄ*}_\l@d%L%x,RZ :< 3{;6"T%ZR#ƲKAA ò# k«\yᾓC\ޥdYz K  Ǚ1n9h8HϬZ]0@VۅW0A6o,!/{nC=#ڧaF~/Vg1NrѮT) r+޹thkHg$,_[=se"|hyzO ¥PTX]4qF ;Gdx0 FD.}/-Rk@Lw[qh[ߣ6+T<\Էk״3cu@^6 ;[jg=kL= rhBI[:$)9k}eZ ďSٗ`\s} [3 {z1 z;7r1_<8P+rM`ˬuJP{N~95ZAx] 8?=qݪkZjIKG '9&75Ѭ ?C>&OQ'TbuUTS"" &'RO/OCVoU01B,&_|PƜץ*nX~۴q %䑷p{ _%9]^Jti=TiI81_݉v !ZܹQ5֛==l8Ĝ 0S4EM4y[DŃF\|smo_pMaST6W(WUцu10Ner:e:\<>S1$Gpm쨽i J.At!0'8C4y , K,E[L&7_'3g+X7Li.^kR`IG8?a!s{*BǦc4- A?y3U見v5[)Ǥ6Ka֤>JĀC!A^/tp B2|a?cMʒ@Ly:@dZ:Cl>+9+Sr $3bz 檕ȡ:Sq!<eǽ{ﳳԇ\] & ,6`alҏ`CAxO \UBَ_\gejLy7Z 1ܻڋlwߝ[JGoanQKҔqm@J /OIN'héts]PR>p镝ۦ";] XqkV(ۊ<0*7 a2@3"c*; 3EZA}G{SB3'G`XAH~!tIP(r֨vʤoa"jSK)mY+\jo)3-NH 떁,tPnAϯ Q?6G~zPy)6+Yj^GKq:T Ӹ |N7{6ZZFE\YI ~lQWe^\o]0`ޢ ^r(|r!|T8df}oP@f aZ7n)@,dZHP^s3yhzqNOؤCj"f;q/Ã:`uyUGFc.D&8 Iw`W~bv "ES6pTɱ24>Xa?|Q4Ea?H BZRQ>x ]uD2AVnOmyuц8D`-m\ pdFS؄97Jʼk'd5Ww"t0wEHY~d-Qom?Aӹ8M"8bR ʰsܡĚC5~(IC⑤N#'Zɹ(P:ˀOpyc&u=k(@A&]%^+iO2G<ÝdUE /WO'豋c0M-c&[W=eRxhvك)@O.|[]-YCKbrAw " xLxLX8̈́Tst{U9̝/rtg3x`TNz%?SsSRxly~nX%{rGi?SpqlAuyr]8}ay>pjn$jT`&AD3!Il>wXG' #(Zؒ Gg:0WE~S8Of*Ki "s;{ƭ&v ӇB䷤Nh&[^/"h !VՕ*O AY2 ԅ z xT#c |S?8\Sk%i-QfGvJx{S5i0q^ a^JrD v73S4<+s/!h L-B@?@'c[ѹؒ$Q [Ts<\>/>$ td?tp'N*$b c`TU7x$bɆUVҩ!7bkv&-A[!L.)3XZ,*H]r[g2Wmq9t}܇U[Oi)N<,oc*ޝӄ"h?M p7Ŀ.G8X&[TtPitw_1E{/Q1kb|[hxv롩RZq(6MJl٫l^K6r5)dLN+['AgY猍c5pҚO6x.^h0o-('MhL]c~jt`."|fZMoةLpϘ!1ko-%uA4~ k͙Ƴ_mf gsĐ:*7JYYlg 3Qt bᱞo Mك b5dӓ@sKbϣSA(A٢rՐ#+wsP*ߚKFy) 5[yA+ao\}(`ʝexu,@7xMr ;cV(q-s:4cVal7Lb@u1:EZLpBLY3ʮP 0ЏLd欀rN[u`|/h>)Vggb2}|̲_jcK!28/6t3^a.&+#Q2RY_]" lkl1IU[xnb+APK='n:)u9-Vnu>kA04ߡp;ywؙODlAN_\{=KYC ;Z^%S">|ȥ,ԿOW a?F/=tS Z @id/,be_QfD.`0(#z'P^uma> ,GmWdOVnTGe7\̚{G6?#DZ< =&D+Y5,aI>Lm1bϚ{!zH9o˔s6:IT${䥙L ֹMt\E50C,c`O>2`Ooa6`W짻> 8GqjaSKr:DgJe&w'p?IAO|'DgWq]lHڨK^A`+2?g`kY.m_"qn$h넪> 0f֞GV}3-v"_Kl5=fWS'>'Âb,Hm!$DWqN|?gLm5(FodS!0H DAIxDNV|殳8Nga~͙J>5F$]7J+YmYe7Mi̛A(T fCqu]칪HGM li7T1!E^:kuSXb"opn^F*g~ ̪e3'AeQX74$7sL5uaP򝡸Cd)rI'Ah_ `5E97.l`x*xQ"꬀+e.{ dloU&?B3y;I*3~-N't[Lt}yf6jJ!;"LDgN/\/E\GV095*$-p$]S~8!EDEL}@ڞ ˀ󱳋r{^syUۗrQO֍a!o.:f>1\Qx \SqKQ(j[^4rNz~I'_=iA \1"O sS( rg:w':?bp3AJSa,Xffrq>|@u|Cj1;E{zFEc \,8Џsm==OR.$h JLD5cDFBNB|#,|i7ٞС?VK ЋYZ<}͢29QjebV|Ŭ<;.Mw 5_kW/E9=mΔh n_3=piDTV֮3$V?.Qj.{GT48/+E<6ˍ3HӢ_uo-/Gš~FlY _ȼ/?a҄_GZ`vM%ԁI7.33}ϹǞ6ؾCx4ݗ|u=(:u[3FPdNubIr&(v 5kHzHVbhVߦQoP}2iF- y{k^r='IkxwOSHInE x%vqDIK 3Gʅ@Gwϫrz'AoDœfʚ uC5& yDt6&A86/vo= ~P=mH)ךi!EBZN*~--c5:]b9%vA*|!:`! MK" $l@xt4FoH'Ыpix#ɩҘmsB6[A WE<<izM;Ia"j# A?J&w WzNQ.N! \eɭeVwC2(i/LSʎR1jH0;"eX40i4m~<5R68.{X3uЁoL} Ѧ /oTcƄ(/&V: :6Ppnj<6,&-&0?EjC+diaR*OMD'!D8Kg_S]#;6s8^˫>P6F`0|Ș' Ҟe:6V)%9! ۥ~/Lui vڇ98dd(6 D-7sPEze8a?}@JE WqW8<6GbԸ9@i1R ?)Cr5HuASRQaRhEl:f\x/ܡv|B8w<#'iO>`1—drc$XN% ȗdiXW[z `_7ёu:f z{6;TK&VF){tiP|Xu֘gFUpjX6үj$ۡ^Fẅ @&ï€=zj֣T c_U_Xm:<-[J~ˣ!lQt4lm8id֣ iګ(KĀ83b:{.Qr MJ XWY"@v@<8z1R Yt:JQ( )o}⏘/-Um۷ynf|K8:U+nu&r k^/Se-"RwU+Ȑuj6 !_s1 T0&|`JZ}DESK$㱽ujX]>{CqӐ;1 ? ]̀L 9%Cp@`)z)-KJ/cP8Oϯ 2Qw6[4cN :(Gbl*<~mx'"zܨW̓yauj AgpU i"}az=++*`{k g[`,qsN(Țpw+&9AYN #Zv}.J̌ sI,@r3Z.:h)N_?,q WU$L 9 ȕv)r%:,QLpq[pEA=t&vC΃2^qWGaqgιkE{M1㻏'xn$]Η6u'Nþߴ[On"<@{~uP NZ]AQ%??O=y$uzh}1-V-xY׫&l*lY{qO\ZW?VRIs: mdORK:]xq#fOY ;c6 p8[NG/ xCġK9 =\W/Tj0{G ln?Hvh*=?f;L0灱X|8k5,LuZl6ͯA83C&U\ѩd<.X0uh G,YZ@84eGLh4:@>Rc11"ĸ0LX40DjW$ <ܲX ^d$%WSpE7Qy)4c?))wD4ʞ$jk{b{K o${n9 œ;- S=˗KPKwt8YNZ hqU'OYJD Մ^#QdQ+ +A}X<<]䃁J]E9߶z:RCߗLꚥd`52BY ޥég/>9{Jzg`&Oơca=%ɶUE=XYggdt9$'EY |ef#!mQL2"y#oH\no"$7z*]`{$4ܖ槃GﳯG. ]FQN&C"4cp0yb#_噏g EF9gĬ S ľ8׌P4PoB }zGUQC r$CD2;a4 BE+F@Yɿ1\]2 YIN~!>GH %͗4Lf:-?mihFC56yh Cr}1chb~&)b0 S g$Wco}}aNmS2DJ;n8P{cTSըߣ1G2wSиDQ)kU)Ǝ%[PWFjtQiU'^C0ߚ5t[qGS`q;zV`HPVP5Rd0k)&hQ9QuJEp*n4ObBIMXwB~%}(,"e l탖_㡅Hޱj,ka6,\_#ٛ=]S[qei6 Qm\򠨳e _DD4zeÌmg_e'0;yz޼ ٚn3WzV;oJ 0W$_Z* ru nXOR )bZgN)z 0!(Lg%Yiu{.[j9pA!{0F VX$+L05YN\vRFrSZՖS6}rcprdMf?VY-7&Zb0-G=<{{@M} `|kZߠ`6řP"ZxPW=|zVߒ#>#)kL,sb ~b`+1& d-j,YF@t}kɕY4J~ozFٶ; Ir>G&ڗD] X2yP=e _LhI?qJ+w&ڪ,_ (}֦Ԉ7]F~ͻΖwt sw֙QiYn M36R6Y7Uc\M#8T=HSa1B,.i 窩wO5#5z; hbԻU~ dI*g]S¥qPCgyъ&dbTq2ճ^:z3l [1w")3LH*POre\~(NI٪I܂@E/Txq=r0S׾x+lmt͑Y!@[$z>#sZz66\_ip\.͜$,pKywS#(T (]$}Ўpnm4us!CT qyS_[BdU}7^.փ#~ ON5# qDv4%J>zb0AJuƏݭg?o 49+ݨ*vp]ư19. vsB iaٗasDan BV?n[ظcqL*E%]9. i%x:1G]Pzy4ey#jbac'ѡI;,_^kՉpCC\6Uh=KC)?F,H 1$hT7.2!>+u/D;lLXU"zNĥ&؞ ,[{E$iE-`oF|\N^.=Hy8.bDcq,:${=]!?Odr<^ R6klu?R݅Q:5Bu?x$34qq:?1?5aL~rYlEUv^  'FL)W0RC^_u-Ӱ E1:B"SEcx#ȧCeW8c-3 ku6CBrTkG$`׮^ʼn!u]â!CRn!F*g:㗬TbZu=7J>URYCm{>r+'W)mSK" 7Z /ڄQ%GkBډ W WU/Hn3i>4G0í侸^ ,*A0ޣ)-~sǣ ixwClR=FB3ߐy* O Bq.Ht5#€+)1@,{D|@~Aّ&ũp=oT3 ߁=D-aJNcMJ~tg'z,!o8:c ڼ1lR;{#O0vI#evo{vt[oRQ:JRLQctRѾ2t{eÃTd?n*q?W~df1.` #ǿ7!9kf im_*|E<](i aIcë|gܮ 0߯R!ݚA>PLX^U*/IWlPi e G|/(If".ce]/YB{ywxa#DqcaEn)%.ǡT@xnR@kG8x)O`F$I8u:.g&m:&jmUɷ:F'[7TcS[*rl5vKM٬$QlcA j=m6*c 1ĺSƧohgY% gkzb\EZomL;6wg~=h w]+rl7m=@JfK)i[lVxh3&Wsh`XÖvkg $ 9殹ה=9Nٰ~;Q." A/[ kBONb9^/[WQoX%pQѦq}?c<`ӊQzEVh4Ðd0 .uAT> [Cw3чGkD>_ TNrW*|()w%d\RIU+ C` _Cpj;I8TIı! ,Zz׬rYQ:Ji$!ptf/mG!KA,(i0 =솈)ge3eEۅqmi# ͸3VLy. :#ZFI%P_+?9 TѦS33ِ[&SX 0-nCnΡK)&*G < U˕=V;sivsU;LJf@I@~ =RS u]')n=`!uWJ|̒E60KwGмlF<,!jzF|mjhNiM001⢤귥>HCIF}dt1/P%>mfn[Y\N-ڹht? ng a0(y2/B5.^ J7GnB4wRNqGrc'xGfPXkb|df^1QeJdx+|ՀK&}VbK#& Wa>̤U/M-N! tqH%&J@(H%.f{biw͟2*TX^՜G+/\\ce'UiF¯ɗ.Jj*<R{j*W%bNfT"X/$3o6d3 )4To2fp=jF߷͊'b]Pz ZIj$7DXEbE/n$1An|uC|dz?Dg%<:Hʫv:U`+@oG9-}[`\AΔ@~HS)h1o{zlzz8'z66$'r^4C1a 6CoE^IAbdP3p] VoIs+sCer <*"RTZfI<<ی9!jZpJ#C][;{YX fgD \YD^|/X x#v1 %ŕ*1|eFZ,34u.S?[P]g$1ޤ2J$m/j9v,١u@!vo7~.:jq BX R)Zʱg-,\(LǨ5>7zK,jlUC0dL86vy_jMpAE)["WGEC483 It|eK~[| 7xeD%*J1x&4kFS,nŜQ΍urڜXa` ,>9vzsJ5`Am%8 O{Cj4 W&~rh: Re9r 2j;q] U֎|#Ocp >|_S"Q" _v'^lBXI-8C.nf{{9zZ\~Gfs4?Tw NVg;nnr'.|- 2m#ihD@E.넋w>m,d0фղo]ꉝQ*4]s1@Dgu#Y~cfX$A@D9E۲׹s/q})|߿$]߲Ņ!+fb`g@dܨ2U>Z7؞?'7G1S ܇"6x硻j4@䌦%\bmS45Yn}Ȗ<13UO]7["mr+T 2+tGosN>NTh8UI )c׬c>6(iu!Bg^tI.iU:6)/fzUp幝(+cf(RKLk& 2(q-&!E3T 0.P-Qzu~c9e6z2rVƢR8}d(E4[H(K~M0&5xZ/=d匎޹Qd {1*hA K=TX<є{r@~7qfl3Tk)O/:>r1<+e{[֦3 |)4搉0@/w~IGQW/ [1@@I08R[aO#S#[WRS#0 ˁ2-x =1es`k4(jUF}Z.?pTPnr8;E1jjvXYʯan'[e1)m 9%PؽO;sfPF1) m͌X3J5K?EYׁ[^&)E >b [)?#"wUI|35+}#C`KR8t56,kڜ=X%8-VP؍S=D/qt9 gf ,}򫜧QFY42,-Ow-oBvBid@-BVr5Y)b5E:) al̺zqr3 / 3@@zRv5jX/l4b]SoF#D"@T%$1`ҋ~0TKE?{ Es;gr [p⮐Ï%<e*wQ69n {i7 ȝyeIjd}֔HQaHieM[<1 #׶.~ߦ.sYu4]iznisHy}S‹x&Eԇ`7YD[t`R@0HHa27 :abb3 =iܠb;?vSDJt4p;a}»_Y ľqdwgO ==N Hdžs!mR?~*ʺbtjUJhc=)`(pplX%Z  _wA;nb 2I&=hWy t!407&!tש!&[*S~ ku[&bQ-Ha?Fۍ e=(C+,g# U@|4~"4 ^(r P~\CDx+!暩T1V4&K+}뒌ɊH}fU7> NLm?kޯ\dqQcg|_KMdF6(͎EoVop gi񕉷gIT؈c32;1ТpS/<{I7 ,cY-ZwNdAfƬD5pm<Tx 7\5ЭW.T2e2wT]ZsmՎ08٤?pe820{J() 6e }|=վNQ74cݒ ~2c< Sʥm nb~Ɋ.d{$'6ICGAsYgy s=D &N@C9+&yAkCo7'PK7P6G!@u1RGuwrbbڗS0Ѓ4N4mZC|HOֻ"xjZKQ"#Alݸhk54td,6t$=eY0~Eݴ8rgfVvDfR;~/|0F"~ ҬlMcU{Ur-zH(n)U~!7`12K@DIPAQCP;$W VJ淜NefUà34z$9㡃P\xn3T+#X!]rP>_EJ;”/e YhG󫸎׳Ka?L,͒ʸ.:6wkf}Cf{[;O BӋQZ43E2L5j|W_akIǨ(PiJHV͐9Ee>ӧDZOI! I:W vO',S=~ ^+]j @גK^4zH1 5pɂOdAV'wME!{UQFRC6nV!")<֊Kaa_cL(ˀ;wU]g4h,=/S8#l.4 1NUoR!$L~9.d=aa0DV7P?mN7iXS _C9painj#tU؀jW9@^(Z>Ib&v9 wpB+Yj{{3oF4<*rO]INsJa)~>3mnBdIgoCXbHT%UCFtyUP,ra !'e@k$fqx+[hd(?MP٥ء_NP<"ܾѲPwXA גOk6e?u^}M|cKn{P{wnWQ멅uGPK<#w* Z f $?>6c fպO+Or3TG2y5b Y#Pg8(B#+y#; U·^(y]neHYsphd[V" 9C|ɨrשQ*C- }Wd3KXLiԻYȹ5`gZݞAh"7 7'@ ?Qɷ&sX9;{D,a@<"RHIwF;X";qt`ΣR("цlD6hd,`Z*XNYm`CҢ2O3F#/%w]t+XD qV'86,ʢcH"ɼc@BS_0iY@@G.vAp%^wȂaQcvAPi55C׾8R1Ŏeo1ֱgM" R!{+ b4A{,l@ B=M*9s=p$eIڈTD.kK >U٘E{1:~INLW."]UN83X%Cc̠cr[!u?C{x4a~ a$hF$\+K,DkRA=-II -)rՄ(w ӌVhǗIÉ c8^X& 4Auu辙fGlHskɌ^bͯT GVW.RdJg"n>!6=F7fM!&7%'yХI:Nw'`E NS(EZLqؑ/rݴ ײ.vp[UpUtVxb. LB^cgXlqQVa>z`&`+햚&nw&?7S9Rn'gQ* '˾ ZO"05ˋ!S@ڱ*![ ¿>k[ߎşO}2Sz )㉉,EˣR=c&-\x8H8UYH*{L]JɻuWO׹E2)rRY4[70q:޶M_X^b _j]!كf%DYUiV T[%6y$oc ({.''jEN;μnAMdTM21W.%TL VW>-/nDn˳SnLPee #fYU^]HX˩:pǺ`\`$s|7ɪ=W5a(}&K/a.!̤$ jܲn Τ:Z t> Y$<ȿ`Nw@G\(c 2zL}5 ~&kZ7jRjwBgbEY;tU cu 2oRH"\[hl_dln5^.i2:a/]Ҽ%P]$ >CxWyقޔdu+x [ ~x |VGq#~2;:iKV Rh @ʼ]IRh<3Nn< Q%1Oz# @FXֽ,$I٪ "rr)̣\)~9b2dzC{כ?ud b>.?g} z 2eu甉2Hv߲I˿/u9&Ԃ`>ftyB,!&eLD̲LQ_lcڅW݆alMEH^RWFP3(1 6Y\-3ToB߬܀D6:>uaWU{ Y-K]3eڊ)SegR:5S St{ <16veiVy7^cl+wwo2QN92eS*hPP|L2R/OlS+`t2C(t /Һ}J0MSP\"S*$MҺj2(ń\ ~<_fvdEO)ðǽ]3/[p{g3(S֮6rCy5W)w-{z89v҈ `[?PXG)APo^/2#d&տ}AhU͙V5*XuO1x dzFJlxpcOCy> ~k½;cAH9Uiz %ngk1J fNhvRUʽ] $gT"L`sh"o;m ~U56v1NrL9gec\\1M!X#(;p+fG4H-D]#rga$,CكLikrO{XAwOR$MW%:J÷5}_Ӿ--"fvԩC1J?RL/nǖՐv\s$?Ja1mULw͟8.TlW63"5pFf^Jn?09 j\T-)DKR4*U~)G2b$] vWH¸ K3ԗn8b\ T;̸t37 A9b5Gʱcg(.q&y%Á^~=] [b`~,+q|K|後 l{,@)w5 ʈ %n[Z$}-pI`7bٿD<lʺ5W2 \᯻DBy!A ,pXX`N0G W 1 6d$#+1 <mYVzìC.\H| Vn[A589Ɣ9})aiϐ1矪^25LU÷>B !>NpL?(+ -1QA3y;tS.n@THf%Ƥ2_q6*JYsFnStY~y I`G̘e,?%5t`w֋"G6zC䄛NէwJʦIdf_ L }28fv%Q n67O:{w-Vhev!C5F5Hb ƊXck4wv}D'[邑^^ kiMp#k'b`Hej.54FfLP(Ƕ`?72Y 'h3BC2]\~5`s _2 nzxaO6kl%==|x_nT h zsd=˦FO&8-`TΤLsnl:3?8a{LY 7ϫ=4Z1J[byQVU~ı33;Qeno[2l 8ww-_f-*ަKH?EjIbGrz~:R5&}"~D\sްBfk^xSO^'&B̓[:liS /|?Gznj/cZ֢<F .><퉒fر\@-?i=$bZ0uR@~׾z6y2CAG|'Cs %gCq!f׬V@ TL {}R!@T]p7&!tb( ;M#e]p3۶Nҳh+Wioi¾X)n|wN K-w* Żb+5 :8dflfg=